You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

9858 lines
183 KiB

4 years ago
  1. /* The file is autogenerated from aiohtt/hdrs.py
  2. Run ./tools/gen.py to update it after the origin changing. */
  3. #include "_find_header.h"
  4. #define NEXT_CHAR() \
  5. { \
  6. count++; \
  7. if (count == size) { \
  8. /* end of search */ \
  9. return -1; \
  10. } \
  11. pchar++; \
  12. ch = *pchar; \
  13. last = (count == size -1); \
  14. } while(0);
  15. int
  16. find_header(const char *str, int size)
  17. {
  18. char *pchar = str;
  19. int last;
  20. char ch;
  21. int count = -1;
  22. pchar--;
  23. INITIAL:
  24. NEXT_CHAR();
  25. switch (ch) {
  26. case 'A':
  27. if (last) {
  28. return -1;
  29. }
  30. goto A;
  31. case 'a':
  32. if (last) {
  33. return -1;
  34. }
  35. goto A;
  36. case 'C':
  37. if (last) {
  38. return -1;
  39. }
  40. goto C;
  41. case 'c':
  42. if (last) {
  43. return -1;
  44. }
  45. goto C;
  46. case 'D':
  47. if (last) {
  48. return -1;
  49. }
  50. goto D;
  51. case 'd':
  52. if (last) {
  53. return -1;
  54. }
  55. goto D;
  56. case 'E':
  57. if (last) {
  58. return -1;
  59. }
  60. goto E;
  61. case 'e':
  62. if (last) {
  63. return -1;
  64. }
  65. goto E;
  66. case 'F':
  67. if (last) {
  68. return -1;
  69. }
  70. goto F;
  71. case 'f':
  72. if (last) {
  73. return -1;
  74. }
  75. goto F;
  76. case 'H':
  77. if (last) {
  78. return -1;
  79. }
  80. goto H;
  81. case 'h':
  82. if (last) {
  83. return -1;
  84. }
  85. goto H;
  86. case 'I':
  87. if (last) {
  88. return -1;
  89. }
  90. goto I;
  91. case 'i':
  92. if (last) {
  93. return -1;
  94. }
  95. goto I;
  96. case 'K':
  97. if (last) {
  98. return -1;
  99. }
  100. goto K;
  101. case 'k':
  102. if (last) {
  103. return -1;
  104. }
  105. goto K;
  106. case 'L':
  107. if (last) {
  108. return -1;
  109. }
  110. goto L;
  111. case 'l':
  112. if (last) {
  113. return -1;
  114. }
  115. goto L;
  116. case 'M':
  117. if (last) {
  118. return -1;
  119. }
  120. goto M;
  121. case 'm':
  122. if (last) {
  123. return -1;
  124. }
  125. goto M;
  126. case 'O':
  127. if (last) {
  128. return -1;
  129. }
  130. goto O;
  131. case 'o':
  132. if (last) {
  133. return -1;
  134. }
  135. goto O;
  136. case 'P':
  137. if (last) {
  138. return -1;
  139. }
  140. goto P;
  141. case 'p':
  142. if (last) {
  143. return -1;
  144. }
  145. goto P;
  146. case 'R':
  147. if (last) {
  148. return -1;
  149. }
  150. goto R;
  151. case 'r':
  152. if (last) {
  153. return -1;
  154. }
  155. goto R;
  156. case 'S':
  157. if (last) {
  158. return -1;
  159. }
  160. goto S;
  161. case 's':
  162. if (last) {
  163. return -1;
  164. }
  165. goto S;
  166. case 'T':
  167. if (last) {
  168. return -1;
  169. }
  170. goto T;
  171. case 't':
  172. if (last) {
  173. return -1;
  174. }
  175. goto T;
  176. case 'U':
  177. if (last) {
  178. return -1;
  179. }
  180. goto U;
  181. case 'u':
  182. if (last) {
  183. return -1;
  184. }
  185. goto U;
  186. case 'V':
  187. if (last) {
  188. return -1;
  189. }
  190. goto V;
  191. case 'v':
  192. if (last) {
  193. return -1;
  194. }
  195. goto V;
  196. case 'W':
  197. if (last) {
  198. return -1;
  199. }
  200. goto W;
  201. case 'w':
  202. if (last) {
  203. return -1;
  204. }
  205. goto W;
  206. case 'X':
  207. if (last) {
  208. return -1;
  209. }
  210. goto X;
  211. case 'x':
  212. if (last) {
  213. return -1;
  214. }
  215. goto X;
  216. default:
  217. return -1;
  218. }
  219. A:
  220. NEXT_CHAR();
  221. switch (ch) {
  222. case 'C':
  223. if (last) {
  224. return -1;
  225. }
  226. goto AC;
  227. case 'c':
  228. if (last) {
  229. return -1;
  230. }
  231. goto AC;
  232. case 'G':
  233. if (last) {
  234. return -1;
  235. }
  236. goto AG;
  237. case 'g':
  238. if (last) {
  239. return -1;
  240. }
  241. goto AG;
  242. case 'L':
  243. if (last) {
  244. return -1;
  245. }
  246. goto AL;
  247. case 'l':
  248. if (last) {
  249. return -1;
  250. }
  251. goto AL;
  252. case 'U':
  253. if (last) {
  254. return -1;
  255. }
  256. goto AU;
  257. case 'u':
  258. if (last) {
  259. return -1;
  260. }
  261. goto AU;
  262. default:
  263. return -1;
  264. }
  265. AC:
  266. NEXT_CHAR();
  267. switch (ch) {
  268. case 'C':
  269. if (last) {
  270. return -1;
  271. }
  272. goto ACC;
  273. case 'c':
  274. if (last) {
  275. return -1;
  276. }
  277. goto ACC;
  278. default:
  279. return -1;
  280. }
  281. ACC:
  282. NEXT_CHAR();
  283. switch (ch) {
  284. case 'E':
  285. if (last) {
  286. return -1;
  287. }
  288. goto ACCE;
  289. case 'e':
  290. if (last) {
  291. return -1;
  292. }
  293. goto ACCE;
  294. default:
  295. return -1;
  296. }
  297. ACCE:
  298. NEXT_CHAR();
  299. switch (ch) {
  300. case 'P':
  301. if (last) {
  302. return -1;
  303. }
  304. goto ACCEP;
  305. case 'p':
  306. if (last) {
  307. return -1;
  308. }
  309. goto ACCEP;
  310. case 'S':
  311. if (last) {
  312. return -1;
  313. }
  314. goto ACCES;
  315. case 's':
  316. if (last) {
  317. return -1;
  318. }
  319. goto ACCES;
  320. default:
  321. return -1;
  322. }
  323. ACCEP:
  324. NEXT_CHAR();
  325. switch (ch) {
  326. case 'T':
  327. if (last) {
  328. return 0;
  329. }
  330. goto ACCEPT;
  331. case 't':
  332. if (last) {
  333. return 0;
  334. }
  335. goto ACCEPT;
  336. default:
  337. return -1;
  338. }
  339. ACCEPT:
  340. NEXT_CHAR();
  341. switch (ch) {
  342. case '-':
  343. if (last) {
  344. return -1;
  345. }
  346. goto ACCEPT_;
  347. default:
  348. return -1;
  349. }
  350. ACCEPT_:
  351. NEXT_CHAR();
  352. switch (ch) {
  353. case 'C':
  354. if (last) {
  355. return -1;
  356. }
  357. goto ACCEPT_C;
  358. case 'c':
  359. if (last) {
  360. return -1;
  361. }
  362. goto ACCEPT_C;
  363. case 'E':
  364. if (last) {
  365. return -1;
  366. }
  367. goto ACCEPT_E;
  368. case 'e':
  369. if (last) {
  370. return -1;
  371. }
  372. goto ACCEPT_E;
  373. case 'L':
  374. if (last) {
  375. return -1;
  376. }
  377. goto ACCEPT_L;
  378. case 'l':
  379. if (last) {
  380. return -1;
  381. }
  382. goto ACCEPT_L;
  383. case 'R':
  384. if (last) {
  385. return -1;
  386. }
  387. goto ACCEPT_R;
  388. case 'r':
  389. if (last) {
  390. return -1;
  391. }
  392. goto ACCEPT_R;
  393. default:
  394. return -1;
  395. }
  396. ACCEPT_C:
  397. NEXT_CHAR();
  398. switch (ch) {
  399. case 'H':
  400. if (last) {
  401. return -1;
  402. }
  403. goto ACCEPT_CH;
  404. case 'h':
  405. if (last) {
  406. return -1;
  407. }
  408. goto ACCEPT_CH;
  409. default:
  410. return -1;
  411. }
  412. ACCEPT_CH:
  413. NEXT_CHAR();
  414. switch (ch) {
  415. case 'A':
  416. if (last) {
  417. return -1;
  418. }
  419. goto ACCEPT_CHA;
  420. case 'a':
  421. if (last) {
  422. return -1;
  423. }
  424. goto ACCEPT_CHA;
  425. default:
  426. return -1;
  427. }
  428. ACCEPT_CHA:
  429. NEXT_CHAR();
  430. switch (ch) {
  431. case 'R':
  432. if (last) {
  433. return -1;
  434. }
  435. goto ACCEPT_CHAR;
  436. case 'r':
  437. if (last) {
  438. return -1;
  439. }
  440. goto ACCEPT_CHAR;
  441. default:
  442. return -1;
  443. }
  444. ACCEPT_CHAR:
  445. NEXT_CHAR();
  446. switch (ch) {
  447. case 'S':
  448. if (last) {
  449. return -1;
  450. }
  451. goto ACCEPT_CHARS;
  452. case 's':
  453. if (last) {
  454. return -1;
  455. }
  456. goto ACCEPT_CHARS;
  457. default:
  458. return -1;
  459. }
  460. ACCEPT_CHARS:
  461. NEXT_CHAR();
  462. switch (ch) {
  463. case 'E':
  464. if (last) {
  465. return -1;
  466. }
  467. goto ACCEPT_CHARSE;
  468. case 'e':
  469. if (last) {
  470. return -1;
  471. }
  472. goto ACCEPT_CHARSE;
  473. default:
  474. return -1;
  475. }
  476. ACCEPT_CHARSE:
  477. NEXT_CHAR();
  478. switch (ch) {
  479. case 'T':
  480. if (last) {
  481. return 1;
  482. }
  483. goto ACCEPT_CHARSET;
  484. case 't':
  485. if (last) {
  486. return 1;
  487. }
  488. goto ACCEPT_CHARSET;
  489. default:
  490. return -1;
  491. }
  492. ACCEPT_E:
  493. NEXT_CHAR();
  494. switch (ch) {
  495. case 'N':
  496. if (last) {
  497. return -1;
  498. }
  499. goto ACCEPT_EN;
  500. case 'n':
  501. if (last) {
  502. return -1;
  503. }
  504. goto ACCEPT_EN;
  505. default:
  506. return -1;
  507. }
  508. ACCEPT_EN:
  509. NEXT_CHAR();
  510. switch (ch) {
  511. case 'C':
  512. if (last) {
  513. return -1;
  514. }
  515. goto ACCEPT_ENC;
  516. case 'c':
  517. if (last) {
  518. return -1;
  519. }
  520. goto ACCEPT_ENC;
  521. default:
  522. return -1;
  523. }
  524. ACCEPT_ENC:
  525. NEXT_CHAR();
  526. switch (ch) {
  527. case 'O':
  528. if (last) {
  529. return -1;
  530. }
  531. goto ACCEPT_ENCO;
  532. case 'o':
  533. if (last) {
  534. return -1;
  535. }
  536. goto ACCEPT_ENCO;
  537. default:
  538. return -1;
  539. }
  540. ACCEPT_ENCO:
  541. NEXT_CHAR();
  542. switch (ch) {
  543. case 'D':
  544. if (last) {
  545. return -1;
  546. }
  547. goto ACCEPT_ENCOD;
  548. case 'd':
  549. if (last) {
  550. return -1;
  551. }
  552. goto ACCEPT_ENCOD;
  553. default:
  554. return -1;
  555. }
  556. ACCEPT_ENCOD:
  557. NEXT_CHAR();
  558. switch (ch) {
  559. case 'I':
  560. if (last) {
  561. return -1;
  562. }
  563. goto ACCEPT_ENCODI;
  564. case 'i':
  565. if (last) {
  566. return -1;
  567. }
  568. goto ACCEPT_ENCODI;
  569. default:
  570. return -1;
  571. }
  572. ACCEPT_ENCODI:
  573. NEXT_CHAR();
  574. switch (ch) {
  575. case 'N':
  576. if (last) {
  577. return -1;
  578. }
  579. goto ACCEPT_ENCODIN;
  580. case 'n':
  581. if (last) {
  582. return -1;
  583. }
  584. goto ACCEPT_ENCODIN;
  585. default:
  586. return -1;
  587. }
  588. ACCEPT_ENCODIN:
  589. NEXT_CHAR();
  590. switch (ch) {
  591. case 'G':
  592. if (last) {
  593. return 2;
  594. }
  595. goto ACCEPT_ENCODING;
  596. case 'g':
  597. if (last) {
  598. return 2;
  599. }
  600. goto ACCEPT_ENCODING;
  601. default:
  602. return -1;
  603. }
  604. ACCEPT_L:
  605. NEXT_CHAR();
  606. switch (ch) {
  607. case 'A':
  608. if (last) {
  609. return -1;
  610. }
  611. goto ACCEPT_LA;
  612. case 'a':
  613. if (last) {
  614. return -1;
  615. }
  616. goto ACCEPT_LA;
  617. default:
  618. return -1;
  619. }
  620. ACCEPT_LA:
  621. NEXT_CHAR();
  622. switch (ch) {
  623. case 'N':
  624. if (last) {
  625. return -1;
  626. }
  627. goto ACCEPT_LAN;
  628. case 'n':
  629. if (last) {
  630. return -1;
  631. }
  632. goto ACCEPT_LAN;
  633. default:
  634. return -1;
  635. }
  636. ACCEPT_LAN:
  637. NEXT_CHAR();
  638. switch (ch) {
  639. case 'G':
  640. if (last) {
  641. return -1;
  642. }
  643. goto ACCEPT_LANG;
  644. case 'g':
  645. if (last) {
  646. return -1;
  647. }
  648. goto ACCEPT_LANG;
  649. default:
  650. return -1;
  651. }
  652. ACCEPT_LANG:
  653. NEXT_CHAR();
  654. switch (ch) {
  655. case 'U':
  656. if (last) {
  657. return -1;
  658. }
  659. goto ACCEPT_LANGU;
  660. case 'u':
  661. if (last) {
  662. return -1;
  663. }
  664. goto ACCEPT_LANGU;
  665. default:
  666. return -1;
  667. }
  668. ACCEPT_LANGU:
  669. NEXT_CHAR();
  670. switch (ch) {
  671. case 'A':
  672. if (last) {
  673. return -1;
  674. }
  675. goto ACCEPT_LANGUA;
  676. case 'a':
  677. if (last) {
  678. return -1;
  679. }
  680. goto ACCEPT_LANGUA;
  681. default:
  682. return -1;
  683. }
  684. ACCEPT_LANGUA:
  685. NEXT_CHAR();
  686. switch (ch) {
  687. case 'G':
  688. if (last) {
  689. return -1;
  690. }
  691. goto ACCEPT_LANGUAG;
  692. case 'g':
  693. if (last) {
  694. return -1;
  695. }
  696. goto ACCEPT_LANGUAG;
  697. default:
  698. return -1;
  699. }
  700. ACCEPT_LANGUAG:
  701. NEXT_CHAR();
  702. switch (ch) {
  703. case 'E':
  704. if (last) {
  705. return 3;
  706. }
  707. goto ACCEPT_LANGUAGE;
  708. case 'e':
  709. if (last) {
  710. return 3;
  711. }
  712. goto ACCEPT_LANGUAGE;
  713. default:
  714. return -1;
  715. }
  716. ACCEPT_R:
  717. NEXT_CHAR();
  718. switch (ch) {
  719. case 'A':
  720. if (last) {
  721. return -1;
  722. }
  723. goto ACCEPT_RA;
  724. case 'a':
  725. if (last) {
  726. return -1;
  727. }
  728. goto ACCEPT_RA;
  729. default:
  730. return -1;
  731. }
  732. ACCEPT_RA:
  733. NEXT_CHAR();
  734. switch (ch) {
  735. case 'N':
  736. if (last) {
  737. return -1;
  738. }
  739. goto ACCEPT_RAN;
  740. case 'n':
  741. if (last) {
  742. return -1;
  743. }
  744. goto ACCEPT_RAN;
  745. default:
  746. return -1;
  747. }
  748. ACCEPT_RAN:
  749. NEXT_CHAR();
  750. switch (ch) {
  751. case 'G':
  752. if (last) {
  753. return -1;
  754. }
  755. goto ACCEPT_RANG;
  756. case 'g':
  757. if (last) {
  758. return -1;
  759. }
  760. goto ACCEPT_RANG;
  761. default:
  762. return -1;
  763. }
  764. ACCEPT_RANG:
  765. NEXT_CHAR();
  766. switch (ch) {
  767. case 'E':
  768. if (last) {
  769. return -1;
  770. }
  771. goto ACCEPT_RANGE;
  772. case 'e':
  773. if (last) {
  774. return -1;
  775. }
  776. goto ACCEPT_RANGE;
  777. default:
  778. return -1;
  779. }
  780. ACCEPT_RANGE:
  781. NEXT_CHAR();
  782. switch (ch) {
  783. case 'S':
  784. if (last) {
  785. return 4;
  786. }
  787. goto ACCEPT_RANGES;
  788. case 's':
  789. if (last) {
  790. return 4;
  791. }
  792. goto ACCEPT_RANGES;
  793. default:
  794. return -1;
  795. }
  796. ACCES:
  797. NEXT_CHAR();
  798. switch (ch) {
  799. case 'S':
  800. if (last) {
  801. return -1;
  802. }
  803. goto ACCESS;
  804. case 's':
  805. if (last) {
  806. return -1;
  807. }
  808. goto ACCESS;
  809. default:
  810. return -1;
  811. }
  812. ACCESS:
  813. NEXT_CHAR();
  814. switch (ch) {
  815. case '-':
  816. if (last) {
  817. return -1;
  818. }
  819. goto ACCESS_;
  820. default:
  821. return -1;
  822. }
  823. ACCESS_:
  824. NEXT_CHAR();
  825. switch (ch) {
  826. case 'C':
  827. if (last) {
  828. return -1;
  829. }
  830. goto ACCESS_C;
  831. case 'c':
  832. if (last) {
  833. return -1;
  834. }
  835. goto ACCESS_C;
  836. default:
  837. return -1;
  838. }
  839. ACCESS_C:
  840. NEXT_CHAR();
  841. switch (ch) {
  842. case 'O':
  843. if (last) {
  844. return -1;
  845. }
  846. goto ACCESS_CO;
  847. case 'o':
  848. if (last) {
  849. return -1;
  850. }
  851. goto ACCESS_CO;
  852. default:
  853. return -1;
  854. }
  855. ACCESS_CO:
  856. NEXT_CHAR();
  857. switch (ch) {
  858. case 'N':
  859. if (last) {
  860. return -1;
  861. }
  862. goto ACCESS_CON;
  863. case 'n':
  864. if (last) {
  865. return -1;
  866. }
  867. goto ACCESS_CON;
  868. default:
  869. return -1;
  870. }
  871. ACCESS_CON:
  872. NEXT_CHAR();
  873. switch (ch) {
  874. case 'T':
  875. if (last) {
  876. return -1;
  877. }
  878. goto ACCESS_CONT;
  879. case 't':
  880. if (last) {
  881. return -1;
  882. }
  883. goto ACCESS_CONT;
  884. default:
  885. return -1;
  886. }
  887. ACCESS_CONT:
  888. NEXT_CHAR();
  889. switch (ch) {
  890. case 'R':
  891. if (last) {
  892. return -1;
  893. }
  894. goto ACCESS_CONTR;
  895. case 'r':
  896. if (last) {
  897. return -1;
  898. }
  899. goto ACCESS_CONTR;
  900. default:
  901. return -1;
  902. }
  903. ACCESS_CONTR:
  904. NEXT_CHAR();
  905. switch (ch) {
  906. case 'O':
  907. if (last) {
  908. return -1;
  909. }
  910. goto ACCESS_CONTRO;
  911. case 'o':
  912. if (last) {
  913. return -1;
  914. }
  915. goto ACCESS_CONTRO;
  916. default:
  917. return -1;
  918. }
  919. ACCESS_CONTRO:
  920. NEXT_CHAR();
  921. switch (ch) {
  922. case 'L':
  923. if (last) {
  924. return -1;
  925. }
  926. goto ACCESS_CONTROL;
  927. case 'l':
  928. if (last) {
  929. return -1;
  930. }
  931. goto ACCESS_CONTROL;
  932. default:
  933. return -1;
  934. }
  935. ACCESS_CONTROL:
  936. NEXT_CHAR();
  937. switch (ch) {
  938. case '-':
  939. if (last) {
  940. return -1;
  941. }
  942. goto ACCESS_CONTROL_;
  943. default:
  944. return -1;
  945. }
  946. ACCESS_CONTROL_:
  947. NEXT_CHAR();
  948. switch (ch) {
  949. case 'A':
  950. if (last) {
  951. return -1;
  952. }
  953. goto ACCESS_CONTROL_A;
  954. case 'a':
  955. if (last) {
  956. return -1;
  957. }
  958. goto ACCESS_CONTROL_A;
  959. case 'E':
  960. if (last) {
  961. return -1;
  962. }
  963. goto ACCESS_CONTROL_E;
  964. case 'e':
  965. if (last) {
  966. return -1;
  967. }
  968. goto ACCESS_CONTROL_E;
  969. case 'M':
  970. if (last) {
  971. return -1;
  972. }
  973. goto ACCESS_CONTROL_M;
  974. case 'm':
  975. if (last) {
  976. return -1;
  977. }
  978. goto ACCESS_CONTROL_M;
  979. case 'R':
  980. if (last) {
  981. return -1;
  982. }
  983. goto ACCESS_CONTROL_R;
  984. case 'r':
  985. if (last) {
  986. return -1;
  987. }
  988. goto ACCESS_CONTROL_R;
  989. default:
  990. return -1;
  991. }
  992. ACCESS_CONTROL_A:
  993. NEXT_CHAR();
  994. switch (ch) {
  995. case 'L':
  996. if (last) {
  997. return -1;
  998. }
  999. goto ACCESS_CONTROL_AL;
  1000. case 'l':
  1001. if (last) {
  1002. return -1;
  1003. }
  1004. goto ACCESS_CONTROL_AL;
  1005. default:
  1006. return -1;
  1007. }
  1008. ACCESS_CONTROL_AL:
  1009. NEXT_CHAR();
  1010. switch (ch) {
  1011. case 'L':
  1012. if (last) {
  1013. return -1;
  1014. }
  1015. goto ACCESS_CONTROL_ALL;
  1016. case 'l':
  1017. if (last) {
  1018. return -1;
  1019. }
  1020. goto ACCESS_CONTROL_ALL;
  1021. default:
  1022. return -1;
  1023. }
  1024. ACCESS_CONTROL_ALL:
  1025. NEXT_CHAR();
  1026. switch (ch) {
  1027. case 'O':
  1028. if (last) {
  1029. return -1;
  1030. }
  1031. goto ACCESS_CONTROL_ALLO;
  1032. case 'o':
  1033. if (last) {
  1034. return -1;
  1035. }
  1036. goto ACCESS_CONTROL_ALLO;
  1037. default:
  1038. return -1;
  1039. }
  1040. ACCESS_CONTROL_ALLO:
  1041. NEXT_CHAR();
  1042. switch (ch) {
  1043. case 'W':
  1044. if (last) {
  1045. return -1;
  1046. }
  1047. goto ACCESS_CONTROL_ALLOW;
  1048. case 'w':
  1049. if (last) {
  1050. return -1;
  1051. }
  1052. goto ACCESS_CONTROL_ALLOW;
  1053. default:
  1054. return -1;
  1055. }
  1056. ACCESS_CONTROL_ALLOW:
  1057. NEXT_CHAR();
  1058. switch (ch) {
  1059. case '-':
  1060. if (last) {
  1061. return -1;
  1062. }
  1063. goto ACCESS_CONTROL_ALLOW_;
  1064. default:
  1065. return -1;
  1066. }
  1067. ACCESS_CONTROL_ALLOW_:
  1068. NEXT_CHAR();
  1069. switch (ch) {
  1070. case 'C':
  1071. if (last) {
  1072. return -1;
  1073. }
  1074. goto ACCESS_CONTROL_ALLOW_C;
  1075. case 'c':
  1076. if (last) {
  1077. return -1;
  1078. }
  1079. goto ACCESS_CONTROL_ALLOW_C;
  1080. case 'H':
  1081. if (last) {
  1082. return -1;
  1083. }
  1084. goto ACCESS_CONTROL_ALLOW_H;
  1085. case 'h':
  1086. if (last) {
  1087. return -1;
  1088. }
  1089. goto ACCESS_CONTROL_ALLOW_H;
  1090. case 'M':
  1091. if (last) {
  1092. return -1;
  1093. }
  1094. goto ACCESS_CONTROL_ALLOW_M;
  1095. case 'm':
  1096. if (last) {
  1097. return -1;
  1098. }
  1099. goto ACCESS_CONTROL_ALLOW_M;
  1100. case 'O':
  1101. if (last) {
  1102. return -1;
  1103. }
  1104. goto ACCESS_CONTROL_ALLOW_O;
  1105. case 'o':
  1106. if (last) {
  1107. return -1;
  1108. }
  1109. goto ACCESS_CONTROL_ALLOW_O;
  1110. default:
  1111. return -1;
  1112. }
  1113. ACCESS_CONTROL_ALLOW_C:
  1114. NEXT_CHAR();
  1115. switch (ch) {
  1116. case 'R':
  1117. if (last) {
  1118. return -1;
  1119. }
  1120. goto ACCESS_CONTROL_ALLOW_CR;
  1121. case 'r':
  1122. if (last) {
  1123. return -1;
  1124. }
  1125. goto ACCESS_CONTROL_ALLOW_CR;
  1126. default:
  1127. return -1;
  1128. }
  1129. ACCESS_CONTROL_ALLOW_CR:
  1130. NEXT_CHAR();
  1131. switch (ch) {
  1132. case 'E':
  1133. if (last) {
  1134. return -1;
  1135. }
  1136. goto ACCESS_CONTROL_ALLOW_CRE;
  1137. case 'e':
  1138. if (last) {
  1139. return -1;
  1140. }
  1141. goto ACCESS_CONTROL_ALLOW_CRE;
  1142. default:
  1143. return -1;
  1144. }
  1145. ACCESS_CONTROL_ALLOW_CRE:
  1146. NEXT_CHAR();
  1147. switch (ch) {
  1148. case 'D':
  1149. if (last) {
  1150. return -1;
  1151. }
  1152. goto ACCESS_CONTROL_ALLOW_CRED;
  1153. case 'd':
  1154. if (last) {
  1155. return -1;
  1156. }
  1157. goto ACCESS_CONTROL_ALLOW_CRED;
  1158. default:
  1159. return -1;
  1160. }
  1161. ACCESS_CONTROL_ALLOW_CRED:
  1162. NEXT_CHAR();
  1163. switch (ch) {
  1164. case 'E':
  1165. if (last) {
  1166. return -1;
  1167. }
  1168. goto ACCESS_CONTROL_ALLOW_CREDE;
  1169. case 'e':
  1170. if (last) {
  1171. return -1;
  1172. }
  1173. goto ACCESS_CONTROL_ALLOW_CREDE;
  1174. default:
  1175. return -1;
  1176. }
  1177. ACCESS_CONTROL_ALLOW_CREDE:
  1178. NEXT_CHAR();
  1179. switch (ch) {
  1180. case 'N':
  1181. if (last) {
  1182. return -1;
  1183. }
  1184. goto ACCESS_CONTROL_ALLOW_CREDEN;
  1185. case 'n':
  1186. if (last) {
  1187. return -1;
  1188. }
  1189. goto ACCESS_CONTROL_ALLOW_CREDEN;
  1190. default:
  1191. return -1;
  1192. }
  1193. ACCESS_CONTROL_ALLOW_CREDEN:
  1194. NEXT_CHAR();
  1195. switch (ch) {
  1196. case 'T':
  1197. if (last) {
  1198. return -1;
  1199. }
  1200. goto ACCESS_CONTROL_ALLOW_CREDENT;
  1201. case 't':
  1202. if (last) {
  1203. return -1;
  1204. }
  1205. goto ACCESS_CONTROL_ALLOW_CREDENT;
  1206. default:
  1207. return -1;
  1208. }
  1209. ACCESS_CONTROL_ALLOW_CREDENT:
  1210. NEXT_CHAR();
  1211. switch (ch) {
  1212. case 'I':
  1213. if (last) {
  1214. return -1;
  1215. }
  1216. goto ACCESS_CONTROL_ALLOW_CREDENTI;
  1217. case 'i':
  1218. if (last) {
  1219. return -1;
  1220. }
  1221. goto ACCESS_CONTROL_ALLOW_CREDENTI;
  1222. default:
  1223. return -1;
  1224. }
  1225. ACCESS_CONTROL_ALLOW_CREDENTI:
  1226. NEXT_CHAR();
  1227. switch (ch) {
  1228. case 'A':
  1229. if (last) {
  1230. return -1;
  1231. }
  1232. goto ACCESS_CONTROL_ALLOW_CREDENTIA;
  1233. case 'a':
  1234. if (last) {
  1235. return -1;
  1236. }
  1237. goto ACCESS_CONTROL_ALLOW_CREDENTIA;
  1238. default:
  1239. return -1;
  1240. }
  1241. ACCESS_CONTROL_ALLOW_CREDENTIA:
  1242. NEXT_CHAR();
  1243. switch (ch) {
  1244. case 'L':
  1245. if (last) {
  1246. return -1;
  1247. }
  1248. goto ACCESS_CONTROL_ALLOW_CREDENTIAL;
  1249. case 'l':
  1250. if (last) {
  1251. return -1;
  1252. }
  1253. goto ACCESS_CONTROL_ALLOW_CREDENTIAL;
  1254. default:
  1255. return -1;
  1256. }
  1257. ACCESS_CONTROL_ALLOW_CREDENTIAL:
  1258. NEXT_CHAR();
  1259. switch (ch) {
  1260. case 'S':
  1261. if (last) {
  1262. return 5;
  1263. }
  1264. goto ACCESS_CONTROL_ALLOW_CREDENTIALS;
  1265. case 's':
  1266. if (last) {
  1267. return 5;
  1268. }
  1269. goto ACCESS_CONTROL_ALLOW_CREDENTIALS;
  1270. default:
  1271. return -1;
  1272. }
  1273. ACCESS_CONTROL_ALLOW_H:
  1274. NEXT_CHAR();
  1275. switch (ch) {
  1276. case 'E':
  1277. if (last) {
  1278. return -1;
  1279. }
  1280. goto ACCESS_CONTROL_ALLOW_HE;
  1281. case 'e':
  1282. if (last) {
  1283. return -1;
  1284. }
  1285. goto ACCESS_CONTROL_ALLOW_HE;
  1286. default:
  1287. return -1;
  1288. }
  1289. ACCESS_CONTROL_ALLOW_HE:
  1290. NEXT_CHAR();
  1291. switch (ch) {
  1292. case 'A':
  1293. if (last) {
  1294. return -1;
  1295. }
  1296. goto ACCESS_CONTROL_ALLOW_HEA;
  1297. case 'a':
  1298. if (last) {
  1299. return -1;
  1300. }
  1301. goto ACCESS_CONTROL_ALLOW_HEA;
  1302. default:
  1303. return -1;
  1304. }
  1305. ACCESS_CONTROL_ALLOW_HEA:
  1306. NEXT_CHAR();
  1307. switch (ch) {
  1308. case 'D':
  1309. if (last) {
  1310. return -1;
  1311. }
  1312. goto ACCESS_CONTROL_ALLOW_HEAD;
  1313. case 'd':
  1314. if (last) {
  1315. return -1;
  1316. }
  1317. goto ACCESS_CONTROL_ALLOW_HEAD;
  1318. default:
  1319. return -1;
  1320. }
  1321. ACCESS_CONTROL_ALLOW_HEAD:
  1322. NEXT_CHAR();
  1323. switch (ch) {
  1324. case 'E':
  1325. if (last) {
  1326. return -1;
  1327. }
  1328. goto ACCESS_CONTROL_ALLOW_HEADE;
  1329. case 'e':
  1330. if (last) {
  1331. return -1;
  1332. }
  1333. goto ACCESS_CONTROL_ALLOW_HEADE;
  1334. default:
  1335. return -1;
  1336. }
  1337. ACCESS_CONTROL_ALLOW_HEADE:
  1338. NEXT_CHAR();
  1339. switch (ch) {
  1340. case 'R':
  1341. if (last) {
  1342. return -1;
  1343. }
  1344. goto ACCESS_CONTROL_ALLOW_HEADER;
  1345. case 'r':
  1346. if (last) {
  1347. return -1;
  1348. }
  1349. goto ACCESS_CONTROL_ALLOW_HEADER;
  1350. default:
  1351. return -1;
  1352. }
  1353. ACCESS_CONTROL_ALLOW_HEADER:
  1354. NEXT_CHAR();
  1355. switch (ch) {
  1356. case 'S':
  1357. if (last) {
  1358. return 6;
  1359. }
  1360. goto ACCESS_CONTROL_ALLOW_HEADERS;
  1361. case 's':
  1362. if (last) {
  1363. return 6;
  1364. }
  1365. goto ACCESS_CONTROL_ALLOW_HEADERS;
  1366. default:
  1367. return -1;
  1368. }
  1369. ACCESS_CONTROL_ALLOW_M:
  1370. NEXT_CHAR();
  1371. switch (ch) {
  1372. case 'E':
  1373. if (last) {
  1374. return -1;
  1375. }
  1376. goto ACCESS_CONTROL_ALLOW_ME;
  1377. case 'e':
  1378. if (last) {
  1379. return -1;
  1380. }
  1381. goto ACCESS_CONTROL_ALLOW_ME;
  1382. default:
  1383. return -1;
  1384. }
  1385. ACCESS_CONTROL_ALLOW_ME:
  1386. NEXT_CHAR();
  1387. switch (ch) {
  1388. case 'T':
  1389. if (last) {
  1390. return -1;
  1391. }
  1392. goto ACCESS_CONTROL_ALLOW_MET;
  1393. case 't':
  1394. if (last) {
  1395. return -1;
  1396. }
  1397. goto ACCESS_CONTROL_ALLOW_MET;
  1398. default:
  1399. return -1;
  1400. }
  1401. ACCESS_CONTROL_ALLOW_MET:
  1402. NEXT_CHAR();
  1403. switch (ch) {
  1404. case 'H':
  1405. if (last) {
  1406. return -1;
  1407. }
  1408. goto ACCESS_CONTROL_ALLOW_METH;
  1409. case 'h':
  1410. if (last) {
  1411. return -1;
  1412. }
  1413. goto ACCESS_CONTROL_ALLOW_METH;
  1414. default:
  1415. return -1;
  1416. }
  1417. ACCESS_CONTROL_ALLOW_METH:
  1418. NEXT_CHAR();
  1419. switch (ch) {
  1420. case 'O':
  1421. if (last) {
  1422. return -1;
  1423. }
  1424. goto ACCESS_CONTROL_ALLOW_METHO;
  1425. case 'o':
  1426. if (last) {
  1427. return -1;
  1428. }
  1429. goto ACCESS_CONTROL_ALLOW_METHO;
  1430. default:
  1431. return -1;
  1432. }
  1433. ACCESS_CONTROL_ALLOW_METHO:
  1434. NEXT_CHAR();
  1435. switch (ch) {
  1436. case 'D':
  1437. if (last) {
  1438. return -1;
  1439. }
  1440. goto ACCESS_CONTROL_ALLOW_METHOD;
  1441. case 'd':
  1442. if (last) {
  1443. return -1;
  1444. }
  1445. goto ACCESS_CONTROL_ALLOW_METHOD;
  1446. default:
  1447. return -1;
  1448. }
  1449. ACCESS_CONTROL_ALLOW_METHOD:
  1450. NEXT_CHAR();
  1451. switch (ch) {
  1452. case 'S':
  1453. if (last) {
  1454. return 7;
  1455. }
  1456. goto ACCESS_CONTROL_ALLOW_METHODS;
  1457. case 's':
  1458. if (last) {
  1459. return 7;
  1460. }
  1461. goto ACCESS_CONTROL_ALLOW_METHODS;
  1462. default:
  1463. return -1;
  1464. }
  1465. ACCESS_CONTROL_ALLOW_O:
  1466. NEXT_CHAR();
  1467. switch (ch) {
  1468. case 'R':
  1469. if (last) {
  1470. return -1;
  1471. }
  1472. goto ACCESS_CONTROL_ALLOW_OR;
  1473. case 'r':
  1474. if (last) {
  1475. return -1;
  1476. }
  1477. goto ACCESS_CONTROL_ALLOW_OR;
  1478. default:
  1479. return -1;
  1480. }
  1481. ACCESS_CONTROL_ALLOW_OR:
  1482. NEXT_CHAR();
  1483. switch (ch) {
  1484. case 'I':
  1485. if (last) {
  1486. return -1;
  1487. }
  1488. goto ACCESS_CONTROL_ALLOW_ORI;
  1489. case 'i':
  1490. if (last) {
  1491. return -1;
  1492. }
  1493. goto ACCESS_CONTROL_ALLOW_ORI;
  1494. default:
  1495. return -1;
  1496. }
  1497. ACCESS_CONTROL_ALLOW_ORI:
  1498. NEXT_CHAR();
  1499. switch (ch) {
  1500. case 'G':
  1501. if (last) {
  1502. return -1;
  1503. }
  1504. goto ACCESS_CONTROL_ALLOW_ORIG;
  1505. case 'g':
  1506. if (last) {
  1507. return -1;
  1508. }
  1509. goto ACCESS_CONTROL_ALLOW_ORIG;
  1510. default:
  1511. return -1;
  1512. }
  1513. ACCESS_CONTROL_ALLOW_ORIG:
  1514. NEXT_CHAR();
  1515. switch (ch) {
  1516. case 'I':
  1517. if (last) {
  1518. return -1;
  1519. }
  1520. goto ACCESS_CONTROL_ALLOW_ORIGI;
  1521. case 'i':
  1522. if (last) {
  1523. return -1;
  1524. }
  1525. goto ACCESS_CONTROL_ALLOW_ORIGI;
  1526. default:
  1527. return -1;
  1528. }
  1529. ACCESS_CONTROL_ALLOW_ORIGI:
  1530. NEXT_CHAR();
  1531. switch (ch) {
  1532. case 'N':
  1533. if (last) {
  1534. return 8;
  1535. }
  1536. goto ACCESS_CONTROL_ALLOW_ORIGIN;
  1537. case 'n':
  1538. if (last) {
  1539. return 8;
  1540. }
  1541. goto ACCESS_CONTROL_ALLOW_ORIGIN;
  1542. default:
  1543. return -1;
  1544. }
  1545. ACCESS_CONTROL_E:
  1546. NEXT_CHAR();
  1547. switch (ch) {
  1548. case 'X':
  1549. if (last) {
  1550. return -1;
  1551. }
  1552. goto ACCESS_CONTROL_EX;
  1553. case 'x':
  1554. if (last) {
  1555. return -1;
  1556. }
  1557. goto ACCESS_CONTROL_EX;
  1558. default:
  1559. return -1;
  1560. }
  1561. ACCESS_CONTROL_EX:
  1562. NEXT_CHAR();
  1563. switch (ch) {
  1564. case 'P':
  1565. if (last) {
  1566. return -1;
  1567. }
  1568. goto ACCESS_CONTROL_EXP;
  1569. case 'p':
  1570. if (last) {
  1571. return -1;
  1572. }
  1573. goto ACCESS_CONTROL_EXP;
  1574. default:
  1575. return -1;
  1576. }
  1577. ACCESS_CONTROL_EXP:
  1578. NEXT_CHAR();
  1579. switch (ch) {
  1580. case 'O':
  1581. if (last) {
  1582. return -1;
  1583. }
  1584. goto ACCESS_CONTROL_EXPO;
  1585. case 'o':
  1586. if (last) {
  1587. return -1;
  1588. }
  1589. goto ACCESS_CONTROL_EXPO;
  1590. default:
  1591. return -1;
  1592. }
  1593. ACCESS_CONTROL_EXPO:
  1594. NEXT_CHAR();
  1595. switch (ch) {
  1596. case 'S':
  1597. if (last) {
  1598. return -1;
  1599. }
  1600. goto ACCESS_CONTROL_EXPOS;
  1601. case 's':
  1602. if (last) {
  1603. return -1;
  1604. }
  1605. goto ACCESS_CONTROL_EXPOS;
  1606. default:
  1607. return -1;
  1608. }
  1609. ACCESS_CONTROL_EXPOS:
  1610. NEXT_CHAR();
  1611. switch (ch) {
  1612. case 'E':
  1613. if (last) {
  1614. return -1;
  1615. }
  1616. goto ACCESS_CONTROL_EXPOSE;
  1617. case 'e':
  1618. if (last) {
  1619. return -1;
  1620. }
  1621. goto ACCESS_CONTROL_EXPOSE;
  1622. default:
  1623. return -1;
  1624. }
  1625. ACCESS_CONTROL_EXPOSE:
  1626. NEXT_CHAR();
  1627. switch (ch) {
  1628. case '-':
  1629. if (last) {
  1630. return -1;
  1631. }
  1632. goto ACCESS_CONTROL_EXPOSE_;
  1633. default:
  1634. return -1;
  1635. }
  1636. ACCESS_CONTROL_EXPOSE_:
  1637. NEXT_CHAR();
  1638. switch (ch) {
  1639. case 'H':
  1640. if (last) {
  1641. return -1;
  1642. }
  1643. goto ACCESS_CONTROL_EXPOSE_H;
  1644. case 'h':
  1645. if (last) {
  1646. return -1;
  1647. }
  1648. goto ACCESS_CONTROL_EXPOSE_H;
  1649. default:
  1650. return -1;
  1651. }
  1652. ACCESS_CONTROL_EXPOSE_H:
  1653. NEXT_CHAR();
  1654. switch (ch) {
  1655. case 'E':
  1656. if (last) {
  1657. return -1;
  1658. }
  1659. goto ACCESS_CONTROL_EXPOSE_HE;
  1660. case 'e':
  1661. if (last) {
  1662. return -1;
  1663. }
  1664. goto ACCESS_CONTROL_EXPOSE_HE;
  1665. default:
  1666. return -1;
  1667. }
  1668. ACCESS_CONTROL_EXPOSE_HE:
  1669. NEXT_CHAR();
  1670. switch (ch) {
  1671. case 'A':
  1672. if (last) {
  1673. return -1;
  1674. }
  1675. goto ACCESS_CONTROL_EXPOSE_HEA;
  1676. case 'a':
  1677. if (last) {
  1678. return -1;
  1679. }
  1680. goto ACCESS_CONTROL_EXPOSE_HEA;
  1681. default:
  1682. return -1;
  1683. }
  1684. ACCESS_CONTROL_EXPOSE_HEA:
  1685. NEXT_CHAR();
  1686. switch (ch) {
  1687. case 'D':
  1688. if (last) {
  1689. return -1;
  1690. }
  1691. goto ACCESS_CONTROL_EXPOSE_HEAD;
  1692. case 'd':
  1693. if (last) {
  1694. return -1;
  1695. }
  1696. goto ACCESS_CONTROL_EXPOSE_HEAD;
  1697. default:
  1698. return -1;
  1699. }
  1700. ACCESS_CONTROL_EXPOSE_HEAD:
  1701. NEXT_CHAR();
  1702. switch (ch) {
  1703. case 'E':
  1704. if (last) {
  1705. return -1;
  1706. }
  1707. goto ACCESS_CONTROL_EXPOSE_HEADE;
  1708. case 'e':
  1709. if (last) {
  1710. return -1;
  1711. }
  1712. goto ACCESS_CONTROL_EXPOSE_HEADE;
  1713. default:
  1714. return -1;
  1715. }
  1716. ACCESS_CONTROL_EXPOSE_HEADE:
  1717. NEXT_CHAR();
  1718. switch (ch) {
  1719. case 'R':
  1720. if (last) {
  1721. return -1;
  1722. }
  1723. goto ACCESS_CONTROL_EXPOSE_HEADER;
  1724. case 'r':
  1725. if (last) {
  1726. return -1;
  1727. }
  1728. goto ACCESS_CONTROL_EXPOSE_HEADER;
  1729. default:
  1730. return -1;
  1731. }
  1732. ACCESS_CONTROL_EXPOSE_HEADER:
  1733. NEXT_CHAR();
  1734. switch (ch) {
  1735. case 'S':
  1736. if (last) {
  1737. return 9;
  1738. }
  1739. goto ACCESS_CONTROL_EXPOSE_HEADERS;
  1740. case 's':
  1741. if (last) {
  1742. return 9;
  1743. }
  1744. goto ACCESS_CONTROL_EXPOSE_HEADERS;
  1745. default:
  1746. return -1;
  1747. }
  1748. ACCESS_CONTROL_M:
  1749. NEXT_CHAR();
  1750. switch (ch) {
  1751. case 'A':
  1752. if (last) {
  1753. return -1;
  1754. }
  1755. goto ACCESS_CONTROL_MA;
  1756. case 'a':
  1757. if (last) {
  1758. return -1;
  1759. }
  1760. goto ACCESS_CONTROL_MA;
  1761. default:
  1762. return -1;
  1763. }
  1764. ACCESS_CONTROL_MA:
  1765. NEXT_CHAR();
  1766. switch (ch) {
  1767. case 'X':
  1768. if (last) {
  1769. return -1;
  1770. }
  1771. goto ACCESS_CONTROL_MAX;
  1772. case 'x':
  1773. if (last) {
  1774. return -1;
  1775. }
  1776. goto ACCESS_CONTROL_MAX;
  1777. default:
  1778. return -1;
  1779. }
  1780. ACCESS_CONTROL_MAX:
  1781. NEXT_CHAR();
  1782. switch (ch) {
  1783. case '-':
  1784. if (last) {
  1785. return -1;
  1786. }
  1787. goto ACCESS_CONTROL_MAX_;
  1788. default:
  1789. return -1;
  1790. }
  1791. ACCESS_CONTROL_MAX_:
  1792. NEXT_CHAR();
  1793. switch (ch) {
  1794. case 'A':
  1795. if (last) {
  1796. return -1;
  1797. }
  1798. goto ACCESS_CONTROL_MAX_A;
  1799. case 'a':
  1800. if (last) {
  1801. return -1;
  1802. }
  1803. goto ACCESS_CONTROL_MAX_A;
  1804. default:
  1805. return -1;
  1806. }
  1807. ACCESS_CONTROL_MAX_A:
  1808. NEXT_CHAR();
  1809. switch (ch) {
  1810. case 'G':
  1811. if (last) {
  1812. return -1;
  1813. }
  1814. goto ACCESS_CONTROL_MAX_AG;
  1815. case 'g':
  1816. if (last) {
  1817. return -1;
  1818. }
  1819. goto ACCESS_CONTROL_MAX_AG;
  1820. default:
  1821. return -1;
  1822. }
  1823. ACCESS_CONTROL_MAX_AG:
  1824. NEXT_CHAR();
  1825. switch (ch) {
  1826. case 'E':
  1827. if (last) {
  1828. return 10;
  1829. }
  1830. goto ACCESS_CONTROL_MAX_AGE;
  1831. case 'e':
  1832. if (last) {
  1833. return 10;
  1834. }
  1835. goto ACCESS_CONTROL_MAX_AGE;
  1836. default:
  1837. return -1;
  1838. }
  1839. ACCESS_CONTROL_R:
  1840. NEXT_CHAR();
  1841. switch (ch) {
  1842. case 'E':
  1843. if (last) {
  1844. return -1;
  1845. }
  1846. goto ACCESS_CONTROL_RE;
  1847. case 'e':
  1848. if (last) {
  1849. return -1;
  1850. }
  1851. goto ACCESS_CONTROL_RE;
  1852. default:
  1853. return -1;
  1854. }
  1855. ACCESS_CONTROL_RE:
  1856. NEXT_CHAR();
  1857. switch (ch) {
  1858. case 'Q':
  1859. if (last) {
  1860. return -1;
  1861. }
  1862. goto ACCESS_CONTROL_REQ;
  1863. case 'q':
  1864. if (last) {
  1865. return -1;
  1866. }
  1867. goto ACCESS_CONTROL_REQ;
  1868. default:
  1869. return -1;
  1870. }
  1871. ACCESS_CONTROL_REQ:
  1872. NEXT_CHAR();
  1873. switch (ch) {
  1874. case 'U':
  1875. if (last) {
  1876. return -1;
  1877. }
  1878. goto ACCESS_CONTROL_REQU;
  1879. case 'u':
  1880. if (last) {
  1881. return -1;
  1882. }
  1883. goto ACCESS_CONTROL_REQU;
  1884. default:
  1885. return -1;
  1886. }
  1887. ACCESS_CONTROL_REQU:
  1888. NEXT_CHAR();
  1889. switch (ch) {
  1890. case 'E':
  1891. if (last) {
  1892. return -1;
  1893. }
  1894. goto ACCESS_CONTROL_REQUE;
  1895. case 'e':
  1896. if (last) {
  1897. return -1;
  1898. }
  1899. goto ACCESS_CONTROL_REQUE;
  1900. default:
  1901. return -1;
  1902. }
  1903. ACCESS_CONTROL_REQUE:
  1904. NEXT_CHAR();
  1905. switch (ch) {
  1906. case 'S':
  1907. if (last) {
  1908. return -1;
  1909. }
  1910. goto ACCESS_CONTROL_REQUES;
  1911. case 's':
  1912. if (last) {
  1913. return -1;
  1914. }
  1915. goto ACCESS_CONTROL_REQUES;
  1916. default:
  1917. return -1;
  1918. }
  1919. ACCESS_CONTROL_REQUES:
  1920. NEXT_CHAR();
  1921. switch (ch) {
  1922. case 'T':
  1923. if (last) {
  1924. return -1;
  1925. }
  1926. goto ACCESS_CONTROL_REQUEST;
  1927. case 't':
  1928. if (last) {
  1929. return -1;
  1930. }
  1931. goto ACCESS_CONTROL_REQUEST;
  1932. default:
  1933. return -1;
  1934. }
  1935. ACCESS_CONTROL_REQUEST:
  1936. NEXT_CHAR();
  1937. switch (ch) {
  1938. case '-':
  1939. if (last) {
  1940. return -1;
  1941. }
  1942. goto ACCESS_CONTROL_REQUEST_;
  1943. default:
  1944. return -1;
  1945. }
  1946. ACCESS_CONTROL_REQUEST_:
  1947. NEXT_CHAR();
  1948. switch (ch) {
  1949. case 'H':
  1950. if (last) {
  1951. return -1;
  1952. }
  1953. goto ACCESS_CONTROL_REQUEST_H;
  1954. case 'h':
  1955. if (last) {
  1956. return -1;
  1957. }
  1958. goto ACCESS_CONTROL_REQUEST_H;
  1959. case 'M':
  1960. if (last) {
  1961. return -1;
  1962. }
  1963. goto ACCESS_CONTROL_REQUEST_M;
  1964. case 'm':
  1965. if (last) {
  1966. return -1;
  1967. }
  1968. goto ACCESS_CONTROL_REQUEST_M;
  1969. default:
  1970. return -1;
  1971. }
  1972. ACCESS_CONTROL_REQUEST_H:
  1973. NEXT_CHAR();
  1974. switch (ch) {
  1975. case 'E':
  1976. if (last) {
  1977. return -1;
  1978. }
  1979. goto ACCESS_CONTROL_REQUEST_HE;
  1980. case 'e':
  1981. if (last) {
  1982. return -1;
  1983. }
  1984. goto ACCESS_CONTROL_REQUEST_HE;
  1985. default:
  1986. return -1;
  1987. }
  1988. ACCESS_CONTROL_REQUEST_HE:
  1989. NEXT_CHAR();
  1990. switch (ch) {
  1991. case 'A':
  1992. if (last) {
  1993. return -1;
  1994. }
  1995. goto ACCESS_CONTROL_REQUEST_HEA;
  1996. case 'a':
  1997. if (last) {
  1998. return -1;
  1999. }
  2000. goto ACCESS_CONTROL_REQUEST_HEA;
  2001. default:
  2002. return -1;
  2003. }
  2004. ACCESS_CONTROL_REQUEST_HEA:
  2005. NEXT_CHAR();
  2006. switch (ch) {
  2007. case 'D':
  2008. if (last) {
  2009. return -1;
  2010. }
  2011. goto ACCESS_CONTROL_REQUEST_HEAD;
  2012. case 'd':
  2013. if (last) {
  2014. return -1;
  2015. }
  2016. goto ACCESS_CONTROL_REQUEST_HEAD;
  2017. default:
  2018. return -1;
  2019. }
  2020. ACCESS_CONTROL_REQUEST_HEAD:
  2021. NEXT_CHAR();
  2022. switch (ch) {
  2023. case 'E':
  2024. if (last) {
  2025. return -1;
  2026. }
  2027. goto ACCESS_CONTROL_REQUEST_HEADE;
  2028. case 'e':
  2029. if (last) {
  2030. return -1;
  2031. }
  2032. goto ACCESS_CONTROL_REQUEST_HEADE;
  2033. default:
  2034. return -1;
  2035. }
  2036. ACCESS_CONTROL_REQUEST_HEADE:
  2037. NEXT_CHAR();
  2038. switch (ch) {
  2039. case 'R':
  2040. if (last) {
  2041. return -1;
  2042. }
  2043. goto ACCESS_CONTROL_REQUEST_HEADER;
  2044. case 'r':
  2045. if (last) {
  2046. return -1;
  2047. }
  2048. goto ACCESS_CONTROL_REQUEST_HEADER;
  2049. default:
  2050. return -1;
  2051. }
  2052. ACCESS_CONTROL_REQUEST_HEADER:
  2053. NEXT_CHAR();
  2054. switch (ch) {
  2055. case 'S':
  2056. if (last) {
  2057. return 11;
  2058. }
  2059. goto ACCESS_CONTROL_REQUEST_HEADERS;
  2060. case 's':
  2061. if (last) {
  2062. return 11;
  2063. }
  2064. goto ACCESS_CONTROL_REQUEST_HEADERS;
  2065. default:
  2066. return -1;
  2067. }
  2068. ACCESS_CONTROL_REQUEST_M:
  2069. NEXT_CHAR();
  2070. switch (ch) {
  2071. case 'E':
  2072. if (last) {
  2073. return -1;
  2074. }
  2075. goto ACCESS_CONTROL_REQUEST_ME;
  2076. case 'e':
  2077. if (last) {
  2078. return -1;
  2079. }
  2080. goto ACCESS_CONTROL_REQUEST_ME;
  2081. default:
  2082. return -1;
  2083. }
  2084. ACCESS_CONTROL_REQUEST_ME:
  2085. NEXT_CHAR();
  2086. switch (ch) {
  2087. case 'T':
  2088. if (last) {
  2089. return -1;
  2090. }
  2091. goto ACCESS_CONTROL_REQUEST_MET;
  2092. case 't':
  2093. if (last) {
  2094. return -1;
  2095. }
  2096. goto ACCESS_CONTROL_REQUEST_MET;
  2097. default:
  2098. return -1;
  2099. }
  2100. ACCESS_CONTROL_REQUEST_MET:
  2101. NEXT_CHAR();
  2102. switch (ch) {
  2103. case 'H':
  2104. if (last) {
  2105. return -1;
  2106. }
  2107. goto ACCESS_CONTROL_REQUEST_METH;
  2108. case 'h':
  2109. if (last) {
  2110. return -1;
  2111. }
  2112. goto ACCESS_CONTROL_REQUEST_METH;
  2113. default:
  2114. return -1;
  2115. }
  2116. ACCESS_CONTROL_REQUEST_METH:
  2117. NEXT_CHAR();
  2118. switch (ch) {
  2119. case 'O':
  2120. if (last) {
  2121. return -1;
  2122. }
  2123. goto ACCESS_CONTROL_REQUEST_METHO;
  2124. case 'o':
  2125. if (last) {
  2126. return -1;
  2127. }
  2128. goto ACCESS_CONTROL_REQUEST_METHO;
  2129. default:
  2130. return -1;
  2131. }
  2132. ACCESS_CONTROL_REQUEST_METHO:
  2133. NEXT_CHAR();
  2134. switch (ch) {
  2135. case 'D':
  2136. if (last) {
  2137. return 12;
  2138. }
  2139. goto ACCESS_CONTROL_REQUEST_METHOD;
  2140. case 'd':
  2141. if (last) {
  2142. return 12;
  2143. }
  2144. goto ACCESS_CONTROL_REQUEST_METHOD;
  2145. default:
  2146. return -1;
  2147. }
  2148. AG:
  2149. NEXT_CHAR();
  2150. switch (ch) {
  2151. case 'E':
  2152. if (last) {
  2153. return 13;
  2154. }
  2155. goto AGE;
  2156. case 'e':
  2157. if (last) {
  2158. return 13;
  2159. }
  2160. goto AGE;
  2161. default:
  2162. return -1;
  2163. }
  2164. AL:
  2165. NEXT_CHAR();
  2166. switch (ch) {
  2167. case 'L':
  2168. if (last) {
  2169. return -1;
  2170. }
  2171. goto ALL;
  2172. case 'l':
  2173. if (last) {
  2174. return -1;
  2175. }
  2176. goto ALL;
  2177. default:
  2178. return -1;
  2179. }
  2180. ALL:
  2181. NEXT_CHAR();
  2182. switch (ch) {
  2183. case 'O':
  2184. if (last) {
  2185. return -1;
  2186. }
  2187. goto ALLO;
  2188. case 'o':
  2189. if (last) {
  2190. return -1;
  2191. }
  2192. goto ALLO;
  2193. default:
  2194. return -1;
  2195. }
  2196. ALLO:
  2197. NEXT_CHAR();
  2198. switch (ch) {
  2199. case 'W':
  2200. if (last) {
  2201. return 14;
  2202. }
  2203. goto ALLOW;
  2204. case 'w':
  2205. if (last) {
  2206. return 14;
  2207. }
  2208. goto ALLOW;
  2209. default:
  2210. return -1;
  2211. }
  2212. AU:
  2213. NEXT_CHAR();
  2214. switch (ch) {
  2215. case 'T':
  2216. if (last) {
  2217. return -1;
  2218. }
  2219. goto AUT;
  2220. case 't':
  2221. if (last) {
  2222. return -1;
  2223. }
  2224. goto AUT;
  2225. default:
  2226. return -1;
  2227. }
  2228. AUT:
  2229. NEXT_CHAR();
  2230. switch (ch) {
  2231. case 'H':
  2232. if (last) {
  2233. return -1;
  2234. }
  2235. goto AUTH;
  2236. case 'h':
  2237. if (last) {
  2238. return -1;
  2239. }
  2240. goto AUTH;
  2241. default:
  2242. return -1;
  2243. }
  2244. AUTH:
  2245. NEXT_CHAR();
  2246. switch (ch) {
  2247. case 'O':
  2248. if (last) {
  2249. return -1;
  2250. }
  2251. goto AUTHO;
  2252. case 'o':
  2253. if (last) {
  2254. return -1;
  2255. }
  2256. goto AUTHO;
  2257. default:
  2258. return -1;
  2259. }
  2260. AUTHO:
  2261. NEXT_CHAR();
  2262. switch (ch) {
  2263. case 'R':
  2264. if (last) {
  2265. return -1;
  2266. }
  2267. goto AUTHOR;
  2268. case 'r':
  2269. if (last) {
  2270. return -1;
  2271. }
  2272. goto AUTHOR;
  2273. default:
  2274. return -1;
  2275. }
  2276. AUTHOR:
  2277. NEXT_CHAR();
  2278. switch (ch) {
  2279. case 'I':
  2280. if (last) {
  2281. return -1;
  2282. }
  2283. goto AUTHORI;
  2284. case 'i':
  2285. if (last) {
  2286. return -1;
  2287. }
  2288. goto AUTHORI;
  2289. default:
  2290. return -1;
  2291. }
  2292. AUTHORI:
  2293. NEXT_CHAR();
  2294. switch (ch) {
  2295. case 'Z':
  2296. if (last) {
  2297. return -1;
  2298. }
  2299. goto AUTHORIZ;
  2300. case 'z':
  2301. if (last) {
  2302. return -1;
  2303. }
  2304. goto AUTHORIZ;
  2305. default:
  2306. return -1;
  2307. }
  2308. AUTHORIZ:
  2309. NEXT_CHAR();
  2310. switch (ch) {
  2311. case 'A':
  2312. if (last) {
  2313. return -1;
  2314. }
  2315. goto AUTHORIZA;
  2316. case 'a':
  2317. if (last) {
  2318. return -1;
  2319. }
  2320. goto AUTHORIZA;
  2321. default:
  2322. return -1;
  2323. }
  2324. AUTHORIZA:
  2325. NEXT_CHAR();
  2326. switch (ch) {
  2327. case 'T':
  2328. if (last) {
  2329. return -1;
  2330. }
  2331. goto AUTHORIZAT;
  2332. case 't':
  2333. if (last) {
  2334. return -1;
  2335. }
  2336. goto AUTHORIZAT;
  2337. default:
  2338. return -1;
  2339. }
  2340. AUTHORIZAT:
  2341. NEXT_CHAR();
  2342. switch (ch) {
  2343. case 'I':
  2344. if (last) {
  2345. return -1;
  2346. }
  2347. goto AUTHORIZATI;
  2348. case 'i':
  2349. if (last) {
  2350. return -1;
  2351. }
  2352. goto AUTHORIZATI;
  2353. default:
  2354. return -1;
  2355. }
  2356. AUTHORIZATI:
  2357. NEXT_CHAR();
  2358. switch (ch) {
  2359. case 'O':
  2360. if (last) {
  2361. return -1;
  2362. }
  2363. goto AUTHORIZATIO;
  2364. case 'o':
  2365. if (last) {
  2366. return -1;
  2367. }
  2368. goto AUTHORIZATIO;
  2369. default:
  2370. return -1;
  2371. }
  2372. AUTHORIZATIO:
  2373. NEXT_CHAR();
  2374. switch (ch) {
  2375. case 'N':
  2376. if (last) {
  2377. return 15;
  2378. }
  2379. goto AUTHORIZATION;
  2380. case 'n':
  2381. if (last) {
  2382. return 15;
  2383. }
  2384. goto AUTHORIZATION;
  2385. default:
  2386. return -1;
  2387. }
  2388. C:
  2389. NEXT_CHAR();
  2390. switch (ch) {
  2391. case 'A':
  2392. if (last) {
  2393. return -1;
  2394. }
  2395. goto CA;
  2396. case 'a':
  2397. if (last) {
  2398. return -1;
  2399. }
  2400. goto CA;
  2401. case 'O':
  2402. if (last) {
  2403. return -1;
  2404. }
  2405. goto CO;
  2406. case 'o':
  2407. if (last) {
  2408. return -1;
  2409. }
  2410. goto CO;
  2411. default:
  2412. return -1;
  2413. }
  2414. CA:
  2415. NEXT_CHAR();
  2416. switch (ch) {
  2417. case 'C':
  2418. if (last) {
  2419. return -1;
  2420. }
  2421. goto CAC;
  2422. case 'c':
  2423. if (last) {
  2424. return -1;
  2425. }
  2426. goto CAC;
  2427. default:
  2428. return -1;
  2429. }
  2430. CAC:
  2431. NEXT_CHAR();
  2432. switch (ch) {
  2433. case 'H':
  2434. if (last) {
  2435. return -1;
  2436. }
  2437. goto CACH;
  2438. case 'h':
  2439. if (last) {
  2440. return -1;
  2441. }
  2442. goto CACH;
  2443. default:
  2444. return -1;
  2445. }
  2446. CACH:
  2447. NEXT_CHAR();
  2448. switch (ch) {
  2449. case 'E':
  2450. if (last) {
  2451. return -1;
  2452. }
  2453. goto CACHE;
  2454. case 'e':
  2455. if (last) {
  2456. return -1;
  2457. }
  2458. goto CACHE;
  2459. default:
  2460. return -1;
  2461. }
  2462. CACHE:
  2463. NEXT_CHAR();
  2464. switch (ch) {
  2465. case '-':
  2466. if (last) {
  2467. return -1;
  2468. }
  2469. goto CACHE_;
  2470. default:
  2471. return -1;
  2472. }
  2473. CACHE_:
  2474. NEXT_CHAR();
  2475. switch (ch) {
  2476. case 'C':
  2477. if (last) {
  2478. return -1;
  2479. }
  2480. goto CACHE_C;
  2481. case 'c':
  2482. if (last) {
  2483. return -1;
  2484. }
  2485. goto CACHE_C;
  2486. default:
  2487. return -1;
  2488. }
  2489. CACHE_C:
  2490. NEXT_CHAR();
  2491. switch (ch) {
  2492. case 'O':
  2493. if (last) {
  2494. return -1;
  2495. }
  2496. goto CACHE_CO;
  2497. case 'o':
  2498. if (last) {
  2499. return -1;
  2500. }
  2501. goto CACHE_CO;
  2502. default:
  2503. return -1;
  2504. }
  2505. CACHE_CO:
  2506. NEXT_CHAR();
  2507. switch (ch) {
  2508. case 'N':
  2509. if (last) {
  2510. return -1;
  2511. }
  2512. goto CACHE_CON;
  2513. case 'n':
  2514. if (last) {
  2515. return -1;
  2516. }
  2517. goto CACHE_CON;
  2518. default:
  2519. return -1;
  2520. }
  2521. CACHE_CON:
  2522. NEXT_CHAR();
  2523. switch (ch) {
  2524. case 'T':
  2525. if (last) {
  2526. return -1;
  2527. }
  2528. goto CACHE_CONT;
  2529. case 't':
  2530. if (last) {
  2531. return -1;
  2532. }
  2533. goto CACHE_CONT;
  2534. default:
  2535. return -1;
  2536. }
  2537. CACHE_CONT:
  2538. NEXT_CHAR();
  2539. switch (ch) {
  2540. case 'R':
  2541. if (last) {
  2542. return -1;
  2543. }
  2544. goto CACHE_CONTR;
  2545. case 'r':
  2546. if (last) {
  2547. return -1;
  2548. }
  2549. goto CACHE_CONTR;
  2550. default:
  2551. return -1;
  2552. }
  2553. CACHE_CONTR:
  2554. NEXT_CHAR();
  2555. switch (ch) {
  2556. case 'O':
  2557. if (last) {
  2558. return -1;
  2559. }
  2560. goto CACHE_CONTRO;
  2561. case 'o':
  2562. if (last) {
  2563. return -1;
  2564. }
  2565. goto CACHE_CONTRO;
  2566. default:
  2567. return -1;
  2568. }
  2569. CACHE_CONTRO:
  2570. NEXT_CHAR();
  2571. switch (ch) {
  2572. case 'L':
  2573. if (last) {
  2574. return 16;
  2575. }
  2576. goto CACHE_CONTROL;
  2577. case 'l':
  2578. if (last) {
  2579. return 16;
  2580. }
  2581. goto CACHE_CONTROL;
  2582. default:
  2583. return -1;
  2584. }
  2585. CO:
  2586. NEXT_CHAR();
  2587. switch (ch) {
  2588. case 'N':
  2589. if (last) {
  2590. return -1;
  2591. }
  2592. goto CON;
  2593. case 'n':
  2594. if (last) {
  2595. return -1;
  2596. }
  2597. goto CON;
  2598. case 'O':
  2599. if (last) {
  2600. return -1;
  2601. }
  2602. goto COO;
  2603. case 'o':
  2604. if (last) {
  2605. return -1;
  2606. }
  2607. goto COO;
  2608. default:
  2609. return -1;
  2610. }
  2611. CON:
  2612. NEXT_CHAR();
  2613. switch (ch) {
  2614. case 'N':
  2615. if (last) {
  2616. return -1;
  2617. }
  2618. goto CONN;
  2619. case 'n':
  2620. if (last) {
  2621. return -1;
  2622. }
  2623. goto CONN;
  2624. case 'T':
  2625. if (last) {
  2626. return -1;
  2627. }
  2628. goto CONT;
  2629. case 't':
  2630. if (last) {
  2631. return -1;
  2632. }
  2633. goto CONT;
  2634. default:
  2635. return -1;
  2636. }
  2637. CONN:
  2638. NEXT_CHAR();
  2639. switch (ch) {
  2640. case 'E':
  2641. if (last) {
  2642. return -1;
  2643. }
  2644. goto CONNE;
  2645. case 'e':
  2646. if (last) {
  2647. return -1;
  2648. }
  2649. goto CONNE;
  2650. default:
  2651. return -1;
  2652. }
  2653. CONNE:
  2654. NEXT_CHAR();
  2655. switch (ch) {
  2656. case 'C':
  2657. if (last) {
  2658. return -1;
  2659. }
  2660. goto CONNEC;
  2661. case 'c':
  2662. if (last) {
  2663. return -1;
  2664. }
  2665. goto CONNEC;
  2666. default:
  2667. return -1;
  2668. }
  2669. CONNEC:
  2670. NEXT_CHAR();
  2671. switch (ch) {
  2672. case 'T':
  2673. if (last) {
  2674. return -1;
  2675. }
  2676. goto CONNECT;
  2677. case 't':
  2678. if (last) {
  2679. return -1;
  2680. }
  2681. goto CONNECT;
  2682. default:
  2683. return -1;
  2684. }
  2685. CONNECT:
  2686. NEXT_CHAR();
  2687. switch (ch) {
  2688. case 'I':
  2689. if (last) {
  2690. return -1;
  2691. }
  2692. goto CONNECTI;
  2693. case 'i':
  2694. if (last) {
  2695. return -1;
  2696. }
  2697. goto CONNECTI;
  2698. default:
  2699. return -1;
  2700. }
  2701. CONNECTI:
  2702. NEXT_CHAR();
  2703. switch (ch) {
  2704. case 'O':
  2705. if (last) {
  2706. return -1;
  2707. }
  2708. goto CONNECTIO;
  2709. case 'o':
  2710. if (last) {
  2711. return -1;
  2712. }
  2713. goto CONNECTIO;
  2714. default:
  2715. return -1;
  2716. }
  2717. CONNECTIO:
  2718. NEXT_CHAR();
  2719. switch (ch) {
  2720. case 'N':
  2721. if (last) {
  2722. return 17;
  2723. }
  2724. goto CONNECTION;
  2725. case 'n':
  2726. if (last) {
  2727. return 17;
  2728. }
  2729. goto CONNECTION;
  2730. default:
  2731. return -1;
  2732. }
  2733. CONT:
  2734. NEXT_CHAR();
  2735. switch (ch) {
  2736. case 'E':
  2737. if (last) {
  2738. return -1;
  2739. }
  2740. goto CONTE;
  2741. case 'e':
  2742. if (last) {
  2743. return -1;
  2744. }
  2745. goto CONTE;
  2746. default:
  2747. return -1;
  2748. }
  2749. CONTE:
  2750. NEXT_CHAR();
  2751. switch (ch) {
  2752. case 'N':
  2753. if (last) {
  2754. return -1;
  2755. }
  2756. goto CONTEN;
  2757. case 'n':
  2758. if (last) {
  2759. return -1;
  2760. }
  2761. goto CONTEN;
  2762. default:
  2763. return -1;
  2764. }
  2765. CONTEN:
  2766. NEXT_CHAR();
  2767. switch (ch) {
  2768. case 'T':
  2769. if (last) {
  2770. return -1;
  2771. }
  2772. goto CONTENT;
  2773. case 't':
  2774. if (last) {
  2775. return -1;
  2776. }
  2777. goto CONTENT;
  2778. default:
  2779. return -1;
  2780. }
  2781. CONTENT:
  2782. NEXT_CHAR();
  2783. switch (ch) {
  2784. case '-':
  2785. if (last) {
  2786. return -1;
  2787. }
  2788. goto CONTENT_;
  2789. default:
  2790. return -1;
  2791. }
  2792. CONTENT_:
  2793. NEXT_CHAR();
  2794. switch (ch) {
  2795. case 'D':
  2796. if (last) {
  2797. return -1;
  2798. }
  2799. goto CONTENT_D;
  2800. case 'd':
  2801. if (last) {
  2802. return -1;
  2803. }
  2804. goto CONTENT_D;
  2805. case 'E':
  2806. if (last) {
  2807. return -1;
  2808. }
  2809. goto CONTENT_E;
  2810. case 'e':
  2811. if (last) {
  2812. return -1;
  2813. }
  2814. goto CONTENT_E;
  2815. case 'L':
  2816. if (last) {
  2817. return -1;
  2818. }
  2819. goto CONTENT_L;
  2820. case 'l':
  2821. if (last) {
  2822. return -1;
  2823. }
  2824. goto CONTENT_L;
  2825. case 'M':
  2826. if (last) {
  2827. return -1;
  2828. }
  2829. goto CONTENT_M;
  2830. case 'm':
  2831. if (last) {
  2832. return -1;
  2833. }
  2834. goto CONTENT_M;
  2835. case 'R':
  2836. if (last) {
  2837. return -1;
  2838. }
  2839. goto CONTENT_R;
  2840. case 'r':
  2841. if (last) {
  2842. return -1;
  2843. }
  2844. goto CONTENT_R;
  2845. case 'T':
  2846. if (last) {
  2847. return -1;
  2848. }
  2849. goto CONTENT_T;
  2850. case 't':
  2851. if (last) {
  2852. return -1;
  2853. }
  2854. goto CONTENT_T;
  2855. default:
  2856. return -1;
  2857. }
  2858. CONTENT_D:
  2859. NEXT_CHAR();
  2860. switch (ch) {
  2861. case 'I':
  2862. if (last) {
  2863. return -1;
  2864. }
  2865. goto CONTENT_DI;
  2866. case 'i':
  2867. if (last) {
  2868. return -1;
  2869. }
  2870. goto CONTENT_DI;
  2871. default:
  2872. return -1;
  2873. }
  2874. CONTENT_DI:
  2875. NEXT_CHAR();
  2876. switch (ch) {
  2877. case 'S':
  2878. if (last) {
  2879. return -1;
  2880. }
  2881. goto CONTENT_DIS;
  2882. case 's':
  2883. if (last) {
  2884. return -1;
  2885. }
  2886. goto CONTENT_DIS;
  2887. default:
  2888. return -1;
  2889. }
  2890. CONTENT_DIS:
  2891. NEXT_CHAR();
  2892. switch (ch) {
  2893. case 'P':
  2894. if (last) {
  2895. return -1;
  2896. }
  2897. goto CONTENT_DISP;
  2898. case 'p':
  2899. if (last) {
  2900. return -1;
  2901. }
  2902. goto CONTENT_DISP;
  2903. default:
  2904. return -1;
  2905. }
  2906. CONTENT_DISP:
  2907. NEXT_CHAR();
  2908. switch (ch) {
  2909. case 'O':
  2910. if (last) {
  2911. return -1;
  2912. }
  2913. goto CONTENT_DISPO;
  2914. case 'o':
  2915. if (last) {
  2916. return -1;
  2917. }
  2918. goto CONTENT_DISPO;
  2919. default:
  2920. return -1;
  2921. }
  2922. CONTENT_DISPO:
  2923. NEXT_CHAR();
  2924. switch (ch) {
  2925. case 'S':
  2926. if (last) {
  2927. return -1;
  2928. }
  2929. goto CONTENT_DISPOS;
  2930. case 's':
  2931. if (last) {
  2932. return -1;
  2933. }
  2934. goto CONTENT_DISPOS;
  2935. default:
  2936. return -1;
  2937. }
  2938. CONTENT_DISPOS:
  2939. NEXT_CHAR();
  2940. switch (ch) {
  2941. case 'I':
  2942. if (last) {
  2943. return -1;
  2944. }
  2945. goto CONTENT_DISPOSI;
  2946. case 'i':
  2947. if (last) {
  2948. return -1;
  2949. }
  2950. goto CONTENT_DISPOSI;
  2951. default:
  2952. return -1;
  2953. }
  2954. CONTENT_DISPOSI:
  2955. NEXT_CHAR();
  2956. switch (ch) {
  2957. case 'T':
  2958. if (last) {
  2959. return -1;
  2960. }
  2961. goto CONTENT_DISPOSIT;
  2962. case 't':
  2963. if (last) {
  2964. return -1;
  2965. }
  2966. goto CONTENT_DISPOSIT;
  2967. default:
  2968. return -1;
  2969. }
  2970. CONTENT_DISPOSIT:
  2971. NEXT_CHAR();
  2972. switch (ch) {
  2973. case 'I':
  2974. if (last) {
  2975. return -1;
  2976. }
  2977. goto CONTENT_DISPOSITI;
  2978. case 'i':
  2979. if (last) {
  2980. return -1;
  2981. }
  2982. goto CONTENT_DISPOSITI;
  2983. default:
  2984. return -1;
  2985. }
  2986. CONTENT_DISPOSITI:
  2987. NEXT_CHAR();
  2988. switch (ch) {
  2989. case 'O':
  2990. if (last) {
  2991. return -1;
  2992. }
  2993. goto CONTENT_DISPOSITIO;
  2994. case 'o':
  2995. if (last) {
  2996. return -1;
  2997. }
  2998. goto CONTENT_DISPOSITIO;
  2999. default:
  3000. return -1;
  3001. }
  3002. CONTENT_DISPOSITIO:
  3003. NEXT_CHAR();
  3004. switch (ch) {
  3005. case 'N':
  3006. if (last) {
  3007. return 18;
  3008. }
  3009. goto CONTENT_DISPOSITION;
  3010. case 'n':
  3011. if (last) {
  3012. return 18;
  3013. }
  3014. goto CONTENT_DISPOSITION;
  3015. default:
  3016. return -1;
  3017. }
  3018. CONTENT_E:
  3019. NEXT_CHAR();
  3020. switch (ch) {
  3021. case 'N':
  3022. if (last) {
  3023. return -1;
  3024. }
  3025. goto CONTENT_EN;
  3026. case 'n':
  3027. if (last) {
  3028. return -1;
  3029. }
  3030. goto CONTENT_EN;
  3031. default:
  3032. return -1;
  3033. }
  3034. CONTENT_EN:
  3035. NEXT_CHAR();
  3036. switch (ch) {
  3037. case 'C':
  3038. if (last) {
  3039. return -1;
  3040. }
  3041. goto CONTENT_ENC;
  3042. case 'c':
  3043. if (last) {
  3044. return -1;
  3045. }
  3046. goto CONTENT_ENC;
  3047. default:
  3048. return -1;
  3049. }
  3050. CONTENT_ENC:
  3051. NEXT_CHAR();
  3052. switch (ch) {
  3053. case 'O':
  3054. if (last) {
  3055. return -1;
  3056. }
  3057. goto CONTENT_ENCO;
  3058. case 'o':
  3059. if (last) {
  3060. return -1;
  3061. }
  3062. goto CONTENT_ENCO;
  3063. default:
  3064. return -1;
  3065. }
  3066. CONTENT_ENCO:
  3067. NEXT_CHAR();
  3068. switch (ch) {
  3069. case 'D':
  3070. if (last) {
  3071. return -1;
  3072. }
  3073. goto CONTENT_ENCOD;
  3074. case 'd':
  3075. if (last) {
  3076. return -1;
  3077. }
  3078. goto CONTENT_ENCOD;
  3079. default:
  3080. return -1;
  3081. }
  3082. CONTENT_ENCOD:
  3083. NEXT_CHAR();
  3084. switch (ch) {
  3085. case 'I':
  3086. if (last) {
  3087. return -1;
  3088. }
  3089. goto CONTENT_ENCODI;
  3090. case 'i':
  3091. if (last) {
  3092. return -1;
  3093. }
  3094. goto CONTENT_ENCODI;
  3095. default:
  3096. return -1;
  3097. }
  3098. CONTENT_ENCODI:
  3099. NEXT_CHAR();
  3100. switch (ch) {
  3101. case 'N':
  3102. if (last) {
  3103. return -1;
  3104. }
  3105. goto CONTENT_ENCODIN;
  3106. case 'n':
  3107. if (last) {
  3108. return -1;
  3109. }
  3110. goto CONTENT_ENCODIN;
  3111. default:
  3112. return -1;
  3113. }
  3114. CONTENT_ENCODIN:
  3115. NEXT_CHAR();
  3116. switch (ch) {
  3117. case 'G':
  3118. if (last) {
  3119. return 19;
  3120. }
  3121. goto CONTENT_ENCODING;
  3122. case 'g':
  3123. if (last) {
  3124. return 19;
  3125. }
  3126. goto CONTENT_ENCODING;
  3127. default:
  3128. return -1;
  3129. }
  3130. CONTENT_L:
  3131. NEXT_CHAR();
  3132. switch (ch) {
  3133. case 'A':
  3134. if (last) {
  3135. return -1;
  3136. }
  3137. goto CONTENT_LA;
  3138. case 'a':
  3139. if (last) {
  3140. return -1;
  3141. }
  3142. goto CONTENT_LA;
  3143. case 'E':
  3144. if (last) {
  3145. return -1;
  3146. }
  3147. goto CONTENT_LE;
  3148. case 'e':
  3149. if (last) {
  3150. return -1;
  3151. }
  3152. goto CONTENT_LE;
  3153. case 'O':
  3154. if (last) {
  3155. return -1;
  3156. }
  3157. goto CONTENT_LO;
  3158. case 'o':
  3159. if (last) {
  3160. return -1;
  3161. }
  3162. goto CONTENT_LO;
  3163. default:
  3164. return -1;
  3165. }
  3166. CONTENT_LA:
  3167. NEXT_CHAR();
  3168. switch (ch) {
  3169. case 'N':
  3170. if (last) {
  3171. return -1;
  3172. }
  3173. goto CONTENT_LAN;
  3174. case 'n':
  3175. if (last) {
  3176. return -1;
  3177. }
  3178. goto CONTENT_LAN;
  3179. default:
  3180. return -1;
  3181. }
  3182. CONTENT_LAN:
  3183. NEXT_CHAR();
  3184. switch (ch) {
  3185. case 'G':
  3186. if (last) {
  3187. return -1;
  3188. }
  3189. goto CONTENT_LANG;
  3190. case 'g':
  3191. if (last) {
  3192. return -1;
  3193. }
  3194. goto CONTENT_LANG;
  3195. default:
  3196. return -1;
  3197. }
  3198. CONTENT_LANG:
  3199. NEXT_CHAR();
  3200. switch (ch) {
  3201. case 'U':
  3202. if (last) {
  3203. return -1;
  3204. }
  3205. goto CONTENT_LANGU;
  3206. case 'u':
  3207. if (last) {
  3208. return -1;
  3209. }
  3210. goto CONTENT_LANGU;
  3211. default:
  3212. return -1;
  3213. }
  3214. CONTENT_LANGU:
  3215. NEXT_CHAR();
  3216. switch (ch) {
  3217. case 'A':
  3218. if (last) {
  3219. return -1;
  3220. }
  3221. goto CONTENT_LANGUA;
  3222. case 'a':
  3223. if (last) {
  3224. return -1;
  3225. }
  3226. goto CONTENT_LANGUA;
  3227. default:
  3228. return -1;
  3229. }
  3230. CONTENT_LANGUA:
  3231. NEXT_CHAR();
  3232. switch (ch) {
  3233. case 'G':
  3234. if (last) {
  3235. return -1;
  3236. }
  3237. goto CONTENT_LANGUAG;
  3238. case 'g':
  3239. if (last) {
  3240. return -1;
  3241. }
  3242. goto CONTENT_LANGUAG;
  3243. default:
  3244. return -1;
  3245. }
  3246. CONTENT_LANGUAG:
  3247. NEXT_CHAR();
  3248. switch (ch) {
  3249. case 'E':
  3250. if (last) {
  3251. return 20;
  3252. }
  3253. goto CONTENT_LANGUAGE;
  3254. case 'e':
  3255. if (last) {
  3256. return 20;
  3257. }
  3258. goto CONTENT_LANGUAGE;
  3259. default:
  3260. return -1;
  3261. }
  3262. CONTENT_LE:
  3263. NEXT_CHAR();
  3264. switch (ch) {
  3265. case 'N':
  3266. if (last) {
  3267. return -1;
  3268. }
  3269. goto CONTENT_LEN;
  3270. case 'n':
  3271. if (last) {
  3272. return -1;
  3273. }
  3274. goto CONTENT_LEN;
  3275. default:
  3276. return -1;
  3277. }
  3278. CONTENT_LEN:
  3279. NEXT_CHAR();
  3280. switch (ch) {
  3281. case 'G':
  3282. if (last) {
  3283. return -1;
  3284. }
  3285. goto CONTENT_LENG;
  3286. case 'g':
  3287. if (last) {
  3288. return -1;
  3289. }
  3290. goto CONTENT_LENG;
  3291. default:
  3292. return -1;
  3293. }
  3294. CONTENT_LENG:
  3295. NEXT_CHAR();
  3296. switch (ch) {
  3297. case 'T':
  3298. if (last) {
  3299. return -1;
  3300. }
  3301. goto CONTENT_LENGT;
  3302. case 't':
  3303. if (last) {
  3304. return -1;
  3305. }
  3306. goto CONTENT_LENGT;
  3307. default:
  3308. return -1;
  3309. }
  3310. CONTENT_LENGT:
  3311. NEXT_CHAR();
  3312. switch (ch) {
  3313. case 'H':
  3314. if (last) {
  3315. return 21;
  3316. }
  3317. goto CONTENT_LENGTH;
  3318. case 'h':
  3319. if (last) {
  3320. return 21;
  3321. }
  3322. goto CONTENT_LENGTH;
  3323. default:
  3324. return -1;
  3325. }
  3326. CONTENT_LO:
  3327. NEXT_CHAR();
  3328. switch (ch) {
  3329. case 'C':
  3330. if (last) {
  3331. return -1;
  3332. }
  3333. goto CONTENT_LOC;
  3334. case 'c':
  3335. if (last) {
  3336. return -1;
  3337. }
  3338. goto CONTENT_LOC;
  3339. default:
  3340. return -1;
  3341. }
  3342. CONTENT_LOC:
  3343. NEXT_CHAR();
  3344. switch (ch) {
  3345. case 'A':
  3346. if (last) {
  3347. return -1;
  3348. }
  3349. goto CONTENT_LOCA;
  3350. case 'a':
  3351. if (last) {
  3352. return -1;
  3353. }
  3354. goto CONTENT_LOCA;
  3355. default:
  3356. return -1;
  3357. }
  3358. CONTENT_LOCA:
  3359. NEXT_CHAR();
  3360. switch (ch) {
  3361. case 'T':
  3362. if (last) {
  3363. return -1;
  3364. }
  3365. goto CONTENT_LOCAT;
  3366. case 't':
  3367. if (last) {
  3368. return -1;
  3369. }
  3370. goto CONTENT_LOCAT;
  3371. default:
  3372. return -1;
  3373. }
  3374. CONTENT_LOCAT:
  3375. NEXT_CHAR();
  3376. switch (ch) {
  3377. case 'I':
  3378. if (last) {
  3379. return -1;
  3380. }
  3381. goto CONTENT_LOCATI;
  3382. case 'i':
  3383. if (last) {
  3384. return -1;
  3385. }
  3386. goto CONTENT_LOCATI;
  3387. default:
  3388. return -1;
  3389. }
  3390. CONTENT_LOCATI:
  3391. NEXT_CHAR();
  3392. switch (ch) {
  3393. case 'O':
  3394. if (last) {
  3395. return -1;
  3396. }
  3397. goto CONTENT_LOCATIO;
  3398. case 'o':
  3399. if (last) {
  3400. return -1;
  3401. }
  3402. goto CONTENT_LOCATIO;
  3403. default:
  3404. return -1;
  3405. }
  3406. CONTENT_LOCATIO:
  3407. NEXT_CHAR();
  3408. switch (ch) {
  3409. case 'N':
  3410. if (last) {
  3411. return 22;
  3412. }
  3413. goto CONTENT_LOCATION;
  3414. case 'n':
  3415. if (last) {
  3416. return 22;
  3417. }
  3418. goto CONTENT_LOCATION;
  3419. default:
  3420. return -1;
  3421. }
  3422. CONTENT_M:
  3423. NEXT_CHAR();
  3424. switch (ch) {
  3425. case 'D':
  3426. if (last) {
  3427. return -1;
  3428. }
  3429. goto CONTENT_MD;
  3430. case 'd':
  3431. if (last) {
  3432. return -1;
  3433. }
  3434. goto CONTENT_MD;
  3435. default:
  3436. return -1;
  3437. }
  3438. CONTENT_MD:
  3439. NEXT_CHAR();
  3440. switch (ch) {
  3441. case '5':
  3442. if (last) {
  3443. return 23;
  3444. }
  3445. goto CONTENT_MD5;
  3446. default:
  3447. return -1;
  3448. }
  3449. CONTENT_R:
  3450. NEXT_CHAR();
  3451. switch (ch) {
  3452. case 'A':
  3453. if (last) {
  3454. return -1;
  3455. }
  3456. goto CONTENT_RA;
  3457. case 'a':
  3458. if (last) {
  3459. return -1;
  3460. }
  3461. goto CONTENT_RA;
  3462. default:
  3463. return -1;
  3464. }
  3465. CONTENT_RA:
  3466. NEXT_CHAR();
  3467. switch (ch) {
  3468. case 'N':
  3469. if (last) {
  3470. return -1;
  3471. }
  3472. goto CONTENT_RAN;
  3473. case 'n':
  3474. if (last) {
  3475. return -1;
  3476. }
  3477. goto CONTENT_RAN;
  3478. default:
  3479. return -1;
  3480. }
  3481. CONTENT_RAN:
  3482. NEXT_CHAR();
  3483. switch (ch) {
  3484. case 'G':
  3485. if (last) {
  3486. return -1;
  3487. }
  3488. goto CONTENT_RANG;
  3489. case 'g':
  3490. if (last) {
  3491. return -1;
  3492. }
  3493. goto CONTENT_RANG;
  3494. default:
  3495. return -1;
  3496. }
  3497. CONTENT_RANG:
  3498. NEXT_CHAR();
  3499. switch (ch) {
  3500. case 'E':
  3501. if (last) {
  3502. return 24;
  3503. }
  3504. goto CONTENT_RANGE;
  3505. case 'e':
  3506. if (last) {
  3507. return 24;
  3508. }
  3509. goto CONTENT_RANGE;
  3510. default:
  3511. return -1;
  3512. }
  3513. CONTENT_T:
  3514. NEXT_CHAR();
  3515. switch (ch) {
  3516. case 'R':
  3517. if (last) {
  3518. return -1;
  3519. }
  3520. goto CONTENT_TR;
  3521. case 'r':
  3522. if (last) {
  3523. return -1;
  3524. }
  3525. goto CONTENT_TR;
  3526. case 'Y':
  3527. if (last) {
  3528. return -1;
  3529. }
  3530. goto CONTENT_TY;
  3531. case 'y':
  3532. if (last) {
  3533. return -1;
  3534. }
  3535. goto CONTENT_TY;
  3536. default:
  3537. return -1;
  3538. }
  3539. CONTENT_TR:
  3540. NEXT_CHAR();
  3541. switch (ch) {
  3542. case 'A':
  3543. if (last) {
  3544. return -1;
  3545. }
  3546. goto CONTENT_TRA;
  3547. case 'a':
  3548. if (last) {
  3549. return -1;
  3550. }
  3551. goto CONTENT_TRA;
  3552. default:
  3553. return -1;
  3554. }
  3555. CONTENT_TRA:
  3556. NEXT_CHAR();
  3557. switch (ch) {
  3558. case 'N':
  3559. if (last) {
  3560. return -1;
  3561. }
  3562. goto CONTENT_TRAN;
  3563. case 'n':
  3564. if (last) {
  3565. return -1;
  3566. }
  3567. goto CONTENT_TRAN;
  3568. default:
  3569. return -1;
  3570. }
  3571. CONTENT_TRAN:
  3572. NEXT_CHAR();
  3573. switch (ch) {
  3574. case 'S':
  3575. if (last) {
  3576. return -1;
  3577. }
  3578. goto CONTENT_TRANS;
  3579. case 's':
  3580. if (last) {
  3581. return -1;
  3582. }
  3583. goto CONTENT_TRANS;
  3584. default:
  3585. return -1;
  3586. }
  3587. CONTENT_TRANS:
  3588. NEXT_CHAR();
  3589. switch (ch) {
  3590. case 'F':
  3591. if (last) {
  3592. return -1;
  3593. }
  3594. goto CONTENT_TRANSF;
  3595. case 'f':
  3596. if (last) {
  3597. return -1;
  3598. }
  3599. goto CONTENT_TRANSF;
  3600. default:
  3601. return -1;
  3602. }
  3603. CONTENT_TRANSF:
  3604. NEXT_CHAR();
  3605. switch (ch) {
  3606. case 'E':
  3607. if (last) {
  3608. return -1;
  3609. }
  3610. goto CONTENT_TRANSFE;
  3611. case 'e':
  3612. if (last) {
  3613. return -1;
  3614. }
  3615. goto CONTENT_TRANSFE;
  3616. default:
  3617. return -1;
  3618. }
  3619. CONTENT_TRANSFE:
  3620. NEXT_CHAR();
  3621. switch (ch) {
  3622. case 'R':
  3623. if (last) {
  3624. return -1;
  3625. }
  3626. goto CONTENT_TRANSFER;
  3627. case 'r':
  3628. if (last) {
  3629. return -1;
  3630. }
  3631. goto CONTENT_TRANSFER;
  3632. default:
  3633. return -1;
  3634. }
  3635. CONTENT_TRANSFER:
  3636. NEXT_CHAR();
  3637. switch (ch) {
  3638. case '-':
  3639. if (last) {
  3640. return -1;
  3641. }
  3642. goto CONTENT_TRANSFER_;
  3643. default:
  3644. return -1;
  3645. }
  3646. CONTENT_TRANSFER_:
  3647. NEXT_CHAR();
  3648. switch (ch) {
  3649. case 'E':
  3650. if (last) {
  3651. return -1;
  3652. }
  3653. goto CONTENT_TRANSFER_E;
  3654. case 'e':
  3655. if (last) {
  3656. return -1;
  3657. }
  3658. goto CONTENT_TRANSFER_E;
  3659. default:
  3660. return -1;
  3661. }
  3662. CONTENT_TRANSFER_E:
  3663. NEXT_CHAR();
  3664. switch (ch) {
  3665. case 'N':
  3666. if (last) {
  3667. return -1;
  3668. }
  3669. goto CONTENT_TRANSFER_EN;
  3670. case 'n':
  3671. if (last) {
  3672. return -1;
  3673. }
  3674. goto CONTENT_TRANSFER_EN;
  3675. default:
  3676. return -1;
  3677. }
  3678. CONTENT_TRANSFER_EN:
  3679. NEXT_CHAR();
  3680. switch (ch) {
  3681. case 'C':
  3682. if (last) {
  3683. return -1;
  3684. }
  3685. goto CONTENT_TRANSFER_ENC;
  3686. case 'c':
  3687. if (last) {
  3688. return -1;
  3689. }
  3690. goto CONTENT_TRANSFER_ENC;
  3691. default:
  3692. return -1;
  3693. }
  3694. CONTENT_TRANSFER_ENC:
  3695. NEXT_CHAR();
  3696. switch (ch) {
  3697. case 'O':
  3698. if (last) {
  3699. return -1;
  3700. }
  3701. goto CONTENT_TRANSFER_ENCO;
  3702. case 'o':
  3703. if (last) {
  3704. return -1;
  3705. }
  3706. goto CONTENT_TRANSFER_ENCO;
  3707. default:
  3708. return -1;
  3709. }
  3710. CONTENT_TRANSFER_ENCO:
  3711. NEXT_CHAR();
  3712. switch (ch) {
  3713. case 'D':
  3714. if (last) {
  3715. return -1;
  3716. }
  3717. goto CONTENT_TRANSFER_ENCOD;
  3718. case 'd':
  3719. if (last) {
  3720. return -1;
  3721. }
  3722. goto CONTENT_TRANSFER_ENCOD;
  3723. default:
  3724. return -1;
  3725. }
  3726. CONTENT_TRANSFER_ENCOD:
  3727. NEXT_CHAR();
  3728. switch (ch) {
  3729. case 'I':
  3730. if (last) {
  3731. return -1;
  3732. }
  3733. goto CONTENT_TRANSFER_ENCODI;
  3734. case 'i':
  3735. if (last) {
  3736. return -1;
  3737. }
  3738. goto CONTENT_TRANSFER_ENCODI;
  3739. default:
  3740. return -1;
  3741. }
  3742. CONTENT_TRANSFER_ENCODI:
  3743. NEXT_CHAR();
  3744. switch (ch) {
  3745. case 'N':
  3746. if (last) {
  3747. return -1;
  3748. }
  3749. goto CONTENT_TRANSFER_ENCODIN;
  3750. case 'n':
  3751. if (last) {
  3752. return -1;
  3753. }
  3754. goto CONTENT_TRANSFER_ENCODIN;
  3755. default:
  3756. return -1;
  3757. }
  3758. CONTENT_TRANSFER_ENCODIN:
  3759. NEXT_CHAR();
  3760. switch (ch) {
  3761. case 'G':
  3762. if (last) {
  3763. return 25;
  3764. }
  3765. goto CONTENT_TRANSFER_ENCODING;
  3766. case 'g':
  3767. if (last) {
  3768. return 25;
  3769. }
  3770. goto CONTENT_TRANSFER_ENCODING;
  3771. default:
  3772. return -1;
  3773. }
  3774. CONTENT_TY:
  3775. NEXT_CHAR();
  3776. switch (ch) {
  3777. case 'P':
  3778. if (last) {
  3779. return -1;
  3780. }
  3781. goto CONTENT_TYP;
  3782. case 'p':
  3783. if (last) {
  3784. return -1;
  3785. }
  3786. goto CONTENT_TYP;
  3787. default:
  3788. return -1;
  3789. }
  3790. CONTENT_TYP:
  3791. NEXT_CHAR();
  3792. switch (ch) {
  3793. case 'E':
  3794. if (last) {
  3795. return 26;
  3796. }
  3797. goto CONTENT_TYPE;
  3798. case 'e':
  3799. if (last) {
  3800. return 26;
  3801. }
  3802. goto CONTENT_TYPE;
  3803. default:
  3804. return -1;
  3805. }
  3806. COO:
  3807. NEXT_CHAR();
  3808. switch (ch) {
  3809. case 'K':
  3810. if (last) {
  3811. return -1;
  3812. }
  3813. goto COOK;
  3814. case 'k':
  3815. if (last) {
  3816. return -1;
  3817. }
  3818. goto COOK;
  3819. default:
  3820. return -1;
  3821. }
  3822. COOK:
  3823. NEXT_CHAR();
  3824. switch (ch) {
  3825. case 'I':
  3826. if (last) {
  3827. return -1;
  3828. }
  3829. goto COOKI;
  3830. case 'i':
  3831. if (last) {
  3832. return -1;
  3833. }
  3834. goto COOKI;
  3835. default:
  3836. return -1;
  3837. }
  3838. COOKI:
  3839. NEXT_CHAR();
  3840. switch (ch) {
  3841. case 'E':
  3842. if (last) {
  3843. return 27;
  3844. }
  3845. goto COOKIE;
  3846. case 'e':
  3847. if (last) {
  3848. return 27;
  3849. }
  3850. goto COOKIE;
  3851. default:
  3852. return -1;
  3853. }
  3854. D:
  3855. NEXT_CHAR();
  3856. switch (ch) {
  3857. case 'A':
  3858. if (last) {
  3859. return -1;
  3860. }
  3861. goto DA;
  3862. case 'a':
  3863. if (last) {
  3864. return -1;
  3865. }
  3866. goto DA;
  3867. case 'E':
  3868. if (last) {
  3869. return -1;
  3870. }
  3871. goto DE;
  3872. case 'e':
  3873. if (last) {
  3874. return -1;
  3875. }
  3876. goto DE;
  3877. case 'I':
  3878. if (last) {
  3879. return -1;
  3880. }
  3881. goto DI;
  3882. case 'i':
  3883. if (last) {
  3884. return -1;
  3885. }
  3886. goto DI;
  3887. default:
  3888. return -1;
  3889. }
  3890. DA:
  3891. NEXT_CHAR();
  3892. switch (ch) {
  3893. case 'T':
  3894. if (last) {
  3895. return -1;
  3896. }
  3897. goto DAT;
  3898. case 't':
  3899. if (last) {
  3900. return -1;
  3901. }
  3902. goto DAT;
  3903. default:
  3904. return -1;
  3905. }
  3906. DAT:
  3907. NEXT_CHAR();
  3908. switch (ch) {
  3909. case 'E':
  3910. if (last) {
  3911. return 28;
  3912. }
  3913. goto DATE;
  3914. case 'e':
  3915. if (last) {
  3916. return 28;
  3917. }
  3918. goto DATE;
  3919. default:
  3920. return -1;
  3921. }
  3922. DE:
  3923. NEXT_CHAR();
  3924. switch (ch) {
  3925. case 'S':
  3926. if (last) {
  3927. return -1;
  3928. }
  3929. goto DES;
  3930. case 's':
  3931. if (last) {
  3932. return -1;
  3933. }
  3934. goto DES;
  3935. default:
  3936. return -1;
  3937. }
  3938. DES:
  3939. NEXT_CHAR();
  3940. switch (ch) {
  3941. case 'T':
  3942. if (last) {
  3943. return -1;
  3944. }
  3945. goto DEST;
  3946. case 't':
  3947. if (last) {
  3948. return -1;
  3949. }
  3950. goto DEST;
  3951. default:
  3952. return -1;
  3953. }
  3954. DEST:
  3955. NEXT_CHAR();
  3956. switch (ch) {
  3957. case 'I':
  3958. if (last) {
  3959. return -1;
  3960. }
  3961. goto DESTI;
  3962. case 'i':
  3963. if (last) {
  3964. return -1;
  3965. }
  3966. goto DESTI;
  3967. default:
  3968. return -1;
  3969. }
  3970. DESTI:
  3971. NEXT_CHAR();
  3972. switch (ch) {
  3973. case 'N':
  3974. if (last) {
  3975. return -1;
  3976. }
  3977. goto DESTIN;
  3978. case 'n':
  3979. if (last) {
  3980. return -1;
  3981. }
  3982. goto DESTIN;
  3983. default:
  3984. return -1;
  3985. }
  3986. DESTIN:
  3987. NEXT_CHAR();
  3988. switch (ch) {
  3989. case 'A':
  3990. if (last) {
  3991. return -1;
  3992. }
  3993. goto DESTINA;
  3994. case 'a':
  3995. if (last) {
  3996. return -1;
  3997. }
  3998. goto DESTINA;
  3999. default:
  4000. return -1;
  4001. }
  4002. DESTINA:
  4003. NEXT_CHAR();
  4004. switch (ch) {
  4005. case 'T':
  4006. if (last) {
  4007. return -1;
  4008. }
  4009. goto DESTINAT;
  4010. case 't':
  4011. if (last) {
  4012. return -1;
  4013. }
  4014. goto DESTINAT;
  4015. default:
  4016. return -1;
  4017. }
  4018. DESTINAT:
  4019. NEXT_CHAR();
  4020. switch (ch) {
  4021. case 'I':
  4022. if (last) {
  4023. return -1;
  4024. }
  4025. goto DESTINATI;
  4026. case 'i':
  4027. if (last) {
  4028. return -1;
  4029. }
  4030. goto DESTINATI;
  4031. default:
  4032. return -1;
  4033. }
  4034. DESTINATI:
  4035. NEXT_CHAR();
  4036. switch (ch) {
  4037. case 'O':
  4038. if (last) {
  4039. return -1;
  4040. }
  4041. goto DESTINATIO;
  4042. case 'o':
  4043. if (last) {
  4044. return -1;
  4045. }
  4046. goto DESTINATIO;
  4047. default:
  4048. return -1;
  4049. }
  4050. DESTINATIO:
  4051. NEXT_CHAR();
  4052. switch (ch) {
  4053. case 'N':
  4054. if (last) {
  4055. return 29;
  4056. }
  4057. goto DESTINATION;
  4058. case 'n':
  4059. if (last) {
  4060. return 29;
  4061. }
  4062. goto DESTINATION;
  4063. default:
  4064. return -1;
  4065. }
  4066. DI:
  4067. NEXT_CHAR();
  4068. switch (ch) {
  4069. case 'G':
  4070. if (last) {
  4071. return -1;
  4072. }
  4073. goto DIG;
  4074. case 'g':
  4075. if (last) {
  4076. return -1;
  4077. }
  4078. goto DIG;
  4079. default:
  4080. return -1;
  4081. }
  4082. DIG:
  4083. NEXT_CHAR();
  4084. switch (ch) {
  4085. case 'E':
  4086. if (last) {
  4087. return -1;
  4088. }
  4089. goto DIGE;
  4090. case 'e':
  4091. if (last) {
  4092. return -1;
  4093. }
  4094. goto DIGE;
  4095. default:
  4096. return -1;
  4097. }
  4098. DIGE:
  4099. NEXT_CHAR();
  4100. switch (ch) {
  4101. case 'S':
  4102. if (last) {
  4103. return -1;
  4104. }
  4105. goto DIGES;
  4106. case 's':
  4107. if (last) {
  4108. return -1;
  4109. }
  4110. goto DIGES;
  4111. default:
  4112. return -1;
  4113. }
  4114. DIGES:
  4115. NEXT_CHAR();
  4116. switch (ch) {
  4117. case 'T':
  4118. if (last) {
  4119. return 30;
  4120. }
  4121. goto DIGEST;
  4122. case 't':
  4123. if (last) {
  4124. return 30;
  4125. }
  4126. goto DIGEST;
  4127. default:
  4128. return -1;
  4129. }
  4130. E:
  4131. NEXT_CHAR();
  4132. switch (ch) {
  4133. case 'T':
  4134. if (last) {
  4135. return -1;
  4136. }
  4137. goto ET;
  4138. case 't':
  4139. if (last) {
  4140. return -1;
  4141. }
  4142. goto ET;
  4143. case 'X':
  4144. if (last) {
  4145. return -1;
  4146. }
  4147. goto EX;
  4148. case 'x':
  4149. if (last) {
  4150. return -1;
  4151. }
  4152. goto EX;
  4153. default:
  4154. return -1;
  4155. }
  4156. ET:
  4157. NEXT_CHAR();
  4158. switch (ch) {
  4159. case 'A':
  4160. if (last) {
  4161. return -1;
  4162. }
  4163. goto ETA;
  4164. case 'a':
  4165. if (last) {
  4166. return -1;
  4167. }
  4168. goto ETA;
  4169. default:
  4170. return -1;
  4171. }
  4172. ETA:
  4173. NEXT_CHAR();
  4174. switch (ch) {
  4175. case 'G':
  4176. if (last) {
  4177. return 31;
  4178. }
  4179. goto ETAG;
  4180. case 'g':
  4181. if (last) {
  4182. return 31;
  4183. }
  4184. goto ETAG;
  4185. default:
  4186. return -1;
  4187. }
  4188. EX:
  4189. NEXT_CHAR();
  4190. switch (ch) {
  4191. case 'P':
  4192. if (last) {
  4193. return -1;
  4194. }
  4195. goto EXP;
  4196. case 'p':
  4197. if (last) {
  4198. return -1;
  4199. }
  4200. goto EXP;
  4201. default:
  4202. return -1;
  4203. }
  4204. EXP:
  4205. NEXT_CHAR();
  4206. switch (ch) {
  4207. case 'E':
  4208. if (last) {
  4209. return -1;
  4210. }
  4211. goto EXPE;
  4212. case 'e':
  4213. if (last) {
  4214. return -1;
  4215. }
  4216. goto EXPE;
  4217. case 'I':
  4218. if (last) {
  4219. return -1;
  4220. }
  4221. goto EXPI;
  4222. case 'i':
  4223. if (last) {
  4224. return -1;
  4225. }
  4226. goto EXPI;
  4227. default:
  4228. return -1;
  4229. }
  4230. EXPE:
  4231. NEXT_CHAR();
  4232. switch (ch) {
  4233. case 'C':
  4234. if (last) {
  4235. return -1;
  4236. }
  4237. goto EXPEC;
  4238. case 'c':
  4239. if (last) {
  4240. return -1;
  4241. }
  4242. goto EXPEC;
  4243. default:
  4244. return -1;
  4245. }
  4246. EXPEC:
  4247. NEXT_CHAR();
  4248. switch (ch) {
  4249. case 'T':
  4250. if (last) {
  4251. return 32;
  4252. }
  4253. goto EXPECT;
  4254. case 't':
  4255. if (last) {
  4256. return 32;
  4257. }
  4258. goto EXPECT;
  4259. default:
  4260. return -1;
  4261. }
  4262. EXPI:
  4263. NEXT_CHAR();
  4264. switch (ch) {
  4265. case 'R':
  4266. if (last) {
  4267. return -1;
  4268. }
  4269. goto EXPIR;
  4270. case 'r':
  4271. if (last) {
  4272. return -1;
  4273. }
  4274. goto EXPIR;
  4275. default:
  4276. return -1;
  4277. }
  4278. EXPIR:
  4279. NEXT_CHAR();
  4280. switch (ch) {
  4281. case 'E':
  4282. if (last) {
  4283. return -1;
  4284. }
  4285. goto EXPIRE;
  4286. case 'e':
  4287. if (last) {
  4288. return -1;
  4289. }
  4290. goto EXPIRE;
  4291. default:
  4292. return -1;
  4293. }
  4294. EXPIRE:
  4295. NEXT_CHAR();
  4296. switch (ch) {
  4297. case 'S':
  4298. if (last) {
  4299. return 33;
  4300. }
  4301. goto EXPIRES;
  4302. case 's':
  4303. if (last) {
  4304. return 33;
  4305. }
  4306. goto EXPIRES;
  4307. default:
  4308. return -1;
  4309. }
  4310. F:
  4311. NEXT_CHAR();
  4312. switch (ch) {
  4313. case 'O':
  4314. if (last) {
  4315. return -1;
  4316. }
  4317. goto FO;
  4318. case 'o':
  4319. if (last) {
  4320. return -1;
  4321. }
  4322. goto FO;
  4323. case 'R':
  4324. if (last) {
  4325. return -1;
  4326. }
  4327. goto FR;
  4328. case 'r':
  4329. if (last) {
  4330. return -1;
  4331. }
  4332. goto FR;
  4333. default:
  4334. return -1;
  4335. }
  4336. FO:
  4337. NEXT_CHAR();
  4338. switch (ch) {
  4339. case 'R':
  4340. if (last) {
  4341. return -1;
  4342. }
  4343. goto FOR;
  4344. case 'r':
  4345. if (last) {
  4346. return -1;
  4347. }
  4348. goto FOR;
  4349. default:
  4350. return -1;
  4351. }
  4352. FOR:
  4353. NEXT_CHAR();
  4354. switch (ch) {
  4355. case 'W':
  4356. if (last) {
  4357. return -1;
  4358. }
  4359. goto FORW;
  4360. case 'w':
  4361. if (last) {
  4362. return -1;
  4363. }
  4364. goto FORW;
  4365. default:
  4366. return -1;
  4367. }
  4368. FORW:
  4369. NEXT_CHAR();
  4370. switch (ch) {
  4371. case 'A':
  4372. if (last) {
  4373. return -1;
  4374. }
  4375. goto FORWA;
  4376. case 'a':
  4377. if (last) {
  4378. return -1;
  4379. }
  4380. goto FORWA;
  4381. default:
  4382. return -1;
  4383. }
  4384. FORWA:
  4385. NEXT_CHAR();
  4386. switch (ch) {
  4387. case 'R':
  4388. if (last) {
  4389. return -1;
  4390. }
  4391. goto FORWAR;
  4392. case 'r':
  4393. if (last) {
  4394. return -1;
  4395. }
  4396. goto FORWAR;
  4397. default:
  4398. return -1;
  4399. }
  4400. FORWAR:
  4401. NEXT_CHAR();
  4402. switch (ch) {
  4403. case 'D':
  4404. if (last) {
  4405. return -1;
  4406. }
  4407. goto FORWARD;
  4408. case 'd':
  4409. if (last) {
  4410. return -1;
  4411. }
  4412. goto FORWARD;
  4413. default:
  4414. return -1;
  4415. }
  4416. FORWARD:
  4417. NEXT_CHAR();
  4418. switch (ch) {
  4419. case 'E':
  4420. if (last) {
  4421. return -1;
  4422. }
  4423. goto FORWARDE;
  4424. case 'e':
  4425. if (last) {
  4426. return -1;
  4427. }
  4428. goto FORWARDE;
  4429. default:
  4430. return -1;
  4431. }
  4432. FORWARDE:
  4433. NEXT_CHAR();
  4434. switch (ch) {
  4435. case 'D':
  4436. if (last) {
  4437. return 34;
  4438. }
  4439. goto FORWARDED;
  4440. case 'd':
  4441. if (last) {
  4442. return 34;
  4443. }
  4444. goto FORWARDED;
  4445. default:
  4446. return -1;
  4447. }
  4448. FR:
  4449. NEXT_CHAR();
  4450. switch (ch) {
  4451. case 'O':
  4452. if (last) {
  4453. return -1;
  4454. }
  4455. goto FRO;
  4456. case 'o':
  4457. if (last) {
  4458. return -1;
  4459. }
  4460. goto FRO;
  4461. default:
  4462. return -1;
  4463. }
  4464. FRO:
  4465. NEXT_CHAR();
  4466. switch (ch) {
  4467. case 'M':
  4468. if (last) {
  4469. return 35;
  4470. }
  4471. goto FROM;
  4472. case 'm':
  4473. if (last) {
  4474. return 35;
  4475. }
  4476. goto FROM;
  4477. default:
  4478. return -1;
  4479. }
  4480. H:
  4481. NEXT_CHAR();
  4482. switch (ch) {
  4483. case 'O':
  4484. if (last) {
  4485. return -1;
  4486. }
  4487. goto HO;
  4488. case 'o':
  4489. if (last) {
  4490. return -1;
  4491. }
  4492. goto HO;
  4493. default:
  4494. return -1;
  4495. }
  4496. HO:
  4497. NEXT_CHAR();
  4498. switch (ch) {
  4499. case 'S':
  4500. if (last) {
  4501. return -1;
  4502. }
  4503. goto HOS;
  4504. case 's':
  4505. if (last) {
  4506. return -1;
  4507. }
  4508. goto HOS;
  4509. default:
  4510. return -1;
  4511. }
  4512. HOS:
  4513. NEXT_CHAR();
  4514. switch (ch) {
  4515. case 'T':
  4516. if (last) {
  4517. return 36;
  4518. }
  4519. goto HOST;
  4520. case 't':
  4521. if (last) {
  4522. return 36;
  4523. }
  4524. goto HOST;
  4525. default:
  4526. return -1;
  4527. }
  4528. I:
  4529. NEXT_CHAR();
  4530. switch (ch) {
  4531. case 'F':
  4532. if (last) {
  4533. return -1;
  4534. }
  4535. goto IF;
  4536. case 'f':
  4537. if (last) {
  4538. return -1;
  4539. }
  4540. goto IF;
  4541. default:
  4542. return -1;
  4543. }
  4544. IF:
  4545. NEXT_CHAR();
  4546. switch (ch) {
  4547. case '-':
  4548. if (last) {
  4549. return -1;
  4550. }
  4551. goto IF_;
  4552. default:
  4553. return -1;
  4554. }
  4555. IF_:
  4556. NEXT_CHAR();
  4557. switch (ch) {
  4558. case 'M':
  4559. if (last) {
  4560. return -1;
  4561. }
  4562. goto IF_M;
  4563. case 'm':
  4564. if (last) {
  4565. return -1;
  4566. }
  4567. goto IF_M;
  4568. case 'N':
  4569. if (last) {
  4570. return -1;
  4571. }
  4572. goto IF_N;
  4573. case 'n':
  4574. if (last) {
  4575. return -1;
  4576. }
  4577. goto IF_N;
  4578. case 'R':
  4579. if (last) {
  4580. return -1;
  4581. }
  4582. goto IF_R;
  4583. case 'r':
  4584. if (last) {
  4585. return -1;
  4586. }
  4587. goto IF_R;
  4588. case 'U':
  4589. if (last) {
  4590. return -1;
  4591. }
  4592. goto IF_U;
  4593. case 'u':
  4594. if (last) {
  4595. return -1;
  4596. }
  4597. goto IF_U;
  4598. default:
  4599. return -1;
  4600. }
  4601. IF_M:
  4602. NEXT_CHAR();
  4603. switch (ch) {
  4604. case 'A':
  4605. if (last) {
  4606. return -1;
  4607. }
  4608. goto IF_MA;
  4609. case 'a':
  4610. if (last) {
  4611. return -1;
  4612. }
  4613. goto IF_MA;
  4614. case 'O':
  4615. if (last) {
  4616. return -1;
  4617. }
  4618. goto IF_MO;
  4619. case 'o':
  4620. if (last) {
  4621. return -1;
  4622. }
  4623. goto IF_MO;
  4624. default:
  4625. return -1;
  4626. }
  4627. IF_MA:
  4628. NEXT_CHAR();
  4629. switch (ch) {
  4630. case 'T':
  4631. if (last) {
  4632. return -1;
  4633. }
  4634. goto IF_MAT;
  4635. case 't':
  4636. if (last) {
  4637. return -1;
  4638. }
  4639. goto IF_MAT;
  4640. default:
  4641. return -1;
  4642. }
  4643. IF_MAT:
  4644. NEXT_CHAR();
  4645. switch (ch) {
  4646. case 'C':
  4647. if (last) {
  4648. return -1;
  4649. }
  4650. goto IF_MATC;
  4651. case 'c':
  4652. if (last) {
  4653. return -1;
  4654. }
  4655. goto IF_MATC;
  4656. default:
  4657. return -1;
  4658. }
  4659. IF_MATC:
  4660. NEXT_CHAR();
  4661. switch (ch) {
  4662. case 'H':
  4663. if (last) {
  4664. return 37;
  4665. }
  4666. goto IF_MATCH;
  4667. case 'h':
  4668. if (last) {
  4669. return 37;
  4670. }
  4671. goto IF_MATCH;
  4672. default:
  4673. return -1;
  4674. }
  4675. IF_MO:
  4676. NEXT_CHAR();
  4677. switch (ch) {
  4678. case 'D':
  4679. if (last) {
  4680. return -1;
  4681. }
  4682. goto IF_MOD;
  4683. case 'd':
  4684. if (last) {
  4685. return -1;
  4686. }
  4687. goto IF_MOD;
  4688. default:
  4689. return -1;
  4690. }
  4691. IF_MOD:
  4692. NEXT_CHAR();
  4693. switch (ch) {
  4694. case 'I':
  4695. if (last) {
  4696. return -1;
  4697. }
  4698. goto IF_MODI;
  4699. case 'i':
  4700. if (last) {
  4701. return -1;
  4702. }
  4703. goto IF_MODI;
  4704. default:
  4705. return -1;
  4706. }
  4707. IF_MODI:
  4708. NEXT_CHAR();
  4709. switch (ch) {
  4710. case 'F':
  4711. if (last) {
  4712. return -1;
  4713. }
  4714. goto IF_MODIF;
  4715. case 'f':
  4716. if (last) {
  4717. return -1;
  4718. }
  4719. goto IF_MODIF;
  4720. default:
  4721. return -1;
  4722. }
  4723. IF_MODIF:
  4724. NEXT_CHAR();
  4725. switch (ch) {
  4726. case 'I':
  4727. if (last) {
  4728. return -1;
  4729. }
  4730. goto IF_MODIFI;
  4731. case 'i':
  4732. if (last) {
  4733. return -1;
  4734. }
  4735. goto IF_MODIFI;
  4736. default:
  4737. return -1;
  4738. }
  4739. IF_MODIFI:
  4740. NEXT_CHAR();
  4741. switch (ch) {
  4742. case 'E':
  4743. if (last) {
  4744. return -1;
  4745. }
  4746. goto IF_MODIFIE;
  4747. case 'e':
  4748. if (last) {
  4749. return -1;
  4750. }
  4751. goto IF_MODIFIE;
  4752. default:
  4753. return -1;
  4754. }
  4755. IF_MODIFIE:
  4756. NEXT_CHAR();
  4757. switch (ch) {
  4758. case 'D':
  4759. if (last) {
  4760. return -1;
  4761. }
  4762. goto IF_MODIFIED;
  4763. case 'd':
  4764. if (last) {
  4765. return -1;
  4766. }
  4767. goto IF_MODIFIED;
  4768. default:
  4769. return -1;
  4770. }
  4771. IF_MODIFIED:
  4772. NEXT_CHAR();
  4773. switch (ch) {
  4774. case '-':
  4775. if (last) {
  4776. return -1;
  4777. }
  4778. goto IF_MODIFIED_;
  4779. default:
  4780. return -1;
  4781. }
  4782. IF_MODIFIED_:
  4783. NEXT_CHAR();
  4784. switch (ch) {
  4785. case 'S':
  4786. if (last) {
  4787. return -1;
  4788. }
  4789. goto IF_MODIFIED_S;
  4790. case 's':
  4791. if (last) {
  4792. return -1;
  4793. }
  4794. goto IF_MODIFIED_S;
  4795. default:
  4796. return -1;
  4797. }
  4798. IF_MODIFIED_S:
  4799. NEXT_CHAR();
  4800. switch (ch) {
  4801. case 'I':
  4802. if (last) {
  4803. return -1;
  4804. }
  4805. goto IF_MODIFIED_SI;
  4806. case 'i':
  4807. if (last) {
  4808. return -1;
  4809. }
  4810. goto IF_MODIFIED_SI;
  4811. default:
  4812. return -1;
  4813. }
  4814. IF_MODIFIED_SI:
  4815. NEXT_CHAR();
  4816. switch (ch) {
  4817. case 'N':
  4818. if (last) {
  4819. return -1;
  4820. }
  4821. goto IF_MODIFIED_SIN;
  4822. case 'n':
  4823. if (last) {
  4824. return -1;
  4825. }
  4826. goto IF_MODIFIED_SIN;
  4827. default:
  4828. return -1;
  4829. }
  4830. IF_MODIFIED_SIN:
  4831. NEXT_CHAR();
  4832. switch (ch) {
  4833. case 'C':
  4834. if (last) {
  4835. return -1;
  4836. }
  4837. goto IF_MODIFIED_SINC;
  4838. case 'c':
  4839. if (last) {
  4840. return -1;
  4841. }
  4842. goto IF_MODIFIED_SINC;
  4843. default:
  4844. return -1;
  4845. }
  4846. IF_MODIFIED_SINC:
  4847. NEXT_CHAR();
  4848. switch (ch) {
  4849. case 'E':
  4850. if (last) {
  4851. return 38;
  4852. }
  4853. goto IF_MODIFIED_SINCE;
  4854. case 'e':
  4855. if (last) {
  4856. return 38;
  4857. }
  4858. goto IF_MODIFIED_SINCE;
  4859. default:
  4860. return -1;
  4861. }
  4862. IF_N:
  4863. NEXT_CHAR();
  4864. switch (ch) {
  4865. case 'O':
  4866. if (last) {
  4867. return -1;
  4868. }
  4869. goto IF_NO;
  4870. case 'o':
  4871. if (last) {
  4872. return -1;
  4873. }
  4874. goto IF_NO;
  4875. default:
  4876. return -1;
  4877. }
  4878. IF_NO:
  4879. NEXT_CHAR();
  4880. switch (ch) {
  4881. case 'N':
  4882. if (last) {
  4883. return -1;
  4884. }
  4885. goto IF_NON;
  4886. case 'n':
  4887. if (last) {
  4888. return -1;
  4889. }
  4890. goto IF_NON;
  4891. default:
  4892. return -1;
  4893. }
  4894. IF_NON:
  4895. NEXT_CHAR();
  4896. switch (ch) {
  4897. case 'E':
  4898. if (last) {
  4899. return -1;
  4900. }
  4901. goto IF_NONE;
  4902. case 'e':
  4903. if (last) {
  4904. return -1;
  4905. }
  4906. goto IF_NONE;
  4907. default:
  4908. return -1;
  4909. }
  4910. IF_NONE:
  4911. NEXT_CHAR();
  4912. switch (ch) {
  4913. case '-':
  4914. if (last) {
  4915. return -1;
  4916. }
  4917. goto IF_NONE_;
  4918. default:
  4919. return -1;
  4920. }
  4921. IF_NONE_:
  4922. NEXT_CHAR();
  4923. switch (ch) {
  4924. case 'M':
  4925. if (last) {
  4926. return -1;
  4927. }
  4928. goto IF_NONE_M;
  4929. case 'm':
  4930. if (last) {
  4931. return -1;
  4932. }
  4933. goto IF_NONE_M;
  4934. default:
  4935. return -1;
  4936. }
  4937. IF_NONE_M:
  4938. NEXT_CHAR();
  4939. switch (ch) {
  4940. case 'A':
  4941. if (last) {
  4942. return -1;
  4943. }
  4944. goto IF_NONE_MA;
  4945. case 'a':
  4946. if (last) {
  4947. return -1;
  4948. }
  4949. goto IF_NONE_MA;
  4950. default:
  4951. return -1;
  4952. }
  4953. IF_NONE_MA:
  4954. NEXT_CHAR();
  4955. switch (ch) {
  4956. case 'T':
  4957. if (last) {
  4958. return -1;
  4959. }
  4960. goto IF_NONE_MAT;
  4961. case 't':
  4962. if (last) {
  4963. return -1;
  4964. }
  4965. goto IF_NONE_MAT;
  4966. default:
  4967. return -1;
  4968. }
  4969. IF_NONE_MAT:
  4970. NEXT_CHAR();
  4971. switch (ch) {
  4972. case 'C':
  4973. if (last) {
  4974. return -1;
  4975. }
  4976. goto IF_NONE_MATC;
  4977. case 'c':
  4978. if (last) {
  4979. return -1;
  4980. }
  4981. goto IF_NONE_MATC;
  4982. default:
  4983. return -1;
  4984. }
  4985. IF_NONE_MATC:
  4986. NEXT_CHAR();
  4987. switch (ch) {
  4988. case 'H':
  4989. if (last) {
  4990. return 39;
  4991. }
  4992. goto IF_NONE_MATCH;
  4993. case 'h':
  4994. if (last) {
  4995. return 39;
  4996. }
  4997. goto IF_NONE_MATCH;
  4998. default:
  4999. return -1;
  5000. }
  5001. IF_R:
  5002. NEXT_CHAR();
  5003. switch (ch) {
  5004. case 'A':
  5005. if (last) {
  5006. return -1;
  5007. }
  5008. goto IF_RA;
  5009. case 'a':
  5010. if (last) {
  5011. return -1;
  5012. }
  5013. goto IF_RA;
  5014. default:
  5015. return -1;
  5016. }
  5017. IF_RA:
  5018. NEXT_CHAR();
  5019. switch (ch) {
  5020. case 'N':
  5021. if (last) {
  5022. return -1;
  5023. }
  5024. goto IF_RAN;
  5025. case 'n':
  5026. if (last) {
  5027. return -1;
  5028. }
  5029. goto IF_RAN;
  5030. default:
  5031. return -1;
  5032. }
  5033. IF_RAN:
  5034. NEXT_CHAR();
  5035. switch (ch) {
  5036. case 'G':
  5037. if (last) {
  5038. return -1;
  5039. }
  5040. goto IF_RANG;
  5041. case 'g':
  5042. if (last) {
  5043. return -1;
  5044. }
  5045. goto IF_RANG;
  5046. default:
  5047. return -1;
  5048. }
  5049. IF_RANG:
  5050. NEXT_CHAR();
  5051. switch (ch) {
  5052. case 'E':
  5053. if (last) {
  5054. return 40;
  5055. }
  5056. goto IF_RANGE;
  5057. case 'e':
  5058. if (last) {
  5059. return 40;
  5060. }
  5061. goto IF_RANGE;
  5062. default:
  5063. return -1;
  5064. }
  5065. IF_U:
  5066. NEXT_CHAR();
  5067. switch (ch) {
  5068. case 'N':
  5069. if (last) {
  5070. return -1;
  5071. }
  5072. goto IF_UN;
  5073. case 'n':
  5074. if (last) {
  5075. return -1;
  5076. }
  5077. goto IF_UN;
  5078. default:
  5079. return -1;
  5080. }
  5081. IF_UN:
  5082. NEXT_CHAR();
  5083. switch (ch) {
  5084. case 'M':
  5085. if (last) {
  5086. return -1;
  5087. }
  5088. goto IF_UNM;
  5089. case 'm':
  5090. if (last) {
  5091. return -1;
  5092. }
  5093. goto IF_UNM;
  5094. default:
  5095. return -1;
  5096. }
  5097. IF_UNM:
  5098. NEXT_CHAR();
  5099. switch (ch) {
  5100. case 'O':
  5101. if (last) {
  5102. return -1;
  5103. }
  5104. goto IF_UNMO;
  5105. case 'o':
  5106. if (last) {
  5107. return -1;
  5108. }
  5109. goto IF_UNMO;
  5110. default:
  5111. return -1;
  5112. }
  5113. IF_UNMO:
  5114. NEXT_CHAR();
  5115. switch (ch) {
  5116. case 'D':
  5117. if (last) {
  5118. return -1;
  5119. }
  5120. goto IF_UNMOD;
  5121. case 'd':
  5122. if (last) {
  5123. return -1;
  5124. }
  5125. goto IF_UNMOD;
  5126. default:
  5127. return -1;
  5128. }
  5129. IF_UNMOD:
  5130. NEXT_CHAR();
  5131. switch (ch) {
  5132. case 'I':
  5133. if (last) {
  5134. return -1;
  5135. }
  5136. goto IF_UNMODI;
  5137. case 'i':
  5138. if (last) {
  5139. return -1;
  5140. }
  5141. goto IF_UNMODI;
  5142. default:
  5143. return -1;
  5144. }
  5145. IF_UNMODI:
  5146. NEXT_CHAR();
  5147. switch (ch) {
  5148. case 'F':
  5149. if (last) {
  5150. return -1;
  5151. }
  5152. goto IF_UNMODIF;
  5153. case 'f':
  5154. if (last) {
  5155. return -1;
  5156. }
  5157. goto IF_UNMODIF;
  5158. default:
  5159. return -1;
  5160. }
  5161. IF_UNMODIF:
  5162. NEXT_CHAR();
  5163. switch (ch) {
  5164. case 'I':
  5165. if (last) {
  5166. return -1;
  5167. }
  5168. goto IF_UNMODIFI;
  5169. case 'i':
  5170. if (last) {
  5171. return -1;
  5172. }
  5173. goto IF_UNMODIFI;
  5174. default:
  5175. return -1;
  5176. }
  5177. IF_UNMODIFI:
  5178. NEXT_CHAR();
  5179. switch (ch) {
  5180. case 'E':
  5181. if (last) {
  5182. return -1;
  5183. }
  5184. goto IF_UNMODIFIE;
  5185. case 'e':
  5186. if (last) {
  5187. return -1;
  5188. }
  5189. goto IF_UNMODIFIE;
  5190. default:
  5191. return -1;
  5192. }
  5193. IF_UNMODIFIE:
  5194. NEXT_CHAR();
  5195. switch (ch) {
  5196. case 'D':
  5197. if (last) {
  5198. return -1;
  5199. }
  5200. goto IF_UNMODIFIED;
  5201. case 'd':
  5202. if (last) {
  5203. return -1;
  5204. }
  5205. goto IF_UNMODIFIED;
  5206. default:
  5207. return -1;
  5208. }
  5209. IF_UNMODIFIED:
  5210. NEXT_CHAR();
  5211. switch (ch) {
  5212. case '-':
  5213. if (last) {
  5214. return -1;
  5215. }
  5216. goto IF_UNMODIFIED_;
  5217. default:
  5218. return -1;
  5219. }
  5220. IF_UNMODIFIED_:
  5221. NEXT_CHAR();
  5222. switch (ch) {
  5223. case 'S':
  5224. if (last) {
  5225. return -1;
  5226. }
  5227. goto IF_UNMODIFIED_S;
  5228. case 's':
  5229. if (last) {
  5230. return -1;
  5231. }
  5232. goto IF_UNMODIFIED_S;
  5233. default:
  5234. return -1;
  5235. }
  5236. IF_UNMODIFIED_S:
  5237. NEXT_CHAR();
  5238. switch (ch) {
  5239. case 'I':
  5240. if (last) {
  5241. return -1;
  5242. }
  5243. goto IF_UNMODIFIED_SI;
  5244. case 'i':
  5245. if (last) {
  5246. return -1;
  5247. }
  5248. goto IF_UNMODIFIED_SI;
  5249. default:
  5250. return -1;
  5251. }
  5252. IF_UNMODIFIED_SI:
  5253. NEXT_CHAR();
  5254. switch (ch) {
  5255. case 'N':
  5256. if (last) {
  5257. return -1;
  5258. }
  5259. goto IF_UNMODIFIED_SIN;
  5260. case 'n':
  5261. if (last) {
  5262. return -1;
  5263. }
  5264. goto IF_UNMODIFIED_SIN;
  5265. default:
  5266. return -1;
  5267. }
  5268. IF_UNMODIFIED_SIN:
  5269. NEXT_CHAR();
  5270. switch (ch) {
  5271. case 'C':
  5272. if (last) {
  5273. return -1;
  5274. }
  5275. goto IF_UNMODIFIED_SINC;
  5276. case 'c':
  5277. if (last) {
  5278. return -1;
  5279. }
  5280. goto IF_UNMODIFIED_SINC;
  5281. default:
  5282. return -1;
  5283. }
  5284. IF_UNMODIFIED_SINC:
  5285. NEXT_CHAR();
  5286. switch (ch) {
  5287. case 'E':
  5288. if (last) {
  5289. return 41;
  5290. }
  5291. goto IF_UNMODIFIED_SINCE;
  5292. case 'e':
  5293. if (last) {
  5294. return 41;
  5295. }
  5296. goto IF_UNMODIFIED_SINCE;
  5297. default:
  5298. return -1;
  5299. }
  5300. K:
  5301. NEXT_CHAR();
  5302. switch (ch) {
  5303. case 'E':
  5304. if (last) {
  5305. return -1;
  5306. }
  5307. goto KE;
  5308. case 'e':
  5309. if (last) {
  5310. return -1;
  5311. }
  5312. goto KE;
  5313. default:
  5314. return -1;
  5315. }
  5316. KE:
  5317. NEXT_CHAR();
  5318. switch (ch) {
  5319. case 'E':
  5320. if (last) {
  5321. return -1;
  5322. }
  5323. goto KEE;
  5324. case 'e':
  5325. if (last) {
  5326. return -1;
  5327. }
  5328. goto KEE;
  5329. default:
  5330. return -1;
  5331. }
  5332. KEE:
  5333. NEXT_CHAR();
  5334. switch (ch) {
  5335. case 'P':
  5336. if (last) {
  5337. return -1;
  5338. }
  5339. goto KEEP;
  5340. case 'p':
  5341. if (last) {
  5342. return -1;
  5343. }
  5344. goto KEEP;
  5345. default:
  5346. return -1;
  5347. }
  5348. KEEP:
  5349. NEXT_CHAR();
  5350. switch (ch) {
  5351. case '-':
  5352. if (last) {
  5353. return -1;
  5354. }
  5355. goto KEEP_;
  5356. default:
  5357. return -1;
  5358. }
  5359. KEEP_:
  5360. NEXT_CHAR();
  5361. switch (ch) {
  5362. case 'A':
  5363. if (last) {
  5364. return -1;
  5365. }
  5366. goto KEEP_A;
  5367. case 'a':
  5368. if (last) {
  5369. return -1;
  5370. }
  5371. goto KEEP_A;
  5372. default:
  5373. return -1;
  5374. }
  5375. KEEP_A:
  5376. NEXT_CHAR();
  5377. switch (ch) {
  5378. case 'L':
  5379. if (last) {
  5380. return -1;
  5381. }
  5382. goto KEEP_AL;
  5383. case 'l':
  5384. if (last) {
  5385. return -1;
  5386. }
  5387. goto KEEP_AL;
  5388. default:
  5389. return -1;
  5390. }
  5391. KEEP_AL:
  5392. NEXT_CHAR();
  5393. switch (ch) {
  5394. case 'I':
  5395. if (last) {
  5396. return -1;
  5397. }
  5398. goto KEEP_ALI;
  5399. case 'i':
  5400. if (last) {
  5401. return -1;
  5402. }
  5403. goto KEEP_ALI;
  5404. default:
  5405. return -1;
  5406. }
  5407. KEEP_ALI:
  5408. NEXT_CHAR();
  5409. switch (ch) {
  5410. case 'V':
  5411. if (last) {
  5412. return -1;
  5413. }
  5414. goto KEEP_ALIV;
  5415. case 'v':
  5416. if (last) {
  5417. return -1;
  5418. }
  5419. goto KEEP_ALIV;
  5420. default:
  5421. return -1;
  5422. }
  5423. KEEP_ALIV:
  5424. NEXT_CHAR();
  5425. switch (ch) {
  5426. case 'E':
  5427. if (last) {
  5428. return 42;
  5429. }
  5430. goto KEEP_ALIVE;
  5431. case 'e':
  5432. if (last) {
  5433. return 42;
  5434. }
  5435. goto KEEP_ALIVE;
  5436. default:
  5437. return -1;
  5438. }
  5439. L:
  5440. NEXT_CHAR();
  5441. switch (ch) {
  5442. case 'A':
  5443. if (last) {
  5444. return -1;
  5445. }
  5446. goto LA;
  5447. case 'a':
  5448. if (last) {
  5449. return -1;
  5450. }
  5451. goto LA;
  5452. case 'I':
  5453. if (last) {
  5454. return -1;
  5455. }
  5456. goto LI;
  5457. case 'i':
  5458. if (last) {
  5459. return -1;
  5460. }
  5461. goto LI;
  5462. case 'O':
  5463. if (last) {
  5464. return -1;
  5465. }
  5466. goto LO;
  5467. case 'o':
  5468. if (last) {
  5469. return -1;
  5470. }
  5471. goto LO;
  5472. default:
  5473. return -1;
  5474. }
  5475. LA:
  5476. NEXT_CHAR();
  5477. switch (ch) {
  5478. case 'S':
  5479. if (last) {
  5480. return -1;
  5481. }
  5482. goto LAS;
  5483. case 's':
  5484. if (last) {
  5485. return -1;
  5486. }
  5487. goto LAS;
  5488. default:
  5489. return -1;
  5490. }
  5491. LAS:
  5492. NEXT_CHAR();
  5493. switch (ch) {
  5494. case 'T':
  5495. if (last) {
  5496. return -1;
  5497. }
  5498. goto LAST;
  5499. case 't':
  5500. if (last) {
  5501. return -1;
  5502. }
  5503. goto LAST;
  5504. default:
  5505. return -1;
  5506. }
  5507. LAST:
  5508. NEXT_CHAR();
  5509. switch (ch) {
  5510. case '-':
  5511. if (last) {
  5512. return -1;
  5513. }
  5514. goto LAST_;
  5515. default:
  5516. return -1;
  5517. }
  5518. LAST_:
  5519. NEXT_CHAR();
  5520. switch (ch) {
  5521. case 'E':
  5522. if (last) {
  5523. return -1;
  5524. }
  5525. goto LAST_E;
  5526. case 'e':
  5527. if (last) {
  5528. return -1;
  5529. }
  5530. goto LAST_E;
  5531. case 'M':
  5532. if (last) {
  5533. return -1;
  5534. }
  5535. goto LAST_M;
  5536. case 'm':
  5537. if (last) {
  5538. return -1;
  5539. }
  5540. goto LAST_M;
  5541. default:
  5542. return -1;
  5543. }
  5544. LAST_E:
  5545. NEXT_CHAR();
  5546. switch (ch) {
  5547. case 'V':
  5548. if (last) {
  5549. return -1;
  5550. }
  5551. goto LAST_EV;
  5552. case 'v':
  5553. if (last) {
  5554. return -1;
  5555. }
  5556. goto LAST_EV;
  5557. default:
  5558. return -1;
  5559. }
  5560. LAST_EV:
  5561. NEXT_CHAR();
  5562. switch (ch) {
  5563. case 'E':
  5564. if (last) {
  5565. return -1;
  5566. }
  5567. goto LAST_EVE;
  5568. case 'e':
  5569. if (last) {
  5570. return -1;
  5571. }
  5572. goto LAST_EVE;
  5573. default:
  5574. return -1;
  5575. }
  5576. LAST_EVE:
  5577. NEXT_CHAR();
  5578. switch (ch) {
  5579. case 'N':
  5580. if (last) {
  5581. return -1;
  5582. }
  5583. goto LAST_EVEN;
  5584. case 'n':
  5585. if (last) {
  5586. return -1;
  5587. }
  5588. goto LAST_EVEN;
  5589. default:
  5590. return -1;
  5591. }
  5592. LAST_EVEN:
  5593. NEXT_CHAR();
  5594. switch (ch) {
  5595. case 'T':
  5596. if (last) {
  5597. return -1;
  5598. }
  5599. goto LAST_EVENT;
  5600. case 't':
  5601. if (last) {
  5602. return -1;
  5603. }
  5604. goto LAST_EVENT;
  5605. default:
  5606. return -1;
  5607. }
  5608. LAST_EVENT:
  5609. NEXT_CHAR();
  5610. switch (ch) {
  5611. case '-':
  5612. if (last) {
  5613. return -1;
  5614. }
  5615. goto LAST_EVENT_;
  5616. default:
  5617. return -1;
  5618. }
  5619. LAST_EVENT_:
  5620. NEXT_CHAR();
  5621. switch (ch) {
  5622. case 'I':
  5623. if (last) {
  5624. return -1;
  5625. }
  5626. goto LAST_EVENT_I;
  5627. case 'i':
  5628. if (last) {
  5629. return -1;
  5630. }
  5631. goto LAST_EVENT_I;
  5632. default:
  5633. return -1;
  5634. }
  5635. LAST_EVENT_I:
  5636. NEXT_CHAR();
  5637. switch (ch) {
  5638. case 'D':
  5639. if (last) {
  5640. return 43;
  5641. }
  5642. goto LAST_EVENT_ID;
  5643. case 'd':
  5644. if (last) {
  5645. return 43;
  5646. }
  5647. goto LAST_EVENT_ID;
  5648. default:
  5649. return -1;
  5650. }
  5651. LAST_M:
  5652. NEXT_CHAR();
  5653. switch (ch) {
  5654. case 'O':
  5655. if (last) {
  5656. return -1;
  5657. }
  5658. goto LAST_MO;
  5659. case 'o':
  5660. if (last) {
  5661. return -1;
  5662. }
  5663. goto LAST_MO;
  5664. default:
  5665. return -1;
  5666. }
  5667. LAST_MO:
  5668. NEXT_CHAR();
  5669. switch (ch) {
  5670. case 'D':
  5671. if (last) {
  5672. return -1;
  5673. }
  5674. goto LAST_MOD;
  5675. case 'd':
  5676. if (last) {
  5677. return -1;
  5678. }
  5679. goto LAST_MOD;
  5680. default:
  5681. return -1;
  5682. }
  5683. LAST_MOD:
  5684. NEXT_CHAR();
  5685. switch (ch) {
  5686. case 'I':
  5687. if (last) {
  5688. return -1;
  5689. }
  5690. goto LAST_MODI;
  5691. case 'i':
  5692. if (last) {
  5693. return -1;
  5694. }
  5695. goto LAST_MODI;
  5696. default:
  5697. return -1;
  5698. }
  5699. LAST_MODI:
  5700. NEXT_CHAR();
  5701. switch (ch) {
  5702. case 'F':
  5703. if (last) {
  5704. return -1;
  5705. }
  5706. goto LAST_MODIF;
  5707. case 'f':
  5708. if (last) {
  5709. return -1;
  5710. }
  5711. goto LAST_MODIF;
  5712. default:
  5713. return -1;
  5714. }
  5715. LAST_MODIF:
  5716. NEXT_CHAR();
  5717. switch (ch) {
  5718. case 'I':
  5719. if (last) {
  5720. return -1;
  5721. }
  5722. goto LAST_MODIFI;
  5723. case 'i':
  5724. if (last) {
  5725. return -1;
  5726. }
  5727. goto LAST_MODIFI;
  5728. default:
  5729. return -1;
  5730. }
  5731. LAST_MODIFI:
  5732. NEXT_CHAR();
  5733. switch (ch) {
  5734. case 'E':
  5735. if (last) {
  5736. return -1;
  5737. }
  5738. goto LAST_MODIFIE;
  5739. case 'e':
  5740. if (last) {
  5741. return -1;
  5742. }
  5743. goto LAST_MODIFIE;
  5744. default:
  5745. return -1;
  5746. }
  5747. LAST_MODIFIE:
  5748. NEXT_CHAR();
  5749. switch (ch) {
  5750. case 'D':
  5751. if (last) {
  5752. return 44;
  5753. }
  5754. goto LAST_MODIFIED;
  5755. case 'd':
  5756. if (last) {
  5757. return 44;
  5758. }
  5759. goto LAST_MODIFIED;
  5760. default:
  5761. return -1;
  5762. }
  5763. LI:
  5764. NEXT_CHAR();
  5765. switch (ch) {
  5766. case 'N':
  5767. if (last) {
  5768. return -1;
  5769. }
  5770. goto LIN;
  5771. case 'n':
  5772. if (last) {
  5773. return -1;
  5774. }
  5775. goto LIN;
  5776. default:
  5777. return -1;
  5778. }
  5779. LIN:
  5780. NEXT_CHAR();
  5781. switch (ch) {
  5782. case 'K':
  5783. if (last) {
  5784. return 45;
  5785. }
  5786. goto LINK;
  5787. case 'k':
  5788. if (last) {
  5789. return 45;
  5790. }
  5791. goto LINK;
  5792. default:
  5793. return -1;
  5794. }
  5795. LO:
  5796. NEXT_CHAR();
  5797. switch (ch) {
  5798. case 'C':
  5799. if (last) {
  5800. return -1;
  5801. }
  5802. goto LOC;
  5803. case 'c':
  5804. if (last) {
  5805. return -1;
  5806. }
  5807. goto LOC;
  5808. default:
  5809. return -1;
  5810. }
  5811. LOC:
  5812. NEXT_CHAR();
  5813. switch (ch) {
  5814. case 'A':
  5815. if (last) {
  5816. return -1;
  5817. }
  5818. goto LOCA;
  5819. case 'a':
  5820. if (last) {
  5821. return -1;
  5822. }
  5823. goto LOCA;
  5824. default:
  5825. return -1;
  5826. }
  5827. LOCA:
  5828. NEXT_CHAR();
  5829. switch (ch) {
  5830. case 'T':
  5831. if (last) {
  5832. return -1;
  5833. }
  5834. goto LOCAT;
  5835. case 't':
  5836. if (last) {
  5837. return -1;
  5838. }
  5839. goto LOCAT;
  5840. default:
  5841. return -1;
  5842. }
  5843. LOCAT:
  5844. NEXT_CHAR();
  5845. switch (ch) {
  5846. case 'I':
  5847. if (last) {
  5848. return -1;
  5849. }
  5850. goto LOCATI;
  5851. case 'i':
  5852. if (last) {
  5853. return -1;
  5854. }
  5855. goto LOCATI;
  5856. default:
  5857. return -1;
  5858. }
  5859. LOCATI:
  5860. NEXT_CHAR();
  5861. switch (ch) {
  5862. case 'O':
  5863. if (last) {
  5864. return -1;
  5865. }
  5866. goto LOCATIO;
  5867. case 'o':
  5868. if (last) {
  5869. return -1;
  5870. }
  5871. goto LOCATIO;
  5872. default:
  5873. return -1;
  5874. }
  5875. LOCATIO:
  5876. NEXT_CHAR();
  5877. switch (ch) {
  5878. case 'N':
  5879. if (last) {
  5880. return 46;
  5881. }
  5882. goto LOCATION;
  5883. case 'n':
  5884. if (last) {
  5885. return 46;
  5886. }
  5887. goto LOCATION;
  5888. default:
  5889. return -1;
  5890. }
  5891. M:
  5892. NEXT_CHAR();
  5893. switch (ch) {
  5894. case 'A':
  5895. if (last) {
  5896. return -1;
  5897. }
  5898. goto MA;
  5899. case 'a':
  5900. if (last) {
  5901. return -1;
  5902. }
  5903. goto MA;
  5904. default:
  5905. return -1;
  5906. }
  5907. MA:
  5908. NEXT_CHAR();
  5909. switch (ch) {
  5910. case 'X':
  5911. if (last) {
  5912. return -1;
  5913. }
  5914. goto MAX;
  5915. case 'x':
  5916. if (last) {
  5917. return -1;
  5918. }
  5919. goto MAX;
  5920. default:
  5921. return -1;
  5922. }
  5923. MAX:
  5924. NEXT_CHAR();
  5925. switch (ch) {
  5926. case '-':
  5927. if (last) {
  5928. return -1;
  5929. }
  5930. goto MAX_;
  5931. default:
  5932. return -1;
  5933. }
  5934. MAX_:
  5935. NEXT_CHAR();
  5936. switch (ch) {
  5937. case 'F':
  5938. if (last) {
  5939. return -1;
  5940. }
  5941. goto MAX_F;
  5942. case 'f':
  5943. if (last) {
  5944. return -1;
  5945. }
  5946. goto MAX_F;
  5947. default:
  5948. return -1;
  5949. }
  5950. MAX_F:
  5951. NEXT_CHAR();
  5952. switch (ch) {
  5953. case 'O':
  5954. if (last) {
  5955. return -1;
  5956. }
  5957. goto MAX_FO;
  5958. case 'o':
  5959. if (last) {
  5960. return -1;
  5961. }
  5962. goto MAX_FO;
  5963. default:
  5964. return -1;
  5965. }
  5966. MAX_FO:
  5967. NEXT_CHAR();
  5968. switch (ch) {
  5969. case 'R':
  5970. if (last) {
  5971. return -1;
  5972. }
  5973. goto MAX_FOR;
  5974. case 'r':
  5975. if (last) {
  5976. return -1;
  5977. }
  5978. goto MAX_FOR;
  5979. default:
  5980. return -1;
  5981. }
  5982. MAX_FOR:
  5983. NEXT_CHAR();
  5984. switch (ch) {
  5985. case 'W':
  5986. if (last) {
  5987. return -1;
  5988. }
  5989. goto MAX_FORW;
  5990. case 'w':
  5991. if (last) {
  5992. return -1;
  5993. }
  5994. goto MAX_FORW;
  5995. default:
  5996. return -1;
  5997. }
  5998. MAX_FORW:
  5999. NEXT_CHAR();
  6000. switch (ch) {
  6001. case 'A':
  6002. if (last) {
  6003. return -1;
  6004. }
  6005. goto MAX_FORWA;
  6006. case 'a':
  6007. if (last) {
  6008. return -1;
  6009. }
  6010. goto MAX_FORWA;
  6011. default:
  6012. return -1;
  6013. }
  6014. MAX_FORWA:
  6015. NEXT_CHAR();
  6016. switch (ch) {
  6017. case 'R':
  6018. if (last) {
  6019. return -1;
  6020. }
  6021. goto MAX_FORWAR;
  6022. case 'r':
  6023. if (last) {
  6024. return -1;
  6025. }
  6026. goto MAX_FORWAR;
  6027. default:
  6028. return -1;
  6029. }
  6030. MAX_FORWAR:
  6031. NEXT_CHAR();
  6032. switch (ch) {
  6033. case 'D':
  6034. if (last) {
  6035. return -1;
  6036. }
  6037. goto MAX_FORWARD;
  6038. case 'd':
  6039. if (last) {
  6040. return -1;
  6041. }
  6042. goto MAX_FORWARD;
  6043. default:
  6044. return -1;
  6045. }
  6046. MAX_FORWARD:
  6047. NEXT_CHAR();
  6048. switch (ch) {
  6049. case 'S':
  6050. if (last) {
  6051. return 47;
  6052. }
  6053. goto MAX_FORWARDS;
  6054. case 's':
  6055. if (last) {
  6056. return 47;
  6057. }
  6058. goto MAX_FORWARDS;
  6059. default:
  6060. return -1;
  6061. }
  6062. O:
  6063. NEXT_CHAR();
  6064. switch (ch) {
  6065. case 'R':
  6066. if (last) {
  6067. return -1;
  6068. }
  6069. goto OR;
  6070. case 'r':
  6071. if (last) {
  6072. return -1;
  6073. }
  6074. goto OR;
  6075. default:
  6076. return -1;
  6077. }
  6078. OR:
  6079. NEXT_CHAR();
  6080. switch (ch) {
  6081. case 'I':
  6082. if (last) {
  6083. return -1;
  6084. }
  6085. goto ORI;
  6086. case 'i':
  6087. if (last) {
  6088. return -1;
  6089. }
  6090. goto ORI;
  6091. default:
  6092. return -1;
  6093. }
  6094. ORI:
  6095. NEXT_CHAR();
  6096. switch (ch) {
  6097. case 'G':
  6098. if (last) {
  6099. return -1;
  6100. }
  6101. goto ORIG;
  6102. case 'g':
  6103. if (last) {
  6104. return -1;
  6105. }
  6106. goto ORIG;
  6107. default:
  6108. return -1;
  6109. }
  6110. ORIG:
  6111. NEXT_CHAR();
  6112. switch (ch) {
  6113. case 'I':
  6114. if (last) {
  6115. return -1;
  6116. }
  6117. goto ORIGI;
  6118. case 'i':
  6119. if (last) {
  6120. return -1;
  6121. }
  6122. goto ORIGI;
  6123. default:
  6124. return -1;
  6125. }
  6126. ORIGI:
  6127. NEXT_CHAR();
  6128. switch (ch) {
  6129. case 'N':
  6130. if (last) {
  6131. return 48;
  6132. }
  6133. goto ORIGIN;
  6134. case 'n':
  6135. if (last) {
  6136. return 48;
  6137. }
  6138. goto ORIGIN;
  6139. default:
  6140. return -1;
  6141. }
  6142. P:
  6143. NEXT_CHAR();
  6144. switch (ch) {
  6145. case 'R':
  6146. if (last) {
  6147. return -1;
  6148. }
  6149. goto PR;
  6150. case 'r':
  6151. if (last) {
  6152. return -1;
  6153. }
  6154. goto PR;
  6155. default:
  6156. return -1;
  6157. }
  6158. PR:
  6159. NEXT_CHAR();
  6160. switch (ch) {
  6161. case 'A':
  6162. if (last) {
  6163. return -1;
  6164. }
  6165. goto PRA;
  6166. case 'a':
  6167. if (last) {
  6168. return -1;
  6169. }
  6170. goto PRA;
  6171. case 'O':
  6172. if (last) {
  6173. return -1;
  6174. }
  6175. goto PRO;
  6176. case 'o':
  6177. if (last) {
  6178. return -1;
  6179. }
  6180. goto PRO;
  6181. default:
  6182. return -1;
  6183. }
  6184. PRA:
  6185. NEXT_CHAR();
  6186. switch (ch) {
  6187. case 'G':
  6188. if (last) {
  6189. return -1;
  6190. }
  6191. goto PRAG;
  6192. case 'g':
  6193. if (last) {
  6194. return -1;
  6195. }
  6196. goto PRAG;
  6197. default:
  6198. return -1;
  6199. }
  6200. PRAG:
  6201. NEXT_CHAR();
  6202. switch (ch) {
  6203. case 'M':
  6204. if (last) {
  6205. return -1;
  6206. }
  6207. goto PRAGM;
  6208. case 'm':
  6209. if (last) {
  6210. return -1;
  6211. }
  6212. goto PRAGM;
  6213. default:
  6214. return -1;
  6215. }
  6216. PRAGM:
  6217. NEXT_CHAR();
  6218. switch (ch) {
  6219. case 'A':
  6220. if (last) {
  6221. return 49;
  6222. }
  6223. goto PRAGMA;
  6224. case 'a':
  6225. if (last) {
  6226. return 49;
  6227. }
  6228. goto PRAGMA;
  6229. default:
  6230. return -1;
  6231. }
  6232. PRO:
  6233. NEXT_CHAR();
  6234. switch (ch) {
  6235. case 'X':
  6236. if (last) {
  6237. return -1;
  6238. }
  6239. goto PROX;
  6240. case 'x':
  6241. if (last) {
  6242. return -1;
  6243. }
  6244. goto PROX;
  6245. default:
  6246. return -1;
  6247. }
  6248. PROX:
  6249. NEXT_CHAR();
  6250. switch (ch) {
  6251. case 'Y':
  6252. if (last) {
  6253. return -1;
  6254. }
  6255. goto PROXY;
  6256. case 'y':
  6257. if (last) {
  6258. return -1;
  6259. }
  6260. goto PROXY;
  6261. default:
  6262. return -1;
  6263. }
  6264. PROXY:
  6265. NEXT_CHAR();
  6266. switch (ch) {
  6267. case '_':
  6268. if (last) {
  6269. return -1;
  6270. }
  6271. goto PROXY_;
  6272. case '-':
  6273. if (last) {
  6274. return -1;
  6275. }
  6276. goto PROXY_;
  6277. default:
  6278. return -1;
  6279. }
  6280. PROXY_:
  6281. NEXT_CHAR();
  6282. switch (ch) {
  6283. case 'A':
  6284. if (last) {
  6285. return -1;
  6286. }
  6287. goto PROXY_A;
  6288. case 'a':
  6289. if (last) {
  6290. return -1;
  6291. }
  6292. goto PROXY_A;
  6293. default:
  6294. return -1;
  6295. }
  6296. PROXY_A:
  6297. NEXT_CHAR();
  6298. switch (ch) {
  6299. case 'U':
  6300. if (last) {
  6301. return -1;
  6302. }
  6303. goto PROXY_AU;
  6304. case 'u':
  6305. if (last) {
  6306. return -1;
  6307. }
  6308. goto PROXY_AU;
  6309. default:
  6310. return -1;
  6311. }
  6312. PROXY_AU:
  6313. NEXT_CHAR();
  6314. switch (ch) {
  6315. case 'T':
  6316. if (last) {
  6317. return -1;
  6318. }
  6319. goto PROXY_AUT;
  6320. case 't':
  6321. if (last) {
  6322. return -1;
  6323. }
  6324. goto PROXY_AUT;
  6325. default:
  6326. return -1;
  6327. }
  6328. PROXY_AUT:
  6329. NEXT_CHAR();
  6330. switch (ch) {
  6331. case 'H':
  6332. if (last) {
  6333. return -1;
  6334. }
  6335. goto PROXY_AUTH;
  6336. case 'h':
  6337. if (last) {
  6338. return -1;
  6339. }
  6340. goto PROXY_AUTH;
  6341. default:
  6342. return -1;
  6343. }
  6344. PROXY_AUTH:
  6345. NEXT_CHAR();
  6346. switch (ch) {
  6347. case 'E':
  6348. if (last) {
  6349. return -1;
  6350. }
  6351. goto PROXY_AUTHE;
  6352. case 'e':
  6353. if (last) {
  6354. return -1;
  6355. }
  6356. goto PROXY_AUTHE;
  6357. default:
  6358. return -1;
  6359. }
  6360. PROXY_AUTHE:
  6361. NEXT_CHAR();
  6362. switch (ch) {
  6363. case 'N':
  6364. if (last) {
  6365. return -1;
  6366. }
  6367. goto PROXY_AUTHEN;
  6368. case 'n':
  6369. if (last) {
  6370. return -1;
  6371. }
  6372. goto PROXY_AUTHEN;
  6373. default:
  6374. return -1;
  6375. }
  6376. PROXY_AUTHEN:
  6377. NEXT_CHAR();
  6378. switch (ch) {
  6379. case 'T':
  6380. if (last) {
  6381. return -1;
  6382. }
  6383. goto PROXY_AUTHENT;
  6384. case 't':
  6385. if (last) {
  6386. return -1;
  6387. }
  6388. goto PROXY_AUTHENT;
  6389. default:
  6390. return -1;
  6391. }
  6392. PROXY_AUTHENT:
  6393. NEXT_CHAR();
  6394. switch (ch) {
  6395. case 'I':
  6396. if (last) {
  6397. return -1;
  6398. }
  6399. goto PROXY_AUTHENTI;
  6400. case 'i':
  6401. if (last) {
  6402. return -1;
  6403. }
  6404. goto PROXY_AUTHENTI;
  6405. default:
  6406. return -1;
  6407. }
  6408. PROXY_AUTHENTI:
  6409. NEXT_CHAR();
  6410. switch (ch) {
  6411. case 'C':
  6412. if (last) {
  6413. return -1;
  6414. }
  6415. goto PROXY_AUTHENTIC;
  6416. case 'c':
  6417. if (last) {
  6418. return -1;
  6419. }
  6420. goto PROXY_AUTHENTIC;
  6421. default:
  6422. return -1;
  6423. }
  6424. PROXY_AUTHENTIC:
  6425. NEXT_CHAR();
  6426. switch (ch) {
  6427. case 'A':
  6428. if (last) {
  6429. return -1;
  6430. }
  6431. goto PROXY_AUTHENTICA;
  6432. case 'a':
  6433. if (last) {
  6434. return -1;
  6435. }
  6436. goto PROXY_AUTHENTICA;
  6437. default:
  6438. return -1;
  6439. }
  6440. PROXY_AUTHENTICA:
  6441. NEXT_CHAR();
  6442. switch (ch) {
  6443. case 'T':
  6444. if (last) {
  6445. return -1;
  6446. }
  6447. goto PROXY_AUTHENTICAT;
  6448. case 't':
  6449. if (last) {
  6450. return -1;
  6451. }
  6452. goto PROXY_AUTHENTICAT;
  6453. default:
  6454. return -1;
  6455. }
  6456. PROXY_AUTHENTICAT:
  6457. NEXT_CHAR();
  6458. switch (ch) {
  6459. case 'E':
  6460. if (last) {
  6461. return 50;
  6462. }
  6463. goto PROXY_AUTHENTICATE;
  6464. case 'e':
  6465. if (last) {
  6466. return 50;
  6467. }
  6468. goto PROXY_AUTHENTICATE;
  6469. default:
  6470. return -1;
  6471. }
  6472. R:
  6473. NEXT_CHAR();
  6474. switch (ch) {
  6475. case 'A':
  6476. if (last) {
  6477. return -1;
  6478. }
  6479. goto RA;
  6480. case 'a':
  6481. if (last) {
  6482. return -1;
  6483. }
  6484. goto RA;
  6485. case 'E':
  6486. if (last) {
  6487. return -1;
  6488. }
  6489. goto RE;
  6490. case 'e':
  6491. if (last) {
  6492. return -1;
  6493. }
  6494. goto RE;
  6495. default:
  6496. return -1;
  6497. }
  6498. RA:
  6499. NEXT_CHAR();
  6500. switch (ch) {
  6501. case 'N':
  6502. if (last) {
  6503. return -1;
  6504. }
  6505. goto RAN;
  6506. case 'n':
  6507. if (last) {
  6508. return -1;
  6509. }
  6510. goto RAN;
  6511. default:
  6512. return -1;
  6513. }
  6514. RAN:
  6515. NEXT_CHAR();
  6516. switch (ch) {
  6517. case 'G':
  6518. if (last) {
  6519. return -1;
  6520. }
  6521. goto RANG;
  6522. case 'g':
  6523. if (last) {
  6524. return -1;
  6525. }
  6526. goto RANG;
  6527. default:
  6528. return -1;
  6529. }
  6530. RANG:
  6531. NEXT_CHAR();
  6532. switch (ch) {
  6533. case 'E':
  6534. if (last) {
  6535. return 52;
  6536. }
  6537. goto RANGE;
  6538. case 'e':
  6539. if (last) {
  6540. return 52;
  6541. }
  6542. goto RANGE;
  6543. default:
  6544. return -1;
  6545. }
  6546. RE:
  6547. NEXT_CHAR();
  6548. switch (ch) {
  6549. case 'F':
  6550. if (last) {
  6551. return -1;
  6552. }
  6553. goto REF;
  6554. case 'f':
  6555. if (last) {
  6556. return -1;
  6557. }
  6558. goto REF;
  6559. case 'T':
  6560. if (last) {
  6561. return -1;
  6562. }
  6563. goto RET;
  6564. case 't':
  6565. if (last) {
  6566. return -1;
  6567. }
  6568. goto RET;
  6569. default:
  6570. return -1;
  6571. }
  6572. REF:
  6573. NEXT_CHAR();
  6574. switch (ch) {
  6575. case 'E':
  6576. if (last) {
  6577. return -1;
  6578. }
  6579. goto REFE;
  6580. case 'e':
  6581. if (last) {
  6582. return -1;
  6583. }
  6584. goto REFE;
  6585. default:
  6586. return -1;
  6587. }
  6588. REFE:
  6589. NEXT_CHAR();
  6590. switch (ch) {
  6591. case 'R':
  6592. if (last) {
  6593. return -1;
  6594. }
  6595. goto REFER;
  6596. case 'r':
  6597. if (last) {
  6598. return -1;
  6599. }
  6600. goto REFER;
  6601. default:
  6602. return -1;
  6603. }
  6604. REFER:
  6605. NEXT_CHAR();
  6606. switch (ch) {
  6607. case 'E':
  6608. if (last) {
  6609. return -1;
  6610. }
  6611. goto REFERE;
  6612. case 'e':
  6613. if (last) {
  6614. return -1;
  6615. }
  6616. goto REFERE;
  6617. default:
  6618. return -1;
  6619. }
  6620. REFERE:
  6621. NEXT_CHAR();
  6622. switch (ch) {
  6623. case 'R':
  6624. if (last) {
  6625. return 53;
  6626. }
  6627. goto REFERER;
  6628. case 'r':
  6629. if (last) {
  6630. return 53;
  6631. }
  6632. goto REFERER;
  6633. default:
  6634. return -1;
  6635. }
  6636. RET:
  6637. NEXT_CHAR();
  6638. switch (ch) {
  6639. case 'R':
  6640. if (last) {
  6641. return -1;
  6642. }
  6643. goto RETR;
  6644. case 'r':
  6645. if (last) {
  6646. return -1;
  6647. }
  6648. goto RETR;
  6649. default:
  6650. return -1;
  6651. }
  6652. RETR:
  6653. NEXT_CHAR();
  6654. switch (ch) {
  6655. case 'Y':
  6656. if (last) {
  6657. return -1;
  6658. }
  6659. goto RETRY;
  6660. case 'y':
  6661. if (last) {
  6662. return -1;
  6663. }
  6664. goto RETRY;
  6665. default:
  6666. return -1;
  6667. }
  6668. RETRY:
  6669. NEXT_CHAR();
  6670. switch (ch) {
  6671. case '-':
  6672. if (last) {
  6673. return -1;
  6674. }
  6675. goto RETRY_;
  6676. default:
  6677. return -1;
  6678. }
  6679. RETRY_:
  6680. NEXT_CHAR();
  6681. switch (ch) {
  6682. case 'A':
  6683. if (last) {
  6684. return -1;
  6685. }
  6686. goto RETRY_A;
  6687. case 'a':
  6688. if (last) {
  6689. return -1;
  6690. }
  6691. goto RETRY_A;
  6692. default:
  6693. return -1;
  6694. }
  6695. RETRY_A:
  6696. NEXT_CHAR();
  6697. switch (ch) {
  6698. case 'F':
  6699. if (last) {
  6700. return -1;
  6701. }
  6702. goto RETRY_AF;
  6703. case 'f':
  6704. if (last) {
  6705. return -1;
  6706. }
  6707. goto RETRY_AF;
  6708. default:
  6709. return -1;
  6710. }
  6711. RETRY_AF:
  6712. NEXT_CHAR();
  6713. switch (ch) {
  6714. case 'T':
  6715. if (last) {
  6716. return -1;
  6717. }
  6718. goto RETRY_AFT;
  6719. case 't':
  6720. if (last) {
  6721. return -1;
  6722. }
  6723. goto RETRY_AFT;
  6724. default:
  6725. return -1;
  6726. }
  6727. RETRY_AFT:
  6728. NEXT_CHAR();
  6729. switch (ch) {
  6730. case 'E':
  6731. if (last) {
  6732. return -1;
  6733. }
  6734. goto RETRY_AFTE;
  6735. case 'e':
  6736. if (last) {
  6737. return -1;
  6738. }
  6739. goto RETRY_AFTE;
  6740. default:
  6741. return -1;
  6742. }
  6743. RETRY_AFTE:
  6744. NEXT_CHAR();
  6745. switch (ch) {
  6746. case 'R':
  6747. if (last) {
  6748. return 54;
  6749. }
  6750. goto RETRY_AFTER;
  6751. case 'r':
  6752. if (last) {
  6753. return 54;
  6754. }
  6755. goto RETRY_AFTER;
  6756. default:
  6757. return -1;
  6758. }
  6759. S:
  6760. NEXT_CHAR();
  6761. switch (ch) {
  6762. case 'E':
  6763. if (last) {
  6764. return -1;
  6765. }
  6766. goto SE;
  6767. case 'e':
  6768. if (last) {
  6769. return -1;
  6770. }
  6771. goto SE;
  6772. default:
  6773. return -1;
  6774. }
  6775. SE:
  6776. NEXT_CHAR();
  6777. switch (ch) {
  6778. case 'C':
  6779. if (last) {
  6780. return -1;
  6781. }
  6782. goto SEC;
  6783. case 'c':
  6784. if (last) {
  6785. return -1;
  6786. }
  6787. goto SEC;
  6788. case 'R':
  6789. if (last) {
  6790. return -1;
  6791. }
  6792. goto SER;
  6793. case 'r':
  6794. if (last) {
  6795. return -1;
  6796. }
  6797. goto SER;
  6798. case 'T':
  6799. if (last) {
  6800. return -1;
  6801. }
  6802. goto SET;
  6803. case 't':
  6804. if (last) {
  6805. return -1;
  6806. }
  6807. goto SET;
  6808. default:
  6809. return -1;
  6810. }
  6811. SEC:
  6812. NEXT_CHAR();
  6813. switch (ch) {
  6814. case '-':
  6815. if (last) {
  6816. return -1;
  6817. }
  6818. goto SEC_;
  6819. default:
  6820. return -1;
  6821. }
  6822. SEC_:
  6823. NEXT_CHAR();
  6824. switch (ch) {
  6825. case 'W':
  6826. if (last) {
  6827. return -1;
  6828. }
  6829. goto SEC_W;
  6830. case 'w':
  6831. if (last) {
  6832. return -1;
  6833. }
  6834. goto SEC_W;
  6835. default:
  6836. return -1;
  6837. }
  6838. SEC_W:
  6839. NEXT_CHAR();
  6840. switch (ch) {
  6841. case 'E':
  6842. if (last) {
  6843. return -1;
  6844. }
  6845. goto SEC_WE;
  6846. case 'e':
  6847. if (last) {
  6848. return -1;
  6849. }
  6850. goto SEC_WE;
  6851. default:
  6852. return -1;
  6853. }
  6854. SEC_WE:
  6855. NEXT_CHAR();
  6856. switch (ch) {
  6857. case 'B':
  6858. if (last) {
  6859. return -1;
  6860. }
  6861. goto SEC_WEB;
  6862. case 'b':
  6863. if (last) {
  6864. return -1;
  6865. }
  6866. goto SEC_WEB;
  6867. default:
  6868. return -1;
  6869. }
  6870. SEC_WEB:
  6871. NEXT_CHAR();
  6872. switch (ch) {
  6873. case 'S':
  6874. if (last) {
  6875. return -1;
  6876. }
  6877. goto SEC_WEBS;
  6878. case 's':
  6879. if (last) {
  6880. return -1;
  6881. }
  6882. goto SEC_WEBS;
  6883. default:
  6884. return -1;
  6885. }
  6886. SEC_WEBS:
  6887. NEXT_CHAR();
  6888. switch (ch) {
  6889. case 'O':
  6890. if (last) {
  6891. return -1;
  6892. }
  6893. goto SEC_WEBSO;
  6894. case 'o':
  6895. if (last) {
  6896. return -1;
  6897. }
  6898. goto SEC_WEBSO;
  6899. default:
  6900. return -1;
  6901. }
  6902. SEC_WEBSO:
  6903. NEXT_CHAR();
  6904. switch (ch) {
  6905. case 'C':
  6906. if (last) {
  6907. return -1;
  6908. }
  6909. goto SEC_WEBSOC;
  6910. case 'c':
  6911. if (last) {
  6912. return -1;
  6913. }
  6914. goto SEC_WEBSOC;
  6915. default:
  6916. return -1;
  6917. }
  6918. SEC_WEBSOC:
  6919. NEXT_CHAR();
  6920. switch (ch) {
  6921. case 'K':
  6922. if (last) {
  6923. return -1;
  6924. }
  6925. goto SEC_WEBSOCK;
  6926. case 'k':
  6927. if (last) {
  6928. return -1;
  6929. }
  6930. goto SEC_WEBSOCK;
  6931. default:
  6932. return -1;
  6933. }
  6934. SEC_WEBSOCK:
  6935. NEXT_CHAR();
  6936. switch (ch) {
  6937. case 'E':
  6938. if (last) {
  6939. return -1;
  6940. }
  6941. goto SEC_WEBSOCKE;
  6942. case 'e':
  6943. if (last) {
  6944. return -1;
  6945. }
  6946. goto SEC_WEBSOCKE;
  6947. default:
  6948. return -1;
  6949. }
  6950. SEC_WEBSOCKE:
  6951. NEXT_CHAR();
  6952. switch (ch) {
  6953. case 'T':
  6954. if (last) {
  6955. return -1;
  6956. }
  6957. goto SEC_WEBSOCKET;
  6958. case 't':
  6959. if (last) {
  6960. return -1;
  6961. }
  6962. goto SEC_WEBSOCKET;
  6963. default:
  6964. return -1;
  6965. }
  6966. SEC_WEBSOCKET:
  6967. NEXT_CHAR();
  6968. switch (ch) {
  6969. case '-':
  6970. if (last) {
  6971. return -1;
  6972. }
  6973. goto SEC_WEBSOCKET_;
  6974. default:
  6975. return -1;
  6976. }
  6977. SEC_WEBSOCKET_:
  6978. NEXT_CHAR();
  6979. switch (ch) {
  6980. case 'A':
  6981. if (last) {
  6982. return -1;
  6983. }
  6984. goto SEC_WEBSOCKET_A;
  6985. case 'a':
  6986. if (last) {
  6987. return -1;
  6988. }
  6989. goto SEC_WEBSOCKET_A;
  6990. case 'E':
  6991. if (last) {
  6992. return -1;
  6993. }
  6994. goto SEC_WEBSOCKET_E;
  6995. case 'e':
  6996. if (last) {
  6997. return -1;
  6998. }
  6999. goto SEC_WEBSOCKET_E;
  7000. case 'K':
  7001. if (last) {
  7002. return -1;
  7003. }
  7004. goto SEC_WEBSOCKET_K;
  7005. case 'k':
  7006. if (last) {
  7007. return -1;
  7008. }
  7009. goto SEC_WEBSOCKET_K;
  7010. case 'P':
  7011. if (last) {
  7012. return -1;
  7013. }
  7014. goto SEC_WEBSOCKET_P;
  7015. case 'p':
  7016. if (last) {
  7017. return -1;
  7018. }
  7019. goto SEC_WEBSOCKET_P;
  7020. case 'V':
  7021. if (last) {
  7022. return -1;
  7023. }
  7024. goto SEC_WEBSOCKET_V;
  7025. case 'v':
  7026. if (last) {
  7027. return -1;
  7028. }
  7029. goto SEC_WEBSOCKET_V;
  7030. default:
  7031. return -1;
  7032. }
  7033. SEC_WEBSOCKET_A:
  7034. NEXT_CHAR();
  7035. switch (ch) {
  7036. case 'C':
  7037. if (last) {
  7038. return -1;
  7039. }
  7040. goto SEC_WEBSOCKET_AC;
  7041. case 'c':
  7042. if (last) {
  7043. return -1;
  7044. }
  7045. goto SEC_WEBSOCKET_AC;
  7046. default:
  7047. return -1;
  7048. }
  7049. SEC_WEBSOCKET_AC:
  7050. NEXT_CHAR();
  7051. switch (ch) {
  7052. case 'C':
  7053. if (last) {
  7054. return -1;
  7055. }
  7056. goto SEC_WEBSOCKET_ACC;
  7057. case 'c':
  7058. if (last) {
  7059. return -1;
  7060. }
  7061. goto SEC_WEBSOCKET_ACC;
  7062. default:
  7063. return -1;
  7064. }
  7065. SEC_WEBSOCKET_ACC:
  7066. NEXT_CHAR();
  7067. switch (ch) {
  7068. case 'E':
  7069. if (last) {
  7070. return -1;
  7071. }
  7072. goto SEC_WEBSOCKET_ACCE;
  7073. case 'e':
  7074. if (last) {
  7075. return -1;
  7076. }
  7077. goto SEC_WEBSOCKET_ACCE;
  7078. default:
  7079. return -1;
  7080. }
  7081. SEC_WEBSOCKET_ACCE:
  7082. NEXT_CHAR();
  7083. switch (ch) {
  7084. case 'P':
  7085. if (last) {
  7086. return -1;
  7087. }
  7088. goto SEC_WEBSOCKET_ACCEP;
  7089. case 'p':
  7090. if (last) {
  7091. return -1;
  7092. }
  7093. goto SEC_WEBSOCKET_ACCEP;
  7094. default:
  7095. return -1;
  7096. }
  7097. SEC_WEBSOCKET_ACCEP:
  7098. NEXT_CHAR();
  7099. switch (ch) {
  7100. case 'T':
  7101. if (last) {
  7102. return 55;
  7103. }
  7104. goto SEC_WEBSOCKET_ACCEPT;
  7105. case 't':
  7106. if (last) {
  7107. return 55;
  7108. }
  7109. goto SEC_WEBSOCKET_ACCEPT;
  7110. default:
  7111. return -1;
  7112. }
  7113. SEC_WEBSOCKET_E:
  7114. NEXT_CHAR();
  7115. switch (ch) {
  7116. case 'X':
  7117. if (last) {
  7118. return -1;
  7119. }
  7120. goto SEC_WEBSOCKET_EX;
  7121. case 'x':
  7122. if (last) {
  7123. return -1;
  7124. }
  7125. goto SEC_WEBSOCKET_EX;
  7126. default:
  7127. return -1;
  7128. }
  7129. SEC_WEBSOCKET_EX:
  7130. NEXT_CHAR();
  7131. switch (ch) {
  7132. case 'T':
  7133. if (last) {
  7134. return -1;
  7135. }
  7136. goto SEC_WEBSOCKET_EXT;
  7137. case 't':
  7138. if (last) {
  7139. return -1;
  7140. }
  7141. goto SEC_WEBSOCKET_EXT;
  7142. default:
  7143. return -1;
  7144. }
  7145. SEC_WEBSOCKET_EXT:
  7146. NEXT_CHAR();
  7147. switch (ch) {
  7148. case 'E':
  7149. if (last) {
  7150. return -1;
  7151. }
  7152. goto SEC_WEBSOCKET_EXTE;
  7153. case 'e':
  7154. if (last) {
  7155. return -1;
  7156. }
  7157. goto SEC_WEBSOCKET_EXTE;
  7158. default:
  7159. return -1;
  7160. }
  7161. SEC_WEBSOCKET_EXTE:
  7162. NEXT_CHAR();
  7163. switch (ch) {
  7164. case 'N':
  7165. if (last) {
  7166. return -1;
  7167. }
  7168. goto SEC_WEBSOCKET_EXTEN;
  7169. case 'n':
  7170. if (last) {
  7171. return -1;
  7172. }
  7173. goto SEC_WEBSOCKET_EXTEN;
  7174. default:
  7175. return -1;
  7176. }
  7177. SEC_WEBSOCKET_EXTEN:
  7178. NEXT_CHAR();
  7179. switch (ch) {
  7180. case 'S':
  7181. if (last) {
  7182. return -1;
  7183. }
  7184. goto SEC_WEBSOCKET_EXTENS;
  7185. case 's':
  7186. if (last) {
  7187. return -1;
  7188. }
  7189. goto SEC_WEBSOCKET_EXTENS;
  7190. default:
  7191. return -1;
  7192. }
  7193. SEC_WEBSOCKET_EXTENS:
  7194. NEXT_CHAR();
  7195. switch (ch) {
  7196. case 'I':
  7197. if (last) {
  7198. return -1;
  7199. }
  7200. goto SEC_WEBSOCKET_EXTENSI;
  7201. case 'i':
  7202. if (last) {
  7203. return -1;
  7204. }
  7205. goto SEC_WEBSOCKET_EXTENSI;
  7206. default:
  7207. return -1;
  7208. }
  7209. SEC_WEBSOCKET_EXTENSI:
  7210. NEXT_CHAR();
  7211. switch (ch) {
  7212. case 'O':
  7213. if (last) {
  7214. return -1;
  7215. }
  7216. goto SEC_WEBSOCKET_EXTENSIO;
  7217. case 'o':
  7218. if (last) {
  7219. return -1;
  7220. }
  7221. goto SEC_WEBSOCKET_EXTENSIO;
  7222. default:
  7223. return -1;
  7224. }
  7225. SEC_WEBSOCKET_EXTENSIO:
  7226. NEXT_CHAR();
  7227. switch (ch) {
  7228. case 'N':
  7229. if (last) {
  7230. return -1;
  7231. }
  7232. goto SEC_WEBSOCKET_EXTENSION;
  7233. case 'n':
  7234. if (last) {
  7235. return -1;
  7236. }
  7237. goto SEC_WEBSOCKET_EXTENSION;
  7238. default:
  7239. return -1;
  7240. }
  7241. SEC_WEBSOCKET_EXTENSION:
  7242. NEXT_CHAR();
  7243. switch (ch) {
  7244. case 'S':
  7245. if (last) {
  7246. return 56;
  7247. }
  7248. goto SEC_WEBSOCKET_EXTENSIONS;
  7249. case 's':
  7250. if (last) {
  7251. return 56;
  7252. }
  7253. goto SEC_WEBSOCKET_EXTENSIONS;
  7254. default:
  7255. return -1;
  7256. }
  7257. SEC_WEBSOCKET_K:
  7258. NEXT_CHAR();
  7259. switch (ch) {
  7260. case 'E':
  7261. if (last) {
  7262. return -1;
  7263. }
  7264. goto SEC_WEBSOCKET_KE;
  7265. case 'e':
  7266. if (last) {
  7267. return -1;
  7268. }
  7269. goto SEC_WEBSOCKET_KE;
  7270. default:
  7271. return -1;
  7272. }
  7273. SEC_WEBSOCKET_KE:
  7274. NEXT_CHAR();
  7275. switch (ch) {
  7276. case 'Y':
  7277. if (last) {
  7278. return 57;
  7279. }
  7280. goto SEC_WEBSOCKET_KEY;
  7281. case 'y':
  7282. if (last) {
  7283. return 57;
  7284. }
  7285. goto SEC_WEBSOCKET_KEY;
  7286. default:
  7287. return -1;
  7288. }
  7289. SEC_WEBSOCKET_KEY:
  7290. NEXT_CHAR();
  7291. switch (ch) {
  7292. case '1':
  7293. if (last) {
  7294. return 58;
  7295. }
  7296. goto SEC_WEBSOCKET_KEY1;
  7297. default:
  7298. return -1;
  7299. }
  7300. SEC_WEBSOCKET_P:
  7301. NEXT_CHAR();
  7302. switch (ch) {
  7303. case 'R':
  7304. if (last) {
  7305. return -1;
  7306. }
  7307. goto SEC_WEBSOCKET_PR;
  7308. case 'r':
  7309. if (last) {
  7310. return -1;
  7311. }
  7312. goto SEC_WEBSOCKET_PR;
  7313. default:
  7314. return -1;
  7315. }
  7316. SEC_WEBSOCKET_PR:
  7317. NEXT_CHAR();
  7318. switch (ch) {
  7319. case 'O':
  7320. if (last) {
  7321. return -1;
  7322. }
  7323. goto SEC_WEBSOCKET_PRO;
  7324. case 'o':
  7325. if (last) {
  7326. return -1;
  7327. }
  7328. goto SEC_WEBSOCKET_PRO;
  7329. default:
  7330. return -1;
  7331. }
  7332. SEC_WEBSOCKET_PRO:
  7333. NEXT_CHAR();
  7334. switch (ch) {
  7335. case 'T':
  7336. if (last) {
  7337. return -1;
  7338. }
  7339. goto SEC_WEBSOCKET_PROT;
  7340. case 't':
  7341. if (last) {
  7342. return -1;
  7343. }
  7344. goto SEC_WEBSOCKET_PROT;
  7345. default:
  7346. return -1;
  7347. }
  7348. SEC_WEBSOCKET_PROT:
  7349. NEXT_CHAR();
  7350. switch (ch) {
  7351. case 'O':
  7352. if (last) {
  7353. return -1;
  7354. }
  7355. goto SEC_WEBSOCKET_PROTO;
  7356. case 'o':
  7357. if (last) {
  7358. return -1;
  7359. }
  7360. goto SEC_WEBSOCKET_PROTO;
  7361. default:
  7362. return -1;
  7363. }
  7364. SEC_WEBSOCKET_PROTO:
  7365. NEXT_CHAR();
  7366. switch (ch) {
  7367. case 'C':
  7368. if (last) {
  7369. return -1;
  7370. }
  7371. goto SEC_WEBSOCKET_PROTOC;
  7372. case 'c':
  7373. if (last) {
  7374. return -1;
  7375. }
  7376. goto SEC_WEBSOCKET_PROTOC;
  7377. default:
  7378. return -1;
  7379. }
  7380. SEC_WEBSOCKET_PROTOC:
  7381. NEXT_CHAR();
  7382. switch (ch) {
  7383. case 'O':
  7384. if (last) {
  7385. return -1;
  7386. }
  7387. goto SEC_WEBSOCKET_PROTOCO;
  7388. case 'o':
  7389. if (last) {
  7390. return -1;
  7391. }
  7392. goto SEC_WEBSOCKET_PROTOCO;
  7393. default:
  7394. return -1;
  7395. }
  7396. SEC_WEBSOCKET_PROTOCO:
  7397. NEXT_CHAR();
  7398. switch (ch) {
  7399. case 'L':
  7400. if (last) {
  7401. return 59;
  7402. }
  7403. goto SEC_WEBSOCKET_PROTOCOL;
  7404. case 'l':
  7405. if (last) {
  7406. return 59;
  7407. }
  7408. goto SEC_WEBSOCKET_PROTOCOL;
  7409. default:
  7410. return -1;
  7411. }
  7412. SEC_WEBSOCKET_V:
  7413. NEXT_CHAR();
  7414. switch (ch) {
  7415. case 'E':
  7416. if (last) {
  7417. return -1;
  7418. }
  7419. goto SEC_WEBSOCKET_VE;
  7420. case 'e':
  7421. if (last) {
  7422. return -1;
  7423. }
  7424. goto SEC_WEBSOCKET_VE;
  7425. default:
  7426. return -1;
  7427. }
  7428. SEC_WEBSOCKET_VE:
  7429. NEXT_CHAR();
  7430. switch (ch) {
  7431. case 'R':
  7432. if (last) {
  7433. return -1;
  7434. }
  7435. goto SEC_WEBSOCKET_VER;
  7436. case 'r':
  7437. if (last) {
  7438. return -1;
  7439. }
  7440. goto SEC_WEBSOCKET_VER;
  7441. default:
  7442. return -1;
  7443. }
  7444. SEC_WEBSOCKET_VER:
  7445. NEXT_CHAR();
  7446. switch (ch) {
  7447. case 'S':
  7448. if (last) {
  7449. return -1;
  7450. }
  7451. goto SEC_WEBSOCKET_VERS;
  7452. case 's':
  7453. if (last) {
  7454. return -1;
  7455. }
  7456. goto SEC_WEBSOCKET_VERS;
  7457. default:
  7458. return -1;
  7459. }
  7460. SEC_WEBSOCKET_VERS:
  7461. NEXT_CHAR();
  7462. switch (ch) {
  7463. case 'I':
  7464. if (last) {
  7465. return -1;
  7466. }
  7467. goto SEC_WEBSOCKET_VERSI;
  7468. case 'i':
  7469. if (last) {
  7470. return -1;
  7471. }
  7472. goto SEC_WEBSOCKET_VERSI;
  7473. default:
  7474. return -1;
  7475. }
  7476. SEC_WEBSOCKET_VERSI:
  7477. NEXT_CHAR();
  7478. switch (ch) {
  7479. case 'O':
  7480. if (last) {
  7481. return -1;
  7482. }
  7483. goto SEC_WEBSOCKET_VERSIO;
  7484. case 'o':
  7485. if (last) {
  7486. return -1;
  7487. }
  7488. goto SEC_WEBSOCKET_VERSIO;
  7489. default:
  7490. return -1;
  7491. }
  7492. SEC_WEBSOCKET_VERSIO:
  7493. NEXT_CHAR();
  7494. switch (ch) {
  7495. case 'N':
  7496. if (last) {
  7497. return 60;
  7498. }
  7499. goto SEC_WEBSOCKET_VERSION;
  7500. case 'n':
  7501. if (last) {
  7502. return 60;
  7503. }
  7504. goto SEC_WEBSOCKET_VERSION;
  7505. default:
  7506. return -1;
  7507. }
  7508. SER:
  7509. NEXT_CHAR();
  7510. switch (ch) {
  7511. case 'V':
  7512. if (last) {
  7513. return -1;
  7514. }
  7515. goto SERV;
  7516. case 'v':
  7517. if (last) {
  7518. return -1;
  7519. }
  7520. goto SERV;
  7521. default:
  7522. return -1;
  7523. }
  7524. SERV:
  7525. NEXT_CHAR();
  7526. switch (ch) {
  7527. case 'E':
  7528. if (last) {
  7529. return -1;
  7530. }
  7531. goto SERVE;
  7532. case 'e':
  7533. if (last) {
  7534. return -1;
  7535. }
  7536. goto SERVE;
  7537. default:
  7538. return -1;
  7539. }
  7540. SERVE:
  7541. NEXT_CHAR();
  7542. switch (ch) {
  7543. case 'R':
  7544. if (last) {
  7545. return 61;
  7546. }
  7547. goto SERVER;
  7548. case 'r':
  7549. if (last) {
  7550. return 61;
  7551. }
  7552. goto SERVER;
  7553. default:
  7554. return -1;
  7555. }
  7556. SET:
  7557. NEXT_CHAR();
  7558. switch (ch) {
  7559. case '-':
  7560. if (last) {
  7561. return -1;
  7562. }
  7563. goto SET_;
  7564. default:
  7565. return -1;
  7566. }
  7567. SET_:
  7568. NEXT_CHAR();
  7569. switch (ch) {
  7570. case 'C':
  7571. if (last) {
  7572. return -1;
  7573. }
  7574. goto SET_C;
  7575. case 'c':
  7576. if (last) {
  7577. return -1;
  7578. }
  7579. goto SET_C;
  7580. default:
  7581. return -1;
  7582. }
  7583. SET_C:
  7584. NEXT_CHAR();
  7585. switch (ch) {
  7586. case 'O':
  7587. if (last) {
  7588. return -1;
  7589. }
  7590. goto SET_CO;
  7591. case 'o':
  7592. if (last) {
  7593. return -1;
  7594. }
  7595. goto SET_CO;
  7596. default:
  7597. return -1;
  7598. }
  7599. SET_CO:
  7600. NEXT_CHAR();
  7601. switch (ch) {
  7602. case 'O':
  7603. if (last) {
  7604. return -1;
  7605. }
  7606. goto SET_COO;
  7607. case 'o':
  7608. if (last) {
  7609. return -1;
  7610. }
  7611. goto SET_COO;
  7612. default:
  7613. return -1;
  7614. }
  7615. SET_COO:
  7616. NEXT_CHAR();
  7617. switch (ch) {
  7618. case 'K':
  7619. if (last) {
  7620. return -1;
  7621. }
  7622. goto SET_COOK;
  7623. case 'k':
  7624. if (last) {
  7625. return -1;
  7626. }
  7627. goto SET_COOK;
  7628. default:
  7629. return -1;
  7630. }
  7631. SET_COOK:
  7632. NEXT_CHAR();
  7633. switch (ch) {
  7634. case 'I':
  7635. if (last) {
  7636. return -1;
  7637. }
  7638. goto SET_COOKI;
  7639. case 'i':
  7640. if (last) {
  7641. return -1;
  7642. }
  7643. goto SET_COOKI;
  7644. default:
  7645. return -1;
  7646. }
  7647. SET_COOKI:
  7648. NEXT_CHAR();
  7649. switch (ch) {
  7650. case 'E':
  7651. if (last) {
  7652. return 62;
  7653. }
  7654. goto SET_COOKIE;
  7655. case 'e':
  7656. if (last) {
  7657. return 62;
  7658. }
  7659. goto SET_COOKIE;
  7660. default:
  7661. return -1;
  7662. }
  7663. T:
  7664. NEXT_CHAR();
  7665. switch (ch) {
  7666. case 'E':
  7667. if (last) {
  7668. return 63;
  7669. }
  7670. goto TE;
  7671. case 'e':
  7672. if (last) {
  7673. return 63;
  7674. }
  7675. goto TE;
  7676. case 'R':
  7677. if (last) {
  7678. return -1;
  7679. }
  7680. goto TR;
  7681. case 'r':
  7682. if (last) {
  7683. return -1;
  7684. }
  7685. goto TR;
  7686. default:
  7687. return -1;
  7688. }
  7689. TR:
  7690. NEXT_CHAR();
  7691. switch (ch) {
  7692. case 'A':
  7693. if (last) {
  7694. return -1;
  7695. }
  7696. goto TRA;
  7697. case 'a':
  7698. if (last) {
  7699. return -1;
  7700. }
  7701. goto TRA;
  7702. default:
  7703. return -1;
  7704. }
  7705. TRA:
  7706. NEXT_CHAR();
  7707. switch (ch) {
  7708. case 'I':
  7709. if (last) {
  7710. return -1;
  7711. }
  7712. goto TRAI;
  7713. case 'i':
  7714. if (last) {
  7715. return -1;
  7716. }
  7717. goto TRAI;
  7718. case 'N':
  7719. if (last) {
  7720. return -1;
  7721. }
  7722. goto TRAN;
  7723. case 'n':
  7724. if (last) {
  7725. return -1;
  7726. }
  7727. goto TRAN;
  7728. default:
  7729. return -1;
  7730. }
  7731. TRAI:
  7732. NEXT_CHAR();
  7733. switch (ch) {
  7734. case 'L':
  7735. if (last) {
  7736. return -1;
  7737. }
  7738. goto TRAIL;
  7739. case 'l':
  7740. if (last) {
  7741. return -1;
  7742. }
  7743. goto TRAIL;
  7744. default:
  7745. return -1;
  7746. }
  7747. TRAIL:
  7748. NEXT_CHAR();
  7749. switch (ch) {
  7750. case 'E':
  7751. if (last) {
  7752. return -1;
  7753. }
  7754. goto TRAILE;
  7755. case 'e':
  7756. if (last) {
  7757. return -1;
  7758. }
  7759. goto TRAILE;
  7760. default:
  7761. return -1;
  7762. }
  7763. TRAILE:
  7764. NEXT_CHAR();
  7765. switch (ch) {
  7766. case 'R':
  7767. if (last) {
  7768. return 64;
  7769. }
  7770. goto TRAILER;
  7771. case 'r':
  7772. if (last) {
  7773. return 64;
  7774. }
  7775. goto TRAILER;
  7776. default:
  7777. return -1;
  7778. }
  7779. TRAN:
  7780. NEXT_CHAR();
  7781. switch (ch) {
  7782. case 'S':
  7783. if (last) {
  7784. return -1;
  7785. }
  7786. goto TRANS;
  7787. case 's':
  7788. if (last) {
  7789. return -1;
  7790. }
  7791. goto TRANS;
  7792. default:
  7793. return -1;
  7794. }
  7795. TRANS:
  7796. NEXT_CHAR();
  7797. switch (ch) {
  7798. case 'F':
  7799. if (last) {
  7800. return -1;
  7801. }
  7802. goto TRANSF;
  7803. case 'f':
  7804. if (last) {
  7805. return -1;
  7806. }
  7807. goto TRANSF;
  7808. default:
  7809. return -1;
  7810. }
  7811. TRANSF:
  7812. NEXT_CHAR();
  7813. switch (ch) {
  7814. case 'E':
  7815. if (last) {
  7816. return -1;
  7817. }
  7818. goto TRANSFE;
  7819. case 'e':
  7820. if (last) {
  7821. return -1;
  7822. }
  7823. goto TRANSFE;
  7824. default:
  7825. return -1;
  7826. }
  7827. TRANSFE:
  7828. NEXT_CHAR();
  7829. switch (ch) {
  7830. case 'R':
  7831. if (last) {
  7832. return -1;
  7833. }
  7834. goto TRANSFER;
  7835. case 'r':
  7836. if (last) {
  7837. return -1;
  7838. }
  7839. goto TRANSFER;
  7840. default:
  7841. return -1;
  7842. }
  7843. TRANSFER:
  7844. NEXT_CHAR();
  7845. switch (ch) {
  7846. case '-':
  7847. if (last) {
  7848. return -1;
  7849. }
  7850. goto TRANSFER_;
  7851. default:
  7852. return -1;
  7853. }
  7854. TRANSFER_:
  7855. NEXT_CHAR();
  7856. switch (ch) {
  7857. case 'E':
  7858. if (last) {
  7859. return -1;
  7860. }
  7861. goto TRANSFER_E;
  7862. case 'e':
  7863. if (last) {
  7864. return -1;
  7865. }
  7866. goto TRANSFER_E;
  7867. default:
  7868. return -1;
  7869. }
  7870. TRANSFER_E:
  7871. NEXT_CHAR();
  7872. switch (ch) {
  7873. case 'N':
  7874. if (last) {
  7875. return -1;
  7876. }
  7877. goto TRANSFER_EN;
  7878. case 'n':
  7879. if (last) {
  7880. return -1;
  7881. }
  7882. goto TRANSFER_EN;
  7883. default:
  7884. return -1;
  7885. }
  7886. TRANSFER_EN:
  7887. NEXT_CHAR();
  7888. switch (ch) {
  7889. case 'C':
  7890. if (last) {
  7891. return -1;
  7892. }
  7893. goto TRANSFER_ENC;
  7894. case 'c':
  7895. if (last) {
  7896. return -1;
  7897. }
  7898. goto TRANSFER_ENC;
  7899. default:
  7900. return -1;
  7901. }
  7902. TRANSFER_ENC:
  7903. NEXT_CHAR();
  7904. switch (ch) {
  7905. case 'O':
  7906. if (last) {
  7907. return -1;
  7908. }
  7909. goto TRANSFER_ENCO;
  7910. case 'o':
  7911. if (last) {
  7912. return -1;
  7913. }
  7914. goto TRANSFER_ENCO;
  7915. default:
  7916. return -1;
  7917. }
  7918. TRANSFER_ENCO:
  7919. NEXT_CHAR();
  7920. switch (ch) {
  7921. case 'D':
  7922. if (last) {
  7923. return -1;
  7924. }
  7925. goto TRANSFER_ENCOD;
  7926. case 'd':
  7927. if (last) {
  7928. return -1;
  7929. }
  7930. goto TRANSFER_ENCOD;
  7931. default:
  7932. return -1;
  7933. }
  7934. TRANSFER_ENCOD:
  7935. NEXT_CHAR();
  7936. switch (ch) {
  7937. case 'I':
  7938. if (last) {
  7939. return -1;
  7940. }
  7941. goto TRANSFER_ENCODI;
  7942. case 'i':
  7943. if (last) {
  7944. return -1;
  7945. }
  7946. goto TRANSFER_ENCODI;
  7947. default:
  7948. return -1;
  7949. }
  7950. TRANSFER_ENCODI:
  7951. NEXT_CHAR();
  7952. switch (ch) {
  7953. case 'N':
  7954. if (last) {
  7955. return -1;
  7956. }
  7957. goto TRANSFER_ENCODIN;
  7958. case 'n':
  7959. if (last) {
  7960. return -1;
  7961. }
  7962. goto TRANSFER_ENCODIN;
  7963. default:
  7964. return -1;
  7965. }
  7966. TRANSFER_ENCODIN:
  7967. NEXT_CHAR();
  7968. switch (ch) {
  7969. case 'G':
  7970. if (last) {
  7971. return 65;
  7972. }
  7973. goto TRANSFER_ENCODING;
  7974. case 'g':
  7975. if (last) {
  7976. return 65;
  7977. }
  7978. goto TRANSFER_ENCODING;
  7979. default:
  7980. return -1;
  7981. }
  7982. U:
  7983. NEXT_CHAR();
  7984. switch (ch) {
  7985. case 'P':
  7986. if (last) {
  7987. return -1;
  7988. }
  7989. goto UP;
  7990. case 'p':
  7991. if (last) {
  7992. return -1;
  7993. }
  7994. goto UP;
  7995. case 'R':
  7996. if (last) {
  7997. return -1;
  7998. }
  7999. goto UR;
  8000. case 'r':
  8001. if (last) {
  8002. return -1;
  8003. }
  8004. goto UR;
  8005. case 'S':
  8006. if (last) {
  8007. return -1;
  8008. }
  8009. goto US;
  8010. case 's':
  8011. if (last) {
  8012. return -1;
  8013. }
  8014. goto US;
  8015. default:
  8016. return -1;
  8017. }
  8018. UP:
  8019. NEXT_CHAR();
  8020. switch (ch) {
  8021. case 'G':
  8022. if (last) {
  8023. return -1;
  8024. }
  8025. goto UPG;
  8026. case 'g':
  8027. if (last) {
  8028. return -1;
  8029. }
  8030. goto UPG;
  8031. default:
  8032. return -1;
  8033. }
  8034. UPG:
  8035. NEXT_CHAR();
  8036. switch (ch) {
  8037. case 'R':
  8038. if (last) {
  8039. return -1;
  8040. }
  8041. goto UPGR;
  8042. case 'r':
  8043. if (last) {
  8044. return -1;
  8045. }
  8046. goto UPGR;
  8047. default:
  8048. return -1;
  8049. }
  8050. UPGR:
  8051. NEXT_CHAR();
  8052. switch (ch) {
  8053. case 'A':
  8054. if (last) {
  8055. return -1;
  8056. }
  8057. goto UPGRA;
  8058. case 'a':
  8059. if (last) {
  8060. return -1;
  8061. }
  8062. goto UPGRA;
  8063. default:
  8064. return -1;
  8065. }
  8066. UPGRA:
  8067. NEXT_CHAR();
  8068. switch (ch) {
  8069. case 'D':
  8070. if (last) {
  8071. return -1;
  8072. }
  8073. goto UPGRAD;
  8074. case 'd':
  8075. if (last) {
  8076. return -1;
  8077. }
  8078. goto UPGRAD;
  8079. default:
  8080. return -1;
  8081. }
  8082. UPGRAD:
  8083. NEXT_CHAR();
  8084. switch (ch) {
  8085. case 'E':
  8086. if (last) {
  8087. return 66;
  8088. }
  8089. goto UPGRADE;
  8090. case 'e':
  8091. if (last) {
  8092. return 66;
  8093. }
  8094. goto UPGRADE;
  8095. default:
  8096. return -1;
  8097. }
  8098. UR:
  8099. NEXT_CHAR();
  8100. switch (ch) {
  8101. case 'I':
  8102. if (last) {
  8103. return 67;
  8104. }
  8105. goto URI;
  8106. case 'i':
  8107. if (last) {
  8108. return 67;
  8109. }
  8110. goto URI;
  8111. default:
  8112. return -1;
  8113. }
  8114. US:
  8115. NEXT_CHAR();
  8116. switch (ch) {
  8117. case 'E':
  8118. if (last) {
  8119. return -1;
  8120. }
  8121. goto USE;
  8122. case 'e':
  8123. if (last) {
  8124. return -1;
  8125. }
  8126. goto USE;
  8127. default:
  8128. return -1;
  8129. }
  8130. USE:
  8131. NEXT_CHAR();
  8132. switch (ch) {
  8133. case 'R':
  8134. if (last) {
  8135. return -1;
  8136. }
  8137. goto USER;
  8138. case 'r':
  8139. if (last) {
  8140. return -1;
  8141. }
  8142. goto USER;
  8143. default:
  8144. return -1;
  8145. }
  8146. USER:
  8147. NEXT_CHAR();
  8148. switch (ch) {
  8149. case '-':
  8150. if (last) {
  8151. return -1;
  8152. }
  8153. goto USER_;
  8154. default:
  8155. return -1;
  8156. }
  8157. USER_:
  8158. NEXT_CHAR();
  8159. switch (ch) {
  8160. case 'A':
  8161. if (last) {
  8162. return -1;
  8163. }
  8164. goto USER_A;
  8165. case 'a':
  8166. if (last) {
  8167. return -1;
  8168. }
  8169. goto USER_A;
  8170. default:
  8171. return -1;
  8172. }
  8173. USER_A:
  8174. NEXT_CHAR();
  8175. switch (ch) {
  8176. case 'G':
  8177. if (last) {
  8178. return -1;
  8179. }
  8180. goto USER_AG;
  8181. case 'g':
  8182. if (last) {
  8183. return -1;
  8184. }
  8185. goto USER_AG;
  8186. default:
  8187. return -1;
  8188. }
  8189. USER_AG:
  8190. NEXT_CHAR();
  8191. switch (ch) {
  8192. case 'E':
  8193. if (last) {
  8194. return -1;
  8195. }
  8196. goto USER_AGE;
  8197. case 'e':
  8198. if (last) {
  8199. return -1;
  8200. }
  8201. goto USER_AGE;
  8202. default:
  8203. return -1;
  8204. }
  8205. USER_AGE:
  8206. NEXT_CHAR();
  8207. switch (ch) {
  8208. case 'N':
  8209. if (last) {
  8210. return -1;
  8211. }
  8212. goto USER_AGEN;
  8213. case 'n':
  8214. if (last) {
  8215. return -1;
  8216. }
  8217. goto USER_AGEN;
  8218. default:
  8219. return -1;
  8220. }
  8221. USER_AGEN:
  8222. NEXT_CHAR();
  8223. switch (ch) {
  8224. case 'T':
  8225. if (last) {
  8226. return 68;
  8227. }
  8228. goto USER_AGENT;
  8229. case 't':
  8230. if (last) {
  8231. return 68;
  8232. }
  8233. goto USER_AGENT;
  8234. default:
  8235. return -1;
  8236. }
  8237. V:
  8238. NEXT_CHAR();
  8239. switch (ch) {
  8240. case 'A':
  8241. if (last) {
  8242. return -1;
  8243. }
  8244. goto VA;
  8245. case 'a':
  8246. if (last) {
  8247. return -1;
  8248. }
  8249. goto VA;
  8250. case 'I':
  8251. if (last) {
  8252. return -1;
  8253. }
  8254. goto VI;
  8255. case 'i':
  8256. if (last) {
  8257. return -1;
  8258. }
  8259. goto VI;
  8260. default:
  8261. return -1;
  8262. }
  8263. VA:
  8264. NEXT_CHAR();
  8265. switch (ch) {
  8266. case 'R':
  8267. if (last) {
  8268. return -1;
  8269. }
  8270. goto VAR;
  8271. case 'r':
  8272. if (last) {
  8273. return -1;
  8274. }
  8275. goto VAR;
  8276. default:
  8277. return -1;
  8278. }
  8279. VAR:
  8280. NEXT_CHAR();
  8281. switch (ch) {
  8282. case 'Y':
  8283. if (last) {
  8284. return 69;
  8285. }
  8286. goto VARY;
  8287. case 'y':
  8288. if (last) {
  8289. return 69;
  8290. }
  8291. goto VARY;
  8292. default:
  8293. return -1;
  8294. }
  8295. VI:
  8296. NEXT_CHAR();
  8297. switch (ch) {
  8298. case 'A':
  8299. if (last) {
  8300. return 70;
  8301. }
  8302. goto VIA;
  8303. case 'a':
  8304. if (last) {
  8305. return 70;
  8306. }
  8307. goto VIA;
  8308. default:
  8309. return -1;
  8310. }
  8311. W:
  8312. NEXT_CHAR();
  8313. switch (ch) {
  8314. case 'A':
  8315. if (last) {
  8316. return -1;
  8317. }
  8318. goto WA;
  8319. case 'a':
  8320. if (last) {
  8321. return -1;
  8322. }
  8323. goto WA;
  8324. case 'E':
  8325. if (last) {
  8326. return -1;
  8327. }
  8328. goto WE;
  8329. case 'e':
  8330. if (last) {
  8331. return -1;
  8332. }
  8333. goto WE;
  8334. case 'W':
  8335. if (last) {
  8336. return -1;
  8337. }
  8338. goto WW;
  8339. case 'w':
  8340. if (last) {
  8341. return -1;
  8342. }
  8343. goto WW;
  8344. default:
  8345. return -1;
  8346. }
  8347. WA:
  8348. NEXT_CHAR();
  8349. switch (ch) {
  8350. case 'N':
  8351. if (last) {
  8352. return -1;
  8353. }
  8354. goto WAN;
  8355. case 'n':
  8356. if (last) {
  8357. return -1;
  8358. }
  8359. goto WAN;
  8360. case 'R':
  8361. if (last) {
  8362. return -1;
  8363. }
  8364. goto WAR;
  8365. case 'r':
  8366. if (last) {
  8367. return -1;
  8368. }
  8369. goto WAR;
  8370. default:
  8371. return -1;
  8372. }
  8373. WAN:
  8374. NEXT_CHAR();
  8375. switch (ch) {
  8376. case 'T':
  8377. if (last) {
  8378. return -1;
  8379. }
  8380. goto WANT;
  8381. case 't':
  8382. if (last) {
  8383. return -1;
  8384. }
  8385. goto WANT;
  8386. default:
  8387. return -1;
  8388. }
  8389. WANT:
  8390. NEXT_CHAR();
  8391. switch (ch) {
  8392. case '-':
  8393. if (last) {
  8394. return -1;
  8395. }
  8396. goto WANT_;
  8397. default:
  8398. return -1;
  8399. }
  8400. WANT_:
  8401. NEXT_CHAR();
  8402. switch (ch) {
  8403. case 'D':
  8404. if (last) {
  8405. return -1;
  8406. }
  8407. goto WANT_D;
  8408. case 'd':
  8409. if (last) {
  8410. return -1;
  8411. }
  8412. goto WANT_D;
  8413. default:
  8414. return -1;
  8415. }
  8416. WANT_D:
  8417. NEXT_CHAR();
  8418. switch (ch) {
  8419. case 'I':
  8420. if (last) {
  8421. return -1;
  8422. }
  8423. goto WANT_DI;
  8424. case 'i':
  8425. if (last) {
  8426. return -1;
  8427. }
  8428. goto WANT_DI;
  8429. default:
  8430. return -1;
  8431. }
  8432. WANT_DI:
  8433. NEXT_CHAR();
  8434. switch (ch) {
  8435. case 'G':
  8436. if (last) {
  8437. return -1;
  8438. }
  8439. goto WANT_DIG;
  8440. case 'g':
  8441. if (last) {
  8442. return -1;
  8443. }
  8444. goto WANT_DIG;
  8445. default:
  8446. return -1;
  8447. }
  8448. WANT_DIG:
  8449. NEXT_CHAR();
  8450. switch (ch) {
  8451. case 'E':
  8452. if (last) {
  8453. return -1;
  8454. }
  8455. goto WANT_DIGE;
  8456. case 'e':
  8457. if (last) {
  8458. return -1;
  8459. }
  8460. goto WANT_DIGE;
  8461. default:
  8462. return -1;
  8463. }
  8464. WANT_DIGE:
  8465. NEXT_CHAR();
  8466. switch (ch) {
  8467. case 'S':
  8468. if (last) {
  8469. return -1;
  8470. }
  8471. goto WANT_DIGES;
  8472. case 's':
  8473. if (last) {
  8474. return -1;
  8475. }
  8476. goto WANT_DIGES;
  8477. default:
  8478. return -1;
  8479. }
  8480. WANT_DIGES:
  8481. NEXT_CHAR();
  8482. switch (ch) {
  8483. case 'T':
  8484. if (last) {
  8485. return 71;
  8486. }
  8487. goto WANT_DIGEST;
  8488. case 't':
  8489. if (last) {
  8490. return 71;
  8491. }
  8492. goto WANT_DIGEST;
  8493. default:
  8494. return -1;
  8495. }
  8496. WAR:
  8497. NEXT_CHAR();
  8498. switch (ch) {
  8499. case 'N':
  8500. if (last) {
  8501. return -1;
  8502. }
  8503. goto WARN;
  8504. case 'n':
  8505. if (last) {
  8506. return -1;
  8507. }
  8508. goto WARN;
  8509. default:
  8510. return -1;
  8511. }
  8512. WARN:
  8513. NEXT_CHAR();
  8514. switch (ch) {
  8515. case 'I':
  8516. if (last) {
  8517. return -1;
  8518. }
  8519. goto WARNI;
  8520. case 'i':
  8521. if (last) {
  8522. return -1;
  8523. }
  8524. goto WARNI;
  8525. default:
  8526. return -1;
  8527. }
  8528. WARNI:
  8529. NEXT_CHAR();
  8530. switch (ch) {
  8531. case 'N':
  8532. if (last) {
  8533. return -1;
  8534. }
  8535. goto WARNIN;
  8536. case 'n':
  8537. if (last) {
  8538. return -1;
  8539. }
  8540. goto WARNIN;
  8541. default:
  8542. return -1;
  8543. }
  8544. WARNIN:
  8545. NEXT_CHAR();
  8546. switch (ch) {
  8547. case 'G':
  8548. if (last) {
  8549. return 72;
  8550. }
  8551. goto WARNING;
  8552. case 'g':
  8553. if (last) {
  8554. return 72;
  8555. }
  8556. goto WARNING;
  8557. default:
  8558. return -1;
  8559. }
  8560. WE:
  8561. NEXT_CHAR();
  8562. switch (ch) {
  8563. case 'B':
  8564. if (last) {
  8565. return -1;
  8566. }
  8567. goto WEB;
  8568. case 'b':
  8569. if (last) {
  8570. return -1;
  8571. }
  8572. goto WEB;
  8573. default:
  8574. return -1;
  8575. }
  8576. WEB:
  8577. NEXT_CHAR();
  8578. switch (ch) {
  8579. case 'S':
  8580. if (last) {
  8581. return -1;
  8582. }
  8583. goto WEBS;
  8584. case 's':
  8585. if (last) {
  8586. return -1;
  8587. }
  8588. goto WEBS;
  8589. default:
  8590. return -1;
  8591. }
  8592. WEBS:
  8593. NEXT_CHAR();
  8594. switch (ch) {
  8595. case 'O':
  8596. if (last) {
  8597. return -1;
  8598. }
  8599. goto WEBSO;
  8600. case 'o':
  8601. if (last) {
  8602. return -1;
  8603. }
  8604. goto WEBSO;
  8605. default:
  8606. return -1;
  8607. }
  8608. WEBSO:
  8609. NEXT_CHAR();
  8610. switch (ch) {
  8611. case 'C':
  8612. if (last) {
  8613. return -1;
  8614. }
  8615. goto WEBSOC;
  8616. case 'c':
  8617. if (last) {
  8618. return -1;
  8619. }
  8620. goto WEBSOC;
  8621. default:
  8622. return -1;
  8623. }
  8624. WEBSOC:
  8625. NEXT_CHAR();
  8626. switch (ch) {
  8627. case 'K':
  8628. if (last) {
  8629. return -1;
  8630. }
  8631. goto WEBSOCK;
  8632. case 'k':
  8633. if (last) {
  8634. return -1;
  8635. }
  8636. goto WEBSOCK;
  8637. default:
  8638. return -1;
  8639. }
  8640. WEBSOCK:
  8641. NEXT_CHAR();
  8642. switch (ch) {
  8643. case 'E':
  8644. if (last) {
  8645. return -1;
  8646. }
  8647. goto WEBSOCKE;
  8648. case 'e':
  8649. if (last) {
  8650. return -1;
  8651. }
  8652. goto WEBSOCKE;
  8653. default:
  8654. return -1;
  8655. }
  8656. WEBSOCKE:
  8657. NEXT_CHAR();
  8658. switch (ch) {
  8659. case 'T':
  8660. if (last) {
  8661. return 73;
  8662. }
  8663. goto WEBSOCKET;
  8664. case 't':
  8665. if (last) {
  8666. return 73;
  8667. }
  8668. goto WEBSOCKET;
  8669. default:
  8670. return -1;
  8671. }
  8672. WW:
  8673. NEXT_CHAR();
  8674. switch (ch) {
  8675. case 'W':
  8676. if (last) {
  8677. return -1;
  8678. }
  8679. goto WWW;
  8680. case 'w':
  8681. if (last) {
  8682. return -1;
  8683. }
  8684. goto WWW;
  8685. default:
  8686. return -1;
  8687. }
  8688. WWW:
  8689. NEXT_CHAR();
  8690. switch (ch) {
  8691. case '-':
  8692. if (last) {
  8693. return -1;
  8694. }
  8695. goto WWW_;
  8696. default:
  8697. return -1;
  8698. }
  8699. WWW_:
  8700. NEXT_CHAR();
  8701. switch (ch) {
  8702. case 'A':
  8703. if (last) {
  8704. return -1;
  8705. }
  8706. goto WWW_A;
  8707. case 'a':
  8708. if (last) {
  8709. return -1;
  8710. }
  8711. goto WWW_A;
  8712. default:
  8713. return -1;
  8714. }
  8715. WWW_A:
  8716. NEXT_CHAR();
  8717. switch (ch) {
  8718. case 'U':
  8719. if (last) {
  8720. return -1;
  8721. }
  8722. goto WWW_AU;
  8723. case 'u':
  8724. if (last) {
  8725. return -1;
  8726. }
  8727. goto WWW_AU;
  8728. default:
  8729. return -1;
  8730. }
  8731. WWW_AU:
  8732. NEXT_CHAR();
  8733. switch (ch) {
  8734. case 'T':
  8735. if (last) {
  8736. return -1;
  8737. }
  8738. goto WWW_AUT;
  8739. case 't':
  8740. if (last) {
  8741. return -1;
  8742. }
  8743. goto WWW_AUT;
  8744. default:
  8745. return -1;
  8746. }
  8747. WWW_AUT:
  8748. NEXT_CHAR();
  8749. switch (ch) {
  8750. case 'H':
  8751. if (last) {
  8752. return -1;
  8753. }
  8754. goto WWW_AUTH;
  8755. case 'h':
  8756. if (last) {
  8757. return -1;
  8758. }
  8759. goto WWW_AUTH;
  8760. default:
  8761. return -1;
  8762. }
  8763. WWW_AUTH:
  8764. NEXT_CHAR();
  8765. switch (ch) {
  8766. case 'E':
  8767. if (last) {
  8768. return -1;
  8769. }
  8770. goto WWW_AUTHE;
  8771. case 'e':
  8772. if (last) {
  8773. return -1;
  8774. }
  8775. goto WWW_AUTHE;
  8776. default:
  8777. return -1;
  8778. }
  8779. WWW_AUTHE:
  8780. NEXT_CHAR();
  8781. switch (ch) {
  8782. case 'N':
  8783. if (last) {
  8784. return -1;
  8785. }
  8786. goto WWW_AUTHEN;
  8787. case 'n':
  8788. if (last) {
  8789. return -1;
  8790. }
  8791. goto WWW_AUTHEN;
  8792. default:
  8793. return -1;
  8794. }
  8795. WWW_AUTHEN:
  8796. NEXT_CHAR();
  8797. switch (ch) {
  8798. case 'T':
  8799. if (last) {
  8800. return -1;
  8801. }
  8802. goto WWW_AUTHENT;
  8803. case 't':
  8804. if (last) {
  8805. return -1;
  8806. }
  8807. goto WWW_AUTHENT;
  8808. default:
  8809. return -1;
  8810. }
  8811. WWW_AUTHENT:
  8812. NEXT_CHAR();
  8813. switch (ch) {
  8814. case 'I':
  8815. if (last) {
  8816. return -1;
  8817. }
  8818. goto WWW_AUTHENTI;
  8819. case 'i':
  8820. if (last) {
  8821. return -1;
  8822. }
  8823. goto WWW_AUTHENTI;
  8824. default:
  8825. return -1;
  8826. }
  8827. WWW_AUTHENTI:
  8828. NEXT_CHAR();
  8829. switch (ch) {
  8830. case 'C':
  8831. if (last) {
  8832. return -1;
  8833. }
  8834. goto WWW_AUTHENTIC;
  8835. case 'c':
  8836. if (last) {
  8837. return -1;
  8838. }
  8839. goto WWW_AUTHENTIC;
  8840. default:
  8841. return -1;
  8842. }
  8843. WWW_AUTHENTIC:
  8844. NEXT_CHAR();
  8845. switch (ch) {
  8846. case 'A':
  8847. if (last) {
  8848. return -1;
  8849. }
  8850. goto WWW_AUTHENTICA;
  8851. case 'a':
  8852. if (last) {
  8853. return -1;
  8854. }
  8855. goto WWW_AUTHENTICA;
  8856. default:
  8857. return -1;
  8858. }
  8859. WWW_AUTHENTICA:
  8860. NEXT_CHAR();
  8861. switch (ch) {
  8862. case 'T':
  8863. if (last) {
  8864. return -1;
  8865. }
  8866. goto WWW_AUTHENTICAT;
  8867. case 't':
  8868. if (last) {
  8869. return -1;
  8870. }
  8871. goto WWW_AUTHENTICAT;
  8872. default:
  8873. return -1;
  8874. }
  8875. WWW_AUTHENTICAT:
  8876. NEXT_CHAR();
  8877. switch (ch) {
  8878. case 'E':
  8879. if (last) {
  8880. return 74;
  8881. }
  8882. goto WWW_AUTHENTICATE;
  8883. case 'e':
  8884. if (last) {
  8885. return 74;
  8886. }
  8887. goto WWW_AUTHENTICATE;
  8888. default:
  8889. return -1;
  8890. }
  8891. X:
  8892. NEXT_CHAR();
  8893. switch (ch) {
  8894. case '-':
  8895. if (last) {
  8896. return -1;
  8897. }
  8898. goto X_;
  8899. default:
  8900. return -1;
  8901. }
  8902. X_:
  8903. NEXT_CHAR();
  8904. switch (ch) {
  8905. case 'F':
  8906. if (last) {
  8907. return -1;
  8908. }
  8909. goto X_F;
  8910. case 'f':
  8911. if (last) {
  8912. return -1;
  8913. }
  8914. goto X_F;
  8915. default:
  8916. return -1;
  8917. }
  8918. X_F:
  8919. NEXT_CHAR();
  8920. switch (ch) {
  8921. case 'O':
  8922. if (last) {
  8923. return -1;
  8924. }
  8925. goto X_FO;
  8926. case 'o':
  8927. if (last) {
  8928. return -1;
  8929. }
  8930. goto X_FO;
  8931. default:
  8932. return -1;
  8933. }
  8934. X_FO:
  8935. NEXT_CHAR();
  8936. switch (ch) {
  8937. case 'R':
  8938. if (last) {
  8939. return -1;
  8940. }
  8941. goto X_FOR;
  8942. case 'r':
  8943. if (last) {
  8944. return -1;
  8945. }
  8946. goto X_FOR;
  8947. default:
  8948. return -1;
  8949. }
  8950. X_FOR:
  8951. NEXT_CHAR();
  8952. switch (ch) {
  8953. case 'W':
  8954. if (last) {
  8955. return -1;
  8956. }
  8957. goto X_FORW;
  8958. case 'w':
  8959. if (last) {
  8960. return -1;
  8961. }
  8962. goto X_FORW;
  8963. default:
  8964. return -1;
  8965. }
  8966. X_FORW:
  8967. NEXT_CHAR();
  8968. switch (ch) {
  8969. case 'A':
  8970. if (last) {
  8971. return -1;
  8972. }
  8973. goto X_FORWA;
  8974. case 'a':
  8975. if (last) {
  8976. return -1;
  8977. }
  8978. goto X_FORWA;
  8979. default:
  8980. return -1;
  8981. }
  8982. X_FORWA:
  8983. NEXT_CHAR();
  8984. switch (ch) {
  8985. case 'R':
  8986. if (last) {
  8987. return -1;
  8988. }
  8989. goto X_FORWAR;
  8990. case 'r':
  8991. if (last) {
  8992. return -1;
  8993. }
  8994. goto X_FORWAR;
  8995. default:
  8996. return -1;
  8997. }
  8998. X_FORWAR:
  8999. NEXT_CHAR();
  9000. switch (ch) {
  9001. case 'D':
  9002. if (last) {
  9003. return -1;
  9004. }
  9005. goto X_FORWARD;
  9006. case 'd':
  9007. if (last) {
  9008. return -1;
  9009. }
  9010. goto X_FORWARD;
  9011. default:
  9012. return -1;
  9013. }
  9014. X_FORWARD:
  9015. NEXT_CHAR();
  9016. switch (ch) {
  9017. case 'E':
  9018. if (last) {
  9019. return -1;
  9020. }
  9021. goto X_FORWARDE;
  9022. case 'e':
  9023. if (last) {
  9024. return -1;
  9025. }
  9026. goto X_FORWARDE;
  9027. default:
  9028. return -1;
  9029. }
  9030. X_FORWARDE:
  9031. NEXT_CHAR();
  9032. switch (ch) {
  9033. case 'D':
  9034. if (last) {
  9035. return -1;
  9036. }
  9037. goto X_FORWARDED;
  9038. case 'd':
  9039. if (last) {
  9040. return -1;
  9041. }
  9042. goto X_FORWARDED;
  9043. default:
  9044. return -1;
  9045. }
  9046. X_FORWARDED:
  9047. NEXT_CHAR();
  9048. switch (ch) {
  9049. case '-':
  9050. if (last) {
  9051. return -1;
  9052. }
  9053. goto X_FORWARDED_;
  9054. default:
  9055. return -1;
  9056. }
  9057. X_FORWARDED_:
  9058. NEXT_CHAR();
  9059. switch (ch) {
  9060. case 'F':
  9061. if (last) {
  9062. return -1;
  9063. }
  9064. goto X_FORWARDED_F;
  9065. case 'f':
  9066. if (last) {
  9067. return -1;
  9068. }
  9069. goto X_FORWARDED_F;
  9070. case 'H':
  9071. if (last) {
  9072. return -1;
  9073. }
  9074. goto X_FORWARDED_H;
  9075. case 'h':
  9076. if (last) {
  9077. return -1;
  9078. }
  9079. goto X_FORWARDED_H;
  9080. case 'P':
  9081. if (last) {
  9082. return -1;
  9083. }
  9084. goto X_FORWARDED_P;
  9085. case 'p':
  9086. if (last) {
  9087. return -1;
  9088. }
  9089. goto X_FORWARDED_P;
  9090. default:
  9091. return -1;
  9092. }
  9093. X_FORWARDED_F:
  9094. NEXT_CHAR();
  9095. switch (ch) {
  9096. case 'O':
  9097. if (last) {
  9098. return -1;
  9099. }
  9100. goto X_FORWARDED_FO;
  9101. case 'o':
  9102. if (last) {
  9103. return -1;
  9104. }
  9105. goto X_FORWARDED_FO;
  9106. default:
  9107. return -1;
  9108. }
  9109. X_FORWARDED_FO:
  9110. NEXT_CHAR();
  9111. switch (ch) {
  9112. case 'R':
  9113. if (last) {
  9114. return 75;
  9115. }
  9116. goto X_FORWARDED_FOR;
  9117. case 'r':
  9118. if (last) {
  9119. return 75;
  9120. }
  9121. goto X_FORWARDED_FOR;
  9122. default:
  9123. return -1;
  9124. }
  9125. X_FORWARDED_H:
  9126. NEXT_CHAR();
  9127. switch (ch) {
  9128. case 'O':
  9129. if (last) {
  9130. return -1;
  9131. }
  9132. goto X_FORWARDED_HO;
  9133. case 'o':
  9134. if (last) {
  9135. return -1;
  9136. }
  9137. goto X_FORWARDED_HO;
  9138. default:
  9139. return -1;
  9140. }
  9141. X_FORWARDED_HO:
  9142. NEXT_CHAR();
  9143. switch (ch) {
  9144. case 'S':
  9145. if (last) {
  9146. return -1;
  9147. }
  9148. goto X_FORWARDED_HOS;
  9149. case 's':
  9150. if (last) {
  9151. return -1;
  9152. }
  9153. goto X_FORWARDED_HOS;
  9154. default:
  9155. return -1;
  9156. }
  9157. X_FORWARDED_HOS:
  9158. NEXT_CHAR();
  9159. switch (ch) {
  9160. case 'T':
  9161. if (last) {
  9162. return 76;
  9163. }
  9164. goto X_FORWARDED_HOST;
  9165. case 't':
  9166. if (last) {
  9167. return 76;
  9168. }
  9169. goto X_FORWARDED_HOST;
  9170. default:
  9171. return -1;
  9172. }
  9173. X_FORWARDED_P:
  9174. NEXT_CHAR();
  9175. switch (ch) {
  9176. case 'R':
  9177. if (last) {
  9178. return -1;
  9179. }
  9180. goto X_FORWARDED_PR;
  9181. case 'r':
  9182. if (last) {
  9183. return -1;
  9184. }
  9185. goto X_FORWARDED_PR;
  9186. default:
  9187. return -1;
  9188. }
  9189. X_FORWARDED_PR:
  9190. NEXT_CHAR();
  9191. switch (ch) {
  9192. case 'O':
  9193. if (last) {
  9194. return -1;
  9195. }
  9196. goto X_FORWARDED_PRO;
  9197. case 'o':
  9198. if (last) {
  9199. return -1;
  9200. }
  9201. goto X_FORWARDED_PRO;
  9202. default:
  9203. return -1;
  9204. }
  9205. X_FORWARDED_PRO:
  9206. NEXT_CHAR();
  9207. switch (ch) {
  9208. case 'T':
  9209. if (last) {
  9210. return -1;
  9211. }
  9212. goto X_FORWARDED_PROT;
  9213. case 't':
  9214. if (last) {
  9215. return -1;
  9216. }
  9217. goto X_FORWARDED_PROT;
  9218. default:
  9219. return -1;
  9220. }
  9221. X_FORWARDED_PROT:
  9222. NEXT_CHAR();
  9223. switch (ch) {
  9224. case 'O':
  9225. if (last) {
  9226. return 77;
  9227. }
  9228. goto X_FORWARDED_PROTO;
  9229. case 'o':
  9230. if (last) {
  9231. return 77;
  9232. }
  9233. goto X_FORWARDED_PROTO;
  9234. default:
  9235. return -1;
  9236. }
  9237. ACCEPT_CHARSET:
  9238. ACCEPT_ENCODING:
  9239. ACCEPT_LANGUAGE:
  9240. ACCEPT_RANGES:
  9241. ACCESS_CONTROL_ALLOW_CREDENTIALS:
  9242. ACCESS_CONTROL_ALLOW_HEADERS:
  9243. ACCESS_CONTROL_ALLOW_METHODS:
  9244. ACCESS_CONTROL_ALLOW_ORIGIN:
  9245. ACCESS_CONTROL_EXPOSE_HEADERS:
  9246. ACCESS_CONTROL_MAX_AGE:
  9247. ACCESS_CONTROL_REQUEST_HEADERS:
  9248. ACCESS_CONTROL_REQUEST_METHOD:
  9249. AGE:
  9250. ALLOW:
  9251. AUTHORIZATION:
  9252. CACHE_CONTROL:
  9253. CONNECTION:
  9254. CONTENT_DISPOSITION:
  9255. CONTENT_ENCODING:
  9256. CONTENT_LANGUAGE:
  9257. CONTENT_LENGTH:
  9258. CONTENT_LOCATION:
  9259. CONTENT_MD5:
  9260. CONTENT_RANGE:
  9261. CONTENT_TRANSFER_ENCODING:
  9262. CONTENT_TYPE:
  9263. COOKIE:
  9264. DATE:
  9265. DESTINATION:
  9266. DIGEST:
  9267. ETAG:
  9268. EXPECT:
  9269. EXPIRES:
  9270. FORWARDED:
  9271. FROM:
  9272. HOST:
  9273. IF_MATCH:
  9274. IF_MODIFIED_SINCE:
  9275. IF_NONE_MATCH:
  9276. IF_RANGE:
  9277. IF_UNMODIFIED_SINCE:
  9278. KEEP_ALIVE:
  9279. LAST_EVENT_ID:
  9280. LAST_MODIFIED:
  9281. LINK:
  9282. LOCATION:
  9283. MAX_FORWARDS:
  9284. ORIGIN:
  9285. PRAGMA:
  9286. PROXY_AUTHENTICATE:
  9287. RANGE:
  9288. REFERER:
  9289. RETRY_AFTER:
  9290. SEC_WEBSOCKET_ACCEPT:
  9291. SEC_WEBSOCKET_EXTENSIONS:
  9292. SEC_WEBSOCKET_KEY1:
  9293. SEC_WEBSOCKET_PROTOCOL:
  9294. SEC_WEBSOCKET_VERSION:
  9295. SERVER:
  9296. SET_COOKIE:
  9297. TE:
  9298. TRAILER:
  9299. TRANSFER_ENCODING:
  9300. UPGRADE:
  9301. URI:
  9302. USER_AGENT:
  9303. VARY:
  9304. VIA:
  9305. WANT_DIGEST:
  9306. WARNING:
  9307. WEBSOCKET:
  9308. WWW_AUTHENTICATE:
  9309. X_FORWARDED_FOR:
  9310. X_FORWARDED_HOST:
  9311. X_FORWARDED_PROTO:
  9312. missing:
  9313. /* nothing found */
  9314. return -1;
  9315. }