• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #if LLHTTP_STRICT_MODE
2 
3 #include <stdlib.h>
4 #include <stdint.h>
5 #include <string.h>
6 
7 #ifdef __SSE4_2__
8  #ifdef _MSC_VER
9   #include <nmmintrin.h>
10  #else  /* !_MSC_VER */
11   #include <x86intrin.h>
12  #endif  /* _MSC_VER */
13 #endif  /* __SSE4_2__ */
14 
15 #ifdef _MSC_VER
16  #define ALIGN(n) _declspec(align(n))
17 #else  /* !_MSC_VER */
18  #define ALIGN(n) __attribute__((aligned(n)))
19 #endif  /* _MSC_VER */
20 
21 #include "llhttp.h"
22 
23 typedef int (*llhttp__internal__span_cb)(
24              llhttp__internal_t*, const char*, const char*);
25 
26 static const unsigned char llparse_blob0[] = {
27   0xd, 0xa
28 };
29 static const unsigned char llparse_blob1[] = {
30   'o', 'n'
31 };
32 static const unsigned char llparse_blob2[] = {
33   'e', 'c', 't', 'i', 'o', 'n'
34 };
35 static const unsigned char llparse_blob3[] = {
36   'l', 'o', 's', 'e'
37 };
38 static const unsigned char llparse_blob4[] = {
39   'e', 'e', 'p', '-', 'a', 'l', 'i', 'v', 'e'
40 };
41 static const unsigned char llparse_blob5[] = {
42   'p', 'g', 'r', 'a', 'd', 'e'
43 };
44 static const unsigned char llparse_blob6[] = {
45   'c', 'h', 'u', 'n', 'k', 'e', 'd'
46 };
47 #ifdef __SSE4_2__
48 static const unsigned char ALIGN(16) llparse_blob7[] = {
49   0x9, 0x9, ' ', '~', 0x80, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
50   0x0, 0x0, 0x0, 0x0, 0x0
51 };
52 #endif  /* __SSE4_2__ */
53 #ifdef __SSE4_2__
54 static const unsigned char ALIGN(16) llparse_blob8[] = {
55   '!', '!', '#', '\'', '*', '+', '-', '.', '0', '9', 'A',
56   'Z', '^', 'z', '|', '|'
57 };
58 #endif  /* __SSE4_2__ */
59 #ifdef __SSE4_2__
60 static const unsigned char ALIGN(16) llparse_blob9[] = {
61   '~', '~', 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
62   0x0, 0x0, 0x0, 0x0, 0x0
63 };
64 #endif  /* __SSE4_2__ */
65 static const unsigned char llparse_blob10[] = {
66   'e', 'n', 't', '-', 'l', 'e', 'n', 'g', 't', 'h'
67 };
68 static const unsigned char llparse_blob11[] = {
69   'r', 'o', 'x', 'y', '-', 'c', 'o', 'n', 'n', 'e', 'c',
70   't', 'i', 'o', 'n'
71 };
72 static const unsigned char llparse_blob12[] = {
73   'r', 'a', 'n', 's', 'f', 'e', 'r', '-', 'e', 'n', 'c',
74   'o', 'd', 'i', 'n', 'g'
75 };
76 static const unsigned char llparse_blob13[] = {
77   'p', 'g', 'r', 'a', 'd', 'e'
78 };
79 static const unsigned char llparse_blob14[] = {
80   'T', 'T', 'P', '/'
81 };
82 static const unsigned char llparse_blob15[] = {
83   0xd, 0xa, 0xd, 0xa, 'S', 'M', 0xd, 0xa, 0xd, 0xa
84 };
85 static const unsigned char llparse_blob16[] = {
86   'C', 'E', '/'
87 };
88 static const unsigned char llparse_blob17[] = {
89   'T', 'S', 'P', '/'
90 };
91 static const unsigned char llparse_blob18[] = {
92   'N', 'O', 'U', 'N', 'C', 'E'
93 };
94 static const unsigned char llparse_blob19[] = {
95   'I', 'N', 'D'
96 };
97 static const unsigned char llparse_blob20[] = {
98   'E', 'C', 'K', 'O', 'U', 'T'
99 };
100 static const unsigned char llparse_blob21[] = {
101   'N', 'E', 'C', 'T'
102 };
103 static const unsigned char llparse_blob22[] = {
104   'E', 'T', 'E'
105 };
106 static const unsigned char llparse_blob23[] = {
107   'C', 'R', 'I', 'B', 'E'
108 };
109 static const unsigned char llparse_blob24[] = {
110   'L', 'U', 'S', 'H'
111 };
112 static const unsigned char llparse_blob25[] = {
113   'E', 'T'
114 };
115 static const unsigned char llparse_blob26[] = {
116   'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R'
117 };
118 static const unsigned char llparse_blob27[] = {
119   'E', 'A', 'D'
120 };
121 static const unsigned char llparse_blob28[] = {
122   'N', 'K'
123 };
124 static const unsigned char llparse_blob29[] = {
125   'C', 'K'
126 };
127 static const unsigned char llparse_blob30[] = {
128   'S', 'E', 'A', 'R', 'C', 'H'
129 };
130 static const unsigned char llparse_blob31[] = {
131   'R', 'G', 'E'
132 };
133 static const unsigned char llparse_blob32[] = {
134   'C', 'T', 'I', 'V', 'I', 'T', 'Y'
135 };
136 static const unsigned char llparse_blob33[] = {
137   'L', 'E', 'N', 'D', 'A', 'R'
138 };
139 static const unsigned char llparse_blob34[] = {
140   'V', 'E'
141 };
142 static const unsigned char llparse_blob35[] = {
143   'O', 'T', 'I', 'F', 'Y'
144 };
145 static const unsigned char llparse_blob36[] = {
146   'P', 'T', 'I', 'O', 'N', 'S'
147 };
148 static const unsigned char llparse_blob37[] = {
149   'C', 'H'
150 };
151 static const unsigned char llparse_blob38[] = {
152   'S', 'E'
153 };
154 static const unsigned char llparse_blob39[] = {
155   'A', 'Y'
156 };
157 static const unsigned char llparse_blob40[] = {
158   'S', 'T'
159 };
160 static const unsigned char llparse_blob41[] = {
161   'I', 'N', 'D'
162 };
163 static const unsigned char llparse_blob42[] = {
164   'A', 'T', 'C', 'H'
165 };
166 static const unsigned char llparse_blob43[] = {
167   'G', 'E'
168 };
169 static const unsigned char llparse_blob44[] = {
170   'I', 'N', 'D'
171 };
172 static const unsigned char llparse_blob45[] = {
173   'O', 'R', 'D'
174 };
175 static const unsigned char llparse_blob46[] = {
176   'I', 'R', 'E', 'C', 'T'
177 };
178 static const unsigned char llparse_blob47[] = {
179   'O', 'R', 'T'
180 };
181 static const unsigned char llparse_blob48[] = {
182   'R', 'C', 'H'
183 };
184 static const unsigned char llparse_blob49[] = {
185   'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R'
186 };
187 static const unsigned char llparse_blob50[] = {
188   'U', 'R', 'C', 'E'
189 };
190 static const unsigned char llparse_blob51[] = {
191   'B', 'S', 'C', 'R', 'I', 'B', 'E'
192 };
193 static const unsigned char llparse_blob52[] = {
194   'A', 'R', 'D', 'O', 'W', 'N'
195 };
196 static const unsigned char llparse_blob53[] = {
197   'A', 'C', 'E'
198 };
199 static const unsigned char llparse_blob54[] = {
200   'I', 'N', 'D'
201 };
202 static const unsigned char llparse_blob55[] = {
203   'N', 'K'
204 };
205 static const unsigned char llparse_blob56[] = {
206   'C', 'K'
207 };
208 static const unsigned char llparse_blob57[] = {
209   'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E'
210 };
211 static const unsigned char llparse_blob58[] = {
212   'H', 'T', 'T', 'P', '/'
213 };
214 static const unsigned char llparse_blob59[] = {
215   'A', 'D'
216 };
217 static const unsigned char llparse_blob60[] = {
218   'T', 'P', '/'
219 };
220 
221 enum llparse_match_status_e {
222   kMatchComplete,
223   kMatchPause,
224   kMatchMismatch
225 };
226 typedef enum llparse_match_status_e llparse_match_status_t;
227 
228 struct llparse_match_s {
229   llparse_match_status_t status;
230   const unsigned char* current;
231 };
232 typedef struct llparse_match_s llparse_match_t;
233 
llparse__match_sequence_id(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)234 static llparse_match_t llparse__match_sequence_id(
235     llhttp__internal_t* s, const unsigned char* p,
236     const unsigned char* endp,
237     const unsigned char* seq, uint32_t seq_len) {
238   uint32_t index;
239   llparse_match_t res;
240 
241   index = s->_index;
242   for (; p != endp; p++) {
243     unsigned char current;
244 
245     current = *p;
246     if (current == seq[index]) {
247       if (++index == seq_len) {
248         res.status = kMatchComplete;
249         goto reset;
250       }
251     } else {
252       res.status = kMatchMismatch;
253       goto reset;
254     }
255   }
256   s->_index = index;
257   res.status = kMatchPause;
258   res.current = p;
259   return res;
260 reset:
261   s->_index = 0;
262   res.current = p;
263   return res;
264 }
265 
llparse__match_sequence_to_lower(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)266 static llparse_match_t llparse__match_sequence_to_lower(
267     llhttp__internal_t* s, const unsigned char* p,
268     const unsigned char* endp,
269     const unsigned char* seq, uint32_t seq_len) {
270   uint32_t index;
271   llparse_match_t res;
272 
273   index = s->_index;
274   for (; p != endp; p++) {
275     unsigned char current;
276 
277     current = ((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p));
278     if (current == seq[index]) {
279       if (++index == seq_len) {
280         res.status = kMatchComplete;
281         goto reset;
282       }
283     } else {
284       res.status = kMatchMismatch;
285       goto reset;
286     }
287   }
288   s->_index = index;
289   res.status = kMatchPause;
290   res.current = p;
291   return res;
292 reset:
293   s->_index = 0;
294   res.current = p;
295   return res;
296 }
297 
llparse__match_sequence_to_lower_unsafe(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)298 static llparse_match_t llparse__match_sequence_to_lower_unsafe(
299     llhttp__internal_t* s, const unsigned char* p,
300     const unsigned char* endp,
301     const unsigned char* seq, uint32_t seq_len) {
302   uint32_t index;
303   llparse_match_t res;
304 
305   index = s->_index;
306   for (; p != endp; p++) {
307     unsigned char current;
308 
309     current = ((*p) | 0x20);
310     if (current == seq[index]) {
311       if (++index == seq_len) {
312         res.status = kMatchComplete;
313         goto reset;
314       }
315     } else {
316       res.status = kMatchMismatch;
317       goto reset;
318     }
319   }
320   s->_index = index;
321   res.status = kMatchPause;
322   res.current = p;
323   return res;
324 reset:
325   s->_index = 0;
326   res.current = p;
327   return res;
328 }
329 
330 enum llparse_state_e {
331   s_error,
332   s_n_llhttp__internal__n_closed,
333   s_n_llhttp__internal__n_invoke_llhttp__after_message_complete,
334   s_n_llhttp__internal__n_pause_1,
335   s_n_llhttp__internal__n_invoke_is_equal_upgrade,
336   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2,
337   s_n_llhttp__internal__n_chunk_data_almost_done,
338   s_n_llhttp__internal__n_consume_content_length,
339   s_n_llhttp__internal__n_span_start_llhttp__on_body,
340   s_n_llhttp__internal__n_invoke_is_equal_content_length,
341   s_n_llhttp__internal__n_chunk_size_almost_done,
342   s_n_llhttp__internal__n_chunk_parameters,
343   s_n_llhttp__internal__n_chunk_size_otherwise,
344   s_n_llhttp__internal__n_chunk_size,
345   s_n_llhttp__internal__n_chunk_size_digit,
346   s_n_llhttp__internal__n_invoke_update_content_length,
347   s_n_llhttp__internal__n_consume_content_length_1,
348   s_n_llhttp__internal__n_span_start_llhttp__on_body_1,
349   s_n_llhttp__internal__n_eof,
350   s_n_llhttp__internal__n_span_start_llhttp__on_body_2,
351   s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete,
352   s_n_llhttp__internal__n_headers_almost_done,
353   s_n_llhttp__internal__n_header_field_colon_discard_ws,
354   s_n_llhttp__internal__n_error_19,
355   s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete,
356   s_n_llhttp__internal__n_span_start_llhttp__on_header_value,
357   s_n_llhttp__internal__n_header_value_discard_lws,
358   s_n_llhttp__internal__n_header_value_discard_ws_almost_done,
359   s_n_llhttp__internal__n_header_value_lws,
360   s_n_llhttp__internal__n_header_value_almost_done,
361   s_n_llhttp__internal__n_header_value_lenient,
362   s_n_llhttp__internal__n_error_25,
363   s_n_llhttp__internal__n_header_value_otherwise,
364   s_n_llhttp__internal__n_header_value_connection_token,
365   s_n_llhttp__internal__n_header_value_connection_ws,
366   s_n_llhttp__internal__n_header_value_connection_1,
367   s_n_llhttp__internal__n_header_value_connection_2,
368   s_n_llhttp__internal__n_header_value_connection_3,
369   s_n_llhttp__internal__n_header_value_connection,
370   s_n_llhttp__internal__n_error_27,
371   s_n_llhttp__internal__n_error_28,
372   s_n_llhttp__internal__n_header_value_content_length_ws,
373   s_n_llhttp__internal__n_header_value_content_length,
374   s_n_llhttp__internal__n_error_30,
375   s_n_llhttp__internal__n_error_29,
376   s_n_llhttp__internal__n_header_value_te_token_ows,
377   s_n_llhttp__internal__n_header_value,
378   s_n_llhttp__internal__n_header_value_te_token,
379   s_n_llhttp__internal__n_header_value_te_chunked_last,
380   s_n_llhttp__internal__n_header_value_te_chunked,
381   s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1,
382   s_n_llhttp__internal__n_header_value_discard_ws,
383   s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete,
384   s_n_llhttp__internal__n_header_field_general_otherwise,
385   s_n_llhttp__internal__n_header_field_general,
386   s_n_llhttp__internal__n_header_field_colon,
387   s_n_llhttp__internal__n_header_field_3,
388   s_n_llhttp__internal__n_header_field_4,
389   s_n_llhttp__internal__n_header_field_2,
390   s_n_llhttp__internal__n_header_field_1,
391   s_n_llhttp__internal__n_header_field_5,
392   s_n_llhttp__internal__n_header_field_6,
393   s_n_llhttp__internal__n_header_field_7,
394   s_n_llhttp__internal__n_header_field,
395   s_n_llhttp__internal__n_span_start_llhttp__on_header_field,
396   s_n_llhttp__internal__n_header_field_start,
397   s_n_llhttp__internal__n_url_to_http_09,
398   s_n_llhttp__internal__n_url_skip_to_http09,
399   s_n_llhttp__internal__n_url_skip_lf_to_http09_1,
400   s_n_llhttp__internal__n_url_skip_lf_to_http09,
401   s_n_llhttp__internal__n_req_pri_upgrade,
402   s_n_llhttp__internal__n_req_http_complete_1,
403   s_n_llhttp__internal__n_req_http_complete,
404   s_n_llhttp__internal__n_req_http_minor,
405   s_n_llhttp__internal__n_req_http_dot,
406   s_n_llhttp__internal__n_req_http_major,
407   s_n_llhttp__internal__n_req_http_start_1,
408   s_n_llhttp__internal__n_req_http_start_2,
409   s_n_llhttp__internal__n_req_http_start_3,
410   s_n_llhttp__internal__n_req_http_start,
411   s_n_llhttp__internal__n_url_to_http,
412   s_n_llhttp__internal__n_url_skip_to_http,
413   s_n_llhttp__internal__n_url_fragment,
414   s_n_llhttp__internal__n_span_end_stub_query_3,
415   s_n_llhttp__internal__n_url_query,
416   s_n_llhttp__internal__n_url_query_or_fragment,
417   s_n_llhttp__internal__n_url_path,
418   s_n_llhttp__internal__n_span_start_stub_path_2,
419   s_n_llhttp__internal__n_span_start_stub_path,
420   s_n_llhttp__internal__n_span_start_stub_path_1,
421   s_n_llhttp__internal__n_url_server_with_at,
422   s_n_llhttp__internal__n_url_server,
423   s_n_llhttp__internal__n_url_schema_delim_1,
424   s_n_llhttp__internal__n_url_schema_delim,
425   s_n_llhttp__internal__n_span_end_stub_schema,
426   s_n_llhttp__internal__n_url_schema,
427   s_n_llhttp__internal__n_url_start,
428   s_n_llhttp__internal__n_span_start_llhttp__on_url_1,
429   s_n_llhttp__internal__n_url_entry_normal,
430   s_n_llhttp__internal__n_span_start_llhttp__on_url,
431   s_n_llhttp__internal__n_url_entry_connect,
432   s_n_llhttp__internal__n_req_spaces_before_url,
433   s_n_llhttp__internal__n_req_first_space_before_url,
434   s_n_llhttp__internal__n_start_req_2,
435   s_n_llhttp__internal__n_start_req_3,
436   s_n_llhttp__internal__n_start_req_1,
437   s_n_llhttp__internal__n_start_req_4,
438   s_n_llhttp__internal__n_start_req_6,
439   s_n_llhttp__internal__n_start_req_8,
440   s_n_llhttp__internal__n_start_req_9,
441   s_n_llhttp__internal__n_start_req_7,
442   s_n_llhttp__internal__n_start_req_5,
443   s_n_llhttp__internal__n_start_req_12,
444   s_n_llhttp__internal__n_start_req_13,
445   s_n_llhttp__internal__n_start_req_11,
446   s_n_llhttp__internal__n_start_req_10,
447   s_n_llhttp__internal__n_start_req_14,
448   s_n_llhttp__internal__n_start_req_17,
449   s_n_llhttp__internal__n_start_req_16,
450   s_n_llhttp__internal__n_start_req_15,
451   s_n_llhttp__internal__n_start_req_18,
452   s_n_llhttp__internal__n_start_req_20,
453   s_n_llhttp__internal__n_start_req_21,
454   s_n_llhttp__internal__n_start_req_19,
455   s_n_llhttp__internal__n_start_req_23,
456   s_n_llhttp__internal__n_start_req_24,
457   s_n_llhttp__internal__n_start_req_26,
458   s_n_llhttp__internal__n_start_req_28,
459   s_n_llhttp__internal__n_start_req_29,
460   s_n_llhttp__internal__n_start_req_27,
461   s_n_llhttp__internal__n_start_req_25,
462   s_n_llhttp__internal__n_start_req_30,
463   s_n_llhttp__internal__n_start_req_22,
464   s_n_llhttp__internal__n_start_req_31,
465   s_n_llhttp__internal__n_start_req_32,
466   s_n_llhttp__internal__n_start_req_35,
467   s_n_llhttp__internal__n_start_req_36,
468   s_n_llhttp__internal__n_start_req_34,
469   s_n_llhttp__internal__n_start_req_37,
470   s_n_llhttp__internal__n_start_req_38,
471   s_n_llhttp__internal__n_start_req_42,
472   s_n_llhttp__internal__n_start_req_43,
473   s_n_llhttp__internal__n_start_req_41,
474   s_n_llhttp__internal__n_start_req_40,
475   s_n_llhttp__internal__n_start_req_39,
476   s_n_llhttp__internal__n_start_req_45,
477   s_n_llhttp__internal__n_start_req_44,
478   s_n_llhttp__internal__n_start_req_33,
479   s_n_llhttp__internal__n_start_req_48,
480   s_n_llhttp__internal__n_start_req_49,
481   s_n_llhttp__internal__n_start_req_50,
482   s_n_llhttp__internal__n_start_req_51,
483   s_n_llhttp__internal__n_start_req_47,
484   s_n_llhttp__internal__n_start_req_46,
485   s_n_llhttp__internal__n_start_req_54,
486   s_n_llhttp__internal__n_start_req_56,
487   s_n_llhttp__internal__n_start_req_57,
488   s_n_llhttp__internal__n_start_req_55,
489   s_n_llhttp__internal__n_start_req_53,
490   s_n_llhttp__internal__n_start_req_58,
491   s_n_llhttp__internal__n_start_req_59,
492   s_n_llhttp__internal__n_start_req_52,
493   s_n_llhttp__internal__n_start_req_61,
494   s_n_llhttp__internal__n_start_req_62,
495   s_n_llhttp__internal__n_start_req_60,
496   s_n_llhttp__internal__n_start_req_65,
497   s_n_llhttp__internal__n_start_req_67,
498   s_n_llhttp__internal__n_start_req_68,
499   s_n_llhttp__internal__n_start_req_66,
500   s_n_llhttp__internal__n_start_req_69,
501   s_n_llhttp__internal__n_start_req_64,
502   s_n_llhttp__internal__n_start_req_63,
503   s_n_llhttp__internal__n_start_req,
504   s_n_llhttp__internal__n_invoke_llhttp__on_status_complete,
505   s_n_llhttp__internal__n_res_line_almost_done,
506   s_n_llhttp__internal__n_res_status,
507   s_n_llhttp__internal__n_span_start_llhttp__on_status,
508   s_n_llhttp__internal__n_res_status_start,
509   s_n_llhttp__internal__n_res_status_code_otherwise,
510   s_n_llhttp__internal__n_res_status_code,
511   s_n_llhttp__internal__n_res_http_end,
512   s_n_llhttp__internal__n_res_http_minor,
513   s_n_llhttp__internal__n_res_http_dot,
514   s_n_llhttp__internal__n_res_http_major,
515   s_n_llhttp__internal__n_start_res,
516   s_n_llhttp__internal__n_req_or_res_method_2,
517   s_n_llhttp__internal__n_req_or_res_method_3,
518   s_n_llhttp__internal__n_req_or_res_method_1,
519   s_n_llhttp__internal__n_req_or_res_method,
520   s_n_llhttp__internal__n_start_req_or_res,
521   s_n_llhttp__internal__n_invoke_load_type,
522   s_n_llhttp__internal__n_start,
523 };
524 typedef enum llparse_state_e llparse_state_t;
525 
526 int llhttp__on_url(
527     llhttp__internal_t* s, const unsigned char* p,
528     const unsigned char* endp);
529 
530 int llhttp__on_header_field(
531     llhttp__internal_t* s, const unsigned char* p,
532     const unsigned char* endp);
533 
534 int llhttp__on_header_value(
535     llhttp__internal_t* s, const unsigned char* p,
536     const unsigned char* endp);
537 
538 int llhttp__on_body(
539     llhttp__internal_t* s, const unsigned char* p,
540     const unsigned char* endp);
541 
542 int llhttp__on_status(
543     llhttp__internal_t* s, const unsigned char* p,
544     const unsigned char* endp);
545 
llhttp__internal__c_update_finish(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)546 int llhttp__internal__c_update_finish(
547     llhttp__internal_t* state,
548     const unsigned char* p,
549     const unsigned char* endp) {
550   state->finish = 2;
551   return 0;
552 }
553 
554 int llhttp__on_message_begin(
555     llhttp__internal_t* s, const unsigned char* p,
556     const unsigned char* endp);
557 
llhttp__internal__c_load_type(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)558 int llhttp__internal__c_load_type(
559     llhttp__internal_t* state,
560     const unsigned char* p,
561     const unsigned char* endp) {
562   return state->type;
563 }
564 
llhttp__internal__c_store_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)565 int llhttp__internal__c_store_method(
566     llhttp__internal_t* state,
567     const unsigned char* p,
568     const unsigned char* endp,
569     int match) {
570   state->method = match;
571   return 0;
572 }
573 
llhttp__internal__c_is_equal_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)574 int llhttp__internal__c_is_equal_method(
575     llhttp__internal_t* state,
576     const unsigned char* p,
577     const unsigned char* endp) {
578   return state->method == 5;
579 }
580 
llhttp__internal__c_update_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)581 int llhttp__internal__c_update_http_major(
582     llhttp__internal_t* state,
583     const unsigned char* p,
584     const unsigned char* endp) {
585   state->http_major = 0;
586   return 0;
587 }
588 
llhttp__internal__c_update_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)589 int llhttp__internal__c_update_http_minor(
590     llhttp__internal_t* state,
591     const unsigned char* p,
592     const unsigned char* endp) {
593   state->http_minor = 9;
594   return 0;
595 }
596 
597 int llhttp__on_url_complete(
598     llhttp__internal_t* s, const unsigned char* p,
599     const unsigned char* endp);
600 
llhttp__internal__c_test_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)601 int llhttp__internal__c_test_flags(
602     llhttp__internal_t* state,
603     const unsigned char* p,
604     const unsigned char* endp) {
605   return (state->flags & 128) == 128;
606 }
607 
608 int llhttp__on_chunk_complete(
609     llhttp__internal_t* s, const unsigned char* p,
610     const unsigned char* endp);
611 
612 int llhttp__on_message_complete(
613     llhttp__internal_t* s, const unsigned char* p,
614     const unsigned char* endp);
615 
llhttp__internal__c_is_equal_upgrade(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)616 int llhttp__internal__c_is_equal_upgrade(
617     llhttp__internal_t* state,
618     const unsigned char* p,
619     const unsigned char* endp) {
620   return state->upgrade == 1;
621 }
622 
623 int llhttp__after_message_complete(
624     llhttp__internal_t* s, const unsigned char* p,
625     const unsigned char* endp);
626 
llhttp__internal__c_update_finish_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)627 int llhttp__internal__c_update_finish_1(
628     llhttp__internal_t* state,
629     const unsigned char* p,
630     const unsigned char* endp) {
631   state->finish = 0;
632   return 0;
633 }
634 
llhttp__internal__c_test_lenient_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)635 int llhttp__internal__c_test_lenient_flags(
636     llhttp__internal_t* state,
637     const unsigned char* p,
638     const unsigned char* endp) {
639   return (state->lenient_flags & 4) == 4;
640 }
641 
llhttp__internal__c_test_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)642 int llhttp__internal__c_test_flags_1(
643     llhttp__internal_t* state,
644     const unsigned char* p,
645     const unsigned char* endp) {
646   return (state->flags & 544) == 544;
647 }
648 
llhttp__internal__c_test_lenient_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)649 int llhttp__internal__c_test_lenient_flags_1(
650     llhttp__internal_t* state,
651     const unsigned char* p,
652     const unsigned char* endp) {
653   return (state->lenient_flags & 2) == 2;
654 }
655 
656 int llhttp__before_headers_complete(
657     llhttp__internal_t* s, const unsigned char* p,
658     const unsigned char* endp);
659 
660 int llhttp__on_headers_complete(
661     llhttp__internal_t* s, const unsigned char* p,
662     const unsigned char* endp);
663 
664 int llhttp__after_headers_complete(
665     llhttp__internal_t* s, const unsigned char* p,
666     const unsigned char* endp);
667 
llhttp__internal__c_update_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)668 int llhttp__internal__c_update_content_length(
669     llhttp__internal_t* state,
670     const unsigned char* p,
671     const unsigned char* endp) {
672   state->content_length = 0;
673   return 0;
674 }
675 
llhttp__internal__c_mul_add_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)676 int llhttp__internal__c_mul_add_content_length(
677     llhttp__internal_t* state,
678     const unsigned char* p,
679     const unsigned char* endp,
680     int match) {
681   /* Multiplication overflow */
682   if (state->content_length > 0xffffffffffffffffULL / 16) {
683     return 1;
684   }
685 
686   state->content_length *= 16;
687 
688   /* Addition overflow */
689   if (match >= 0) {
690     if (state->content_length > 0xffffffffffffffffULL - match) {
691       return 1;
692     }
693   } else {
694     if (state->content_length < 0ULL - match) {
695       return 1;
696     }
697   }
698   state->content_length += match;
699   return 0;
700 }
701 
702 int llhttp__on_chunk_header(
703     llhttp__internal_t* s, const unsigned char* p,
704     const unsigned char* endp);
705 
llhttp__internal__c_is_equal_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)706 int llhttp__internal__c_is_equal_content_length(
707     llhttp__internal_t* state,
708     const unsigned char* p,
709     const unsigned char* endp) {
710   return state->content_length == 0;
711 }
712 
llhttp__internal__c_or_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)713 int llhttp__internal__c_or_flags(
714     llhttp__internal_t* state,
715     const unsigned char* p,
716     const unsigned char* endp) {
717   state->flags |= 128;
718   return 0;
719 }
720 
llhttp__internal__c_update_finish_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)721 int llhttp__internal__c_update_finish_3(
722     llhttp__internal_t* state,
723     const unsigned char* p,
724     const unsigned char* endp) {
725   state->finish = 1;
726   return 0;
727 }
728 
llhttp__internal__c_or_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)729 int llhttp__internal__c_or_flags_1(
730     llhttp__internal_t* state,
731     const unsigned char* p,
732     const unsigned char* endp) {
733   state->flags |= 64;
734   return 0;
735 }
736 
llhttp__internal__c_update_upgrade(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)737 int llhttp__internal__c_update_upgrade(
738     llhttp__internal_t* state,
739     const unsigned char* p,
740     const unsigned char* endp) {
741   state->upgrade = 1;
742   return 0;
743 }
744 
llhttp__internal__c_store_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)745 int llhttp__internal__c_store_header_state(
746     llhttp__internal_t* state,
747     const unsigned char* p,
748     const unsigned char* endp,
749     int match) {
750   state->header_state = match;
751   return 0;
752 }
753 
llhttp__internal__c_test_lenient_flags_2(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)754 int llhttp__internal__c_test_lenient_flags_2(
755     llhttp__internal_t* state,
756     const unsigned char* p,
757     const unsigned char* endp) {
758   return (state->lenient_flags & 1) == 1;
759 }
760 
761 int llhttp__on_header_field_complete(
762     llhttp__internal_t* s, const unsigned char* p,
763     const unsigned char* endp);
764 
llhttp__internal__c_load_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)765 int llhttp__internal__c_load_header_state(
766     llhttp__internal_t* state,
767     const unsigned char* p,
768     const unsigned char* endp) {
769   return state->header_state;
770 }
771 
llhttp__internal__c_or_flags_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)772 int llhttp__internal__c_or_flags_3(
773     llhttp__internal_t* state,
774     const unsigned char* p,
775     const unsigned char* endp) {
776   state->flags |= 1;
777   return 0;
778 }
779 
llhttp__internal__c_update_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)780 int llhttp__internal__c_update_header_state(
781     llhttp__internal_t* state,
782     const unsigned char* p,
783     const unsigned char* endp) {
784   state->header_state = 1;
785   return 0;
786 }
787 
788 int llhttp__on_header_value_complete(
789     llhttp__internal_t* s, const unsigned char* p,
790     const unsigned char* endp);
791 
llhttp__internal__c_or_flags_4(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)792 int llhttp__internal__c_or_flags_4(
793     llhttp__internal_t* state,
794     const unsigned char* p,
795     const unsigned char* endp) {
796   state->flags |= 2;
797   return 0;
798 }
799 
llhttp__internal__c_or_flags_5(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)800 int llhttp__internal__c_or_flags_5(
801     llhttp__internal_t* state,
802     const unsigned char* p,
803     const unsigned char* endp) {
804   state->flags |= 4;
805   return 0;
806 }
807 
llhttp__internal__c_or_flags_6(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)808 int llhttp__internal__c_or_flags_6(
809     llhttp__internal_t* state,
810     const unsigned char* p,
811     const unsigned char* endp) {
812   state->flags |= 8;
813   return 0;
814 }
815 
llhttp__internal__c_update_header_state_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)816 int llhttp__internal__c_update_header_state_3(
817     llhttp__internal_t* state,
818     const unsigned char* p,
819     const unsigned char* endp) {
820   state->header_state = 6;
821   return 0;
822 }
823 
llhttp__internal__c_update_header_state_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)824 int llhttp__internal__c_update_header_state_1(
825     llhttp__internal_t* state,
826     const unsigned char* p,
827     const unsigned char* endp) {
828   state->header_state = 0;
829   return 0;
830 }
831 
llhttp__internal__c_update_header_state_6(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)832 int llhttp__internal__c_update_header_state_6(
833     llhttp__internal_t* state,
834     const unsigned char* p,
835     const unsigned char* endp) {
836   state->header_state = 5;
837   return 0;
838 }
839 
llhttp__internal__c_update_header_state_7(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)840 int llhttp__internal__c_update_header_state_7(
841     llhttp__internal_t* state,
842     const unsigned char* p,
843     const unsigned char* endp) {
844   state->header_state = 7;
845   return 0;
846 }
847 
llhttp__internal__c_test_flags_2(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)848 int llhttp__internal__c_test_flags_2(
849     llhttp__internal_t* state,
850     const unsigned char* p,
851     const unsigned char* endp) {
852   return (state->flags & 32) == 32;
853 }
854 
llhttp__internal__c_mul_add_content_length_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)855 int llhttp__internal__c_mul_add_content_length_1(
856     llhttp__internal_t* state,
857     const unsigned char* p,
858     const unsigned char* endp,
859     int match) {
860   /* Multiplication overflow */
861   if (state->content_length > 0xffffffffffffffffULL / 10) {
862     return 1;
863   }
864 
865   state->content_length *= 10;
866 
867   /* Addition overflow */
868   if (match >= 0) {
869     if (state->content_length > 0xffffffffffffffffULL - match) {
870       return 1;
871     }
872   } else {
873     if (state->content_length < 0ULL - match) {
874       return 1;
875     }
876   }
877   state->content_length += match;
878   return 0;
879 }
880 
llhttp__internal__c_or_flags_15(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)881 int llhttp__internal__c_or_flags_15(
882     llhttp__internal_t* state,
883     const unsigned char* p,
884     const unsigned char* endp) {
885   state->flags |= 32;
886   return 0;
887 }
888 
llhttp__internal__c_test_flags_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)889 int llhttp__internal__c_test_flags_3(
890     llhttp__internal_t* state,
891     const unsigned char* p,
892     const unsigned char* endp) {
893   return (state->flags & 8) == 8;
894 }
895 
llhttp__internal__c_test_lenient_flags_7(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)896 int llhttp__internal__c_test_lenient_flags_7(
897     llhttp__internal_t* state,
898     const unsigned char* p,
899     const unsigned char* endp) {
900   return (state->lenient_flags & 8) == 8;
901 }
902 
llhttp__internal__c_or_flags_16(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)903 int llhttp__internal__c_or_flags_16(
904     llhttp__internal_t* state,
905     const unsigned char* p,
906     const unsigned char* endp) {
907   state->flags |= 512;
908   return 0;
909 }
910 
llhttp__internal__c_and_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)911 int llhttp__internal__c_and_flags(
912     llhttp__internal_t* state,
913     const unsigned char* p,
914     const unsigned char* endp) {
915   state->flags &= -9;
916   return 0;
917 }
918 
llhttp__internal__c_update_header_state_8(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)919 int llhttp__internal__c_update_header_state_8(
920     llhttp__internal_t* state,
921     const unsigned char* p,
922     const unsigned char* endp) {
923   state->header_state = 8;
924   return 0;
925 }
926 
llhttp__internal__c_or_flags_18(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)927 int llhttp__internal__c_or_flags_18(
928     llhttp__internal_t* state,
929     const unsigned char* p,
930     const unsigned char* endp) {
931   state->flags |= 16;
932   return 0;
933 }
934 
llhttp__internal__c_load_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)935 int llhttp__internal__c_load_method(
936     llhttp__internal_t* state,
937     const unsigned char* p,
938     const unsigned char* endp) {
939   return state->method;
940 }
941 
llhttp__internal__c_store_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)942 int llhttp__internal__c_store_http_major(
943     llhttp__internal_t* state,
944     const unsigned char* p,
945     const unsigned char* endp,
946     int match) {
947   state->http_major = match;
948   return 0;
949 }
950 
llhttp__internal__c_store_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)951 int llhttp__internal__c_store_http_minor(
952     llhttp__internal_t* state,
953     const unsigned char* p,
954     const unsigned char* endp,
955     int match) {
956   state->http_minor = match;
957   return 0;
958 }
959 
llhttp__internal__c_test_lenient_flags_9(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)960 int llhttp__internal__c_test_lenient_flags_9(
961     llhttp__internal_t* state,
962     const unsigned char* p,
963     const unsigned char* endp) {
964   return (state->lenient_flags & 16) == 16;
965 }
966 
llhttp__internal__c_load_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)967 int llhttp__internal__c_load_http_major(
968     llhttp__internal_t* state,
969     const unsigned char* p,
970     const unsigned char* endp) {
971   return state->http_major;
972 }
973 
llhttp__internal__c_load_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)974 int llhttp__internal__c_load_http_minor(
975     llhttp__internal_t* state,
976     const unsigned char* p,
977     const unsigned char* endp) {
978   return state->http_minor;
979 }
980 
llhttp__internal__c_update_status_code(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)981 int llhttp__internal__c_update_status_code(
982     llhttp__internal_t* state,
983     const unsigned char* p,
984     const unsigned char* endp) {
985   state->status_code = 0;
986   return 0;
987 }
988 
llhttp__internal__c_mul_add_status_code(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)989 int llhttp__internal__c_mul_add_status_code(
990     llhttp__internal_t* state,
991     const unsigned char* p,
992     const unsigned char* endp,
993     int match) {
994   /* Multiplication overflow */
995   if (state->status_code > 0xffff / 10) {
996     return 1;
997   }
998 
999   state->status_code *= 10;
1000 
1001   /* Addition overflow */
1002   if (match >= 0) {
1003     if (state->status_code > 0xffff - match) {
1004       return 1;
1005     }
1006   } else {
1007     if (state->status_code < 0 - match) {
1008       return 1;
1009     }
1010   }
1011   state->status_code += match;
1012 
1013   /* Enforce maximum */
1014   if (state->status_code > 999) {
1015     return 1;
1016   }
1017   return 0;
1018 }
1019 
1020 int llhttp__on_status_complete(
1021     llhttp__internal_t* s, const unsigned char* p,
1022     const unsigned char* endp);
1023 
llhttp__internal__c_update_type(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)1024 int llhttp__internal__c_update_type(
1025     llhttp__internal_t* state,
1026     const unsigned char* p,
1027     const unsigned char* endp) {
1028   state->type = 1;
1029   return 0;
1030 }
1031 
llhttp__internal__c_update_type_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)1032 int llhttp__internal__c_update_type_1(
1033     llhttp__internal_t* state,
1034     const unsigned char* p,
1035     const unsigned char* endp) {
1036   state->type = 2;
1037   return 0;
1038 }
1039 
llhttp__internal_init(llhttp__internal_t * state)1040 int llhttp__internal_init(llhttp__internal_t* state) {
1041   memset(state, 0, sizeof(*state));
1042   state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_start;
1043   return 0;
1044 }
1045 
llhttp__internal__run(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)1046 static llparse_state_t llhttp__internal__run(
1047     llhttp__internal_t* state,
1048     const unsigned char* p,
1049     const unsigned char* endp) {
1050   int match;
1051   switch ((llparse_state_t) (intptr_t) state->_current) {
1052     case s_n_llhttp__internal__n_closed:
1053     s_n_llhttp__internal__n_closed: {
1054       if (p == endp) {
1055         return s_n_llhttp__internal__n_closed;
1056       }
1057       switch (*p) {
1058         case 10: {
1059           p++;
1060           goto s_n_llhttp__internal__n_closed;
1061         }
1062         case 13: {
1063           p++;
1064           goto s_n_llhttp__internal__n_closed;
1065         }
1066         default: {
1067           p++;
1068           goto s_n_llhttp__internal__n_error_4;
1069         }
1070       }
1071       /* UNREACHABLE */;
1072       abort();
1073     }
1074     case s_n_llhttp__internal__n_invoke_llhttp__after_message_complete:
1075     s_n_llhttp__internal__n_invoke_llhttp__after_message_complete: {
1076       switch (llhttp__after_message_complete(state, p, endp)) {
1077         case 1:
1078           goto s_n_llhttp__internal__n_invoke_update_finish_2;
1079         default:
1080           goto s_n_llhttp__internal__n_invoke_update_finish_1;
1081       }
1082       /* UNREACHABLE */;
1083       abort();
1084     }
1085     case s_n_llhttp__internal__n_pause_1:
1086     s_n_llhttp__internal__n_pause_1: {
1087       state->error = 0x16;
1088       state->reason = "Pause on CONNECT/Upgrade";
1089       state->error_pos = (const char*) p;
1090       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
1091       return s_error;
1092       /* UNREACHABLE */;
1093       abort();
1094     }
1095     case s_n_llhttp__internal__n_invoke_is_equal_upgrade:
1096     s_n_llhttp__internal__n_invoke_is_equal_upgrade: {
1097       switch (llhttp__internal__c_is_equal_upgrade(state, p, endp)) {
1098         case 0:
1099           goto s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
1100         default:
1101           goto s_n_llhttp__internal__n_pause_1;
1102       }
1103       /* UNREACHABLE */;
1104       abort();
1105     }
1106     case s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2:
1107     s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2: {
1108       switch (llhttp__on_message_complete(state, p, endp)) {
1109         case 0:
1110           goto s_n_llhttp__internal__n_invoke_is_equal_upgrade;
1111         case 21:
1112           goto s_n_llhttp__internal__n_pause_5;
1113         default:
1114           goto s_n_llhttp__internal__n_error_14;
1115       }
1116       /* UNREACHABLE */;
1117       abort();
1118     }
1119     case s_n_llhttp__internal__n_chunk_data_almost_done:
1120     s_n_llhttp__internal__n_chunk_data_almost_done: {
1121       llparse_match_t match_seq;
1122 
1123       if (p == endp) {
1124         return s_n_llhttp__internal__n_chunk_data_almost_done;
1125       }
1126       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob0, 2);
1127       p = match_seq.current;
1128       switch (match_seq.status) {
1129         case kMatchComplete: {
1130           p++;
1131           goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete;
1132         }
1133         case kMatchPause: {
1134           return s_n_llhttp__internal__n_chunk_data_almost_done;
1135         }
1136         case kMatchMismatch: {
1137           goto s_n_llhttp__internal__n_error_8;
1138         }
1139       }
1140       /* UNREACHABLE */;
1141       abort();
1142     }
1143     case s_n_llhttp__internal__n_consume_content_length:
1144     s_n_llhttp__internal__n_consume_content_length: {
1145       size_t avail;
1146       uint64_t need;
1147 
1148       avail = endp - p;
1149       need = state->content_length;
1150       if (avail >= need) {
1151         p += need;
1152         state->content_length = 0;
1153         goto s_n_llhttp__internal__n_span_end_llhttp__on_body;
1154       }
1155 
1156       state->content_length -= avail;
1157       return s_n_llhttp__internal__n_consume_content_length;
1158       /* UNREACHABLE */;
1159       abort();
1160     }
1161     case s_n_llhttp__internal__n_span_start_llhttp__on_body:
1162     s_n_llhttp__internal__n_span_start_llhttp__on_body: {
1163       if (p == endp) {
1164         return s_n_llhttp__internal__n_span_start_llhttp__on_body;
1165       }
1166       state->_span_pos0 = (void*) p;
1167       state->_span_cb0 = llhttp__on_body;
1168       goto s_n_llhttp__internal__n_consume_content_length;
1169       /* UNREACHABLE */;
1170       abort();
1171     }
1172     case s_n_llhttp__internal__n_invoke_is_equal_content_length:
1173     s_n_llhttp__internal__n_invoke_is_equal_content_length: {
1174       switch (llhttp__internal__c_is_equal_content_length(state, p, endp)) {
1175         case 0:
1176           goto s_n_llhttp__internal__n_span_start_llhttp__on_body;
1177         default:
1178           goto s_n_llhttp__internal__n_invoke_or_flags;
1179       }
1180       /* UNREACHABLE */;
1181       abort();
1182     }
1183     case s_n_llhttp__internal__n_chunk_size_almost_done:
1184     s_n_llhttp__internal__n_chunk_size_almost_done: {
1185       if (p == endp) {
1186         return s_n_llhttp__internal__n_chunk_size_almost_done;
1187       }
1188       switch (*p) {
1189         case 10: {
1190           p++;
1191           goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header;
1192         }
1193         default: {
1194           goto s_n_llhttp__internal__n_error_9;
1195         }
1196       }
1197       /* UNREACHABLE */;
1198       abort();
1199     }
1200     case s_n_llhttp__internal__n_chunk_parameters:
1201     s_n_llhttp__internal__n_chunk_parameters: {
1202       static uint8_t lookup_table[] = {
1203         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0,
1204         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1205         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1206         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1207         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1208         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1209         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1210         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
1211         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1212         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1213         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1214         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1215         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1216         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1217         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1218         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
1219       };
1220       if (p == endp) {
1221         return s_n_llhttp__internal__n_chunk_parameters;
1222       }
1223       switch (lookup_table[(uint8_t) *p]) {
1224         case 1: {
1225           p++;
1226           goto s_n_llhttp__internal__n_chunk_parameters;
1227         }
1228         case 2: {
1229           p++;
1230           goto s_n_llhttp__internal__n_chunk_size_almost_done;
1231         }
1232         default: {
1233           goto s_n_llhttp__internal__n_error_10;
1234         }
1235       }
1236       /* UNREACHABLE */;
1237       abort();
1238     }
1239     case s_n_llhttp__internal__n_chunk_size_otherwise:
1240     s_n_llhttp__internal__n_chunk_size_otherwise: {
1241       if (p == endp) {
1242         return s_n_llhttp__internal__n_chunk_size_otherwise;
1243       }
1244       switch (*p) {
1245         case 13: {
1246           p++;
1247           goto s_n_llhttp__internal__n_chunk_size_almost_done;
1248         }
1249         case ' ': {
1250           p++;
1251           goto s_n_llhttp__internal__n_chunk_parameters;
1252         }
1253         case ';': {
1254           p++;
1255           goto s_n_llhttp__internal__n_chunk_parameters;
1256         }
1257         default: {
1258           goto s_n_llhttp__internal__n_error_11;
1259         }
1260       }
1261       /* UNREACHABLE */;
1262       abort();
1263     }
1264     case s_n_llhttp__internal__n_chunk_size:
1265     s_n_llhttp__internal__n_chunk_size: {
1266       if (p == endp) {
1267         return s_n_llhttp__internal__n_chunk_size;
1268       }
1269       switch (*p) {
1270         case '0': {
1271           p++;
1272           match = 0;
1273           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1274         }
1275         case '1': {
1276           p++;
1277           match = 1;
1278           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1279         }
1280         case '2': {
1281           p++;
1282           match = 2;
1283           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1284         }
1285         case '3': {
1286           p++;
1287           match = 3;
1288           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1289         }
1290         case '4': {
1291           p++;
1292           match = 4;
1293           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1294         }
1295         case '5': {
1296           p++;
1297           match = 5;
1298           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1299         }
1300         case '6': {
1301           p++;
1302           match = 6;
1303           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1304         }
1305         case '7': {
1306           p++;
1307           match = 7;
1308           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1309         }
1310         case '8': {
1311           p++;
1312           match = 8;
1313           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1314         }
1315         case '9': {
1316           p++;
1317           match = 9;
1318           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1319         }
1320         case 'A': {
1321           p++;
1322           match = 10;
1323           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1324         }
1325         case 'B': {
1326           p++;
1327           match = 11;
1328           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1329         }
1330         case 'C': {
1331           p++;
1332           match = 12;
1333           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1334         }
1335         case 'D': {
1336           p++;
1337           match = 13;
1338           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1339         }
1340         case 'E': {
1341           p++;
1342           match = 14;
1343           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1344         }
1345         case 'F': {
1346           p++;
1347           match = 15;
1348           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1349         }
1350         case 'a': {
1351           p++;
1352           match = 10;
1353           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1354         }
1355         case 'b': {
1356           p++;
1357           match = 11;
1358           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1359         }
1360         case 'c': {
1361           p++;
1362           match = 12;
1363           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1364         }
1365         case 'd': {
1366           p++;
1367           match = 13;
1368           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1369         }
1370         case 'e': {
1371           p++;
1372           match = 14;
1373           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1374         }
1375         case 'f': {
1376           p++;
1377           match = 15;
1378           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1379         }
1380         default: {
1381           goto s_n_llhttp__internal__n_chunk_size_otherwise;
1382         }
1383       }
1384       /* UNREACHABLE */;
1385       abort();
1386     }
1387     case s_n_llhttp__internal__n_chunk_size_digit:
1388     s_n_llhttp__internal__n_chunk_size_digit: {
1389       if (p == endp) {
1390         return s_n_llhttp__internal__n_chunk_size_digit;
1391       }
1392       switch (*p) {
1393         case '0': {
1394           p++;
1395           match = 0;
1396           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1397         }
1398         case '1': {
1399           p++;
1400           match = 1;
1401           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1402         }
1403         case '2': {
1404           p++;
1405           match = 2;
1406           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1407         }
1408         case '3': {
1409           p++;
1410           match = 3;
1411           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1412         }
1413         case '4': {
1414           p++;
1415           match = 4;
1416           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1417         }
1418         case '5': {
1419           p++;
1420           match = 5;
1421           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1422         }
1423         case '6': {
1424           p++;
1425           match = 6;
1426           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1427         }
1428         case '7': {
1429           p++;
1430           match = 7;
1431           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1432         }
1433         case '8': {
1434           p++;
1435           match = 8;
1436           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1437         }
1438         case '9': {
1439           p++;
1440           match = 9;
1441           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1442         }
1443         case 'A': {
1444           p++;
1445           match = 10;
1446           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1447         }
1448         case 'B': {
1449           p++;
1450           match = 11;
1451           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1452         }
1453         case 'C': {
1454           p++;
1455           match = 12;
1456           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1457         }
1458         case 'D': {
1459           p++;
1460           match = 13;
1461           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1462         }
1463         case 'E': {
1464           p++;
1465           match = 14;
1466           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1467         }
1468         case 'F': {
1469           p++;
1470           match = 15;
1471           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1472         }
1473         case 'a': {
1474           p++;
1475           match = 10;
1476           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1477         }
1478         case 'b': {
1479           p++;
1480           match = 11;
1481           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1482         }
1483         case 'c': {
1484           p++;
1485           match = 12;
1486           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1487         }
1488         case 'd': {
1489           p++;
1490           match = 13;
1491           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1492         }
1493         case 'e': {
1494           p++;
1495           match = 14;
1496           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1497         }
1498         case 'f': {
1499           p++;
1500           match = 15;
1501           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
1502         }
1503         default: {
1504           goto s_n_llhttp__internal__n_error_13;
1505         }
1506       }
1507       /* UNREACHABLE */;
1508       abort();
1509     }
1510     case s_n_llhttp__internal__n_invoke_update_content_length:
1511     s_n_llhttp__internal__n_invoke_update_content_length: {
1512       switch (llhttp__internal__c_update_content_length(state, p, endp)) {
1513         default:
1514           goto s_n_llhttp__internal__n_chunk_size_digit;
1515       }
1516       /* UNREACHABLE */;
1517       abort();
1518     }
1519     case s_n_llhttp__internal__n_consume_content_length_1:
1520     s_n_llhttp__internal__n_consume_content_length_1: {
1521       size_t avail;
1522       uint64_t need;
1523 
1524       avail = endp - p;
1525       need = state->content_length;
1526       if (avail >= need) {
1527         p += need;
1528         state->content_length = 0;
1529         goto s_n_llhttp__internal__n_span_end_llhttp__on_body_1;
1530       }
1531 
1532       state->content_length -= avail;
1533       return s_n_llhttp__internal__n_consume_content_length_1;
1534       /* UNREACHABLE */;
1535       abort();
1536     }
1537     case s_n_llhttp__internal__n_span_start_llhttp__on_body_1:
1538     s_n_llhttp__internal__n_span_start_llhttp__on_body_1: {
1539       if (p == endp) {
1540         return s_n_llhttp__internal__n_span_start_llhttp__on_body_1;
1541       }
1542       state->_span_pos0 = (void*) p;
1543       state->_span_cb0 = llhttp__on_body;
1544       goto s_n_llhttp__internal__n_consume_content_length_1;
1545       /* UNREACHABLE */;
1546       abort();
1547     }
1548     case s_n_llhttp__internal__n_eof:
1549     s_n_llhttp__internal__n_eof: {
1550       if (p == endp) {
1551         return s_n_llhttp__internal__n_eof;
1552       }
1553       p++;
1554       goto s_n_llhttp__internal__n_eof;
1555       /* UNREACHABLE */;
1556       abort();
1557     }
1558     case s_n_llhttp__internal__n_span_start_llhttp__on_body_2:
1559     s_n_llhttp__internal__n_span_start_llhttp__on_body_2: {
1560       if (p == endp) {
1561         return s_n_llhttp__internal__n_span_start_llhttp__on_body_2;
1562       }
1563       state->_span_pos0 = (void*) p;
1564       state->_span_cb0 = llhttp__on_body;
1565       goto s_n_llhttp__internal__n_eof;
1566       /* UNREACHABLE */;
1567       abort();
1568     }
1569     case s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete:
1570     s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete: {
1571       switch (llhttp__after_headers_complete(state, p, endp)) {
1572         case 1:
1573           goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1;
1574         case 2:
1575           goto s_n_llhttp__internal__n_invoke_update_content_length;
1576         case 3:
1577           goto s_n_llhttp__internal__n_span_start_llhttp__on_body_1;
1578         case 4:
1579           goto s_n_llhttp__internal__n_invoke_update_finish_3;
1580         case 5:
1581           goto s_n_llhttp__internal__n_error_15;
1582         default:
1583           goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete;
1584       }
1585       /* UNREACHABLE */;
1586       abort();
1587     }
1588     case s_n_llhttp__internal__n_headers_almost_done:
1589     s_n_llhttp__internal__n_headers_almost_done: {
1590       if (p == endp) {
1591         return s_n_llhttp__internal__n_headers_almost_done;
1592       }
1593       switch (*p) {
1594         case 10: {
1595           p++;
1596           goto s_n_llhttp__internal__n_invoke_test_flags;
1597         }
1598         default: {
1599           goto s_n_llhttp__internal__n_error_18;
1600         }
1601       }
1602       /* UNREACHABLE */;
1603       abort();
1604     }
1605     case s_n_llhttp__internal__n_header_field_colon_discard_ws:
1606     s_n_llhttp__internal__n_header_field_colon_discard_ws: {
1607       if (p == endp) {
1608         return s_n_llhttp__internal__n_header_field_colon_discard_ws;
1609       }
1610       switch (*p) {
1611         case ' ': {
1612           p++;
1613           goto s_n_llhttp__internal__n_header_field_colon_discard_ws;
1614         }
1615         default: {
1616           goto s_n_llhttp__internal__n_header_field_colon;
1617         }
1618       }
1619       /* UNREACHABLE */;
1620       abort();
1621     }
1622     case s_n_llhttp__internal__n_error_19:
1623     s_n_llhttp__internal__n_error_19: {
1624       state->error = 0xa;
1625       state->reason = "Invalid header field char";
1626       state->error_pos = (const char*) p;
1627       state->_current = (void*) (intptr_t) s_error;
1628       return s_error;
1629       /* UNREACHABLE */;
1630       abort();
1631     }
1632     case s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete:
1633     s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: {
1634       switch (llhttp__on_header_value_complete(state, p, endp)) {
1635         default:
1636           goto s_n_llhttp__internal__n_header_field_start;
1637       }
1638       /* UNREACHABLE */;
1639       abort();
1640     }
1641     case s_n_llhttp__internal__n_span_start_llhttp__on_header_value:
1642     s_n_llhttp__internal__n_span_start_llhttp__on_header_value: {
1643       if (p == endp) {
1644         return s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
1645       }
1646       state->_span_pos0 = (void*) p;
1647       state->_span_cb0 = llhttp__on_header_value;
1648       goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value;
1649       /* UNREACHABLE */;
1650       abort();
1651     }
1652     case s_n_llhttp__internal__n_header_value_discard_lws:
1653     s_n_llhttp__internal__n_header_value_discard_lws: {
1654       if (p == endp) {
1655         return s_n_llhttp__internal__n_header_value_discard_lws;
1656       }
1657       switch (*p) {
1658         case 9: {
1659           p++;
1660           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4;
1661         }
1662         case ' ': {
1663           p++;
1664           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4;
1665         }
1666         default: {
1667           goto s_n_llhttp__internal__n_invoke_load_header_state;
1668         }
1669       }
1670       /* UNREACHABLE */;
1671       abort();
1672     }
1673     case s_n_llhttp__internal__n_header_value_discard_ws_almost_done:
1674     s_n_llhttp__internal__n_header_value_discard_ws_almost_done: {
1675       if (p == endp) {
1676         return s_n_llhttp__internal__n_header_value_discard_ws_almost_done;
1677       }
1678       switch (*p) {
1679         case 10: {
1680           p++;
1681           goto s_n_llhttp__internal__n_header_value_discard_lws;
1682         }
1683         default: {
1684           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5;
1685         }
1686       }
1687       /* UNREACHABLE */;
1688       abort();
1689     }
1690     case s_n_llhttp__internal__n_header_value_lws:
1691     s_n_llhttp__internal__n_header_value_lws: {
1692       if (p == endp) {
1693         return s_n_llhttp__internal__n_header_value_lws;
1694       }
1695       switch (*p) {
1696         case 9: {
1697           goto s_n_llhttp__internal__n_invoke_load_header_state_3;
1698         }
1699         case ' ': {
1700           goto s_n_llhttp__internal__n_invoke_load_header_state_3;
1701         }
1702         default: {
1703           goto s_n_llhttp__internal__n_invoke_load_header_state_4;
1704         }
1705       }
1706       /* UNREACHABLE */;
1707       abort();
1708     }
1709     case s_n_llhttp__internal__n_header_value_almost_done:
1710     s_n_llhttp__internal__n_header_value_almost_done: {
1711       if (p == endp) {
1712         return s_n_llhttp__internal__n_header_value_almost_done;
1713       }
1714       switch (*p) {
1715         case 10: {
1716           p++;
1717           goto s_n_llhttp__internal__n_header_value_lws;
1718         }
1719         default: {
1720           goto s_n_llhttp__internal__n_error_24;
1721         }
1722       }
1723       /* UNREACHABLE */;
1724       abort();
1725     }
1726     case s_n_llhttp__internal__n_header_value_lenient:
1727     s_n_llhttp__internal__n_header_value_lenient: {
1728       if (p == endp) {
1729         return s_n_llhttp__internal__n_header_value_lenient;
1730       }
1731       switch (*p) {
1732         case 10: {
1733           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_3;
1734         }
1735         case 13: {
1736           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_4;
1737         }
1738         default: {
1739           p++;
1740           goto s_n_llhttp__internal__n_header_value_lenient;
1741         }
1742       }
1743       /* UNREACHABLE */;
1744       abort();
1745     }
1746     case s_n_llhttp__internal__n_error_25:
1747     s_n_llhttp__internal__n_error_25: {
1748       state->error = 0xa;
1749       state->reason = "Invalid header value char";
1750       state->error_pos = (const char*) p;
1751       state->_current = (void*) (intptr_t) s_error;
1752       return s_error;
1753       /* UNREACHABLE */;
1754       abort();
1755     }
1756     case s_n_llhttp__internal__n_header_value_otherwise:
1757     s_n_llhttp__internal__n_header_value_otherwise: {
1758       if (p == endp) {
1759         return s_n_llhttp__internal__n_header_value_otherwise;
1760       }
1761       switch (*p) {
1762         case 13: {
1763           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1;
1764         }
1765         default: {
1766           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6;
1767         }
1768       }
1769       /* UNREACHABLE */;
1770       abort();
1771     }
1772     case s_n_llhttp__internal__n_header_value_connection_token:
1773     s_n_llhttp__internal__n_header_value_connection_token: {
1774       static uint8_t lookup_table[] = {
1775         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
1776         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1777         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
1778         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1779         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1780         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1781         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1782         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
1783         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1784         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1785         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1786         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1787         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1788         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1789         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1790         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
1791       };
1792       if (p == endp) {
1793         return s_n_llhttp__internal__n_header_value_connection_token;
1794       }
1795       switch (lookup_table[(uint8_t) *p]) {
1796         case 1: {
1797           p++;
1798           goto s_n_llhttp__internal__n_header_value_connection_token;
1799         }
1800         case 2: {
1801           p++;
1802           goto s_n_llhttp__internal__n_header_value_connection;
1803         }
1804         default: {
1805           goto s_n_llhttp__internal__n_header_value_otherwise;
1806         }
1807       }
1808       /* UNREACHABLE */;
1809       abort();
1810     }
1811     case s_n_llhttp__internal__n_header_value_connection_ws:
1812     s_n_llhttp__internal__n_header_value_connection_ws: {
1813       if (p == endp) {
1814         return s_n_llhttp__internal__n_header_value_connection_ws;
1815       }
1816       switch (*p) {
1817         case 10: {
1818           goto s_n_llhttp__internal__n_header_value_otherwise;
1819         }
1820         case 13: {
1821           goto s_n_llhttp__internal__n_header_value_otherwise;
1822         }
1823         case ' ': {
1824           p++;
1825           goto s_n_llhttp__internal__n_header_value_connection_ws;
1826         }
1827         case ',': {
1828           p++;
1829           goto s_n_llhttp__internal__n_invoke_load_header_state_5;
1830         }
1831         default: {
1832           goto s_n_llhttp__internal__n_invoke_update_header_state_5;
1833         }
1834       }
1835       /* UNREACHABLE */;
1836       abort();
1837     }
1838     case s_n_llhttp__internal__n_header_value_connection_1:
1839     s_n_llhttp__internal__n_header_value_connection_1: {
1840       llparse_match_t match_seq;
1841 
1842       if (p == endp) {
1843         return s_n_llhttp__internal__n_header_value_connection_1;
1844       }
1845       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 4);
1846       p = match_seq.current;
1847       switch (match_seq.status) {
1848         case kMatchComplete: {
1849           p++;
1850           goto s_n_llhttp__internal__n_invoke_update_header_state_3;
1851         }
1852         case kMatchPause: {
1853           return s_n_llhttp__internal__n_header_value_connection_1;
1854         }
1855         case kMatchMismatch: {
1856           goto s_n_llhttp__internal__n_header_value_connection_token;
1857         }
1858       }
1859       /* UNREACHABLE */;
1860       abort();
1861     }
1862     case s_n_llhttp__internal__n_header_value_connection_2:
1863     s_n_llhttp__internal__n_header_value_connection_2: {
1864       llparse_match_t match_seq;
1865 
1866       if (p == endp) {
1867         return s_n_llhttp__internal__n_header_value_connection_2;
1868       }
1869       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 9);
1870       p = match_seq.current;
1871       switch (match_seq.status) {
1872         case kMatchComplete: {
1873           p++;
1874           goto s_n_llhttp__internal__n_invoke_update_header_state_6;
1875         }
1876         case kMatchPause: {
1877           return s_n_llhttp__internal__n_header_value_connection_2;
1878         }
1879         case kMatchMismatch: {
1880           goto s_n_llhttp__internal__n_header_value_connection_token;
1881         }
1882       }
1883       /* UNREACHABLE */;
1884       abort();
1885     }
1886     case s_n_llhttp__internal__n_header_value_connection_3:
1887     s_n_llhttp__internal__n_header_value_connection_3: {
1888       llparse_match_t match_seq;
1889 
1890       if (p == endp) {
1891         return s_n_llhttp__internal__n_header_value_connection_3;
1892       }
1893       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 6);
1894       p = match_seq.current;
1895       switch (match_seq.status) {
1896         case kMatchComplete: {
1897           p++;
1898           goto s_n_llhttp__internal__n_invoke_update_header_state_7;
1899         }
1900         case kMatchPause: {
1901           return s_n_llhttp__internal__n_header_value_connection_3;
1902         }
1903         case kMatchMismatch: {
1904           goto s_n_llhttp__internal__n_header_value_connection_token;
1905         }
1906       }
1907       /* UNREACHABLE */;
1908       abort();
1909     }
1910     case s_n_llhttp__internal__n_header_value_connection:
1911     s_n_llhttp__internal__n_header_value_connection: {
1912       if (p == endp) {
1913         return s_n_llhttp__internal__n_header_value_connection;
1914       }
1915       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
1916         case 9: {
1917           p++;
1918           goto s_n_llhttp__internal__n_header_value_connection;
1919         }
1920         case ' ': {
1921           p++;
1922           goto s_n_llhttp__internal__n_header_value_connection;
1923         }
1924         case 'c': {
1925           p++;
1926           goto s_n_llhttp__internal__n_header_value_connection_1;
1927         }
1928         case 'k': {
1929           p++;
1930           goto s_n_llhttp__internal__n_header_value_connection_2;
1931         }
1932         case 'u': {
1933           p++;
1934           goto s_n_llhttp__internal__n_header_value_connection_3;
1935         }
1936         default: {
1937           goto s_n_llhttp__internal__n_header_value_connection_token;
1938         }
1939       }
1940       /* UNREACHABLE */;
1941       abort();
1942     }
1943     case s_n_llhttp__internal__n_error_27:
1944     s_n_llhttp__internal__n_error_27: {
1945       state->error = 0xb;
1946       state->reason = "Content-Length overflow";
1947       state->error_pos = (const char*) p;
1948       state->_current = (void*) (intptr_t) s_error;
1949       return s_error;
1950       /* UNREACHABLE */;
1951       abort();
1952     }
1953     case s_n_llhttp__internal__n_error_28:
1954     s_n_llhttp__internal__n_error_28: {
1955       state->error = 0xb;
1956       state->reason = "Invalid character in Content-Length";
1957       state->error_pos = (const char*) p;
1958       state->_current = (void*) (intptr_t) s_error;
1959       return s_error;
1960       /* UNREACHABLE */;
1961       abort();
1962     }
1963     case s_n_llhttp__internal__n_header_value_content_length_ws:
1964     s_n_llhttp__internal__n_header_value_content_length_ws: {
1965       if (p == endp) {
1966         return s_n_llhttp__internal__n_header_value_content_length_ws;
1967       }
1968       switch (*p) {
1969         case 10: {
1970           goto s_n_llhttp__internal__n_invoke_or_flags_15;
1971         }
1972         case 13: {
1973           goto s_n_llhttp__internal__n_invoke_or_flags_15;
1974         }
1975         case ' ': {
1976           p++;
1977           goto s_n_llhttp__internal__n_header_value_content_length_ws;
1978         }
1979         default: {
1980           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_6;
1981         }
1982       }
1983       /* UNREACHABLE */;
1984       abort();
1985     }
1986     case s_n_llhttp__internal__n_header_value_content_length:
1987     s_n_llhttp__internal__n_header_value_content_length: {
1988       if (p == endp) {
1989         return s_n_llhttp__internal__n_header_value_content_length;
1990       }
1991       switch (*p) {
1992         case '0': {
1993           p++;
1994           match = 0;
1995           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
1996         }
1997         case '1': {
1998           p++;
1999           match = 1;
2000           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2001         }
2002         case '2': {
2003           p++;
2004           match = 2;
2005           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2006         }
2007         case '3': {
2008           p++;
2009           match = 3;
2010           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2011         }
2012         case '4': {
2013           p++;
2014           match = 4;
2015           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2016         }
2017         case '5': {
2018           p++;
2019           match = 5;
2020           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2021         }
2022         case '6': {
2023           p++;
2024           match = 6;
2025           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2026         }
2027         case '7': {
2028           p++;
2029           match = 7;
2030           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2031         }
2032         case '8': {
2033           p++;
2034           match = 8;
2035           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2036         }
2037         case '9': {
2038           p++;
2039           match = 9;
2040           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
2041         }
2042         default: {
2043           goto s_n_llhttp__internal__n_header_value_content_length_ws;
2044         }
2045       }
2046       /* UNREACHABLE */;
2047       abort();
2048     }
2049     case s_n_llhttp__internal__n_error_30:
2050     s_n_llhttp__internal__n_error_30: {
2051       state->error = 0xf;
2052       state->reason = "Invalid `Transfer-Encoding` header value";
2053       state->error_pos = (const char*) p;
2054       state->_current = (void*) (intptr_t) s_error;
2055       return s_error;
2056       /* UNREACHABLE */;
2057       abort();
2058     }
2059     case s_n_llhttp__internal__n_error_29:
2060     s_n_llhttp__internal__n_error_29: {
2061       state->error = 0xf;
2062       state->reason = "Invalid `Transfer-Encoding` header value";
2063       state->error_pos = (const char*) p;
2064       state->_current = (void*) (intptr_t) s_error;
2065       return s_error;
2066       /* UNREACHABLE */;
2067       abort();
2068     }
2069     case s_n_llhttp__internal__n_header_value_te_token_ows:
2070     s_n_llhttp__internal__n_header_value_te_token_ows: {
2071       if (p == endp) {
2072         return s_n_llhttp__internal__n_header_value_te_token_ows;
2073       }
2074       switch (*p) {
2075         case 9: {
2076           p++;
2077           goto s_n_llhttp__internal__n_header_value_te_token_ows;
2078         }
2079         case ' ': {
2080           p++;
2081           goto s_n_llhttp__internal__n_header_value_te_token_ows;
2082         }
2083         default: {
2084           goto s_n_llhttp__internal__n_header_value_te_chunked;
2085         }
2086       }
2087       /* UNREACHABLE */;
2088       abort();
2089     }
2090     case s_n_llhttp__internal__n_header_value:
2091     s_n_llhttp__internal__n_header_value: {
2092       static uint8_t lookup_table[] = {
2093         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
2094         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2095         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2096         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2097         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2098         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2099         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2100         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
2101         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2102         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2103         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2104         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2105         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2106         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2107         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2108         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
2109       };
2110       if (p == endp) {
2111         return s_n_llhttp__internal__n_header_value;
2112       }
2113       #ifdef __SSE4_2__
2114       if (endp - p >= 16) {
2115         __m128i ranges;
2116         __m128i input;
2117         int avail;
2118         int match_len;
2119 
2120         /* Load input */
2121         input = _mm_loadu_si128((__m128i const*) p);
2122         ranges = _mm_loadu_si128((__m128i const*) llparse_blob7);
2123 
2124         /* Find first character that does not match `ranges` */
2125         match_len = _mm_cmpestri(ranges, 6,
2126             input, 16,
2127             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
2128               _SIDD_NEGATIVE_POLARITY);
2129 
2130         if (match_len != 0) {
2131           p += match_len;
2132           goto s_n_llhttp__internal__n_header_value;
2133         }
2134         goto s_n_llhttp__internal__n_header_value_otherwise;
2135       }
2136       #endif  /* __SSE4_2__ */
2137       switch (lookup_table[(uint8_t) *p]) {
2138         case 1: {
2139           p++;
2140           goto s_n_llhttp__internal__n_header_value;
2141         }
2142         default: {
2143           goto s_n_llhttp__internal__n_header_value_otherwise;
2144         }
2145       }
2146       /* UNREACHABLE */;
2147       abort();
2148     }
2149     case s_n_llhttp__internal__n_header_value_te_token:
2150     s_n_llhttp__internal__n_header_value_te_token: {
2151       static uint8_t lookup_table[] = {
2152         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
2153         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2154         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
2155         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2156         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2157         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2158         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2159         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
2160         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2161         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2162         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2163         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2164         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2165         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2166         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2167         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
2168       };
2169       if (p == endp) {
2170         return s_n_llhttp__internal__n_header_value_te_token;
2171       }
2172       switch (lookup_table[(uint8_t) *p]) {
2173         case 1: {
2174           p++;
2175           goto s_n_llhttp__internal__n_header_value_te_token;
2176         }
2177         case 2: {
2178           p++;
2179           goto s_n_llhttp__internal__n_header_value_te_token_ows;
2180         }
2181         default: {
2182           goto s_n_llhttp__internal__n_invoke_update_header_state_9;
2183         }
2184       }
2185       /* UNREACHABLE */;
2186       abort();
2187     }
2188     case s_n_llhttp__internal__n_header_value_te_chunked_last:
2189     s_n_llhttp__internal__n_header_value_te_chunked_last: {
2190       if (p == endp) {
2191         return s_n_llhttp__internal__n_header_value_te_chunked_last;
2192       }
2193       switch (*p) {
2194         case 10: {
2195           goto s_n_llhttp__internal__n_invoke_update_header_state_8;
2196         }
2197         case 13: {
2198           goto s_n_llhttp__internal__n_invoke_update_header_state_8;
2199         }
2200         case ' ': {
2201           p++;
2202           goto s_n_llhttp__internal__n_header_value_te_chunked_last;
2203         }
2204         case ',': {
2205           goto s_n_llhttp__internal__n_invoke_load_type_1;
2206         }
2207         default: {
2208           goto s_n_llhttp__internal__n_header_value_te_token;
2209         }
2210       }
2211       /* UNREACHABLE */;
2212       abort();
2213     }
2214     case s_n_llhttp__internal__n_header_value_te_chunked:
2215     s_n_llhttp__internal__n_header_value_te_chunked: {
2216       llparse_match_t match_seq;
2217 
2218       if (p == endp) {
2219         return s_n_llhttp__internal__n_header_value_te_chunked;
2220       }
2221       match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob6, 7);
2222       p = match_seq.current;
2223       switch (match_seq.status) {
2224         case kMatchComplete: {
2225           p++;
2226           goto s_n_llhttp__internal__n_header_value_te_chunked_last;
2227         }
2228         case kMatchPause: {
2229           return s_n_llhttp__internal__n_header_value_te_chunked;
2230         }
2231         case kMatchMismatch: {
2232           goto s_n_llhttp__internal__n_header_value_te_token;
2233         }
2234       }
2235       /* UNREACHABLE */;
2236       abort();
2237     }
2238     case s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1:
2239     s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1: {
2240       if (p == endp) {
2241         return s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
2242       }
2243       state->_span_pos0 = (void*) p;
2244       state->_span_cb0 = llhttp__on_header_value;
2245       goto s_n_llhttp__internal__n_invoke_load_header_state_2;
2246       /* UNREACHABLE */;
2247       abort();
2248     }
2249     case s_n_llhttp__internal__n_header_value_discard_ws:
2250     s_n_llhttp__internal__n_header_value_discard_ws: {
2251       if (p == endp) {
2252         return s_n_llhttp__internal__n_header_value_discard_ws;
2253       }
2254       switch (*p) {
2255         case 9: {
2256           p++;
2257           goto s_n_llhttp__internal__n_header_value_discard_ws;
2258         }
2259         case 10: {
2260           p++;
2261           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3;
2262         }
2263         case 13: {
2264           p++;
2265           goto s_n_llhttp__internal__n_header_value_discard_ws_almost_done;
2266         }
2267         case ' ': {
2268           p++;
2269           goto s_n_llhttp__internal__n_header_value_discard_ws;
2270         }
2271         default: {
2272           goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
2273         }
2274       }
2275       /* UNREACHABLE */;
2276       abort();
2277     }
2278     case s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete:
2279     s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: {
2280       switch (llhttp__on_header_field_complete(state, p, endp)) {
2281         default:
2282           goto s_n_llhttp__internal__n_header_value_discard_ws;
2283       }
2284       /* UNREACHABLE */;
2285       abort();
2286     }
2287     case s_n_llhttp__internal__n_header_field_general_otherwise:
2288     s_n_llhttp__internal__n_header_field_general_otherwise: {
2289       if (p == endp) {
2290         return s_n_llhttp__internal__n_header_field_general_otherwise;
2291       }
2292       switch (*p) {
2293         case ':': {
2294           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2;
2295         }
2296         default: {
2297           goto s_n_llhttp__internal__n_error_31;
2298         }
2299       }
2300       /* UNREACHABLE */;
2301       abort();
2302     }
2303     case s_n_llhttp__internal__n_header_field_general:
2304     s_n_llhttp__internal__n_header_field_general: {
2305       static uint8_t lookup_table[] = {
2306         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2307         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2308         0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0,
2309         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,
2310         0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2311         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1,
2312         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2313         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0,
2314         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2315         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2316         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2317         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2318         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2319         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2320         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2321         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
2322       };
2323       if (p == endp) {
2324         return s_n_llhttp__internal__n_header_field_general;
2325       }
2326       #ifdef __SSE4_2__
2327       if (endp - p >= 16) {
2328         __m128i ranges;
2329         __m128i input;
2330         int avail;
2331         int match_len;
2332 
2333         /* Load input */
2334         input = _mm_loadu_si128((__m128i const*) p);
2335         ranges = _mm_loadu_si128((__m128i const*) llparse_blob8);
2336 
2337         /* Find first character that does not match `ranges` */
2338         match_len = _mm_cmpestri(ranges, 16,
2339             input, 16,
2340             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
2341               _SIDD_NEGATIVE_POLARITY);
2342 
2343         if (match_len != 0) {
2344           p += match_len;
2345           goto s_n_llhttp__internal__n_header_field_general;
2346         }
2347         ranges = _mm_loadu_si128((__m128i const*) llparse_blob9);
2348 
2349         /* Find first character that does not match `ranges` */
2350         match_len = _mm_cmpestri(ranges, 2,
2351             input, 16,
2352             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
2353               _SIDD_NEGATIVE_POLARITY);
2354 
2355         if (match_len != 0) {
2356           p += match_len;
2357           goto s_n_llhttp__internal__n_header_field_general;
2358         }
2359         goto s_n_llhttp__internal__n_header_field_general_otherwise;
2360       }
2361       #endif  /* __SSE4_2__ */
2362       switch (lookup_table[(uint8_t) *p]) {
2363         case 1: {
2364           p++;
2365           goto s_n_llhttp__internal__n_header_field_general;
2366         }
2367         default: {
2368           goto s_n_llhttp__internal__n_header_field_general_otherwise;
2369         }
2370       }
2371       /* UNREACHABLE */;
2372       abort();
2373     }
2374     case s_n_llhttp__internal__n_header_field_colon:
2375     s_n_llhttp__internal__n_header_field_colon: {
2376       if (p == endp) {
2377         return s_n_llhttp__internal__n_header_field_colon;
2378       }
2379       switch (*p) {
2380         case ' ': {
2381           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2;
2382         }
2383         case ':': {
2384           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1;
2385         }
2386         default: {
2387           goto s_n_llhttp__internal__n_invoke_update_header_state_10;
2388         }
2389       }
2390       /* UNREACHABLE */;
2391       abort();
2392     }
2393     case s_n_llhttp__internal__n_header_field_3:
2394     s_n_llhttp__internal__n_header_field_3: {
2395       llparse_match_t match_seq;
2396 
2397       if (p == endp) {
2398         return s_n_llhttp__internal__n_header_field_3;
2399       }
2400       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 6);
2401       p = match_seq.current;
2402       switch (match_seq.status) {
2403         case kMatchComplete: {
2404           p++;
2405           match = 1;
2406           goto s_n_llhttp__internal__n_invoke_store_header_state;
2407         }
2408         case kMatchPause: {
2409           return s_n_llhttp__internal__n_header_field_3;
2410         }
2411         case kMatchMismatch: {
2412           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2413         }
2414       }
2415       /* UNREACHABLE */;
2416       abort();
2417     }
2418     case s_n_llhttp__internal__n_header_field_4:
2419     s_n_llhttp__internal__n_header_field_4: {
2420       llparse_match_t match_seq;
2421 
2422       if (p == endp) {
2423         return s_n_llhttp__internal__n_header_field_4;
2424       }
2425       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob10, 10);
2426       p = match_seq.current;
2427       switch (match_seq.status) {
2428         case kMatchComplete: {
2429           p++;
2430           match = 2;
2431           goto s_n_llhttp__internal__n_invoke_store_header_state;
2432         }
2433         case kMatchPause: {
2434           return s_n_llhttp__internal__n_header_field_4;
2435         }
2436         case kMatchMismatch: {
2437           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2438         }
2439       }
2440       /* UNREACHABLE */;
2441       abort();
2442     }
2443     case s_n_llhttp__internal__n_header_field_2:
2444     s_n_llhttp__internal__n_header_field_2: {
2445       if (p == endp) {
2446         return s_n_llhttp__internal__n_header_field_2;
2447       }
2448       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
2449         case 'n': {
2450           p++;
2451           goto s_n_llhttp__internal__n_header_field_3;
2452         }
2453         case 't': {
2454           p++;
2455           goto s_n_llhttp__internal__n_header_field_4;
2456         }
2457         default: {
2458           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2459         }
2460       }
2461       /* UNREACHABLE */;
2462       abort();
2463     }
2464     case s_n_llhttp__internal__n_header_field_1:
2465     s_n_llhttp__internal__n_header_field_1: {
2466       llparse_match_t match_seq;
2467 
2468       if (p == endp) {
2469         return s_n_llhttp__internal__n_header_field_1;
2470       }
2471       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob1, 2);
2472       p = match_seq.current;
2473       switch (match_seq.status) {
2474         case kMatchComplete: {
2475           p++;
2476           goto s_n_llhttp__internal__n_header_field_2;
2477         }
2478         case kMatchPause: {
2479           return s_n_llhttp__internal__n_header_field_1;
2480         }
2481         case kMatchMismatch: {
2482           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2483         }
2484       }
2485       /* UNREACHABLE */;
2486       abort();
2487     }
2488     case s_n_llhttp__internal__n_header_field_5:
2489     s_n_llhttp__internal__n_header_field_5: {
2490       llparse_match_t match_seq;
2491 
2492       if (p == endp) {
2493         return s_n_llhttp__internal__n_header_field_5;
2494       }
2495       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 15);
2496       p = match_seq.current;
2497       switch (match_seq.status) {
2498         case kMatchComplete: {
2499           p++;
2500           match = 1;
2501           goto s_n_llhttp__internal__n_invoke_store_header_state;
2502         }
2503         case kMatchPause: {
2504           return s_n_llhttp__internal__n_header_field_5;
2505         }
2506         case kMatchMismatch: {
2507           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2508         }
2509       }
2510       /* UNREACHABLE */;
2511       abort();
2512     }
2513     case s_n_llhttp__internal__n_header_field_6:
2514     s_n_llhttp__internal__n_header_field_6: {
2515       llparse_match_t match_seq;
2516 
2517       if (p == endp) {
2518         return s_n_llhttp__internal__n_header_field_6;
2519       }
2520       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 16);
2521       p = match_seq.current;
2522       switch (match_seq.status) {
2523         case kMatchComplete: {
2524           p++;
2525           match = 3;
2526           goto s_n_llhttp__internal__n_invoke_store_header_state;
2527         }
2528         case kMatchPause: {
2529           return s_n_llhttp__internal__n_header_field_6;
2530         }
2531         case kMatchMismatch: {
2532           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2533         }
2534       }
2535       /* UNREACHABLE */;
2536       abort();
2537     }
2538     case s_n_llhttp__internal__n_header_field_7:
2539     s_n_llhttp__internal__n_header_field_7: {
2540       llparse_match_t match_seq;
2541 
2542       if (p == endp) {
2543         return s_n_llhttp__internal__n_header_field_7;
2544       }
2545       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 6);
2546       p = match_seq.current;
2547       switch (match_seq.status) {
2548         case kMatchComplete: {
2549           p++;
2550           match = 4;
2551           goto s_n_llhttp__internal__n_invoke_store_header_state;
2552         }
2553         case kMatchPause: {
2554           return s_n_llhttp__internal__n_header_field_7;
2555         }
2556         case kMatchMismatch: {
2557           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2558         }
2559       }
2560       /* UNREACHABLE */;
2561       abort();
2562     }
2563     case s_n_llhttp__internal__n_header_field:
2564     s_n_llhttp__internal__n_header_field: {
2565       if (p == endp) {
2566         return s_n_llhttp__internal__n_header_field;
2567       }
2568       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
2569         case 'c': {
2570           p++;
2571           goto s_n_llhttp__internal__n_header_field_1;
2572         }
2573         case 'p': {
2574           p++;
2575           goto s_n_llhttp__internal__n_header_field_5;
2576         }
2577         case 't': {
2578           p++;
2579           goto s_n_llhttp__internal__n_header_field_6;
2580         }
2581         case 'u': {
2582           p++;
2583           goto s_n_llhttp__internal__n_header_field_7;
2584         }
2585         default: {
2586           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
2587         }
2588       }
2589       /* UNREACHABLE */;
2590       abort();
2591     }
2592     case s_n_llhttp__internal__n_span_start_llhttp__on_header_field:
2593     s_n_llhttp__internal__n_span_start_llhttp__on_header_field: {
2594       if (p == endp) {
2595         return s_n_llhttp__internal__n_span_start_llhttp__on_header_field;
2596       }
2597       state->_span_pos0 = (void*) p;
2598       state->_span_cb0 = llhttp__on_header_field;
2599       goto s_n_llhttp__internal__n_header_field;
2600       /* UNREACHABLE */;
2601       abort();
2602     }
2603     case s_n_llhttp__internal__n_header_field_start:
2604     s_n_llhttp__internal__n_header_field_start: {
2605       if (p == endp) {
2606         return s_n_llhttp__internal__n_header_field_start;
2607       }
2608       switch (*p) {
2609         case 10: {
2610           goto s_n_llhttp__internal__n_headers_almost_done;
2611         }
2612         case 13: {
2613           p++;
2614           goto s_n_llhttp__internal__n_headers_almost_done;
2615         }
2616         default: {
2617           goto s_n_llhttp__internal__n_span_start_llhttp__on_header_field;
2618         }
2619       }
2620       /* UNREACHABLE */;
2621       abort();
2622     }
2623     case s_n_llhttp__internal__n_url_to_http_09:
2624     s_n_llhttp__internal__n_url_to_http_09: {
2625       if (p == endp) {
2626         return s_n_llhttp__internal__n_url_to_http_09;
2627       }
2628       switch (*p) {
2629         case 9: {
2630           p++;
2631           goto s_n_llhttp__internal__n_error_1;
2632         }
2633         case 12: {
2634           p++;
2635           goto s_n_llhttp__internal__n_error_1;
2636         }
2637         default: {
2638           goto s_n_llhttp__internal__n_invoke_update_http_major;
2639         }
2640       }
2641       /* UNREACHABLE */;
2642       abort();
2643     }
2644     case s_n_llhttp__internal__n_url_skip_to_http09:
2645     s_n_llhttp__internal__n_url_skip_to_http09: {
2646       if (p == endp) {
2647         return s_n_llhttp__internal__n_url_skip_to_http09;
2648       }
2649       switch (*p) {
2650         case 9: {
2651           p++;
2652           goto s_n_llhttp__internal__n_error_1;
2653         }
2654         case 12: {
2655           p++;
2656           goto s_n_llhttp__internal__n_error_1;
2657         }
2658         default: {
2659           p++;
2660           goto s_n_llhttp__internal__n_url_to_http_09;
2661         }
2662       }
2663       /* UNREACHABLE */;
2664       abort();
2665     }
2666     case s_n_llhttp__internal__n_url_skip_lf_to_http09_1:
2667     s_n_llhttp__internal__n_url_skip_lf_to_http09_1: {
2668       if (p == endp) {
2669         return s_n_llhttp__internal__n_url_skip_lf_to_http09_1;
2670       }
2671       switch (*p) {
2672         case 10: {
2673           p++;
2674           goto s_n_llhttp__internal__n_url_to_http_09;
2675         }
2676         default: {
2677           goto s_n_llhttp__internal__n_error_32;
2678         }
2679       }
2680       /* UNREACHABLE */;
2681       abort();
2682     }
2683     case s_n_llhttp__internal__n_url_skip_lf_to_http09:
2684     s_n_llhttp__internal__n_url_skip_lf_to_http09: {
2685       if (p == endp) {
2686         return s_n_llhttp__internal__n_url_skip_lf_to_http09;
2687       }
2688       switch (*p) {
2689         case 9: {
2690           p++;
2691           goto s_n_llhttp__internal__n_error_1;
2692         }
2693         case 12: {
2694           p++;
2695           goto s_n_llhttp__internal__n_error_1;
2696         }
2697         case 13: {
2698           p++;
2699           goto s_n_llhttp__internal__n_url_skip_lf_to_http09_1;
2700         }
2701         default: {
2702           goto s_n_llhttp__internal__n_error_32;
2703         }
2704       }
2705       /* UNREACHABLE */;
2706       abort();
2707     }
2708     case s_n_llhttp__internal__n_req_pri_upgrade:
2709     s_n_llhttp__internal__n_req_pri_upgrade: {
2710       llparse_match_t match_seq;
2711 
2712       if (p == endp) {
2713         return s_n_llhttp__internal__n_req_pri_upgrade;
2714       }
2715       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 10);
2716       p = match_seq.current;
2717       switch (match_seq.status) {
2718         case kMatchComplete: {
2719           p++;
2720           goto s_n_llhttp__internal__n_error_37;
2721         }
2722         case kMatchPause: {
2723           return s_n_llhttp__internal__n_req_pri_upgrade;
2724         }
2725         case kMatchMismatch: {
2726           goto s_n_llhttp__internal__n_error_38;
2727         }
2728       }
2729       /* UNREACHABLE */;
2730       abort();
2731     }
2732     case s_n_llhttp__internal__n_req_http_complete_1:
2733     s_n_llhttp__internal__n_req_http_complete_1: {
2734       if (p == endp) {
2735         return s_n_llhttp__internal__n_req_http_complete_1;
2736       }
2737       switch (*p) {
2738         case 10: {
2739           p++;
2740           goto s_n_llhttp__internal__n_header_field_start;
2741         }
2742         default: {
2743           goto s_n_llhttp__internal__n_error_36;
2744         }
2745       }
2746       /* UNREACHABLE */;
2747       abort();
2748     }
2749     case s_n_llhttp__internal__n_req_http_complete:
2750     s_n_llhttp__internal__n_req_http_complete: {
2751       if (p == endp) {
2752         return s_n_llhttp__internal__n_req_http_complete;
2753       }
2754       switch (*p) {
2755         case 10: {
2756           p++;
2757           goto s_n_llhttp__internal__n_header_field_start;
2758         }
2759         case 13: {
2760           p++;
2761           goto s_n_llhttp__internal__n_req_http_complete_1;
2762         }
2763         default: {
2764           goto s_n_llhttp__internal__n_error_36;
2765         }
2766       }
2767       /* UNREACHABLE */;
2768       abort();
2769     }
2770     case s_n_llhttp__internal__n_req_http_minor:
2771     s_n_llhttp__internal__n_req_http_minor: {
2772       if (p == endp) {
2773         return s_n_llhttp__internal__n_req_http_minor;
2774       }
2775       switch (*p) {
2776         case '0': {
2777           p++;
2778           match = 0;
2779           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2780         }
2781         case '1': {
2782           p++;
2783           match = 1;
2784           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2785         }
2786         case '2': {
2787           p++;
2788           match = 2;
2789           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2790         }
2791         case '3': {
2792           p++;
2793           match = 3;
2794           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2795         }
2796         case '4': {
2797           p++;
2798           match = 4;
2799           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2800         }
2801         case '5': {
2802           p++;
2803           match = 5;
2804           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2805         }
2806         case '6': {
2807           p++;
2808           match = 6;
2809           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2810         }
2811         case '7': {
2812           p++;
2813           match = 7;
2814           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2815         }
2816         case '8': {
2817           p++;
2818           match = 8;
2819           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2820         }
2821         case '9': {
2822           p++;
2823           match = 9;
2824           goto s_n_llhttp__internal__n_invoke_store_http_minor;
2825         }
2826         default: {
2827           goto s_n_llhttp__internal__n_error_41;
2828         }
2829       }
2830       /* UNREACHABLE */;
2831       abort();
2832     }
2833     case s_n_llhttp__internal__n_req_http_dot:
2834     s_n_llhttp__internal__n_req_http_dot: {
2835       if (p == endp) {
2836         return s_n_llhttp__internal__n_req_http_dot;
2837       }
2838       switch (*p) {
2839         case '.': {
2840           p++;
2841           goto s_n_llhttp__internal__n_req_http_minor;
2842         }
2843         default: {
2844           goto s_n_llhttp__internal__n_error_42;
2845         }
2846       }
2847       /* UNREACHABLE */;
2848       abort();
2849     }
2850     case s_n_llhttp__internal__n_req_http_major:
2851     s_n_llhttp__internal__n_req_http_major: {
2852       if (p == endp) {
2853         return s_n_llhttp__internal__n_req_http_major;
2854       }
2855       switch (*p) {
2856         case '0': {
2857           p++;
2858           match = 0;
2859           goto s_n_llhttp__internal__n_invoke_store_http_major;
2860         }
2861         case '1': {
2862           p++;
2863           match = 1;
2864           goto s_n_llhttp__internal__n_invoke_store_http_major;
2865         }
2866         case '2': {
2867           p++;
2868           match = 2;
2869           goto s_n_llhttp__internal__n_invoke_store_http_major;
2870         }
2871         case '3': {
2872           p++;
2873           match = 3;
2874           goto s_n_llhttp__internal__n_invoke_store_http_major;
2875         }
2876         case '4': {
2877           p++;
2878           match = 4;
2879           goto s_n_llhttp__internal__n_invoke_store_http_major;
2880         }
2881         case '5': {
2882           p++;
2883           match = 5;
2884           goto s_n_llhttp__internal__n_invoke_store_http_major;
2885         }
2886         case '6': {
2887           p++;
2888           match = 6;
2889           goto s_n_llhttp__internal__n_invoke_store_http_major;
2890         }
2891         case '7': {
2892           p++;
2893           match = 7;
2894           goto s_n_llhttp__internal__n_invoke_store_http_major;
2895         }
2896         case '8': {
2897           p++;
2898           match = 8;
2899           goto s_n_llhttp__internal__n_invoke_store_http_major;
2900         }
2901         case '9': {
2902           p++;
2903           match = 9;
2904           goto s_n_llhttp__internal__n_invoke_store_http_major;
2905         }
2906         default: {
2907           goto s_n_llhttp__internal__n_error_43;
2908         }
2909       }
2910       /* UNREACHABLE */;
2911       abort();
2912     }
2913     case s_n_llhttp__internal__n_req_http_start_1:
2914     s_n_llhttp__internal__n_req_http_start_1: {
2915       llparse_match_t match_seq;
2916 
2917       if (p == endp) {
2918         return s_n_llhttp__internal__n_req_http_start_1;
2919       }
2920       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob14, 4);
2921       p = match_seq.current;
2922       switch (match_seq.status) {
2923         case kMatchComplete: {
2924           p++;
2925           goto s_n_llhttp__internal__n_invoke_load_method;
2926         }
2927         case kMatchPause: {
2928           return s_n_llhttp__internal__n_req_http_start_1;
2929         }
2930         case kMatchMismatch: {
2931           goto s_n_llhttp__internal__n_error_46;
2932         }
2933       }
2934       /* UNREACHABLE */;
2935       abort();
2936     }
2937     case s_n_llhttp__internal__n_req_http_start_2:
2938     s_n_llhttp__internal__n_req_http_start_2: {
2939       llparse_match_t match_seq;
2940 
2941       if (p == endp) {
2942         return s_n_llhttp__internal__n_req_http_start_2;
2943       }
2944       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 3);
2945       p = match_seq.current;
2946       switch (match_seq.status) {
2947         case kMatchComplete: {
2948           p++;
2949           goto s_n_llhttp__internal__n_invoke_load_method_2;
2950         }
2951         case kMatchPause: {
2952           return s_n_llhttp__internal__n_req_http_start_2;
2953         }
2954         case kMatchMismatch: {
2955           goto s_n_llhttp__internal__n_error_46;
2956         }
2957       }
2958       /* UNREACHABLE */;
2959       abort();
2960     }
2961     case s_n_llhttp__internal__n_req_http_start_3:
2962     s_n_llhttp__internal__n_req_http_start_3: {
2963       llparse_match_t match_seq;
2964 
2965       if (p == endp) {
2966         return s_n_llhttp__internal__n_req_http_start_3;
2967       }
2968       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 4);
2969       p = match_seq.current;
2970       switch (match_seq.status) {
2971         case kMatchComplete: {
2972           p++;
2973           goto s_n_llhttp__internal__n_invoke_load_method_3;
2974         }
2975         case kMatchPause: {
2976           return s_n_llhttp__internal__n_req_http_start_3;
2977         }
2978         case kMatchMismatch: {
2979           goto s_n_llhttp__internal__n_error_46;
2980         }
2981       }
2982       /* UNREACHABLE */;
2983       abort();
2984     }
2985     case s_n_llhttp__internal__n_req_http_start:
2986     s_n_llhttp__internal__n_req_http_start: {
2987       if (p == endp) {
2988         return s_n_llhttp__internal__n_req_http_start;
2989       }
2990       switch (*p) {
2991         case ' ': {
2992           p++;
2993           goto s_n_llhttp__internal__n_req_http_start;
2994         }
2995         case 'H': {
2996           p++;
2997           goto s_n_llhttp__internal__n_req_http_start_1;
2998         }
2999         case 'I': {
3000           p++;
3001           goto s_n_llhttp__internal__n_req_http_start_2;
3002         }
3003         case 'R': {
3004           p++;
3005           goto s_n_llhttp__internal__n_req_http_start_3;
3006         }
3007         default: {
3008           goto s_n_llhttp__internal__n_error_46;
3009         }
3010       }
3011       /* UNREACHABLE */;
3012       abort();
3013     }
3014     case s_n_llhttp__internal__n_url_to_http:
3015     s_n_llhttp__internal__n_url_to_http: {
3016       if (p == endp) {
3017         return s_n_llhttp__internal__n_url_to_http;
3018       }
3019       switch (*p) {
3020         case 9: {
3021           p++;
3022           goto s_n_llhttp__internal__n_error_1;
3023         }
3024         case 12: {
3025           p++;
3026           goto s_n_llhttp__internal__n_error_1;
3027         }
3028         default: {
3029           goto s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1;
3030         }
3031       }
3032       /* UNREACHABLE */;
3033       abort();
3034     }
3035     case s_n_llhttp__internal__n_url_skip_to_http:
3036     s_n_llhttp__internal__n_url_skip_to_http: {
3037       if (p == endp) {
3038         return s_n_llhttp__internal__n_url_skip_to_http;
3039       }
3040       switch (*p) {
3041         case 9: {
3042           p++;
3043           goto s_n_llhttp__internal__n_error_1;
3044         }
3045         case 12: {
3046           p++;
3047           goto s_n_llhttp__internal__n_error_1;
3048         }
3049         default: {
3050           p++;
3051           goto s_n_llhttp__internal__n_url_to_http;
3052         }
3053       }
3054       /* UNREACHABLE */;
3055       abort();
3056     }
3057     case s_n_llhttp__internal__n_url_fragment:
3058     s_n_llhttp__internal__n_url_fragment: {
3059       static uint8_t lookup_table[] = {
3060         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
3061         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3062         4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3063         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3064         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3065         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3066         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3067         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0,
3068         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3069         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3070         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3071         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3072         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3073         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3074         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3075         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3076       };
3077       if (p == endp) {
3078         return s_n_llhttp__internal__n_url_fragment;
3079       }
3080       switch (lookup_table[(uint8_t) *p]) {
3081         case 1: {
3082           p++;
3083           goto s_n_llhttp__internal__n_error_1;
3084         }
3085         case 2: {
3086           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_6;
3087         }
3088         case 3: {
3089           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_7;
3090         }
3091         case 4: {
3092           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_8;
3093         }
3094         case 5: {
3095           p++;
3096           goto s_n_llhttp__internal__n_url_fragment;
3097         }
3098         default: {
3099           goto s_n_llhttp__internal__n_error_47;
3100         }
3101       }
3102       /* UNREACHABLE */;
3103       abort();
3104     }
3105     case s_n_llhttp__internal__n_span_end_stub_query_3:
3106     s_n_llhttp__internal__n_span_end_stub_query_3: {
3107       if (p == endp) {
3108         return s_n_llhttp__internal__n_span_end_stub_query_3;
3109       }
3110       p++;
3111       goto s_n_llhttp__internal__n_url_fragment;
3112       /* UNREACHABLE */;
3113       abort();
3114     }
3115     case s_n_llhttp__internal__n_url_query:
3116     s_n_llhttp__internal__n_url_query: {
3117       static uint8_t lookup_table[] = {
3118         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
3119         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3120         4, 5, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3121         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3122         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3123         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3124         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3125         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0,
3126         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3127         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3128         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3129         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3130         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3131         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3132         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3133         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3134       };
3135       if (p == endp) {
3136         return s_n_llhttp__internal__n_url_query;
3137       }
3138       switch (lookup_table[(uint8_t) *p]) {
3139         case 1: {
3140           p++;
3141           goto s_n_llhttp__internal__n_error_1;
3142         }
3143         case 2: {
3144           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_9;
3145         }
3146         case 3: {
3147           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_10;
3148         }
3149         case 4: {
3150           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_11;
3151         }
3152         case 5: {
3153           p++;
3154           goto s_n_llhttp__internal__n_url_query;
3155         }
3156         case 6: {
3157           goto s_n_llhttp__internal__n_span_end_stub_query_3;
3158         }
3159         default: {
3160           goto s_n_llhttp__internal__n_error_48;
3161         }
3162       }
3163       /* UNREACHABLE */;
3164       abort();
3165     }
3166     case s_n_llhttp__internal__n_url_query_or_fragment:
3167     s_n_llhttp__internal__n_url_query_or_fragment: {
3168       if (p == endp) {
3169         return s_n_llhttp__internal__n_url_query_or_fragment;
3170       }
3171       switch (*p) {
3172         case 9: {
3173           p++;
3174           goto s_n_llhttp__internal__n_error_1;
3175         }
3176         case 10: {
3177           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_3;
3178         }
3179         case 12: {
3180           p++;
3181           goto s_n_llhttp__internal__n_error_1;
3182         }
3183         case 13: {
3184           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_4;
3185         }
3186         case ' ': {
3187           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_5;
3188         }
3189         case '#': {
3190           p++;
3191           goto s_n_llhttp__internal__n_url_fragment;
3192         }
3193         case '?': {
3194           p++;
3195           goto s_n_llhttp__internal__n_url_query;
3196         }
3197         default: {
3198           goto s_n_llhttp__internal__n_error_49;
3199         }
3200       }
3201       /* UNREACHABLE */;
3202       abort();
3203     }
3204     case s_n_llhttp__internal__n_url_path:
3205     s_n_llhttp__internal__n_url_path: {
3206       static uint8_t lookup_table[] = {
3207         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0,
3208         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3209         0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3210         2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0,
3211         2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3212         2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3213         2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3214         2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0,
3215         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3216         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3217         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3218         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3219         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3220         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3221         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3222         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3223       };
3224       if (p == endp) {
3225         return s_n_llhttp__internal__n_url_path;
3226       }
3227       switch (lookup_table[(uint8_t) *p]) {
3228         case 1: {
3229           p++;
3230           goto s_n_llhttp__internal__n_error_1;
3231         }
3232         case 2: {
3233           p++;
3234           goto s_n_llhttp__internal__n_url_path;
3235         }
3236         default: {
3237           goto s_n_llhttp__internal__n_url_query_or_fragment;
3238         }
3239       }
3240       /* UNREACHABLE */;
3241       abort();
3242     }
3243     case s_n_llhttp__internal__n_span_start_stub_path_2:
3244     s_n_llhttp__internal__n_span_start_stub_path_2: {
3245       if (p == endp) {
3246         return s_n_llhttp__internal__n_span_start_stub_path_2;
3247       }
3248       p++;
3249       goto s_n_llhttp__internal__n_url_path;
3250       /* UNREACHABLE */;
3251       abort();
3252     }
3253     case s_n_llhttp__internal__n_span_start_stub_path:
3254     s_n_llhttp__internal__n_span_start_stub_path: {
3255       if (p == endp) {
3256         return s_n_llhttp__internal__n_span_start_stub_path;
3257       }
3258       p++;
3259       goto s_n_llhttp__internal__n_url_path;
3260       /* UNREACHABLE */;
3261       abort();
3262     }
3263     case s_n_llhttp__internal__n_span_start_stub_path_1:
3264     s_n_llhttp__internal__n_span_start_stub_path_1: {
3265       if (p == endp) {
3266         return s_n_llhttp__internal__n_span_start_stub_path_1;
3267       }
3268       p++;
3269       goto s_n_llhttp__internal__n_url_path;
3270       /* UNREACHABLE */;
3271       abort();
3272     }
3273     case s_n_llhttp__internal__n_url_server_with_at:
3274     s_n_llhttp__internal__n_url_server_with_at: {
3275       static uint8_t lookup_table[] = {
3276         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
3277         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3278         4, 5, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6,
3279         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 0, 7,
3280         8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3281         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 0, 5,
3282         0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3283         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 5, 0,
3284         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3285         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3286         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3287         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3288         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3289         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3290         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3291         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3292       };
3293       if (p == endp) {
3294         return s_n_llhttp__internal__n_url_server_with_at;
3295       }
3296       switch (lookup_table[(uint8_t) *p]) {
3297         case 1: {
3298           p++;
3299           goto s_n_llhttp__internal__n_error_1;
3300         }
3301         case 2: {
3302           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_12;
3303         }
3304         case 3: {
3305           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_13;
3306         }
3307         case 4: {
3308           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_14;
3309         }
3310         case 5: {
3311           p++;
3312           goto s_n_llhttp__internal__n_url_server;
3313         }
3314         case 6: {
3315           goto s_n_llhttp__internal__n_span_start_stub_path_1;
3316         }
3317         case 7: {
3318           p++;
3319           goto s_n_llhttp__internal__n_url_query;
3320         }
3321         case 8: {
3322           p++;
3323           goto s_n_llhttp__internal__n_error_50;
3324         }
3325         default: {
3326           goto s_n_llhttp__internal__n_error_51;
3327         }
3328       }
3329       /* UNREACHABLE */;
3330       abort();
3331     }
3332     case s_n_llhttp__internal__n_url_server:
3333     s_n_llhttp__internal__n_url_server: {
3334       static uint8_t lookup_table[] = {
3335         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
3336         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3337         4, 5, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6,
3338         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 0, 7,
3339         8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3340         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 0, 5,
3341         0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
3342         5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 5, 0,
3343         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3344         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3345         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3346         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3347         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3348         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3349         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3350         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3351       };
3352       if (p == endp) {
3353         return s_n_llhttp__internal__n_url_server;
3354       }
3355       switch (lookup_table[(uint8_t) *p]) {
3356         case 1: {
3357           p++;
3358           goto s_n_llhttp__internal__n_error_1;
3359         }
3360         case 2: {
3361           goto s_n_llhttp__internal__n_span_end_llhttp__on_url;
3362         }
3363         case 3: {
3364           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_1;
3365         }
3366         case 4: {
3367           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_2;
3368         }
3369         case 5: {
3370           p++;
3371           goto s_n_llhttp__internal__n_url_server;
3372         }
3373         case 6: {
3374           goto s_n_llhttp__internal__n_span_start_stub_path;
3375         }
3376         case 7: {
3377           p++;
3378           goto s_n_llhttp__internal__n_url_query;
3379         }
3380         case 8: {
3381           p++;
3382           goto s_n_llhttp__internal__n_url_server_with_at;
3383         }
3384         default: {
3385           goto s_n_llhttp__internal__n_error_52;
3386         }
3387       }
3388       /* UNREACHABLE */;
3389       abort();
3390     }
3391     case s_n_llhttp__internal__n_url_schema_delim_1:
3392     s_n_llhttp__internal__n_url_schema_delim_1: {
3393       if (p == endp) {
3394         return s_n_llhttp__internal__n_url_schema_delim_1;
3395       }
3396       switch (*p) {
3397         case '/': {
3398           p++;
3399           goto s_n_llhttp__internal__n_url_server;
3400         }
3401         default: {
3402           goto s_n_llhttp__internal__n_error_54;
3403         }
3404       }
3405       /* UNREACHABLE */;
3406       abort();
3407     }
3408     case s_n_llhttp__internal__n_url_schema_delim:
3409     s_n_llhttp__internal__n_url_schema_delim: {
3410       if (p == endp) {
3411         return s_n_llhttp__internal__n_url_schema_delim;
3412       }
3413       switch (*p) {
3414         case 9: {
3415           p++;
3416           goto s_n_llhttp__internal__n_error_1;
3417         }
3418         case 10: {
3419           p++;
3420           goto s_n_llhttp__internal__n_error_53;
3421         }
3422         case 12: {
3423           p++;
3424           goto s_n_llhttp__internal__n_error_1;
3425         }
3426         case 13: {
3427           p++;
3428           goto s_n_llhttp__internal__n_error_53;
3429         }
3430         case ' ': {
3431           p++;
3432           goto s_n_llhttp__internal__n_error_53;
3433         }
3434         case '/': {
3435           p++;
3436           goto s_n_llhttp__internal__n_url_schema_delim_1;
3437         }
3438         default: {
3439           goto s_n_llhttp__internal__n_error_54;
3440         }
3441       }
3442       /* UNREACHABLE */;
3443       abort();
3444     }
3445     case s_n_llhttp__internal__n_span_end_stub_schema:
3446     s_n_llhttp__internal__n_span_end_stub_schema: {
3447       if (p == endp) {
3448         return s_n_llhttp__internal__n_span_end_stub_schema;
3449       }
3450       p++;
3451       goto s_n_llhttp__internal__n_url_schema_delim;
3452       /* UNREACHABLE */;
3453       abort();
3454     }
3455     case s_n_llhttp__internal__n_url_schema:
3456     s_n_llhttp__internal__n_url_schema: {
3457       static uint8_t lookup_table[] = {
3458         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 2, 0, 0,
3459         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3460         2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3461         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0,
3462         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
3463         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0,
3464         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
3465         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0,
3466         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3467         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3468         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3469         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3470         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3471         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3472         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3473         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3474       };
3475       if (p == endp) {
3476         return s_n_llhttp__internal__n_url_schema;
3477       }
3478       switch (lookup_table[(uint8_t) *p]) {
3479         case 1: {
3480           p++;
3481           goto s_n_llhttp__internal__n_error_1;
3482         }
3483         case 2: {
3484           p++;
3485           goto s_n_llhttp__internal__n_error_53;
3486         }
3487         case 3: {
3488           goto s_n_llhttp__internal__n_span_end_stub_schema;
3489         }
3490         case 4: {
3491           p++;
3492           goto s_n_llhttp__internal__n_url_schema;
3493         }
3494         default: {
3495           goto s_n_llhttp__internal__n_error_55;
3496         }
3497       }
3498       /* UNREACHABLE */;
3499       abort();
3500     }
3501     case s_n_llhttp__internal__n_url_start:
3502     s_n_llhttp__internal__n_url_start: {
3503       static uint8_t lookup_table[] = {
3504         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 2, 0, 0,
3505         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3506         2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3,
3507         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3508         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
3509         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0,
3510         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
3511         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0,
3512         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3513         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3514         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3515         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3516         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3517         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3518         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3519         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
3520       };
3521       if (p == endp) {
3522         return s_n_llhttp__internal__n_url_start;
3523       }
3524       switch (lookup_table[(uint8_t) *p]) {
3525         case 1: {
3526           p++;
3527           goto s_n_llhttp__internal__n_error_1;
3528         }
3529         case 2: {
3530           p++;
3531           goto s_n_llhttp__internal__n_error_53;
3532         }
3533         case 3: {
3534           goto s_n_llhttp__internal__n_span_start_stub_path_2;
3535         }
3536         case 4: {
3537           goto s_n_llhttp__internal__n_url_schema;
3538         }
3539         default: {
3540           goto s_n_llhttp__internal__n_error_56;
3541         }
3542       }
3543       /* UNREACHABLE */;
3544       abort();
3545     }
3546     case s_n_llhttp__internal__n_span_start_llhttp__on_url_1:
3547     s_n_llhttp__internal__n_span_start_llhttp__on_url_1: {
3548       if (p == endp) {
3549         return s_n_llhttp__internal__n_span_start_llhttp__on_url_1;
3550       }
3551       state->_span_pos0 = (void*) p;
3552       state->_span_cb0 = llhttp__on_url;
3553       goto s_n_llhttp__internal__n_url_start;
3554       /* UNREACHABLE */;
3555       abort();
3556     }
3557     case s_n_llhttp__internal__n_url_entry_normal:
3558     s_n_llhttp__internal__n_url_entry_normal: {
3559       if (p == endp) {
3560         return s_n_llhttp__internal__n_url_entry_normal;
3561       }
3562       switch (*p) {
3563         case 9: {
3564           p++;
3565           goto s_n_llhttp__internal__n_error_1;
3566         }
3567         case 12: {
3568           p++;
3569           goto s_n_llhttp__internal__n_error_1;
3570         }
3571         default: {
3572           goto s_n_llhttp__internal__n_span_start_llhttp__on_url_1;
3573         }
3574       }
3575       /* UNREACHABLE */;
3576       abort();
3577     }
3578     case s_n_llhttp__internal__n_span_start_llhttp__on_url:
3579     s_n_llhttp__internal__n_span_start_llhttp__on_url: {
3580       if (p == endp) {
3581         return s_n_llhttp__internal__n_span_start_llhttp__on_url;
3582       }
3583       state->_span_pos0 = (void*) p;
3584       state->_span_cb0 = llhttp__on_url;
3585       goto s_n_llhttp__internal__n_url_server;
3586       /* UNREACHABLE */;
3587       abort();
3588     }
3589     case s_n_llhttp__internal__n_url_entry_connect:
3590     s_n_llhttp__internal__n_url_entry_connect: {
3591       if (p == endp) {
3592         return s_n_llhttp__internal__n_url_entry_connect;
3593       }
3594       switch (*p) {
3595         case 9: {
3596           p++;
3597           goto s_n_llhttp__internal__n_error_1;
3598         }
3599         case 12: {
3600           p++;
3601           goto s_n_llhttp__internal__n_error_1;
3602         }
3603         default: {
3604           goto s_n_llhttp__internal__n_span_start_llhttp__on_url;
3605         }
3606       }
3607       /* UNREACHABLE */;
3608       abort();
3609     }
3610     case s_n_llhttp__internal__n_req_spaces_before_url:
3611     s_n_llhttp__internal__n_req_spaces_before_url: {
3612       if (p == endp) {
3613         return s_n_llhttp__internal__n_req_spaces_before_url;
3614       }
3615       switch (*p) {
3616         case ' ': {
3617           p++;
3618           goto s_n_llhttp__internal__n_req_spaces_before_url;
3619         }
3620         default: {
3621           goto s_n_llhttp__internal__n_invoke_is_equal_method;
3622         }
3623       }
3624       /* UNREACHABLE */;
3625       abort();
3626     }
3627     case s_n_llhttp__internal__n_req_first_space_before_url:
3628     s_n_llhttp__internal__n_req_first_space_before_url: {
3629       if (p == endp) {
3630         return s_n_llhttp__internal__n_req_first_space_before_url;
3631       }
3632       switch (*p) {
3633         case ' ': {
3634           p++;
3635           goto s_n_llhttp__internal__n_req_spaces_before_url;
3636         }
3637         default: {
3638           goto s_n_llhttp__internal__n_error_57;
3639         }
3640       }
3641       /* UNREACHABLE */;
3642       abort();
3643     }
3644     case s_n_llhttp__internal__n_start_req_2:
3645     s_n_llhttp__internal__n_start_req_2: {
3646       if (p == endp) {
3647         return s_n_llhttp__internal__n_start_req_2;
3648       }
3649       switch (*p) {
3650         case 'L': {
3651           p++;
3652           match = 19;
3653           goto s_n_llhttp__internal__n_invoke_store_method_1;
3654         }
3655         default: {
3656           goto s_n_llhttp__internal__n_error_70;
3657         }
3658       }
3659       /* UNREACHABLE */;
3660       abort();
3661     }
3662     case s_n_llhttp__internal__n_start_req_3:
3663     s_n_llhttp__internal__n_start_req_3: {
3664       llparse_match_t match_seq;
3665 
3666       if (p == endp) {
3667         return s_n_llhttp__internal__n_start_req_3;
3668       }
3669       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 6);
3670       p = match_seq.current;
3671       switch (match_seq.status) {
3672         case kMatchComplete: {
3673           p++;
3674           match = 36;
3675           goto s_n_llhttp__internal__n_invoke_store_method_1;
3676         }
3677         case kMatchPause: {
3678           return s_n_llhttp__internal__n_start_req_3;
3679         }
3680         case kMatchMismatch: {
3681           goto s_n_llhttp__internal__n_error_70;
3682         }
3683       }
3684       /* UNREACHABLE */;
3685       abort();
3686     }
3687     case s_n_llhttp__internal__n_start_req_1:
3688     s_n_llhttp__internal__n_start_req_1: {
3689       if (p == endp) {
3690         return s_n_llhttp__internal__n_start_req_1;
3691       }
3692       switch (*p) {
3693         case 'C': {
3694           p++;
3695           goto s_n_llhttp__internal__n_start_req_2;
3696         }
3697         case 'N': {
3698           p++;
3699           goto s_n_llhttp__internal__n_start_req_3;
3700         }
3701         default: {
3702           goto s_n_llhttp__internal__n_error_70;
3703         }
3704       }
3705       /* UNREACHABLE */;
3706       abort();
3707     }
3708     case s_n_llhttp__internal__n_start_req_4:
3709     s_n_llhttp__internal__n_start_req_4: {
3710       llparse_match_t match_seq;
3711 
3712       if (p == endp) {
3713         return s_n_llhttp__internal__n_start_req_4;
3714       }
3715       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 3);
3716       p = match_seq.current;
3717       switch (match_seq.status) {
3718         case kMatchComplete: {
3719           p++;
3720           match = 16;
3721           goto s_n_llhttp__internal__n_invoke_store_method_1;
3722         }
3723         case kMatchPause: {
3724           return s_n_llhttp__internal__n_start_req_4;
3725         }
3726         case kMatchMismatch: {
3727           goto s_n_llhttp__internal__n_error_70;
3728         }
3729       }
3730       /* UNREACHABLE */;
3731       abort();
3732     }
3733     case s_n_llhttp__internal__n_start_req_6:
3734     s_n_llhttp__internal__n_start_req_6: {
3735       llparse_match_t match_seq;
3736 
3737       if (p == endp) {
3738         return s_n_llhttp__internal__n_start_req_6;
3739       }
3740       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 6);
3741       p = match_seq.current;
3742       switch (match_seq.status) {
3743         case kMatchComplete: {
3744           p++;
3745           match = 22;
3746           goto s_n_llhttp__internal__n_invoke_store_method_1;
3747         }
3748         case kMatchPause: {
3749           return s_n_llhttp__internal__n_start_req_6;
3750         }
3751         case kMatchMismatch: {
3752           goto s_n_llhttp__internal__n_error_70;
3753         }
3754       }
3755       /* UNREACHABLE */;
3756       abort();
3757     }
3758     case s_n_llhttp__internal__n_start_req_8:
3759     s_n_llhttp__internal__n_start_req_8: {
3760       llparse_match_t match_seq;
3761 
3762       if (p == endp) {
3763         return s_n_llhttp__internal__n_start_req_8;
3764       }
3765       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 4);
3766       p = match_seq.current;
3767       switch (match_seq.status) {
3768         case kMatchComplete: {
3769           p++;
3770           match = 5;
3771           goto s_n_llhttp__internal__n_invoke_store_method_1;
3772         }
3773         case kMatchPause: {
3774           return s_n_llhttp__internal__n_start_req_8;
3775         }
3776         case kMatchMismatch: {
3777           goto s_n_llhttp__internal__n_error_70;
3778         }
3779       }
3780       /* UNREACHABLE */;
3781       abort();
3782     }
3783     case s_n_llhttp__internal__n_start_req_9:
3784     s_n_llhttp__internal__n_start_req_9: {
3785       if (p == endp) {
3786         return s_n_llhttp__internal__n_start_req_9;
3787       }
3788       switch (*p) {
3789         case 'Y': {
3790           p++;
3791           match = 8;
3792           goto s_n_llhttp__internal__n_invoke_store_method_1;
3793         }
3794         default: {
3795           goto s_n_llhttp__internal__n_error_70;
3796         }
3797       }
3798       /* UNREACHABLE */;
3799       abort();
3800     }
3801     case s_n_llhttp__internal__n_start_req_7:
3802     s_n_llhttp__internal__n_start_req_7: {
3803       if (p == endp) {
3804         return s_n_llhttp__internal__n_start_req_7;
3805       }
3806       switch (*p) {
3807         case 'N': {
3808           p++;
3809           goto s_n_llhttp__internal__n_start_req_8;
3810         }
3811         case 'P': {
3812           p++;
3813           goto s_n_llhttp__internal__n_start_req_9;
3814         }
3815         default: {
3816           goto s_n_llhttp__internal__n_error_70;
3817         }
3818       }
3819       /* UNREACHABLE */;
3820       abort();
3821     }
3822     case s_n_llhttp__internal__n_start_req_5:
3823     s_n_llhttp__internal__n_start_req_5: {
3824       if (p == endp) {
3825         return s_n_llhttp__internal__n_start_req_5;
3826       }
3827       switch (*p) {
3828         case 'H': {
3829           p++;
3830           goto s_n_llhttp__internal__n_start_req_6;
3831         }
3832         case 'O': {
3833           p++;
3834           goto s_n_llhttp__internal__n_start_req_7;
3835         }
3836         default: {
3837           goto s_n_llhttp__internal__n_error_70;
3838         }
3839       }
3840       /* UNREACHABLE */;
3841       abort();
3842     }
3843     case s_n_llhttp__internal__n_start_req_12:
3844     s_n_llhttp__internal__n_start_req_12: {
3845       llparse_match_t match_seq;
3846 
3847       if (p == endp) {
3848         return s_n_llhttp__internal__n_start_req_12;
3849       }
3850       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 3);
3851       p = match_seq.current;
3852       switch (match_seq.status) {
3853         case kMatchComplete: {
3854           p++;
3855           match = 0;
3856           goto s_n_llhttp__internal__n_invoke_store_method_1;
3857         }
3858         case kMatchPause: {
3859           return s_n_llhttp__internal__n_start_req_12;
3860         }
3861         case kMatchMismatch: {
3862           goto s_n_llhttp__internal__n_error_70;
3863         }
3864       }
3865       /* UNREACHABLE */;
3866       abort();
3867     }
3868     case s_n_llhttp__internal__n_start_req_13:
3869     s_n_llhttp__internal__n_start_req_13: {
3870       llparse_match_t match_seq;
3871 
3872       if (p == endp) {
3873         return s_n_llhttp__internal__n_start_req_13;
3874       }
3875       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 5);
3876       p = match_seq.current;
3877       switch (match_seq.status) {
3878         case kMatchComplete: {
3879           p++;
3880           match = 35;
3881           goto s_n_llhttp__internal__n_invoke_store_method_1;
3882         }
3883         case kMatchPause: {
3884           return s_n_llhttp__internal__n_start_req_13;
3885         }
3886         case kMatchMismatch: {
3887           goto s_n_llhttp__internal__n_error_70;
3888         }
3889       }
3890       /* UNREACHABLE */;
3891       abort();
3892     }
3893     case s_n_llhttp__internal__n_start_req_11:
3894     s_n_llhttp__internal__n_start_req_11: {
3895       if (p == endp) {
3896         return s_n_llhttp__internal__n_start_req_11;
3897       }
3898       switch (*p) {
3899         case 'L': {
3900           p++;
3901           goto s_n_llhttp__internal__n_start_req_12;
3902         }
3903         case 'S': {
3904           p++;
3905           goto s_n_llhttp__internal__n_start_req_13;
3906         }
3907         default: {
3908           goto s_n_llhttp__internal__n_error_70;
3909         }
3910       }
3911       /* UNREACHABLE */;
3912       abort();
3913     }
3914     case s_n_llhttp__internal__n_start_req_10:
3915     s_n_llhttp__internal__n_start_req_10: {
3916       if (p == endp) {
3917         return s_n_llhttp__internal__n_start_req_10;
3918       }
3919       switch (*p) {
3920         case 'E': {
3921           p++;
3922           goto s_n_llhttp__internal__n_start_req_11;
3923         }
3924         default: {
3925           goto s_n_llhttp__internal__n_error_70;
3926         }
3927       }
3928       /* UNREACHABLE */;
3929       abort();
3930     }
3931     case s_n_llhttp__internal__n_start_req_14:
3932     s_n_llhttp__internal__n_start_req_14: {
3933       llparse_match_t match_seq;
3934 
3935       if (p == endp) {
3936         return s_n_llhttp__internal__n_start_req_14;
3937       }
3938       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 4);
3939       p = match_seq.current;
3940       switch (match_seq.status) {
3941         case kMatchComplete: {
3942           p++;
3943           match = 45;
3944           goto s_n_llhttp__internal__n_invoke_store_method_1;
3945         }
3946         case kMatchPause: {
3947           return s_n_llhttp__internal__n_start_req_14;
3948         }
3949         case kMatchMismatch: {
3950           goto s_n_llhttp__internal__n_error_70;
3951         }
3952       }
3953       /* UNREACHABLE */;
3954       abort();
3955     }
3956     case s_n_llhttp__internal__n_start_req_17:
3957     s_n_llhttp__internal__n_start_req_17: {
3958       llparse_match_t match_seq;
3959 
3960       if (p == endp) {
3961         return s_n_llhttp__internal__n_start_req_17;
3962       }
3963       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 9);
3964       p = match_seq.current;
3965       switch (match_seq.status) {
3966         case kMatchComplete: {
3967           p++;
3968           match = 41;
3969           goto s_n_llhttp__internal__n_invoke_store_method_1;
3970         }
3971         case kMatchPause: {
3972           return s_n_llhttp__internal__n_start_req_17;
3973         }
3974         case kMatchMismatch: {
3975           goto s_n_llhttp__internal__n_error_70;
3976         }
3977       }
3978       /* UNREACHABLE */;
3979       abort();
3980     }
3981     case s_n_llhttp__internal__n_start_req_16:
3982     s_n_llhttp__internal__n_start_req_16: {
3983       if (p == endp) {
3984         return s_n_llhttp__internal__n_start_req_16;
3985       }
3986       switch (*p) {
3987         case '_': {
3988           p++;
3989           goto s_n_llhttp__internal__n_start_req_17;
3990         }
3991         default: {
3992           match = 1;
3993           goto s_n_llhttp__internal__n_invoke_store_method_1;
3994         }
3995       }
3996       /* UNREACHABLE */;
3997       abort();
3998     }
3999     case s_n_llhttp__internal__n_start_req_15:
4000     s_n_llhttp__internal__n_start_req_15: {
4001       llparse_match_t match_seq;
4002 
4003       if (p == endp) {
4004         return s_n_llhttp__internal__n_start_req_15;
4005       }
4006       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 2);
4007       p = match_seq.current;
4008       switch (match_seq.status) {
4009         case kMatchComplete: {
4010           p++;
4011           goto s_n_llhttp__internal__n_start_req_16;
4012         }
4013         case kMatchPause: {
4014           return s_n_llhttp__internal__n_start_req_15;
4015         }
4016         case kMatchMismatch: {
4017           goto s_n_llhttp__internal__n_error_70;
4018         }
4019       }
4020       /* UNREACHABLE */;
4021       abort();
4022     }
4023     case s_n_llhttp__internal__n_start_req_18:
4024     s_n_llhttp__internal__n_start_req_18: {
4025       llparse_match_t match_seq;
4026 
4027       if (p == endp) {
4028         return s_n_llhttp__internal__n_start_req_18;
4029       }
4030       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 3);
4031       p = match_seq.current;
4032       switch (match_seq.status) {
4033         case kMatchComplete: {
4034           p++;
4035           match = 2;
4036           goto s_n_llhttp__internal__n_invoke_store_method_1;
4037         }
4038         case kMatchPause: {
4039           return s_n_llhttp__internal__n_start_req_18;
4040         }
4041         case kMatchMismatch: {
4042           goto s_n_llhttp__internal__n_error_70;
4043         }
4044       }
4045       /* UNREACHABLE */;
4046       abort();
4047     }
4048     case s_n_llhttp__internal__n_start_req_20:
4049     s_n_llhttp__internal__n_start_req_20: {
4050       llparse_match_t match_seq;
4051 
4052       if (p == endp) {
4053         return s_n_llhttp__internal__n_start_req_20;
4054       }
4055       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 2);
4056       p = match_seq.current;
4057       switch (match_seq.status) {
4058         case kMatchComplete: {
4059           p++;
4060           match = 31;
4061           goto s_n_llhttp__internal__n_invoke_store_method_1;
4062         }
4063         case kMatchPause: {
4064           return s_n_llhttp__internal__n_start_req_20;
4065         }
4066         case kMatchMismatch: {
4067           goto s_n_llhttp__internal__n_error_70;
4068         }
4069       }
4070       /* UNREACHABLE */;
4071       abort();
4072     }
4073     case s_n_llhttp__internal__n_start_req_21:
4074     s_n_llhttp__internal__n_start_req_21: {
4075       llparse_match_t match_seq;
4076 
4077       if (p == endp) {
4078         return s_n_llhttp__internal__n_start_req_21;
4079       }
4080       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2);
4081       p = match_seq.current;
4082       switch (match_seq.status) {
4083         case kMatchComplete: {
4084           p++;
4085           match = 9;
4086           goto s_n_llhttp__internal__n_invoke_store_method_1;
4087         }
4088         case kMatchPause: {
4089           return s_n_llhttp__internal__n_start_req_21;
4090         }
4091         case kMatchMismatch: {
4092           goto s_n_llhttp__internal__n_error_70;
4093         }
4094       }
4095       /* UNREACHABLE */;
4096       abort();
4097     }
4098     case s_n_llhttp__internal__n_start_req_19:
4099     s_n_llhttp__internal__n_start_req_19: {
4100       if (p == endp) {
4101         return s_n_llhttp__internal__n_start_req_19;
4102       }
4103       switch (*p) {
4104         case 'I': {
4105           p++;
4106           goto s_n_llhttp__internal__n_start_req_20;
4107         }
4108         case 'O': {
4109           p++;
4110           goto s_n_llhttp__internal__n_start_req_21;
4111         }
4112         default: {
4113           goto s_n_llhttp__internal__n_error_70;
4114         }
4115       }
4116       /* UNREACHABLE */;
4117       abort();
4118     }
4119     case s_n_llhttp__internal__n_start_req_23:
4120     s_n_llhttp__internal__n_start_req_23: {
4121       llparse_match_t match_seq;
4122 
4123       if (p == endp) {
4124         return s_n_llhttp__internal__n_start_req_23;
4125       }
4126       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 6);
4127       p = match_seq.current;
4128       switch (match_seq.status) {
4129         case kMatchComplete: {
4130           p++;
4131           match = 24;
4132           goto s_n_llhttp__internal__n_invoke_store_method_1;
4133         }
4134         case kMatchPause: {
4135           return s_n_llhttp__internal__n_start_req_23;
4136         }
4137         case kMatchMismatch: {
4138           goto s_n_llhttp__internal__n_error_70;
4139         }
4140       }
4141       /* UNREACHABLE */;
4142       abort();
4143     }
4144     case s_n_llhttp__internal__n_start_req_24:
4145     s_n_llhttp__internal__n_start_req_24: {
4146       llparse_match_t match_seq;
4147 
4148       if (p == endp) {
4149         return s_n_llhttp__internal__n_start_req_24;
4150       }
4151       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 3);
4152       p = match_seq.current;
4153       switch (match_seq.status) {
4154         case kMatchComplete: {
4155           p++;
4156           match = 23;
4157           goto s_n_llhttp__internal__n_invoke_store_method_1;
4158         }
4159         case kMatchPause: {
4160           return s_n_llhttp__internal__n_start_req_24;
4161         }
4162         case kMatchMismatch: {
4163           goto s_n_llhttp__internal__n_error_70;
4164         }
4165       }
4166       /* UNREACHABLE */;
4167       abort();
4168     }
4169     case s_n_llhttp__internal__n_start_req_26:
4170     s_n_llhttp__internal__n_start_req_26: {
4171       llparse_match_t match_seq;
4172 
4173       if (p == endp) {
4174         return s_n_llhttp__internal__n_start_req_26;
4175       }
4176       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 7);
4177       p = match_seq.current;
4178       switch (match_seq.status) {
4179         case kMatchComplete: {
4180           p++;
4181           match = 21;
4182           goto s_n_llhttp__internal__n_invoke_store_method_1;
4183         }
4184         case kMatchPause: {
4185           return s_n_llhttp__internal__n_start_req_26;
4186         }
4187         case kMatchMismatch: {
4188           goto s_n_llhttp__internal__n_error_70;
4189         }
4190       }
4191       /* UNREACHABLE */;
4192       abort();
4193     }
4194     case s_n_llhttp__internal__n_start_req_28:
4195     s_n_llhttp__internal__n_start_req_28: {
4196       llparse_match_t match_seq;
4197 
4198       if (p == endp) {
4199         return s_n_llhttp__internal__n_start_req_28;
4200       }
4201       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 6);
4202       p = match_seq.current;
4203       switch (match_seq.status) {
4204         case kMatchComplete: {
4205           p++;
4206           match = 30;
4207           goto s_n_llhttp__internal__n_invoke_store_method_1;
4208         }
4209         case kMatchPause: {
4210           return s_n_llhttp__internal__n_start_req_28;
4211         }
4212         case kMatchMismatch: {
4213           goto s_n_llhttp__internal__n_error_70;
4214         }
4215       }
4216       /* UNREACHABLE */;
4217       abort();
4218     }
4219     case s_n_llhttp__internal__n_start_req_29:
4220     s_n_llhttp__internal__n_start_req_29: {
4221       if (p == endp) {
4222         return s_n_llhttp__internal__n_start_req_29;
4223       }
4224       switch (*p) {
4225         case 'L': {
4226           p++;
4227           match = 10;
4228           goto s_n_llhttp__internal__n_invoke_store_method_1;
4229         }
4230         default: {
4231           goto s_n_llhttp__internal__n_error_70;
4232         }
4233       }
4234       /* UNREACHABLE */;
4235       abort();
4236     }
4237     case s_n_llhttp__internal__n_start_req_27:
4238     s_n_llhttp__internal__n_start_req_27: {
4239       if (p == endp) {
4240         return s_n_llhttp__internal__n_start_req_27;
4241       }
4242       switch (*p) {
4243         case 'A': {
4244           p++;
4245           goto s_n_llhttp__internal__n_start_req_28;
4246         }
4247         case 'O': {
4248           p++;
4249           goto s_n_llhttp__internal__n_start_req_29;
4250         }
4251         default: {
4252           goto s_n_llhttp__internal__n_error_70;
4253         }
4254       }
4255       /* UNREACHABLE */;
4256       abort();
4257     }
4258     case s_n_llhttp__internal__n_start_req_25:
4259     s_n_llhttp__internal__n_start_req_25: {
4260       if (p == endp) {
4261         return s_n_llhttp__internal__n_start_req_25;
4262       }
4263       switch (*p) {
4264         case 'A': {
4265           p++;
4266           goto s_n_llhttp__internal__n_start_req_26;
4267         }
4268         case 'C': {
4269           p++;
4270           goto s_n_llhttp__internal__n_start_req_27;
4271         }
4272         default: {
4273           goto s_n_llhttp__internal__n_error_70;
4274         }
4275       }
4276       /* UNREACHABLE */;
4277       abort();
4278     }
4279     case s_n_llhttp__internal__n_start_req_30:
4280     s_n_llhttp__internal__n_start_req_30: {
4281       llparse_match_t match_seq;
4282 
4283       if (p == endp) {
4284         return s_n_llhttp__internal__n_start_req_30;
4285       }
4286       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 2);
4287       p = match_seq.current;
4288       switch (match_seq.status) {
4289         case kMatchComplete: {
4290           p++;
4291           match = 11;
4292           goto s_n_llhttp__internal__n_invoke_store_method_1;
4293         }
4294         case kMatchPause: {
4295           return s_n_llhttp__internal__n_start_req_30;
4296         }
4297         case kMatchMismatch: {
4298           goto s_n_llhttp__internal__n_error_70;
4299         }
4300       }
4301       /* UNREACHABLE */;
4302       abort();
4303     }
4304     case s_n_llhttp__internal__n_start_req_22:
4305     s_n_llhttp__internal__n_start_req_22: {
4306       if (p == endp) {
4307         return s_n_llhttp__internal__n_start_req_22;
4308       }
4309       switch (*p) {
4310         case '-': {
4311           p++;
4312           goto s_n_llhttp__internal__n_start_req_23;
4313         }
4314         case 'E': {
4315           p++;
4316           goto s_n_llhttp__internal__n_start_req_24;
4317         }
4318         case 'K': {
4319           p++;
4320           goto s_n_llhttp__internal__n_start_req_25;
4321         }
4322         case 'O': {
4323           p++;
4324           goto s_n_llhttp__internal__n_start_req_30;
4325         }
4326         default: {
4327           goto s_n_llhttp__internal__n_error_70;
4328         }
4329       }
4330       /* UNREACHABLE */;
4331       abort();
4332     }
4333     case s_n_llhttp__internal__n_start_req_31:
4334     s_n_llhttp__internal__n_start_req_31: {
4335       llparse_match_t match_seq;
4336 
4337       if (p == endp) {
4338         return s_n_llhttp__internal__n_start_req_31;
4339       }
4340       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 5);
4341       p = match_seq.current;
4342       switch (match_seq.status) {
4343         case kMatchComplete: {
4344           p++;
4345           match = 25;
4346           goto s_n_llhttp__internal__n_invoke_store_method_1;
4347         }
4348         case kMatchPause: {
4349           return s_n_llhttp__internal__n_start_req_31;
4350         }
4351         case kMatchMismatch: {
4352           goto s_n_llhttp__internal__n_error_70;
4353         }
4354       }
4355       /* UNREACHABLE */;
4356       abort();
4357     }
4358     case s_n_llhttp__internal__n_start_req_32:
4359     s_n_llhttp__internal__n_start_req_32: {
4360       llparse_match_t match_seq;
4361 
4362       if (p == endp) {
4363         return s_n_llhttp__internal__n_start_req_32;
4364       }
4365       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 6);
4366       p = match_seq.current;
4367       switch (match_seq.status) {
4368         case kMatchComplete: {
4369           p++;
4370           match = 6;
4371           goto s_n_llhttp__internal__n_invoke_store_method_1;
4372         }
4373         case kMatchPause: {
4374           return s_n_llhttp__internal__n_start_req_32;
4375         }
4376         case kMatchMismatch: {
4377           goto s_n_llhttp__internal__n_error_70;
4378         }
4379       }
4380       /* UNREACHABLE */;
4381       abort();
4382     }
4383     case s_n_llhttp__internal__n_start_req_35:
4384     s_n_llhttp__internal__n_start_req_35: {
4385       llparse_match_t match_seq;
4386 
4387       if (p == endp) {
4388         return s_n_llhttp__internal__n_start_req_35;
4389       }
4390       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 2);
4391       p = match_seq.current;
4392       switch (match_seq.status) {
4393         case kMatchComplete: {
4394           p++;
4395           match = 28;
4396           goto s_n_llhttp__internal__n_invoke_store_method_1;
4397         }
4398         case kMatchPause: {
4399           return s_n_llhttp__internal__n_start_req_35;
4400         }
4401         case kMatchMismatch: {
4402           goto s_n_llhttp__internal__n_error_70;
4403         }
4404       }
4405       /* UNREACHABLE */;
4406       abort();
4407     }
4408     case s_n_llhttp__internal__n_start_req_36:
4409     s_n_llhttp__internal__n_start_req_36: {
4410       llparse_match_t match_seq;
4411 
4412       if (p == endp) {
4413         return s_n_llhttp__internal__n_start_req_36;
4414       }
4415       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2);
4416       p = match_seq.current;
4417       switch (match_seq.status) {
4418         case kMatchComplete: {
4419           p++;
4420           match = 39;
4421           goto s_n_llhttp__internal__n_invoke_store_method_1;
4422         }
4423         case kMatchPause: {
4424           return s_n_llhttp__internal__n_start_req_36;
4425         }
4426         case kMatchMismatch: {
4427           goto s_n_llhttp__internal__n_error_70;
4428         }
4429       }
4430       /* UNREACHABLE */;
4431       abort();
4432     }
4433     case s_n_llhttp__internal__n_start_req_34:
4434     s_n_llhttp__internal__n_start_req_34: {
4435       if (p == endp) {
4436         return s_n_llhttp__internal__n_start_req_34;
4437       }
4438       switch (*p) {
4439         case 'T': {
4440           p++;
4441           goto s_n_llhttp__internal__n_start_req_35;
4442         }
4443         case 'U': {
4444           p++;
4445           goto s_n_llhttp__internal__n_start_req_36;
4446         }
4447         default: {
4448           goto s_n_llhttp__internal__n_error_70;
4449         }
4450       }
4451       /* UNREACHABLE */;
4452       abort();
4453     }
4454     case s_n_llhttp__internal__n_start_req_37:
4455     s_n_llhttp__internal__n_start_req_37: {
4456       llparse_match_t match_seq;
4457 
4458       if (p == endp) {
4459         return s_n_llhttp__internal__n_start_req_37;
4460       }
4461       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2);
4462       p = match_seq.current;
4463       switch (match_seq.status) {
4464         case kMatchComplete: {
4465           p++;
4466           match = 38;
4467           goto s_n_llhttp__internal__n_invoke_store_method_1;
4468         }
4469         case kMatchPause: {
4470           return s_n_llhttp__internal__n_start_req_37;
4471         }
4472         case kMatchMismatch: {
4473           goto s_n_llhttp__internal__n_error_70;
4474         }
4475       }
4476       /* UNREACHABLE */;
4477       abort();
4478     }
4479     case s_n_llhttp__internal__n_start_req_38:
4480     s_n_llhttp__internal__n_start_req_38: {
4481       llparse_match_t match_seq;
4482 
4483       if (p == endp) {
4484         return s_n_llhttp__internal__n_start_req_38;
4485       }
4486       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 2);
4487       p = match_seq.current;
4488       switch (match_seq.status) {
4489         case kMatchComplete: {
4490           p++;
4491           match = 3;
4492           goto s_n_llhttp__internal__n_invoke_store_method_1;
4493         }
4494         case kMatchPause: {
4495           return s_n_llhttp__internal__n_start_req_38;
4496         }
4497         case kMatchMismatch: {
4498           goto s_n_llhttp__internal__n_error_70;
4499         }
4500       }
4501       /* UNREACHABLE */;
4502       abort();
4503     }
4504     case s_n_llhttp__internal__n_start_req_42:
4505     s_n_llhttp__internal__n_start_req_42: {
4506       llparse_match_t match_seq;
4507 
4508       if (p == endp) {
4509         return s_n_llhttp__internal__n_start_req_42;
4510       }
4511       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 3);
4512       p = match_seq.current;
4513       switch (match_seq.status) {
4514         case kMatchComplete: {
4515           p++;
4516           match = 12;
4517           goto s_n_llhttp__internal__n_invoke_store_method_1;
4518         }
4519         case kMatchPause: {
4520           return s_n_llhttp__internal__n_start_req_42;
4521         }
4522         case kMatchMismatch: {
4523           goto s_n_llhttp__internal__n_error_70;
4524         }
4525       }
4526       /* UNREACHABLE */;
4527       abort();
4528     }
4529     case s_n_llhttp__internal__n_start_req_43:
4530     s_n_llhttp__internal__n_start_req_43: {
4531       llparse_match_t match_seq;
4532 
4533       if (p == endp) {
4534         return s_n_llhttp__internal__n_start_req_43;
4535       }
4536       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 4);
4537       p = match_seq.current;
4538       switch (match_seq.status) {
4539         case kMatchComplete: {
4540           p++;
4541           match = 13;
4542           goto s_n_llhttp__internal__n_invoke_store_method_1;
4543         }
4544         case kMatchPause: {
4545           return s_n_llhttp__internal__n_start_req_43;
4546         }
4547         case kMatchMismatch: {
4548           goto s_n_llhttp__internal__n_error_70;
4549         }
4550       }
4551       /* UNREACHABLE */;
4552       abort();
4553     }
4554     case s_n_llhttp__internal__n_start_req_41:
4555     s_n_llhttp__internal__n_start_req_41: {
4556       if (p == endp) {
4557         return s_n_llhttp__internal__n_start_req_41;
4558       }
4559       switch (*p) {
4560         case 'F': {
4561           p++;
4562           goto s_n_llhttp__internal__n_start_req_42;
4563         }
4564         case 'P': {
4565           p++;
4566           goto s_n_llhttp__internal__n_start_req_43;
4567         }
4568         default: {
4569           goto s_n_llhttp__internal__n_error_70;
4570         }
4571       }
4572       /* UNREACHABLE */;
4573       abort();
4574     }
4575     case s_n_llhttp__internal__n_start_req_40:
4576     s_n_llhttp__internal__n_start_req_40: {
4577       if (p == endp) {
4578         return s_n_llhttp__internal__n_start_req_40;
4579       }
4580       switch (*p) {
4581         case 'P': {
4582           p++;
4583           goto s_n_llhttp__internal__n_start_req_41;
4584         }
4585         default: {
4586           goto s_n_llhttp__internal__n_error_70;
4587         }
4588       }
4589       /* UNREACHABLE */;
4590       abort();
4591     }
4592     case s_n_llhttp__internal__n_start_req_39:
4593     s_n_llhttp__internal__n_start_req_39: {
4594       if (p == endp) {
4595         return s_n_llhttp__internal__n_start_req_39;
4596       }
4597       switch (*p) {
4598         case 'I': {
4599           p++;
4600           match = 34;
4601           goto s_n_llhttp__internal__n_invoke_store_method_1;
4602         }
4603         case 'O': {
4604           p++;
4605           goto s_n_llhttp__internal__n_start_req_40;
4606         }
4607         default: {
4608           goto s_n_llhttp__internal__n_error_70;
4609         }
4610       }
4611       /* UNREACHABLE */;
4612       abort();
4613     }
4614     case s_n_llhttp__internal__n_start_req_45:
4615     s_n_llhttp__internal__n_start_req_45: {
4616       llparse_match_t match_seq;
4617 
4618       if (p == endp) {
4619         return s_n_llhttp__internal__n_start_req_45;
4620       }
4621       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 2);
4622       p = match_seq.current;
4623       switch (match_seq.status) {
4624         case kMatchComplete: {
4625           p++;
4626           match = 29;
4627           goto s_n_llhttp__internal__n_invoke_store_method_1;
4628         }
4629         case kMatchPause: {
4630           return s_n_llhttp__internal__n_start_req_45;
4631         }
4632         case kMatchMismatch: {
4633           goto s_n_llhttp__internal__n_error_70;
4634         }
4635       }
4636       /* UNREACHABLE */;
4637       abort();
4638     }
4639     case s_n_llhttp__internal__n_start_req_44:
4640     s_n_llhttp__internal__n_start_req_44: {
4641       if (p == endp) {
4642         return s_n_llhttp__internal__n_start_req_44;
4643       }
4644       switch (*p) {
4645         case 'R': {
4646           p++;
4647           goto s_n_llhttp__internal__n_start_req_45;
4648         }
4649         case 'T': {
4650           p++;
4651           match = 4;
4652           goto s_n_llhttp__internal__n_invoke_store_method_1;
4653         }
4654         default: {
4655           goto s_n_llhttp__internal__n_error_70;
4656         }
4657       }
4658       /* UNREACHABLE */;
4659       abort();
4660     }
4661     case s_n_llhttp__internal__n_start_req_33:
4662     s_n_llhttp__internal__n_start_req_33: {
4663       if (p == endp) {
4664         return s_n_llhttp__internal__n_start_req_33;
4665       }
4666       switch (*p) {
4667         case 'A': {
4668           p++;
4669           goto s_n_llhttp__internal__n_start_req_34;
4670         }
4671         case 'L': {
4672           p++;
4673           goto s_n_llhttp__internal__n_start_req_37;
4674         }
4675         case 'O': {
4676           p++;
4677           goto s_n_llhttp__internal__n_start_req_38;
4678         }
4679         case 'R': {
4680           p++;
4681           goto s_n_llhttp__internal__n_start_req_39;
4682         }
4683         case 'U': {
4684           p++;
4685           goto s_n_llhttp__internal__n_start_req_44;
4686         }
4687         default: {
4688           goto s_n_llhttp__internal__n_error_70;
4689         }
4690       }
4691       /* UNREACHABLE */;
4692       abort();
4693     }
4694     case s_n_llhttp__internal__n_start_req_48:
4695     s_n_llhttp__internal__n_start_req_48: {
4696       llparse_match_t match_seq;
4697 
4698       if (p == endp) {
4699         return s_n_llhttp__internal__n_start_req_48;
4700       }
4701       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 3);
4702       p = match_seq.current;
4703       switch (match_seq.status) {
4704         case kMatchComplete: {
4705           p++;
4706           match = 17;
4707           goto s_n_llhttp__internal__n_invoke_store_method_1;
4708         }
4709         case kMatchPause: {
4710           return s_n_llhttp__internal__n_start_req_48;
4711         }
4712         case kMatchMismatch: {
4713           goto s_n_llhttp__internal__n_error_70;
4714         }
4715       }
4716       /* UNREACHABLE */;
4717       abort();
4718     }
4719     case s_n_llhttp__internal__n_start_req_49:
4720     s_n_llhttp__internal__n_start_req_49: {
4721       llparse_match_t match_seq;
4722 
4723       if (p == endp) {
4724         return s_n_llhttp__internal__n_start_req_49;
4725       }
4726       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 3);
4727       p = match_seq.current;
4728       switch (match_seq.status) {
4729         case kMatchComplete: {
4730           p++;
4731           match = 44;
4732           goto s_n_llhttp__internal__n_invoke_store_method_1;
4733         }
4734         case kMatchPause: {
4735           return s_n_llhttp__internal__n_start_req_49;
4736         }
4737         case kMatchMismatch: {
4738           goto s_n_llhttp__internal__n_error_70;
4739         }
4740       }
4741       /* UNREACHABLE */;
4742       abort();
4743     }
4744     case s_n_llhttp__internal__n_start_req_50:
4745     s_n_llhttp__internal__n_start_req_50: {
4746       llparse_match_t match_seq;
4747 
4748       if (p == endp) {
4749         return s_n_llhttp__internal__n_start_req_50;
4750       }
4751       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 5);
4752       p = match_seq.current;
4753       switch (match_seq.status) {
4754         case kMatchComplete: {
4755           p++;
4756           match = 43;
4757           goto s_n_llhttp__internal__n_invoke_store_method_1;
4758         }
4759         case kMatchPause: {
4760           return s_n_llhttp__internal__n_start_req_50;
4761         }
4762         case kMatchMismatch: {
4763           goto s_n_llhttp__internal__n_error_70;
4764         }
4765       }
4766       /* UNREACHABLE */;
4767       abort();
4768     }
4769     case s_n_llhttp__internal__n_start_req_51:
4770     s_n_llhttp__internal__n_start_req_51: {
4771       llparse_match_t match_seq;
4772 
4773       if (p == endp) {
4774         return s_n_llhttp__internal__n_start_req_51;
4775       }
4776       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 3);
4777       p = match_seq.current;
4778       switch (match_seq.status) {
4779         case kMatchComplete: {
4780           p++;
4781           match = 20;
4782           goto s_n_llhttp__internal__n_invoke_store_method_1;
4783         }
4784         case kMatchPause: {
4785           return s_n_llhttp__internal__n_start_req_51;
4786         }
4787         case kMatchMismatch: {
4788           goto s_n_llhttp__internal__n_error_70;
4789         }
4790       }
4791       /* UNREACHABLE */;
4792       abort();
4793     }
4794     case s_n_llhttp__internal__n_start_req_47:
4795     s_n_llhttp__internal__n_start_req_47: {
4796       if (p == endp) {
4797         return s_n_llhttp__internal__n_start_req_47;
4798       }
4799       switch (*p) {
4800         case 'B': {
4801           p++;
4802           goto s_n_llhttp__internal__n_start_req_48;
4803         }
4804         case 'C': {
4805           p++;
4806           goto s_n_llhttp__internal__n_start_req_49;
4807         }
4808         case 'D': {
4809           p++;
4810           goto s_n_llhttp__internal__n_start_req_50;
4811         }
4812         case 'P': {
4813           p++;
4814           goto s_n_llhttp__internal__n_start_req_51;
4815         }
4816         default: {
4817           goto s_n_llhttp__internal__n_error_70;
4818         }
4819       }
4820       /* UNREACHABLE */;
4821       abort();
4822     }
4823     case s_n_llhttp__internal__n_start_req_46:
4824     s_n_llhttp__internal__n_start_req_46: {
4825       if (p == endp) {
4826         return s_n_llhttp__internal__n_start_req_46;
4827       }
4828       switch (*p) {
4829         case 'E': {
4830           p++;
4831           goto s_n_llhttp__internal__n_start_req_47;
4832         }
4833         default: {
4834           goto s_n_llhttp__internal__n_error_70;
4835         }
4836       }
4837       /* UNREACHABLE */;
4838       abort();
4839     }
4840     case s_n_llhttp__internal__n_start_req_54:
4841     s_n_llhttp__internal__n_start_req_54: {
4842       llparse_match_t match_seq;
4843 
4844       if (p == endp) {
4845         return s_n_llhttp__internal__n_start_req_54;
4846       }
4847       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 3);
4848       p = match_seq.current;
4849       switch (match_seq.status) {
4850         case kMatchComplete: {
4851           p++;
4852           match = 14;
4853           goto s_n_llhttp__internal__n_invoke_store_method_1;
4854         }
4855         case kMatchPause: {
4856           return s_n_llhttp__internal__n_start_req_54;
4857         }
4858         case kMatchMismatch: {
4859           goto s_n_llhttp__internal__n_error_70;
4860         }
4861       }
4862       /* UNREACHABLE */;
4863       abort();
4864     }
4865     case s_n_llhttp__internal__n_start_req_56:
4866     s_n_llhttp__internal__n_start_req_56: {
4867       if (p == endp) {
4868         return s_n_llhttp__internal__n_start_req_56;
4869       }
4870       switch (*p) {
4871         case 'P': {
4872           p++;
4873           match = 37;
4874           goto s_n_llhttp__internal__n_invoke_store_method_1;
4875         }
4876         default: {
4877           goto s_n_llhttp__internal__n_error_70;
4878         }
4879       }
4880       /* UNREACHABLE */;
4881       abort();
4882     }
4883     case s_n_llhttp__internal__n_start_req_57:
4884     s_n_llhttp__internal__n_start_req_57: {
4885       llparse_match_t match_seq;
4886 
4887       if (p == endp) {
4888         return s_n_llhttp__internal__n_start_req_57;
4889       }
4890       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 9);
4891       p = match_seq.current;
4892       switch (match_seq.status) {
4893         case kMatchComplete: {
4894           p++;
4895           match = 42;
4896           goto s_n_llhttp__internal__n_invoke_store_method_1;
4897         }
4898         case kMatchPause: {
4899           return s_n_llhttp__internal__n_start_req_57;
4900         }
4901         case kMatchMismatch: {
4902           goto s_n_llhttp__internal__n_error_70;
4903         }
4904       }
4905       /* UNREACHABLE */;
4906       abort();
4907     }
4908     case s_n_llhttp__internal__n_start_req_55:
4909     s_n_llhttp__internal__n_start_req_55: {
4910       if (p == endp) {
4911         return s_n_llhttp__internal__n_start_req_55;
4912       }
4913       switch (*p) {
4914         case 'U': {
4915           p++;
4916           goto s_n_llhttp__internal__n_start_req_56;
4917         }
4918         case '_': {
4919           p++;
4920           goto s_n_llhttp__internal__n_start_req_57;
4921         }
4922         default: {
4923           goto s_n_llhttp__internal__n_error_70;
4924         }
4925       }
4926       /* UNREACHABLE */;
4927       abort();
4928     }
4929     case s_n_llhttp__internal__n_start_req_53:
4930     s_n_llhttp__internal__n_start_req_53: {
4931       if (p == endp) {
4932         return s_n_llhttp__internal__n_start_req_53;
4933       }
4934       switch (*p) {
4935         case 'A': {
4936           p++;
4937           goto s_n_llhttp__internal__n_start_req_54;
4938         }
4939         case 'T': {
4940           p++;
4941           goto s_n_llhttp__internal__n_start_req_55;
4942         }
4943         default: {
4944           goto s_n_llhttp__internal__n_error_70;
4945         }
4946       }
4947       /* UNREACHABLE */;
4948       abort();
4949     }
4950     case s_n_llhttp__internal__n_start_req_58:
4951     s_n_llhttp__internal__n_start_req_58: {
4952       llparse_match_t match_seq;
4953 
4954       if (p == endp) {
4955         return s_n_llhttp__internal__n_start_req_58;
4956       }
4957       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 4);
4958       p = match_seq.current;
4959       switch (match_seq.status) {
4960         case kMatchComplete: {
4961           p++;
4962           match = 33;
4963           goto s_n_llhttp__internal__n_invoke_store_method_1;
4964         }
4965         case kMatchPause: {
4966           return s_n_llhttp__internal__n_start_req_58;
4967         }
4968         case kMatchMismatch: {
4969           goto s_n_llhttp__internal__n_error_70;
4970         }
4971       }
4972       /* UNREACHABLE */;
4973       abort();
4974     }
4975     case s_n_llhttp__internal__n_start_req_59:
4976     s_n_llhttp__internal__n_start_req_59: {
4977       llparse_match_t match_seq;
4978 
4979       if (p == endp) {
4980         return s_n_llhttp__internal__n_start_req_59;
4981       }
4982       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 7);
4983       p = match_seq.current;
4984       switch (match_seq.status) {
4985         case kMatchComplete: {
4986           p++;
4987           match = 26;
4988           goto s_n_llhttp__internal__n_invoke_store_method_1;
4989         }
4990         case kMatchPause: {
4991           return s_n_llhttp__internal__n_start_req_59;
4992         }
4993         case kMatchMismatch: {
4994           goto s_n_llhttp__internal__n_error_70;
4995         }
4996       }
4997       /* UNREACHABLE */;
4998       abort();
4999     }
5000     case s_n_llhttp__internal__n_start_req_52:
5001     s_n_llhttp__internal__n_start_req_52: {
5002       if (p == endp) {
5003         return s_n_llhttp__internal__n_start_req_52;
5004       }
5005       switch (*p) {
5006         case 'E': {
5007           p++;
5008           goto s_n_llhttp__internal__n_start_req_53;
5009         }
5010         case 'O': {
5011           p++;
5012           goto s_n_llhttp__internal__n_start_req_58;
5013         }
5014         case 'U': {
5015           p++;
5016           goto s_n_llhttp__internal__n_start_req_59;
5017         }
5018         default: {
5019           goto s_n_llhttp__internal__n_error_70;
5020         }
5021       }
5022       /* UNREACHABLE */;
5023       abort();
5024     }
5025     case s_n_llhttp__internal__n_start_req_61:
5026     s_n_llhttp__internal__n_start_req_61: {
5027       llparse_match_t match_seq;
5028 
5029       if (p == endp) {
5030         return s_n_llhttp__internal__n_start_req_61;
5031       }
5032       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 6);
5033       p = match_seq.current;
5034       switch (match_seq.status) {
5035         case kMatchComplete: {
5036           p++;
5037           match = 40;
5038           goto s_n_llhttp__internal__n_invoke_store_method_1;
5039         }
5040         case kMatchPause: {
5041           return s_n_llhttp__internal__n_start_req_61;
5042         }
5043         case kMatchMismatch: {
5044           goto s_n_llhttp__internal__n_error_70;
5045         }
5046       }
5047       /* UNREACHABLE */;
5048       abort();
5049     }
5050     case s_n_llhttp__internal__n_start_req_62:
5051     s_n_llhttp__internal__n_start_req_62: {
5052       llparse_match_t match_seq;
5053 
5054       if (p == endp) {
5055         return s_n_llhttp__internal__n_start_req_62;
5056       }
5057       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 3);
5058       p = match_seq.current;
5059       switch (match_seq.status) {
5060         case kMatchComplete: {
5061           p++;
5062           match = 7;
5063           goto s_n_llhttp__internal__n_invoke_store_method_1;
5064         }
5065         case kMatchPause: {
5066           return s_n_llhttp__internal__n_start_req_62;
5067         }
5068         case kMatchMismatch: {
5069           goto s_n_llhttp__internal__n_error_70;
5070         }
5071       }
5072       /* UNREACHABLE */;
5073       abort();
5074     }
5075     case s_n_llhttp__internal__n_start_req_60:
5076     s_n_llhttp__internal__n_start_req_60: {
5077       if (p == endp) {
5078         return s_n_llhttp__internal__n_start_req_60;
5079       }
5080       switch (*p) {
5081         case 'E': {
5082           p++;
5083           goto s_n_llhttp__internal__n_start_req_61;
5084         }
5085         case 'R': {
5086           p++;
5087           goto s_n_llhttp__internal__n_start_req_62;
5088         }
5089         default: {
5090           goto s_n_llhttp__internal__n_error_70;
5091         }
5092       }
5093       /* UNREACHABLE */;
5094       abort();
5095     }
5096     case s_n_llhttp__internal__n_start_req_65:
5097     s_n_llhttp__internal__n_start_req_65: {
5098       llparse_match_t match_seq;
5099 
5100       if (p == endp) {
5101         return s_n_llhttp__internal__n_start_req_65;
5102       }
5103       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 3);
5104       p = match_seq.current;
5105       switch (match_seq.status) {
5106         case kMatchComplete: {
5107           p++;
5108           match = 18;
5109           goto s_n_llhttp__internal__n_invoke_store_method_1;
5110         }
5111         case kMatchPause: {
5112           return s_n_llhttp__internal__n_start_req_65;
5113         }
5114         case kMatchMismatch: {
5115           goto s_n_llhttp__internal__n_error_70;
5116         }
5117       }
5118       /* UNREACHABLE */;
5119       abort();
5120     }
5121     case s_n_llhttp__internal__n_start_req_67:
5122     s_n_llhttp__internal__n_start_req_67: {
5123       llparse_match_t match_seq;
5124 
5125       if (p == endp) {
5126         return s_n_llhttp__internal__n_start_req_67;
5127       }
5128       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 2);
5129       p = match_seq.current;
5130       switch (match_seq.status) {
5131         case kMatchComplete: {
5132           p++;
5133           match = 32;
5134           goto s_n_llhttp__internal__n_invoke_store_method_1;
5135         }
5136         case kMatchPause: {
5137           return s_n_llhttp__internal__n_start_req_67;
5138         }
5139         case kMatchMismatch: {
5140           goto s_n_llhttp__internal__n_error_70;
5141         }
5142       }
5143       /* UNREACHABLE */;
5144       abort();
5145     }
5146     case s_n_llhttp__internal__n_start_req_68:
5147     s_n_llhttp__internal__n_start_req_68: {
5148       llparse_match_t match_seq;
5149 
5150       if (p == endp) {
5151         return s_n_llhttp__internal__n_start_req_68;
5152       }
5153       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 2);
5154       p = match_seq.current;
5155       switch (match_seq.status) {
5156         case kMatchComplete: {
5157           p++;
5158           match = 15;
5159           goto s_n_llhttp__internal__n_invoke_store_method_1;
5160         }
5161         case kMatchPause: {
5162           return s_n_llhttp__internal__n_start_req_68;
5163         }
5164         case kMatchMismatch: {
5165           goto s_n_llhttp__internal__n_error_70;
5166         }
5167       }
5168       /* UNREACHABLE */;
5169       abort();
5170     }
5171     case s_n_llhttp__internal__n_start_req_66:
5172     s_n_llhttp__internal__n_start_req_66: {
5173       if (p == endp) {
5174         return s_n_llhttp__internal__n_start_req_66;
5175       }
5176       switch (*p) {
5177         case 'I': {
5178           p++;
5179           goto s_n_llhttp__internal__n_start_req_67;
5180         }
5181         case 'O': {
5182           p++;
5183           goto s_n_llhttp__internal__n_start_req_68;
5184         }
5185         default: {
5186           goto s_n_llhttp__internal__n_error_70;
5187         }
5188       }
5189       /* UNREACHABLE */;
5190       abort();
5191     }
5192     case s_n_llhttp__internal__n_start_req_69:
5193     s_n_llhttp__internal__n_start_req_69: {
5194       llparse_match_t match_seq;
5195 
5196       if (p == endp) {
5197         return s_n_llhttp__internal__n_start_req_69;
5198       }
5199       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 8);
5200       p = match_seq.current;
5201       switch (match_seq.status) {
5202         case kMatchComplete: {
5203           p++;
5204           match = 27;
5205           goto s_n_llhttp__internal__n_invoke_store_method_1;
5206         }
5207         case kMatchPause: {
5208           return s_n_llhttp__internal__n_start_req_69;
5209         }
5210         case kMatchMismatch: {
5211           goto s_n_llhttp__internal__n_error_70;
5212         }
5213       }
5214       /* UNREACHABLE */;
5215       abort();
5216     }
5217     case s_n_llhttp__internal__n_start_req_64:
5218     s_n_llhttp__internal__n_start_req_64: {
5219       if (p == endp) {
5220         return s_n_llhttp__internal__n_start_req_64;
5221       }
5222       switch (*p) {
5223         case 'B': {
5224           p++;
5225           goto s_n_llhttp__internal__n_start_req_65;
5226         }
5227         case 'L': {
5228           p++;
5229           goto s_n_llhttp__internal__n_start_req_66;
5230         }
5231         case 'S': {
5232           p++;
5233           goto s_n_llhttp__internal__n_start_req_69;
5234         }
5235         default: {
5236           goto s_n_llhttp__internal__n_error_70;
5237         }
5238       }
5239       /* UNREACHABLE */;
5240       abort();
5241     }
5242     case s_n_llhttp__internal__n_start_req_63:
5243     s_n_llhttp__internal__n_start_req_63: {
5244       if (p == endp) {
5245         return s_n_llhttp__internal__n_start_req_63;
5246       }
5247       switch (*p) {
5248         case 'N': {
5249           p++;
5250           goto s_n_llhttp__internal__n_start_req_64;
5251         }
5252         default: {
5253           goto s_n_llhttp__internal__n_error_70;
5254         }
5255       }
5256       /* UNREACHABLE */;
5257       abort();
5258     }
5259     case s_n_llhttp__internal__n_start_req:
5260     s_n_llhttp__internal__n_start_req: {
5261       if (p == endp) {
5262         return s_n_llhttp__internal__n_start_req;
5263       }
5264       switch (*p) {
5265         case 'A': {
5266           p++;
5267           goto s_n_llhttp__internal__n_start_req_1;
5268         }
5269         case 'B': {
5270           p++;
5271           goto s_n_llhttp__internal__n_start_req_4;
5272         }
5273         case 'C': {
5274           p++;
5275           goto s_n_llhttp__internal__n_start_req_5;
5276         }
5277         case 'D': {
5278           p++;
5279           goto s_n_llhttp__internal__n_start_req_10;
5280         }
5281         case 'F': {
5282           p++;
5283           goto s_n_llhttp__internal__n_start_req_14;
5284         }
5285         case 'G': {
5286           p++;
5287           goto s_n_llhttp__internal__n_start_req_15;
5288         }
5289         case 'H': {
5290           p++;
5291           goto s_n_llhttp__internal__n_start_req_18;
5292         }
5293         case 'L': {
5294           p++;
5295           goto s_n_llhttp__internal__n_start_req_19;
5296         }
5297         case 'M': {
5298           p++;
5299           goto s_n_llhttp__internal__n_start_req_22;
5300         }
5301         case 'N': {
5302           p++;
5303           goto s_n_llhttp__internal__n_start_req_31;
5304         }
5305         case 'O': {
5306           p++;
5307           goto s_n_llhttp__internal__n_start_req_32;
5308         }
5309         case 'P': {
5310           p++;
5311           goto s_n_llhttp__internal__n_start_req_33;
5312         }
5313         case 'R': {
5314           p++;
5315           goto s_n_llhttp__internal__n_start_req_46;
5316         }
5317         case 'S': {
5318           p++;
5319           goto s_n_llhttp__internal__n_start_req_52;
5320         }
5321         case 'T': {
5322           p++;
5323           goto s_n_llhttp__internal__n_start_req_60;
5324         }
5325         case 'U': {
5326           p++;
5327           goto s_n_llhttp__internal__n_start_req_63;
5328         }
5329         default: {
5330           goto s_n_llhttp__internal__n_error_70;
5331         }
5332       }
5333       /* UNREACHABLE */;
5334       abort();
5335     }
5336     case s_n_llhttp__internal__n_invoke_llhttp__on_status_complete:
5337     s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: {
5338       switch (llhttp__on_status_complete(state, p, endp)) {
5339         default:
5340           goto s_n_llhttp__internal__n_header_field_start;
5341       }
5342       /* UNREACHABLE */;
5343       abort();
5344     }
5345     case s_n_llhttp__internal__n_res_line_almost_done:
5346     s_n_llhttp__internal__n_res_line_almost_done: {
5347       if (p == endp) {
5348         return s_n_llhttp__internal__n_res_line_almost_done;
5349       }
5350       switch (*p) {
5351         case 10: {
5352           p++;
5353           goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
5354         }
5355         default: {
5356           goto s_n_llhttp__internal__n_error_61;
5357         }
5358       }
5359       /* UNREACHABLE */;
5360       abort();
5361     }
5362     case s_n_llhttp__internal__n_res_status:
5363     s_n_llhttp__internal__n_res_status: {
5364       if (p == endp) {
5365         return s_n_llhttp__internal__n_res_status;
5366       }
5367       switch (*p) {
5368         case 10: {
5369           goto s_n_llhttp__internal__n_span_end_llhttp__on_status;
5370         }
5371         case 13: {
5372           goto s_n_llhttp__internal__n_span_end_llhttp__on_status_1;
5373         }
5374         default: {
5375           p++;
5376           goto s_n_llhttp__internal__n_res_status;
5377         }
5378       }
5379       /* UNREACHABLE */;
5380       abort();
5381     }
5382     case s_n_llhttp__internal__n_span_start_llhttp__on_status:
5383     s_n_llhttp__internal__n_span_start_llhttp__on_status: {
5384       if (p == endp) {
5385         return s_n_llhttp__internal__n_span_start_llhttp__on_status;
5386       }
5387       state->_span_pos0 = (void*) p;
5388       state->_span_cb0 = llhttp__on_status;
5389       goto s_n_llhttp__internal__n_res_status;
5390       /* UNREACHABLE */;
5391       abort();
5392     }
5393     case s_n_llhttp__internal__n_res_status_start:
5394     s_n_llhttp__internal__n_res_status_start: {
5395       if (p == endp) {
5396         return s_n_llhttp__internal__n_res_status_start;
5397       }
5398       switch (*p) {
5399         case 10: {
5400           p++;
5401           goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
5402         }
5403         case 13: {
5404           p++;
5405           goto s_n_llhttp__internal__n_res_line_almost_done;
5406         }
5407         default: {
5408           goto s_n_llhttp__internal__n_span_start_llhttp__on_status;
5409         }
5410       }
5411       /* UNREACHABLE */;
5412       abort();
5413     }
5414     case s_n_llhttp__internal__n_res_status_code_otherwise:
5415     s_n_llhttp__internal__n_res_status_code_otherwise: {
5416       if (p == endp) {
5417         return s_n_llhttp__internal__n_res_status_code_otherwise;
5418       }
5419       switch (*p) {
5420         case 10: {
5421           goto s_n_llhttp__internal__n_res_status_start;
5422         }
5423         case 13: {
5424           goto s_n_llhttp__internal__n_res_status_start;
5425         }
5426         case ' ': {
5427           p++;
5428           goto s_n_llhttp__internal__n_res_status_start;
5429         }
5430         default: {
5431           goto s_n_llhttp__internal__n_error_62;
5432         }
5433       }
5434       /* UNREACHABLE */;
5435       abort();
5436     }
5437     case s_n_llhttp__internal__n_res_status_code:
5438     s_n_llhttp__internal__n_res_status_code: {
5439       if (p == endp) {
5440         return s_n_llhttp__internal__n_res_status_code;
5441       }
5442       switch (*p) {
5443         case '0': {
5444           p++;
5445           match = 0;
5446           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5447         }
5448         case '1': {
5449           p++;
5450           match = 1;
5451           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5452         }
5453         case '2': {
5454           p++;
5455           match = 2;
5456           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5457         }
5458         case '3': {
5459           p++;
5460           match = 3;
5461           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5462         }
5463         case '4': {
5464           p++;
5465           match = 4;
5466           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5467         }
5468         case '5': {
5469           p++;
5470           match = 5;
5471           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5472         }
5473         case '6': {
5474           p++;
5475           match = 6;
5476           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5477         }
5478         case '7': {
5479           p++;
5480           match = 7;
5481           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5482         }
5483         case '8': {
5484           p++;
5485           match = 8;
5486           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5487         }
5488         case '9': {
5489           p++;
5490           match = 9;
5491           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
5492         }
5493         default: {
5494           goto s_n_llhttp__internal__n_res_status_code_otherwise;
5495         }
5496       }
5497       /* UNREACHABLE */;
5498       abort();
5499     }
5500     case s_n_llhttp__internal__n_res_http_end:
5501     s_n_llhttp__internal__n_res_http_end: {
5502       if (p == endp) {
5503         return s_n_llhttp__internal__n_res_http_end;
5504       }
5505       switch (*p) {
5506         case ' ': {
5507           p++;
5508           goto s_n_llhttp__internal__n_invoke_update_status_code;
5509         }
5510         default: {
5511           goto s_n_llhttp__internal__n_error_63;
5512         }
5513       }
5514       /* UNREACHABLE */;
5515       abort();
5516     }
5517     case s_n_llhttp__internal__n_res_http_minor:
5518     s_n_llhttp__internal__n_res_http_minor: {
5519       if (p == endp) {
5520         return s_n_llhttp__internal__n_res_http_minor;
5521       }
5522       switch (*p) {
5523         case '0': {
5524           p++;
5525           match = 0;
5526           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5527         }
5528         case '1': {
5529           p++;
5530           match = 1;
5531           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5532         }
5533         case '2': {
5534           p++;
5535           match = 2;
5536           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5537         }
5538         case '3': {
5539           p++;
5540           match = 3;
5541           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5542         }
5543         case '4': {
5544           p++;
5545           match = 4;
5546           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5547         }
5548         case '5': {
5549           p++;
5550           match = 5;
5551           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5552         }
5553         case '6': {
5554           p++;
5555           match = 6;
5556           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5557         }
5558         case '7': {
5559           p++;
5560           match = 7;
5561           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5562         }
5563         case '8': {
5564           p++;
5565           match = 8;
5566           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5567         }
5568         case '9': {
5569           p++;
5570           match = 9;
5571           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
5572         }
5573         default: {
5574           goto s_n_llhttp__internal__n_error_66;
5575         }
5576       }
5577       /* UNREACHABLE */;
5578       abort();
5579     }
5580     case s_n_llhttp__internal__n_res_http_dot:
5581     s_n_llhttp__internal__n_res_http_dot: {
5582       if (p == endp) {
5583         return s_n_llhttp__internal__n_res_http_dot;
5584       }
5585       switch (*p) {
5586         case '.': {
5587           p++;
5588           goto s_n_llhttp__internal__n_res_http_minor;
5589         }
5590         default: {
5591           goto s_n_llhttp__internal__n_error_67;
5592         }
5593       }
5594       /* UNREACHABLE */;
5595       abort();
5596     }
5597     case s_n_llhttp__internal__n_res_http_major:
5598     s_n_llhttp__internal__n_res_http_major: {
5599       if (p == endp) {
5600         return s_n_llhttp__internal__n_res_http_major;
5601       }
5602       switch (*p) {
5603         case '0': {
5604           p++;
5605           match = 0;
5606           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5607         }
5608         case '1': {
5609           p++;
5610           match = 1;
5611           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5612         }
5613         case '2': {
5614           p++;
5615           match = 2;
5616           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5617         }
5618         case '3': {
5619           p++;
5620           match = 3;
5621           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5622         }
5623         case '4': {
5624           p++;
5625           match = 4;
5626           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5627         }
5628         case '5': {
5629           p++;
5630           match = 5;
5631           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5632         }
5633         case '6': {
5634           p++;
5635           match = 6;
5636           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5637         }
5638         case '7': {
5639           p++;
5640           match = 7;
5641           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5642         }
5643         case '8': {
5644           p++;
5645           match = 8;
5646           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5647         }
5648         case '9': {
5649           p++;
5650           match = 9;
5651           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
5652         }
5653         default: {
5654           goto s_n_llhttp__internal__n_error_68;
5655         }
5656       }
5657       /* UNREACHABLE */;
5658       abort();
5659     }
5660     case s_n_llhttp__internal__n_start_res:
5661     s_n_llhttp__internal__n_start_res: {
5662       llparse_match_t match_seq;
5663 
5664       if (p == endp) {
5665         return s_n_llhttp__internal__n_start_res;
5666       }
5667       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob58, 5);
5668       p = match_seq.current;
5669       switch (match_seq.status) {
5670         case kMatchComplete: {
5671           p++;
5672           goto s_n_llhttp__internal__n_res_http_major;
5673         }
5674         case kMatchPause: {
5675           return s_n_llhttp__internal__n_start_res;
5676         }
5677         case kMatchMismatch: {
5678           goto s_n_llhttp__internal__n_error_71;
5679         }
5680       }
5681       /* UNREACHABLE */;
5682       abort();
5683     }
5684     case s_n_llhttp__internal__n_req_or_res_method_2:
5685     s_n_llhttp__internal__n_req_or_res_method_2: {
5686       llparse_match_t match_seq;
5687 
5688       if (p == endp) {
5689         return s_n_llhttp__internal__n_req_or_res_method_2;
5690       }
5691       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob59, 2);
5692       p = match_seq.current;
5693       switch (match_seq.status) {
5694         case kMatchComplete: {
5695           p++;
5696           match = 2;
5697           goto s_n_llhttp__internal__n_invoke_store_method;
5698         }
5699         case kMatchPause: {
5700           return s_n_llhttp__internal__n_req_or_res_method_2;
5701         }
5702         case kMatchMismatch: {
5703           goto s_n_llhttp__internal__n_error_69;
5704         }
5705       }
5706       /* UNREACHABLE */;
5707       abort();
5708     }
5709     case s_n_llhttp__internal__n_req_or_res_method_3:
5710     s_n_llhttp__internal__n_req_or_res_method_3: {
5711       llparse_match_t match_seq;
5712 
5713       if (p == endp) {
5714         return s_n_llhttp__internal__n_req_or_res_method_3;
5715       }
5716       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob60, 3);
5717       p = match_seq.current;
5718       switch (match_seq.status) {
5719         case kMatchComplete: {
5720           p++;
5721           goto s_n_llhttp__internal__n_invoke_update_type_1;
5722         }
5723         case kMatchPause: {
5724           return s_n_llhttp__internal__n_req_or_res_method_3;
5725         }
5726         case kMatchMismatch: {
5727           goto s_n_llhttp__internal__n_error_69;
5728         }
5729       }
5730       /* UNREACHABLE */;
5731       abort();
5732     }
5733     case s_n_llhttp__internal__n_req_or_res_method_1:
5734     s_n_llhttp__internal__n_req_or_res_method_1: {
5735       if (p == endp) {
5736         return s_n_llhttp__internal__n_req_or_res_method_1;
5737       }
5738       switch (*p) {
5739         case 'E': {
5740           p++;
5741           goto s_n_llhttp__internal__n_req_or_res_method_2;
5742         }
5743         case 'T': {
5744           p++;
5745           goto s_n_llhttp__internal__n_req_or_res_method_3;
5746         }
5747         default: {
5748           goto s_n_llhttp__internal__n_error_69;
5749         }
5750       }
5751       /* UNREACHABLE */;
5752       abort();
5753     }
5754     case s_n_llhttp__internal__n_req_or_res_method:
5755     s_n_llhttp__internal__n_req_or_res_method: {
5756       if (p == endp) {
5757         return s_n_llhttp__internal__n_req_or_res_method;
5758       }
5759       switch (*p) {
5760         case 'H': {
5761           p++;
5762           goto s_n_llhttp__internal__n_req_or_res_method_1;
5763         }
5764         default: {
5765           goto s_n_llhttp__internal__n_error_69;
5766         }
5767       }
5768       /* UNREACHABLE */;
5769       abort();
5770     }
5771     case s_n_llhttp__internal__n_start_req_or_res:
5772     s_n_llhttp__internal__n_start_req_or_res: {
5773       if (p == endp) {
5774         return s_n_llhttp__internal__n_start_req_or_res;
5775       }
5776       switch (*p) {
5777         case 'H': {
5778           goto s_n_llhttp__internal__n_req_or_res_method;
5779         }
5780         default: {
5781           goto s_n_llhttp__internal__n_invoke_update_type_2;
5782         }
5783       }
5784       /* UNREACHABLE */;
5785       abort();
5786     }
5787     case s_n_llhttp__internal__n_invoke_load_type:
5788     s_n_llhttp__internal__n_invoke_load_type: {
5789       switch (llhttp__internal__c_load_type(state, p, endp)) {
5790         case 1:
5791           goto s_n_llhttp__internal__n_start_req;
5792         case 2:
5793           goto s_n_llhttp__internal__n_start_res;
5794         default:
5795           goto s_n_llhttp__internal__n_start_req_or_res;
5796       }
5797       /* UNREACHABLE */;
5798       abort();
5799     }
5800     case s_n_llhttp__internal__n_start:
5801     s_n_llhttp__internal__n_start: {
5802       if (p == endp) {
5803         return s_n_llhttp__internal__n_start;
5804       }
5805       switch (*p) {
5806         case 10: {
5807           p++;
5808           goto s_n_llhttp__internal__n_start;
5809         }
5810         case 13: {
5811           p++;
5812           goto s_n_llhttp__internal__n_start;
5813         }
5814         default: {
5815           goto s_n_llhttp__internal__n_invoke_update_finish;
5816         }
5817       }
5818       /* UNREACHABLE */;
5819       abort();
5820     }
5821     default:
5822       /* UNREACHABLE */
5823       abort();
5824   }
5825   s_n_llhttp__internal__n_error_1: {
5826     state->error = 0x7;
5827     state->reason = "Invalid characters in url (strict mode)";
5828     state->error_pos = (const char*) p;
5829     state->_current = (void*) (intptr_t) s_error;
5830     return s_error;
5831     /* UNREACHABLE */;
5832     abort();
5833   }
5834   s_n_llhttp__internal__n_error_53: {
5835     state->error = 0x7;
5836     state->reason = "Invalid characters in url";
5837     state->error_pos = (const char*) p;
5838     state->_current = (void*) (intptr_t) s_error;
5839     return s_error;
5840     /* UNREACHABLE */;
5841     abort();
5842   }
5843   s_n_llhttp__internal__n_invoke_update_finish_2: {
5844     switch (llhttp__internal__c_update_finish_1(state, p, endp)) {
5845       default:
5846         goto s_n_llhttp__internal__n_start;
5847     }
5848     /* UNREACHABLE */;
5849     abort();
5850   }
5851   s_n_llhttp__internal__n_error_4: {
5852     state->error = 0x5;
5853     state->reason = "Data after `Connection: close`";
5854     state->error_pos = (const char*) p;
5855     state->_current = (void*) (intptr_t) s_error;
5856     return s_error;
5857     /* UNREACHABLE */;
5858     abort();
5859   }
5860   s_n_llhttp__internal__n_invoke_test_lenient_flags: {
5861     switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) {
5862       case 1:
5863         goto s_n_llhttp__internal__n_invoke_update_finish_2;
5864       default:
5865         goto s_n_llhttp__internal__n_closed;
5866     }
5867     /* UNREACHABLE */;
5868     abort();
5869   }
5870   s_n_llhttp__internal__n_invoke_update_finish_1: {
5871     switch (llhttp__internal__c_update_finish_1(state, p, endp)) {
5872       default:
5873         goto s_n_llhttp__internal__n_invoke_test_lenient_flags;
5874     }
5875     /* UNREACHABLE */;
5876     abort();
5877   }
5878   s_n_llhttp__internal__n_pause_5: {
5879     state->error = 0x15;
5880     state->reason = "on_message_complete pause";
5881     state->error_pos = (const char*) p;
5882     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_upgrade;
5883     return s_error;
5884     /* UNREACHABLE */;
5885     abort();
5886   }
5887   s_n_llhttp__internal__n_error_14: {
5888     state->error = 0x12;
5889     state->reason = "`on_message_complete` callback error";
5890     state->error_pos = (const char*) p;
5891     state->_current = (void*) (intptr_t) s_error;
5892     return s_error;
5893     /* UNREACHABLE */;
5894     abort();
5895   }
5896   s_n_llhttp__internal__n_pause_7: {
5897     state->error = 0x15;
5898     state->reason = "on_chunk_complete pause";
5899     state->error_pos = (const char*) p;
5900     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
5901     return s_error;
5902     /* UNREACHABLE */;
5903     abort();
5904   }
5905   s_n_llhttp__internal__n_error_17: {
5906     state->error = 0x14;
5907     state->reason = "`on_chunk_complete` callback error";
5908     state->error_pos = (const char*) p;
5909     state->_current = (void*) (intptr_t) s_error;
5910     return s_error;
5911     /* UNREACHABLE */;
5912     abort();
5913   }
5914   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete_1: {
5915     switch (llhttp__on_chunk_complete(state, p, endp)) {
5916       case 0:
5917         goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
5918       case 21:
5919         goto s_n_llhttp__internal__n_pause_7;
5920       default:
5921         goto s_n_llhttp__internal__n_error_17;
5922     }
5923     /* UNREACHABLE */;
5924     abort();
5925   }
5926   s_n_llhttp__internal__n_error_16: {
5927     state->error = 0x4;
5928     state->reason = "Content-Length can't be present with Transfer-Encoding";
5929     state->error_pos = (const char*) p;
5930     state->_current = (void*) (intptr_t) s_error;
5931     return s_error;
5932     /* UNREACHABLE */;
5933     abort();
5934   }
5935   s_n_llhttp__internal__n_pause_2: {
5936     state->error = 0x15;
5937     state->reason = "on_message_complete pause";
5938     state->error_pos = (const char*) p;
5939     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_pause_1;
5940     return s_error;
5941     /* UNREACHABLE */;
5942     abort();
5943   }
5944   s_n_llhttp__internal__n_error_5: {
5945     state->error = 0x12;
5946     state->reason = "`on_message_complete` callback error";
5947     state->error_pos = (const char*) p;
5948     state->_current = (void*) (intptr_t) s_error;
5949     return s_error;
5950     /* UNREACHABLE */;
5951     abort();
5952   }
5953   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1: {
5954     switch (llhttp__on_message_complete(state, p, endp)) {
5955       case 0:
5956         goto s_n_llhttp__internal__n_pause_1;
5957       case 21:
5958         goto s_n_llhttp__internal__n_pause_2;
5959       default:
5960         goto s_n_llhttp__internal__n_error_5;
5961     }
5962     /* UNREACHABLE */;
5963     abort();
5964   }
5965   s_n_llhttp__internal__n_error_12: {
5966     state->error = 0xc;
5967     state->reason = "Chunk size overflow";
5968     state->error_pos = (const char*) p;
5969     state->_current = (void*) (intptr_t) s_error;
5970     return s_error;
5971     /* UNREACHABLE */;
5972     abort();
5973   }
5974   s_n_llhttp__internal__n_pause_3: {
5975     state->error = 0x15;
5976     state->reason = "on_chunk_complete pause";
5977     state->error_pos = (const char*) p;
5978     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length;
5979     return s_error;
5980     /* UNREACHABLE */;
5981     abort();
5982   }
5983   s_n_llhttp__internal__n_error_7: {
5984     state->error = 0x14;
5985     state->reason = "`on_chunk_complete` callback error";
5986     state->error_pos = (const char*) p;
5987     state->_current = (void*) (intptr_t) s_error;
5988     return s_error;
5989     /* UNREACHABLE */;
5990     abort();
5991   }
5992   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete: {
5993     switch (llhttp__on_chunk_complete(state, p, endp)) {
5994       case 0:
5995         goto s_n_llhttp__internal__n_invoke_update_content_length;
5996       case 21:
5997         goto s_n_llhttp__internal__n_pause_3;
5998       default:
5999         goto s_n_llhttp__internal__n_error_7;
6000     }
6001     /* UNREACHABLE */;
6002     abort();
6003   }
6004   s_n_llhttp__internal__n_error_8: {
6005     state->error = 0x2;
6006     state->reason = "Expected CRLF after chunk";
6007     state->error_pos = (const char*) p;
6008     state->_current = (void*) (intptr_t) s_error;
6009     return s_error;
6010     /* UNREACHABLE */;
6011     abort();
6012   }
6013   s_n_llhttp__internal__n_span_end_llhttp__on_body: {
6014     const unsigned char* start;
6015     int err;
6016 
6017     start = state->_span_pos0;
6018     state->_span_pos0 = NULL;
6019     err = llhttp__on_body(state, start, p);
6020     if (err != 0) {
6021       state->error = err;
6022       state->error_pos = (const char*) p;
6023       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_data_almost_done;
6024       return s_error;
6025     }
6026     goto s_n_llhttp__internal__n_chunk_data_almost_done;
6027     /* UNREACHABLE */;
6028     abort();
6029   }
6030   s_n_llhttp__internal__n_invoke_or_flags: {
6031     switch (llhttp__internal__c_or_flags(state, p, endp)) {
6032       default:
6033         goto s_n_llhttp__internal__n_header_field_start;
6034     }
6035     /* UNREACHABLE */;
6036     abort();
6037   }
6038   s_n_llhttp__internal__n_pause_4: {
6039     state->error = 0x15;
6040     state->reason = "on_chunk_header pause";
6041     state->error_pos = (const char*) p;
6042     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_content_length;
6043     return s_error;
6044     /* UNREACHABLE */;
6045     abort();
6046   }
6047   s_n_llhttp__internal__n_error_6: {
6048     state->error = 0x13;
6049     state->reason = "`on_chunk_header` callback error";
6050     state->error_pos = (const char*) p;
6051     state->_current = (void*) (intptr_t) s_error;
6052     return s_error;
6053     /* UNREACHABLE */;
6054     abort();
6055   }
6056   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header: {
6057     switch (llhttp__on_chunk_header(state, p, endp)) {
6058       case 0:
6059         goto s_n_llhttp__internal__n_invoke_is_equal_content_length;
6060       case 21:
6061         goto s_n_llhttp__internal__n_pause_4;
6062       default:
6063         goto s_n_llhttp__internal__n_error_6;
6064     }
6065     /* UNREACHABLE */;
6066     abort();
6067   }
6068   s_n_llhttp__internal__n_error_9: {
6069     state->error = 0x2;
6070     state->reason = "Expected LF after chunk size";
6071     state->error_pos = (const char*) p;
6072     state->_current = (void*) (intptr_t) s_error;
6073     return s_error;
6074     /* UNREACHABLE */;
6075     abort();
6076   }
6077   s_n_llhttp__internal__n_error_10: {
6078     state->error = 0x2;
6079     state->reason = "Invalid character in chunk parameters";
6080     state->error_pos = (const char*) p;
6081     state->_current = (void*) (intptr_t) s_error;
6082     return s_error;
6083     /* UNREACHABLE */;
6084     abort();
6085   }
6086   s_n_llhttp__internal__n_error_11: {
6087     state->error = 0xc;
6088     state->reason = "Invalid character in chunk size";
6089     state->error_pos = (const char*) p;
6090     state->_current = (void*) (intptr_t) s_error;
6091     return s_error;
6092     /* UNREACHABLE */;
6093     abort();
6094   }
6095   s_n_llhttp__internal__n_invoke_mul_add_content_length: {
6096     switch (llhttp__internal__c_mul_add_content_length(state, p, endp, match)) {
6097       case 1:
6098         goto s_n_llhttp__internal__n_error_12;
6099       default:
6100         goto s_n_llhttp__internal__n_chunk_size;
6101     }
6102     /* UNREACHABLE */;
6103     abort();
6104   }
6105   s_n_llhttp__internal__n_error_13: {
6106     state->error = 0xc;
6107     state->reason = "Invalid character in chunk size";
6108     state->error_pos = (const char*) p;
6109     state->_current = (void*) (intptr_t) s_error;
6110     return s_error;
6111     /* UNREACHABLE */;
6112     abort();
6113   }
6114   s_n_llhttp__internal__n_span_end_llhttp__on_body_1: {
6115     const unsigned char* start;
6116     int err;
6117 
6118     start = state->_span_pos0;
6119     state->_span_pos0 = NULL;
6120     err = llhttp__on_body(state, start, p);
6121     if (err != 0) {
6122       state->error = err;
6123       state->error_pos = (const char*) p;
6124       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
6125       return s_error;
6126     }
6127     goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
6128     /* UNREACHABLE */;
6129     abort();
6130   }
6131   s_n_llhttp__internal__n_invoke_update_finish_3: {
6132     switch (llhttp__internal__c_update_finish_3(state, p, endp)) {
6133       default:
6134         goto s_n_llhttp__internal__n_span_start_llhttp__on_body_2;
6135     }
6136     /* UNREACHABLE */;
6137     abort();
6138   }
6139   s_n_llhttp__internal__n_error_15: {
6140     state->error = 0xf;
6141     state->reason = "Request has invalid `Transfer-Encoding`";
6142     state->error_pos = (const char*) p;
6143     state->_current = (void*) (intptr_t) s_error;
6144     return s_error;
6145     /* UNREACHABLE */;
6146     abort();
6147   }
6148   s_n_llhttp__internal__n_pause: {
6149     state->error = 0x15;
6150     state->reason = "on_message_complete pause";
6151     state->error_pos = (const char*) p;
6152     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
6153     return s_error;
6154     /* UNREACHABLE */;
6155     abort();
6156   }
6157   s_n_llhttp__internal__n_error_3: {
6158     state->error = 0x12;
6159     state->reason = "`on_message_complete` callback error";
6160     state->error_pos = (const char*) p;
6161     state->_current = (void*) (intptr_t) s_error;
6162     return s_error;
6163     /* UNREACHABLE */;
6164     abort();
6165   }
6166   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete: {
6167     switch (llhttp__on_message_complete(state, p, endp)) {
6168       case 0:
6169         goto s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
6170       case 21:
6171         goto s_n_llhttp__internal__n_pause;
6172       default:
6173         goto s_n_llhttp__internal__n_error_3;
6174     }
6175     /* UNREACHABLE */;
6176     abort();
6177   }
6178   s_n_llhttp__internal__n_invoke_or_flags_1: {
6179     switch (llhttp__internal__c_or_flags_1(state, p, endp)) {
6180       default:
6181         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
6182     }
6183     /* UNREACHABLE */;
6184     abort();
6185   }
6186   s_n_llhttp__internal__n_invoke_or_flags_2: {
6187     switch (llhttp__internal__c_or_flags_1(state, p, endp)) {
6188       default:
6189         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
6190     }
6191     /* UNREACHABLE */;
6192     abort();
6193   }
6194   s_n_llhttp__internal__n_invoke_update_upgrade: {
6195     switch (llhttp__internal__c_update_upgrade(state, p, endp)) {
6196       default:
6197         goto s_n_llhttp__internal__n_invoke_or_flags_2;
6198     }
6199     /* UNREACHABLE */;
6200     abort();
6201   }
6202   s_n_llhttp__internal__n_pause_6: {
6203     state->error = 0x15;
6204     state->reason = "Paused by on_headers_complete";
6205     state->error_pos = (const char*) p;
6206     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
6207     return s_error;
6208     /* UNREACHABLE */;
6209     abort();
6210   }
6211   s_n_llhttp__internal__n_error_2: {
6212     state->error = 0x11;
6213     state->reason = "User callback error";
6214     state->error_pos = (const char*) p;
6215     state->_current = (void*) (intptr_t) s_error;
6216     return s_error;
6217     /* UNREACHABLE */;
6218     abort();
6219   }
6220   s_n_llhttp__internal__n_invoke_llhttp__on_headers_complete: {
6221     switch (llhttp__on_headers_complete(state, p, endp)) {
6222       case 0:
6223         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
6224       case 1:
6225         goto s_n_llhttp__internal__n_invoke_or_flags_1;
6226       case 2:
6227         goto s_n_llhttp__internal__n_invoke_update_upgrade;
6228       case 21:
6229         goto s_n_llhttp__internal__n_pause_6;
6230       default:
6231         goto s_n_llhttp__internal__n_error_2;
6232     }
6233     /* UNREACHABLE */;
6234     abort();
6235   }
6236   s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete: {
6237     switch (llhttp__before_headers_complete(state, p, endp)) {
6238       default:
6239         goto s_n_llhttp__internal__n_invoke_llhttp__on_headers_complete;
6240     }
6241     /* UNREACHABLE */;
6242     abort();
6243   }
6244   s_n_llhttp__internal__n_invoke_test_lenient_flags_1: {
6245     switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) {
6246       case 0:
6247         goto s_n_llhttp__internal__n_error_16;
6248       default:
6249         goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete;
6250     }
6251     /* UNREACHABLE */;
6252     abort();
6253   }
6254   s_n_llhttp__internal__n_invoke_test_flags_1: {
6255     switch (llhttp__internal__c_test_flags_1(state, p, endp)) {
6256       case 1:
6257         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1;
6258       default:
6259         goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete;
6260     }
6261     /* UNREACHABLE */;
6262     abort();
6263   }
6264   s_n_llhttp__internal__n_invoke_test_flags: {
6265     switch (llhttp__internal__c_test_flags(state, p, endp)) {
6266       case 1:
6267         goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete_1;
6268       default:
6269         goto s_n_llhttp__internal__n_invoke_test_flags_1;
6270     }
6271     /* UNREACHABLE */;
6272     abort();
6273   }
6274   s_n_llhttp__internal__n_error_18: {
6275     state->error = 0x2;
6276     state->reason = "Expected LF after headers";
6277     state->error_pos = (const char*) p;
6278     state->_current = (void*) (intptr_t) s_error;
6279     return s_error;
6280     /* UNREACHABLE */;
6281     abort();
6282   }
6283   s_n_llhttp__internal__n_span_end_llhttp__on_header_field: {
6284     const unsigned char* start;
6285     int err;
6286 
6287     start = state->_span_pos0;
6288     state->_span_pos0 = NULL;
6289     err = llhttp__on_header_field(state, start, p);
6290     if (err != 0) {
6291       state->error = err;
6292       state->error_pos = (const char*) (p + 1);
6293       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_19;
6294       return s_error;
6295     }
6296     p++;
6297     goto s_n_llhttp__internal__n_error_19;
6298     /* UNREACHABLE */;
6299     abort();
6300   }
6301   s_n_llhttp__internal__n_invoke_test_lenient_flags_2: {
6302     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
6303       case 1:
6304         goto s_n_llhttp__internal__n_header_field_colon_discard_ws;
6305       default:
6306         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field;
6307     }
6308     /* UNREACHABLE */;
6309     abort();
6310   }
6311   s_n_llhttp__internal__n_error_21: {
6312     state->error = 0xa;
6313     state->reason = "Invalid header value char";
6314     state->error_pos = (const char*) p;
6315     state->_current = (void*) (intptr_t) s_error;
6316     return s_error;
6317     /* UNREACHABLE */;
6318     abort();
6319   }
6320   s_n_llhttp__internal__n_invoke_test_lenient_flags_4: {
6321     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
6322       case 1:
6323         goto s_n_llhttp__internal__n_header_value_discard_ws;
6324       default:
6325         goto s_n_llhttp__internal__n_error_21;
6326     }
6327     /* UNREACHABLE */;
6328     abort();
6329   }
6330   s_n_llhttp__internal__n_error_22: {
6331     state->error = 0xb;
6332     state->reason = "Empty Content-Length";
6333     state->error_pos = (const char*) p;
6334     state->_current = (void*) (intptr_t) s_error;
6335     return s_error;
6336     /* UNREACHABLE */;
6337     abort();
6338   }
6339   s_n_llhttp__internal__n_span_end_llhttp__on_header_value: {
6340     const unsigned char* start;
6341     int err;
6342 
6343     start = state->_span_pos0;
6344     state->_span_pos0 = NULL;
6345     err = llhttp__on_header_value(state, start, p);
6346     if (err != 0) {
6347       state->error = err;
6348       state->error_pos = (const char*) p;
6349       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
6350       return s_error;
6351     }
6352     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
6353     /* UNREACHABLE */;
6354     abort();
6355   }
6356   s_n_llhttp__internal__n_invoke_update_header_state: {
6357     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
6358       default:
6359         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
6360     }
6361     /* UNREACHABLE */;
6362     abort();
6363   }
6364   s_n_llhttp__internal__n_invoke_or_flags_3: {
6365     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
6366       default:
6367         goto s_n_llhttp__internal__n_invoke_update_header_state;
6368     }
6369     /* UNREACHABLE */;
6370     abort();
6371   }
6372   s_n_llhttp__internal__n_invoke_or_flags_4: {
6373     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
6374       default:
6375         goto s_n_llhttp__internal__n_invoke_update_header_state;
6376     }
6377     /* UNREACHABLE */;
6378     abort();
6379   }
6380   s_n_llhttp__internal__n_invoke_or_flags_5: {
6381     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
6382       default:
6383         goto s_n_llhttp__internal__n_invoke_update_header_state;
6384     }
6385     /* UNREACHABLE */;
6386     abort();
6387   }
6388   s_n_llhttp__internal__n_invoke_or_flags_6: {
6389     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
6390       default:
6391         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
6392     }
6393     /* UNREACHABLE */;
6394     abort();
6395   }
6396   s_n_llhttp__internal__n_invoke_load_header_state_1: {
6397     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6398       case 5:
6399         goto s_n_llhttp__internal__n_invoke_or_flags_3;
6400       case 6:
6401         goto s_n_llhttp__internal__n_invoke_or_flags_4;
6402       case 7:
6403         goto s_n_llhttp__internal__n_invoke_or_flags_5;
6404       case 8:
6405         goto s_n_llhttp__internal__n_invoke_or_flags_6;
6406       default:
6407         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
6408     }
6409     /* UNREACHABLE */;
6410     abort();
6411   }
6412   s_n_llhttp__internal__n_invoke_load_header_state: {
6413     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6414       case 2:
6415         goto s_n_llhttp__internal__n_error_22;
6416       default:
6417         goto s_n_llhttp__internal__n_invoke_load_header_state_1;
6418     }
6419     /* UNREACHABLE */;
6420     abort();
6421   }
6422   s_n_llhttp__internal__n_error_20: {
6423     state->error = 0xa;
6424     state->reason = "Invalid header value char";
6425     state->error_pos = (const char*) p;
6426     state->_current = (void*) (intptr_t) s_error;
6427     return s_error;
6428     /* UNREACHABLE */;
6429     abort();
6430   }
6431   s_n_llhttp__internal__n_invoke_test_lenient_flags_3: {
6432     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
6433       case 1:
6434         goto s_n_llhttp__internal__n_header_value_discard_lws;
6435       default:
6436         goto s_n_llhttp__internal__n_error_20;
6437     }
6438     /* UNREACHABLE */;
6439     abort();
6440   }
6441   s_n_llhttp__internal__n_error_23: {
6442     state->error = 0x2;
6443     state->reason = "Expected LF after CR";
6444     state->error_pos = (const char*) p;
6445     state->_current = (void*) (intptr_t) s_error;
6446     return s_error;
6447     /* UNREACHABLE */;
6448     abort();
6449   }
6450   s_n_llhttp__internal__n_invoke_test_lenient_flags_5: {
6451     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
6452       case 1:
6453         goto s_n_llhttp__internal__n_header_value_discard_lws;
6454       default:
6455         goto s_n_llhttp__internal__n_error_23;
6456     }
6457     /* UNREACHABLE */;
6458     abort();
6459   }
6460   s_n_llhttp__internal__n_invoke_update_header_state_1: {
6461     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
6462       default:
6463         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
6464     }
6465     /* UNREACHABLE */;
6466     abort();
6467   }
6468   s_n_llhttp__internal__n_invoke_load_header_state_3: {
6469     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6470       case 8:
6471         goto s_n_llhttp__internal__n_invoke_update_header_state_1;
6472       default:
6473         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
6474     }
6475     /* UNREACHABLE */;
6476     abort();
6477   }
6478   s_n_llhttp__internal__n_invoke_update_header_state_2: {
6479     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
6480       default:
6481         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
6482     }
6483     /* UNREACHABLE */;
6484     abort();
6485   }
6486   s_n_llhttp__internal__n_invoke_or_flags_7: {
6487     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
6488       default:
6489         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
6490     }
6491     /* UNREACHABLE */;
6492     abort();
6493   }
6494   s_n_llhttp__internal__n_invoke_or_flags_8: {
6495     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
6496       default:
6497         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
6498     }
6499     /* UNREACHABLE */;
6500     abort();
6501   }
6502   s_n_llhttp__internal__n_invoke_or_flags_9: {
6503     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
6504       default:
6505         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
6506     }
6507     /* UNREACHABLE */;
6508     abort();
6509   }
6510   s_n_llhttp__internal__n_invoke_or_flags_10: {
6511     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
6512       default:
6513         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
6514     }
6515     /* UNREACHABLE */;
6516     abort();
6517   }
6518   s_n_llhttp__internal__n_invoke_load_header_state_4: {
6519     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6520       case 5:
6521         goto s_n_llhttp__internal__n_invoke_or_flags_7;
6522       case 6:
6523         goto s_n_llhttp__internal__n_invoke_or_flags_8;
6524       case 7:
6525         goto s_n_llhttp__internal__n_invoke_or_flags_9;
6526       case 8:
6527         goto s_n_llhttp__internal__n_invoke_or_flags_10;
6528       default:
6529         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
6530     }
6531     /* UNREACHABLE */;
6532     abort();
6533   }
6534   s_n_llhttp__internal__n_error_24: {
6535     state->error = 0x3;
6536     state->reason = "Missing expected LF after header value";
6537     state->error_pos = (const char*) p;
6538     state->_current = (void*) (intptr_t) s_error;
6539     return s_error;
6540     /* UNREACHABLE */;
6541     abort();
6542   }
6543   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1: {
6544     const unsigned char* start;
6545     int err;
6546 
6547     start = state->_span_pos0;
6548     state->_span_pos0 = NULL;
6549     err = llhttp__on_header_value(state, start, p);
6550     if (err != 0) {
6551       state->error = err;
6552       state->error_pos = (const char*) (p + 1);
6553       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
6554       return s_error;
6555     }
6556     p++;
6557     goto s_n_llhttp__internal__n_header_value_almost_done;
6558     /* UNREACHABLE */;
6559     abort();
6560   }
6561   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_3: {
6562     const unsigned char* start;
6563     int err;
6564 
6565     start = state->_span_pos0;
6566     state->_span_pos0 = NULL;
6567     err = llhttp__on_header_value(state, start, p);
6568     if (err != 0) {
6569       state->error = err;
6570       state->error_pos = (const char*) p;
6571       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
6572       return s_error;
6573     }
6574     goto s_n_llhttp__internal__n_header_value_almost_done;
6575     /* UNREACHABLE */;
6576     abort();
6577   }
6578   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_4: {
6579     const unsigned char* start;
6580     int err;
6581 
6582     start = state->_span_pos0;
6583     state->_span_pos0 = NULL;
6584     err = llhttp__on_header_value(state, start, p);
6585     if (err != 0) {
6586       state->error = err;
6587       state->error_pos = (const char*) (p + 1);
6588       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
6589       return s_error;
6590     }
6591     p++;
6592     goto s_n_llhttp__internal__n_header_value_almost_done;
6593     /* UNREACHABLE */;
6594     abort();
6595   }
6596   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_2: {
6597     const unsigned char* start;
6598     int err;
6599 
6600     start = state->_span_pos0;
6601     state->_span_pos0 = NULL;
6602     err = llhttp__on_header_value(state, start, p);
6603     if (err != 0) {
6604       state->error = err;
6605       state->error_pos = (const char*) p;
6606       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_25;
6607       return s_error;
6608     }
6609     goto s_n_llhttp__internal__n_error_25;
6610     /* UNREACHABLE */;
6611     abort();
6612   }
6613   s_n_llhttp__internal__n_invoke_test_lenient_flags_6: {
6614     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
6615       case 1:
6616         goto s_n_llhttp__internal__n_header_value_lenient;
6617       default:
6618         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_2;
6619     }
6620     /* UNREACHABLE */;
6621     abort();
6622   }
6623   s_n_llhttp__internal__n_invoke_update_header_state_4: {
6624     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
6625       default:
6626         goto s_n_llhttp__internal__n_header_value_connection;
6627     }
6628     /* UNREACHABLE */;
6629     abort();
6630   }
6631   s_n_llhttp__internal__n_invoke_or_flags_11: {
6632     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
6633       default:
6634         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
6635     }
6636     /* UNREACHABLE */;
6637     abort();
6638   }
6639   s_n_llhttp__internal__n_invoke_or_flags_12: {
6640     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
6641       default:
6642         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
6643     }
6644     /* UNREACHABLE */;
6645     abort();
6646   }
6647   s_n_llhttp__internal__n_invoke_or_flags_13: {
6648     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
6649       default:
6650         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
6651     }
6652     /* UNREACHABLE */;
6653     abort();
6654   }
6655   s_n_llhttp__internal__n_invoke_or_flags_14: {
6656     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
6657       default:
6658         goto s_n_llhttp__internal__n_header_value_connection;
6659     }
6660     /* UNREACHABLE */;
6661     abort();
6662   }
6663   s_n_llhttp__internal__n_invoke_load_header_state_5: {
6664     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6665       case 5:
6666         goto s_n_llhttp__internal__n_invoke_or_flags_11;
6667       case 6:
6668         goto s_n_llhttp__internal__n_invoke_or_flags_12;
6669       case 7:
6670         goto s_n_llhttp__internal__n_invoke_or_flags_13;
6671       case 8:
6672         goto s_n_llhttp__internal__n_invoke_or_flags_14;
6673       default:
6674         goto s_n_llhttp__internal__n_header_value_connection;
6675     }
6676     /* UNREACHABLE */;
6677     abort();
6678   }
6679   s_n_llhttp__internal__n_invoke_update_header_state_5: {
6680     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
6681       default:
6682         goto s_n_llhttp__internal__n_header_value_connection_token;
6683     }
6684     /* UNREACHABLE */;
6685     abort();
6686   }
6687   s_n_llhttp__internal__n_invoke_update_header_state_3: {
6688     switch (llhttp__internal__c_update_header_state_3(state, p, endp)) {
6689       default:
6690         goto s_n_llhttp__internal__n_header_value_connection_ws;
6691     }
6692     /* UNREACHABLE */;
6693     abort();
6694   }
6695   s_n_llhttp__internal__n_invoke_update_header_state_6: {
6696     switch (llhttp__internal__c_update_header_state_6(state, p, endp)) {
6697       default:
6698         goto s_n_llhttp__internal__n_header_value_connection_ws;
6699     }
6700     /* UNREACHABLE */;
6701     abort();
6702   }
6703   s_n_llhttp__internal__n_invoke_update_header_state_7: {
6704     switch (llhttp__internal__c_update_header_state_7(state, p, endp)) {
6705       default:
6706         goto s_n_llhttp__internal__n_header_value_connection_ws;
6707     }
6708     /* UNREACHABLE */;
6709     abort();
6710   }
6711   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_5: {
6712     const unsigned char* start;
6713     int err;
6714 
6715     start = state->_span_pos0;
6716     state->_span_pos0 = NULL;
6717     err = llhttp__on_header_value(state, start, p);
6718     if (err != 0) {
6719       state->error = err;
6720       state->error_pos = (const char*) p;
6721       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_27;
6722       return s_error;
6723     }
6724     goto s_n_llhttp__internal__n_error_27;
6725     /* UNREACHABLE */;
6726     abort();
6727   }
6728   s_n_llhttp__internal__n_invoke_mul_add_content_length_1: {
6729     switch (llhttp__internal__c_mul_add_content_length_1(state, p, endp, match)) {
6730       case 1:
6731         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_5;
6732       default:
6733         goto s_n_llhttp__internal__n_header_value_content_length;
6734     }
6735     /* UNREACHABLE */;
6736     abort();
6737   }
6738   s_n_llhttp__internal__n_invoke_or_flags_15: {
6739     switch (llhttp__internal__c_or_flags_15(state, p, endp)) {
6740       default:
6741         goto s_n_llhttp__internal__n_header_value_otherwise;
6742     }
6743     /* UNREACHABLE */;
6744     abort();
6745   }
6746   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_6: {
6747     const unsigned char* start;
6748     int err;
6749 
6750     start = state->_span_pos0;
6751     state->_span_pos0 = NULL;
6752     err = llhttp__on_header_value(state, start, p);
6753     if (err != 0) {
6754       state->error = err;
6755       state->error_pos = (const char*) p;
6756       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_28;
6757       return s_error;
6758     }
6759     goto s_n_llhttp__internal__n_error_28;
6760     /* UNREACHABLE */;
6761     abort();
6762   }
6763   s_n_llhttp__internal__n_error_26: {
6764     state->error = 0x4;
6765     state->reason = "Duplicate Content-Length";
6766     state->error_pos = (const char*) p;
6767     state->_current = (void*) (intptr_t) s_error;
6768     return s_error;
6769     /* UNREACHABLE */;
6770     abort();
6771   }
6772   s_n_llhttp__internal__n_invoke_test_flags_2: {
6773     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
6774       case 0:
6775         goto s_n_llhttp__internal__n_header_value_content_length;
6776       default:
6777         goto s_n_llhttp__internal__n_error_26;
6778     }
6779     /* UNREACHABLE */;
6780     abort();
6781   }
6782   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8: {
6783     const unsigned char* start;
6784     int err;
6785 
6786     start = state->_span_pos0;
6787     state->_span_pos0 = NULL;
6788     err = llhttp__on_header_value(state, start, p);
6789     if (err != 0) {
6790       state->error = err;
6791       state->error_pos = (const char*) (p + 1);
6792       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_30;
6793       return s_error;
6794     }
6795     p++;
6796     goto s_n_llhttp__internal__n_error_30;
6797     /* UNREACHABLE */;
6798     abort();
6799   }
6800   s_n_llhttp__internal__n_invoke_update_header_state_8: {
6801     switch (llhttp__internal__c_update_header_state_8(state, p, endp)) {
6802       default:
6803         goto s_n_llhttp__internal__n_header_value_otherwise;
6804     }
6805     /* UNREACHABLE */;
6806     abort();
6807   }
6808   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7: {
6809     const unsigned char* start;
6810     int err;
6811 
6812     start = state->_span_pos0;
6813     state->_span_pos0 = NULL;
6814     err = llhttp__on_header_value(state, start, p);
6815     if (err != 0) {
6816       state->error = err;
6817       state->error_pos = (const char*) (p + 1);
6818       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_29;
6819       return s_error;
6820     }
6821     p++;
6822     goto s_n_llhttp__internal__n_error_29;
6823     /* UNREACHABLE */;
6824     abort();
6825   }
6826   s_n_llhttp__internal__n_invoke_test_lenient_flags_7: {
6827     switch (llhttp__internal__c_test_lenient_flags_7(state, p, endp)) {
6828       case 0:
6829         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7;
6830       default:
6831         goto s_n_llhttp__internal__n_header_value_te_chunked;
6832     }
6833     /* UNREACHABLE */;
6834     abort();
6835   }
6836   s_n_llhttp__internal__n_invoke_load_type_1: {
6837     switch (llhttp__internal__c_load_type(state, p, endp)) {
6838       case 1:
6839         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7;
6840       default:
6841         goto s_n_llhttp__internal__n_header_value_te_chunked;
6842     }
6843     /* UNREACHABLE */;
6844     abort();
6845   }
6846   s_n_llhttp__internal__n_invoke_update_header_state_9: {
6847     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
6848       default:
6849         goto s_n_llhttp__internal__n_header_value;
6850     }
6851     /* UNREACHABLE */;
6852     abort();
6853   }
6854   s_n_llhttp__internal__n_invoke_and_flags: {
6855     switch (llhttp__internal__c_and_flags(state, p, endp)) {
6856       default:
6857         goto s_n_llhttp__internal__n_header_value_te_chunked;
6858     }
6859     /* UNREACHABLE */;
6860     abort();
6861   }
6862   s_n_llhttp__internal__n_invoke_or_flags_17: {
6863     switch (llhttp__internal__c_or_flags_16(state, p, endp)) {
6864       default:
6865         goto s_n_llhttp__internal__n_invoke_and_flags;
6866     }
6867     /* UNREACHABLE */;
6868     abort();
6869   }
6870   s_n_llhttp__internal__n_invoke_test_lenient_flags_8: {
6871     switch (llhttp__internal__c_test_lenient_flags_7(state, p, endp)) {
6872       case 0:
6873         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8;
6874       default:
6875         goto s_n_llhttp__internal__n_invoke_or_flags_17;
6876     }
6877     /* UNREACHABLE */;
6878     abort();
6879   }
6880   s_n_llhttp__internal__n_invoke_load_type_2: {
6881     switch (llhttp__internal__c_load_type(state, p, endp)) {
6882       case 1:
6883         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8;
6884       default:
6885         goto s_n_llhttp__internal__n_invoke_or_flags_17;
6886     }
6887     /* UNREACHABLE */;
6888     abort();
6889   }
6890   s_n_llhttp__internal__n_invoke_or_flags_16: {
6891     switch (llhttp__internal__c_or_flags_16(state, p, endp)) {
6892       default:
6893         goto s_n_llhttp__internal__n_invoke_and_flags;
6894     }
6895     /* UNREACHABLE */;
6896     abort();
6897   }
6898   s_n_llhttp__internal__n_invoke_test_flags_3: {
6899     switch (llhttp__internal__c_test_flags_3(state, p, endp)) {
6900       case 1:
6901         goto s_n_llhttp__internal__n_invoke_load_type_2;
6902       default:
6903         goto s_n_llhttp__internal__n_invoke_or_flags_16;
6904     }
6905     /* UNREACHABLE */;
6906     abort();
6907   }
6908   s_n_llhttp__internal__n_invoke_or_flags_18: {
6909     switch (llhttp__internal__c_or_flags_18(state, p, endp)) {
6910       default:
6911         goto s_n_llhttp__internal__n_invoke_update_header_state_9;
6912     }
6913     /* UNREACHABLE */;
6914     abort();
6915   }
6916   s_n_llhttp__internal__n_invoke_load_header_state_2: {
6917     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
6918       case 1:
6919         goto s_n_llhttp__internal__n_header_value_connection;
6920       case 2:
6921         goto s_n_llhttp__internal__n_invoke_test_flags_2;
6922       case 3:
6923         goto s_n_llhttp__internal__n_invoke_test_flags_3;
6924       case 4:
6925         goto s_n_llhttp__internal__n_invoke_or_flags_18;
6926       default:
6927         goto s_n_llhttp__internal__n_header_value;
6928     }
6929     /* UNREACHABLE */;
6930     abort();
6931   }
6932   s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1: {
6933     const unsigned char* start;
6934     int err;
6935 
6936     start = state->_span_pos0;
6937     state->_span_pos0 = NULL;
6938     err = llhttp__on_header_field(state, start, p);
6939     if (err != 0) {
6940       state->error = err;
6941       state->error_pos = (const char*) (p + 1);
6942       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
6943       return s_error;
6944     }
6945     p++;
6946     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
6947     /* UNREACHABLE */;
6948     abort();
6949   }
6950   s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2: {
6951     const unsigned char* start;
6952     int err;
6953 
6954     start = state->_span_pos0;
6955     state->_span_pos0 = NULL;
6956     err = llhttp__on_header_field(state, start, p);
6957     if (err != 0) {
6958       state->error = err;
6959       state->error_pos = (const char*) (p + 1);
6960       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
6961       return s_error;
6962     }
6963     p++;
6964     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
6965     /* UNREACHABLE */;
6966     abort();
6967   }
6968   s_n_llhttp__internal__n_error_31: {
6969     state->error = 0xa;
6970     state->reason = "Invalid header token";
6971     state->error_pos = (const char*) p;
6972     state->_current = (void*) (intptr_t) s_error;
6973     return s_error;
6974     /* UNREACHABLE */;
6975     abort();
6976   }
6977   s_n_llhttp__internal__n_invoke_update_header_state_10: {
6978     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
6979       default:
6980         goto s_n_llhttp__internal__n_header_field_general;
6981     }
6982     /* UNREACHABLE */;
6983     abort();
6984   }
6985   s_n_llhttp__internal__n_invoke_store_header_state: {
6986     switch (llhttp__internal__c_store_header_state(state, p, endp, match)) {
6987       default:
6988         goto s_n_llhttp__internal__n_header_field_colon;
6989     }
6990     /* UNREACHABLE */;
6991     abort();
6992   }
6993   s_n_llhttp__internal__n_invoke_update_header_state_11: {
6994     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
6995       default:
6996         goto s_n_llhttp__internal__n_header_field_general;
6997     }
6998     /* UNREACHABLE */;
6999     abort();
7000   }
7001   s_n_llhttp__internal__n_invoke_llhttp__on_url_complete: {
7002     switch (llhttp__on_url_complete(state, p, endp)) {
7003       default:
7004         goto s_n_llhttp__internal__n_header_field_start;
7005     }
7006     /* UNREACHABLE */;
7007     abort();
7008   }
7009   s_n_llhttp__internal__n_invoke_update_http_minor: {
7010     switch (llhttp__internal__c_update_http_minor(state, p, endp)) {
7011       default:
7012         goto s_n_llhttp__internal__n_invoke_llhttp__on_url_complete;
7013     }
7014     /* UNREACHABLE */;
7015     abort();
7016   }
7017   s_n_llhttp__internal__n_invoke_update_http_major: {
7018     switch (llhttp__internal__c_update_http_major(state, p, endp)) {
7019       default:
7020         goto s_n_llhttp__internal__n_invoke_update_http_minor;
7021     }
7022     /* UNREACHABLE */;
7023     abort();
7024   }
7025   s_n_llhttp__internal__n_span_end_llhttp__on_url_3: {
7026     const unsigned char* start;
7027     int err;
7028 
7029     start = state->_span_pos0;
7030     state->_span_pos0 = NULL;
7031     err = llhttp__on_url(state, start, p);
7032     if (err != 0) {
7033       state->error = err;
7034       state->error_pos = (const char*) p;
7035       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
7036       return s_error;
7037     }
7038     goto s_n_llhttp__internal__n_url_skip_to_http09;
7039     /* UNREACHABLE */;
7040     abort();
7041   }
7042   s_n_llhttp__internal__n_error_32: {
7043     state->error = 0x7;
7044     state->reason = "Expected CRLF";
7045     state->error_pos = (const char*) p;
7046     state->_current = (void*) (intptr_t) s_error;
7047     return s_error;
7048     /* UNREACHABLE */;
7049     abort();
7050   }
7051   s_n_llhttp__internal__n_span_end_llhttp__on_url_4: {
7052     const unsigned char* start;
7053     int err;
7054 
7055     start = state->_span_pos0;
7056     state->_span_pos0 = NULL;
7057     err = llhttp__on_url(state, start, p);
7058     if (err != 0) {
7059       state->error = err;
7060       state->error_pos = (const char*) p;
7061       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
7062       return s_error;
7063     }
7064     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
7065     /* UNREACHABLE */;
7066     abort();
7067   }
7068   s_n_llhttp__internal__n_error_37: {
7069     state->error = 0x17;
7070     state->reason = "Pause on PRI/Upgrade";
7071     state->error_pos = (const char*) p;
7072     state->_current = (void*) (intptr_t) s_error;
7073     return s_error;
7074     /* UNREACHABLE */;
7075     abort();
7076   }
7077   s_n_llhttp__internal__n_error_38: {
7078     state->error = 0x9;
7079     state->reason = "Expected HTTP/2 Connection Preface";
7080     state->error_pos = (const char*) p;
7081     state->_current = (void*) (intptr_t) s_error;
7082     return s_error;
7083     /* UNREACHABLE */;
7084     abort();
7085   }
7086   s_n_llhttp__internal__n_error_36: {
7087     state->error = 0x9;
7088     state->reason = "Expected CRLF after version";
7089     state->error_pos = (const char*) p;
7090     state->_current = (void*) (intptr_t) s_error;
7091     return s_error;
7092     /* UNREACHABLE */;
7093     abort();
7094   }
7095   s_n_llhttp__internal__n_invoke_load_method_1: {
7096     switch (llhttp__internal__c_load_method(state, p, endp)) {
7097       case 34:
7098         goto s_n_llhttp__internal__n_req_pri_upgrade;
7099       default:
7100         goto s_n_llhttp__internal__n_req_http_complete;
7101     }
7102     /* UNREACHABLE */;
7103     abort();
7104   }
7105   s_n_llhttp__internal__n_error_35: {
7106     state->error = 0x9;
7107     state->reason = "Invalid HTTP version";
7108     state->error_pos = (const char*) p;
7109     state->_current = (void*) (intptr_t) s_error;
7110     return s_error;
7111     /* UNREACHABLE */;
7112     abort();
7113   }
7114   s_n_llhttp__internal__n_invoke_load_http_minor: {
7115     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7116       case 9:
7117         goto s_n_llhttp__internal__n_invoke_load_method_1;
7118       default:
7119         goto s_n_llhttp__internal__n_error_35;
7120     }
7121     /* UNREACHABLE */;
7122     abort();
7123   }
7124   s_n_llhttp__internal__n_error_39: {
7125     state->error = 0x9;
7126     state->reason = "Invalid HTTP version";
7127     state->error_pos = (const char*) p;
7128     state->_current = (void*) (intptr_t) s_error;
7129     return s_error;
7130     /* UNREACHABLE */;
7131     abort();
7132   }
7133   s_n_llhttp__internal__n_invoke_load_http_minor_1: {
7134     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7135       case 0:
7136         goto s_n_llhttp__internal__n_invoke_load_method_1;
7137       case 1:
7138         goto s_n_llhttp__internal__n_invoke_load_method_1;
7139       default:
7140         goto s_n_llhttp__internal__n_error_39;
7141     }
7142     /* UNREACHABLE */;
7143     abort();
7144   }
7145   s_n_llhttp__internal__n_error_40: {
7146     state->error = 0x9;
7147     state->reason = "Invalid HTTP version";
7148     state->error_pos = (const char*) p;
7149     state->_current = (void*) (intptr_t) s_error;
7150     return s_error;
7151     /* UNREACHABLE */;
7152     abort();
7153   }
7154   s_n_llhttp__internal__n_invoke_load_http_minor_2: {
7155     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7156       case 0:
7157         goto s_n_llhttp__internal__n_invoke_load_method_1;
7158       default:
7159         goto s_n_llhttp__internal__n_error_40;
7160     }
7161     /* UNREACHABLE */;
7162     abort();
7163   }
7164   s_n_llhttp__internal__n_error_34: {
7165     state->error = 0x9;
7166     state->reason = "Invalid HTTP version";
7167     state->error_pos = (const char*) p;
7168     state->_current = (void*) (intptr_t) s_error;
7169     return s_error;
7170     /* UNREACHABLE */;
7171     abort();
7172   }
7173   s_n_llhttp__internal__n_invoke_load_http_major: {
7174     switch (llhttp__internal__c_load_http_major(state, p, endp)) {
7175       case 0:
7176         goto s_n_llhttp__internal__n_invoke_load_http_minor;
7177       case 1:
7178         goto s_n_llhttp__internal__n_invoke_load_http_minor_1;
7179       case 2:
7180         goto s_n_llhttp__internal__n_invoke_load_http_minor_2;
7181       default:
7182         goto s_n_llhttp__internal__n_error_34;
7183     }
7184     /* UNREACHABLE */;
7185     abort();
7186   }
7187   s_n_llhttp__internal__n_invoke_test_lenient_flags_9: {
7188     switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) {
7189       case 1:
7190         goto s_n_llhttp__internal__n_invoke_load_method_1;
7191       default:
7192         goto s_n_llhttp__internal__n_invoke_load_http_major;
7193     }
7194     /* UNREACHABLE */;
7195     abort();
7196   }
7197   s_n_llhttp__internal__n_invoke_store_http_minor: {
7198     switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) {
7199       default:
7200         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9;
7201     }
7202     /* UNREACHABLE */;
7203     abort();
7204   }
7205   s_n_llhttp__internal__n_error_41: {
7206     state->error = 0x9;
7207     state->reason = "Invalid minor version";
7208     state->error_pos = (const char*) p;
7209     state->_current = (void*) (intptr_t) s_error;
7210     return s_error;
7211     /* UNREACHABLE */;
7212     abort();
7213   }
7214   s_n_llhttp__internal__n_error_42: {
7215     state->error = 0x9;
7216     state->reason = "Expected dot";
7217     state->error_pos = (const char*) p;
7218     state->_current = (void*) (intptr_t) s_error;
7219     return s_error;
7220     /* UNREACHABLE */;
7221     abort();
7222   }
7223   s_n_llhttp__internal__n_invoke_store_http_major: {
7224     switch (llhttp__internal__c_store_http_major(state, p, endp, match)) {
7225       default:
7226         goto s_n_llhttp__internal__n_req_http_dot;
7227     }
7228     /* UNREACHABLE */;
7229     abort();
7230   }
7231   s_n_llhttp__internal__n_error_43: {
7232     state->error = 0x9;
7233     state->reason = "Invalid major version";
7234     state->error_pos = (const char*) p;
7235     state->_current = (void*) (intptr_t) s_error;
7236     return s_error;
7237     /* UNREACHABLE */;
7238     abort();
7239   }
7240   s_n_llhttp__internal__n_error_33: {
7241     state->error = 0x8;
7242     state->reason = "Invalid method for HTTP/x.x request";
7243     state->error_pos = (const char*) p;
7244     state->_current = (void*) (intptr_t) s_error;
7245     return s_error;
7246     /* UNREACHABLE */;
7247     abort();
7248   }
7249   s_n_llhttp__internal__n_invoke_load_method: {
7250     switch (llhttp__internal__c_load_method(state, p, endp)) {
7251       case 0:
7252         goto s_n_llhttp__internal__n_req_http_major;
7253       case 1:
7254         goto s_n_llhttp__internal__n_req_http_major;
7255       case 2:
7256         goto s_n_llhttp__internal__n_req_http_major;
7257       case 3:
7258         goto s_n_llhttp__internal__n_req_http_major;
7259       case 4:
7260         goto s_n_llhttp__internal__n_req_http_major;
7261       case 5:
7262         goto s_n_llhttp__internal__n_req_http_major;
7263       case 6:
7264         goto s_n_llhttp__internal__n_req_http_major;
7265       case 7:
7266         goto s_n_llhttp__internal__n_req_http_major;
7267       case 8:
7268         goto s_n_llhttp__internal__n_req_http_major;
7269       case 9:
7270         goto s_n_llhttp__internal__n_req_http_major;
7271       case 10:
7272         goto s_n_llhttp__internal__n_req_http_major;
7273       case 11:
7274         goto s_n_llhttp__internal__n_req_http_major;
7275       case 12:
7276         goto s_n_llhttp__internal__n_req_http_major;
7277       case 13:
7278         goto s_n_llhttp__internal__n_req_http_major;
7279       case 14:
7280         goto s_n_llhttp__internal__n_req_http_major;
7281       case 15:
7282         goto s_n_llhttp__internal__n_req_http_major;
7283       case 16:
7284         goto s_n_llhttp__internal__n_req_http_major;
7285       case 17:
7286         goto s_n_llhttp__internal__n_req_http_major;
7287       case 18:
7288         goto s_n_llhttp__internal__n_req_http_major;
7289       case 19:
7290         goto s_n_llhttp__internal__n_req_http_major;
7291       case 20:
7292         goto s_n_llhttp__internal__n_req_http_major;
7293       case 21:
7294         goto s_n_llhttp__internal__n_req_http_major;
7295       case 22:
7296         goto s_n_llhttp__internal__n_req_http_major;
7297       case 23:
7298         goto s_n_llhttp__internal__n_req_http_major;
7299       case 24:
7300         goto s_n_llhttp__internal__n_req_http_major;
7301       case 25:
7302         goto s_n_llhttp__internal__n_req_http_major;
7303       case 26:
7304         goto s_n_llhttp__internal__n_req_http_major;
7305       case 27:
7306         goto s_n_llhttp__internal__n_req_http_major;
7307       case 28:
7308         goto s_n_llhttp__internal__n_req_http_major;
7309       case 29:
7310         goto s_n_llhttp__internal__n_req_http_major;
7311       case 30:
7312         goto s_n_llhttp__internal__n_req_http_major;
7313       case 31:
7314         goto s_n_llhttp__internal__n_req_http_major;
7315       case 32:
7316         goto s_n_llhttp__internal__n_req_http_major;
7317       case 33:
7318         goto s_n_llhttp__internal__n_req_http_major;
7319       case 34:
7320         goto s_n_llhttp__internal__n_req_http_major;
7321       default:
7322         goto s_n_llhttp__internal__n_error_33;
7323     }
7324     /* UNREACHABLE */;
7325     abort();
7326   }
7327   s_n_llhttp__internal__n_error_46: {
7328     state->error = 0x8;
7329     state->reason = "Expected HTTP/";
7330     state->error_pos = (const char*) p;
7331     state->_current = (void*) (intptr_t) s_error;
7332     return s_error;
7333     /* UNREACHABLE */;
7334     abort();
7335   }
7336   s_n_llhttp__internal__n_error_44: {
7337     state->error = 0x8;
7338     state->reason = "Expected SOURCE method for ICE/x.x request";
7339     state->error_pos = (const char*) p;
7340     state->_current = (void*) (intptr_t) s_error;
7341     return s_error;
7342     /* UNREACHABLE */;
7343     abort();
7344   }
7345   s_n_llhttp__internal__n_invoke_load_method_2: {
7346     switch (llhttp__internal__c_load_method(state, p, endp)) {
7347       case 33:
7348         goto s_n_llhttp__internal__n_req_http_major;
7349       default:
7350         goto s_n_llhttp__internal__n_error_44;
7351     }
7352     /* UNREACHABLE */;
7353     abort();
7354   }
7355   s_n_llhttp__internal__n_error_45: {
7356     state->error = 0x8;
7357     state->reason = "Invalid method for RTSP/x.x request";
7358     state->error_pos = (const char*) p;
7359     state->_current = (void*) (intptr_t) s_error;
7360     return s_error;
7361     /* UNREACHABLE */;
7362     abort();
7363   }
7364   s_n_llhttp__internal__n_invoke_load_method_3: {
7365     switch (llhttp__internal__c_load_method(state, p, endp)) {
7366       case 1:
7367         goto s_n_llhttp__internal__n_req_http_major;
7368       case 3:
7369         goto s_n_llhttp__internal__n_req_http_major;
7370       case 6:
7371         goto s_n_llhttp__internal__n_req_http_major;
7372       case 35:
7373         goto s_n_llhttp__internal__n_req_http_major;
7374       case 36:
7375         goto s_n_llhttp__internal__n_req_http_major;
7376       case 37:
7377         goto s_n_llhttp__internal__n_req_http_major;
7378       case 38:
7379         goto s_n_llhttp__internal__n_req_http_major;
7380       case 39:
7381         goto s_n_llhttp__internal__n_req_http_major;
7382       case 40:
7383         goto s_n_llhttp__internal__n_req_http_major;
7384       case 41:
7385         goto s_n_llhttp__internal__n_req_http_major;
7386       case 42:
7387         goto s_n_llhttp__internal__n_req_http_major;
7388       case 43:
7389         goto s_n_llhttp__internal__n_req_http_major;
7390       case 44:
7391         goto s_n_llhttp__internal__n_req_http_major;
7392       case 45:
7393         goto s_n_llhttp__internal__n_req_http_major;
7394       default:
7395         goto s_n_llhttp__internal__n_error_45;
7396     }
7397     /* UNREACHABLE */;
7398     abort();
7399   }
7400   s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1: {
7401     switch (llhttp__on_url_complete(state, p, endp)) {
7402       default:
7403         goto s_n_llhttp__internal__n_req_http_start;
7404     }
7405     /* UNREACHABLE */;
7406     abort();
7407   }
7408   s_n_llhttp__internal__n_span_end_llhttp__on_url_5: {
7409     const unsigned char* start;
7410     int err;
7411 
7412     start = state->_span_pos0;
7413     state->_span_pos0 = NULL;
7414     err = llhttp__on_url(state, start, p);
7415     if (err != 0) {
7416       state->error = err;
7417       state->error_pos = (const char*) p;
7418       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
7419       return s_error;
7420     }
7421     goto s_n_llhttp__internal__n_url_skip_to_http;
7422     /* UNREACHABLE */;
7423     abort();
7424   }
7425   s_n_llhttp__internal__n_span_end_llhttp__on_url_6: {
7426     const unsigned char* start;
7427     int err;
7428 
7429     start = state->_span_pos0;
7430     state->_span_pos0 = NULL;
7431     err = llhttp__on_url(state, start, p);
7432     if (err != 0) {
7433       state->error = err;
7434       state->error_pos = (const char*) p;
7435       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
7436       return s_error;
7437     }
7438     goto s_n_llhttp__internal__n_url_skip_to_http09;
7439     /* UNREACHABLE */;
7440     abort();
7441   }
7442   s_n_llhttp__internal__n_span_end_llhttp__on_url_7: {
7443     const unsigned char* start;
7444     int err;
7445 
7446     start = state->_span_pos0;
7447     state->_span_pos0 = NULL;
7448     err = llhttp__on_url(state, start, p);
7449     if (err != 0) {
7450       state->error = err;
7451       state->error_pos = (const char*) p;
7452       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
7453       return s_error;
7454     }
7455     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
7456     /* UNREACHABLE */;
7457     abort();
7458   }
7459   s_n_llhttp__internal__n_span_end_llhttp__on_url_8: {
7460     const unsigned char* start;
7461     int err;
7462 
7463     start = state->_span_pos0;
7464     state->_span_pos0 = NULL;
7465     err = llhttp__on_url(state, start, p);
7466     if (err != 0) {
7467       state->error = err;
7468       state->error_pos = (const char*) p;
7469       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
7470       return s_error;
7471     }
7472     goto s_n_llhttp__internal__n_url_skip_to_http;
7473     /* UNREACHABLE */;
7474     abort();
7475   }
7476   s_n_llhttp__internal__n_error_47: {
7477     state->error = 0x7;
7478     state->reason = "Invalid char in url fragment start";
7479     state->error_pos = (const char*) p;
7480     state->_current = (void*) (intptr_t) s_error;
7481     return s_error;
7482     /* UNREACHABLE */;
7483     abort();
7484   }
7485   s_n_llhttp__internal__n_span_end_llhttp__on_url_9: {
7486     const unsigned char* start;
7487     int err;
7488 
7489     start = state->_span_pos0;
7490     state->_span_pos0 = NULL;
7491     err = llhttp__on_url(state, start, p);
7492     if (err != 0) {
7493       state->error = err;
7494       state->error_pos = (const char*) p;
7495       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
7496       return s_error;
7497     }
7498     goto s_n_llhttp__internal__n_url_skip_to_http09;
7499     /* UNREACHABLE */;
7500     abort();
7501   }
7502   s_n_llhttp__internal__n_span_end_llhttp__on_url_10: {
7503     const unsigned char* start;
7504     int err;
7505 
7506     start = state->_span_pos0;
7507     state->_span_pos0 = NULL;
7508     err = llhttp__on_url(state, start, p);
7509     if (err != 0) {
7510       state->error = err;
7511       state->error_pos = (const char*) p;
7512       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
7513       return s_error;
7514     }
7515     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
7516     /* UNREACHABLE */;
7517     abort();
7518   }
7519   s_n_llhttp__internal__n_span_end_llhttp__on_url_11: {
7520     const unsigned char* start;
7521     int err;
7522 
7523     start = state->_span_pos0;
7524     state->_span_pos0 = NULL;
7525     err = llhttp__on_url(state, start, p);
7526     if (err != 0) {
7527       state->error = err;
7528       state->error_pos = (const char*) p;
7529       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
7530       return s_error;
7531     }
7532     goto s_n_llhttp__internal__n_url_skip_to_http;
7533     /* UNREACHABLE */;
7534     abort();
7535   }
7536   s_n_llhttp__internal__n_error_48: {
7537     state->error = 0x7;
7538     state->reason = "Invalid char in url query";
7539     state->error_pos = (const char*) p;
7540     state->_current = (void*) (intptr_t) s_error;
7541     return s_error;
7542     /* UNREACHABLE */;
7543     abort();
7544   }
7545   s_n_llhttp__internal__n_error_49: {
7546     state->error = 0x7;
7547     state->reason = "Invalid char in url path";
7548     state->error_pos = (const char*) p;
7549     state->_current = (void*) (intptr_t) s_error;
7550     return s_error;
7551     /* UNREACHABLE */;
7552     abort();
7553   }
7554   s_n_llhttp__internal__n_span_end_llhttp__on_url: {
7555     const unsigned char* start;
7556     int err;
7557 
7558     start = state->_span_pos0;
7559     state->_span_pos0 = NULL;
7560     err = llhttp__on_url(state, start, p);
7561     if (err != 0) {
7562       state->error = err;
7563       state->error_pos = (const char*) p;
7564       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
7565       return s_error;
7566     }
7567     goto s_n_llhttp__internal__n_url_skip_to_http09;
7568     /* UNREACHABLE */;
7569     abort();
7570   }
7571   s_n_llhttp__internal__n_span_end_llhttp__on_url_1: {
7572     const unsigned char* start;
7573     int err;
7574 
7575     start = state->_span_pos0;
7576     state->_span_pos0 = NULL;
7577     err = llhttp__on_url(state, start, p);
7578     if (err != 0) {
7579       state->error = err;
7580       state->error_pos = (const char*) p;
7581       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
7582       return s_error;
7583     }
7584     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
7585     /* UNREACHABLE */;
7586     abort();
7587   }
7588   s_n_llhttp__internal__n_span_end_llhttp__on_url_2: {
7589     const unsigned char* start;
7590     int err;
7591 
7592     start = state->_span_pos0;
7593     state->_span_pos0 = NULL;
7594     err = llhttp__on_url(state, start, p);
7595     if (err != 0) {
7596       state->error = err;
7597       state->error_pos = (const char*) p;
7598       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
7599       return s_error;
7600     }
7601     goto s_n_llhttp__internal__n_url_skip_to_http;
7602     /* UNREACHABLE */;
7603     abort();
7604   }
7605   s_n_llhttp__internal__n_span_end_llhttp__on_url_12: {
7606     const unsigned char* start;
7607     int err;
7608 
7609     start = state->_span_pos0;
7610     state->_span_pos0 = NULL;
7611     err = llhttp__on_url(state, start, p);
7612     if (err != 0) {
7613       state->error = err;
7614       state->error_pos = (const char*) p;
7615       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
7616       return s_error;
7617     }
7618     goto s_n_llhttp__internal__n_url_skip_to_http09;
7619     /* UNREACHABLE */;
7620     abort();
7621   }
7622   s_n_llhttp__internal__n_span_end_llhttp__on_url_13: {
7623     const unsigned char* start;
7624     int err;
7625 
7626     start = state->_span_pos0;
7627     state->_span_pos0 = NULL;
7628     err = llhttp__on_url(state, start, p);
7629     if (err != 0) {
7630       state->error = err;
7631       state->error_pos = (const char*) p;
7632       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
7633       return s_error;
7634     }
7635     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
7636     /* UNREACHABLE */;
7637     abort();
7638   }
7639   s_n_llhttp__internal__n_span_end_llhttp__on_url_14: {
7640     const unsigned char* start;
7641     int err;
7642 
7643     start = state->_span_pos0;
7644     state->_span_pos0 = NULL;
7645     err = llhttp__on_url(state, start, p);
7646     if (err != 0) {
7647       state->error = err;
7648       state->error_pos = (const char*) p;
7649       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
7650       return s_error;
7651     }
7652     goto s_n_llhttp__internal__n_url_skip_to_http;
7653     /* UNREACHABLE */;
7654     abort();
7655   }
7656   s_n_llhttp__internal__n_error_50: {
7657     state->error = 0x7;
7658     state->reason = "Double @ in url";
7659     state->error_pos = (const char*) p;
7660     state->_current = (void*) (intptr_t) s_error;
7661     return s_error;
7662     /* UNREACHABLE */;
7663     abort();
7664   }
7665   s_n_llhttp__internal__n_error_51: {
7666     state->error = 0x7;
7667     state->reason = "Unexpected char in url server";
7668     state->error_pos = (const char*) p;
7669     state->_current = (void*) (intptr_t) s_error;
7670     return s_error;
7671     /* UNREACHABLE */;
7672     abort();
7673   }
7674   s_n_llhttp__internal__n_error_52: {
7675     state->error = 0x7;
7676     state->reason = "Unexpected char in url server";
7677     state->error_pos = (const char*) p;
7678     state->_current = (void*) (intptr_t) s_error;
7679     return s_error;
7680     /* UNREACHABLE */;
7681     abort();
7682   }
7683   s_n_llhttp__internal__n_error_54: {
7684     state->error = 0x7;
7685     state->reason = "Unexpected char in url schema";
7686     state->error_pos = (const char*) p;
7687     state->_current = (void*) (intptr_t) s_error;
7688     return s_error;
7689     /* UNREACHABLE */;
7690     abort();
7691   }
7692   s_n_llhttp__internal__n_error_55: {
7693     state->error = 0x7;
7694     state->reason = "Unexpected char in url schema";
7695     state->error_pos = (const char*) p;
7696     state->_current = (void*) (intptr_t) s_error;
7697     return s_error;
7698     /* UNREACHABLE */;
7699     abort();
7700   }
7701   s_n_llhttp__internal__n_error_56: {
7702     state->error = 0x7;
7703     state->reason = "Unexpected start char in url";
7704     state->error_pos = (const char*) p;
7705     state->_current = (void*) (intptr_t) s_error;
7706     return s_error;
7707     /* UNREACHABLE */;
7708     abort();
7709   }
7710   s_n_llhttp__internal__n_invoke_is_equal_method: {
7711     switch (llhttp__internal__c_is_equal_method(state, p, endp)) {
7712       case 0:
7713         goto s_n_llhttp__internal__n_url_entry_normal;
7714       default:
7715         goto s_n_llhttp__internal__n_url_entry_connect;
7716     }
7717     /* UNREACHABLE */;
7718     abort();
7719   }
7720   s_n_llhttp__internal__n_error_57: {
7721     state->error = 0x6;
7722     state->reason = "Expected space after method";
7723     state->error_pos = (const char*) p;
7724     state->_current = (void*) (intptr_t) s_error;
7725     return s_error;
7726     /* UNREACHABLE */;
7727     abort();
7728   }
7729   s_n_llhttp__internal__n_invoke_store_method_1: {
7730     switch (llhttp__internal__c_store_method(state, p, endp, match)) {
7731       default:
7732         goto s_n_llhttp__internal__n_req_first_space_before_url;
7733     }
7734     /* UNREACHABLE */;
7735     abort();
7736   }
7737   s_n_llhttp__internal__n_error_70: {
7738     state->error = 0x6;
7739     state->reason = "Invalid method encountered";
7740     state->error_pos = (const char*) p;
7741     state->_current = (void*) (intptr_t) s_error;
7742     return s_error;
7743     /* UNREACHABLE */;
7744     abort();
7745   }
7746   s_n_llhttp__internal__n_error_60: {
7747     state->error = 0xd;
7748     state->reason = "Response overflow";
7749     state->error_pos = (const char*) p;
7750     state->_current = (void*) (intptr_t) s_error;
7751     return s_error;
7752     /* UNREACHABLE */;
7753     abort();
7754   }
7755   s_n_llhttp__internal__n_invoke_mul_add_status_code: {
7756     switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) {
7757       case 1:
7758         goto s_n_llhttp__internal__n_error_60;
7759       default:
7760         goto s_n_llhttp__internal__n_res_status_code;
7761     }
7762     /* UNREACHABLE */;
7763     abort();
7764   }
7765   s_n_llhttp__internal__n_error_61: {
7766     state->error = 0x2;
7767     state->reason = "Expected LF after CR";
7768     state->error_pos = (const char*) p;
7769     state->_current = (void*) (intptr_t) s_error;
7770     return s_error;
7771     /* UNREACHABLE */;
7772     abort();
7773   }
7774   s_n_llhttp__internal__n_span_end_llhttp__on_status: {
7775     const unsigned char* start;
7776     int err;
7777 
7778     start = state->_span_pos0;
7779     state->_span_pos0 = NULL;
7780     err = llhttp__on_status(state, start, p);
7781     if (err != 0) {
7782       state->error = err;
7783       state->error_pos = (const char*) (p + 1);
7784       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
7785       return s_error;
7786     }
7787     p++;
7788     goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
7789     /* UNREACHABLE */;
7790     abort();
7791   }
7792   s_n_llhttp__internal__n_span_end_llhttp__on_status_1: {
7793     const unsigned char* start;
7794     int err;
7795 
7796     start = state->_span_pos0;
7797     state->_span_pos0 = NULL;
7798     err = llhttp__on_status(state, start, p);
7799     if (err != 0) {
7800       state->error = err;
7801       state->error_pos = (const char*) (p + 1);
7802       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_res_line_almost_done;
7803       return s_error;
7804     }
7805     p++;
7806     goto s_n_llhttp__internal__n_res_line_almost_done;
7807     /* UNREACHABLE */;
7808     abort();
7809   }
7810   s_n_llhttp__internal__n_error_62: {
7811     state->error = 0xd;
7812     state->reason = "Invalid response status";
7813     state->error_pos = (const char*) p;
7814     state->_current = (void*) (intptr_t) s_error;
7815     return s_error;
7816     /* UNREACHABLE */;
7817     abort();
7818   }
7819   s_n_llhttp__internal__n_invoke_update_status_code: {
7820     switch (llhttp__internal__c_update_status_code(state, p, endp)) {
7821       default:
7822         goto s_n_llhttp__internal__n_res_status_code;
7823     }
7824     /* UNREACHABLE */;
7825     abort();
7826   }
7827   s_n_llhttp__internal__n_error_63: {
7828     state->error = 0x9;
7829     state->reason = "Expected space after version";
7830     state->error_pos = (const char*) p;
7831     state->_current = (void*) (intptr_t) s_error;
7832     return s_error;
7833     /* UNREACHABLE */;
7834     abort();
7835   }
7836   s_n_llhttp__internal__n_error_59: {
7837     state->error = 0x9;
7838     state->reason = "Invalid HTTP version";
7839     state->error_pos = (const char*) p;
7840     state->_current = (void*) (intptr_t) s_error;
7841     return s_error;
7842     /* UNREACHABLE */;
7843     abort();
7844   }
7845   s_n_llhttp__internal__n_invoke_load_http_minor_3: {
7846     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7847       case 9:
7848         goto s_n_llhttp__internal__n_res_http_end;
7849       default:
7850         goto s_n_llhttp__internal__n_error_59;
7851     }
7852     /* UNREACHABLE */;
7853     abort();
7854   }
7855   s_n_llhttp__internal__n_error_64: {
7856     state->error = 0x9;
7857     state->reason = "Invalid HTTP version";
7858     state->error_pos = (const char*) p;
7859     state->_current = (void*) (intptr_t) s_error;
7860     return s_error;
7861     /* UNREACHABLE */;
7862     abort();
7863   }
7864   s_n_llhttp__internal__n_invoke_load_http_minor_4: {
7865     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7866       case 0:
7867         goto s_n_llhttp__internal__n_res_http_end;
7868       case 1:
7869         goto s_n_llhttp__internal__n_res_http_end;
7870       default:
7871         goto s_n_llhttp__internal__n_error_64;
7872     }
7873     /* UNREACHABLE */;
7874     abort();
7875   }
7876   s_n_llhttp__internal__n_error_65: {
7877     state->error = 0x9;
7878     state->reason = "Invalid HTTP version";
7879     state->error_pos = (const char*) p;
7880     state->_current = (void*) (intptr_t) s_error;
7881     return s_error;
7882     /* UNREACHABLE */;
7883     abort();
7884   }
7885   s_n_llhttp__internal__n_invoke_load_http_minor_5: {
7886     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
7887       case 0:
7888         goto s_n_llhttp__internal__n_res_http_end;
7889       default:
7890         goto s_n_llhttp__internal__n_error_65;
7891     }
7892     /* UNREACHABLE */;
7893     abort();
7894   }
7895   s_n_llhttp__internal__n_error_58: {
7896     state->error = 0x9;
7897     state->reason = "Invalid HTTP version";
7898     state->error_pos = (const char*) p;
7899     state->_current = (void*) (intptr_t) s_error;
7900     return s_error;
7901     /* UNREACHABLE */;
7902     abort();
7903   }
7904   s_n_llhttp__internal__n_invoke_load_http_major_1: {
7905     switch (llhttp__internal__c_load_http_major(state, p, endp)) {
7906       case 0:
7907         goto s_n_llhttp__internal__n_invoke_load_http_minor_3;
7908       case 1:
7909         goto s_n_llhttp__internal__n_invoke_load_http_minor_4;
7910       case 2:
7911         goto s_n_llhttp__internal__n_invoke_load_http_minor_5;
7912       default:
7913         goto s_n_llhttp__internal__n_error_58;
7914     }
7915     /* UNREACHABLE */;
7916     abort();
7917   }
7918   s_n_llhttp__internal__n_invoke_test_lenient_flags_10: {
7919     switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) {
7920       case 1:
7921         goto s_n_llhttp__internal__n_res_http_end;
7922       default:
7923         goto s_n_llhttp__internal__n_invoke_load_http_major_1;
7924     }
7925     /* UNREACHABLE */;
7926     abort();
7927   }
7928   s_n_llhttp__internal__n_invoke_store_http_minor_1: {
7929     switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) {
7930       default:
7931         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10;
7932     }
7933     /* UNREACHABLE */;
7934     abort();
7935   }
7936   s_n_llhttp__internal__n_error_66: {
7937     state->error = 0x9;
7938     state->reason = "Invalid minor version";
7939     state->error_pos = (const char*) p;
7940     state->_current = (void*) (intptr_t) s_error;
7941     return s_error;
7942     /* UNREACHABLE */;
7943     abort();
7944   }
7945   s_n_llhttp__internal__n_error_67: {
7946     state->error = 0x9;
7947     state->reason = "Expected dot";
7948     state->error_pos = (const char*) p;
7949     state->_current = (void*) (intptr_t) s_error;
7950     return s_error;
7951     /* UNREACHABLE */;
7952     abort();
7953   }
7954   s_n_llhttp__internal__n_invoke_store_http_major_1: {
7955     switch (llhttp__internal__c_store_http_major(state, p, endp, match)) {
7956       default:
7957         goto s_n_llhttp__internal__n_res_http_dot;
7958     }
7959     /* UNREACHABLE */;
7960     abort();
7961   }
7962   s_n_llhttp__internal__n_error_68: {
7963     state->error = 0x9;
7964     state->reason = "Invalid major version";
7965     state->error_pos = (const char*) p;
7966     state->_current = (void*) (intptr_t) s_error;
7967     return s_error;
7968     /* UNREACHABLE */;
7969     abort();
7970   }
7971   s_n_llhttp__internal__n_error_71: {
7972     state->error = 0x8;
7973     state->reason = "Expected HTTP/";
7974     state->error_pos = (const char*) p;
7975     state->_current = (void*) (intptr_t) s_error;
7976     return s_error;
7977     /* UNREACHABLE */;
7978     abort();
7979   }
7980   s_n_llhttp__internal__n_invoke_update_type: {
7981     switch (llhttp__internal__c_update_type(state, p, endp)) {
7982       default:
7983         goto s_n_llhttp__internal__n_req_first_space_before_url;
7984     }
7985     /* UNREACHABLE */;
7986     abort();
7987   }
7988   s_n_llhttp__internal__n_invoke_store_method: {
7989     switch (llhttp__internal__c_store_method(state, p, endp, match)) {
7990       default:
7991         goto s_n_llhttp__internal__n_invoke_update_type;
7992     }
7993     /* UNREACHABLE */;
7994     abort();
7995   }
7996   s_n_llhttp__internal__n_error_69: {
7997     state->error = 0x8;
7998     state->reason = "Invalid word encountered";
7999     state->error_pos = (const char*) p;
8000     state->_current = (void*) (intptr_t) s_error;
8001     return s_error;
8002     /* UNREACHABLE */;
8003     abort();
8004   }
8005   s_n_llhttp__internal__n_invoke_update_type_1: {
8006     switch (llhttp__internal__c_update_type_1(state, p, endp)) {
8007       default:
8008         goto s_n_llhttp__internal__n_res_http_major;
8009     }
8010     /* UNREACHABLE */;
8011     abort();
8012   }
8013   s_n_llhttp__internal__n_invoke_update_type_2: {
8014     switch (llhttp__internal__c_update_type(state, p, endp)) {
8015       default:
8016         goto s_n_llhttp__internal__n_start_req;
8017     }
8018     /* UNREACHABLE */;
8019     abort();
8020   }
8021   s_n_llhttp__internal__n_pause_8: {
8022     state->error = 0x15;
8023     state->reason = "on_message_begin pause";
8024     state->error_pos = (const char*) p;
8025     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_load_type;
8026     return s_error;
8027     /* UNREACHABLE */;
8028     abort();
8029   }
8030   s_n_llhttp__internal__n_error: {
8031     state->error = 0x10;
8032     state->reason = "`on_message_begin` callback error";
8033     state->error_pos = (const char*) p;
8034     state->_current = (void*) (intptr_t) s_error;
8035     return s_error;
8036     /* UNREACHABLE */;
8037     abort();
8038   }
8039   s_n_llhttp__internal__n_invoke_llhttp__on_message_begin: {
8040     switch (llhttp__on_message_begin(state, p, endp)) {
8041       case 0:
8042         goto s_n_llhttp__internal__n_invoke_load_type;
8043       case 21:
8044         goto s_n_llhttp__internal__n_pause_8;
8045       default:
8046         goto s_n_llhttp__internal__n_error;
8047     }
8048     /* UNREACHABLE */;
8049     abort();
8050   }
8051   s_n_llhttp__internal__n_invoke_update_finish: {
8052     switch (llhttp__internal__c_update_finish(state, p, endp)) {
8053       default:
8054         goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin;
8055     }
8056     /* UNREACHABLE */;
8057     abort();
8058   }
8059 }
8060 
llhttp__internal_execute(llhttp__internal_t * state,const char * p,const char * endp)8061 int llhttp__internal_execute(llhttp__internal_t* state, const char* p, const char* endp) {
8062   llparse_state_t next;
8063 
8064   /* check lingering errors */
8065   if (state->error != 0) {
8066     return state->error;
8067   }
8068 
8069   /* restart spans */
8070   if (state->_span_pos0 != NULL) {
8071     state->_span_pos0 = (void*) p;
8072   }
8073 
8074   next = llhttp__internal__run(state, (const unsigned char*) p, (const unsigned char*) endp);
8075   if (next == s_error) {
8076     return state->error;
8077   }
8078   state->_current = (void*) (intptr_t) next;
8079 
8080   /* execute spans */
8081   if (state->_span_pos0 != NULL) {
8082     int error;
8083 
8084     error = ((llhttp__internal__span_cb) state->_span_cb0)(state, state->_span_pos0, (const char*) endp);
8085     if (error != 0) {
8086       state->error = error;
8087       state->error_pos = endp;
8088       return error;
8089     }
8090   }
8091 
8092   return 0;
8093 }
8094 
8095 #else  /* !LLHTTP_STRICT_MODE */
8096 
8097 #include <stdlib.h>
8098 #include <stdint.h>
8099 #include <string.h>
8100 
8101 #ifdef __SSE4_2__
8102  #ifdef _MSC_VER
8103   #include <nmmintrin.h>
8104  #else  /* !_MSC_VER */
8105   #include <x86intrin.h>
8106  #endif  /* _MSC_VER */
8107 #endif  /* __SSE4_2__ */
8108 
8109 #ifdef _MSC_VER
8110  #define ALIGN(n) _declspec(align(n))
8111 #else  /* !_MSC_VER */
8112  #define ALIGN(n) __attribute__((aligned(n)))
8113 #endif  /* _MSC_VER */
8114 
8115 #include "llhttp.h"
8116 
8117 typedef int (*llhttp__internal__span_cb)(
8118              llhttp__internal_t*, const char*, const char*);
8119 
8120 #ifdef __SSE4_2__
8121 static const unsigned char ALIGN(16) llparse_blob0[] = {
8122   0x9, 0x9, 0xc, 0xc, '!', '"', '$', '>', '@', '~', 0x80,
8123   0xff, 0x0, 0x0, 0x0, 0x0
8124 };
8125 #endif  /* __SSE4_2__ */
8126 static const unsigned char llparse_blob1[] = {
8127   'o', 'n'
8128 };
8129 static const unsigned char llparse_blob2[] = {
8130   'e', 'c', 't', 'i', 'o', 'n'
8131 };
8132 static const unsigned char llparse_blob3[] = {
8133   'l', 'o', 's', 'e'
8134 };
8135 static const unsigned char llparse_blob4[] = {
8136   'e', 'e', 'p', '-', 'a', 'l', 'i', 'v', 'e'
8137 };
8138 static const unsigned char llparse_blob5[] = {
8139   'p', 'g', 'r', 'a', 'd', 'e'
8140 };
8141 static const unsigned char llparse_blob6[] = {
8142   'c', 'h', 'u', 'n', 'k', 'e', 'd'
8143 };
8144 #ifdef __SSE4_2__
8145 static const unsigned char ALIGN(16) llparse_blob7[] = {
8146   0x9, 0x9, ' ', '~', 0x80, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
8147   0x0, 0x0, 0x0, 0x0, 0x0
8148 };
8149 #endif  /* __SSE4_2__ */
8150 #ifdef __SSE4_2__
8151 static const unsigned char ALIGN(16) llparse_blob8[] = {
8152   ' ', '!', '#', '\'', '*', '+', '-', '.', '0', '9', 'A',
8153   'Z', '^', 'z', '|', '|'
8154 };
8155 #endif  /* __SSE4_2__ */
8156 #ifdef __SSE4_2__
8157 static const unsigned char ALIGN(16) llparse_blob9[] = {
8158   '~', '~', 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
8159   0x0, 0x0, 0x0, 0x0, 0x0
8160 };
8161 #endif  /* __SSE4_2__ */
8162 static const unsigned char llparse_blob10[] = {
8163   'e', 'n', 't', '-', 'l', 'e', 'n', 'g', 't', 'h'
8164 };
8165 static const unsigned char llparse_blob11[] = {
8166   'r', 'o', 'x', 'y', '-', 'c', 'o', 'n', 'n', 'e', 'c',
8167   't', 'i', 'o', 'n'
8168 };
8169 static const unsigned char llparse_blob12[] = {
8170   'r', 'a', 'n', 's', 'f', 'e', 'r', '-', 'e', 'n', 'c',
8171   'o', 'd', 'i', 'n', 'g'
8172 };
8173 static const unsigned char llparse_blob13[] = {
8174   'p', 'g', 'r', 'a', 'd', 'e'
8175 };
8176 static const unsigned char llparse_blob14[] = {
8177   0xd, 0xa
8178 };
8179 static const unsigned char llparse_blob15[] = {
8180   'T', 'T', 'P', '/'
8181 };
8182 static const unsigned char llparse_blob16[] = {
8183   0xd, 0xa, 0xd, 0xa, 'S', 'M', 0xd, 0xa, 0xd, 0xa
8184 };
8185 static const unsigned char llparse_blob17[] = {
8186   'C', 'E', '/'
8187 };
8188 static const unsigned char llparse_blob18[] = {
8189   'T', 'S', 'P', '/'
8190 };
8191 static const unsigned char llparse_blob19[] = {
8192   'N', 'O', 'U', 'N', 'C', 'E'
8193 };
8194 static const unsigned char llparse_blob20[] = {
8195   'I', 'N', 'D'
8196 };
8197 static const unsigned char llparse_blob21[] = {
8198   'E', 'C', 'K', 'O', 'U', 'T'
8199 };
8200 static const unsigned char llparse_blob22[] = {
8201   'N', 'E', 'C', 'T'
8202 };
8203 static const unsigned char llparse_blob23[] = {
8204   'E', 'T', 'E'
8205 };
8206 static const unsigned char llparse_blob24[] = {
8207   'C', 'R', 'I', 'B', 'E'
8208 };
8209 static const unsigned char llparse_blob25[] = {
8210   'L', 'U', 'S', 'H'
8211 };
8212 static const unsigned char llparse_blob26[] = {
8213   'E', 'T'
8214 };
8215 static const unsigned char llparse_blob27[] = {
8216   'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R'
8217 };
8218 static const unsigned char llparse_blob28[] = {
8219   'E', 'A', 'D'
8220 };
8221 static const unsigned char llparse_blob29[] = {
8222   'N', 'K'
8223 };
8224 static const unsigned char llparse_blob30[] = {
8225   'C', 'K'
8226 };
8227 static const unsigned char llparse_blob31[] = {
8228   'S', 'E', 'A', 'R', 'C', 'H'
8229 };
8230 static const unsigned char llparse_blob32[] = {
8231   'R', 'G', 'E'
8232 };
8233 static const unsigned char llparse_blob33[] = {
8234   'C', 'T', 'I', 'V', 'I', 'T', 'Y'
8235 };
8236 static const unsigned char llparse_blob34[] = {
8237   'L', 'E', 'N', 'D', 'A', 'R'
8238 };
8239 static const unsigned char llparse_blob35[] = {
8240   'V', 'E'
8241 };
8242 static const unsigned char llparse_blob36[] = {
8243   'O', 'T', 'I', 'F', 'Y'
8244 };
8245 static const unsigned char llparse_blob37[] = {
8246   'P', 'T', 'I', 'O', 'N', 'S'
8247 };
8248 static const unsigned char llparse_blob38[] = {
8249   'C', 'H'
8250 };
8251 static const unsigned char llparse_blob39[] = {
8252   'S', 'E'
8253 };
8254 static const unsigned char llparse_blob40[] = {
8255   'A', 'Y'
8256 };
8257 static const unsigned char llparse_blob41[] = {
8258   'S', 'T'
8259 };
8260 static const unsigned char llparse_blob42[] = {
8261   'I', 'N', 'D'
8262 };
8263 static const unsigned char llparse_blob43[] = {
8264   'A', 'T', 'C', 'H'
8265 };
8266 static const unsigned char llparse_blob44[] = {
8267   'G', 'E'
8268 };
8269 static const unsigned char llparse_blob45[] = {
8270   'I', 'N', 'D'
8271 };
8272 static const unsigned char llparse_blob46[] = {
8273   'O', 'R', 'D'
8274 };
8275 static const unsigned char llparse_blob47[] = {
8276   'I', 'R', 'E', 'C', 'T'
8277 };
8278 static const unsigned char llparse_blob48[] = {
8279   'O', 'R', 'T'
8280 };
8281 static const unsigned char llparse_blob49[] = {
8282   'R', 'C', 'H'
8283 };
8284 static const unsigned char llparse_blob50[] = {
8285   'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R'
8286 };
8287 static const unsigned char llparse_blob51[] = {
8288   'U', 'R', 'C', 'E'
8289 };
8290 static const unsigned char llparse_blob52[] = {
8291   'B', 'S', 'C', 'R', 'I', 'B', 'E'
8292 };
8293 static const unsigned char llparse_blob53[] = {
8294   'A', 'R', 'D', 'O', 'W', 'N'
8295 };
8296 static const unsigned char llparse_blob54[] = {
8297   'A', 'C', 'E'
8298 };
8299 static const unsigned char llparse_blob55[] = {
8300   'I', 'N', 'D'
8301 };
8302 static const unsigned char llparse_blob56[] = {
8303   'N', 'K'
8304 };
8305 static const unsigned char llparse_blob57[] = {
8306   'C', 'K'
8307 };
8308 static const unsigned char llparse_blob58[] = {
8309   'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E'
8310 };
8311 static const unsigned char llparse_blob59[] = {
8312   'H', 'T', 'T', 'P', '/'
8313 };
8314 static const unsigned char llparse_blob60[] = {
8315   'A', 'D'
8316 };
8317 static const unsigned char llparse_blob61[] = {
8318   'T', 'P', '/'
8319 };
8320 
8321 enum llparse_match_status_e {
8322   kMatchComplete,
8323   kMatchPause,
8324   kMatchMismatch
8325 };
8326 typedef enum llparse_match_status_e llparse_match_status_t;
8327 
8328 struct llparse_match_s {
8329   llparse_match_status_t status;
8330   const unsigned char* current;
8331 };
8332 typedef struct llparse_match_s llparse_match_t;
8333 
llparse__match_sequence_to_lower(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)8334 static llparse_match_t llparse__match_sequence_to_lower(
8335     llhttp__internal_t* s, const unsigned char* p,
8336     const unsigned char* endp,
8337     const unsigned char* seq, uint32_t seq_len) {
8338   uint32_t index;
8339   llparse_match_t res;
8340 
8341   index = s->_index;
8342   for (; p != endp; p++) {
8343     unsigned char current;
8344 
8345     current = ((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p));
8346     if (current == seq[index]) {
8347       if (++index == seq_len) {
8348         res.status = kMatchComplete;
8349         goto reset;
8350       }
8351     } else {
8352       res.status = kMatchMismatch;
8353       goto reset;
8354     }
8355   }
8356   s->_index = index;
8357   res.status = kMatchPause;
8358   res.current = p;
8359   return res;
8360 reset:
8361   s->_index = 0;
8362   res.current = p;
8363   return res;
8364 }
8365 
llparse__match_sequence_to_lower_unsafe(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)8366 static llparse_match_t llparse__match_sequence_to_lower_unsafe(
8367     llhttp__internal_t* s, const unsigned char* p,
8368     const unsigned char* endp,
8369     const unsigned char* seq, uint32_t seq_len) {
8370   uint32_t index;
8371   llparse_match_t res;
8372 
8373   index = s->_index;
8374   for (; p != endp; p++) {
8375     unsigned char current;
8376 
8377     current = ((*p) | 0x20);
8378     if (current == seq[index]) {
8379       if (++index == seq_len) {
8380         res.status = kMatchComplete;
8381         goto reset;
8382       }
8383     } else {
8384       res.status = kMatchMismatch;
8385       goto reset;
8386     }
8387   }
8388   s->_index = index;
8389   res.status = kMatchPause;
8390   res.current = p;
8391   return res;
8392 reset:
8393   s->_index = 0;
8394   res.current = p;
8395   return res;
8396 }
8397 
llparse__match_sequence_id(llhttp__internal_t * s,const unsigned char * p,const unsigned char * endp,const unsigned char * seq,uint32_t seq_len)8398 static llparse_match_t llparse__match_sequence_id(
8399     llhttp__internal_t* s, const unsigned char* p,
8400     const unsigned char* endp,
8401     const unsigned char* seq, uint32_t seq_len) {
8402   uint32_t index;
8403   llparse_match_t res;
8404 
8405   index = s->_index;
8406   for (; p != endp; p++) {
8407     unsigned char current;
8408 
8409     current = *p;
8410     if (current == seq[index]) {
8411       if (++index == seq_len) {
8412         res.status = kMatchComplete;
8413         goto reset;
8414       }
8415     } else {
8416       res.status = kMatchMismatch;
8417       goto reset;
8418     }
8419   }
8420   s->_index = index;
8421   res.status = kMatchPause;
8422   res.current = p;
8423   return res;
8424 reset:
8425   s->_index = 0;
8426   res.current = p;
8427   return res;
8428 }
8429 
8430 enum llparse_state_e {
8431   s_error,
8432   s_n_llhttp__internal__n_closed,
8433   s_n_llhttp__internal__n_invoke_llhttp__after_message_complete,
8434   s_n_llhttp__internal__n_pause_1,
8435   s_n_llhttp__internal__n_invoke_is_equal_upgrade,
8436   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2,
8437   s_n_llhttp__internal__n_chunk_data_almost_done_skip,
8438   s_n_llhttp__internal__n_chunk_data_almost_done,
8439   s_n_llhttp__internal__n_consume_content_length,
8440   s_n_llhttp__internal__n_span_start_llhttp__on_body,
8441   s_n_llhttp__internal__n_invoke_is_equal_content_length,
8442   s_n_llhttp__internal__n_chunk_size_almost_done,
8443   s_n_llhttp__internal__n_chunk_parameters,
8444   s_n_llhttp__internal__n_chunk_size_otherwise,
8445   s_n_llhttp__internal__n_chunk_size,
8446   s_n_llhttp__internal__n_chunk_size_digit,
8447   s_n_llhttp__internal__n_invoke_update_content_length,
8448   s_n_llhttp__internal__n_consume_content_length_1,
8449   s_n_llhttp__internal__n_span_start_llhttp__on_body_1,
8450   s_n_llhttp__internal__n_eof,
8451   s_n_llhttp__internal__n_span_start_llhttp__on_body_2,
8452   s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete,
8453   s_n_llhttp__internal__n_headers_almost_done,
8454   s_n_llhttp__internal__n_header_field_colon_discard_ws,
8455   s_n_llhttp__internal__n_error_14,
8456   s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete,
8457   s_n_llhttp__internal__n_span_start_llhttp__on_header_value,
8458   s_n_llhttp__internal__n_header_value_discard_lws,
8459   s_n_llhttp__internal__n_header_value_discard_ws_almost_done,
8460   s_n_llhttp__internal__n_header_value_lws,
8461   s_n_llhttp__internal__n_header_value_almost_done,
8462   s_n_llhttp__internal__n_header_value_lenient,
8463   s_n_llhttp__internal__n_error_20,
8464   s_n_llhttp__internal__n_header_value_otherwise,
8465   s_n_llhttp__internal__n_header_value_connection_token,
8466   s_n_llhttp__internal__n_header_value_connection_ws,
8467   s_n_llhttp__internal__n_header_value_connection_1,
8468   s_n_llhttp__internal__n_header_value_connection_2,
8469   s_n_llhttp__internal__n_header_value_connection_3,
8470   s_n_llhttp__internal__n_header_value_connection,
8471   s_n_llhttp__internal__n_error_22,
8472   s_n_llhttp__internal__n_error_23,
8473   s_n_llhttp__internal__n_header_value_content_length_ws,
8474   s_n_llhttp__internal__n_header_value_content_length,
8475   s_n_llhttp__internal__n_error_25,
8476   s_n_llhttp__internal__n_error_24,
8477   s_n_llhttp__internal__n_header_value_te_token_ows,
8478   s_n_llhttp__internal__n_header_value,
8479   s_n_llhttp__internal__n_header_value_te_token,
8480   s_n_llhttp__internal__n_header_value_te_chunked_last,
8481   s_n_llhttp__internal__n_header_value_te_chunked,
8482   s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1,
8483   s_n_llhttp__internal__n_header_value_discard_ws,
8484   s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete,
8485   s_n_llhttp__internal__n_header_field_general_otherwise,
8486   s_n_llhttp__internal__n_header_field_general,
8487   s_n_llhttp__internal__n_header_field_colon,
8488   s_n_llhttp__internal__n_header_field_3,
8489   s_n_llhttp__internal__n_header_field_4,
8490   s_n_llhttp__internal__n_header_field_2,
8491   s_n_llhttp__internal__n_header_field_1,
8492   s_n_llhttp__internal__n_header_field_5,
8493   s_n_llhttp__internal__n_header_field_6,
8494   s_n_llhttp__internal__n_header_field_7,
8495   s_n_llhttp__internal__n_header_field,
8496   s_n_llhttp__internal__n_span_start_llhttp__on_header_field,
8497   s_n_llhttp__internal__n_header_field_start,
8498   s_n_llhttp__internal__n_url_skip_to_http09,
8499   s_n_llhttp__internal__n_url_skip_lf_to_http09,
8500   s_n_llhttp__internal__n_req_pri_upgrade,
8501   s_n_llhttp__internal__n_req_http_complete_1,
8502   s_n_llhttp__internal__n_req_http_complete,
8503   s_n_llhttp__internal__n_req_http_minor,
8504   s_n_llhttp__internal__n_req_http_dot,
8505   s_n_llhttp__internal__n_req_http_major,
8506   s_n_llhttp__internal__n_req_http_start_1,
8507   s_n_llhttp__internal__n_req_http_start_2,
8508   s_n_llhttp__internal__n_req_http_start_3,
8509   s_n_llhttp__internal__n_req_http_start,
8510   s_n_llhttp__internal__n_url_skip_to_http,
8511   s_n_llhttp__internal__n_url_fragment,
8512   s_n_llhttp__internal__n_span_end_stub_query_3,
8513   s_n_llhttp__internal__n_url_query,
8514   s_n_llhttp__internal__n_url_query_or_fragment,
8515   s_n_llhttp__internal__n_url_path,
8516   s_n_llhttp__internal__n_span_start_stub_path_2,
8517   s_n_llhttp__internal__n_span_start_stub_path,
8518   s_n_llhttp__internal__n_span_start_stub_path_1,
8519   s_n_llhttp__internal__n_url_server_with_at,
8520   s_n_llhttp__internal__n_url_server,
8521   s_n_llhttp__internal__n_url_schema_delim_1,
8522   s_n_llhttp__internal__n_url_schema_delim,
8523   s_n_llhttp__internal__n_span_end_stub_schema,
8524   s_n_llhttp__internal__n_url_schema,
8525   s_n_llhttp__internal__n_url_start,
8526   s_n_llhttp__internal__n_span_start_llhttp__on_url_1,
8527   s_n_llhttp__internal__n_span_start_llhttp__on_url,
8528   s_n_llhttp__internal__n_req_spaces_before_url,
8529   s_n_llhttp__internal__n_req_first_space_before_url,
8530   s_n_llhttp__internal__n_start_req_2,
8531   s_n_llhttp__internal__n_start_req_3,
8532   s_n_llhttp__internal__n_start_req_1,
8533   s_n_llhttp__internal__n_start_req_4,
8534   s_n_llhttp__internal__n_start_req_6,
8535   s_n_llhttp__internal__n_start_req_8,
8536   s_n_llhttp__internal__n_start_req_9,
8537   s_n_llhttp__internal__n_start_req_7,
8538   s_n_llhttp__internal__n_start_req_5,
8539   s_n_llhttp__internal__n_start_req_12,
8540   s_n_llhttp__internal__n_start_req_13,
8541   s_n_llhttp__internal__n_start_req_11,
8542   s_n_llhttp__internal__n_start_req_10,
8543   s_n_llhttp__internal__n_start_req_14,
8544   s_n_llhttp__internal__n_start_req_17,
8545   s_n_llhttp__internal__n_start_req_16,
8546   s_n_llhttp__internal__n_start_req_15,
8547   s_n_llhttp__internal__n_start_req_18,
8548   s_n_llhttp__internal__n_start_req_20,
8549   s_n_llhttp__internal__n_start_req_21,
8550   s_n_llhttp__internal__n_start_req_19,
8551   s_n_llhttp__internal__n_start_req_23,
8552   s_n_llhttp__internal__n_start_req_24,
8553   s_n_llhttp__internal__n_start_req_26,
8554   s_n_llhttp__internal__n_start_req_28,
8555   s_n_llhttp__internal__n_start_req_29,
8556   s_n_llhttp__internal__n_start_req_27,
8557   s_n_llhttp__internal__n_start_req_25,
8558   s_n_llhttp__internal__n_start_req_30,
8559   s_n_llhttp__internal__n_start_req_22,
8560   s_n_llhttp__internal__n_start_req_31,
8561   s_n_llhttp__internal__n_start_req_32,
8562   s_n_llhttp__internal__n_start_req_35,
8563   s_n_llhttp__internal__n_start_req_36,
8564   s_n_llhttp__internal__n_start_req_34,
8565   s_n_llhttp__internal__n_start_req_37,
8566   s_n_llhttp__internal__n_start_req_38,
8567   s_n_llhttp__internal__n_start_req_42,
8568   s_n_llhttp__internal__n_start_req_43,
8569   s_n_llhttp__internal__n_start_req_41,
8570   s_n_llhttp__internal__n_start_req_40,
8571   s_n_llhttp__internal__n_start_req_39,
8572   s_n_llhttp__internal__n_start_req_45,
8573   s_n_llhttp__internal__n_start_req_44,
8574   s_n_llhttp__internal__n_start_req_33,
8575   s_n_llhttp__internal__n_start_req_48,
8576   s_n_llhttp__internal__n_start_req_49,
8577   s_n_llhttp__internal__n_start_req_50,
8578   s_n_llhttp__internal__n_start_req_51,
8579   s_n_llhttp__internal__n_start_req_47,
8580   s_n_llhttp__internal__n_start_req_46,
8581   s_n_llhttp__internal__n_start_req_54,
8582   s_n_llhttp__internal__n_start_req_56,
8583   s_n_llhttp__internal__n_start_req_57,
8584   s_n_llhttp__internal__n_start_req_55,
8585   s_n_llhttp__internal__n_start_req_53,
8586   s_n_llhttp__internal__n_start_req_58,
8587   s_n_llhttp__internal__n_start_req_59,
8588   s_n_llhttp__internal__n_start_req_52,
8589   s_n_llhttp__internal__n_start_req_61,
8590   s_n_llhttp__internal__n_start_req_62,
8591   s_n_llhttp__internal__n_start_req_60,
8592   s_n_llhttp__internal__n_start_req_65,
8593   s_n_llhttp__internal__n_start_req_67,
8594   s_n_llhttp__internal__n_start_req_68,
8595   s_n_llhttp__internal__n_start_req_66,
8596   s_n_llhttp__internal__n_start_req_69,
8597   s_n_llhttp__internal__n_start_req_64,
8598   s_n_llhttp__internal__n_start_req_63,
8599   s_n_llhttp__internal__n_start_req,
8600   s_n_llhttp__internal__n_invoke_llhttp__on_status_complete,
8601   s_n_llhttp__internal__n_res_line_almost_done,
8602   s_n_llhttp__internal__n_res_status,
8603   s_n_llhttp__internal__n_span_start_llhttp__on_status,
8604   s_n_llhttp__internal__n_res_status_start,
8605   s_n_llhttp__internal__n_res_status_code_otherwise,
8606   s_n_llhttp__internal__n_res_status_code,
8607   s_n_llhttp__internal__n_res_http_end,
8608   s_n_llhttp__internal__n_res_http_minor,
8609   s_n_llhttp__internal__n_res_http_dot,
8610   s_n_llhttp__internal__n_res_http_major,
8611   s_n_llhttp__internal__n_start_res,
8612   s_n_llhttp__internal__n_req_or_res_method_2,
8613   s_n_llhttp__internal__n_req_or_res_method_3,
8614   s_n_llhttp__internal__n_req_or_res_method_1,
8615   s_n_llhttp__internal__n_req_or_res_method,
8616   s_n_llhttp__internal__n_start_req_or_res,
8617   s_n_llhttp__internal__n_invoke_load_type,
8618   s_n_llhttp__internal__n_start,
8619 };
8620 typedef enum llparse_state_e llparse_state_t;
8621 
8622 int llhttp__on_url(
8623     llhttp__internal_t* s, const unsigned char* p,
8624     const unsigned char* endp);
8625 
8626 int llhttp__on_header_field(
8627     llhttp__internal_t* s, const unsigned char* p,
8628     const unsigned char* endp);
8629 
8630 int llhttp__on_header_value(
8631     llhttp__internal_t* s, const unsigned char* p,
8632     const unsigned char* endp);
8633 
8634 int llhttp__on_body(
8635     llhttp__internal_t* s, const unsigned char* p,
8636     const unsigned char* endp);
8637 
8638 int llhttp__on_status(
8639     llhttp__internal_t* s, const unsigned char* p,
8640     const unsigned char* endp);
8641 
llhttp__internal__c_update_finish(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8642 int llhttp__internal__c_update_finish(
8643     llhttp__internal_t* state,
8644     const unsigned char* p,
8645     const unsigned char* endp) {
8646   state->finish = 2;
8647   return 0;
8648 }
8649 
8650 int llhttp__on_message_begin(
8651     llhttp__internal_t* s, const unsigned char* p,
8652     const unsigned char* endp);
8653 
llhttp__internal__c_load_type(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8654 int llhttp__internal__c_load_type(
8655     llhttp__internal_t* state,
8656     const unsigned char* p,
8657     const unsigned char* endp) {
8658   return state->type;
8659 }
8660 
llhttp__internal__c_store_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)8661 int llhttp__internal__c_store_method(
8662     llhttp__internal_t* state,
8663     const unsigned char* p,
8664     const unsigned char* endp,
8665     int match) {
8666   state->method = match;
8667   return 0;
8668 }
8669 
llhttp__internal__c_is_equal_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8670 int llhttp__internal__c_is_equal_method(
8671     llhttp__internal_t* state,
8672     const unsigned char* p,
8673     const unsigned char* endp) {
8674   return state->method == 5;
8675 }
8676 
llhttp__internal__c_update_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8677 int llhttp__internal__c_update_http_major(
8678     llhttp__internal_t* state,
8679     const unsigned char* p,
8680     const unsigned char* endp) {
8681   state->http_major = 0;
8682   return 0;
8683 }
8684 
llhttp__internal__c_update_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8685 int llhttp__internal__c_update_http_minor(
8686     llhttp__internal_t* state,
8687     const unsigned char* p,
8688     const unsigned char* endp) {
8689   state->http_minor = 9;
8690   return 0;
8691 }
8692 
8693 int llhttp__on_url_complete(
8694     llhttp__internal_t* s, const unsigned char* p,
8695     const unsigned char* endp);
8696 
llhttp__internal__c_test_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8697 int llhttp__internal__c_test_flags(
8698     llhttp__internal_t* state,
8699     const unsigned char* p,
8700     const unsigned char* endp) {
8701   return (state->flags & 128) == 128;
8702 }
8703 
8704 int llhttp__on_chunk_complete(
8705     llhttp__internal_t* s, const unsigned char* p,
8706     const unsigned char* endp);
8707 
8708 int llhttp__on_message_complete(
8709     llhttp__internal_t* s, const unsigned char* p,
8710     const unsigned char* endp);
8711 
llhttp__internal__c_is_equal_upgrade(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8712 int llhttp__internal__c_is_equal_upgrade(
8713     llhttp__internal_t* state,
8714     const unsigned char* p,
8715     const unsigned char* endp) {
8716   return state->upgrade == 1;
8717 }
8718 
8719 int llhttp__after_message_complete(
8720     llhttp__internal_t* s, const unsigned char* p,
8721     const unsigned char* endp);
8722 
llhttp__internal__c_update_finish_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8723 int llhttp__internal__c_update_finish_1(
8724     llhttp__internal_t* state,
8725     const unsigned char* p,
8726     const unsigned char* endp) {
8727   state->finish = 0;
8728   return 0;
8729 }
8730 
llhttp__internal__c_test_lenient_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8731 int llhttp__internal__c_test_lenient_flags(
8732     llhttp__internal_t* state,
8733     const unsigned char* p,
8734     const unsigned char* endp) {
8735   return (state->lenient_flags & 4) == 4;
8736 }
8737 
llhttp__internal__c_test_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8738 int llhttp__internal__c_test_flags_1(
8739     llhttp__internal_t* state,
8740     const unsigned char* p,
8741     const unsigned char* endp) {
8742   return (state->flags & 544) == 544;
8743 }
8744 
llhttp__internal__c_test_lenient_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8745 int llhttp__internal__c_test_lenient_flags_1(
8746     llhttp__internal_t* state,
8747     const unsigned char* p,
8748     const unsigned char* endp) {
8749   return (state->lenient_flags & 2) == 2;
8750 }
8751 
8752 int llhttp__before_headers_complete(
8753     llhttp__internal_t* s, const unsigned char* p,
8754     const unsigned char* endp);
8755 
8756 int llhttp__on_headers_complete(
8757     llhttp__internal_t* s, const unsigned char* p,
8758     const unsigned char* endp);
8759 
8760 int llhttp__after_headers_complete(
8761     llhttp__internal_t* s, const unsigned char* p,
8762     const unsigned char* endp);
8763 
llhttp__internal__c_update_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8764 int llhttp__internal__c_update_content_length(
8765     llhttp__internal_t* state,
8766     const unsigned char* p,
8767     const unsigned char* endp) {
8768   state->content_length = 0;
8769   return 0;
8770 }
8771 
llhttp__internal__c_mul_add_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)8772 int llhttp__internal__c_mul_add_content_length(
8773     llhttp__internal_t* state,
8774     const unsigned char* p,
8775     const unsigned char* endp,
8776     int match) {
8777   /* Multiplication overflow */
8778   if (state->content_length > 0xffffffffffffffffULL / 16) {
8779     return 1;
8780   }
8781 
8782   state->content_length *= 16;
8783 
8784   /* Addition overflow */
8785   if (match >= 0) {
8786     if (state->content_length > 0xffffffffffffffffULL - match) {
8787       return 1;
8788     }
8789   } else {
8790     if (state->content_length < 0ULL - match) {
8791       return 1;
8792     }
8793   }
8794   state->content_length += match;
8795   return 0;
8796 }
8797 
8798 int llhttp__on_chunk_header(
8799     llhttp__internal_t* s, const unsigned char* p,
8800     const unsigned char* endp);
8801 
llhttp__internal__c_is_equal_content_length(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8802 int llhttp__internal__c_is_equal_content_length(
8803     llhttp__internal_t* state,
8804     const unsigned char* p,
8805     const unsigned char* endp) {
8806   return state->content_length == 0;
8807 }
8808 
llhttp__internal__c_or_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8809 int llhttp__internal__c_or_flags(
8810     llhttp__internal_t* state,
8811     const unsigned char* p,
8812     const unsigned char* endp) {
8813   state->flags |= 128;
8814   return 0;
8815 }
8816 
llhttp__internal__c_update_finish_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8817 int llhttp__internal__c_update_finish_3(
8818     llhttp__internal_t* state,
8819     const unsigned char* p,
8820     const unsigned char* endp) {
8821   state->finish = 1;
8822   return 0;
8823 }
8824 
llhttp__internal__c_or_flags_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8825 int llhttp__internal__c_or_flags_1(
8826     llhttp__internal_t* state,
8827     const unsigned char* p,
8828     const unsigned char* endp) {
8829   state->flags |= 64;
8830   return 0;
8831 }
8832 
llhttp__internal__c_update_upgrade(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8833 int llhttp__internal__c_update_upgrade(
8834     llhttp__internal_t* state,
8835     const unsigned char* p,
8836     const unsigned char* endp) {
8837   state->upgrade = 1;
8838   return 0;
8839 }
8840 
llhttp__internal__c_store_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)8841 int llhttp__internal__c_store_header_state(
8842     llhttp__internal_t* state,
8843     const unsigned char* p,
8844     const unsigned char* endp,
8845     int match) {
8846   state->header_state = match;
8847   return 0;
8848 }
8849 
llhttp__internal__c_test_lenient_flags_2(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8850 int llhttp__internal__c_test_lenient_flags_2(
8851     llhttp__internal_t* state,
8852     const unsigned char* p,
8853     const unsigned char* endp) {
8854   return (state->lenient_flags & 1) == 1;
8855 }
8856 
8857 int llhttp__on_header_field_complete(
8858     llhttp__internal_t* s, const unsigned char* p,
8859     const unsigned char* endp);
8860 
llhttp__internal__c_load_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8861 int llhttp__internal__c_load_header_state(
8862     llhttp__internal_t* state,
8863     const unsigned char* p,
8864     const unsigned char* endp) {
8865   return state->header_state;
8866 }
8867 
llhttp__internal__c_or_flags_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8868 int llhttp__internal__c_or_flags_3(
8869     llhttp__internal_t* state,
8870     const unsigned char* p,
8871     const unsigned char* endp) {
8872   state->flags |= 1;
8873   return 0;
8874 }
8875 
llhttp__internal__c_update_header_state(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8876 int llhttp__internal__c_update_header_state(
8877     llhttp__internal_t* state,
8878     const unsigned char* p,
8879     const unsigned char* endp) {
8880   state->header_state = 1;
8881   return 0;
8882 }
8883 
8884 int llhttp__on_header_value_complete(
8885     llhttp__internal_t* s, const unsigned char* p,
8886     const unsigned char* endp);
8887 
llhttp__internal__c_or_flags_4(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8888 int llhttp__internal__c_or_flags_4(
8889     llhttp__internal_t* state,
8890     const unsigned char* p,
8891     const unsigned char* endp) {
8892   state->flags |= 2;
8893   return 0;
8894 }
8895 
llhttp__internal__c_or_flags_5(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8896 int llhttp__internal__c_or_flags_5(
8897     llhttp__internal_t* state,
8898     const unsigned char* p,
8899     const unsigned char* endp) {
8900   state->flags |= 4;
8901   return 0;
8902 }
8903 
llhttp__internal__c_or_flags_6(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8904 int llhttp__internal__c_or_flags_6(
8905     llhttp__internal_t* state,
8906     const unsigned char* p,
8907     const unsigned char* endp) {
8908   state->flags |= 8;
8909   return 0;
8910 }
8911 
llhttp__internal__c_update_header_state_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8912 int llhttp__internal__c_update_header_state_3(
8913     llhttp__internal_t* state,
8914     const unsigned char* p,
8915     const unsigned char* endp) {
8916   state->header_state = 6;
8917   return 0;
8918 }
8919 
llhttp__internal__c_update_header_state_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8920 int llhttp__internal__c_update_header_state_1(
8921     llhttp__internal_t* state,
8922     const unsigned char* p,
8923     const unsigned char* endp) {
8924   state->header_state = 0;
8925   return 0;
8926 }
8927 
llhttp__internal__c_update_header_state_6(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8928 int llhttp__internal__c_update_header_state_6(
8929     llhttp__internal_t* state,
8930     const unsigned char* p,
8931     const unsigned char* endp) {
8932   state->header_state = 5;
8933   return 0;
8934 }
8935 
llhttp__internal__c_update_header_state_7(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8936 int llhttp__internal__c_update_header_state_7(
8937     llhttp__internal_t* state,
8938     const unsigned char* p,
8939     const unsigned char* endp) {
8940   state->header_state = 7;
8941   return 0;
8942 }
8943 
llhttp__internal__c_test_flags_2(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8944 int llhttp__internal__c_test_flags_2(
8945     llhttp__internal_t* state,
8946     const unsigned char* p,
8947     const unsigned char* endp) {
8948   return (state->flags & 32) == 32;
8949 }
8950 
llhttp__internal__c_mul_add_content_length_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)8951 int llhttp__internal__c_mul_add_content_length_1(
8952     llhttp__internal_t* state,
8953     const unsigned char* p,
8954     const unsigned char* endp,
8955     int match) {
8956   /* Multiplication overflow */
8957   if (state->content_length > 0xffffffffffffffffULL / 10) {
8958     return 1;
8959   }
8960 
8961   state->content_length *= 10;
8962 
8963   /* Addition overflow */
8964   if (match >= 0) {
8965     if (state->content_length > 0xffffffffffffffffULL - match) {
8966       return 1;
8967     }
8968   } else {
8969     if (state->content_length < 0ULL - match) {
8970       return 1;
8971     }
8972   }
8973   state->content_length += match;
8974   return 0;
8975 }
8976 
llhttp__internal__c_or_flags_15(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8977 int llhttp__internal__c_or_flags_15(
8978     llhttp__internal_t* state,
8979     const unsigned char* p,
8980     const unsigned char* endp) {
8981   state->flags |= 32;
8982   return 0;
8983 }
8984 
llhttp__internal__c_test_flags_3(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8985 int llhttp__internal__c_test_flags_3(
8986     llhttp__internal_t* state,
8987     const unsigned char* p,
8988     const unsigned char* endp) {
8989   return (state->flags & 8) == 8;
8990 }
8991 
llhttp__internal__c_test_lenient_flags_7(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8992 int llhttp__internal__c_test_lenient_flags_7(
8993     llhttp__internal_t* state,
8994     const unsigned char* p,
8995     const unsigned char* endp) {
8996   return (state->lenient_flags & 8) == 8;
8997 }
8998 
llhttp__internal__c_or_flags_16(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)8999 int llhttp__internal__c_or_flags_16(
9000     llhttp__internal_t* state,
9001     const unsigned char* p,
9002     const unsigned char* endp) {
9003   state->flags |= 512;
9004   return 0;
9005 }
9006 
llhttp__internal__c_and_flags(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9007 int llhttp__internal__c_and_flags(
9008     llhttp__internal_t* state,
9009     const unsigned char* p,
9010     const unsigned char* endp) {
9011   state->flags &= -9;
9012   return 0;
9013 }
9014 
llhttp__internal__c_update_header_state_8(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9015 int llhttp__internal__c_update_header_state_8(
9016     llhttp__internal_t* state,
9017     const unsigned char* p,
9018     const unsigned char* endp) {
9019   state->header_state = 8;
9020   return 0;
9021 }
9022 
llhttp__internal__c_or_flags_18(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9023 int llhttp__internal__c_or_flags_18(
9024     llhttp__internal_t* state,
9025     const unsigned char* p,
9026     const unsigned char* endp) {
9027   state->flags |= 16;
9028   return 0;
9029 }
9030 
llhttp__internal__c_load_method(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9031 int llhttp__internal__c_load_method(
9032     llhttp__internal_t* state,
9033     const unsigned char* p,
9034     const unsigned char* endp) {
9035   return state->method;
9036 }
9037 
llhttp__internal__c_store_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)9038 int llhttp__internal__c_store_http_major(
9039     llhttp__internal_t* state,
9040     const unsigned char* p,
9041     const unsigned char* endp,
9042     int match) {
9043   state->http_major = match;
9044   return 0;
9045 }
9046 
llhttp__internal__c_store_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)9047 int llhttp__internal__c_store_http_minor(
9048     llhttp__internal_t* state,
9049     const unsigned char* p,
9050     const unsigned char* endp,
9051     int match) {
9052   state->http_minor = match;
9053   return 0;
9054 }
9055 
llhttp__internal__c_test_lenient_flags_9(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9056 int llhttp__internal__c_test_lenient_flags_9(
9057     llhttp__internal_t* state,
9058     const unsigned char* p,
9059     const unsigned char* endp) {
9060   return (state->lenient_flags & 16) == 16;
9061 }
9062 
llhttp__internal__c_load_http_major(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9063 int llhttp__internal__c_load_http_major(
9064     llhttp__internal_t* state,
9065     const unsigned char* p,
9066     const unsigned char* endp) {
9067   return state->http_major;
9068 }
9069 
llhttp__internal__c_load_http_minor(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9070 int llhttp__internal__c_load_http_minor(
9071     llhttp__internal_t* state,
9072     const unsigned char* p,
9073     const unsigned char* endp) {
9074   return state->http_minor;
9075 }
9076 
llhttp__internal__c_update_status_code(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9077 int llhttp__internal__c_update_status_code(
9078     llhttp__internal_t* state,
9079     const unsigned char* p,
9080     const unsigned char* endp) {
9081   state->status_code = 0;
9082   return 0;
9083 }
9084 
llhttp__internal__c_mul_add_status_code(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp,int match)9085 int llhttp__internal__c_mul_add_status_code(
9086     llhttp__internal_t* state,
9087     const unsigned char* p,
9088     const unsigned char* endp,
9089     int match) {
9090   /* Multiplication overflow */
9091   if (state->status_code > 0xffff / 10) {
9092     return 1;
9093   }
9094 
9095   state->status_code *= 10;
9096 
9097   /* Addition overflow */
9098   if (match >= 0) {
9099     if (state->status_code > 0xffff - match) {
9100       return 1;
9101     }
9102   } else {
9103     if (state->status_code < 0 - match) {
9104       return 1;
9105     }
9106   }
9107   state->status_code += match;
9108 
9109   /* Enforce maximum */
9110   if (state->status_code > 999) {
9111     return 1;
9112   }
9113   return 0;
9114 }
9115 
9116 int llhttp__on_status_complete(
9117     llhttp__internal_t* s, const unsigned char* p,
9118     const unsigned char* endp);
9119 
llhttp__internal__c_update_type(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9120 int llhttp__internal__c_update_type(
9121     llhttp__internal_t* state,
9122     const unsigned char* p,
9123     const unsigned char* endp) {
9124   state->type = 1;
9125   return 0;
9126 }
9127 
llhttp__internal__c_update_type_1(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9128 int llhttp__internal__c_update_type_1(
9129     llhttp__internal_t* state,
9130     const unsigned char* p,
9131     const unsigned char* endp) {
9132   state->type = 2;
9133   return 0;
9134 }
9135 
llhttp__internal_init(llhttp__internal_t * state)9136 int llhttp__internal_init(llhttp__internal_t* state) {
9137   memset(state, 0, sizeof(*state));
9138   state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_start;
9139   return 0;
9140 }
9141 
llhttp__internal__run(llhttp__internal_t * state,const unsigned char * p,const unsigned char * endp)9142 static llparse_state_t llhttp__internal__run(
9143     llhttp__internal_t* state,
9144     const unsigned char* p,
9145     const unsigned char* endp) {
9146   int match;
9147   switch ((llparse_state_t) (intptr_t) state->_current) {
9148     case s_n_llhttp__internal__n_closed:
9149     s_n_llhttp__internal__n_closed: {
9150       if (p == endp) {
9151         return s_n_llhttp__internal__n_closed;
9152       }
9153       p++;
9154       goto s_n_llhttp__internal__n_closed;
9155       /* UNREACHABLE */;
9156       abort();
9157     }
9158     case s_n_llhttp__internal__n_invoke_llhttp__after_message_complete:
9159     s_n_llhttp__internal__n_invoke_llhttp__after_message_complete: {
9160       switch (llhttp__after_message_complete(state, p, endp)) {
9161         case 1:
9162           goto s_n_llhttp__internal__n_invoke_update_finish_2;
9163         default:
9164           goto s_n_llhttp__internal__n_invoke_update_finish_1;
9165       }
9166       /* UNREACHABLE */;
9167       abort();
9168     }
9169     case s_n_llhttp__internal__n_pause_1:
9170     s_n_llhttp__internal__n_pause_1: {
9171       state->error = 0x16;
9172       state->reason = "Pause on CONNECT/Upgrade";
9173       state->error_pos = (const char*) p;
9174       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
9175       return s_error;
9176       /* UNREACHABLE */;
9177       abort();
9178     }
9179     case s_n_llhttp__internal__n_invoke_is_equal_upgrade:
9180     s_n_llhttp__internal__n_invoke_is_equal_upgrade: {
9181       switch (llhttp__internal__c_is_equal_upgrade(state, p, endp)) {
9182         case 0:
9183           goto s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
9184         default:
9185           goto s_n_llhttp__internal__n_pause_1;
9186       }
9187       /* UNREACHABLE */;
9188       abort();
9189     }
9190     case s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2:
9191     s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2: {
9192       switch (llhttp__on_message_complete(state, p, endp)) {
9193         case 0:
9194           goto s_n_llhttp__internal__n_invoke_is_equal_upgrade;
9195         case 21:
9196           goto s_n_llhttp__internal__n_pause_5;
9197         default:
9198           goto s_n_llhttp__internal__n_error_10;
9199       }
9200       /* UNREACHABLE */;
9201       abort();
9202     }
9203     case s_n_llhttp__internal__n_chunk_data_almost_done_skip:
9204     s_n_llhttp__internal__n_chunk_data_almost_done_skip: {
9205       if (p == endp) {
9206         return s_n_llhttp__internal__n_chunk_data_almost_done_skip;
9207       }
9208       p++;
9209       goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete;
9210       /* UNREACHABLE */;
9211       abort();
9212     }
9213     case s_n_llhttp__internal__n_chunk_data_almost_done:
9214     s_n_llhttp__internal__n_chunk_data_almost_done: {
9215       if (p == endp) {
9216         return s_n_llhttp__internal__n_chunk_data_almost_done;
9217       }
9218       p++;
9219       goto s_n_llhttp__internal__n_chunk_data_almost_done_skip;
9220       /* UNREACHABLE */;
9221       abort();
9222     }
9223     case s_n_llhttp__internal__n_consume_content_length:
9224     s_n_llhttp__internal__n_consume_content_length: {
9225       size_t avail;
9226       uint64_t need;
9227 
9228       avail = endp - p;
9229       need = state->content_length;
9230       if (avail >= need) {
9231         p += need;
9232         state->content_length = 0;
9233         goto s_n_llhttp__internal__n_span_end_llhttp__on_body;
9234       }
9235 
9236       state->content_length -= avail;
9237       return s_n_llhttp__internal__n_consume_content_length;
9238       /* UNREACHABLE */;
9239       abort();
9240     }
9241     case s_n_llhttp__internal__n_span_start_llhttp__on_body:
9242     s_n_llhttp__internal__n_span_start_llhttp__on_body: {
9243       if (p == endp) {
9244         return s_n_llhttp__internal__n_span_start_llhttp__on_body;
9245       }
9246       state->_span_pos0 = (void*) p;
9247       state->_span_cb0 = llhttp__on_body;
9248       goto s_n_llhttp__internal__n_consume_content_length;
9249       /* UNREACHABLE */;
9250       abort();
9251     }
9252     case s_n_llhttp__internal__n_invoke_is_equal_content_length:
9253     s_n_llhttp__internal__n_invoke_is_equal_content_length: {
9254       switch (llhttp__internal__c_is_equal_content_length(state, p, endp)) {
9255         case 0:
9256           goto s_n_llhttp__internal__n_span_start_llhttp__on_body;
9257         default:
9258           goto s_n_llhttp__internal__n_invoke_or_flags;
9259       }
9260       /* UNREACHABLE */;
9261       abort();
9262     }
9263     case s_n_llhttp__internal__n_chunk_size_almost_done:
9264     s_n_llhttp__internal__n_chunk_size_almost_done: {
9265       if (p == endp) {
9266         return s_n_llhttp__internal__n_chunk_size_almost_done;
9267       }
9268       p++;
9269       goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header;
9270       /* UNREACHABLE */;
9271       abort();
9272     }
9273     case s_n_llhttp__internal__n_chunk_parameters:
9274     s_n_llhttp__internal__n_chunk_parameters: {
9275       static uint8_t lookup_table[] = {
9276         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0,
9277         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9278         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9279         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9280         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9281         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9282         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9283         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
9284         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9285         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9286         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9287         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9288         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9289         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9290         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9291         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
9292       };
9293       if (p == endp) {
9294         return s_n_llhttp__internal__n_chunk_parameters;
9295       }
9296       switch (lookup_table[(uint8_t) *p]) {
9297         case 1: {
9298           p++;
9299           goto s_n_llhttp__internal__n_chunk_parameters;
9300         }
9301         case 2: {
9302           p++;
9303           goto s_n_llhttp__internal__n_chunk_size_almost_done;
9304         }
9305         default: {
9306           goto s_n_llhttp__internal__n_error_6;
9307         }
9308       }
9309       /* UNREACHABLE */;
9310       abort();
9311     }
9312     case s_n_llhttp__internal__n_chunk_size_otherwise:
9313     s_n_llhttp__internal__n_chunk_size_otherwise: {
9314       if (p == endp) {
9315         return s_n_llhttp__internal__n_chunk_size_otherwise;
9316       }
9317       switch (*p) {
9318         case 13: {
9319           p++;
9320           goto s_n_llhttp__internal__n_chunk_size_almost_done;
9321         }
9322         case ' ': {
9323           p++;
9324           goto s_n_llhttp__internal__n_chunk_parameters;
9325         }
9326         case ';': {
9327           p++;
9328           goto s_n_llhttp__internal__n_chunk_parameters;
9329         }
9330         default: {
9331           goto s_n_llhttp__internal__n_error_7;
9332         }
9333       }
9334       /* UNREACHABLE */;
9335       abort();
9336     }
9337     case s_n_llhttp__internal__n_chunk_size:
9338     s_n_llhttp__internal__n_chunk_size: {
9339       if (p == endp) {
9340         return s_n_llhttp__internal__n_chunk_size;
9341       }
9342       switch (*p) {
9343         case '0': {
9344           p++;
9345           match = 0;
9346           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9347         }
9348         case '1': {
9349           p++;
9350           match = 1;
9351           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9352         }
9353         case '2': {
9354           p++;
9355           match = 2;
9356           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9357         }
9358         case '3': {
9359           p++;
9360           match = 3;
9361           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9362         }
9363         case '4': {
9364           p++;
9365           match = 4;
9366           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9367         }
9368         case '5': {
9369           p++;
9370           match = 5;
9371           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9372         }
9373         case '6': {
9374           p++;
9375           match = 6;
9376           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9377         }
9378         case '7': {
9379           p++;
9380           match = 7;
9381           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9382         }
9383         case '8': {
9384           p++;
9385           match = 8;
9386           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9387         }
9388         case '9': {
9389           p++;
9390           match = 9;
9391           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9392         }
9393         case 'A': {
9394           p++;
9395           match = 10;
9396           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9397         }
9398         case 'B': {
9399           p++;
9400           match = 11;
9401           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9402         }
9403         case 'C': {
9404           p++;
9405           match = 12;
9406           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9407         }
9408         case 'D': {
9409           p++;
9410           match = 13;
9411           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9412         }
9413         case 'E': {
9414           p++;
9415           match = 14;
9416           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9417         }
9418         case 'F': {
9419           p++;
9420           match = 15;
9421           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9422         }
9423         case 'a': {
9424           p++;
9425           match = 10;
9426           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9427         }
9428         case 'b': {
9429           p++;
9430           match = 11;
9431           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9432         }
9433         case 'c': {
9434           p++;
9435           match = 12;
9436           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9437         }
9438         case 'd': {
9439           p++;
9440           match = 13;
9441           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9442         }
9443         case 'e': {
9444           p++;
9445           match = 14;
9446           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9447         }
9448         case 'f': {
9449           p++;
9450           match = 15;
9451           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9452         }
9453         default: {
9454           goto s_n_llhttp__internal__n_chunk_size_otherwise;
9455         }
9456       }
9457       /* UNREACHABLE */;
9458       abort();
9459     }
9460     case s_n_llhttp__internal__n_chunk_size_digit:
9461     s_n_llhttp__internal__n_chunk_size_digit: {
9462       if (p == endp) {
9463         return s_n_llhttp__internal__n_chunk_size_digit;
9464       }
9465       switch (*p) {
9466         case '0': {
9467           p++;
9468           match = 0;
9469           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9470         }
9471         case '1': {
9472           p++;
9473           match = 1;
9474           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9475         }
9476         case '2': {
9477           p++;
9478           match = 2;
9479           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9480         }
9481         case '3': {
9482           p++;
9483           match = 3;
9484           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9485         }
9486         case '4': {
9487           p++;
9488           match = 4;
9489           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9490         }
9491         case '5': {
9492           p++;
9493           match = 5;
9494           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9495         }
9496         case '6': {
9497           p++;
9498           match = 6;
9499           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9500         }
9501         case '7': {
9502           p++;
9503           match = 7;
9504           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9505         }
9506         case '8': {
9507           p++;
9508           match = 8;
9509           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9510         }
9511         case '9': {
9512           p++;
9513           match = 9;
9514           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9515         }
9516         case 'A': {
9517           p++;
9518           match = 10;
9519           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9520         }
9521         case 'B': {
9522           p++;
9523           match = 11;
9524           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9525         }
9526         case 'C': {
9527           p++;
9528           match = 12;
9529           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9530         }
9531         case 'D': {
9532           p++;
9533           match = 13;
9534           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9535         }
9536         case 'E': {
9537           p++;
9538           match = 14;
9539           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9540         }
9541         case 'F': {
9542           p++;
9543           match = 15;
9544           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9545         }
9546         case 'a': {
9547           p++;
9548           match = 10;
9549           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9550         }
9551         case 'b': {
9552           p++;
9553           match = 11;
9554           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9555         }
9556         case 'c': {
9557           p++;
9558           match = 12;
9559           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9560         }
9561         case 'd': {
9562           p++;
9563           match = 13;
9564           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9565         }
9566         case 'e': {
9567           p++;
9568           match = 14;
9569           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9570         }
9571         case 'f': {
9572           p++;
9573           match = 15;
9574           goto s_n_llhttp__internal__n_invoke_mul_add_content_length;
9575         }
9576         default: {
9577           goto s_n_llhttp__internal__n_error_9;
9578         }
9579       }
9580       /* UNREACHABLE */;
9581       abort();
9582     }
9583     case s_n_llhttp__internal__n_invoke_update_content_length:
9584     s_n_llhttp__internal__n_invoke_update_content_length: {
9585       switch (llhttp__internal__c_update_content_length(state, p, endp)) {
9586         default:
9587           goto s_n_llhttp__internal__n_chunk_size_digit;
9588       }
9589       /* UNREACHABLE */;
9590       abort();
9591     }
9592     case s_n_llhttp__internal__n_consume_content_length_1:
9593     s_n_llhttp__internal__n_consume_content_length_1: {
9594       size_t avail;
9595       uint64_t need;
9596 
9597       avail = endp - p;
9598       need = state->content_length;
9599       if (avail >= need) {
9600         p += need;
9601         state->content_length = 0;
9602         goto s_n_llhttp__internal__n_span_end_llhttp__on_body_1;
9603       }
9604 
9605       state->content_length -= avail;
9606       return s_n_llhttp__internal__n_consume_content_length_1;
9607       /* UNREACHABLE */;
9608       abort();
9609     }
9610     case s_n_llhttp__internal__n_span_start_llhttp__on_body_1:
9611     s_n_llhttp__internal__n_span_start_llhttp__on_body_1: {
9612       if (p == endp) {
9613         return s_n_llhttp__internal__n_span_start_llhttp__on_body_1;
9614       }
9615       state->_span_pos0 = (void*) p;
9616       state->_span_cb0 = llhttp__on_body;
9617       goto s_n_llhttp__internal__n_consume_content_length_1;
9618       /* UNREACHABLE */;
9619       abort();
9620     }
9621     case s_n_llhttp__internal__n_eof:
9622     s_n_llhttp__internal__n_eof: {
9623       if (p == endp) {
9624         return s_n_llhttp__internal__n_eof;
9625       }
9626       p++;
9627       goto s_n_llhttp__internal__n_eof;
9628       /* UNREACHABLE */;
9629       abort();
9630     }
9631     case s_n_llhttp__internal__n_span_start_llhttp__on_body_2:
9632     s_n_llhttp__internal__n_span_start_llhttp__on_body_2: {
9633       if (p == endp) {
9634         return s_n_llhttp__internal__n_span_start_llhttp__on_body_2;
9635       }
9636       state->_span_pos0 = (void*) p;
9637       state->_span_cb0 = llhttp__on_body;
9638       goto s_n_llhttp__internal__n_eof;
9639       /* UNREACHABLE */;
9640       abort();
9641     }
9642     case s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete:
9643     s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete: {
9644       switch (llhttp__after_headers_complete(state, p, endp)) {
9645         case 1:
9646           goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1;
9647         case 2:
9648           goto s_n_llhttp__internal__n_invoke_update_content_length;
9649         case 3:
9650           goto s_n_llhttp__internal__n_span_start_llhttp__on_body_1;
9651         case 4:
9652           goto s_n_llhttp__internal__n_invoke_update_finish_3;
9653         case 5:
9654           goto s_n_llhttp__internal__n_error_11;
9655         default:
9656           goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete;
9657       }
9658       /* UNREACHABLE */;
9659       abort();
9660     }
9661     case s_n_llhttp__internal__n_headers_almost_done:
9662     s_n_llhttp__internal__n_headers_almost_done: {
9663       if (p == endp) {
9664         return s_n_llhttp__internal__n_headers_almost_done;
9665       }
9666       p++;
9667       goto s_n_llhttp__internal__n_invoke_test_flags;
9668       /* UNREACHABLE */;
9669       abort();
9670     }
9671     case s_n_llhttp__internal__n_header_field_colon_discard_ws:
9672     s_n_llhttp__internal__n_header_field_colon_discard_ws: {
9673       if (p == endp) {
9674         return s_n_llhttp__internal__n_header_field_colon_discard_ws;
9675       }
9676       switch (*p) {
9677         case ' ': {
9678           p++;
9679           goto s_n_llhttp__internal__n_header_field_colon_discard_ws;
9680         }
9681         default: {
9682           goto s_n_llhttp__internal__n_header_field_colon;
9683         }
9684       }
9685       /* UNREACHABLE */;
9686       abort();
9687     }
9688     case s_n_llhttp__internal__n_error_14:
9689     s_n_llhttp__internal__n_error_14: {
9690       state->error = 0xa;
9691       state->reason = "Invalid header field char";
9692       state->error_pos = (const char*) p;
9693       state->_current = (void*) (intptr_t) s_error;
9694       return s_error;
9695       /* UNREACHABLE */;
9696       abort();
9697     }
9698     case s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete:
9699     s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: {
9700       switch (llhttp__on_header_value_complete(state, p, endp)) {
9701         default:
9702           goto s_n_llhttp__internal__n_header_field_start;
9703       }
9704       /* UNREACHABLE */;
9705       abort();
9706     }
9707     case s_n_llhttp__internal__n_span_start_llhttp__on_header_value:
9708     s_n_llhttp__internal__n_span_start_llhttp__on_header_value: {
9709       if (p == endp) {
9710         return s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
9711       }
9712       state->_span_pos0 = (void*) p;
9713       state->_span_cb0 = llhttp__on_header_value;
9714       goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value;
9715       /* UNREACHABLE */;
9716       abort();
9717     }
9718     case s_n_llhttp__internal__n_header_value_discard_lws:
9719     s_n_llhttp__internal__n_header_value_discard_lws: {
9720       if (p == endp) {
9721         return s_n_llhttp__internal__n_header_value_discard_lws;
9722       }
9723       switch (*p) {
9724         case 9: {
9725           p++;
9726           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4;
9727         }
9728         case ' ': {
9729           p++;
9730           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4;
9731         }
9732         default: {
9733           goto s_n_llhttp__internal__n_invoke_load_header_state;
9734         }
9735       }
9736       /* UNREACHABLE */;
9737       abort();
9738     }
9739     case s_n_llhttp__internal__n_header_value_discard_ws_almost_done:
9740     s_n_llhttp__internal__n_header_value_discard_ws_almost_done: {
9741       if (p == endp) {
9742         return s_n_llhttp__internal__n_header_value_discard_ws_almost_done;
9743       }
9744       switch (*p) {
9745         case 10: {
9746           p++;
9747           goto s_n_llhttp__internal__n_header_value_discard_lws;
9748         }
9749         default: {
9750           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5;
9751         }
9752       }
9753       /* UNREACHABLE */;
9754       abort();
9755     }
9756     case s_n_llhttp__internal__n_header_value_lws:
9757     s_n_llhttp__internal__n_header_value_lws: {
9758       if (p == endp) {
9759         return s_n_llhttp__internal__n_header_value_lws;
9760       }
9761       switch (*p) {
9762         case 9: {
9763           goto s_n_llhttp__internal__n_invoke_load_header_state_3;
9764         }
9765         case ' ': {
9766           goto s_n_llhttp__internal__n_invoke_load_header_state_3;
9767         }
9768         default: {
9769           goto s_n_llhttp__internal__n_invoke_load_header_state_4;
9770         }
9771       }
9772       /* UNREACHABLE */;
9773       abort();
9774     }
9775     case s_n_llhttp__internal__n_header_value_almost_done:
9776     s_n_llhttp__internal__n_header_value_almost_done: {
9777       if (p == endp) {
9778         return s_n_llhttp__internal__n_header_value_almost_done;
9779       }
9780       switch (*p) {
9781         case 10: {
9782           p++;
9783           goto s_n_llhttp__internal__n_header_value_lws;
9784         }
9785         default: {
9786           goto s_n_llhttp__internal__n_error_19;
9787         }
9788       }
9789       /* UNREACHABLE */;
9790       abort();
9791     }
9792     case s_n_llhttp__internal__n_header_value_lenient:
9793     s_n_llhttp__internal__n_header_value_lenient: {
9794       if (p == endp) {
9795         return s_n_llhttp__internal__n_header_value_lenient;
9796       }
9797       switch (*p) {
9798         case 10: {
9799           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_3;
9800         }
9801         case 13: {
9802           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_4;
9803         }
9804         default: {
9805           p++;
9806           goto s_n_llhttp__internal__n_header_value_lenient;
9807         }
9808       }
9809       /* UNREACHABLE */;
9810       abort();
9811     }
9812     case s_n_llhttp__internal__n_error_20:
9813     s_n_llhttp__internal__n_error_20: {
9814       state->error = 0xa;
9815       state->reason = "Invalid header value char";
9816       state->error_pos = (const char*) p;
9817       state->_current = (void*) (intptr_t) s_error;
9818       return s_error;
9819       /* UNREACHABLE */;
9820       abort();
9821     }
9822     case s_n_llhttp__internal__n_header_value_otherwise:
9823     s_n_llhttp__internal__n_header_value_otherwise: {
9824       if (p == endp) {
9825         return s_n_llhttp__internal__n_header_value_otherwise;
9826       }
9827       switch (*p) {
9828         case 13: {
9829           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1;
9830         }
9831         default: {
9832           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6;
9833         }
9834       }
9835       /* UNREACHABLE */;
9836       abort();
9837     }
9838     case s_n_llhttp__internal__n_header_value_connection_token:
9839     s_n_llhttp__internal__n_header_value_connection_token: {
9840       static uint8_t lookup_table[] = {
9841         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
9842         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9843         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
9844         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9845         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9846         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9847         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9848         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
9849         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9850         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9851         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9852         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9853         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9854         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9855         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
9856         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
9857       };
9858       if (p == endp) {
9859         return s_n_llhttp__internal__n_header_value_connection_token;
9860       }
9861       switch (lookup_table[(uint8_t) *p]) {
9862         case 1: {
9863           p++;
9864           goto s_n_llhttp__internal__n_header_value_connection_token;
9865         }
9866         case 2: {
9867           p++;
9868           goto s_n_llhttp__internal__n_header_value_connection;
9869         }
9870         default: {
9871           goto s_n_llhttp__internal__n_header_value_otherwise;
9872         }
9873       }
9874       /* UNREACHABLE */;
9875       abort();
9876     }
9877     case s_n_llhttp__internal__n_header_value_connection_ws:
9878     s_n_llhttp__internal__n_header_value_connection_ws: {
9879       if (p == endp) {
9880         return s_n_llhttp__internal__n_header_value_connection_ws;
9881       }
9882       switch (*p) {
9883         case 10: {
9884           goto s_n_llhttp__internal__n_header_value_otherwise;
9885         }
9886         case 13: {
9887           goto s_n_llhttp__internal__n_header_value_otherwise;
9888         }
9889         case ' ': {
9890           p++;
9891           goto s_n_llhttp__internal__n_header_value_connection_ws;
9892         }
9893         case ',': {
9894           p++;
9895           goto s_n_llhttp__internal__n_invoke_load_header_state_5;
9896         }
9897         default: {
9898           goto s_n_llhttp__internal__n_invoke_update_header_state_5;
9899         }
9900       }
9901       /* UNREACHABLE */;
9902       abort();
9903     }
9904     case s_n_llhttp__internal__n_header_value_connection_1:
9905     s_n_llhttp__internal__n_header_value_connection_1: {
9906       llparse_match_t match_seq;
9907 
9908       if (p == endp) {
9909         return s_n_llhttp__internal__n_header_value_connection_1;
9910       }
9911       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 4);
9912       p = match_seq.current;
9913       switch (match_seq.status) {
9914         case kMatchComplete: {
9915           p++;
9916           goto s_n_llhttp__internal__n_invoke_update_header_state_3;
9917         }
9918         case kMatchPause: {
9919           return s_n_llhttp__internal__n_header_value_connection_1;
9920         }
9921         case kMatchMismatch: {
9922           goto s_n_llhttp__internal__n_header_value_connection_token;
9923         }
9924       }
9925       /* UNREACHABLE */;
9926       abort();
9927     }
9928     case s_n_llhttp__internal__n_header_value_connection_2:
9929     s_n_llhttp__internal__n_header_value_connection_2: {
9930       llparse_match_t match_seq;
9931 
9932       if (p == endp) {
9933         return s_n_llhttp__internal__n_header_value_connection_2;
9934       }
9935       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 9);
9936       p = match_seq.current;
9937       switch (match_seq.status) {
9938         case kMatchComplete: {
9939           p++;
9940           goto s_n_llhttp__internal__n_invoke_update_header_state_6;
9941         }
9942         case kMatchPause: {
9943           return s_n_llhttp__internal__n_header_value_connection_2;
9944         }
9945         case kMatchMismatch: {
9946           goto s_n_llhttp__internal__n_header_value_connection_token;
9947         }
9948       }
9949       /* UNREACHABLE */;
9950       abort();
9951     }
9952     case s_n_llhttp__internal__n_header_value_connection_3:
9953     s_n_llhttp__internal__n_header_value_connection_3: {
9954       llparse_match_t match_seq;
9955 
9956       if (p == endp) {
9957         return s_n_llhttp__internal__n_header_value_connection_3;
9958       }
9959       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 6);
9960       p = match_seq.current;
9961       switch (match_seq.status) {
9962         case kMatchComplete: {
9963           p++;
9964           goto s_n_llhttp__internal__n_invoke_update_header_state_7;
9965         }
9966         case kMatchPause: {
9967           return s_n_llhttp__internal__n_header_value_connection_3;
9968         }
9969         case kMatchMismatch: {
9970           goto s_n_llhttp__internal__n_header_value_connection_token;
9971         }
9972       }
9973       /* UNREACHABLE */;
9974       abort();
9975     }
9976     case s_n_llhttp__internal__n_header_value_connection:
9977     s_n_llhttp__internal__n_header_value_connection: {
9978       if (p == endp) {
9979         return s_n_llhttp__internal__n_header_value_connection;
9980       }
9981       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
9982         case 9: {
9983           p++;
9984           goto s_n_llhttp__internal__n_header_value_connection;
9985         }
9986         case ' ': {
9987           p++;
9988           goto s_n_llhttp__internal__n_header_value_connection;
9989         }
9990         case 'c': {
9991           p++;
9992           goto s_n_llhttp__internal__n_header_value_connection_1;
9993         }
9994         case 'k': {
9995           p++;
9996           goto s_n_llhttp__internal__n_header_value_connection_2;
9997         }
9998         case 'u': {
9999           p++;
10000           goto s_n_llhttp__internal__n_header_value_connection_3;
10001         }
10002         default: {
10003           goto s_n_llhttp__internal__n_header_value_connection_token;
10004         }
10005       }
10006       /* UNREACHABLE */;
10007       abort();
10008     }
10009     case s_n_llhttp__internal__n_error_22:
10010     s_n_llhttp__internal__n_error_22: {
10011       state->error = 0xb;
10012       state->reason = "Content-Length overflow";
10013       state->error_pos = (const char*) p;
10014       state->_current = (void*) (intptr_t) s_error;
10015       return s_error;
10016       /* UNREACHABLE */;
10017       abort();
10018     }
10019     case s_n_llhttp__internal__n_error_23:
10020     s_n_llhttp__internal__n_error_23: {
10021       state->error = 0xb;
10022       state->reason = "Invalid character in Content-Length";
10023       state->error_pos = (const char*) p;
10024       state->_current = (void*) (intptr_t) s_error;
10025       return s_error;
10026       /* UNREACHABLE */;
10027       abort();
10028     }
10029     case s_n_llhttp__internal__n_header_value_content_length_ws:
10030     s_n_llhttp__internal__n_header_value_content_length_ws: {
10031       if (p == endp) {
10032         return s_n_llhttp__internal__n_header_value_content_length_ws;
10033       }
10034       switch (*p) {
10035         case 10: {
10036           goto s_n_llhttp__internal__n_invoke_or_flags_15;
10037         }
10038         case 13: {
10039           goto s_n_llhttp__internal__n_invoke_or_flags_15;
10040         }
10041         case ' ': {
10042           p++;
10043           goto s_n_llhttp__internal__n_header_value_content_length_ws;
10044         }
10045         default: {
10046           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_6;
10047         }
10048       }
10049       /* UNREACHABLE */;
10050       abort();
10051     }
10052     case s_n_llhttp__internal__n_header_value_content_length:
10053     s_n_llhttp__internal__n_header_value_content_length: {
10054       if (p == endp) {
10055         return s_n_llhttp__internal__n_header_value_content_length;
10056       }
10057       switch (*p) {
10058         case '0': {
10059           p++;
10060           match = 0;
10061           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10062         }
10063         case '1': {
10064           p++;
10065           match = 1;
10066           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10067         }
10068         case '2': {
10069           p++;
10070           match = 2;
10071           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10072         }
10073         case '3': {
10074           p++;
10075           match = 3;
10076           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10077         }
10078         case '4': {
10079           p++;
10080           match = 4;
10081           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10082         }
10083         case '5': {
10084           p++;
10085           match = 5;
10086           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10087         }
10088         case '6': {
10089           p++;
10090           match = 6;
10091           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10092         }
10093         case '7': {
10094           p++;
10095           match = 7;
10096           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10097         }
10098         case '8': {
10099           p++;
10100           match = 8;
10101           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10102         }
10103         case '9': {
10104           p++;
10105           match = 9;
10106           goto s_n_llhttp__internal__n_invoke_mul_add_content_length_1;
10107         }
10108         default: {
10109           goto s_n_llhttp__internal__n_header_value_content_length_ws;
10110         }
10111       }
10112       /* UNREACHABLE */;
10113       abort();
10114     }
10115     case s_n_llhttp__internal__n_error_25:
10116     s_n_llhttp__internal__n_error_25: {
10117       state->error = 0xf;
10118       state->reason = "Invalid `Transfer-Encoding` header value";
10119       state->error_pos = (const char*) p;
10120       state->_current = (void*) (intptr_t) s_error;
10121       return s_error;
10122       /* UNREACHABLE */;
10123       abort();
10124     }
10125     case s_n_llhttp__internal__n_error_24:
10126     s_n_llhttp__internal__n_error_24: {
10127       state->error = 0xf;
10128       state->reason = "Invalid `Transfer-Encoding` header value";
10129       state->error_pos = (const char*) p;
10130       state->_current = (void*) (intptr_t) s_error;
10131       return s_error;
10132       /* UNREACHABLE */;
10133       abort();
10134     }
10135     case s_n_llhttp__internal__n_header_value_te_token_ows:
10136     s_n_llhttp__internal__n_header_value_te_token_ows: {
10137       if (p == endp) {
10138         return s_n_llhttp__internal__n_header_value_te_token_ows;
10139       }
10140       switch (*p) {
10141         case 9: {
10142           p++;
10143           goto s_n_llhttp__internal__n_header_value_te_token_ows;
10144         }
10145         case ' ': {
10146           p++;
10147           goto s_n_llhttp__internal__n_header_value_te_token_ows;
10148         }
10149         default: {
10150           goto s_n_llhttp__internal__n_header_value_te_chunked;
10151         }
10152       }
10153       /* UNREACHABLE */;
10154       abort();
10155     }
10156     case s_n_llhttp__internal__n_header_value:
10157     s_n_llhttp__internal__n_header_value: {
10158       static uint8_t lookup_table[] = {
10159         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
10160         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10161         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10162         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10163         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10164         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10165         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10166         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
10167         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10168         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10169         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10170         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10171         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10172         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10173         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10174         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
10175       };
10176       if (p == endp) {
10177         return s_n_llhttp__internal__n_header_value;
10178       }
10179       #ifdef __SSE4_2__
10180       if (endp - p >= 16) {
10181         __m128i ranges;
10182         __m128i input;
10183         int avail;
10184         int match_len;
10185 
10186         /* Load input */
10187         input = _mm_loadu_si128((__m128i const*) p);
10188         ranges = _mm_loadu_si128((__m128i const*) llparse_blob7);
10189 
10190         /* Find first character that does not match `ranges` */
10191         match_len = _mm_cmpestri(ranges, 6,
10192             input, 16,
10193             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
10194               _SIDD_NEGATIVE_POLARITY);
10195 
10196         if (match_len != 0) {
10197           p += match_len;
10198           goto s_n_llhttp__internal__n_header_value;
10199         }
10200         goto s_n_llhttp__internal__n_header_value_otherwise;
10201       }
10202       #endif  /* __SSE4_2__ */
10203       switch (lookup_table[(uint8_t) *p]) {
10204         case 1: {
10205           p++;
10206           goto s_n_llhttp__internal__n_header_value;
10207         }
10208         default: {
10209           goto s_n_llhttp__internal__n_header_value_otherwise;
10210         }
10211       }
10212       /* UNREACHABLE */;
10213       abort();
10214     }
10215     case s_n_llhttp__internal__n_header_value_te_token:
10216     s_n_llhttp__internal__n_header_value_te_token: {
10217       static uint8_t lookup_table[] = {
10218         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
10219         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10220         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
10221         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10222         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10223         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10224         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10225         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
10226         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10227         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10228         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10229         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10230         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10231         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10232         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10233         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
10234       };
10235       if (p == endp) {
10236         return s_n_llhttp__internal__n_header_value_te_token;
10237       }
10238       switch (lookup_table[(uint8_t) *p]) {
10239         case 1: {
10240           p++;
10241           goto s_n_llhttp__internal__n_header_value_te_token;
10242         }
10243         case 2: {
10244           p++;
10245           goto s_n_llhttp__internal__n_header_value_te_token_ows;
10246         }
10247         default: {
10248           goto s_n_llhttp__internal__n_invoke_update_header_state_9;
10249         }
10250       }
10251       /* UNREACHABLE */;
10252       abort();
10253     }
10254     case s_n_llhttp__internal__n_header_value_te_chunked_last:
10255     s_n_llhttp__internal__n_header_value_te_chunked_last: {
10256       if (p == endp) {
10257         return s_n_llhttp__internal__n_header_value_te_chunked_last;
10258       }
10259       switch (*p) {
10260         case 10: {
10261           goto s_n_llhttp__internal__n_invoke_update_header_state_8;
10262         }
10263         case 13: {
10264           goto s_n_llhttp__internal__n_invoke_update_header_state_8;
10265         }
10266         case ' ': {
10267           p++;
10268           goto s_n_llhttp__internal__n_header_value_te_chunked_last;
10269         }
10270         case ',': {
10271           goto s_n_llhttp__internal__n_invoke_load_type_1;
10272         }
10273         default: {
10274           goto s_n_llhttp__internal__n_header_value_te_token;
10275         }
10276       }
10277       /* UNREACHABLE */;
10278       abort();
10279     }
10280     case s_n_llhttp__internal__n_header_value_te_chunked:
10281     s_n_llhttp__internal__n_header_value_te_chunked: {
10282       llparse_match_t match_seq;
10283 
10284       if (p == endp) {
10285         return s_n_llhttp__internal__n_header_value_te_chunked;
10286       }
10287       match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob6, 7);
10288       p = match_seq.current;
10289       switch (match_seq.status) {
10290         case kMatchComplete: {
10291           p++;
10292           goto s_n_llhttp__internal__n_header_value_te_chunked_last;
10293         }
10294         case kMatchPause: {
10295           return s_n_llhttp__internal__n_header_value_te_chunked;
10296         }
10297         case kMatchMismatch: {
10298           goto s_n_llhttp__internal__n_header_value_te_token;
10299         }
10300       }
10301       /* UNREACHABLE */;
10302       abort();
10303     }
10304     case s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1:
10305     s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1: {
10306       if (p == endp) {
10307         return s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
10308       }
10309       state->_span_pos0 = (void*) p;
10310       state->_span_cb0 = llhttp__on_header_value;
10311       goto s_n_llhttp__internal__n_invoke_load_header_state_2;
10312       /* UNREACHABLE */;
10313       abort();
10314     }
10315     case s_n_llhttp__internal__n_header_value_discard_ws:
10316     s_n_llhttp__internal__n_header_value_discard_ws: {
10317       if (p == endp) {
10318         return s_n_llhttp__internal__n_header_value_discard_ws;
10319       }
10320       switch (*p) {
10321         case 9: {
10322           p++;
10323           goto s_n_llhttp__internal__n_header_value_discard_ws;
10324         }
10325         case 10: {
10326           p++;
10327           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3;
10328         }
10329         case 13: {
10330           p++;
10331           goto s_n_llhttp__internal__n_header_value_discard_ws_almost_done;
10332         }
10333         case ' ': {
10334           p++;
10335           goto s_n_llhttp__internal__n_header_value_discard_ws;
10336         }
10337         default: {
10338           goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
10339         }
10340       }
10341       /* UNREACHABLE */;
10342       abort();
10343     }
10344     case s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete:
10345     s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: {
10346       switch (llhttp__on_header_field_complete(state, p, endp)) {
10347         default:
10348           goto s_n_llhttp__internal__n_header_value_discard_ws;
10349       }
10350       /* UNREACHABLE */;
10351       abort();
10352     }
10353     case s_n_llhttp__internal__n_header_field_general_otherwise:
10354     s_n_llhttp__internal__n_header_field_general_otherwise: {
10355       if (p == endp) {
10356         return s_n_llhttp__internal__n_header_field_general_otherwise;
10357       }
10358       switch (*p) {
10359         case ':': {
10360           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2;
10361         }
10362         default: {
10363           goto s_n_llhttp__internal__n_error_26;
10364         }
10365       }
10366       /* UNREACHABLE */;
10367       abort();
10368     }
10369     case s_n_llhttp__internal__n_header_field_general:
10370     s_n_llhttp__internal__n_header_field_general: {
10371       static uint8_t lookup_table[] = {
10372         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10373         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10374         1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0,
10375         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,
10376         0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10377         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1,
10378         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
10379         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0,
10380         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10381         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10382         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10383         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10384         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10385         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10386         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
10387         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
10388       };
10389       if (p == endp) {
10390         return s_n_llhttp__internal__n_header_field_general;
10391       }
10392       #ifdef __SSE4_2__
10393       if (endp - p >= 16) {
10394         __m128i ranges;
10395         __m128i input;
10396         int avail;
10397         int match_len;
10398 
10399         /* Load input */
10400         input = _mm_loadu_si128((__m128i const*) p);
10401         ranges = _mm_loadu_si128((__m128i const*) llparse_blob8);
10402 
10403         /* Find first character that does not match `ranges` */
10404         match_len = _mm_cmpestri(ranges, 16,
10405             input, 16,
10406             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
10407               _SIDD_NEGATIVE_POLARITY);
10408 
10409         if (match_len != 0) {
10410           p += match_len;
10411           goto s_n_llhttp__internal__n_header_field_general;
10412         }
10413         ranges = _mm_loadu_si128((__m128i const*) llparse_blob9);
10414 
10415         /* Find first character that does not match `ranges` */
10416         match_len = _mm_cmpestri(ranges, 2,
10417             input, 16,
10418             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
10419               _SIDD_NEGATIVE_POLARITY);
10420 
10421         if (match_len != 0) {
10422           p += match_len;
10423           goto s_n_llhttp__internal__n_header_field_general;
10424         }
10425         goto s_n_llhttp__internal__n_header_field_general_otherwise;
10426       }
10427       #endif  /* __SSE4_2__ */
10428       switch (lookup_table[(uint8_t) *p]) {
10429         case 1: {
10430           p++;
10431           goto s_n_llhttp__internal__n_header_field_general;
10432         }
10433         default: {
10434           goto s_n_llhttp__internal__n_header_field_general_otherwise;
10435         }
10436       }
10437       /* UNREACHABLE */;
10438       abort();
10439     }
10440     case s_n_llhttp__internal__n_header_field_colon:
10441     s_n_llhttp__internal__n_header_field_colon: {
10442       if (p == endp) {
10443         return s_n_llhttp__internal__n_header_field_colon;
10444       }
10445       switch (*p) {
10446         case ' ': {
10447           goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2;
10448         }
10449         case ':': {
10450           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1;
10451         }
10452         default: {
10453           goto s_n_llhttp__internal__n_invoke_update_header_state_10;
10454         }
10455       }
10456       /* UNREACHABLE */;
10457       abort();
10458     }
10459     case s_n_llhttp__internal__n_header_field_3:
10460     s_n_llhttp__internal__n_header_field_3: {
10461       llparse_match_t match_seq;
10462 
10463       if (p == endp) {
10464         return s_n_llhttp__internal__n_header_field_3;
10465       }
10466       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 6);
10467       p = match_seq.current;
10468       switch (match_seq.status) {
10469         case kMatchComplete: {
10470           p++;
10471           match = 1;
10472           goto s_n_llhttp__internal__n_invoke_store_header_state;
10473         }
10474         case kMatchPause: {
10475           return s_n_llhttp__internal__n_header_field_3;
10476         }
10477         case kMatchMismatch: {
10478           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10479         }
10480       }
10481       /* UNREACHABLE */;
10482       abort();
10483     }
10484     case s_n_llhttp__internal__n_header_field_4:
10485     s_n_llhttp__internal__n_header_field_4: {
10486       llparse_match_t match_seq;
10487 
10488       if (p == endp) {
10489         return s_n_llhttp__internal__n_header_field_4;
10490       }
10491       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob10, 10);
10492       p = match_seq.current;
10493       switch (match_seq.status) {
10494         case kMatchComplete: {
10495           p++;
10496           match = 2;
10497           goto s_n_llhttp__internal__n_invoke_store_header_state;
10498         }
10499         case kMatchPause: {
10500           return s_n_llhttp__internal__n_header_field_4;
10501         }
10502         case kMatchMismatch: {
10503           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10504         }
10505       }
10506       /* UNREACHABLE */;
10507       abort();
10508     }
10509     case s_n_llhttp__internal__n_header_field_2:
10510     s_n_llhttp__internal__n_header_field_2: {
10511       if (p == endp) {
10512         return s_n_llhttp__internal__n_header_field_2;
10513       }
10514       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
10515         case 'n': {
10516           p++;
10517           goto s_n_llhttp__internal__n_header_field_3;
10518         }
10519         case 't': {
10520           p++;
10521           goto s_n_llhttp__internal__n_header_field_4;
10522         }
10523         default: {
10524           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10525         }
10526       }
10527       /* UNREACHABLE */;
10528       abort();
10529     }
10530     case s_n_llhttp__internal__n_header_field_1:
10531     s_n_llhttp__internal__n_header_field_1: {
10532       llparse_match_t match_seq;
10533 
10534       if (p == endp) {
10535         return s_n_llhttp__internal__n_header_field_1;
10536       }
10537       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob1, 2);
10538       p = match_seq.current;
10539       switch (match_seq.status) {
10540         case kMatchComplete: {
10541           p++;
10542           goto s_n_llhttp__internal__n_header_field_2;
10543         }
10544         case kMatchPause: {
10545           return s_n_llhttp__internal__n_header_field_1;
10546         }
10547         case kMatchMismatch: {
10548           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10549         }
10550       }
10551       /* UNREACHABLE */;
10552       abort();
10553     }
10554     case s_n_llhttp__internal__n_header_field_5:
10555     s_n_llhttp__internal__n_header_field_5: {
10556       llparse_match_t match_seq;
10557 
10558       if (p == endp) {
10559         return s_n_llhttp__internal__n_header_field_5;
10560       }
10561       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 15);
10562       p = match_seq.current;
10563       switch (match_seq.status) {
10564         case kMatchComplete: {
10565           p++;
10566           match = 1;
10567           goto s_n_llhttp__internal__n_invoke_store_header_state;
10568         }
10569         case kMatchPause: {
10570           return s_n_llhttp__internal__n_header_field_5;
10571         }
10572         case kMatchMismatch: {
10573           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10574         }
10575       }
10576       /* UNREACHABLE */;
10577       abort();
10578     }
10579     case s_n_llhttp__internal__n_header_field_6:
10580     s_n_llhttp__internal__n_header_field_6: {
10581       llparse_match_t match_seq;
10582 
10583       if (p == endp) {
10584         return s_n_llhttp__internal__n_header_field_6;
10585       }
10586       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 16);
10587       p = match_seq.current;
10588       switch (match_seq.status) {
10589         case kMatchComplete: {
10590           p++;
10591           match = 3;
10592           goto s_n_llhttp__internal__n_invoke_store_header_state;
10593         }
10594         case kMatchPause: {
10595           return s_n_llhttp__internal__n_header_field_6;
10596         }
10597         case kMatchMismatch: {
10598           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10599         }
10600       }
10601       /* UNREACHABLE */;
10602       abort();
10603     }
10604     case s_n_llhttp__internal__n_header_field_7:
10605     s_n_llhttp__internal__n_header_field_7: {
10606       llparse_match_t match_seq;
10607 
10608       if (p == endp) {
10609         return s_n_llhttp__internal__n_header_field_7;
10610       }
10611       match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 6);
10612       p = match_seq.current;
10613       switch (match_seq.status) {
10614         case kMatchComplete: {
10615           p++;
10616           match = 4;
10617           goto s_n_llhttp__internal__n_invoke_store_header_state;
10618         }
10619         case kMatchPause: {
10620           return s_n_llhttp__internal__n_header_field_7;
10621         }
10622         case kMatchMismatch: {
10623           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10624         }
10625       }
10626       /* UNREACHABLE */;
10627       abort();
10628     }
10629     case s_n_llhttp__internal__n_header_field:
10630     s_n_llhttp__internal__n_header_field: {
10631       if (p == endp) {
10632         return s_n_llhttp__internal__n_header_field;
10633       }
10634       switch (((*p) >= 'A' && (*p) <= 'Z' ? (*p | 0x20) : (*p))) {
10635         case 'c': {
10636           p++;
10637           goto s_n_llhttp__internal__n_header_field_1;
10638         }
10639         case 'p': {
10640           p++;
10641           goto s_n_llhttp__internal__n_header_field_5;
10642         }
10643         case 't': {
10644           p++;
10645           goto s_n_llhttp__internal__n_header_field_6;
10646         }
10647         case 'u': {
10648           p++;
10649           goto s_n_llhttp__internal__n_header_field_7;
10650         }
10651         default: {
10652           goto s_n_llhttp__internal__n_invoke_update_header_state_11;
10653         }
10654       }
10655       /* UNREACHABLE */;
10656       abort();
10657     }
10658     case s_n_llhttp__internal__n_span_start_llhttp__on_header_field:
10659     s_n_llhttp__internal__n_span_start_llhttp__on_header_field: {
10660       if (p == endp) {
10661         return s_n_llhttp__internal__n_span_start_llhttp__on_header_field;
10662       }
10663       state->_span_pos0 = (void*) p;
10664       state->_span_cb0 = llhttp__on_header_field;
10665       goto s_n_llhttp__internal__n_header_field;
10666       /* UNREACHABLE */;
10667       abort();
10668     }
10669     case s_n_llhttp__internal__n_header_field_start:
10670     s_n_llhttp__internal__n_header_field_start: {
10671       if (p == endp) {
10672         return s_n_llhttp__internal__n_header_field_start;
10673       }
10674       switch (*p) {
10675         case 10: {
10676           goto s_n_llhttp__internal__n_headers_almost_done;
10677         }
10678         case 13: {
10679           p++;
10680           goto s_n_llhttp__internal__n_headers_almost_done;
10681         }
10682         default: {
10683           goto s_n_llhttp__internal__n_span_start_llhttp__on_header_field;
10684         }
10685       }
10686       /* UNREACHABLE */;
10687       abort();
10688     }
10689     case s_n_llhttp__internal__n_url_skip_to_http09:
10690     s_n_llhttp__internal__n_url_skip_to_http09: {
10691       if (p == endp) {
10692         return s_n_llhttp__internal__n_url_skip_to_http09;
10693       }
10694       p++;
10695       goto s_n_llhttp__internal__n_invoke_update_http_major;
10696       /* UNREACHABLE */;
10697       abort();
10698     }
10699     case s_n_llhttp__internal__n_url_skip_lf_to_http09:
10700     s_n_llhttp__internal__n_url_skip_lf_to_http09: {
10701       llparse_match_t match_seq;
10702 
10703       if (p == endp) {
10704         return s_n_llhttp__internal__n_url_skip_lf_to_http09;
10705       }
10706       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob14, 2);
10707       p = match_seq.current;
10708       switch (match_seq.status) {
10709         case kMatchComplete: {
10710           p++;
10711           goto s_n_llhttp__internal__n_invoke_update_http_major;
10712         }
10713         case kMatchPause: {
10714           return s_n_llhttp__internal__n_url_skip_lf_to_http09;
10715         }
10716         case kMatchMismatch: {
10717           goto s_n_llhttp__internal__n_error_27;
10718         }
10719       }
10720       /* UNREACHABLE */;
10721       abort();
10722     }
10723     case s_n_llhttp__internal__n_req_pri_upgrade:
10724     s_n_llhttp__internal__n_req_pri_upgrade: {
10725       llparse_match_t match_seq;
10726 
10727       if (p == endp) {
10728         return s_n_llhttp__internal__n_req_pri_upgrade;
10729       }
10730       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 10);
10731       p = match_seq.current;
10732       switch (match_seq.status) {
10733         case kMatchComplete: {
10734           p++;
10735           goto s_n_llhttp__internal__n_error_32;
10736         }
10737         case kMatchPause: {
10738           return s_n_llhttp__internal__n_req_pri_upgrade;
10739         }
10740         case kMatchMismatch: {
10741           goto s_n_llhttp__internal__n_error_33;
10742         }
10743       }
10744       /* UNREACHABLE */;
10745       abort();
10746     }
10747     case s_n_llhttp__internal__n_req_http_complete_1:
10748     s_n_llhttp__internal__n_req_http_complete_1: {
10749       if (p == endp) {
10750         return s_n_llhttp__internal__n_req_http_complete_1;
10751       }
10752       switch (*p) {
10753         case 10: {
10754           p++;
10755           goto s_n_llhttp__internal__n_header_field_start;
10756         }
10757         default: {
10758           goto s_n_llhttp__internal__n_error_31;
10759         }
10760       }
10761       /* UNREACHABLE */;
10762       abort();
10763     }
10764     case s_n_llhttp__internal__n_req_http_complete:
10765     s_n_llhttp__internal__n_req_http_complete: {
10766       if (p == endp) {
10767         return s_n_llhttp__internal__n_req_http_complete;
10768       }
10769       switch (*p) {
10770         case 10: {
10771           p++;
10772           goto s_n_llhttp__internal__n_header_field_start;
10773         }
10774         case 13: {
10775           p++;
10776           goto s_n_llhttp__internal__n_req_http_complete_1;
10777         }
10778         default: {
10779           goto s_n_llhttp__internal__n_error_31;
10780         }
10781       }
10782       /* UNREACHABLE */;
10783       abort();
10784     }
10785     case s_n_llhttp__internal__n_req_http_minor:
10786     s_n_llhttp__internal__n_req_http_minor: {
10787       if (p == endp) {
10788         return s_n_llhttp__internal__n_req_http_minor;
10789       }
10790       switch (*p) {
10791         case '0': {
10792           p++;
10793           match = 0;
10794           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10795         }
10796         case '1': {
10797           p++;
10798           match = 1;
10799           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10800         }
10801         case '2': {
10802           p++;
10803           match = 2;
10804           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10805         }
10806         case '3': {
10807           p++;
10808           match = 3;
10809           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10810         }
10811         case '4': {
10812           p++;
10813           match = 4;
10814           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10815         }
10816         case '5': {
10817           p++;
10818           match = 5;
10819           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10820         }
10821         case '6': {
10822           p++;
10823           match = 6;
10824           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10825         }
10826         case '7': {
10827           p++;
10828           match = 7;
10829           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10830         }
10831         case '8': {
10832           p++;
10833           match = 8;
10834           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10835         }
10836         case '9': {
10837           p++;
10838           match = 9;
10839           goto s_n_llhttp__internal__n_invoke_store_http_minor;
10840         }
10841         default: {
10842           goto s_n_llhttp__internal__n_error_36;
10843         }
10844       }
10845       /* UNREACHABLE */;
10846       abort();
10847     }
10848     case s_n_llhttp__internal__n_req_http_dot:
10849     s_n_llhttp__internal__n_req_http_dot: {
10850       if (p == endp) {
10851         return s_n_llhttp__internal__n_req_http_dot;
10852       }
10853       switch (*p) {
10854         case '.': {
10855           p++;
10856           goto s_n_llhttp__internal__n_req_http_minor;
10857         }
10858         default: {
10859           goto s_n_llhttp__internal__n_error_37;
10860         }
10861       }
10862       /* UNREACHABLE */;
10863       abort();
10864     }
10865     case s_n_llhttp__internal__n_req_http_major:
10866     s_n_llhttp__internal__n_req_http_major: {
10867       if (p == endp) {
10868         return s_n_llhttp__internal__n_req_http_major;
10869       }
10870       switch (*p) {
10871         case '0': {
10872           p++;
10873           match = 0;
10874           goto s_n_llhttp__internal__n_invoke_store_http_major;
10875         }
10876         case '1': {
10877           p++;
10878           match = 1;
10879           goto s_n_llhttp__internal__n_invoke_store_http_major;
10880         }
10881         case '2': {
10882           p++;
10883           match = 2;
10884           goto s_n_llhttp__internal__n_invoke_store_http_major;
10885         }
10886         case '3': {
10887           p++;
10888           match = 3;
10889           goto s_n_llhttp__internal__n_invoke_store_http_major;
10890         }
10891         case '4': {
10892           p++;
10893           match = 4;
10894           goto s_n_llhttp__internal__n_invoke_store_http_major;
10895         }
10896         case '5': {
10897           p++;
10898           match = 5;
10899           goto s_n_llhttp__internal__n_invoke_store_http_major;
10900         }
10901         case '6': {
10902           p++;
10903           match = 6;
10904           goto s_n_llhttp__internal__n_invoke_store_http_major;
10905         }
10906         case '7': {
10907           p++;
10908           match = 7;
10909           goto s_n_llhttp__internal__n_invoke_store_http_major;
10910         }
10911         case '8': {
10912           p++;
10913           match = 8;
10914           goto s_n_llhttp__internal__n_invoke_store_http_major;
10915         }
10916         case '9': {
10917           p++;
10918           match = 9;
10919           goto s_n_llhttp__internal__n_invoke_store_http_major;
10920         }
10921         default: {
10922           goto s_n_llhttp__internal__n_error_38;
10923         }
10924       }
10925       /* UNREACHABLE */;
10926       abort();
10927     }
10928     case s_n_llhttp__internal__n_req_http_start_1:
10929     s_n_llhttp__internal__n_req_http_start_1: {
10930       llparse_match_t match_seq;
10931 
10932       if (p == endp) {
10933         return s_n_llhttp__internal__n_req_http_start_1;
10934       }
10935       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 4);
10936       p = match_seq.current;
10937       switch (match_seq.status) {
10938         case kMatchComplete: {
10939           p++;
10940           goto s_n_llhttp__internal__n_invoke_load_method;
10941         }
10942         case kMatchPause: {
10943           return s_n_llhttp__internal__n_req_http_start_1;
10944         }
10945         case kMatchMismatch: {
10946           goto s_n_llhttp__internal__n_error_41;
10947         }
10948       }
10949       /* UNREACHABLE */;
10950       abort();
10951     }
10952     case s_n_llhttp__internal__n_req_http_start_2:
10953     s_n_llhttp__internal__n_req_http_start_2: {
10954       llparse_match_t match_seq;
10955 
10956       if (p == endp) {
10957         return s_n_llhttp__internal__n_req_http_start_2;
10958       }
10959       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 3);
10960       p = match_seq.current;
10961       switch (match_seq.status) {
10962         case kMatchComplete: {
10963           p++;
10964           goto s_n_llhttp__internal__n_invoke_load_method_2;
10965         }
10966         case kMatchPause: {
10967           return s_n_llhttp__internal__n_req_http_start_2;
10968         }
10969         case kMatchMismatch: {
10970           goto s_n_llhttp__internal__n_error_41;
10971         }
10972       }
10973       /* UNREACHABLE */;
10974       abort();
10975     }
10976     case s_n_llhttp__internal__n_req_http_start_3:
10977     s_n_llhttp__internal__n_req_http_start_3: {
10978       llparse_match_t match_seq;
10979 
10980       if (p == endp) {
10981         return s_n_llhttp__internal__n_req_http_start_3;
10982       }
10983       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 4);
10984       p = match_seq.current;
10985       switch (match_seq.status) {
10986         case kMatchComplete: {
10987           p++;
10988           goto s_n_llhttp__internal__n_invoke_load_method_3;
10989         }
10990         case kMatchPause: {
10991           return s_n_llhttp__internal__n_req_http_start_3;
10992         }
10993         case kMatchMismatch: {
10994           goto s_n_llhttp__internal__n_error_41;
10995         }
10996       }
10997       /* UNREACHABLE */;
10998       abort();
10999     }
11000     case s_n_llhttp__internal__n_req_http_start:
11001     s_n_llhttp__internal__n_req_http_start: {
11002       if (p == endp) {
11003         return s_n_llhttp__internal__n_req_http_start;
11004       }
11005       switch (*p) {
11006         case ' ': {
11007           p++;
11008           goto s_n_llhttp__internal__n_req_http_start;
11009         }
11010         case 'H': {
11011           p++;
11012           goto s_n_llhttp__internal__n_req_http_start_1;
11013         }
11014         case 'I': {
11015           p++;
11016           goto s_n_llhttp__internal__n_req_http_start_2;
11017         }
11018         case 'R': {
11019           p++;
11020           goto s_n_llhttp__internal__n_req_http_start_3;
11021         }
11022         default: {
11023           goto s_n_llhttp__internal__n_error_41;
11024         }
11025       }
11026       /* UNREACHABLE */;
11027       abort();
11028     }
11029     case s_n_llhttp__internal__n_url_skip_to_http:
11030     s_n_llhttp__internal__n_url_skip_to_http: {
11031       if (p == endp) {
11032         return s_n_llhttp__internal__n_url_skip_to_http;
11033       }
11034       p++;
11035       goto s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1;
11036       /* UNREACHABLE */;
11037       abort();
11038     }
11039     case s_n_llhttp__internal__n_url_fragment:
11040     s_n_llhttp__internal__n_url_fragment: {
11041       static uint8_t lookup_table[] = {
11042         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
11043         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11044         4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11045         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11046         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11047         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11048         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11049         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
11050         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11051         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11052         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11053         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11054         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11055         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11056         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11057         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
11058       };
11059       if (p == endp) {
11060         return s_n_llhttp__internal__n_url_fragment;
11061       }
11062       switch (lookup_table[(uint8_t) *p]) {
11063         case 1: {
11064           p++;
11065           goto s_n_llhttp__internal__n_url_fragment;
11066         }
11067         case 2: {
11068           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_6;
11069         }
11070         case 3: {
11071           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_7;
11072         }
11073         case 4: {
11074           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_8;
11075         }
11076         default: {
11077           goto s_n_llhttp__internal__n_error_42;
11078         }
11079       }
11080       /* UNREACHABLE */;
11081       abort();
11082     }
11083     case s_n_llhttp__internal__n_span_end_stub_query_3:
11084     s_n_llhttp__internal__n_span_end_stub_query_3: {
11085       if (p == endp) {
11086         return s_n_llhttp__internal__n_span_end_stub_query_3;
11087       }
11088       p++;
11089       goto s_n_llhttp__internal__n_url_fragment;
11090       /* UNREACHABLE */;
11091       abort();
11092     }
11093     case s_n_llhttp__internal__n_url_query:
11094     s_n_llhttp__internal__n_url_query: {
11095       static uint8_t lookup_table[] = {
11096         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 3, 0, 0,
11097         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11098         4, 1, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11099         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11100         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11101         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11102         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11103         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
11104         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11105         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11106         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11107         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11108         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11109         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11110         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11111         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
11112       };
11113       if (p == endp) {
11114         return s_n_llhttp__internal__n_url_query;
11115       }
11116       switch (lookup_table[(uint8_t) *p]) {
11117         case 1: {
11118           p++;
11119           goto s_n_llhttp__internal__n_url_query;
11120         }
11121         case 2: {
11122           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_9;
11123         }
11124         case 3: {
11125           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_10;
11126         }
11127         case 4: {
11128           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_11;
11129         }
11130         case 5: {
11131           goto s_n_llhttp__internal__n_span_end_stub_query_3;
11132         }
11133         default: {
11134           goto s_n_llhttp__internal__n_error_43;
11135         }
11136       }
11137       /* UNREACHABLE */;
11138       abort();
11139     }
11140     case s_n_llhttp__internal__n_url_query_or_fragment:
11141     s_n_llhttp__internal__n_url_query_or_fragment: {
11142       if (p == endp) {
11143         return s_n_llhttp__internal__n_url_query_or_fragment;
11144       }
11145       switch (*p) {
11146         case 10: {
11147           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_3;
11148         }
11149         case 13: {
11150           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_4;
11151         }
11152         case ' ': {
11153           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_5;
11154         }
11155         case '#': {
11156           p++;
11157           goto s_n_llhttp__internal__n_url_fragment;
11158         }
11159         case '?': {
11160           p++;
11161           goto s_n_llhttp__internal__n_url_query;
11162         }
11163         default: {
11164           goto s_n_llhttp__internal__n_error_44;
11165         }
11166       }
11167       /* UNREACHABLE */;
11168       abort();
11169     }
11170     case s_n_llhttp__internal__n_url_path:
11171     s_n_llhttp__internal__n_url_path: {
11172       static uint8_t lookup_table[] = {
11173         0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0,
11174         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11175         0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11176         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
11177         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11178         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11179         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11180         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
11181         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11182         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11183         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11184         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11185         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11186         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11187         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
11188         1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
11189       };
11190       if (p == endp) {
11191         return s_n_llhttp__internal__n_url_path;
11192       }
11193       #ifdef __SSE4_2__
11194       if (endp - p >= 16) {
11195         __m128i ranges;
11196         __m128i input;
11197         int avail;
11198         int match_len;
11199 
11200         /* Load input */
11201         input = _mm_loadu_si128((__m128i const*) p);
11202         ranges = _mm_loadu_si128((__m128i const*) llparse_blob0);
11203 
11204         /* Find first character that does not match `ranges` */
11205         match_len = _mm_cmpestri(ranges, 12,
11206             input, 16,
11207             _SIDD_UBYTE_OPS | _SIDD_CMP_RANGES |
11208               _SIDD_NEGATIVE_POLARITY);
11209 
11210         if (match_len != 0) {
11211           p += match_len;
11212           goto s_n_llhttp__internal__n_url_path;
11213         }
11214         goto s_n_llhttp__internal__n_url_query_or_fragment;
11215       }
11216       #endif  /* __SSE4_2__ */
11217       switch (lookup_table[(uint8_t) *p]) {
11218         case 1: {
11219           p++;
11220           goto s_n_llhttp__internal__n_url_path;
11221         }
11222         default: {
11223           goto s_n_llhttp__internal__n_url_query_or_fragment;
11224         }
11225       }
11226       /* UNREACHABLE */;
11227       abort();
11228     }
11229     case s_n_llhttp__internal__n_span_start_stub_path_2:
11230     s_n_llhttp__internal__n_span_start_stub_path_2: {
11231       if (p == endp) {
11232         return s_n_llhttp__internal__n_span_start_stub_path_2;
11233       }
11234       p++;
11235       goto s_n_llhttp__internal__n_url_path;
11236       /* UNREACHABLE */;
11237       abort();
11238     }
11239     case s_n_llhttp__internal__n_span_start_stub_path:
11240     s_n_llhttp__internal__n_span_start_stub_path: {
11241       if (p == endp) {
11242         return s_n_llhttp__internal__n_span_start_stub_path;
11243       }
11244       p++;
11245       goto s_n_llhttp__internal__n_url_path;
11246       /* UNREACHABLE */;
11247       abort();
11248     }
11249     case s_n_llhttp__internal__n_span_start_stub_path_1:
11250     s_n_llhttp__internal__n_span_start_stub_path_1: {
11251       if (p == endp) {
11252         return s_n_llhttp__internal__n_span_start_stub_path_1;
11253       }
11254       p++;
11255       goto s_n_llhttp__internal__n_url_path;
11256       /* UNREACHABLE */;
11257       abort();
11258     }
11259     case s_n_llhttp__internal__n_url_server_with_at:
11260     s_n_llhttp__internal__n_url_server_with_at: {
11261       static uint8_t lookup_table[] = {
11262         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0,
11263         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11264         3, 4, 0, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5,
11265         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 6,
11266         7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
11267         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 4,
11268         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
11269         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 4, 0,
11270         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11271         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11272         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11273         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11274         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11275         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11276         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11277         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
11278       };
11279       if (p == endp) {
11280         return s_n_llhttp__internal__n_url_server_with_at;
11281       }
11282       switch (lookup_table[(uint8_t) *p]) {
11283         case 1: {
11284           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_12;
11285         }
11286         case 2: {
11287           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_13;
11288         }
11289         case 3: {
11290           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_14;
11291         }
11292         case 4: {
11293           p++;
11294           goto s_n_llhttp__internal__n_url_server;
11295         }
11296         case 5: {
11297           goto s_n_llhttp__internal__n_span_start_stub_path_1;
11298         }
11299         case 6: {
11300           p++;
11301           goto s_n_llhttp__internal__n_url_query;
11302         }
11303         case 7: {
11304           p++;
11305           goto s_n_llhttp__internal__n_error_45;
11306         }
11307         default: {
11308           goto s_n_llhttp__internal__n_error_46;
11309         }
11310       }
11311       /* UNREACHABLE */;
11312       abort();
11313     }
11314     case s_n_llhttp__internal__n_url_server:
11315     s_n_llhttp__internal__n_url_server: {
11316       static uint8_t lookup_table[] = {
11317         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0,
11318         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11319         3, 4, 0, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5,
11320         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 6,
11321         7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
11322         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 4,
11323         0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
11324         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 4, 0,
11325         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11326         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11327         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11328         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11329         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11330         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11331         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11332         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
11333       };
11334       if (p == endp) {
11335         return s_n_llhttp__internal__n_url_server;
11336       }
11337       switch (lookup_table[(uint8_t) *p]) {
11338         case 1: {
11339           goto s_n_llhttp__internal__n_span_end_llhttp__on_url;
11340         }
11341         case 2: {
11342           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_1;
11343         }
11344         case 3: {
11345           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_2;
11346         }
11347         case 4: {
11348           p++;
11349           goto s_n_llhttp__internal__n_url_server;
11350         }
11351         case 5: {
11352           goto s_n_llhttp__internal__n_span_start_stub_path;
11353         }
11354         case 6: {
11355           p++;
11356           goto s_n_llhttp__internal__n_url_query;
11357         }
11358         case 7: {
11359           p++;
11360           goto s_n_llhttp__internal__n_url_server_with_at;
11361         }
11362         default: {
11363           goto s_n_llhttp__internal__n_error_47;
11364         }
11365       }
11366       /* UNREACHABLE */;
11367       abort();
11368     }
11369     case s_n_llhttp__internal__n_url_schema_delim_1:
11370     s_n_llhttp__internal__n_url_schema_delim_1: {
11371       if (p == endp) {
11372         return s_n_llhttp__internal__n_url_schema_delim_1;
11373       }
11374       switch (*p) {
11375         case '/': {
11376           p++;
11377           goto s_n_llhttp__internal__n_url_server;
11378         }
11379         default: {
11380           goto s_n_llhttp__internal__n_error_49;
11381         }
11382       }
11383       /* UNREACHABLE */;
11384       abort();
11385     }
11386     case s_n_llhttp__internal__n_url_schema_delim:
11387     s_n_llhttp__internal__n_url_schema_delim: {
11388       if (p == endp) {
11389         return s_n_llhttp__internal__n_url_schema_delim;
11390       }
11391       switch (*p) {
11392         case 10: {
11393           p++;
11394           goto s_n_llhttp__internal__n_error_48;
11395         }
11396         case 13: {
11397           p++;
11398           goto s_n_llhttp__internal__n_error_48;
11399         }
11400         case ' ': {
11401           p++;
11402           goto s_n_llhttp__internal__n_error_48;
11403         }
11404         case '/': {
11405           p++;
11406           goto s_n_llhttp__internal__n_url_schema_delim_1;
11407         }
11408         default: {
11409           goto s_n_llhttp__internal__n_error_49;
11410         }
11411       }
11412       /* UNREACHABLE */;
11413       abort();
11414     }
11415     case s_n_llhttp__internal__n_span_end_stub_schema:
11416     s_n_llhttp__internal__n_span_end_stub_schema: {
11417       if (p == endp) {
11418         return s_n_llhttp__internal__n_span_end_stub_schema;
11419       }
11420       p++;
11421       goto s_n_llhttp__internal__n_url_schema_delim;
11422       /* UNREACHABLE */;
11423       abort();
11424     }
11425     case s_n_llhttp__internal__n_url_schema:
11426     s_n_llhttp__internal__n_url_schema: {
11427       static uint8_t lookup_table[] = {
11428         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,
11429         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11430         1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11431         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
11432         0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
11433         3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0,
11434         0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
11435         3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0,
11436         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11437         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11438         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11439         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11440         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11441         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11442         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11443         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
11444       };
11445       if (p == endp) {
11446         return s_n_llhttp__internal__n_url_schema;
11447       }
11448       switch (lookup_table[(uint8_t) *p]) {
11449         case 1: {
11450           p++;
11451           goto s_n_llhttp__internal__n_error_48;
11452         }
11453         case 2: {
11454           goto s_n_llhttp__internal__n_span_end_stub_schema;
11455         }
11456         case 3: {
11457           p++;
11458           goto s_n_llhttp__internal__n_url_schema;
11459         }
11460         default: {
11461           goto s_n_llhttp__internal__n_error_50;
11462         }
11463       }
11464       /* UNREACHABLE */;
11465       abort();
11466     }
11467     case s_n_llhttp__internal__n_url_start:
11468     s_n_llhttp__internal__n_url_start: {
11469       static uint8_t lookup_table[] = {
11470         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,
11471         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11472         1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 2,
11473         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11474         0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
11475         3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0,
11476         0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
11477         3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0,
11478         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11479         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11480         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11481         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11482         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11483         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11484         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11485         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
11486       };
11487       if (p == endp) {
11488         return s_n_llhttp__internal__n_url_start;
11489       }
11490       switch (lookup_table[(uint8_t) *p]) {
11491         case 1: {
11492           p++;
11493           goto s_n_llhttp__internal__n_error_48;
11494         }
11495         case 2: {
11496           goto s_n_llhttp__internal__n_span_start_stub_path_2;
11497         }
11498         case 3: {
11499           goto s_n_llhttp__internal__n_url_schema;
11500         }
11501         default: {
11502           goto s_n_llhttp__internal__n_error_51;
11503         }
11504       }
11505       /* UNREACHABLE */;
11506       abort();
11507     }
11508     case s_n_llhttp__internal__n_span_start_llhttp__on_url_1:
11509     s_n_llhttp__internal__n_span_start_llhttp__on_url_1: {
11510       if (p == endp) {
11511         return s_n_llhttp__internal__n_span_start_llhttp__on_url_1;
11512       }
11513       state->_span_pos0 = (void*) p;
11514       state->_span_cb0 = llhttp__on_url;
11515       goto s_n_llhttp__internal__n_url_start;
11516       /* UNREACHABLE */;
11517       abort();
11518     }
11519     case s_n_llhttp__internal__n_span_start_llhttp__on_url:
11520     s_n_llhttp__internal__n_span_start_llhttp__on_url: {
11521       if (p == endp) {
11522         return s_n_llhttp__internal__n_span_start_llhttp__on_url;
11523       }
11524       state->_span_pos0 = (void*) p;
11525       state->_span_cb0 = llhttp__on_url;
11526       goto s_n_llhttp__internal__n_url_server;
11527       /* UNREACHABLE */;
11528       abort();
11529     }
11530     case s_n_llhttp__internal__n_req_spaces_before_url:
11531     s_n_llhttp__internal__n_req_spaces_before_url: {
11532       if (p == endp) {
11533         return s_n_llhttp__internal__n_req_spaces_before_url;
11534       }
11535       switch (*p) {
11536         case ' ': {
11537           p++;
11538           goto s_n_llhttp__internal__n_req_spaces_before_url;
11539         }
11540         default: {
11541           goto s_n_llhttp__internal__n_invoke_is_equal_method;
11542         }
11543       }
11544       /* UNREACHABLE */;
11545       abort();
11546     }
11547     case s_n_llhttp__internal__n_req_first_space_before_url:
11548     s_n_llhttp__internal__n_req_first_space_before_url: {
11549       if (p == endp) {
11550         return s_n_llhttp__internal__n_req_first_space_before_url;
11551       }
11552       switch (*p) {
11553         case ' ': {
11554           p++;
11555           goto s_n_llhttp__internal__n_req_spaces_before_url;
11556         }
11557         default: {
11558           goto s_n_llhttp__internal__n_error_52;
11559         }
11560       }
11561       /* UNREACHABLE */;
11562       abort();
11563     }
11564     case s_n_llhttp__internal__n_start_req_2:
11565     s_n_llhttp__internal__n_start_req_2: {
11566       if (p == endp) {
11567         return s_n_llhttp__internal__n_start_req_2;
11568       }
11569       switch (*p) {
11570         case 'L': {
11571           p++;
11572           match = 19;
11573           goto s_n_llhttp__internal__n_invoke_store_method_1;
11574         }
11575         default: {
11576           goto s_n_llhttp__internal__n_error_64;
11577         }
11578       }
11579       /* UNREACHABLE */;
11580       abort();
11581     }
11582     case s_n_llhttp__internal__n_start_req_3:
11583     s_n_llhttp__internal__n_start_req_3: {
11584       llparse_match_t match_seq;
11585 
11586       if (p == endp) {
11587         return s_n_llhttp__internal__n_start_req_3;
11588       }
11589       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 6);
11590       p = match_seq.current;
11591       switch (match_seq.status) {
11592         case kMatchComplete: {
11593           p++;
11594           match = 36;
11595           goto s_n_llhttp__internal__n_invoke_store_method_1;
11596         }
11597         case kMatchPause: {
11598           return s_n_llhttp__internal__n_start_req_3;
11599         }
11600         case kMatchMismatch: {
11601           goto s_n_llhttp__internal__n_error_64;
11602         }
11603       }
11604       /* UNREACHABLE */;
11605       abort();
11606     }
11607     case s_n_llhttp__internal__n_start_req_1:
11608     s_n_llhttp__internal__n_start_req_1: {
11609       if (p == endp) {
11610         return s_n_llhttp__internal__n_start_req_1;
11611       }
11612       switch (*p) {
11613         case 'C': {
11614           p++;
11615           goto s_n_llhttp__internal__n_start_req_2;
11616         }
11617         case 'N': {
11618           p++;
11619           goto s_n_llhttp__internal__n_start_req_3;
11620         }
11621         default: {
11622           goto s_n_llhttp__internal__n_error_64;
11623         }
11624       }
11625       /* UNREACHABLE */;
11626       abort();
11627     }
11628     case s_n_llhttp__internal__n_start_req_4:
11629     s_n_llhttp__internal__n_start_req_4: {
11630       llparse_match_t match_seq;
11631 
11632       if (p == endp) {
11633         return s_n_llhttp__internal__n_start_req_4;
11634       }
11635       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 3);
11636       p = match_seq.current;
11637       switch (match_seq.status) {
11638         case kMatchComplete: {
11639           p++;
11640           match = 16;
11641           goto s_n_llhttp__internal__n_invoke_store_method_1;
11642         }
11643         case kMatchPause: {
11644           return s_n_llhttp__internal__n_start_req_4;
11645         }
11646         case kMatchMismatch: {
11647           goto s_n_llhttp__internal__n_error_64;
11648         }
11649       }
11650       /* UNREACHABLE */;
11651       abort();
11652     }
11653     case s_n_llhttp__internal__n_start_req_6:
11654     s_n_llhttp__internal__n_start_req_6: {
11655       llparse_match_t match_seq;
11656 
11657       if (p == endp) {
11658         return s_n_llhttp__internal__n_start_req_6;
11659       }
11660       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 6);
11661       p = match_seq.current;
11662       switch (match_seq.status) {
11663         case kMatchComplete: {
11664           p++;
11665           match = 22;
11666           goto s_n_llhttp__internal__n_invoke_store_method_1;
11667         }
11668         case kMatchPause: {
11669           return s_n_llhttp__internal__n_start_req_6;
11670         }
11671         case kMatchMismatch: {
11672           goto s_n_llhttp__internal__n_error_64;
11673         }
11674       }
11675       /* UNREACHABLE */;
11676       abort();
11677     }
11678     case s_n_llhttp__internal__n_start_req_8:
11679     s_n_llhttp__internal__n_start_req_8: {
11680       llparse_match_t match_seq;
11681 
11682       if (p == endp) {
11683         return s_n_llhttp__internal__n_start_req_8;
11684       }
11685       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 4);
11686       p = match_seq.current;
11687       switch (match_seq.status) {
11688         case kMatchComplete: {
11689           p++;
11690           match = 5;
11691           goto s_n_llhttp__internal__n_invoke_store_method_1;
11692         }
11693         case kMatchPause: {
11694           return s_n_llhttp__internal__n_start_req_8;
11695         }
11696         case kMatchMismatch: {
11697           goto s_n_llhttp__internal__n_error_64;
11698         }
11699       }
11700       /* UNREACHABLE */;
11701       abort();
11702     }
11703     case s_n_llhttp__internal__n_start_req_9:
11704     s_n_llhttp__internal__n_start_req_9: {
11705       if (p == endp) {
11706         return s_n_llhttp__internal__n_start_req_9;
11707       }
11708       switch (*p) {
11709         case 'Y': {
11710           p++;
11711           match = 8;
11712           goto s_n_llhttp__internal__n_invoke_store_method_1;
11713         }
11714         default: {
11715           goto s_n_llhttp__internal__n_error_64;
11716         }
11717       }
11718       /* UNREACHABLE */;
11719       abort();
11720     }
11721     case s_n_llhttp__internal__n_start_req_7:
11722     s_n_llhttp__internal__n_start_req_7: {
11723       if (p == endp) {
11724         return s_n_llhttp__internal__n_start_req_7;
11725       }
11726       switch (*p) {
11727         case 'N': {
11728           p++;
11729           goto s_n_llhttp__internal__n_start_req_8;
11730         }
11731         case 'P': {
11732           p++;
11733           goto s_n_llhttp__internal__n_start_req_9;
11734         }
11735         default: {
11736           goto s_n_llhttp__internal__n_error_64;
11737         }
11738       }
11739       /* UNREACHABLE */;
11740       abort();
11741     }
11742     case s_n_llhttp__internal__n_start_req_5:
11743     s_n_llhttp__internal__n_start_req_5: {
11744       if (p == endp) {
11745         return s_n_llhttp__internal__n_start_req_5;
11746       }
11747       switch (*p) {
11748         case 'H': {
11749           p++;
11750           goto s_n_llhttp__internal__n_start_req_6;
11751         }
11752         case 'O': {
11753           p++;
11754           goto s_n_llhttp__internal__n_start_req_7;
11755         }
11756         default: {
11757           goto s_n_llhttp__internal__n_error_64;
11758         }
11759       }
11760       /* UNREACHABLE */;
11761       abort();
11762     }
11763     case s_n_llhttp__internal__n_start_req_12:
11764     s_n_llhttp__internal__n_start_req_12: {
11765       llparse_match_t match_seq;
11766 
11767       if (p == endp) {
11768         return s_n_llhttp__internal__n_start_req_12;
11769       }
11770       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 3);
11771       p = match_seq.current;
11772       switch (match_seq.status) {
11773         case kMatchComplete: {
11774           p++;
11775           match = 0;
11776           goto s_n_llhttp__internal__n_invoke_store_method_1;
11777         }
11778         case kMatchPause: {
11779           return s_n_llhttp__internal__n_start_req_12;
11780         }
11781         case kMatchMismatch: {
11782           goto s_n_llhttp__internal__n_error_64;
11783         }
11784       }
11785       /* UNREACHABLE */;
11786       abort();
11787     }
11788     case s_n_llhttp__internal__n_start_req_13:
11789     s_n_llhttp__internal__n_start_req_13: {
11790       llparse_match_t match_seq;
11791 
11792       if (p == endp) {
11793         return s_n_llhttp__internal__n_start_req_13;
11794       }
11795       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 5);
11796       p = match_seq.current;
11797       switch (match_seq.status) {
11798         case kMatchComplete: {
11799           p++;
11800           match = 35;
11801           goto s_n_llhttp__internal__n_invoke_store_method_1;
11802         }
11803         case kMatchPause: {
11804           return s_n_llhttp__internal__n_start_req_13;
11805         }
11806         case kMatchMismatch: {
11807           goto s_n_llhttp__internal__n_error_64;
11808         }
11809       }
11810       /* UNREACHABLE */;
11811       abort();
11812     }
11813     case s_n_llhttp__internal__n_start_req_11:
11814     s_n_llhttp__internal__n_start_req_11: {
11815       if (p == endp) {
11816         return s_n_llhttp__internal__n_start_req_11;
11817       }
11818       switch (*p) {
11819         case 'L': {
11820           p++;
11821           goto s_n_llhttp__internal__n_start_req_12;
11822         }
11823         case 'S': {
11824           p++;
11825           goto s_n_llhttp__internal__n_start_req_13;
11826         }
11827         default: {
11828           goto s_n_llhttp__internal__n_error_64;
11829         }
11830       }
11831       /* UNREACHABLE */;
11832       abort();
11833     }
11834     case s_n_llhttp__internal__n_start_req_10:
11835     s_n_llhttp__internal__n_start_req_10: {
11836       if (p == endp) {
11837         return s_n_llhttp__internal__n_start_req_10;
11838       }
11839       switch (*p) {
11840         case 'E': {
11841           p++;
11842           goto s_n_llhttp__internal__n_start_req_11;
11843         }
11844         default: {
11845           goto s_n_llhttp__internal__n_error_64;
11846         }
11847       }
11848       /* UNREACHABLE */;
11849       abort();
11850     }
11851     case s_n_llhttp__internal__n_start_req_14:
11852     s_n_llhttp__internal__n_start_req_14: {
11853       llparse_match_t match_seq;
11854 
11855       if (p == endp) {
11856         return s_n_llhttp__internal__n_start_req_14;
11857       }
11858       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 4);
11859       p = match_seq.current;
11860       switch (match_seq.status) {
11861         case kMatchComplete: {
11862           p++;
11863           match = 45;
11864           goto s_n_llhttp__internal__n_invoke_store_method_1;
11865         }
11866         case kMatchPause: {
11867           return s_n_llhttp__internal__n_start_req_14;
11868         }
11869         case kMatchMismatch: {
11870           goto s_n_llhttp__internal__n_error_64;
11871         }
11872       }
11873       /* UNREACHABLE */;
11874       abort();
11875     }
11876     case s_n_llhttp__internal__n_start_req_17:
11877     s_n_llhttp__internal__n_start_req_17: {
11878       llparse_match_t match_seq;
11879 
11880       if (p == endp) {
11881         return s_n_llhttp__internal__n_start_req_17;
11882       }
11883       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 9);
11884       p = match_seq.current;
11885       switch (match_seq.status) {
11886         case kMatchComplete: {
11887           p++;
11888           match = 41;
11889           goto s_n_llhttp__internal__n_invoke_store_method_1;
11890         }
11891         case kMatchPause: {
11892           return s_n_llhttp__internal__n_start_req_17;
11893         }
11894         case kMatchMismatch: {
11895           goto s_n_llhttp__internal__n_error_64;
11896         }
11897       }
11898       /* UNREACHABLE */;
11899       abort();
11900     }
11901     case s_n_llhttp__internal__n_start_req_16:
11902     s_n_llhttp__internal__n_start_req_16: {
11903       if (p == endp) {
11904         return s_n_llhttp__internal__n_start_req_16;
11905       }
11906       switch (*p) {
11907         case '_': {
11908           p++;
11909           goto s_n_llhttp__internal__n_start_req_17;
11910         }
11911         default: {
11912           match = 1;
11913           goto s_n_llhttp__internal__n_invoke_store_method_1;
11914         }
11915       }
11916       /* UNREACHABLE */;
11917       abort();
11918     }
11919     case s_n_llhttp__internal__n_start_req_15:
11920     s_n_llhttp__internal__n_start_req_15: {
11921       llparse_match_t match_seq;
11922 
11923       if (p == endp) {
11924         return s_n_llhttp__internal__n_start_req_15;
11925       }
11926       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 2);
11927       p = match_seq.current;
11928       switch (match_seq.status) {
11929         case kMatchComplete: {
11930           p++;
11931           goto s_n_llhttp__internal__n_start_req_16;
11932         }
11933         case kMatchPause: {
11934           return s_n_llhttp__internal__n_start_req_15;
11935         }
11936         case kMatchMismatch: {
11937           goto s_n_llhttp__internal__n_error_64;
11938         }
11939       }
11940       /* UNREACHABLE */;
11941       abort();
11942     }
11943     case s_n_llhttp__internal__n_start_req_18:
11944     s_n_llhttp__internal__n_start_req_18: {
11945       llparse_match_t match_seq;
11946 
11947       if (p == endp) {
11948         return s_n_llhttp__internal__n_start_req_18;
11949       }
11950       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 3);
11951       p = match_seq.current;
11952       switch (match_seq.status) {
11953         case kMatchComplete: {
11954           p++;
11955           match = 2;
11956           goto s_n_llhttp__internal__n_invoke_store_method_1;
11957         }
11958         case kMatchPause: {
11959           return s_n_llhttp__internal__n_start_req_18;
11960         }
11961         case kMatchMismatch: {
11962           goto s_n_llhttp__internal__n_error_64;
11963         }
11964       }
11965       /* UNREACHABLE */;
11966       abort();
11967     }
11968     case s_n_llhttp__internal__n_start_req_20:
11969     s_n_llhttp__internal__n_start_req_20: {
11970       llparse_match_t match_seq;
11971 
11972       if (p == endp) {
11973         return s_n_llhttp__internal__n_start_req_20;
11974       }
11975       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2);
11976       p = match_seq.current;
11977       switch (match_seq.status) {
11978         case kMatchComplete: {
11979           p++;
11980           match = 31;
11981           goto s_n_llhttp__internal__n_invoke_store_method_1;
11982         }
11983         case kMatchPause: {
11984           return s_n_llhttp__internal__n_start_req_20;
11985         }
11986         case kMatchMismatch: {
11987           goto s_n_llhttp__internal__n_error_64;
11988         }
11989       }
11990       /* UNREACHABLE */;
11991       abort();
11992     }
11993     case s_n_llhttp__internal__n_start_req_21:
11994     s_n_llhttp__internal__n_start_req_21: {
11995       llparse_match_t match_seq;
11996 
11997       if (p == endp) {
11998         return s_n_llhttp__internal__n_start_req_21;
11999       }
12000       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 2);
12001       p = match_seq.current;
12002       switch (match_seq.status) {
12003         case kMatchComplete: {
12004           p++;
12005           match = 9;
12006           goto s_n_llhttp__internal__n_invoke_store_method_1;
12007         }
12008         case kMatchPause: {
12009           return s_n_llhttp__internal__n_start_req_21;
12010         }
12011         case kMatchMismatch: {
12012           goto s_n_llhttp__internal__n_error_64;
12013         }
12014       }
12015       /* UNREACHABLE */;
12016       abort();
12017     }
12018     case s_n_llhttp__internal__n_start_req_19:
12019     s_n_llhttp__internal__n_start_req_19: {
12020       if (p == endp) {
12021         return s_n_llhttp__internal__n_start_req_19;
12022       }
12023       switch (*p) {
12024         case 'I': {
12025           p++;
12026           goto s_n_llhttp__internal__n_start_req_20;
12027         }
12028         case 'O': {
12029           p++;
12030           goto s_n_llhttp__internal__n_start_req_21;
12031         }
12032         default: {
12033           goto s_n_llhttp__internal__n_error_64;
12034         }
12035       }
12036       /* UNREACHABLE */;
12037       abort();
12038     }
12039     case s_n_llhttp__internal__n_start_req_23:
12040     s_n_llhttp__internal__n_start_req_23: {
12041       llparse_match_t match_seq;
12042 
12043       if (p == endp) {
12044         return s_n_llhttp__internal__n_start_req_23;
12045       }
12046       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 6);
12047       p = match_seq.current;
12048       switch (match_seq.status) {
12049         case kMatchComplete: {
12050           p++;
12051           match = 24;
12052           goto s_n_llhttp__internal__n_invoke_store_method_1;
12053         }
12054         case kMatchPause: {
12055           return s_n_llhttp__internal__n_start_req_23;
12056         }
12057         case kMatchMismatch: {
12058           goto s_n_llhttp__internal__n_error_64;
12059         }
12060       }
12061       /* UNREACHABLE */;
12062       abort();
12063     }
12064     case s_n_llhttp__internal__n_start_req_24:
12065     s_n_llhttp__internal__n_start_req_24: {
12066       llparse_match_t match_seq;
12067 
12068       if (p == endp) {
12069         return s_n_llhttp__internal__n_start_req_24;
12070       }
12071       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 3);
12072       p = match_seq.current;
12073       switch (match_seq.status) {
12074         case kMatchComplete: {
12075           p++;
12076           match = 23;
12077           goto s_n_llhttp__internal__n_invoke_store_method_1;
12078         }
12079         case kMatchPause: {
12080           return s_n_llhttp__internal__n_start_req_24;
12081         }
12082         case kMatchMismatch: {
12083           goto s_n_llhttp__internal__n_error_64;
12084         }
12085       }
12086       /* UNREACHABLE */;
12087       abort();
12088     }
12089     case s_n_llhttp__internal__n_start_req_26:
12090     s_n_llhttp__internal__n_start_req_26: {
12091       llparse_match_t match_seq;
12092 
12093       if (p == endp) {
12094         return s_n_llhttp__internal__n_start_req_26;
12095       }
12096       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 7);
12097       p = match_seq.current;
12098       switch (match_seq.status) {
12099         case kMatchComplete: {
12100           p++;
12101           match = 21;
12102           goto s_n_llhttp__internal__n_invoke_store_method_1;
12103         }
12104         case kMatchPause: {
12105           return s_n_llhttp__internal__n_start_req_26;
12106         }
12107         case kMatchMismatch: {
12108           goto s_n_llhttp__internal__n_error_64;
12109         }
12110       }
12111       /* UNREACHABLE */;
12112       abort();
12113     }
12114     case s_n_llhttp__internal__n_start_req_28:
12115     s_n_llhttp__internal__n_start_req_28: {
12116       llparse_match_t match_seq;
12117 
12118       if (p == endp) {
12119         return s_n_llhttp__internal__n_start_req_28;
12120       }
12121       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 6);
12122       p = match_seq.current;
12123       switch (match_seq.status) {
12124         case kMatchComplete: {
12125           p++;
12126           match = 30;
12127           goto s_n_llhttp__internal__n_invoke_store_method_1;
12128         }
12129         case kMatchPause: {
12130           return s_n_llhttp__internal__n_start_req_28;
12131         }
12132         case kMatchMismatch: {
12133           goto s_n_llhttp__internal__n_error_64;
12134         }
12135       }
12136       /* UNREACHABLE */;
12137       abort();
12138     }
12139     case s_n_llhttp__internal__n_start_req_29:
12140     s_n_llhttp__internal__n_start_req_29: {
12141       if (p == endp) {
12142         return s_n_llhttp__internal__n_start_req_29;
12143       }
12144       switch (*p) {
12145         case 'L': {
12146           p++;
12147           match = 10;
12148           goto s_n_llhttp__internal__n_invoke_store_method_1;
12149         }
12150         default: {
12151           goto s_n_llhttp__internal__n_error_64;
12152         }
12153       }
12154       /* UNREACHABLE */;
12155       abort();
12156     }
12157     case s_n_llhttp__internal__n_start_req_27:
12158     s_n_llhttp__internal__n_start_req_27: {
12159       if (p == endp) {
12160         return s_n_llhttp__internal__n_start_req_27;
12161       }
12162       switch (*p) {
12163         case 'A': {
12164           p++;
12165           goto s_n_llhttp__internal__n_start_req_28;
12166         }
12167         case 'O': {
12168           p++;
12169           goto s_n_llhttp__internal__n_start_req_29;
12170         }
12171         default: {
12172           goto s_n_llhttp__internal__n_error_64;
12173         }
12174       }
12175       /* UNREACHABLE */;
12176       abort();
12177     }
12178     case s_n_llhttp__internal__n_start_req_25:
12179     s_n_llhttp__internal__n_start_req_25: {
12180       if (p == endp) {
12181         return s_n_llhttp__internal__n_start_req_25;
12182       }
12183       switch (*p) {
12184         case 'A': {
12185           p++;
12186           goto s_n_llhttp__internal__n_start_req_26;
12187         }
12188         case 'C': {
12189           p++;
12190           goto s_n_llhttp__internal__n_start_req_27;
12191         }
12192         default: {
12193           goto s_n_llhttp__internal__n_error_64;
12194         }
12195       }
12196       /* UNREACHABLE */;
12197       abort();
12198     }
12199     case s_n_llhttp__internal__n_start_req_30:
12200     s_n_llhttp__internal__n_start_req_30: {
12201       llparse_match_t match_seq;
12202 
12203       if (p == endp) {
12204         return s_n_llhttp__internal__n_start_req_30;
12205       }
12206       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 2);
12207       p = match_seq.current;
12208       switch (match_seq.status) {
12209         case kMatchComplete: {
12210           p++;
12211           match = 11;
12212           goto s_n_llhttp__internal__n_invoke_store_method_1;
12213         }
12214         case kMatchPause: {
12215           return s_n_llhttp__internal__n_start_req_30;
12216         }
12217         case kMatchMismatch: {
12218           goto s_n_llhttp__internal__n_error_64;
12219         }
12220       }
12221       /* UNREACHABLE */;
12222       abort();
12223     }
12224     case s_n_llhttp__internal__n_start_req_22:
12225     s_n_llhttp__internal__n_start_req_22: {
12226       if (p == endp) {
12227         return s_n_llhttp__internal__n_start_req_22;
12228       }
12229       switch (*p) {
12230         case '-': {
12231           p++;
12232           goto s_n_llhttp__internal__n_start_req_23;
12233         }
12234         case 'E': {
12235           p++;
12236           goto s_n_llhttp__internal__n_start_req_24;
12237         }
12238         case 'K': {
12239           p++;
12240           goto s_n_llhttp__internal__n_start_req_25;
12241         }
12242         case 'O': {
12243           p++;
12244           goto s_n_llhttp__internal__n_start_req_30;
12245         }
12246         default: {
12247           goto s_n_llhttp__internal__n_error_64;
12248         }
12249       }
12250       /* UNREACHABLE */;
12251       abort();
12252     }
12253     case s_n_llhttp__internal__n_start_req_31:
12254     s_n_llhttp__internal__n_start_req_31: {
12255       llparse_match_t match_seq;
12256 
12257       if (p == endp) {
12258         return s_n_llhttp__internal__n_start_req_31;
12259       }
12260       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 5);
12261       p = match_seq.current;
12262       switch (match_seq.status) {
12263         case kMatchComplete: {
12264           p++;
12265           match = 25;
12266           goto s_n_llhttp__internal__n_invoke_store_method_1;
12267         }
12268         case kMatchPause: {
12269           return s_n_llhttp__internal__n_start_req_31;
12270         }
12271         case kMatchMismatch: {
12272           goto s_n_llhttp__internal__n_error_64;
12273         }
12274       }
12275       /* UNREACHABLE */;
12276       abort();
12277     }
12278     case s_n_llhttp__internal__n_start_req_32:
12279     s_n_llhttp__internal__n_start_req_32: {
12280       llparse_match_t match_seq;
12281 
12282       if (p == endp) {
12283         return s_n_llhttp__internal__n_start_req_32;
12284       }
12285       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 6);
12286       p = match_seq.current;
12287       switch (match_seq.status) {
12288         case kMatchComplete: {
12289           p++;
12290           match = 6;
12291           goto s_n_llhttp__internal__n_invoke_store_method_1;
12292         }
12293         case kMatchPause: {
12294           return s_n_llhttp__internal__n_start_req_32;
12295         }
12296         case kMatchMismatch: {
12297           goto s_n_llhttp__internal__n_error_64;
12298         }
12299       }
12300       /* UNREACHABLE */;
12301       abort();
12302     }
12303     case s_n_llhttp__internal__n_start_req_35:
12304     s_n_llhttp__internal__n_start_req_35: {
12305       llparse_match_t match_seq;
12306 
12307       if (p == endp) {
12308         return s_n_llhttp__internal__n_start_req_35;
12309       }
12310       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2);
12311       p = match_seq.current;
12312       switch (match_seq.status) {
12313         case kMatchComplete: {
12314           p++;
12315           match = 28;
12316           goto s_n_llhttp__internal__n_invoke_store_method_1;
12317         }
12318         case kMatchPause: {
12319           return s_n_llhttp__internal__n_start_req_35;
12320         }
12321         case kMatchMismatch: {
12322           goto s_n_llhttp__internal__n_error_64;
12323         }
12324       }
12325       /* UNREACHABLE */;
12326       abort();
12327     }
12328     case s_n_llhttp__internal__n_start_req_36:
12329     s_n_llhttp__internal__n_start_req_36: {
12330       llparse_match_t match_seq;
12331 
12332       if (p == endp) {
12333         return s_n_llhttp__internal__n_start_req_36;
12334       }
12335       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2);
12336       p = match_seq.current;
12337       switch (match_seq.status) {
12338         case kMatchComplete: {
12339           p++;
12340           match = 39;
12341           goto s_n_llhttp__internal__n_invoke_store_method_1;
12342         }
12343         case kMatchPause: {
12344           return s_n_llhttp__internal__n_start_req_36;
12345         }
12346         case kMatchMismatch: {
12347           goto s_n_llhttp__internal__n_error_64;
12348         }
12349       }
12350       /* UNREACHABLE */;
12351       abort();
12352     }
12353     case s_n_llhttp__internal__n_start_req_34:
12354     s_n_llhttp__internal__n_start_req_34: {
12355       if (p == endp) {
12356         return s_n_llhttp__internal__n_start_req_34;
12357       }
12358       switch (*p) {
12359         case 'T': {
12360           p++;
12361           goto s_n_llhttp__internal__n_start_req_35;
12362         }
12363         case 'U': {
12364           p++;
12365           goto s_n_llhttp__internal__n_start_req_36;
12366         }
12367         default: {
12368           goto s_n_llhttp__internal__n_error_64;
12369         }
12370       }
12371       /* UNREACHABLE */;
12372       abort();
12373     }
12374     case s_n_llhttp__internal__n_start_req_37:
12375     s_n_llhttp__internal__n_start_req_37: {
12376       llparse_match_t match_seq;
12377 
12378       if (p == endp) {
12379         return s_n_llhttp__internal__n_start_req_37;
12380       }
12381       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 2);
12382       p = match_seq.current;
12383       switch (match_seq.status) {
12384         case kMatchComplete: {
12385           p++;
12386           match = 38;
12387           goto s_n_llhttp__internal__n_invoke_store_method_1;
12388         }
12389         case kMatchPause: {
12390           return s_n_llhttp__internal__n_start_req_37;
12391         }
12392         case kMatchMismatch: {
12393           goto s_n_llhttp__internal__n_error_64;
12394         }
12395       }
12396       /* UNREACHABLE */;
12397       abort();
12398     }
12399     case s_n_llhttp__internal__n_start_req_38:
12400     s_n_llhttp__internal__n_start_req_38: {
12401       llparse_match_t match_seq;
12402 
12403       if (p == endp) {
12404         return s_n_llhttp__internal__n_start_req_38;
12405       }
12406       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 2);
12407       p = match_seq.current;
12408       switch (match_seq.status) {
12409         case kMatchComplete: {
12410           p++;
12411           match = 3;
12412           goto s_n_llhttp__internal__n_invoke_store_method_1;
12413         }
12414         case kMatchPause: {
12415           return s_n_llhttp__internal__n_start_req_38;
12416         }
12417         case kMatchMismatch: {
12418           goto s_n_llhttp__internal__n_error_64;
12419         }
12420       }
12421       /* UNREACHABLE */;
12422       abort();
12423     }
12424     case s_n_llhttp__internal__n_start_req_42:
12425     s_n_llhttp__internal__n_start_req_42: {
12426       llparse_match_t match_seq;
12427 
12428       if (p == endp) {
12429         return s_n_llhttp__internal__n_start_req_42;
12430       }
12431       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 3);
12432       p = match_seq.current;
12433       switch (match_seq.status) {
12434         case kMatchComplete: {
12435           p++;
12436           match = 12;
12437           goto s_n_llhttp__internal__n_invoke_store_method_1;
12438         }
12439         case kMatchPause: {
12440           return s_n_llhttp__internal__n_start_req_42;
12441         }
12442         case kMatchMismatch: {
12443           goto s_n_llhttp__internal__n_error_64;
12444         }
12445       }
12446       /* UNREACHABLE */;
12447       abort();
12448     }
12449     case s_n_llhttp__internal__n_start_req_43:
12450     s_n_llhttp__internal__n_start_req_43: {
12451       llparse_match_t match_seq;
12452 
12453       if (p == endp) {
12454         return s_n_llhttp__internal__n_start_req_43;
12455       }
12456       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 4);
12457       p = match_seq.current;
12458       switch (match_seq.status) {
12459         case kMatchComplete: {
12460           p++;
12461           match = 13;
12462           goto s_n_llhttp__internal__n_invoke_store_method_1;
12463         }
12464         case kMatchPause: {
12465           return s_n_llhttp__internal__n_start_req_43;
12466         }
12467         case kMatchMismatch: {
12468           goto s_n_llhttp__internal__n_error_64;
12469         }
12470       }
12471       /* UNREACHABLE */;
12472       abort();
12473     }
12474     case s_n_llhttp__internal__n_start_req_41:
12475     s_n_llhttp__internal__n_start_req_41: {
12476       if (p == endp) {
12477         return s_n_llhttp__internal__n_start_req_41;
12478       }
12479       switch (*p) {
12480         case 'F': {
12481           p++;
12482           goto s_n_llhttp__internal__n_start_req_42;
12483         }
12484         case 'P': {
12485           p++;
12486           goto s_n_llhttp__internal__n_start_req_43;
12487         }
12488         default: {
12489           goto s_n_llhttp__internal__n_error_64;
12490         }
12491       }
12492       /* UNREACHABLE */;
12493       abort();
12494     }
12495     case s_n_llhttp__internal__n_start_req_40:
12496     s_n_llhttp__internal__n_start_req_40: {
12497       if (p == endp) {
12498         return s_n_llhttp__internal__n_start_req_40;
12499       }
12500       switch (*p) {
12501         case 'P': {
12502           p++;
12503           goto s_n_llhttp__internal__n_start_req_41;
12504         }
12505         default: {
12506           goto s_n_llhttp__internal__n_error_64;
12507         }
12508       }
12509       /* UNREACHABLE */;
12510       abort();
12511     }
12512     case s_n_llhttp__internal__n_start_req_39:
12513     s_n_llhttp__internal__n_start_req_39: {
12514       if (p == endp) {
12515         return s_n_llhttp__internal__n_start_req_39;
12516       }
12517       switch (*p) {
12518         case 'I': {
12519           p++;
12520           match = 34;
12521           goto s_n_llhttp__internal__n_invoke_store_method_1;
12522         }
12523         case 'O': {
12524           p++;
12525           goto s_n_llhttp__internal__n_start_req_40;
12526         }
12527         default: {
12528           goto s_n_llhttp__internal__n_error_64;
12529         }
12530       }
12531       /* UNREACHABLE */;
12532       abort();
12533     }
12534     case s_n_llhttp__internal__n_start_req_45:
12535     s_n_llhttp__internal__n_start_req_45: {
12536       llparse_match_t match_seq;
12537 
12538       if (p == endp) {
12539         return s_n_llhttp__internal__n_start_req_45;
12540       }
12541       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 2);
12542       p = match_seq.current;
12543       switch (match_seq.status) {
12544         case kMatchComplete: {
12545           p++;
12546           match = 29;
12547           goto s_n_llhttp__internal__n_invoke_store_method_1;
12548         }
12549         case kMatchPause: {
12550           return s_n_llhttp__internal__n_start_req_45;
12551         }
12552         case kMatchMismatch: {
12553           goto s_n_llhttp__internal__n_error_64;
12554         }
12555       }
12556       /* UNREACHABLE */;
12557       abort();
12558     }
12559     case s_n_llhttp__internal__n_start_req_44:
12560     s_n_llhttp__internal__n_start_req_44: {
12561       if (p == endp) {
12562         return s_n_llhttp__internal__n_start_req_44;
12563       }
12564       switch (*p) {
12565         case 'R': {
12566           p++;
12567           goto s_n_llhttp__internal__n_start_req_45;
12568         }
12569         case 'T': {
12570           p++;
12571           match = 4;
12572           goto s_n_llhttp__internal__n_invoke_store_method_1;
12573         }
12574         default: {
12575           goto s_n_llhttp__internal__n_error_64;
12576         }
12577       }
12578       /* UNREACHABLE */;
12579       abort();
12580     }
12581     case s_n_llhttp__internal__n_start_req_33:
12582     s_n_llhttp__internal__n_start_req_33: {
12583       if (p == endp) {
12584         return s_n_llhttp__internal__n_start_req_33;
12585       }
12586       switch (*p) {
12587         case 'A': {
12588           p++;
12589           goto s_n_llhttp__internal__n_start_req_34;
12590         }
12591         case 'L': {
12592           p++;
12593           goto s_n_llhttp__internal__n_start_req_37;
12594         }
12595         case 'O': {
12596           p++;
12597           goto s_n_llhttp__internal__n_start_req_38;
12598         }
12599         case 'R': {
12600           p++;
12601           goto s_n_llhttp__internal__n_start_req_39;
12602         }
12603         case 'U': {
12604           p++;
12605           goto s_n_llhttp__internal__n_start_req_44;
12606         }
12607         default: {
12608           goto s_n_llhttp__internal__n_error_64;
12609         }
12610       }
12611       /* UNREACHABLE */;
12612       abort();
12613     }
12614     case s_n_llhttp__internal__n_start_req_48:
12615     s_n_llhttp__internal__n_start_req_48: {
12616       llparse_match_t match_seq;
12617 
12618       if (p == endp) {
12619         return s_n_llhttp__internal__n_start_req_48;
12620       }
12621       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 3);
12622       p = match_seq.current;
12623       switch (match_seq.status) {
12624         case kMatchComplete: {
12625           p++;
12626           match = 17;
12627           goto s_n_llhttp__internal__n_invoke_store_method_1;
12628         }
12629         case kMatchPause: {
12630           return s_n_llhttp__internal__n_start_req_48;
12631         }
12632         case kMatchMismatch: {
12633           goto s_n_llhttp__internal__n_error_64;
12634         }
12635       }
12636       /* UNREACHABLE */;
12637       abort();
12638     }
12639     case s_n_llhttp__internal__n_start_req_49:
12640     s_n_llhttp__internal__n_start_req_49: {
12641       llparse_match_t match_seq;
12642 
12643       if (p == endp) {
12644         return s_n_llhttp__internal__n_start_req_49;
12645       }
12646       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 3);
12647       p = match_seq.current;
12648       switch (match_seq.status) {
12649         case kMatchComplete: {
12650           p++;
12651           match = 44;
12652           goto s_n_llhttp__internal__n_invoke_store_method_1;
12653         }
12654         case kMatchPause: {
12655           return s_n_llhttp__internal__n_start_req_49;
12656         }
12657         case kMatchMismatch: {
12658           goto s_n_llhttp__internal__n_error_64;
12659         }
12660       }
12661       /* UNREACHABLE */;
12662       abort();
12663     }
12664     case s_n_llhttp__internal__n_start_req_50:
12665     s_n_llhttp__internal__n_start_req_50: {
12666       llparse_match_t match_seq;
12667 
12668       if (p == endp) {
12669         return s_n_llhttp__internal__n_start_req_50;
12670       }
12671       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 5);
12672       p = match_seq.current;
12673       switch (match_seq.status) {
12674         case kMatchComplete: {
12675           p++;
12676           match = 43;
12677           goto s_n_llhttp__internal__n_invoke_store_method_1;
12678         }
12679         case kMatchPause: {
12680           return s_n_llhttp__internal__n_start_req_50;
12681         }
12682         case kMatchMismatch: {
12683           goto s_n_llhttp__internal__n_error_64;
12684         }
12685       }
12686       /* UNREACHABLE */;
12687       abort();
12688     }
12689     case s_n_llhttp__internal__n_start_req_51:
12690     s_n_llhttp__internal__n_start_req_51: {
12691       llparse_match_t match_seq;
12692 
12693       if (p == endp) {
12694         return s_n_llhttp__internal__n_start_req_51;
12695       }
12696       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 3);
12697       p = match_seq.current;
12698       switch (match_seq.status) {
12699         case kMatchComplete: {
12700           p++;
12701           match = 20;
12702           goto s_n_llhttp__internal__n_invoke_store_method_1;
12703         }
12704         case kMatchPause: {
12705           return s_n_llhttp__internal__n_start_req_51;
12706         }
12707         case kMatchMismatch: {
12708           goto s_n_llhttp__internal__n_error_64;
12709         }
12710       }
12711       /* UNREACHABLE */;
12712       abort();
12713     }
12714     case s_n_llhttp__internal__n_start_req_47:
12715     s_n_llhttp__internal__n_start_req_47: {
12716       if (p == endp) {
12717         return s_n_llhttp__internal__n_start_req_47;
12718       }
12719       switch (*p) {
12720         case 'B': {
12721           p++;
12722           goto s_n_llhttp__internal__n_start_req_48;
12723         }
12724         case 'C': {
12725           p++;
12726           goto s_n_llhttp__internal__n_start_req_49;
12727         }
12728         case 'D': {
12729           p++;
12730           goto s_n_llhttp__internal__n_start_req_50;
12731         }
12732         case 'P': {
12733           p++;
12734           goto s_n_llhttp__internal__n_start_req_51;
12735         }
12736         default: {
12737           goto s_n_llhttp__internal__n_error_64;
12738         }
12739       }
12740       /* UNREACHABLE */;
12741       abort();
12742     }
12743     case s_n_llhttp__internal__n_start_req_46:
12744     s_n_llhttp__internal__n_start_req_46: {
12745       if (p == endp) {
12746         return s_n_llhttp__internal__n_start_req_46;
12747       }
12748       switch (*p) {
12749         case 'E': {
12750           p++;
12751           goto s_n_llhttp__internal__n_start_req_47;
12752         }
12753         default: {
12754           goto s_n_llhttp__internal__n_error_64;
12755         }
12756       }
12757       /* UNREACHABLE */;
12758       abort();
12759     }
12760     case s_n_llhttp__internal__n_start_req_54:
12761     s_n_llhttp__internal__n_start_req_54: {
12762       llparse_match_t match_seq;
12763 
12764       if (p == endp) {
12765         return s_n_llhttp__internal__n_start_req_54;
12766       }
12767       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 3);
12768       p = match_seq.current;
12769       switch (match_seq.status) {
12770         case kMatchComplete: {
12771           p++;
12772           match = 14;
12773           goto s_n_llhttp__internal__n_invoke_store_method_1;
12774         }
12775         case kMatchPause: {
12776           return s_n_llhttp__internal__n_start_req_54;
12777         }
12778         case kMatchMismatch: {
12779           goto s_n_llhttp__internal__n_error_64;
12780         }
12781       }
12782       /* UNREACHABLE */;
12783       abort();
12784     }
12785     case s_n_llhttp__internal__n_start_req_56:
12786     s_n_llhttp__internal__n_start_req_56: {
12787       if (p == endp) {
12788         return s_n_llhttp__internal__n_start_req_56;
12789       }
12790       switch (*p) {
12791         case 'P': {
12792           p++;
12793           match = 37;
12794           goto s_n_llhttp__internal__n_invoke_store_method_1;
12795         }
12796         default: {
12797           goto s_n_llhttp__internal__n_error_64;
12798         }
12799       }
12800       /* UNREACHABLE */;
12801       abort();
12802     }
12803     case s_n_llhttp__internal__n_start_req_57:
12804     s_n_llhttp__internal__n_start_req_57: {
12805       llparse_match_t match_seq;
12806 
12807       if (p == endp) {
12808         return s_n_llhttp__internal__n_start_req_57;
12809       }
12810       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 9);
12811       p = match_seq.current;
12812       switch (match_seq.status) {
12813         case kMatchComplete: {
12814           p++;
12815           match = 42;
12816           goto s_n_llhttp__internal__n_invoke_store_method_1;
12817         }
12818         case kMatchPause: {
12819           return s_n_llhttp__internal__n_start_req_57;
12820         }
12821         case kMatchMismatch: {
12822           goto s_n_llhttp__internal__n_error_64;
12823         }
12824       }
12825       /* UNREACHABLE */;
12826       abort();
12827     }
12828     case s_n_llhttp__internal__n_start_req_55:
12829     s_n_llhttp__internal__n_start_req_55: {
12830       if (p == endp) {
12831         return s_n_llhttp__internal__n_start_req_55;
12832       }
12833       switch (*p) {
12834         case 'U': {
12835           p++;
12836           goto s_n_llhttp__internal__n_start_req_56;
12837         }
12838         case '_': {
12839           p++;
12840           goto s_n_llhttp__internal__n_start_req_57;
12841         }
12842         default: {
12843           goto s_n_llhttp__internal__n_error_64;
12844         }
12845       }
12846       /* UNREACHABLE */;
12847       abort();
12848     }
12849     case s_n_llhttp__internal__n_start_req_53:
12850     s_n_llhttp__internal__n_start_req_53: {
12851       if (p == endp) {
12852         return s_n_llhttp__internal__n_start_req_53;
12853       }
12854       switch (*p) {
12855         case 'A': {
12856           p++;
12857           goto s_n_llhttp__internal__n_start_req_54;
12858         }
12859         case 'T': {
12860           p++;
12861           goto s_n_llhttp__internal__n_start_req_55;
12862         }
12863         default: {
12864           goto s_n_llhttp__internal__n_error_64;
12865         }
12866       }
12867       /* UNREACHABLE */;
12868       abort();
12869     }
12870     case s_n_llhttp__internal__n_start_req_58:
12871     s_n_llhttp__internal__n_start_req_58: {
12872       llparse_match_t match_seq;
12873 
12874       if (p == endp) {
12875         return s_n_llhttp__internal__n_start_req_58;
12876       }
12877       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 4);
12878       p = match_seq.current;
12879       switch (match_seq.status) {
12880         case kMatchComplete: {
12881           p++;
12882           match = 33;
12883           goto s_n_llhttp__internal__n_invoke_store_method_1;
12884         }
12885         case kMatchPause: {
12886           return s_n_llhttp__internal__n_start_req_58;
12887         }
12888         case kMatchMismatch: {
12889           goto s_n_llhttp__internal__n_error_64;
12890         }
12891       }
12892       /* UNREACHABLE */;
12893       abort();
12894     }
12895     case s_n_llhttp__internal__n_start_req_59:
12896     s_n_llhttp__internal__n_start_req_59: {
12897       llparse_match_t match_seq;
12898 
12899       if (p == endp) {
12900         return s_n_llhttp__internal__n_start_req_59;
12901       }
12902       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 7);
12903       p = match_seq.current;
12904       switch (match_seq.status) {
12905         case kMatchComplete: {
12906           p++;
12907           match = 26;
12908           goto s_n_llhttp__internal__n_invoke_store_method_1;
12909         }
12910         case kMatchPause: {
12911           return s_n_llhttp__internal__n_start_req_59;
12912         }
12913         case kMatchMismatch: {
12914           goto s_n_llhttp__internal__n_error_64;
12915         }
12916       }
12917       /* UNREACHABLE */;
12918       abort();
12919     }
12920     case s_n_llhttp__internal__n_start_req_52:
12921     s_n_llhttp__internal__n_start_req_52: {
12922       if (p == endp) {
12923         return s_n_llhttp__internal__n_start_req_52;
12924       }
12925       switch (*p) {
12926         case 'E': {
12927           p++;
12928           goto s_n_llhttp__internal__n_start_req_53;
12929         }
12930         case 'O': {
12931           p++;
12932           goto s_n_llhttp__internal__n_start_req_58;
12933         }
12934         case 'U': {
12935           p++;
12936           goto s_n_llhttp__internal__n_start_req_59;
12937         }
12938         default: {
12939           goto s_n_llhttp__internal__n_error_64;
12940         }
12941       }
12942       /* UNREACHABLE */;
12943       abort();
12944     }
12945     case s_n_llhttp__internal__n_start_req_61:
12946     s_n_llhttp__internal__n_start_req_61: {
12947       llparse_match_t match_seq;
12948 
12949       if (p == endp) {
12950         return s_n_llhttp__internal__n_start_req_61;
12951       }
12952       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 6);
12953       p = match_seq.current;
12954       switch (match_seq.status) {
12955         case kMatchComplete: {
12956           p++;
12957           match = 40;
12958           goto s_n_llhttp__internal__n_invoke_store_method_1;
12959         }
12960         case kMatchPause: {
12961           return s_n_llhttp__internal__n_start_req_61;
12962         }
12963         case kMatchMismatch: {
12964           goto s_n_llhttp__internal__n_error_64;
12965         }
12966       }
12967       /* UNREACHABLE */;
12968       abort();
12969     }
12970     case s_n_llhttp__internal__n_start_req_62:
12971     s_n_llhttp__internal__n_start_req_62: {
12972       llparse_match_t match_seq;
12973 
12974       if (p == endp) {
12975         return s_n_llhttp__internal__n_start_req_62;
12976       }
12977       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 3);
12978       p = match_seq.current;
12979       switch (match_seq.status) {
12980         case kMatchComplete: {
12981           p++;
12982           match = 7;
12983           goto s_n_llhttp__internal__n_invoke_store_method_1;
12984         }
12985         case kMatchPause: {
12986           return s_n_llhttp__internal__n_start_req_62;
12987         }
12988         case kMatchMismatch: {
12989           goto s_n_llhttp__internal__n_error_64;
12990         }
12991       }
12992       /* UNREACHABLE */;
12993       abort();
12994     }
12995     case s_n_llhttp__internal__n_start_req_60:
12996     s_n_llhttp__internal__n_start_req_60: {
12997       if (p == endp) {
12998         return s_n_llhttp__internal__n_start_req_60;
12999       }
13000       switch (*p) {
13001         case 'E': {
13002           p++;
13003           goto s_n_llhttp__internal__n_start_req_61;
13004         }
13005         case 'R': {
13006           p++;
13007           goto s_n_llhttp__internal__n_start_req_62;
13008         }
13009         default: {
13010           goto s_n_llhttp__internal__n_error_64;
13011         }
13012       }
13013       /* UNREACHABLE */;
13014       abort();
13015     }
13016     case s_n_llhttp__internal__n_start_req_65:
13017     s_n_llhttp__internal__n_start_req_65: {
13018       llparse_match_t match_seq;
13019 
13020       if (p == endp) {
13021         return s_n_llhttp__internal__n_start_req_65;
13022       }
13023       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 3);
13024       p = match_seq.current;
13025       switch (match_seq.status) {
13026         case kMatchComplete: {
13027           p++;
13028           match = 18;
13029           goto s_n_llhttp__internal__n_invoke_store_method_1;
13030         }
13031         case kMatchPause: {
13032           return s_n_llhttp__internal__n_start_req_65;
13033         }
13034         case kMatchMismatch: {
13035           goto s_n_llhttp__internal__n_error_64;
13036         }
13037       }
13038       /* UNREACHABLE */;
13039       abort();
13040     }
13041     case s_n_llhttp__internal__n_start_req_67:
13042     s_n_llhttp__internal__n_start_req_67: {
13043       llparse_match_t match_seq;
13044 
13045       if (p == endp) {
13046         return s_n_llhttp__internal__n_start_req_67;
13047       }
13048       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 2);
13049       p = match_seq.current;
13050       switch (match_seq.status) {
13051         case kMatchComplete: {
13052           p++;
13053           match = 32;
13054           goto s_n_llhttp__internal__n_invoke_store_method_1;
13055         }
13056         case kMatchPause: {
13057           return s_n_llhttp__internal__n_start_req_67;
13058         }
13059         case kMatchMismatch: {
13060           goto s_n_llhttp__internal__n_error_64;
13061         }
13062       }
13063       /* UNREACHABLE */;
13064       abort();
13065     }
13066     case s_n_llhttp__internal__n_start_req_68:
13067     s_n_llhttp__internal__n_start_req_68: {
13068       llparse_match_t match_seq;
13069 
13070       if (p == endp) {
13071         return s_n_llhttp__internal__n_start_req_68;
13072       }
13073       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 2);
13074       p = match_seq.current;
13075       switch (match_seq.status) {
13076         case kMatchComplete: {
13077           p++;
13078           match = 15;
13079           goto s_n_llhttp__internal__n_invoke_store_method_1;
13080         }
13081         case kMatchPause: {
13082           return s_n_llhttp__internal__n_start_req_68;
13083         }
13084         case kMatchMismatch: {
13085           goto s_n_llhttp__internal__n_error_64;
13086         }
13087       }
13088       /* UNREACHABLE */;
13089       abort();
13090     }
13091     case s_n_llhttp__internal__n_start_req_66:
13092     s_n_llhttp__internal__n_start_req_66: {
13093       if (p == endp) {
13094         return s_n_llhttp__internal__n_start_req_66;
13095       }
13096       switch (*p) {
13097         case 'I': {
13098           p++;
13099           goto s_n_llhttp__internal__n_start_req_67;
13100         }
13101         case 'O': {
13102           p++;
13103           goto s_n_llhttp__internal__n_start_req_68;
13104         }
13105         default: {
13106           goto s_n_llhttp__internal__n_error_64;
13107         }
13108       }
13109       /* UNREACHABLE */;
13110       abort();
13111     }
13112     case s_n_llhttp__internal__n_start_req_69:
13113     s_n_llhttp__internal__n_start_req_69: {
13114       llparse_match_t match_seq;
13115 
13116       if (p == endp) {
13117         return s_n_llhttp__internal__n_start_req_69;
13118       }
13119       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob58, 8);
13120       p = match_seq.current;
13121       switch (match_seq.status) {
13122         case kMatchComplete: {
13123           p++;
13124           match = 27;
13125           goto s_n_llhttp__internal__n_invoke_store_method_1;
13126         }
13127         case kMatchPause: {
13128           return s_n_llhttp__internal__n_start_req_69;
13129         }
13130         case kMatchMismatch: {
13131           goto s_n_llhttp__internal__n_error_64;
13132         }
13133       }
13134       /* UNREACHABLE */;
13135       abort();
13136     }
13137     case s_n_llhttp__internal__n_start_req_64:
13138     s_n_llhttp__internal__n_start_req_64: {
13139       if (p == endp) {
13140         return s_n_llhttp__internal__n_start_req_64;
13141       }
13142       switch (*p) {
13143         case 'B': {
13144           p++;
13145           goto s_n_llhttp__internal__n_start_req_65;
13146         }
13147         case 'L': {
13148           p++;
13149           goto s_n_llhttp__internal__n_start_req_66;
13150         }
13151         case 'S': {
13152           p++;
13153           goto s_n_llhttp__internal__n_start_req_69;
13154         }
13155         default: {
13156           goto s_n_llhttp__internal__n_error_64;
13157         }
13158       }
13159       /* UNREACHABLE */;
13160       abort();
13161     }
13162     case s_n_llhttp__internal__n_start_req_63:
13163     s_n_llhttp__internal__n_start_req_63: {
13164       if (p == endp) {
13165         return s_n_llhttp__internal__n_start_req_63;
13166       }
13167       switch (*p) {
13168         case 'N': {
13169           p++;
13170           goto s_n_llhttp__internal__n_start_req_64;
13171         }
13172         default: {
13173           goto s_n_llhttp__internal__n_error_64;
13174         }
13175       }
13176       /* UNREACHABLE */;
13177       abort();
13178     }
13179     case s_n_llhttp__internal__n_start_req:
13180     s_n_llhttp__internal__n_start_req: {
13181       if (p == endp) {
13182         return s_n_llhttp__internal__n_start_req;
13183       }
13184       switch (*p) {
13185         case 'A': {
13186           p++;
13187           goto s_n_llhttp__internal__n_start_req_1;
13188         }
13189         case 'B': {
13190           p++;
13191           goto s_n_llhttp__internal__n_start_req_4;
13192         }
13193         case 'C': {
13194           p++;
13195           goto s_n_llhttp__internal__n_start_req_5;
13196         }
13197         case 'D': {
13198           p++;
13199           goto s_n_llhttp__internal__n_start_req_10;
13200         }
13201         case 'F': {
13202           p++;
13203           goto s_n_llhttp__internal__n_start_req_14;
13204         }
13205         case 'G': {
13206           p++;
13207           goto s_n_llhttp__internal__n_start_req_15;
13208         }
13209         case 'H': {
13210           p++;
13211           goto s_n_llhttp__internal__n_start_req_18;
13212         }
13213         case 'L': {
13214           p++;
13215           goto s_n_llhttp__internal__n_start_req_19;
13216         }
13217         case 'M': {
13218           p++;
13219           goto s_n_llhttp__internal__n_start_req_22;
13220         }
13221         case 'N': {
13222           p++;
13223           goto s_n_llhttp__internal__n_start_req_31;
13224         }
13225         case 'O': {
13226           p++;
13227           goto s_n_llhttp__internal__n_start_req_32;
13228         }
13229         case 'P': {
13230           p++;
13231           goto s_n_llhttp__internal__n_start_req_33;
13232         }
13233         case 'R': {
13234           p++;
13235           goto s_n_llhttp__internal__n_start_req_46;
13236         }
13237         case 'S': {
13238           p++;
13239           goto s_n_llhttp__internal__n_start_req_52;
13240         }
13241         case 'T': {
13242           p++;
13243           goto s_n_llhttp__internal__n_start_req_60;
13244         }
13245         case 'U': {
13246           p++;
13247           goto s_n_llhttp__internal__n_start_req_63;
13248         }
13249         default: {
13250           goto s_n_llhttp__internal__n_error_64;
13251         }
13252       }
13253       /* UNREACHABLE */;
13254       abort();
13255     }
13256     case s_n_llhttp__internal__n_invoke_llhttp__on_status_complete:
13257     s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: {
13258       switch (llhttp__on_status_complete(state, p, endp)) {
13259         default:
13260           goto s_n_llhttp__internal__n_header_field_start;
13261       }
13262       /* UNREACHABLE */;
13263       abort();
13264     }
13265     case s_n_llhttp__internal__n_res_line_almost_done:
13266     s_n_llhttp__internal__n_res_line_almost_done: {
13267       if (p == endp) {
13268         return s_n_llhttp__internal__n_res_line_almost_done;
13269       }
13270       p++;
13271       goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
13272       /* UNREACHABLE */;
13273       abort();
13274     }
13275     case s_n_llhttp__internal__n_res_status:
13276     s_n_llhttp__internal__n_res_status: {
13277       if (p == endp) {
13278         return s_n_llhttp__internal__n_res_status;
13279       }
13280       switch (*p) {
13281         case 10: {
13282           goto s_n_llhttp__internal__n_span_end_llhttp__on_status;
13283         }
13284         case 13: {
13285           goto s_n_llhttp__internal__n_span_end_llhttp__on_status_1;
13286         }
13287         default: {
13288           p++;
13289           goto s_n_llhttp__internal__n_res_status;
13290         }
13291       }
13292       /* UNREACHABLE */;
13293       abort();
13294     }
13295     case s_n_llhttp__internal__n_span_start_llhttp__on_status:
13296     s_n_llhttp__internal__n_span_start_llhttp__on_status: {
13297       if (p == endp) {
13298         return s_n_llhttp__internal__n_span_start_llhttp__on_status;
13299       }
13300       state->_span_pos0 = (void*) p;
13301       state->_span_cb0 = llhttp__on_status;
13302       goto s_n_llhttp__internal__n_res_status;
13303       /* UNREACHABLE */;
13304       abort();
13305     }
13306     case s_n_llhttp__internal__n_res_status_start:
13307     s_n_llhttp__internal__n_res_status_start: {
13308       if (p == endp) {
13309         return s_n_llhttp__internal__n_res_status_start;
13310       }
13311       switch (*p) {
13312         case 10: {
13313           p++;
13314           goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
13315         }
13316         case 13: {
13317           p++;
13318           goto s_n_llhttp__internal__n_res_line_almost_done;
13319         }
13320         default: {
13321           goto s_n_llhttp__internal__n_span_start_llhttp__on_status;
13322         }
13323       }
13324       /* UNREACHABLE */;
13325       abort();
13326     }
13327     case s_n_llhttp__internal__n_res_status_code_otherwise:
13328     s_n_llhttp__internal__n_res_status_code_otherwise: {
13329       if (p == endp) {
13330         return s_n_llhttp__internal__n_res_status_code_otherwise;
13331       }
13332       switch (*p) {
13333         case 10: {
13334           goto s_n_llhttp__internal__n_res_status_start;
13335         }
13336         case 13: {
13337           goto s_n_llhttp__internal__n_res_status_start;
13338         }
13339         case ' ': {
13340           p++;
13341           goto s_n_llhttp__internal__n_res_status_start;
13342         }
13343         default: {
13344           goto s_n_llhttp__internal__n_error_56;
13345         }
13346       }
13347       /* UNREACHABLE */;
13348       abort();
13349     }
13350     case s_n_llhttp__internal__n_res_status_code:
13351     s_n_llhttp__internal__n_res_status_code: {
13352       if (p == endp) {
13353         return s_n_llhttp__internal__n_res_status_code;
13354       }
13355       switch (*p) {
13356         case '0': {
13357           p++;
13358           match = 0;
13359           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13360         }
13361         case '1': {
13362           p++;
13363           match = 1;
13364           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13365         }
13366         case '2': {
13367           p++;
13368           match = 2;
13369           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13370         }
13371         case '3': {
13372           p++;
13373           match = 3;
13374           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13375         }
13376         case '4': {
13377           p++;
13378           match = 4;
13379           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13380         }
13381         case '5': {
13382           p++;
13383           match = 5;
13384           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13385         }
13386         case '6': {
13387           p++;
13388           match = 6;
13389           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13390         }
13391         case '7': {
13392           p++;
13393           match = 7;
13394           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13395         }
13396         case '8': {
13397           p++;
13398           match = 8;
13399           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13400         }
13401         case '9': {
13402           p++;
13403           match = 9;
13404           goto s_n_llhttp__internal__n_invoke_mul_add_status_code;
13405         }
13406         default: {
13407           goto s_n_llhttp__internal__n_res_status_code_otherwise;
13408         }
13409       }
13410       /* UNREACHABLE */;
13411       abort();
13412     }
13413     case s_n_llhttp__internal__n_res_http_end:
13414     s_n_llhttp__internal__n_res_http_end: {
13415       if (p == endp) {
13416         return s_n_llhttp__internal__n_res_http_end;
13417       }
13418       switch (*p) {
13419         case ' ': {
13420           p++;
13421           goto s_n_llhttp__internal__n_invoke_update_status_code;
13422         }
13423         default: {
13424           goto s_n_llhttp__internal__n_error_57;
13425         }
13426       }
13427       /* UNREACHABLE */;
13428       abort();
13429     }
13430     case s_n_llhttp__internal__n_res_http_minor:
13431     s_n_llhttp__internal__n_res_http_minor: {
13432       if (p == endp) {
13433         return s_n_llhttp__internal__n_res_http_minor;
13434       }
13435       switch (*p) {
13436         case '0': {
13437           p++;
13438           match = 0;
13439           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13440         }
13441         case '1': {
13442           p++;
13443           match = 1;
13444           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13445         }
13446         case '2': {
13447           p++;
13448           match = 2;
13449           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13450         }
13451         case '3': {
13452           p++;
13453           match = 3;
13454           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13455         }
13456         case '4': {
13457           p++;
13458           match = 4;
13459           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13460         }
13461         case '5': {
13462           p++;
13463           match = 5;
13464           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13465         }
13466         case '6': {
13467           p++;
13468           match = 6;
13469           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13470         }
13471         case '7': {
13472           p++;
13473           match = 7;
13474           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13475         }
13476         case '8': {
13477           p++;
13478           match = 8;
13479           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13480         }
13481         case '9': {
13482           p++;
13483           match = 9;
13484           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
13485         }
13486         default: {
13487           goto s_n_llhttp__internal__n_error_60;
13488         }
13489       }
13490       /* UNREACHABLE */;
13491       abort();
13492     }
13493     case s_n_llhttp__internal__n_res_http_dot:
13494     s_n_llhttp__internal__n_res_http_dot: {
13495       if (p == endp) {
13496         return s_n_llhttp__internal__n_res_http_dot;
13497       }
13498       switch (*p) {
13499         case '.': {
13500           p++;
13501           goto s_n_llhttp__internal__n_res_http_minor;
13502         }
13503         default: {
13504           goto s_n_llhttp__internal__n_error_61;
13505         }
13506       }
13507       /* UNREACHABLE */;
13508       abort();
13509     }
13510     case s_n_llhttp__internal__n_res_http_major:
13511     s_n_llhttp__internal__n_res_http_major: {
13512       if (p == endp) {
13513         return s_n_llhttp__internal__n_res_http_major;
13514       }
13515       switch (*p) {
13516         case '0': {
13517           p++;
13518           match = 0;
13519           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13520         }
13521         case '1': {
13522           p++;
13523           match = 1;
13524           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13525         }
13526         case '2': {
13527           p++;
13528           match = 2;
13529           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13530         }
13531         case '3': {
13532           p++;
13533           match = 3;
13534           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13535         }
13536         case '4': {
13537           p++;
13538           match = 4;
13539           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13540         }
13541         case '5': {
13542           p++;
13543           match = 5;
13544           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13545         }
13546         case '6': {
13547           p++;
13548           match = 6;
13549           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13550         }
13551         case '7': {
13552           p++;
13553           match = 7;
13554           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13555         }
13556         case '8': {
13557           p++;
13558           match = 8;
13559           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13560         }
13561         case '9': {
13562           p++;
13563           match = 9;
13564           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
13565         }
13566         default: {
13567           goto s_n_llhttp__internal__n_error_62;
13568         }
13569       }
13570       /* UNREACHABLE */;
13571       abort();
13572     }
13573     case s_n_llhttp__internal__n_start_res:
13574     s_n_llhttp__internal__n_start_res: {
13575       llparse_match_t match_seq;
13576 
13577       if (p == endp) {
13578         return s_n_llhttp__internal__n_start_res;
13579       }
13580       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob59, 5);
13581       p = match_seq.current;
13582       switch (match_seq.status) {
13583         case kMatchComplete: {
13584           p++;
13585           goto s_n_llhttp__internal__n_res_http_major;
13586         }
13587         case kMatchPause: {
13588           return s_n_llhttp__internal__n_start_res;
13589         }
13590         case kMatchMismatch: {
13591           goto s_n_llhttp__internal__n_error_65;
13592         }
13593       }
13594       /* UNREACHABLE */;
13595       abort();
13596     }
13597     case s_n_llhttp__internal__n_req_or_res_method_2:
13598     s_n_llhttp__internal__n_req_or_res_method_2: {
13599       llparse_match_t match_seq;
13600 
13601       if (p == endp) {
13602         return s_n_llhttp__internal__n_req_or_res_method_2;
13603       }
13604       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob60, 2);
13605       p = match_seq.current;
13606       switch (match_seq.status) {
13607         case kMatchComplete: {
13608           p++;
13609           match = 2;
13610           goto s_n_llhttp__internal__n_invoke_store_method;
13611         }
13612         case kMatchPause: {
13613           return s_n_llhttp__internal__n_req_or_res_method_2;
13614         }
13615         case kMatchMismatch: {
13616           goto s_n_llhttp__internal__n_error_63;
13617         }
13618       }
13619       /* UNREACHABLE */;
13620       abort();
13621     }
13622     case s_n_llhttp__internal__n_req_or_res_method_3:
13623     s_n_llhttp__internal__n_req_or_res_method_3: {
13624       llparse_match_t match_seq;
13625 
13626       if (p == endp) {
13627         return s_n_llhttp__internal__n_req_or_res_method_3;
13628       }
13629       match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob61, 3);
13630       p = match_seq.current;
13631       switch (match_seq.status) {
13632         case kMatchComplete: {
13633           p++;
13634           goto s_n_llhttp__internal__n_invoke_update_type_1;
13635         }
13636         case kMatchPause: {
13637           return s_n_llhttp__internal__n_req_or_res_method_3;
13638         }
13639         case kMatchMismatch: {
13640           goto s_n_llhttp__internal__n_error_63;
13641         }
13642       }
13643       /* UNREACHABLE */;
13644       abort();
13645     }
13646     case s_n_llhttp__internal__n_req_or_res_method_1:
13647     s_n_llhttp__internal__n_req_or_res_method_1: {
13648       if (p == endp) {
13649         return s_n_llhttp__internal__n_req_or_res_method_1;
13650       }
13651       switch (*p) {
13652         case 'E': {
13653           p++;
13654           goto s_n_llhttp__internal__n_req_or_res_method_2;
13655         }
13656         case 'T': {
13657           p++;
13658           goto s_n_llhttp__internal__n_req_or_res_method_3;
13659         }
13660         default: {
13661           goto s_n_llhttp__internal__n_error_63;
13662         }
13663       }
13664       /* UNREACHABLE */;
13665       abort();
13666     }
13667     case s_n_llhttp__internal__n_req_or_res_method:
13668     s_n_llhttp__internal__n_req_or_res_method: {
13669       if (p == endp) {
13670         return s_n_llhttp__internal__n_req_or_res_method;
13671       }
13672       switch (*p) {
13673         case 'H': {
13674           p++;
13675           goto s_n_llhttp__internal__n_req_or_res_method_1;
13676         }
13677         default: {
13678           goto s_n_llhttp__internal__n_error_63;
13679         }
13680       }
13681       /* UNREACHABLE */;
13682       abort();
13683     }
13684     case s_n_llhttp__internal__n_start_req_or_res:
13685     s_n_llhttp__internal__n_start_req_or_res: {
13686       if (p == endp) {
13687         return s_n_llhttp__internal__n_start_req_or_res;
13688       }
13689       switch (*p) {
13690         case 'H': {
13691           goto s_n_llhttp__internal__n_req_or_res_method;
13692         }
13693         default: {
13694           goto s_n_llhttp__internal__n_invoke_update_type_2;
13695         }
13696       }
13697       /* UNREACHABLE */;
13698       abort();
13699     }
13700     case s_n_llhttp__internal__n_invoke_load_type:
13701     s_n_llhttp__internal__n_invoke_load_type: {
13702       switch (llhttp__internal__c_load_type(state, p, endp)) {
13703         case 1:
13704           goto s_n_llhttp__internal__n_start_req;
13705         case 2:
13706           goto s_n_llhttp__internal__n_start_res;
13707         default:
13708           goto s_n_llhttp__internal__n_start_req_or_res;
13709       }
13710       /* UNREACHABLE */;
13711       abort();
13712     }
13713     case s_n_llhttp__internal__n_start:
13714     s_n_llhttp__internal__n_start: {
13715       if (p == endp) {
13716         return s_n_llhttp__internal__n_start;
13717       }
13718       switch (*p) {
13719         case 10: {
13720           p++;
13721           goto s_n_llhttp__internal__n_start;
13722         }
13723         case 13: {
13724           p++;
13725           goto s_n_llhttp__internal__n_start;
13726         }
13727         default: {
13728           goto s_n_llhttp__internal__n_invoke_update_finish;
13729         }
13730       }
13731       /* UNREACHABLE */;
13732       abort();
13733     }
13734     default:
13735       /* UNREACHABLE */
13736       abort();
13737   }
13738   s_n_llhttp__internal__n_error_48: {
13739     state->error = 0x7;
13740     state->reason = "Invalid characters in url";
13741     state->error_pos = (const char*) p;
13742     state->_current = (void*) (intptr_t) s_error;
13743     return s_error;
13744     /* UNREACHABLE */;
13745     abort();
13746   }
13747   s_n_llhttp__internal__n_invoke_update_finish_2: {
13748     switch (llhttp__internal__c_update_finish_1(state, p, endp)) {
13749       default:
13750         goto s_n_llhttp__internal__n_start;
13751     }
13752     /* UNREACHABLE */;
13753     abort();
13754   }
13755   s_n_llhttp__internal__n_invoke_test_lenient_flags: {
13756     switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) {
13757       case 1:
13758         goto s_n_llhttp__internal__n_invoke_update_finish_2;
13759       default:
13760         goto s_n_llhttp__internal__n_closed;
13761     }
13762     /* UNREACHABLE */;
13763     abort();
13764   }
13765   s_n_llhttp__internal__n_invoke_update_finish_1: {
13766     switch (llhttp__internal__c_update_finish_1(state, p, endp)) {
13767       default:
13768         goto s_n_llhttp__internal__n_invoke_test_lenient_flags;
13769     }
13770     /* UNREACHABLE */;
13771     abort();
13772   }
13773   s_n_llhttp__internal__n_pause_5: {
13774     state->error = 0x15;
13775     state->reason = "on_message_complete pause";
13776     state->error_pos = (const char*) p;
13777     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_upgrade;
13778     return s_error;
13779     /* UNREACHABLE */;
13780     abort();
13781   }
13782   s_n_llhttp__internal__n_error_10: {
13783     state->error = 0x12;
13784     state->reason = "`on_message_complete` callback error";
13785     state->error_pos = (const char*) p;
13786     state->_current = (void*) (intptr_t) s_error;
13787     return s_error;
13788     /* UNREACHABLE */;
13789     abort();
13790   }
13791   s_n_llhttp__internal__n_pause_7: {
13792     state->error = 0x15;
13793     state->reason = "on_chunk_complete pause";
13794     state->error_pos = (const char*) p;
13795     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
13796     return s_error;
13797     /* UNREACHABLE */;
13798     abort();
13799   }
13800   s_n_llhttp__internal__n_error_13: {
13801     state->error = 0x14;
13802     state->reason = "`on_chunk_complete` callback error";
13803     state->error_pos = (const char*) p;
13804     state->_current = (void*) (intptr_t) s_error;
13805     return s_error;
13806     /* UNREACHABLE */;
13807     abort();
13808   }
13809   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete_1: {
13810     switch (llhttp__on_chunk_complete(state, p, endp)) {
13811       case 0:
13812         goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
13813       case 21:
13814         goto s_n_llhttp__internal__n_pause_7;
13815       default:
13816         goto s_n_llhttp__internal__n_error_13;
13817     }
13818     /* UNREACHABLE */;
13819     abort();
13820   }
13821   s_n_llhttp__internal__n_error_12: {
13822     state->error = 0x4;
13823     state->reason = "Content-Length can't be present with Transfer-Encoding";
13824     state->error_pos = (const char*) p;
13825     state->_current = (void*) (intptr_t) s_error;
13826     return s_error;
13827     /* UNREACHABLE */;
13828     abort();
13829   }
13830   s_n_llhttp__internal__n_pause_2: {
13831     state->error = 0x15;
13832     state->reason = "on_message_complete pause";
13833     state->error_pos = (const char*) p;
13834     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_pause_1;
13835     return s_error;
13836     /* UNREACHABLE */;
13837     abort();
13838   }
13839   s_n_llhttp__internal__n_error_3: {
13840     state->error = 0x12;
13841     state->reason = "`on_message_complete` callback error";
13842     state->error_pos = (const char*) p;
13843     state->_current = (void*) (intptr_t) s_error;
13844     return s_error;
13845     /* UNREACHABLE */;
13846     abort();
13847   }
13848   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1: {
13849     switch (llhttp__on_message_complete(state, p, endp)) {
13850       case 0:
13851         goto s_n_llhttp__internal__n_pause_1;
13852       case 21:
13853         goto s_n_llhttp__internal__n_pause_2;
13854       default:
13855         goto s_n_llhttp__internal__n_error_3;
13856     }
13857     /* UNREACHABLE */;
13858     abort();
13859   }
13860   s_n_llhttp__internal__n_error_8: {
13861     state->error = 0xc;
13862     state->reason = "Chunk size overflow";
13863     state->error_pos = (const char*) p;
13864     state->_current = (void*) (intptr_t) s_error;
13865     return s_error;
13866     /* UNREACHABLE */;
13867     abort();
13868   }
13869   s_n_llhttp__internal__n_pause_3: {
13870     state->error = 0x15;
13871     state->reason = "on_chunk_complete pause";
13872     state->error_pos = (const char*) p;
13873     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length;
13874     return s_error;
13875     /* UNREACHABLE */;
13876     abort();
13877   }
13878   s_n_llhttp__internal__n_error_5: {
13879     state->error = 0x14;
13880     state->reason = "`on_chunk_complete` callback error";
13881     state->error_pos = (const char*) p;
13882     state->_current = (void*) (intptr_t) s_error;
13883     return s_error;
13884     /* UNREACHABLE */;
13885     abort();
13886   }
13887   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete: {
13888     switch (llhttp__on_chunk_complete(state, p, endp)) {
13889       case 0:
13890         goto s_n_llhttp__internal__n_invoke_update_content_length;
13891       case 21:
13892         goto s_n_llhttp__internal__n_pause_3;
13893       default:
13894         goto s_n_llhttp__internal__n_error_5;
13895     }
13896     /* UNREACHABLE */;
13897     abort();
13898   }
13899   s_n_llhttp__internal__n_span_end_llhttp__on_body: {
13900     const unsigned char* start;
13901     int err;
13902 
13903     start = state->_span_pos0;
13904     state->_span_pos0 = NULL;
13905     err = llhttp__on_body(state, start, p);
13906     if (err != 0) {
13907       state->error = err;
13908       state->error_pos = (const char*) p;
13909       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_data_almost_done;
13910       return s_error;
13911     }
13912     goto s_n_llhttp__internal__n_chunk_data_almost_done;
13913     /* UNREACHABLE */;
13914     abort();
13915   }
13916   s_n_llhttp__internal__n_invoke_or_flags: {
13917     switch (llhttp__internal__c_or_flags(state, p, endp)) {
13918       default:
13919         goto s_n_llhttp__internal__n_header_field_start;
13920     }
13921     /* UNREACHABLE */;
13922     abort();
13923   }
13924   s_n_llhttp__internal__n_pause_4: {
13925     state->error = 0x15;
13926     state->reason = "on_chunk_header pause";
13927     state->error_pos = (const char*) p;
13928     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_content_length;
13929     return s_error;
13930     /* UNREACHABLE */;
13931     abort();
13932   }
13933   s_n_llhttp__internal__n_error_4: {
13934     state->error = 0x13;
13935     state->reason = "`on_chunk_header` callback error";
13936     state->error_pos = (const char*) p;
13937     state->_current = (void*) (intptr_t) s_error;
13938     return s_error;
13939     /* UNREACHABLE */;
13940     abort();
13941   }
13942   s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header: {
13943     switch (llhttp__on_chunk_header(state, p, endp)) {
13944       case 0:
13945         goto s_n_llhttp__internal__n_invoke_is_equal_content_length;
13946       case 21:
13947         goto s_n_llhttp__internal__n_pause_4;
13948       default:
13949         goto s_n_llhttp__internal__n_error_4;
13950     }
13951     /* UNREACHABLE */;
13952     abort();
13953   }
13954   s_n_llhttp__internal__n_error_6: {
13955     state->error = 0x2;
13956     state->reason = "Invalid character in chunk parameters";
13957     state->error_pos = (const char*) p;
13958     state->_current = (void*) (intptr_t) s_error;
13959     return s_error;
13960     /* UNREACHABLE */;
13961     abort();
13962   }
13963   s_n_llhttp__internal__n_error_7: {
13964     state->error = 0xc;
13965     state->reason = "Invalid character in chunk size";
13966     state->error_pos = (const char*) p;
13967     state->_current = (void*) (intptr_t) s_error;
13968     return s_error;
13969     /* UNREACHABLE */;
13970     abort();
13971   }
13972   s_n_llhttp__internal__n_invoke_mul_add_content_length: {
13973     switch (llhttp__internal__c_mul_add_content_length(state, p, endp, match)) {
13974       case 1:
13975         goto s_n_llhttp__internal__n_error_8;
13976       default:
13977         goto s_n_llhttp__internal__n_chunk_size;
13978     }
13979     /* UNREACHABLE */;
13980     abort();
13981   }
13982   s_n_llhttp__internal__n_error_9: {
13983     state->error = 0xc;
13984     state->reason = "Invalid character in chunk size";
13985     state->error_pos = (const char*) p;
13986     state->_current = (void*) (intptr_t) s_error;
13987     return s_error;
13988     /* UNREACHABLE */;
13989     abort();
13990   }
13991   s_n_llhttp__internal__n_span_end_llhttp__on_body_1: {
13992     const unsigned char* start;
13993     int err;
13994 
13995     start = state->_span_pos0;
13996     state->_span_pos0 = NULL;
13997     err = llhttp__on_body(state, start, p);
13998     if (err != 0) {
13999       state->error = err;
14000       state->error_pos = (const char*) p;
14001       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
14002       return s_error;
14003     }
14004     goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2;
14005     /* UNREACHABLE */;
14006     abort();
14007   }
14008   s_n_llhttp__internal__n_invoke_update_finish_3: {
14009     switch (llhttp__internal__c_update_finish_3(state, p, endp)) {
14010       default:
14011         goto s_n_llhttp__internal__n_span_start_llhttp__on_body_2;
14012     }
14013     /* UNREACHABLE */;
14014     abort();
14015   }
14016   s_n_llhttp__internal__n_error_11: {
14017     state->error = 0xf;
14018     state->reason = "Request has invalid `Transfer-Encoding`";
14019     state->error_pos = (const char*) p;
14020     state->_current = (void*) (intptr_t) s_error;
14021     return s_error;
14022     /* UNREACHABLE */;
14023     abort();
14024   }
14025   s_n_llhttp__internal__n_pause: {
14026     state->error = 0x15;
14027     state->reason = "on_message_complete pause";
14028     state->error_pos = (const char*) p;
14029     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
14030     return s_error;
14031     /* UNREACHABLE */;
14032     abort();
14033   }
14034   s_n_llhttp__internal__n_error_2: {
14035     state->error = 0x12;
14036     state->reason = "`on_message_complete` callback error";
14037     state->error_pos = (const char*) p;
14038     state->_current = (void*) (intptr_t) s_error;
14039     return s_error;
14040     /* UNREACHABLE */;
14041     abort();
14042   }
14043   s_n_llhttp__internal__n_invoke_llhttp__on_message_complete: {
14044     switch (llhttp__on_message_complete(state, p, endp)) {
14045       case 0:
14046         goto s_n_llhttp__internal__n_invoke_llhttp__after_message_complete;
14047       case 21:
14048         goto s_n_llhttp__internal__n_pause;
14049       default:
14050         goto s_n_llhttp__internal__n_error_2;
14051     }
14052     /* UNREACHABLE */;
14053     abort();
14054   }
14055   s_n_llhttp__internal__n_invoke_or_flags_1: {
14056     switch (llhttp__internal__c_or_flags_1(state, p, endp)) {
14057       default:
14058         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
14059     }
14060     /* UNREACHABLE */;
14061     abort();
14062   }
14063   s_n_llhttp__internal__n_invoke_or_flags_2: {
14064     switch (llhttp__internal__c_or_flags_1(state, p, endp)) {
14065       default:
14066         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
14067     }
14068     /* UNREACHABLE */;
14069     abort();
14070   }
14071   s_n_llhttp__internal__n_invoke_update_upgrade: {
14072     switch (llhttp__internal__c_update_upgrade(state, p, endp)) {
14073       default:
14074         goto s_n_llhttp__internal__n_invoke_or_flags_2;
14075     }
14076     /* UNREACHABLE */;
14077     abort();
14078   }
14079   s_n_llhttp__internal__n_pause_6: {
14080     state->error = 0x15;
14081     state->reason = "Paused by on_headers_complete";
14082     state->error_pos = (const char*) p;
14083     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
14084     return s_error;
14085     /* UNREACHABLE */;
14086     abort();
14087   }
14088   s_n_llhttp__internal__n_error_1: {
14089     state->error = 0x11;
14090     state->reason = "User callback error";
14091     state->error_pos = (const char*) p;
14092     state->_current = (void*) (intptr_t) s_error;
14093     return s_error;
14094     /* UNREACHABLE */;
14095     abort();
14096   }
14097   s_n_llhttp__internal__n_invoke_llhttp__on_headers_complete: {
14098     switch (llhttp__on_headers_complete(state, p, endp)) {
14099       case 0:
14100         goto s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete;
14101       case 1:
14102         goto s_n_llhttp__internal__n_invoke_or_flags_1;
14103       case 2:
14104         goto s_n_llhttp__internal__n_invoke_update_upgrade;
14105       case 21:
14106         goto s_n_llhttp__internal__n_pause_6;
14107       default:
14108         goto s_n_llhttp__internal__n_error_1;
14109     }
14110     /* UNREACHABLE */;
14111     abort();
14112   }
14113   s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete: {
14114     switch (llhttp__before_headers_complete(state, p, endp)) {
14115       default:
14116         goto s_n_llhttp__internal__n_invoke_llhttp__on_headers_complete;
14117     }
14118     /* UNREACHABLE */;
14119     abort();
14120   }
14121   s_n_llhttp__internal__n_invoke_test_lenient_flags_1: {
14122     switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) {
14123       case 0:
14124         goto s_n_llhttp__internal__n_error_12;
14125       default:
14126         goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete;
14127     }
14128     /* UNREACHABLE */;
14129     abort();
14130   }
14131   s_n_llhttp__internal__n_invoke_test_flags_1: {
14132     switch (llhttp__internal__c_test_flags_1(state, p, endp)) {
14133       case 1:
14134         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1;
14135       default:
14136         goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete;
14137     }
14138     /* UNREACHABLE */;
14139     abort();
14140   }
14141   s_n_llhttp__internal__n_invoke_test_flags: {
14142     switch (llhttp__internal__c_test_flags(state, p, endp)) {
14143       case 1:
14144         goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete_1;
14145       default:
14146         goto s_n_llhttp__internal__n_invoke_test_flags_1;
14147     }
14148     /* UNREACHABLE */;
14149     abort();
14150   }
14151   s_n_llhttp__internal__n_span_end_llhttp__on_header_field: {
14152     const unsigned char* start;
14153     int err;
14154 
14155     start = state->_span_pos0;
14156     state->_span_pos0 = NULL;
14157     err = llhttp__on_header_field(state, start, p);
14158     if (err != 0) {
14159       state->error = err;
14160       state->error_pos = (const char*) (p + 1);
14161       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_14;
14162       return s_error;
14163     }
14164     p++;
14165     goto s_n_llhttp__internal__n_error_14;
14166     /* UNREACHABLE */;
14167     abort();
14168   }
14169   s_n_llhttp__internal__n_invoke_test_lenient_flags_2: {
14170     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
14171       case 1:
14172         goto s_n_llhttp__internal__n_header_field_colon_discard_ws;
14173       default:
14174         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field;
14175     }
14176     /* UNREACHABLE */;
14177     abort();
14178   }
14179   s_n_llhttp__internal__n_error_16: {
14180     state->error = 0xa;
14181     state->reason = "Invalid header value char";
14182     state->error_pos = (const char*) p;
14183     state->_current = (void*) (intptr_t) s_error;
14184     return s_error;
14185     /* UNREACHABLE */;
14186     abort();
14187   }
14188   s_n_llhttp__internal__n_invoke_test_lenient_flags_4: {
14189     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
14190       case 1:
14191         goto s_n_llhttp__internal__n_header_value_discard_ws;
14192       default:
14193         goto s_n_llhttp__internal__n_error_16;
14194     }
14195     /* UNREACHABLE */;
14196     abort();
14197   }
14198   s_n_llhttp__internal__n_error_17: {
14199     state->error = 0xb;
14200     state->reason = "Empty Content-Length";
14201     state->error_pos = (const char*) p;
14202     state->_current = (void*) (intptr_t) s_error;
14203     return s_error;
14204     /* UNREACHABLE */;
14205     abort();
14206   }
14207   s_n_llhttp__internal__n_span_end_llhttp__on_header_value: {
14208     const unsigned char* start;
14209     int err;
14210 
14211     start = state->_span_pos0;
14212     state->_span_pos0 = NULL;
14213     err = llhttp__on_header_value(state, start, p);
14214     if (err != 0) {
14215       state->error = err;
14216       state->error_pos = (const char*) p;
14217       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
14218       return s_error;
14219     }
14220     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
14221     /* UNREACHABLE */;
14222     abort();
14223   }
14224   s_n_llhttp__internal__n_invoke_update_header_state: {
14225     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
14226       default:
14227         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
14228     }
14229     /* UNREACHABLE */;
14230     abort();
14231   }
14232   s_n_llhttp__internal__n_invoke_or_flags_3: {
14233     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
14234       default:
14235         goto s_n_llhttp__internal__n_invoke_update_header_state;
14236     }
14237     /* UNREACHABLE */;
14238     abort();
14239   }
14240   s_n_llhttp__internal__n_invoke_or_flags_4: {
14241     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
14242       default:
14243         goto s_n_llhttp__internal__n_invoke_update_header_state;
14244     }
14245     /* UNREACHABLE */;
14246     abort();
14247   }
14248   s_n_llhttp__internal__n_invoke_or_flags_5: {
14249     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
14250       default:
14251         goto s_n_llhttp__internal__n_invoke_update_header_state;
14252     }
14253     /* UNREACHABLE */;
14254     abort();
14255   }
14256   s_n_llhttp__internal__n_invoke_or_flags_6: {
14257     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
14258       default:
14259         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
14260     }
14261     /* UNREACHABLE */;
14262     abort();
14263   }
14264   s_n_llhttp__internal__n_invoke_load_header_state_1: {
14265     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14266       case 5:
14267         goto s_n_llhttp__internal__n_invoke_or_flags_3;
14268       case 6:
14269         goto s_n_llhttp__internal__n_invoke_or_flags_4;
14270       case 7:
14271         goto s_n_llhttp__internal__n_invoke_or_flags_5;
14272       case 8:
14273         goto s_n_llhttp__internal__n_invoke_or_flags_6;
14274       default:
14275         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value;
14276     }
14277     /* UNREACHABLE */;
14278     abort();
14279   }
14280   s_n_llhttp__internal__n_invoke_load_header_state: {
14281     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14282       case 2:
14283         goto s_n_llhttp__internal__n_error_17;
14284       default:
14285         goto s_n_llhttp__internal__n_invoke_load_header_state_1;
14286     }
14287     /* UNREACHABLE */;
14288     abort();
14289   }
14290   s_n_llhttp__internal__n_error_15: {
14291     state->error = 0xa;
14292     state->reason = "Invalid header value char";
14293     state->error_pos = (const char*) p;
14294     state->_current = (void*) (intptr_t) s_error;
14295     return s_error;
14296     /* UNREACHABLE */;
14297     abort();
14298   }
14299   s_n_llhttp__internal__n_invoke_test_lenient_flags_3: {
14300     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
14301       case 1:
14302         goto s_n_llhttp__internal__n_header_value_discard_lws;
14303       default:
14304         goto s_n_llhttp__internal__n_error_15;
14305     }
14306     /* UNREACHABLE */;
14307     abort();
14308   }
14309   s_n_llhttp__internal__n_error_18: {
14310     state->error = 0x2;
14311     state->reason = "Expected LF after CR";
14312     state->error_pos = (const char*) p;
14313     state->_current = (void*) (intptr_t) s_error;
14314     return s_error;
14315     /* UNREACHABLE */;
14316     abort();
14317   }
14318   s_n_llhttp__internal__n_invoke_test_lenient_flags_5: {
14319     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
14320       case 1:
14321         goto s_n_llhttp__internal__n_header_value_discard_lws;
14322       default:
14323         goto s_n_llhttp__internal__n_error_18;
14324     }
14325     /* UNREACHABLE */;
14326     abort();
14327   }
14328   s_n_llhttp__internal__n_invoke_update_header_state_1: {
14329     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
14330       default:
14331         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
14332     }
14333     /* UNREACHABLE */;
14334     abort();
14335   }
14336   s_n_llhttp__internal__n_invoke_load_header_state_3: {
14337     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14338       case 8:
14339         goto s_n_llhttp__internal__n_invoke_update_header_state_1;
14340       default:
14341         goto s_n_llhttp__internal__n_span_start_llhttp__on_header_value_1;
14342     }
14343     /* UNREACHABLE */;
14344     abort();
14345   }
14346   s_n_llhttp__internal__n_invoke_update_header_state_2: {
14347     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
14348       default:
14349         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
14350     }
14351     /* UNREACHABLE */;
14352     abort();
14353   }
14354   s_n_llhttp__internal__n_invoke_or_flags_7: {
14355     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
14356       default:
14357         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
14358     }
14359     /* UNREACHABLE */;
14360     abort();
14361   }
14362   s_n_llhttp__internal__n_invoke_or_flags_8: {
14363     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
14364       default:
14365         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
14366     }
14367     /* UNREACHABLE */;
14368     abort();
14369   }
14370   s_n_llhttp__internal__n_invoke_or_flags_9: {
14371     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
14372       default:
14373         goto s_n_llhttp__internal__n_invoke_update_header_state_2;
14374     }
14375     /* UNREACHABLE */;
14376     abort();
14377   }
14378   s_n_llhttp__internal__n_invoke_or_flags_10: {
14379     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
14380       default:
14381         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
14382     }
14383     /* UNREACHABLE */;
14384     abort();
14385   }
14386   s_n_llhttp__internal__n_invoke_load_header_state_4: {
14387     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14388       case 5:
14389         goto s_n_llhttp__internal__n_invoke_or_flags_7;
14390       case 6:
14391         goto s_n_llhttp__internal__n_invoke_or_flags_8;
14392       case 7:
14393         goto s_n_llhttp__internal__n_invoke_or_flags_9;
14394       case 8:
14395         goto s_n_llhttp__internal__n_invoke_or_flags_10;
14396       default:
14397         goto s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete;
14398     }
14399     /* UNREACHABLE */;
14400     abort();
14401   }
14402   s_n_llhttp__internal__n_error_19: {
14403     state->error = 0x3;
14404     state->reason = "Missing expected LF after header value";
14405     state->error_pos = (const char*) p;
14406     state->_current = (void*) (intptr_t) s_error;
14407     return s_error;
14408     /* UNREACHABLE */;
14409     abort();
14410   }
14411   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1: {
14412     const unsigned char* start;
14413     int err;
14414 
14415     start = state->_span_pos0;
14416     state->_span_pos0 = NULL;
14417     err = llhttp__on_header_value(state, start, p);
14418     if (err != 0) {
14419       state->error = err;
14420       state->error_pos = (const char*) (p + 1);
14421       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
14422       return s_error;
14423     }
14424     p++;
14425     goto s_n_llhttp__internal__n_header_value_almost_done;
14426     /* UNREACHABLE */;
14427     abort();
14428   }
14429   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_3: {
14430     const unsigned char* start;
14431     int err;
14432 
14433     start = state->_span_pos0;
14434     state->_span_pos0 = NULL;
14435     err = llhttp__on_header_value(state, start, p);
14436     if (err != 0) {
14437       state->error = err;
14438       state->error_pos = (const char*) p;
14439       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
14440       return s_error;
14441     }
14442     goto s_n_llhttp__internal__n_header_value_almost_done;
14443     /* UNREACHABLE */;
14444     abort();
14445   }
14446   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_4: {
14447     const unsigned char* start;
14448     int err;
14449 
14450     start = state->_span_pos0;
14451     state->_span_pos0 = NULL;
14452     err = llhttp__on_header_value(state, start, p);
14453     if (err != 0) {
14454       state->error = err;
14455       state->error_pos = (const char*) (p + 1);
14456       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_almost_done;
14457       return s_error;
14458     }
14459     p++;
14460     goto s_n_llhttp__internal__n_header_value_almost_done;
14461     /* UNREACHABLE */;
14462     abort();
14463   }
14464   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_2: {
14465     const unsigned char* start;
14466     int err;
14467 
14468     start = state->_span_pos0;
14469     state->_span_pos0 = NULL;
14470     err = llhttp__on_header_value(state, start, p);
14471     if (err != 0) {
14472       state->error = err;
14473       state->error_pos = (const char*) p;
14474       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_20;
14475       return s_error;
14476     }
14477     goto s_n_llhttp__internal__n_error_20;
14478     /* UNREACHABLE */;
14479     abort();
14480   }
14481   s_n_llhttp__internal__n_invoke_test_lenient_flags_6: {
14482     switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) {
14483       case 1:
14484         goto s_n_llhttp__internal__n_header_value_lenient;
14485       default:
14486         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_2;
14487     }
14488     /* UNREACHABLE */;
14489     abort();
14490   }
14491   s_n_llhttp__internal__n_invoke_update_header_state_4: {
14492     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
14493       default:
14494         goto s_n_llhttp__internal__n_header_value_connection;
14495     }
14496     /* UNREACHABLE */;
14497     abort();
14498   }
14499   s_n_llhttp__internal__n_invoke_or_flags_11: {
14500     switch (llhttp__internal__c_or_flags_3(state, p, endp)) {
14501       default:
14502         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
14503     }
14504     /* UNREACHABLE */;
14505     abort();
14506   }
14507   s_n_llhttp__internal__n_invoke_or_flags_12: {
14508     switch (llhttp__internal__c_or_flags_4(state, p, endp)) {
14509       default:
14510         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
14511     }
14512     /* UNREACHABLE */;
14513     abort();
14514   }
14515   s_n_llhttp__internal__n_invoke_or_flags_13: {
14516     switch (llhttp__internal__c_or_flags_5(state, p, endp)) {
14517       default:
14518         goto s_n_llhttp__internal__n_invoke_update_header_state_4;
14519     }
14520     /* UNREACHABLE */;
14521     abort();
14522   }
14523   s_n_llhttp__internal__n_invoke_or_flags_14: {
14524     switch (llhttp__internal__c_or_flags_6(state, p, endp)) {
14525       default:
14526         goto s_n_llhttp__internal__n_header_value_connection;
14527     }
14528     /* UNREACHABLE */;
14529     abort();
14530   }
14531   s_n_llhttp__internal__n_invoke_load_header_state_5: {
14532     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14533       case 5:
14534         goto s_n_llhttp__internal__n_invoke_or_flags_11;
14535       case 6:
14536         goto s_n_llhttp__internal__n_invoke_or_flags_12;
14537       case 7:
14538         goto s_n_llhttp__internal__n_invoke_or_flags_13;
14539       case 8:
14540         goto s_n_llhttp__internal__n_invoke_or_flags_14;
14541       default:
14542         goto s_n_llhttp__internal__n_header_value_connection;
14543     }
14544     /* UNREACHABLE */;
14545     abort();
14546   }
14547   s_n_llhttp__internal__n_invoke_update_header_state_5: {
14548     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
14549       default:
14550         goto s_n_llhttp__internal__n_header_value_connection_token;
14551     }
14552     /* UNREACHABLE */;
14553     abort();
14554   }
14555   s_n_llhttp__internal__n_invoke_update_header_state_3: {
14556     switch (llhttp__internal__c_update_header_state_3(state, p, endp)) {
14557       default:
14558         goto s_n_llhttp__internal__n_header_value_connection_ws;
14559     }
14560     /* UNREACHABLE */;
14561     abort();
14562   }
14563   s_n_llhttp__internal__n_invoke_update_header_state_6: {
14564     switch (llhttp__internal__c_update_header_state_6(state, p, endp)) {
14565       default:
14566         goto s_n_llhttp__internal__n_header_value_connection_ws;
14567     }
14568     /* UNREACHABLE */;
14569     abort();
14570   }
14571   s_n_llhttp__internal__n_invoke_update_header_state_7: {
14572     switch (llhttp__internal__c_update_header_state_7(state, p, endp)) {
14573       default:
14574         goto s_n_llhttp__internal__n_header_value_connection_ws;
14575     }
14576     /* UNREACHABLE */;
14577     abort();
14578   }
14579   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_5: {
14580     const unsigned char* start;
14581     int err;
14582 
14583     start = state->_span_pos0;
14584     state->_span_pos0 = NULL;
14585     err = llhttp__on_header_value(state, start, p);
14586     if (err != 0) {
14587       state->error = err;
14588       state->error_pos = (const char*) p;
14589       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_22;
14590       return s_error;
14591     }
14592     goto s_n_llhttp__internal__n_error_22;
14593     /* UNREACHABLE */;
14594     abort();
14595   }
14596   s_n_llhttp__internal__n_invoke_mul_add_content_length_1: {
14597     switch (llhttp__internal__c_mul_add_content_length_1(state, p, endp, match)) {
14598       case 1:
14599         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_5;
14600       default:
14601         goto s_n_llhttp__internal__n_header_value_content_length;
14602     }
14603     /* UNREACHABLE */;
14604     abort();
14605   }
14606   s_n_llhttp__internal__n_invoke_or_flags_15: {
14607     switch (llhttp__internal__c_or_flags_15(state, p, endp)) {
14608       default:
14609         goto s_n_llhttp__internal__n_header_value_otherwise;
14610     }
14611     /* UNREACHABLE */;
14612     abort();
14613   }
14614   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_6: {
14615     const unsigned char* start;
14616     int err;
14617 
14618     start = state->_span_pos0;
14619     state->_span_pos0 = NULL;
14620     err = llhttp__on_header_value(state, start, p);
14621     if (err != 0) {
14622       state->error = err;
14623       state->error_pos = (const char*) p;
14624       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_23;
14625       return s_error;
14626     }
14627     goto s_n_llhttp__internal__n_error_23;
14628     /* UNREACHABLE */;
14629     abort();
14630   }
14631   s_n_llhttp__internal__n_error_21: {
14632     state->error = 0x4;
14633     state->reason = "Duplicate Content-Length";
14634     state->error_pos = (const char*) p;
14635     state->_current = (void*) (intptr_t) s_error;
14636     return s_error;
14637     /* UNREACHABLE */;
14638     abort();
14639   }
14640   s_n_llhttp__internal__n_invoke_test_flags_2: {
14641     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
14642       case 0:
14643         goto s_n_llhttp__internal__n_header_value_content_length;
14644       default:
14645         goto s_n_llhttp__internal__n_error_21;
14646     }
14647     /* UNREACHABLE */;
14648     abort();
14649   }
14650   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8: {
14651     const unsigned char* start;
14652     int err;
14653 
14654     start = state->_span_pos0;
14655     state->_span_pos0 = NULL;
14656     err = llhttp__on_header_value(state, start, p);
14657     if (err != 0) {
14658       state->error = err;
14659       state->error_pos = (const char*) (p + 1);
14660       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_25;
14661       return s_error;
14662     }
14663     p++;
14664     goto s_n_llhttp__internal__n_error_25;
14665     /* UNREACHABLE */;
14666     abort();
14667   }
14668   s_n_llhttp__internal__n_invoke_update_header_state_8: {
14669     switch (llhttp__internal__c_update_header_state_8(state, p, endp)) {
14670       default:
14671         goto s_n_llhttp__internal__n_header_value_otherwise;
14672     }
14673     /* UNREACHABLE */;
14674     abort();
14675   }
14676   s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7: {
14677     const unsigned char* start;
14678     int err;
14679 
14680     start = state->_span_pos0;
14681     state->_span_pos0 = NULL;
14682     err = llhttp__on_header_value(state, start, p);
14683     if (err != 0) {
14684       state->error = err;
14685       state->error_pos = (const char*) (p + 1);
14686       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_24;
14687       return s_error;
14688     }
14689     p++;
14690     goto s_n_llhttp__internal__n_error_24;
14691     /* UNREACHABLE */;
14692     abort();
14693   }
14694   s_n_llhttp__internal__n_invoke_test_lenient_flags_7: {
14695     switch (llhttp__internal__c_test_lenient_flags_7(state, p, endp)) {
14696       case 0:
14697         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7;
14698       default:
14699         goto s_n_llhttp__internal__n_header_value_te_chunked;
14700     }
14701     /* UNREACHABLE */;
14702     abort();
14703   }
14704   s_n_llhttp__internal__n_invoke_load_type_1: {
14705     switch (llhttp__internal__c_load_type(state, p, endp)) {
14706       case 1:
14707         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7;
14708       default:
14709         goto s_n_llhttp__internal__n_header_value_te_chunked;
14710     }
14711     /* UNREACHABLE */;
14712     abort();
14713   }
14714   s_n_llhttp__internal__n_invoke_update_header_state_9: {
14715     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
14716       default:
14717         goto s_n_llhttp__internal__n_header_value;
14718     }
14719     /* UNREACHABLE */;
14720     abort();
14721   }
14722   s_n_llhttp__internal__n_invoke_and_flags: {
14723     switch (llhttp__internal__c_and_flags(state, p, endp)) {
14724       default:
14725         goto s_n_llhttp__internal__n_header_value_te_chunked;
14726     }
14727     /* UNREACHABLE */;
14728     abort();
14729   }
14730   s_n_llhttp__internal__n_invoke_or_flags_17: {
14731     switch (llhttp__internal__c_or_flags_16(state, p, endp)) {
14732       default:
14733         goto s_n_llhttp__internal__n_invoke_and_flags;
14734     }
14735     /* UNREACHABLE */;
14736     abort();
14737   }
14738   s_n_llhttp__internal__n_invoke_test_lenient_flags_8: {
14739     switch (llhttp__internal__c_test_lenient_flags_7(state, p, endp)) {
14740       case 0:
14741         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8;
14742       default:
14743         goto s_n_llhttp__internal__n_invoke_or_flags_17;
14744     }
14745     /* UNREACHABLE */;
14746     abort();
14747   }
14748   s_n_llhttp__internal__n_invoke_load_type_2: {
14749     switch (llhttp__internal__c_load_type(state, p, endp)) {
14750       case 1:
14751         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8;
14752       default:
14753         goto s_n_llhttp__internal__n_invoke_or_flags_17;
14754     }
14755     /* UNREACHABLE */;
14756     abort();
14757   }
14758   s_n_llhttp__internal__n_invoke_or_flags_16: {
14759     switch (llhttp__internal__c_or_flags_16(state, p, endp)) {
14760       default:
14761         goto s_n_llhttp__internal__n_invoke_and_flags;
14762     }
14763     /* UNREACHABLE */;
14764     abort();
14765   }
14766   s_n_llhttp__internal__n_invoke_test_flags_3: {
14767     switch (llhttp__internal__c_test_flags_3(state, p, endp)) {
14768       case 1:
14769         goto s_n_llhttp__internal__n_invoke_load_type_2;
14770       default:
14771         goto s_n_llhttp__internal__n_invoke_or_flags_16;
14772     }
14773     /* UNREACHABLE */;
14774     abort();
14775   }
14776   s_n_llhttp__internal__n_invoke_or_flags_18: {
14777     switch (llhttp__internal__c_or_flags_18(state, p, endp)) {
14778       default:
14779         goto s_n_llhttp__internal__n_invoke_update_header_state_9;
14780     }
14781     /* UNREACHABLE */;
14782     abort();
14783   }
14784   s_n_llhttp__internal__n_invoke_load_header_state_2: {
14785     switch (llhttp__internal__c_load_header_state(state, p, endp)) {
14786       case 1:
14787         goto s_n_llhttp__internal__n_header_value_connection;
14788       case 2:
14789         goto s_n_llhttp__internal__n_invoke_test_flags_2;
14790       case 3:
14791         goto s_n_llhttp__internal__n_invoke_test_flags_3;
14792       case 4:
14793         goto s_n_llhttp__internal__n_invoke_or_flags_18;
14794       default:
14795         goto s_n_llhttp__internal__n_header_value;
14796     }
14797     /* UNREACHABLE */;
14798     abort();
14799   }
14800   s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1: {
14801     const unsigned char* start;
14802     int err;
14803 
14804     start = state->_span_pos0;
14805     state->_span_pos0 = NULL;
14806     err = llhttp__on_header_field(state, start, p);
14807     if (err != 0) {
14808       state->error = err;
14809       state->error_pos = (const char*) (p + 1);
14810       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
14811       return s_error;
14812     }
14813     p++;
14814     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
14815     /* UNREACHABLE */;
14816     abort();
14817   }
14818   s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2: {
14819     const unsigned char* start;
14820     int err;
14821 
14822     start = state->_span_pos0;
14823     state->_span_pos0 = NULL;
14824     err = llhttp__on_header_field(state, start, p);
14825     if (err != 0) {
14826       state->error = err;
14827       state->error_pos = (const char*) (p + 1);
14828       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
14829       return s_error;
14830     }
14831     p++;
14832     goto s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete;
14833     /* UNREACHABLE */;
14834     abort();
14835   }
14836   s_n_llhttp__internal__n_error_26: {
14837     state->error = 0xa;
14838     state->reason = "Invalid header token";
14839     state->error_pos = (const char*) p;
14840     state->_current = (void*) (intptr_t) s_error;
14841     return s_error;
14842     /* UNREACHABLE */;
14843     abort();
14844   }
14845   s_n_llhttp__internal__n_invoke_update_header_state_10: {
14846     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
14847       default:
14848         goto s_n_llhttp__internal__n_header_field_general;
14849     }
14850     /* UNREACHABLE */;
14851     abort();
14852   }
14853   s_n_llhttp__internal__n_invoke_store_header_state: {
14854     switch (llhttp__internal__c_store_header_state(state, p, endp, match)) {
14855       default:
14856         goto s_n_llhttp__internal__n_header_field_colon;
14857     }
14858     /* UNREACHABLE */;
14859     abort();
14860   }
14861   s_n_llhttp__internal__n_invoke_update_header_state_11: {
14862     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
14863       default:
14864         goto s_n_llhttp__internal__n_header_field_general;
14865     }
14866     /* UNREACHABLE */;
14867     abort();
14868   }
14869   s_n_llhttp__internal__n_invoke_llhttp__on_url_complete: {
14870     switch (llhttp__on_url_complete(state, p, endp)) {
14871       default:
14872         goto s_n_llhttp__internal__n_header_field_start;
14873     }
14874     /* UNREACHABLE */;
14875     abort();
14876   }
14877   s_n_llhttp__internal__n_invoke_update_http_minor: {
14878     switch (llhttp__internal__c_update_http_minor(state, p, endp)) {
14879       default:
14880         goto s_n_llhttp__internal__n_invoke_llhttp__on_url_complete;
14881     }
14882     /* UNREACHABLE */;
14883     abort();
14884   }
14885   s_n_llhttp__internal__n_invoke_update_http_major: {
14886     switch (llhttp__internal__c_update_http_major(state, p, endp)) {
14887       default:
14888         goto s_n_llhttp__internal__n_invoke_update_http_minor;
14889     }
14890     /* UNREACHABLE */;
14891     abort();
14892   }
14893   s_n_llhttp__internal__n_span_end_llhttp__on_url_3: {
14894     const unsigned char* start;
14895     int err;
14896 
14897     start = state->_span_pos0;
14898     state->_span_pos0 = NULL;
14899     err = llhttp__on_url(state, start, p);
14900     if (err != 0) {
14901       state->error = err;
14902       state->error_pos = (const char*) p;
14903       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
14904       return s_error;
14905     }
14906     goto s_n_llhttp__internal__n_url_skip_to_http09;
14907     /* UNREACHABLE */;
14908     abort();
14909   }
14910   s_n_llhttp__internal__n_error_27: {
14911     state->error = 0x7;
14912     state->reason = "Expected CRLF";
14913     state->error_pos = (const char*) p;
14914     state->_current = (void*) (intptr_t) s_error;
14915     return s_error;
14916     /* UNREACHABLE */;
14917     abort();
14918   }
14919   s_n_llhttp__internal__n_span_end_llhttp__on_url_4: {
14920     const unsigned char* start;
14921     int err;
14922 
14923     start = state->_span_pos0;
14924     state->_span_pos0 = NULL;
14925     err = llhttp__on_url(state, start, p);
14926     if (err != 0) {
14927       state->error = err;
14928       state->error_pos = (const char*) p;
14929       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
14930       return s_error;
14931     }
14932     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
14933     /* UNREACHABLE */;
14934     abort();
14935   }
14936   s_n_llhttp__internal__n_error_32: {
14937     state->error = 0x17;
14938     state->reason = "Pause on PRI/Upgrade";
14939     state->error_pos = (const char*) p;
14940     state->_current = (void*) (intptr_t) s_error;
14941     return s_error;
14942     /* UNREACHABLE */;
14943     abort();
14944   }
14945   s_n_llhttp__internal__n_error_33: {
14946     state->error = 0x9;
14947     state->reason = "Expected HTTP/2 Connection Preface";
14948     state->error_pos = (const char*) p;
14949     state->_current = (void*) (intptr_t) s_error;
14950     return s_error;
14951     /* UNREACHABLE */;
14952     abort();
14953   }
14954   s_n_llhttp__internal__n_error_31: {
14955     state->error = 0x9;
14956     state->reason = "Expected CRLF after version";
14957     state->error_pos = (const char*) p;
14958     state->_current = (void*) (intptr_t) s_error;
14959     return s_error;
14960     /* UNREACHABLE */;
14961     abort();
14962   }
14963   s_n_llhttp__internal__n_invoke_load_method_1: {
14964     switch (llhttp__internal__c_load_method(state, p, endp)) {
14965       case 34:
14966         goto s_n_llhttp__internal__n_req_pri_upgrade;
14967       default:
14968         goto s_n_llhttp__internal__n_req_http_complete;
14969     }
14970     /* UNREACHABLE */;
14971     abort();
14972   }
14973   s_n_llhttp__internal__n_error_30: {
14974     state->error = 0x9;
14975     state->reason = "Invalid HTTP version";
14976     state->error_pos = (const char*) p;
14977     state->_current = (void*) (intptr_t) s_error;
14978     return s_error;
14979     /* UNREACHABLE */;
14980     abort();
14981   }
14982   s_n_llhttp__internal__n_invoke_load_http_minor: {
14983     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
14984       case 9:
14985         goto s_n_llhttp__internal__n_invoke_load_method_1;
14986       default:
14987         goto s_n_llhttp__internal__n_error_30;
14988     }
14989     /* UNREACHABLE */;
14990     abort();
14991   }
14992   s_n_llhttp__internal__n_error_34: {
14993     state->error = 0x9;
14994     state->reason = "Invalid HTTP version";
14995     state->error_pos = (const char*) p;
14996     state->_current = (void*) (intptr_t) s_error;
14997     return s_error;
14998     /* UNREACHABLE */;
14999     abort();
15000   }
15001   s_n_llhttp__internal__n_invoke_load_http_minor_1: {
15002     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
15003       case 0:
15004         goto s_n_llhttp__internal__n_invoke_load_method_1;
15005       case 1:
15006         goto s_n_llhttp__internal__n_invoke_load_method_1;
15007       default:
15008         goto s_n_llhttp__internal__n_error_34;
15009     }
15010     /* UNREACHABLE */;
15011     abort();
15012   }
15013   s_n_llhttp__internal__n_error_35: {
15014     state->error = 0x9;
15015     state->reason = "Invalid HTTP version";
15016     state->error_pos = (const char*) p;
15017     state->_current = (void*) (intptr_t) s_error;
15018     return s_error;
15019     /* UNREACHABLE */;
15020     abort();
15021   }
15022   s_n_llhttp__internal__n_invoke_load_http_minor_2: {
15023     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
15024       case 0:
15025         goto s_n_llhttp__internal__n_invoke_load_method_1;
15026       default:
15027         goto s_n_llhttp__internal__n_error_35;
15028     }
15029     /* UNREACHABLE */;
15030     abort();
15031   }
15032   s_n_llhttp__internal__n_error_29: {
15033     state->error = 0x9;
15034     state->reason = "Invalid HTTP version";
15035     state->error_pos = (const char*) p;
15036     state->_current = (void*) (intptr_t) s_error;
15037     return s_error;
15038     /* UNREACHABLE */;
15039     abort();
15040   }
15041   s_n_llhttp__internal__n_invoke_load_http_major: {
15042     switch (llhttp__internal__c_load_http_major(state, p, endp)) {
15043       case 0:
15044         goto s_n_llhttp__internal__n_invoke_load_http_minor;
15045       case 1:
15046         goto s_n_llhttp__internal__n_invoke_load_http_minor_1;
15047       case 2:
15048         goto s_n_llhttp__internal__n_invoke_load_http_minor_2;
15049       default:
15050         goto s_n_llhttp__internal__n_error_29;
15051     }
15052     /* UNREACHABLE */;
15053     abort();
15054   }
15055   s_n_llhttp__internal__n_invoke_test_lenient_flags_9: {
15056     switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) {
15057       case 1:
15058         goto s_n_llhttp__internal__n_invoke_load_method_1;
15059       default:
15060         goto s_n_llhttp__internal__n_invoke_load_http_major;
15061     }
15062     /* UNREACHABLE */;
15063     abort();
15064   }
15065   s_n_llhttp__internal__n_invoke_store_http_minor: {
15066     switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) {
15067       default:
15068         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9;
15069     }
15070     /* UNREACHABLE */;
15071     abort();
15072   }
15073   s_n_llhttp__internal__n_error_36: {
15074     state->error = 0x9;
15075     state->reason = "Invalid minor version";
15076     state->error_pos = (const char*) p;
15077     state->_current = (void*) (intptr_t) s_error;
15078     return s_error;
15079     /* UNREACHABLE */;
15080     abort();
15081   }
15082   s_n_llhttp__internal__n_error_37: {
15083     state->error = 0x9;
15084     state->reason = "Expected dot";
15085     state->error_pos = (const char*) p;
15086     state->_current = (void*) (intptr_t) s_error;
15087     return s_error;
15088     /* UNREACHABLE */;
15089     abort();
15090   }
15091   s_n_llhttp__internal__n_invoke_store_http_major: {
15092     switch (llhttp__internal__c_store_http_major(state, p, endp, match)) {
15093       default:
15094         goto s_n_llhttp__internal__n_req_http_dot;
15095     }
15096     /* UNREACHABLE */;
15097     abort();
15098   }
15099   s_n_llhttp__internal__n_error_38: {
15100     state->error = 0x9;
15101     state->reason = "Invalid major version";
15102     state->error_pos = (const char*) p;
15103     state->_current = (void*) (intptr_t) s_error;
15104     return s_error;
15105     /* UNREACHABLE */;
15106     abort();
15107   }
15108   s_n_llhttp__internal__n_error_28: {
15109     state->error = 0x8;
15110     state->reason = "Invalid method for HTTP/x.x request";
15111     state->error_pos = (const char*) p;
15112     state->_current = (void*) (intptr_t) s_error;
15113     return s_error;
15114     /* UNREACHABLE */;
15115     abort();
15116   }
15117   s_n_llhttp__internal__n_invoke_load_method: {
15118     switch (llhttp__internal__c_load_method(state, p, endp)) {
15119       case 0:
15120         goto s_n_llhttp__internal__n_req_http_major;
15121       case 1:
15122         goto s_n_llhttp__internal__n_req_http_major;
15123       case 2:
15124         goto s_n_llhttp__internal__n_req_http_major;
15125       case 3:
15126         goto s_n_llhttp__internal__n_req_http_major;
15127       case 4:
15128         goto s_n_llhttp__internal__n_req_http_major;
15129       case 5:
15130         goto s_n_llhttp__internal__n_req_http_major;
15131       case 6:
15132         goto s_n_llhttp__internal__n_req_http_major;
15133       case 7:
15134         goto s_n_llhttp__internal__n_req_http_major;
15135       case 8:
15136         goto s_n_llhttp__internal__n_req_http_major;
15137       case 9:
15138         goto s_n_llhttp__internal__n_req_http_major;
15139       case 10:
15140         goto s_n_llhttp__internal__n_req_http_major;
15141       case 11:
15142         goto s_n_llhttp__internal__n_req_http_major;
15143       case 12:
15144         goto s_n_llhttp__internal__n_req_http_major;
15145       case 13:
15146         goto s_n_llhttp__internal__n_req_http_major;
15147       case 14:
15148         goto s_n_llhttp__internal__n_req_http_major;
15149       case 15:
15150         goto s_n_llhttp__internal__n_req_http_major;
15151       case 16:
15152         goto s_n_llhttp__internal__n_req_http_major;
15153       case 17:
15154         goto s_n_llhttp__internal__n_req_http_major;
15155       case 18:
15156         goto s_n_llhttp__internal__n_req_http_major;
15157       case 19:
15158         goto s_n_llhttp__internal__n_req_http_major;
15159       case 20:
15160         goto s_n_llhttp__internal__n_req_http_major;
15161       case 21:
15162         goto s_n_llhttp__internal__n_req_http_major;
15163       case 22:
15164         goto s_n_llhttp__internal__n_req_http_major;
15165       case 23:
15166         goto s_n_llhttp__internal__n_req_http_major;
15167       case 24:
15168         goto s_n_llhttp__internal__n_req_http_major;
15169       case 25:
15170         goto s_n_llhttp__internal__n_req_http_major;
15171       case 26:
15172         goto s_n_llhttp__internal__n_req_http_major;
15173       case 27:
15174         goto s_n_llhttp__internal__n_req_http_major;
15175       case 28:
15176         goto s_n_llhttp__internal__n_req_http_major;
15177       case 29:
15178         goto s_n_llhttp__internal__n_req_http_major;
15179       case 30:
15180         goto s_n_llhttp__internal__n_req_http_major;
15181       case 31:
15182         goto s_n_llhttp__internal__n_req_http_major;
15183       case 32:
15184         goto s_n_llhttp__internal__n_req_http_major;
15185       case 33:
15186         goto s_n_llhttp__internal__n_req_http_major;
15187       case 34:
15188         goto s_n_llhttp__internal__n_req_http_major;
15189       default:
15190         goto s_n_llhttp__internal__n_error_28;
15191     }
15192     /* UNREACHABLE */;
15193     abort();
15194   }
15195   s_n_llhttp__internal__n_error_41: {
15196     state->error = 0x8;
15197     state->reason = "Expected HTTP/";
15198     state->error_pos = (const char*) p;
15199     state->_current = (void*) (intptr_t) s_error;
15200     return s_error;
15201     /* UNREACHABLE */;
15202     abort();
15203   }
15204   s_n_llhttp__internal__n_error_39: {
15205     state->error = 0x8;
15206     state->reason = "Expected SOURCE method for ICE/x.x request";
15207     state->error_pos = (const char*) p;
15208     state->_current = (void*) (intptr_t) s_error;
15209     return s_error;
15210     /* UNREACHABLE */;
15211     abort();
15212   }
15213   s_n_llhttp__internal__n_invoke_load_method_2: {
15214     switch (llhttp__internal__c_load_method(state, p, endp)) {
15215       case 33:
15216         goto s_n_llhttp__internal__n_req_http_major;
15217       default:
15218         goto s_n_llhttp__internal__n_error_39;
15219     }
15220     /* UNREACHABLE */;
15221     abort();
15222   }
15223   s_n_llhttp__internal__n_error_40: {
15224     state->error = 0x8;
15225     state->reason = "Invalid method for RTSP/x.x request";
15226     state->error_pos = (const char*) p;
15227     state->_current = (void*) (intptr_t) s_error;
15228     return s_error;
15229     /* UNREACHABLE */;
15230     abort();
15231   }
15232   s_n_llhttp__internal__n_invoke_load_method_3: {
15233     switch (llhttp__internal__c_load_method(state, p, endp)) {
15234       case 1:
15235         goto s_n_llhttp__internal__n_req_http_major;
15236       case 3:
15237         goto s_n_llhttp__internal__n_req_http_major;
15238       case 6:
15239         goto s_n_llhttp__internal__n_req_http_major;
15240       case 35:
15241         goto s_n_llhttp__internal__n_req_http_major;
15242       case 36:
15243         goto s_n_llhttp__internal__n_req_http_major;
15244       case 37:
15245         goto s_n_llhttp__internal__n_req_http_major;
15246       case 38:
15247         goto s_n_llhttp__internal__n_req_http_major;
15248       case 39:
15249         goto s_n_llhttp__internal__n_req_http_major;
15250       case 40:
15251         goto s_n_llhttp__internal__n_req_http_major;
15252       case 41:
15253         goto s_n_llhttp__internal__n_req_http_major;
15254       case 42:
15255         goto s_n_llhttp__internal__n_req_http_major;
15256       case 43:
15257         goto s_n_llhttp__internal__n_req_http_major;
15258       case 44:
15259         goto s_n_llhttp__internal__n_req_http_major;
15260       case 45:
15261         goto s_n_llhttp__internal__n_req_http_major;
15262       default:
15263         goto s_n_llhttp__internal__n_error_40;
15264     }
15265     /* UNREACHABLE */;
15266     abort();
15267   }
15268   s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1: {
15269     switch (llhttp__on_url_complete(state, p, endp)) {
15270       default:
15271         goto s_n_llhttp__internal__n_req_http_start;
15272     }
15273     /* UNREACHABLE */;
15274     abort();
15275   }
15276   s_n_llhttp__internal__n_span_end_llhttp__on_url_5: {
15277     const unsigned char* start;
15278     int err;
15279 
15280     start = state->_span_pos0;
15281     state->_span_pos0 = NULL;
15282     err = llhttp__on_url(state, start, p);
15283     if (err != 0) {
15284       state->error = err;
15285       state->error_pos = (const char*) p;
15286       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
15287       return s_error;
15288     }
15289     goto s_n_llhttp__internal__n_url_skip_to_http;
15290     /* UNREACHABLE */;
15291     abort();
15292   }
15293   s_n_llhttp__internal__n_span_end_llhttp__on_url_6: {
15294     const unsigned char* start;
15295     int err;
15296 
15297     start = state->_span_pos0;
15298     state->_span_pos0 = NULL;
15299     err = llhttp__on_url(state, start, p);
15300     if (err != 0) {
15301       state->error = err;
15302       state->error_pos = (const char*) p;
15303       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
15304       return s_error;
15305     }
15306     goto s_n_llhttp__internal__n_url_skip_to_http09;
15307     /* UNREACHABLE */;
15308     abort();
15309   }
15310   s_n_llhttp__internal__n_span_end_llhttp__on_url_7: {
15311     const unsigned char* start;
15312     int err;
15313 
15314     start = state->_span_pos0;
15315     state->_span_pos0 = NULL;
15316     err = llhttp__on_url(state, start, p);
15317     if (err != 0) {
15318       state->error = err;
15319       state->error_pos = (const char*) p;
15320       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
15321       return s_error;
15322     }
15323     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
15324     /* UNREACHABLE */;
15325     abort();
15326   }
15327   s_n_llhttp__internal__n_span_end_llhttp__on_url_8: {
15328     const unsigned char* start;
15329     int err;
15330 
15331     start = state->_span_pos0;
15332     state->_span_pos0 = NULL;
15333     err = llhttp__on_url(state, start, p);
15334     if (err != 0) {
15335       state->error = err;
15336       state->error_pos = (const char*) p;
15337       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
15338       return s_error;
15339     }
15340     goto s_n_llhttp__internal__n_url_skip_to_http;
15341     /* UNREACHABLE */;
15342     abort();
15343   }
15344   s_n_llhttp__internal__n_error_42: {
15345     state->error = 0x7;
15346     state->reason = "Invalid char in url fragment start";
15347     state->error_pos = (const char*) p;
15348     state->_current = (void*) (intptr_t) s_error;
15349     return s_error;
15350     /* UNREACHABLE */;
15351     abort();
15352   }
15353   s_n_llhttp__internal__n_span_end_llhttp__on_url_9: {
15354     const unsigned char* start;
15355     int err;
15356 
15357     start = state->_span_pos0;
15358     state->_span_pos0 = NULL;
15359     err = llhttp__on_url(state, start, p);
15360     if (err != 0) {
15361       state->error = err;
15362       state->error_pos = (const char*) p;
15363       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
15364       return s_error;
15365     }
15366     goto s_n_llhttp__internal__n_url_skip_to_http09;
15367     /* UNREACHABLE */;
15368     abort();
15369   }
15370   s_n_llhttp__internal__n_span_end_llhttp__on_url_10: {
15371     const unsigned char* start;
15372     int err;
15373 
15374     start = state->_span_pos0;
15375     state->_span_pos0 = NULL;
15376     err = llhttp__on_url(state, start, p);
15377     if (err != 0) {
15378       state->error = err;
15379       state->error_pos = (const char*) p;
15380       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
15381       return s_error;
15382     }
15383     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
15384     /* UNREACHABLE */;
15385     abort();
15386   }
15387   s_n_llhttp__internal__n_span_end_llhttp__on_url_11: {
15388     const unsigned char* start;
15389     int err;
15390 
15391     start = state->_span_pos0;
15392     state->_span_pos0 = NULL;
15393     err = llhttp__on_url(state, start, p);
15394     if (err != 0) {
15395       state->error = err;
15396       state->error_pos = (const char*) p;
15397       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
15398       return s_error;
15399     }
15400     goto s_n_llhttp__internal__n_url_skip_to_http;
15401     /* UNREACHABLE */;
15402     abort();
15403   }
15404   s_n_llhttp__internal__n_error_43: {
15405     state->error = 0x7;
15406     state->reason = "Invalid char in url query";
15407     state->error_pos = (const char*) p;
15408     state->_current = (void*) (intptr_t) s_error;
15409     return s_error;
15410     /* UNREACHABLE */;
15411     abort();
15412   }
15413   s_n_llhttp__internal__n_error_44: {
15414     state->error = 0x7;
15415     state->reason = "Invalid char in url path";
15416     state->error_pos = (const char*) p;
15417     state->_current = (void*) (intptr_t) s_error;
15418     return s_error;
15419     /* UNREACHABLE */;
15420     abort();
15421   }
15422   s_n_llhttp__internal__n_span_end_llhttp__on_url: {
15423     const unsigned char* start;
15424     int err;
15425 
15426     start = state->_span_pos0;
15427     state->_span_pos0 = NULL;
15428     err = llhttp__on_url(state, start, p);
15429     if (err != 0) {
15430       state->error = err;
15431       state->error_pos = (const char*) p;
15432       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
15433       return s_error;
15434     }
15435     goto s_n_llhttp__internal__n_url_skip_to_http09;
15436     /* UNREACHABLE */;
15437     abort();
15438   }
15439   s_n_llhttp__internal__n_span_end_llhttp__on_url_1: {
15440     const unsigned char* start;
15441     int err;
15442 
15443     start = state->_span_pos0;
15444     state->_span_pos0 = NULL;
15445     err = llhttp__on_url(state, start, p);
15446     if (err != 0) {
15447       state->error = err;
15448       state->error_pos = (const char*) p;
15449       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
15450       return s_error;
15451     }
15452     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
15453     /* UNREACHABLE */;
15454     abort();
15455   }
15456   s_n_llhttp__internal__n_span_end_llhttp__on_url_2: {
15457     const unsigned char* start;
15458     int err;
15459 
15460     start = state->_span_pos0;
15461     state->_span_pos0 = NULL;
15462     err = llhttp__on_url(state, start, p);
15463     if (err != 0) {
15464       state->error = err;
15465       state->error_pos = (const char*) p;
15466       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
15467       return s_error;
15468     }
15469     goto s_n_llhttp__internal__n_url_skip_to_http;
15470     /* UNREACHABLE */;
15471     abort();
15472   }
15473   s_n_llhttp__internal__n_span_end_llhttp__on_url_12: {
15474     const unsigned char* start;
15475     int err;
15476 
15477     start = state->_span_pos0;
15478     state->_span_pos0 = NULL;
15479     err = llhttp__on_url(state, start, p);
15480     if (err != 0) {
15481       state->error = err;
15482       state->error_pos = (const char*) p;
15483       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http09;
15484       return s_error;
15485     }
15486     goto s_n_llhttp__internal__n_url_skip_to_http09;
15487     /* UNREACHABLE */;
15488     abort();
15489   }
15490   s_n_llhttp__internal__n_span_end_llhttp__on_url_13: {
15491     const unsigned char* start;
15492     int err;
15493 
15494     start = state->_span_pos0;
15495     state->_span_pos0 = NULL;
15496     err = llhttp__on_url(state, start, p);
15497     if (err != 0) {
15498       state->error = err;
15499       state->error_pos = (const char*) p;
15500       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_lf_to_http09;
15501       return s_error;
15502     }
15503     goto s_n_llhttp__internal__n_url_skip_lf_to_http09;
15504     /* UNREACHABLE */;
15505     abort();
15506   }
15507   s_n_llhttp__internal__n_span_end_llhttp__on_url_14: {
15508     const unsigned char* start;
15509     int err;
15510 
15511     start = state->_span_pos0;
15512     state->_span_pos0 = NULL;
15513     err = llhttp__on_url(state, start, p);
15514     if (err != 0) {
15515       state->error = err;
15516       state->error_pos = (const char*) p;
15517       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_url_skip_to_http;
15518       return s_error;
15519     }
15520     goto s_n_llhttp__internal__n_url_skip_to_http;
15521     /* UNREACHABLE */;
15522     abort();
15523   }
15524   s_n_llhttp__internal__n_error_45: {
15525     state->error = 0x7;
15526     state->reason = "Double @ in url";
15527     state->error_pos = (const char*) p;
15528     state->_current = (void*) (intptr_t) s_error;
15529     return s_error;
15530     /* UNREACHABLE */;
15531     abort();
15532   }
15533   s_n_llhttp__internal__n_error_46: {
15534     state->error = 0x7;
15535     state->reason = "Unexpected char in url server";
15536     state->error_pos = (const char*) p;
15537     state->_current = (void*) (intptr_t) s_error;
15538     return s_error;
15539     /* UNREACHABLE */;
15540     abort();
15541   }
15542   s_n_llhttp__internal__n_error_47: {
15543     state->error = 0x7;
15544     state->reason = "Unexpected char in url server";
15545     state->error_pos = (const char*) p;
15546     state->_current = (void*) (intptr_t) s_error;
15547     return s_error;
15548     /* UNREACHABLE */;
15549     abort();
15550   }
15551   s_n_llhttp__internal__n_error_49: {
15552     state->error = 0x7;
15553     state->reason = "Unexpected char in url schema";
15554     state->error_pos = (const char*) p;
15555     state->_current = (void*) (intptr_t) s_error;
15556     return s_error;
15557     /* UNREACHABLE */;
15558     abort();
15559   }
15560   s_n_llhttp__internal__n_error_50: {
15561     state->error = 0x7;
15562     state->reason = "Unexpected char in url schema";
15563     state->error_pos = (const char*) p;
15564     state->_current = (void*) (intptr_t) s_error;
15565     return s_error;
15566     /* UNREACHABLE */;
15567     abort();
15568   }
15569   s_n_llhttp__internal__n_error_51: {
15570     state->error = 0x7;
15571     state->reason = "Unexpected start char in url";
15572     state->error_pos = (const char*) p;
15573     state->_current = (void*) (intptr_t) s_error;
15574     return s_error;
15575     /* UNREACHABLE */;
15576     abort();
15577   }
15578   s_n_llhttp__internal__n_invoke_is_equal_method: {
15579     switch (llhttp__internal__c_is_equal_method(state, p, endp)) {
15580       case 0:
15581         goto s_n_llhttp__internal__n_span_start_llhttp__on_url_1;
15582       default:
15583         goto s_n_llhttp__internal__n_span_start_llhttp__on_url;
15584     }
15585     /* UNREACHABLE */;
15586     abort();
15587   }
15588   s_n_llhttp__internal__n_error_52: {
15589     state->error = 0x6;
15590     state->reason = "Expected space after method";
15591     state->error_pos = (const char*) p;
15592     state->_current = (void*) (intptr_t) s_error;
15593     return s_error;
15594     /* UNREACHABLE */;
15595     abort();
15596   }
15597   s_n_llhttp__internal__n_invoke_store_method_1: {
15598     switch (llhttp__internal__c_store_method(state, p, endp, match)) {
15599       default:
15600         goto s_n_llhttp__internal__n_req_first_space_before_url;
15601     }
15602     /* UNREACHABLE */;
15603     abort();
15604   }
15605   s_n_llhttp__internal__n_error_64: {
15606     state->error = 0x6;
15607     state->reason = "Invalid method encountered";
15608     state->error_pos = (const char*) p;
15609     state->_current = (void*) (intptr_t) s_error;
15610     return s_error;
15611     /* UNREACHABLE */;
15612     abort();
15613   }
15614   s_n_llhttp__internal__n_error_55: {
15615     state->error = 0xd;
15616     state->reason = "Response overflow";
15617     state->error_pos = (const char*) p;
15618     state->_current = (void*) (intptr_t) s_error;
15619     return s_error;
15620     /* UNREACHABLE */;
15621     abort();
15622   }
15623   s_n_llhttp__internal__n_invoke_mul_add_status_code: {
15624     switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) {
15625       case 1:
15626         goto s_n_llhttp__internal__n_error_55;
15627       default:
15628         goto s_n_llhttp__internal__n_res_status_code;
15629     }
15630     /* UNREACHABLE */;
15631     abort();
15632   }
15633   s_n_llhttp__internal__n_span_end_llhttp__on_status: {
15634     const unsigned char* start;
15635     int err;
15636 
15637     start = state->_span_pos0;
15638     state->_span_pos0 = NULL;
15639     err = llhttp__on_status(state, start, p);
15640     if (err != 0) {
15641       state->error = err;
15642       state->error_pos = (const char*) (p + 1);
15643       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
15644       return s_error;
15645     }
15646     p++;
15647     goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete;
15648     /* UNREACHABLE */;
15649     abort();
15650   }
15651   s_n_llhttp__internal__n_span_end_llhttp__on_status_1: {
15652     const unsigned char* start;
15653     int err;
15654 
15655     start = state->_span_pos0;
15656     state->_span_pos0 = NULL;
15657     err = llhttp__on_status(state, start, p);
15658     if (err != 0) {
15659       state->error = err;
15660       state->error_pos = (const char*) (p + 1);
15661       state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_res_line_almost_done;
15662       return s_error;
15663     }
15664     p++;
15665     goto s_n_llhttp__internal__n_res_line_almost_done;
15666     /* UNREACHABLE */;
15667     abort();
15668   }
15669   s_n_llhttp__internal__n_error_56: {
15670     state->error = 0xd;
15671     state->reason = "Invalid response status";
15672     state->error_pos = (const char*) p;
15673     state->_current = (void*) (intptr_t) s_error;
15674     return s_error;
15675     /* UNREACHABLE */;
15676     abort();
15677   }
15678   s_n_llhttp__internal__n_invoke_update_status_code: {
15679     switch (llhttp__internal__c_update_status_code(state, p, endp)) {
15680       default:
15681         goto s_n_llhttp__internal__n_res_status_code;
15682     }
15683     /* UNREACHABLE */;
15684     abort();
15685   }
15686   s_n_llhttp__internal__n_error_57: {
15687     state->error = 0x9;
15688     state->reason = "Expected space after version";
15689     state->error_pos = (const char*) p;
15690     state->_current = (void*) (intptr_t) s_error;
15691     return s_error;
15692     /* UNREACHABLE */;
15693     abort();
15694   }
15695   s_n_llhttp__internal__n_error_54: {
15696     state->error = 0x9;
15697     state->reason = "Invalid HTTP version";
15698     state->error_pos = (const char*) p;
15699     state->_current = (void*) (intptr_t) s_error;
15700     return s_error;
15701     /* UNREACHABLE */;
15702     abort();
15703   }
15704   s_n_llhttp__internal__n_invoke_load_http_minor_3: {
15705     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
15706       case 9:
15707         goto s_n_llhttp__internal__n_res_http_end;
15708       default:
15709         goto s_n_llhttp__internal__n_error_54;
15710     }
15711     /* UNREACHABLE */;
15712     abort();
15713   }
15714   s_n_llhttp__internal__n_error_58: {
15715     state->error = 0x9;
15716     state->reason = "Invalid HTTP version";
15717     state->error_pos = (const char*) p;
15718     state->_current = (void*) (intptr_t) s_error;
15719     return s_error;
15720     /* UNREACHABLE */;
15721     abort();
15722   }
15723   s_n_llhttp__internal__n_invoke_load_http_minor_4: {
15724     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
15725       case 0:
15726         goto s_n_llhttp__internal__n_res_http_end;
15727       case 1:
15728         goto s_n_llhttp__internal__n_res_http_end;
15729       default:
15730         goto s_n_llhttp__internal__n_error_58;
15731     }
15732     /* UNREACHABLE */;
15733     abort();
15734   }
15735   s_n_llhttp__internal__n_error_59: {
15736     state->error = 0x9;
15737     state->reason = "Invalid HTTP version";
15738     state->error_pos = (const char*) p;
15739     state->_current = (void*) (intptr_t) s_error;
15740     return s_error;
15741     /* UNREACHABLE */;
15742     abort();
15743   }
15744   s_n_llhttp__internal__n_invoke_load_http_minor_5: {
15745     switch (llhttp__internal__c_load_http_minor(state, p, endp)) {
15746       case 0:
15747         goto s_n_llhttp__internal__n_res_http_end;
15748       default:
15749         goto s_n_llhttp__internal__n_error_59;
15750     }
15751     /* UNREACHABLE */;
15752     abort();
15753   }
15754   s_n_llhttp__internal__n_error_53: {
15755     state->error = 0x9;
15756     state->reason = "Invalid HTTP version";
15757     state->error_pos = (const char*) p;
15758     state->_current = (void*) (intptr_t) s_error;
15759     return s_error;
15760     /* UNREACHABLE */;
15761     abort();
15762   }
15763   s_n_llhttp__internal__n_invoke_load_http_major_1: {
15764     switch (llhttp__internal__c_load_http_major(state, p, endp)) {
15765       case 0:
15766         goto s_n_llhttp__internal__n_invoke_load_http_minor_3;
15767       case 1:
15768         goto s_n_llhttp__internal__n_invoke_load_http_minor_4;
15769       case 2:
15770         goto s_n_llhttp__internal__n_invoke_load_http_minor_5;
15771       default:
15772         goto s_n_llhttp__internal__n_error_53;
15773     }
15774     /* UNREACHABLE */;
15775     abort();
15776   }
15777   s_n_llhttp__internal__n_invoke_test_lenient_flags_10: {
15778     switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) {
15779       case 1:
15780         goto s_n_llhttp__internal__n_res_http_end;
15781       default:
15782         goto s_n_llhttp__internal__n_invoke_load_http_major_1;
15783     }
15784     /* UNREACHABLE */;
15785     abort();
15786   }
15787   s_n_llhttp__internal__n_invoke_store_http_minor_1: {
15788     switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) {
15789       default:
15790         goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10;
15791     }
15792     /* UNREACHABLE */;
15793     abort();
15794   }
15795   s_n_llhttp__internal__n_error_60: {
15796     state->error = 0x9;
15797     state->reason = "Invalid minor version";
15798     state->error_pos = (const char*) p;
15799     state->_current = (void*) (intptr_t) s_error;
15800     return s_error;
15801     /* UNREACHABLE */;
15802     abort();
15803   }
15804   s_n_llhttp__internal__n_error_61: {
15805     state->error = 0x9;
15806     state->reason = "Expected dot";
15807     state->error_pos = (const char*) p;
15808     state->_current = (void*) (intptr_t) s_error;
15809     return s_error;
15810     /* UNREACHABLE */;
15811     abort();
15812   }
15813   s_n_llhttp__internal__n_invoke_store_http_major_1: {
15814     switch (llhttp__internal__c_store_http_major(state, p, endp, match)) {
15815       default:
15816         goto s_n_llhttp__internal__n_res_http_dot;
15817     }
15818     /* UNREACHABLE */;
15819     abort();
15820   }
15821   s_n_llhttp__internal__n_error_62: {
15822     state->error = 0x9;
15823     state->reason = "Invalid major version";
15824     state->error_pos = (const char*) p;
15825     state->_current = (void*) (intptr_t) s_error;
15826     return s_error;
15827     /* UNREACHABLE */;
15828     abort();
15829   }
15830   s_n_llhttp__internal__n_error_65: {
15831     state->error = 0x8;
15832     state->reason = "Expected HTTP/";
15833     state->error_pos = (const char*) p;
15834     state->_current = (void*) (intptr_t) s_error;
15835     return s_error;
15836     /* UNREACHABLE */;
15837     abort();
15838   }
15839   s_n_llhttp__internal__n_invoke_update_type: {
15840     switch (llhttp__internal__c_update_type(state, p, endp)) {
15841       default:
15842         goto s_n_llhttp__internal__n_req_first_space_before_url;
15843     }
15844     /* UNREACHABLE */;
15845     abort();
15846   }
15847   s_n_llhttp__internal__n_invoke_store_method: {
15848     switch (llhttp__internal__c_store_method(state, p, endp, match)) {
15849       default:
15850         goto s_n_llhttp__internal__n_invoke_update_type;
15851     }
15852     /* UNREACHABLE */;
15853     abort();
15854   }
15855   s_n_llhttp__internal__n_error_63: {
15856     state->error = 0x8;
15857     state->reason = "Invalid word encountered";
15858     state->error_pos = (const char*) p;
15859     state->_current = (void*) (intptr_t) s_error;
15860     return s_error;
15861     /* UNREACHABLE */;
15862     abort();
15863   }
15864   s_n_llhttp__internal__n_invoke_update_type_1: {
15865     switch (llhttp__internal__c_update_type_1(state, p, endp)) {
15866       default:
15867         goto s_n_llhttp__internal__n_res_http_major;
15868     }
15869     /* UNREACHABLE */;
15870     abort();
15871   }
15872   s_n_llhttp__internal__n_invoke_update_type_2: {
15873     switch (llhttp__internal__c_update_type(state, p, endp)) {
15874       default:
15875         goto s_n_llhttp__internal__n_start_req;
15876     }
15877     /* UNREACHABLE */;
15878     abort();
15879   }
15880   s_n_llhttp__internal__n_pause_8: {
15881     state->error = 0x15;
15882     state->reason = "on_message_begin pause";
15883     state->error_pos = (const char*) p;
15884     state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_load_type;
15885     return s_error;
15886     /* UNREACHABLE */;
15887     abort();
15888   }
15889   s_n_llhttp__internal__n_error: {
15890     state->error = 0x10;
15891     state->reason = "`on_message_begin` callback error";
15892     state->error_pos = (const char*) p;
15893     state->_current = (void*) (intptr_t) s_error;
15894     return s_error;
15895     /* UNREACHABLE */;
15896     abort();
15897   }
15898   s_n_llhttp__internal__n_invoke_llhttp__on_message_begin: {
15899     switch (llhttp__on_message_begin(state, p, endp)) {
15900       case 0:
15901         goto s_n_llhttp__internal__n_invoke_load_type;
15902       case 21:
15903         goto s_n_llhttp__internal__n_pause_8;
15904       default:
15905         goto s_n_llhttp__internal__n_error;
15906     }
15907     /* UNREACHABLE */;
15908     abort();
15909   }
15910   s_n_llhttp__internal__n_invoke_update_finish: {
15911     switch (llhttp__internal__c_update_finish(state, p, endp)) {
15912       default:
15913         goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin;
15914     }
15915     /* UNREACHABLE */;
15916     abort();
15917   }
15918 }
15919 
llhttp__internal_execute(llhttp__internal_t * state,const char * p,const char * endp)15920 int llhttp__internal_execute(llhttp__internal_t* state, const char* p, const char* endp) {
15921   llparse_state_t next;
15922 
15923   /* check lingering errors */
15924   if (state->error != 0) {
15925     return state->error;
15926   }
15927 
15928   /* restart spans */
15929   if (state->_span_pos0 != NULL) {
15930     state->_span_pos0 = (void*) p;
15931   }
15932 
15933   next = llhttp__internal__run(state, (const unsigned char*) p, (const unsigned char*) endp);
15934   if (next == s_error) {
15935     return state->error;
15936   }
15937   state->_current = (void*) (intptr_t) next;
15938 
15939   /* execute spans */
15940   if (state->_span_pos0 != NULL) {
15941     int error;
15942 
15943     error = ((llhttp__internal__span_cb) state->_span_cb0)(state, state->_span_pos0, (const char*) endp);
15944     if (error != 0) {
15945       state->error = error;
15946       state->error_pos = endp;
15947       return error;
15948     }
15949   }
15950 
15951   return 0;
15952 }
15953 
15954 #endif  /* LLHTTP_STRICT_MODE */
15955