1#line 1 "dhcp6_lexer.cc"
3#line 3 "dhcp6_lexer.cc"
5#define YY_INT_ALIGNED short int
12#define yy_create_buffer parser6__create_buffer
13#define yy_delete_buffer parser6__delete_buffer
14#define yy_scan_buffer parser6__scan_buffer
15#define yy_scan_string parser6__scan_string
16#define yy_scan_bytes parser6__scan_bytes
17#define yy_init_buffer parser6__init_buffer
18#define yy_flush_buffer parser6__flush_buffer
19#define yy_load_buffer_state parser6__load_buffer_state
20#define yy_switch_to_buffer parser6__switch_to_buffer
21#define yypush_buffer_state parser6_push_buffer_state
22#define yypop_buffer_state parser6_pop_buffer_state
23#define yyensure_buffer_stack parser6_ensure_buffer_stack
24#define yy_flex_debug parser6__flex_debug
25#define yyin parser6_in
26#define yyleng parser6_leng
27#define yylex parser6_lex
28#define yylineno parser6_lineno
29#define yyout parser6_out
30#define yyrestart parser6_restart
31#define yytext parser6_text
32#define yywrap parser6_wrap
33#define yyalloc parser6_alloc
34#define yyrealloc parser6_realloc
35#define yyfree parser6_free
42#define YY_FLEX_MAJOR_VERSION 2
43#define YY_FLEX_MINOR_VERSION 6
44#define YY_FLEX_SUBMINOR_VERSION 4
45#if YY_FLEX_SUBMINOR_VERSION > 0
53#ifdef yy_create_buffer
54#define parser6__create_buffer_ALREADY_DEFINED
56#define yy_create_buffer parser6__create_buffer
59#ifdef yy_delete_buffer
60#define parser6__delete_buffer_ALREADY_DEFINED
62#define yy_delete_buffer parser6__delete_buffer
66#define parser6__scan_buffer_ALREADY_DEFINED
68#define yy_scan_buffer parser6__scan_buffer
72#define parser6__scan_string_ALREADY_DEFINED
74#define yy_scan_string parser6__scan_string
78#define parser6__scan_bytes_ALREADY_DEFINED
80#define yy_scan_bytes parser6__scan_bytes
84#define parser6__init_buffer_ALREADY_DEFINED
86#define yy_init_buffer parser6__init_buffer
90#define parser6__flush_buffer_ALREADY_DEFINED
92#define yy_flush_buffer parser6__flush_buffer
95#ifdef yy_load_buffer_state
96#define parser6__load_buffer_state_ALREADY_DEFINED
98#define yy_load_buffer_state parser6__load_buffer_state
101#ifdef yy_switch_to_buffer
102#define parser6__switch_to_buffer_ALREADY_DEFINED
104#define yy_switch_to_buffer parser6__switch_to_buffer
107#ifdef yypush_buffer_state
108#define parser6_push_buffer_state_ALREADY_DEFINED
110#define yypush_buffer_state parser6_push_buffer_state
113#ifdef yypop_buffer_state
114#define parser6_pop_buffer_state_ALREADY_DEFINED
116#define yypop_buffer_state parser6_pop_buffer_state
119#ifdef yyensure_buffer_stack
120#define parser6_ensure_buffer_stack_ALREADY_DEFINED
122#define yyensure_buffer_stack parser6_ensure_buffer_stack
126#define parser6_lex_ALREADY_DEFINED
128#define yylex parser6_lex
132#define parser6_restart_ALREADY_DEFINED
134#define yyrestart parser6_restart
138#define parser6_lex_init_ALREADY_DEFINED
140#define yylex_init parser6_lex_init
143#ifdef yylex_init_extra
144#define parser6_lex_init_extra_ALREADY_DEFINED
146#define yylex_init_extra parser6_lex_init_extra
150#define parser6_lex_destroy_ALREADY_DEFINED
152#define yylex_destroy parser6_lex_destroy
156#define parser6_get_debug_ALREADY_DEFINED
158#define yyget_debug parser6_get_debug
162#define parser6_set_debug_ALREADY_DEFINED
164#define yyset_debug parser6_set_debug
168#define parser6_get_extra_ALREADY_DEFINED
170#define yyget_extra parser6_get_extra
174#define parser6_set_extra_ALREADY_DEFINED
176#define yyset_extra parser6_set_extra
180#define parser6_get_in_ALREADY_DEFINED
182#define yyget_in parser6_get_in
186#define parser6_set_in_ALREADY_DEFINED
188#define yyset_in parser6_set_in
192#define parser6_get_out_ALREADY_DEFINED
194#define yyget_out parser6_get_out
198#define parser6_set_out_ALREADY_DEFINED
200#define yyset_out parser6_set_out
204#define parser6_get_leng_ALREADY_DEFINED
206#define yyget_leng parser6_get_leng
210#define parser6_get_text_ALREADY_DEFINED
212#define yyget_text parser6_get_text
216#define parser6_get_lineno_ALREADY_DEFINED
218#define yyget_lineno parser6_get_lineno
222#define parser6_set_lineno_ALREADY_DEFINED
224#define yyset_lineno parser6_set_lineno
228#define parser6_wrap_ALREADY_DEFINED
230#define yywrap parser6_wrap
236#define parser6_alloc_ALREADY_DEFINED
238#define yyalloc parser6_alloc
242#define parser6_realloc_ALREADY_DEFINED
244#define yyrealloc parser6_realloc
248#define parser6_free_ALREADY_DEFINED
250#define yyfree parser6_free
256#define parser6_text_ALREADY_DEFINED
258#define yytext parser6_text
262#define parser6_leng_ALREADY_DEFINED
264#define yyleng parser6_leng
268#define parser6_in_ALREADY_DEFINED
270#define yyin parser6_in
274#define parser6_out_ALREADY_DEFINED
276#define yyout parser6_out
280#define parser6__flex_debug_ALREADY_DEFINED
282#define yy_flex_debug parser6__flex_debug
286#define parser6_lineno_ALREADY_DEFINED
288#define yylineno parser6_lineno
315#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
320#ifndef __STDC_LIMIT_MACROS
321#define __STDC_LIMIT_MACROS 1
341#define INT8_MIN (-128)
344#define INT16_MIN (-32767-1)
347#define INT32_MIN (-2147483647-1)
350#define INT8_MAX (127)
353#define INT16_MAX (32767)
356#define INT32_MAX (2147483647)
359#define UINT8_MAX (255U)
362#define UINT16_MAX (65535U)
365#define UINT32_MAX (4294967295U)
369#define SIZE_MAX (~(size_t)0)
385#if defined(__GNUC__) && __GNUC__ >= 3
386#define yynoreturn __attribute__((__noreturn__))
400#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
414#define BEGIN (yy_start) = 1 + 2 *
419#define YY_START (((yy_start) - 1) / 2)
420#define YYSTATE YY_START
422#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
424#define YY_NEW_FILE yyrestart( yyin )
425#define YY_END_OF_BUFFER_CHAR 0
434#define YY_BUF_SIZE 32768
436#define YY_BUF_SIZE 16384
442#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
444#ifndef YY_TYPEDEF_YY_BUFFER_STATE
445#define YY_TYPEDEF_YY_BUFFER_STATE
449#ifndef YY_TYPEDEF_YY_SIZE_T
450#define YY_TYPEDEF_YY_SIZE_T
464#define EOB_ACT_CONTINUE_SCAN 0
465#define EOB_ACT_END_OF_FILE 1
466#define EOB_ACT_LAST_MATCH 2
468 #define YY_LESS_LINENO(n)
469 #define YY_LINENO_REWIND_TO(ptr)
476 int yyless_macro_arg = (n); \
477 YY_LESS_LINENO(yyless_macro_arg);\
478 *yy_cp = (yy_hold_char); \
479 YY_RESTORE_YY_MORE_OFFSET \
480 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
481 YY_DO_BEFORE_ACTION; \
484#define unput(c) yyunput( c, (yytext_ptr) )
486#ifndef YY_STRUCT_YY_BUFFER_STATE
487#define YY_STRUCT_YY_BUFFER_STATE
539#define YY_BUFFER_NEW 0
540#define YY_BUFFER_NORMAL 1
551#define YY_BUFFER_EOF_PENDING 2
561static size_t yy_buffer_stack_top = 0;
562static size_t yy_buffer_stack_max = 0;
575#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
576 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
581#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
588static char yy_hold_char;
589static int yy_n_chars;
593static char *yy_c_buf_p = NULL;
594static int yy_init = 0;
595static int yy_start = 0;
600static int yy_did_buffer_switch_on_eof;
616#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
628#define yy_new_buffer yy_create_buffer
629#define yy_set_interactive(is_interactive) \
631 if ( ! YY_CURRENT_BUFFER ){ \
632 yyensure_buffer_stack (); \
633 YY_CURRENT_BUFFER_LVALUE = \
634 yy_create_buffer( yyin, YY_BUF_SIZE ); \
636 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
638#define yy_set_bol(at_bol) \
640 if ( ! YY_CURRENT_BUFFER ){\
641 yyensure_buffer_stack (); \
642 YY_CURRENT_BUFFER_LVALUE = \
643 yy_create_buffer( yyin, YY_BUF_SIZE ); \
645 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
647#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
652#define parser6_wrap() (1)
653#define YY_SKIP_YYWRAP
669#define yytext_ptr yytext
677static int yy_get_next_buffer (
void );
678static void yynoreturn yy_fatal_error (
const char* msg );
685#define YY_DO_BEFORE_ACTION \
686 (yytext_ptr) = yy_bp; \
688 yyleng = (int) (yy_cp - yy_bp); \
689 (yy_hold_char) = *yy_cp; \
692 (yy_c_buf_p) = yy_cp;
694#define YY_NUM_RULES 226
695#define YY_END_OF_BUFFER 227
705 219, 219, 0, 0, 0, 0, 0, 0, 0, 0,
706 227, 225, 10, 11, 225, 1, 219, 216, 219, 219,
707 225, 218, 217, 225, 225, 225, 225, 225, 212, 213,
708 225, 225, 225, 214, 215, 5, 5, 5, 225, 225,
709 225, 10, 11, 0, 0, 207, 0, 0, 0, 0,
710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
712 0, 0, 0, 0, 0, 0, 0, 0, 1, 219,
713 219, 0, 218, 219, 3, 2, 6, 0, 219, 0,
714 0, 0, 0, 0, 0, 4, 0, 0, 9, 0,
716 208, 0, 0, 0, 0, 0, 0, 0, 0, 0,
717 0, 0, 0, 0, 0, 0, 210, 0, 0, 0,
718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
719 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
720 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
721 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
723 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
724 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
725 0, 0, 8, 0, 0, 0, 176, 0, 0, 177,
727 0, 0, 0, 0, 0, 0, 0, 0, 209, 211,
728 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
729 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
730 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
731 0, 0, 0, 0, 0, 128, 0, 0, 0, 0,
732 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
734 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
735 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
739 0, 0, 0, 224, 222, 0, 221, 220, 0, 0,
740 0, 0, 0, 0, 175, 0, 0, 23, 0, 22,
741 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
742 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
743 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
744 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
745 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
746 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
747 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
749 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
750 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
753 0, 0, 223, 220, 0, 0, 0, 0, 0, 24,
754 0, 0, 26, 0, 0, 0, 0, 0, 0, 0,
755 0, 0, 0, 0, 133, 0, 0, 0, 0, 0,
756 0, 111, 0, 0, 0, 0, 0, 0, 0, 161,
757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
758 0, 56, 0, 0, 0, 0, 0, 0, 0, 0,
760 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
761 0, 0, 0, 0, 0, 0, 0, 0, 0, 110,
762 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
763 0, 0, 0, 0, 0, 121, 0, 0, 57, 0,
764 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
765 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
766 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
767 0, 0, 155, 0, 180, 0, 50, 0, 54, 0,
768 0, 0, 0, 0, 0, 32, 29, 28, 0, 0,
769 0, 0, 0, 169, 0, 0, 0, 0, 0, 0,
771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
772 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
773 0, 0, 0, 0, 0, 0, 0, 0, 0, 146,
774 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
775 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
776 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
777 52, 0, 0, 27, 0, 0, 0, 0, 0, 0,
778 0, 0, 0, 0, 0, 0, 0, 0, 114, 0,
779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
780 0, 170, 0, 0, 0, 0, 0, 0, 0, 0,
782 0, 0, 0, 0, 0, 165, 0, 0, 0, 0,
783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
784 7, 30, 0, 0, 0, 0, 0, 0, 0, 0,
785 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
786 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
787 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
789 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
790 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
791 0, 148, 0, 0, 0, 0, 0, 0, 0, 0,
793 0, 0, 145, 0, 0, 0, 0, 0, 0, 0,
794 0, 0, 0, 0, 0, 0, 116, 0, 0, 0,
795 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
797 0, 0, 0, 0, 125, 0, 0, 0, 0, 0,
798 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800 124, 0, 0, 0, 0, 0, 0, 0, 0, 0,
801 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
804 0, 0, 0, 164, 0, 0, 0, 0, 0, 0,
805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
806 173, 142, 0, 0, 0, 0, 0, 0, 0, 147,
807 51, 0, 0, 0, 0, 0, 0, 65, 0, 0,
808 0, 0, 0, 0, 0, 0, 149, 0, 0, 58,
809 122, 0, 0, 0, 0, 0, 0, 0, 0, 0,
810 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
811 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
812 0, 0, 0, 0, 105, 0, 0, 0, 0, 0,
813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
815 0, 0, 0, 0, 0, 200, 0, 0, 0, 0,
816 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
817 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
818 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
819 0, 0, 0, 0, 0, 163, 0, 0, 0, 0,
820 0, 0, 0, 74, 0, 0, 0, 0, 0, 0,
821 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
822 0, 0, 0, 0, 0, 0, 0, 0, 0, 55,
823 0, 115, 0, 0, 0, 160, 0, 0, 0, 0,
824 49, 0, 0, 0, 0, 0, 0, 0, 0, 0,
826 0, 0, 0, 0, 0, 0, 0, 0, 0, 151,
827 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
828 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
829 0, 87, 0, 0, 0, 0, 73, 0, 0, 0,
830 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
831 0, 0, 0, 0, 0, 0, 0, 0, 0, 201,
832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
833 0, 0, 0, 0, 0, 0, 0, 0, 0, 126,
834 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
837 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
838 0, 0, 0, 0, 0, 36, 0, 0, 0, 0,
839 0, 0, 0, 0, 0, 0, 0, 15, 0, 0,
840 174, 13, 0, 0, 0, 0, 0, 0, 0, 0,
841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
843 0, 0, 0, 0, 0, 0, 0, 0, 166, 0,
844 0, 0, 0, 0, 0, 0, 0, 0, 0, 150,
845 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
846 0, 0, 0, 0, 0, 0, 0, 0, 0, 162,
848 178, 0, 35, 0, 0, 0, 0, 0, 0, 0,
849 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
850 19, 0, 113, 0, 0, 108, 0, 0, 0, 172,
851 0, 0, 53, 0, 117, 199, 0, 0, 0, 0,
852 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
853 0, 85, 0, 0, 0, 0, 0, 0, 0, 138,
854 139, 0, 0, 0, 0, 0, 0, 0, 0, 0,
855 0, 0, 0, 0, 112, 0, 0, 0, 75, 0,
856 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
857 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
859 0, 0, 0, 0, 168, 0, 0, 0, 0, 0,
860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
861 0, 0, 0, 134, 0, 0, 0, 0, 0, 0,
862 0, 0, 0, 0, 0, 109, 0, 0, 0, 0,
863 0, 0, 0, 0, 0, 0, 0, 0, 0, 82,
864 0, 0, 0, 0, 16, 0, 14, 0, 0, 196,
865 195, 0, 0, 0, 0, 0, 0, 0, 0, 0,
866 0, 0, 0, 0, 0, 0, 25, 0, 0, 0,
867 154, 0, 0, 0, 0, 0, 0, 0, 0, 0,
868 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
870 0, 189, 0, 0, 198, 0, 0, 0, 0, 0,
871 0, 0, 0, 0, 0, 0, 127, 0, 159, 0,
872 41, 0, 0, 59, 0, 0, 0, 0, 0, 0,
873 0, 0, 0, 0, 18, 0, 0, 0, 0, 0,
874 88, 0, 129, 61, 83, 0, 0, 167, 0, 0,
875 158, 0, 0, 0, 0, 0, 0, 0, 0, 0,
876 0, 0, 0, 0, 72, 0, 123, 0, 0, 0,
877 0, 0, 0, 0, 141, 0, 0, 0, 205, 0,
878 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
879 0, 0, 0, 0, 0, 120, 0, 0, 0, 0,
881 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
883 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
884 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
885 0, 0, 0, 0, 0, 0, 0, 0, 156, 0,
886 0, 0, 62, 0, 0, 0, 0, 0, 0, 0,
887 152, 46, 0, 0, 0, 194, 33, 0, 0, 0,
888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
889 0, 12, 0, 0, 0, 0, 0, 0, 0, 0,
890 0, 44, 0, 0, 0, 43, 0, 0, 17, 0,
892 0, 0, 71, 0, 0, 0, 0, 0, 144, 143,
893 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
894 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
895 0, 0, 79, 0, 0, 0, 0, 0, 140, 0,
896 0, 0, 60, 0, 0, 0, 0, 0, 0, 0,
897 0, 0, 0, 0, 0, 0, 0, 118, 0, 0,
898 0, 0, 0, 171, 0, 0, 0, 45, 0, 0,
899 0, 0, 0, 0, 0, 0, 0, 0, 190, 0,
900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
901 0, 0, 0, 0, 0, 107, 0, 66, 0, 0,
903 0, 0, 0, 100, 0, 0, 31, 0, 47, 0,
904 0, 0, 0, 0, 0, 0, 0, 104, 0, 0,
905 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
906 0, 0, 0, 0, 0, 0, 0, 187, 0, 0,
907 0, 0, 157, 0, 0, 0, 0, 0, 0, 0,
908 0, 0, 0, 0, 69, 0, 67, 0, 0, 0,
909 0, 63, 192, 0, 0, 0, 0, 0, 0, 0,
910 0, 0, 0, 0, 0, 91, 0, 0, 0, 0,
911 0, 0, 0, 0, 0, 0, 0, 0, 0, 20,
912 34, 0, 0, 0, 0, 0, 0, 0, 0, 193,
914 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
915 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
916 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
917 197, 0, 0, 0, 0, 0, 0, 0, 0, 0,
918 0, 0, 0, 186, 0, 81, 0, 80, 0, 76,
919 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
920 0, 0, 0, 0, 0, 0, 101, 0, 137, 0,
921 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
922 0, 119, 0, 0, 0, 185, 0, 0, 0, 0,
923 0, 70, 0, 86, 0, 64, 0, 0, 130, 0,
925 0, 0, 0, 0, 0, 0, 0, 106, 0, 0,
926 0, 0, 0, 0, 0, 0, 0, 0, 97, 0,
927 0, 0, 0, 0, 42, 0, 0, 0, 0, 0,
928 0, 0, 0, 0, 0, 0, 0, 0, 68, 0,
929 0, 0, 0, 0, 0, 0, 0, 0, 95, 0,
930 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
931 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
932 0, 0, 0, 0, 0, 0, 0, 103, 48, 0,
933 0, 0, 96, 0, 0, 0, 0, 191, 0, 0,
934 0, 0, 203, 206, 78, 77, 0, 135, 153, 131,
936 0, 0, 0, 0, 0, 0, 0, 102, 0, 0,
937 92, 0, 0, 0, 0, 0, 0, 0, 0, 183,
938 0, 0, 0, 0, 0, 0, 188, 0, 0, 94,
939 0, 84, 0, 0, 0, 0, 0, 0, 132, 0,
940 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
941 21, 204, 0, 0, 0, 0, 0, 0, 0, 0,
942 0, 0, 0, 0, 0, 0, 0, 0, 0, 93,
943 0, 0, 0, 0, 39, 37, 0, 0, 0, 0,
944 98, 0, 0, 136, 0, 90, 0, 99, 0, 0,
945 0, 0, 0, 0, 0, 89, 0, 184, 38, 202,
950static const YY_CHAR yy_ec[256] =
952 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
953 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
954 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
955 1, 4, 5, 6, 7, 5, 5, 5, 5, 5,
956 5, 8, 9, 10, 11, 12, 13, 14, 15, 16,
957 14, 17, 14, 18, 14, 14, 14, 19, 5, 20,
958 5, 21, 22, 5, 23, 24, 25, 26, 27, 28,
959 5, 29, 30, 31, 32, 33, 5, 34, 35, 36,
960 5, 37, 38, 39, 40, 41, 42, 43, 44, 5,
961 45, 46, 47, 5, 48, 5, 49, 50, 51, 52,
963 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
964 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
965 73, 74, 75, 5, 76, 5, 5, 5, 5, 5,
966 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
967 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
968 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
969 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
970 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
971 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
972 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
974 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
975 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
976 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
977 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
978 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
982static const YY_CHAR yy_meta[77] =
984 1, 1, 2, 1, 1, 3, 1, 1, 1, 1,
985 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
986 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
987 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
988 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
989 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
990 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
996 0, 75, 21, 28, 39, 47, 53, 61, 95, 103,
997 2648, 2649, 31, 2644, 151, 0, 216, 2649, 223, 230,
998 13, 237, 2649, 2624, 124, 17, 4, 34, 2649, 2649,
999 23, 43, 64, 2649, 2649, 2649, 56, 2632, 2582, 0,
1000 2622, 106, 2639, 2, 268, 2649, 85, 90, 2585, 2606,
1001 98, 77, 2606, 235, 231, 97, 207, 298, 226, 294,
1002 293, 62, 254, 203, 223, 2585, 252, 306, 338, 196,
1003 319, 2568, 21, 339, 361, 332, 2587, 324, 0, 405,
1004 421, 435, 445, 450, 2649, 0, 2649, 464, 469, 240,
1005 256, 244, 323, 336, 272, 2649, 2584, 2628, 2649, 272,
1007 2649, 463, 339, 347, 2582, 2626, 337, 17, 372, 372,
1008 2620, 379, 376, 390, 377, 2624, 0, 527, 428, 2563,
1009 440, 2562, 2563, 2569, 379, 2555, 2556, 2561, 76, 2571,
1010 2564, 2554, 422, 438, 63, 434, 2546, 2607, 16, 2549,
1011 2605, 2542, 180, 2563, 2563, 2557, 424, 2550, 2548, 2549,
1012 2541, 2546, 2540, 451, 395, 2537, 2536, 444, 2592, 2536,
1013 362, 2548, 2547, 2535, 497, 2536, 452, 2548, 2545, 2546,
1014 218, 2544, 2582, 2581, 471, 459, 2525, 2529, 465, 2525,
1015 2517, 2534, 2526, 2528, 0, 489, 503, 466, 499, 507,
1016 496, 2524, 2649, 535, 535, 2519, 2649, 501, 527, 2649,
1018 2576, 542, 545, 2575, 544, 2574, 538, 2573, 2649, 2649,
1019 587, 2515, 550, 2528, 2520, 2524, 2525, 2505, 2516, 2518,
1020 2517, 521, 462, 2558, 2519, 2500, 2497, 2505, 2511, 2499,
1021 2510, 2501, 2510, 2510, 2505, 2497, 2499, 2502, 2482, 2486,
1022 2500, 2492, 2482, 2485, 2499, 2649, 2485, 2493, 82, 2534,
1023 2477, 2486, 2531, 2475, 2485, 2528, 563, 2484, 2526, 2468,
1024 2470, 2481, 2522, 556, 2478, 2458, 2473, 2465, 2469, 479,
1025 2460, 2458, 360, 2458, 2464, 2455, 2454, 2467, 2451, 2462,
1026 2466, 2465, 2459, 527, 2466, 2461, 2444, 2459, 2445, 2453,
1027 2457, 2438, 2454, 2440, 2446, 2453, 2435, 527, 2440, 2437,
1029 2436, 610, 2435, 2430, 2444, 2443, 565, 2442, 2445, 2427,
1030 2435, 2423, 567, 2649, 2649, 571, 2649, 2649, 2421, 544,
1031 575, 2471, 592, 2482, 2649, 569, 593, 2649, 2481, 2649,
1032 2475, 636, 2434, 582, 2411, 2430, 2413, 2430, 2469, 2426,
1033 2416, 2471, 2423, 2426, 2417, 2420, 2406, 2417, 617, 2459,
1034 2414, 2411, 2412, 614, 2460, 2392, 2404, 2399, 2396, 2392,
1035 2394, 2397, 2447, 2401, 2445, 2388, 636, 2401, 2401, 2384,
1036 2385, 2398, 2396, 2394, 2394, 2393, 2388, 2395, 2390, 2375,
1037 601, 2384, 2387, 2382, 604, 2381, 2377, 2430, 592, 592,
1038 2386, 2423, 2370, 2363, 2378, 2369, 2376, 2357, 2374, 2366,
1040 2362, 2367, 637, 2417, 2367, 616, 2368, 2368, 2366, 50,
1041 2356, 2368, 610, 2343, 2344, 2357, 2347, 2339, 2343, 2357,
1042 622, 2343, 2355, 2354, 2353, 2348, 2393, 2350, 2349, 2348,
1043 2347, 2330, 2338, 2391, 2347, 2389, 2326, 2387, 2326, 671,
1044 2339, 2337, 2649, 2649, 2337, 632, 2377, 2381, 2380, 2649,
1045 2379, 630, 2649, 644, 695, 2335, 657, 2377, 2371, 2321,
1046 2323, 2325, 2312, 2309, 2649, 2314, 2307, 2319, 2322, 2309,
1047 2308, 2649, 2318, 674, 2309, 2306, 2318, 629, 2303, 2649,
1048 2354, 2311, 2296, 2298, 2309, 2307, 2307, 2301, 685, 2291,
1049 2345, 2649, 2289, 2305, 2342, 2346, 2299, 2293, 2295, 2296,
1051 2280, 2289, 2334, 2282, 2281, 2276, 2275, 2277, 2273, 2269,
1052 639, 2288, 2262, 2269, 2274, 2267, 2283, 2320, 2324, 2649,
1053 2266, 2262, 694, 2270, 2269, 2263, 2256, 2255, 2269, 2269,
1054 2257, 2253, 2258, 2254, 2249, 2649, 2258, 2308, 2649, 2247,
1055 2246, 2239, 2299, 2298, 2240, 2239, 2244, 2253, 2247, 2241,
1056 2250, 720, 2290, 2234, 2229, 2287, 2224, 2230, 686, 2244,
1057 2237, 2241, 2224, 2285, 2223, 2223, 2277, 2219, 2220, 2219,
1058 2217, 2234, 2649, 2230, 2649, 2270, 2649, 2218, 2649, 2228,
1059 2267, 2266, 2223, 2269, 708, 2649, 2649, 2649, 676, 693,
1060 670, 2206, 727, 2649, 211, 2224, 2204, 2214, 2259, 2258,
1062 2200, 2210, 2255, 2197, 2204, 2197, 2205, 2198, 2207, 2189,
1063 2189, 2204, 2203, 2187, 650, 2201, 2200, 2184, 2199, 2181,
1064 2231, 2193, 2236, 2177, 2179, 2191, 2191, 2189, 2189, 2649,
1065 2174, 2186, 2178, 2184, 2175, 2183, 2649, 2168, 2179, 2183,
1066 2165, 2177, 2169, 664, 2160, 2159, 2153, 2158, 2155, 2170,
1067 2169, 2170, 2149, 2159, 2165, 2211, 2163, 2162, 2154, 2145,
1068 2649, 2146, 2148, 2649, 2143, 2149, 2154, 2196, 747, 2195,
1069 2137, 2193, 2137, 2140, 2138, 2140, 2131, 2146, 2649, 2144,
1070 2130, 748, 2127, 2143, 2140, 2135, 2131, 2179, 2128, 2135,
1071 2176, 2649, 2119, 2117, 2131, 2134, 2119, 2170, 2169, 2113,
1073 2167, 2124, 2108, 2164, 2163, 2649, 2105, 2119, 2118, 387,
1074 2119, 2118, 2115, 2099, 2155, 2116, 2111, 2100, 2102, 2093,
1075 2649, 2649, 691, 700, 719, 716, 733, 2097, 2092, 2109,
1076 2101, 2088, 2082, 2094, 2093, 2101, 2145, 2096, 713, 26,
1077 27, 200, 214, 278, 385, 403, 466, 511, 546, 567,
1078 592, 631, 623, 721, 709, 704, 715, 758, 710, 711,
1079 711, 716, 722, 764, 725, 775, 729, 732, 728, 720,
1080 735, 740, 737, 734, 741, 740, 728, 743, 741, 749,
1081 788, 747, 796, 797, 738, 751, 737, 747, 797, 752,
1082 805, 2649, 806, 759, 757, 759, 755, 749, 765, 813,
1084 809, 769, 2649, 759, 760, 759, 772, 762, 775, 822,
1085 778, 763, 825, 826, 766, 781, 2649, 775, 769, 764,
1086 775, 788, 779, 768, 774, 832, 793, 777, 777, 790,
1087 837, 781, 788, 800, 795, 800, 797, 844, 783, 795,
1088 796, 803, 794, 791, 2649, 860, 814, 815, 803, 817,
1089 807, 810, 821, 812, 818, 819, 847, 839, 868, 869,
1090 843, 816, 830, 812, 819, 833, 881, 835, 832, 830,
1091 2649, 834, 829, 844, 841, 827, 829, 848, 845, 845,
1092 847, 835, 842, 843, 853, 895, 859, 898, 858, 848,
1093 861, 847, 846, 852, 854, 849, 850, 856, 872, 855,
1095 912, 864, 914, 2649, 875, 867, 878, 876, 924, 863,
1096 865, 880, 881, 869, 867, 932, 886, 872, 878, 876,
1097 2649, 2649, 892, 891, 892, 897, 885, 895, 897, 2649,
1098 2649, 897, 899, 886, 904, 891, 893, 2649, 890, 908,
1099 894, 895, 891, 896, 914, 958, 2649, 916, 960, 2649,
1100 2649, 902, 916, 916, 964, 907, 911, 905, 921, 969,
1101 919, 909, 910, 906, 916, 920, 931, 926, 973, 929,
1102 922, 924, 920, 937, 927, 942, 925, 987, 941, 946,
1103 923, 946, 932, 931, 2649, 938, 940, 992, 993, 942,
1104 955, 996, 940, 955, 949, 973, 983, 971, 979, 991,
1106 1008, 954, 1006, 966, 1009, 2649, 1015, 955, 974, 964,
1107 963, 958, 959, 971, 966, 962, 980, 972, 967, 968,
1108 978, 987, 1026, 974, 973, 994, 986, 981, 1037, 1043,
1109 997, 988, 1002, 993, 1001, 1003, 988, 1004, 994, 1006,
1110 1003, 1001, 1013, 997, 998, 2649, 1014, 1017, 1000, 1002,
1111 1063, 1003, 1022, 2649, 1021, 1024, 1011, 1006, 1024, 1012,
1112 1068, 1023, 1019, 1016, 1072, 1018, 1074, 1033, 1019, 1037,
1113 1037, 1037, 1023, 1038, 1025, 1026, 1042, 1029, 1046, 2649,
1114 1030, 2649, 1039, 1089, 1039, 2649, 1049, 1042, 1098, 1042,
1115 2649, 1045, 1050, 1097, 1045, 1046, 1058, 1052, 1050, 1047,
1117 1062, 1110, 1051, 1052, 1113, 1114, 1055, 1067, 1060, 2649,
1118 1056, 1064, 1062, 1116, 1055, 1076, 1063, 1064, 1065, 1066,
1119 1072, 1080, 1071, 1085, 1086, 1087, 1102, 1131, 1114, 1106,
1120 1111, 2649, 1094, 1098, 1081, 1081, 2649, 1082, 1084, 1095,
1121 1085, 1105, 1104, 1095, 1106, 1152, 1091, 1103, 1112, 1105,
1122 1109, 1113, 1096, 1113, 1114, 1105, 1163, 1111, 1115, 2649,
1123 1165, 1111, 1129, 1111, 1111, 1132, 1129, 1172, 1118, 1136,
1124 1124, 1138, 1131, 1140, 1120, 1135, 1142, 1187, 1188, 2649,
1125 1138, 1190, 1144, 1130, 1140, 1150, 1134, 1154, 1137, 1139,
1126 1139, 1146, 1155, 1143, 1150, 1145, 1152, 1164, 1208, 1152,
1128 1210, 1152, 1169, 1213, 1163, 1164, 1153, 1217, 1165, 1162,
1129 1220, 1167, 1222, 1223, 1173, 2649, 1162, 1179, 1172, 1163,
1130 1182, 1176, 1171, 1181, 1177, 1172, 1190, 2649, 1174, 1170,
1131 2649, 2649, 1176, 1239, 1195, 1176, 1195, 1196, 1198, 1240,
1132 1190, 1247, 1248, 1198, 1203, 1197, 1195, 1206, 1188, 1193,
1133 1199, 1225, 1238, 1226, 1240, 1227, 1262, 1214, 1214, 1218,
1134 1266, 1206, 1206, 1209, 1226, 1221, 1225, 1220, 2649, 1217,
1135 1230, 1214, 1231, 1211, 1232, 1222, 1221, 1277, 1227, 2649,
1136 1241, 1243, 1246, 1230, 1239, 1243, 1248, 1234, 1297, 1247,
1137 1252, 1239, 1253, 1251, 1248, 1244, 1262, 1263, 1264, 2649,
1139 2649, 1262, 2649, 1264, 1249, 1260, 1251, 1270, 1263, 1261,
1140 1316, 1270, 1267, 1314, 1275, 1264, 1271, 1276, 1273, 1279,
1141 2649, 1272, 2649, 1264, 1328, 2649, 1272, 1273, 1284, 2649,
1142 1285, 1273, 2649, 1283, 2649, 2649, 1273, 1274, 1277, 1291,
1143 1296, 1279, 1290, 1342, 1296, 1283, 1302, 1293, 1347, 1343,
1144 1349, 2649, 1297, 1294, 1352, 1353, 1307, 1308, 1310, 2649,
1145 2649, 1302, 1297, 1354, 1300, 1316, 1300, 1312, 1301, 1360,
1146 1343, 1344, 1336, 1369, 2649, 1323, 1314, 1325, 2649, 1373,
1147 1307, 1318, 1333, 1372, 1321, 1332, 1320, 1319, 1335, 1336,
1148 1333, 1380, 1340, 1342, 1331, 1341, 1347, 1335, 1335, 1395,
1150 1391, 1393, 1399, 1353, 2649, 1355, 1354, 1356, 1347, 1350,
1151 1359, 1356, 1346, 1349, 1349, 1411, 1355, 1413, 1357, 1415,
1152 1355, 1360, 1418, 2649, 1373, 1353, 1368, 1361, 1364, 1377,
1153 1380, 1379, 1377, 1429, 1380, 2649, 1376, 1377, 1429, 1373,
1154 1436, 1389, 1438, 1439, 1440, 1381, 1391, 1443, 1397, 2649,
1155 1389, 1446, 1387, 1387, 2649, 1405, 2649, 1402, 1393, 2649,
1156 2649, 1406, 1389, 1409, 1410, 1396, 1398, 1460, 1407, 1462,
1157 1408, 1402, 1429, 1447, 1462, 1448, 2649, 1468, 1416, 1466,
1158 2649, 1411, 1473, 1420, 1414, 1411, 1414, 1416, 1412, 1475,
1159 1435, 1477, 1427, 1439, 1442, 1439, 1431, 1434, 1427, 1490,
1161 1437, 2649, 1436, 1435, 2649, 1437, 1499, 1449, 1440, 1497,
1162 1456, 1458, 1458, 1455, 1502, 1461, 2649, 1453, 2649, 1454,
1163 2649, 1464, 1456, 2649, 1508, 1467, 1468, 1465, 1512, 1457,
1164 1473, 1516, 1475, 1467, 2649, 1464, 1464, 1465, 1466, 1523,
1165 2649, 1482, 2649, 2649, 2649, 1525, 1469, 2649, 1486, 1471,
1166 2649, 1485, 1473, 1537, 1481, 1474, 1479, 1490, 1501, 1494,
1167 1500, 1490, 1548, 1498, 2649, 1507, 2649, 1504, 1552, 1529,
1168 1530, 1536, 1521, 1529, 2649, 1512, 1497, 1560, 2649, 1561,
1169 1515, 1520, 1502, 1565, 1566, 1507, 1563, 1527, 1520, 1516,
1170 1509, 1517, 1569, 1524, 1525, 2649, 1515, 1531, 1529, 1586,
1172 2649, 1521, 1583, 1544, 1544, 1586, 1531, 1536, 1534, 1596,
1173 1549, 1537, 1599, 1595, 1547, 1602, 1560, 1549, 1543, 1606,
1174 1545, 1554, 1547, 1561, 1564, 1612, 1613, 1563, 1561, 1554,
1175 1552, 1613, 1614, 1615, 1567, 1566, 1566, 1561, 1562, 2649,
1176 1570, 1576, 1567, 1568, 1567, 1569, 1627, 1570, 2649, 1566,
1177 1584, 1636, 2649, 1604, 1618, 1617, 1606, 1608, 1642, 1592,
1178 2649, 2649, 1583, 1594, 1646, 2649, 2649, 1600, 1590, 1595,
1179 1593, 1646, 1601, 1606, 1592, 1595, 1611, 1601, 1599, 1599,
1180 1601, 2649, 1669, 1604, 1613, 1660, 1609, 1672, 1617, 1628,
1181 1629, 2649, 1677, 1627, 1674, 2649, 1622, 1630, 2649, 1621,
1183 1636, 1624, 2649, 1634, 1635, 1636, 1688, 1643, 2649, 2649,
1184 1622, 1640, 1641, 1650, 1632, 1638, 1651, 1640, 1693, 1642,
1185 1638, 1643, 1640, 1641, 1699, 1705, 1652, 1707, 1657, 1647,
1186 1663, 1656, 2649, 1689, 1713, 1695, 1710, 1716, 2649, 1662,
1187 1718, 1657, 2649, 1659, 1661, 1671, 1718, 1663, 1678, 1665,
1188 1727, 1681, 1667, 1674, 1674, 1685, 1686, 2649, 1680, 1675,
1189 1689, 1675, 1687, 2649, 1736, 1684, 1681, 2649, 1695, 1682,
1190 1703, 1699, 1701, 1749, 1699, 1696, 1704, 1698, 2649, 1754,
1191 1708, 1701, 1702, 1707, 1708, 1702, 1707, 1718, 1702, 1711,
1192 1760, 1766, 1716, 1768, 1714, 2649, 1708, 2649, 1715, 1772,
1194 1773, 1770, 1771, 2649, 1753, 1759, 2649, 1731, 2649, 1775,
1195 1724, 1735, 1736, 1721, 1722, 1730, 1787, 2649, 1732, 1784,
1196 1785, 1737, 1732, 1750, 1747, 1738, 1751, 1746, 1743, 1748,
1197 1746, 1801, 1802, 1747, 1746, 1760, 1747, 2649, 1762, 1763,
1198 1764, 1765, 2649, 1813, 1763, 1768, 1754, 1762, 1756, 1776,
1199 1777, 1758, 1759, 1766, 2649, 1768, 2649, 1782, 1779, 1822,
1200 1780, 2649, 2649, 1784, 1810, 1811, 1809, 1772, 1772, 1781,
1201 1788, 1781, 1780, 1791, 1778, 2649, 1794, 1782, 1785, 1844,
1202 1781, 1800, 1791, 1803, 1796, 1795, 1804, 1806, 1810, 2649,
1203 2649, 1803, 1794, 1796, 1860, 1800, 1862, 1801, 1864, 2649,
1205 1803, 1866, 1862, 1821, 1818, 1809, 1817, 1828, 1815, 1826,
1206 1812, 1810, 1818, 1817, 1822, 1814, 1859, 1883, 1865, 1885,
1207 1835, 1824, 1837, 1827, 1844, 1843, 1887, 1828, 1847, 1848,
1208 2649, 1853, 1846, 1898, 1852, 1839, 1854, 1902, 1856, 1859,
1209 1846, 1855, 1856, 2649, 1908, 2649, 1860, 2649, 1912, 2649,
1210 1851, 1914, 1858, 1855, 1917, 1862, 1914, 1915, 1874, 1917,
1211 1860, 1864, 1882, 1926, 1882, 1909, 2649, 1905, 2649, 1875,
1212 1869, 1866, 1928, 1891, 1884, 1880, 1937, 1877, 1879, 1878,
1213 1885, 2649, 1881, 1943, 1884, 2649, 1889, 1899, 1884, 1892,
1214 1894, 2649, 1895, 2649, 1900, 2649, 1896, 1906, 2649, 1908,
1216 1909, 1900, 1959, 1900, 1910, 1895, 1908, 2649, 1910, 1941,
1217 1947, 1919, 1917, 1969, 1907, 1909, 1906, 1930, 2649, 1917,
1218 1924, 1925, 1928, 1917, 2649, 1974, 1918, 1926, 1935, 1934,
1219 1937, 1938, 1931, 1926, 1927, 1927, 1939, 1934, 2649, 1947,
1220 1935, 1991, 1939, 1951, 1979, 2000, 2001, 1945, 2649, 1945,
1221 1957, 2005, 1951, 1953, 1951, 1952, 2010, 1960, 1947, 1962,
1222 1967, 2015, 2016, 2017, 2018, 1972, 2020, 2021, 2022, 1963,
1223 1967, 1964, 1980, 1963, 1975, 1969, 2031, 2649, 2649, 1976,
1224 1987, 2034, 2649, 1988, 1973, 1991, 1982, 2649, 1983, 1997,
1225 1993, 1986, 2649, 2649, 2649, 2649, 2043, 2649, 2649, 2649,
1227 1983, 1991, 1986, 2042, 2005, 2002, 2050, 2649, 2046, 2009,
1228 2649, 2053, 1992, 2055, 1995, 2008, 2007, 2008, 1998, 2649,
1229 1999, 2062, 2012, 2021, 2014, 2061, 2649, 2012, 2006, 2649,
1230 2018, 2649, 2065, 2071, 2010, 2026, 2074, 2075, 2649, 2029,
1231 2023, 2016, 2036, 2023, 2035, 2026, 2030, 2649, 2080, 2026,
1232 2649, 2649, 2026, 2034, 2084, 2041, 2034, 2046, 2093, 2038,
1233 2038, 2034, 2036, 2098, 2099, 2038, 2054, 2039, 2056, 2649,
1234 2104, 2048, 2055, 2107, 2649, 2649, 2057, 2109, 2054, 2111,
1235 2649, 2059, 2058, 2649, 2059, 2649, 2053, 2649, 2053, 2070,
1236 2071, 2119, 2062, 2121, 2122, 2649, 2123, 2649, 2649, 2649,
1238 2649, 2129, 2132, 2135, 2136, 2138, 2141, 2144, 2147
1243 2202, 2202, 2203, 2203, 2202, 2202, 2202, 2202, 2202, 2202,
1244 2201, 2201, 2201, 2201, 2201, 2204, 2201, 2201, 2201, 2201,
1245 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1246 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2205,
1247 2201, 2201, 2201, 2206, 15, 2201, 45, 45, 45, 45,
1248 45, 45, 45, 45, 45, 45, 45, 2207, 45, 45,
1249 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1250 45, 45, 45, 45, 45, 45, 45, 45, 2204, 2201,
1251 2201, 2201, 2201, 2201, 2201, 2208, 2201, 2201, 2201, 2201,
1252 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2205, 2201, 2206,
1254 2201, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1255 45, 45, 45, 45, 45, 2209, 45, 2207, 45, 45,
1256 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1257 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1258 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1259 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1260 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1261 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1262 45, 45, 45, 45, 2208, 2201, 2201, 2201, 2201, 2201,
1263 2201, 2201, 2201, 45, 45, 45, 2201, 45, 45, 2201,
1265 45, 45, 45, 45, 45, 45, 45, 2209, 2201, 2201,
1266 118, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1267 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1268 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1269 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1270 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1271 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1272 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1273 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1274 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1276 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1277 45, 45, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 45,
1278 45, 45, 45, 45, 2201, 45, 45, 2201, 45, 2201,
1279 45, 118, 45, 45, 45, 45, 45, 45, 45, 45,
1280 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1281 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1282 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1283 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1284 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1285 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1287 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1288 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1289 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1290 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1291 45, 45, 2201, 2201, 2201, 45, 45, 45, 45, 2201,
1292 45, 45, 2201, 45, 118, 45, 45, 45, 45, 45,
1293 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1294 45, 2201, 45, 45, 45, 45, 45, 45, 45, 2201,
1295 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1296 45, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1298 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1299 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1300 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1301 45, 45, 45, 45, 45, 2201, 45, 45, 2201, 45,
1302 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1303 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1304 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1305 45, 45, 2201, 45, 2201, 45, 2201, 45, 2201, 45,
1306 45, 45, 2201, 45, 45, 2201, 2201, 2201, 45, 45,
1307 45, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1309 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1310 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1311 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1312 45, 45, 45, 45, 45, 45, 2201, 45, 45, 45,
1313 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1314 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1315 2201, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1316 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1317 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1318 45, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1320 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1321 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1322 2201, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1323 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1324 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1325 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1326 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1327 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1328 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1329 45, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1331 45, 45, 2201, 45, 45, 45, 45, 45, 45, 45,
1332 45, 45, 45, 45, 45, 45, 2201, 45, 45, 45,
1333 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1334 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1335 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1336 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1337 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1338 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1339 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1340 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1342 45, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1343 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1344 2201, 2201, 45, 45, 45, 45, 45, 45, 45, 2201,
1345 2201, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1346 45, 45, 45, 45, 45, 45, 2201, 45, 45, 2201,
1347 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1348 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1349 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1350 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1351 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1353 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1354 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1355 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1356 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1357 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1358 45, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1359 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1360 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1361 45, 2201, 45, 45, 45, 2201, 45, 45, 45, 45,
1362 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1364 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1365 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1366 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1367 45, 2201, 45, 45, 45, 45, 2201, 45, 45, 45,
1368 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1369 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1370 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1371 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1372 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1373 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1375 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1376 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1377 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1378 2201, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1379 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1380 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1381 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1382 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1383 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1384 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1386 2201, 45, 2201, 45, 45, 45, 45, 45, 45, 45,
1387 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1388 2201, 45, 2201, 45, 45, 2201, 45, 45, 45, 2201,
1389 45, 45, 2201, 45, 2201, 2201, 45, 45, 45, 45,
1390 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1391 45, 2201, 45, 45, 45, 45, 45, 45, 45, 2201,
1392 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1393 45, 45, 45, 45, 2201, 45, 45, 45, 2201, 45,
1394 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1395 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1397 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1398 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1399 45, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1400 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1401 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1402 45, 45, 45, 45, 2201, 45, 2201, 45, 45, 2201,
1403 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1404 45, 45, 45, 45, 45, 45, 2201, 45, 45, 45,
1405 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1406 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1408 45, 2201, 45, 45, 2201, 45, 45, 45, 45, 45,
1409 45, 45, 45, 45, 45, 45, 2201, 45, 2201, 45,
1410 2201, 45, 45, 2201, 45, 45, 45, 45, 45, 45,
1411 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1412 2201, 45, 2201, 2201, 2201, 45, 45, 2201, 45, 45,
1413 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1414 45, 45, 45, 45, 2201, 45, 2201, 45, 45, 45,
1415 45, 45, 45, 45, 2201, 45, 45, 45, 2201, 45,
1416 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1417 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1419 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1420 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1421 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1422 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1423 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1424 45, 45, 2201, 45, 45, 45, 45, 45, 45, 45,
1425 2201, 2201, 45, 45, 45, 2201, 2201, 45, 45, 45,
1426 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1427 45, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1428 45, 2201, 45, 45, 45, 2201, 45, 45, 2201, 45,
1430 45, 45, 2201, 45, 45, 45, 45, 45, 2201, 2201,
1431 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1432 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1433 45, 45, 2201, 45, 45, 45, 45, 45, 2201, 45,
1434 45, 45, 2201, 45, 45, 45, 45, 45, 45, 45,
1435 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1436 45, 45, 45, 2201, 45, 45, 45, 2201, 45, 45,
1437 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1438 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1439 45, 45, 45, 45, 45, 2201, 45, 2201, 45, 45,
1441 45, 45, 45, 2201, 45, 45, 2201, 45, 2201, 45,
1442 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1443 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1444 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1445 45, 45, 2201, 45, 45, 45, 45, 45, 45, 45,
1446 45, 45, 45, 45, 2201, 45, 2201, 45, 45, 45,
1447 45, 2201, 2201, 45, 45, 45, 45, 45, 45, 45,
1448 45, 45, 45, 45, 45, 2201, 45, 45, 45, 45,
1449 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1450 2201, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1452 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1453 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1454 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1455 2201, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1456 45, 45, 45, 2201, 45, 2201, 45, 2201, 45, 2201,
1457 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1458 45, 45, 45, 45, 45, 45, 2201, 45, 2201, 45,
1459 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1460 45, 2201, 45, 45, 45, 2201, 45, 45, 45, 45,
1461 45, 2201, 45, 2201, 45, 2201, 45, 45, 2201, 45,
1463 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1464 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1465 45, 45, 45, 45, 2201, 45, 45, 45, 45, 45,
1466 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1467 45, 45, 45, 45, 45, 45, 45, 45, 2201, 45,
1468 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1469 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1470 45, 45, 45, 45, 45, 45, 45, 2201, 2201, 45,
1471 45, 45, 2201, 45, 45, 45, 45, 2201, 45, 45,
1472 45, 45, 2201, 2201, 2201, 2201, 45, 2201, 2201, 2201,
1474 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1475 2201, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1476 45, 45, 45, 45, 45, 45, 2201, 45, 45, 2201,
1477 45, 2201, 45, 45, 45, 45, 45, 45, 2201, 45,
1478 45, 45, 45, 45, 45, 45, 45, 2201, 45, 45,
1479 2201, 2201, 45, 45, 45, 45, 45, 45, 45, 45,
1480 45, 45, 45, 45, 45, 45, 45, 45, 45, 2201,
1481 45, 45, 45, 45, 2201, 2201, 45, 45, 45, 45,
1482 2201, 45, 45, 2201, 45, 2201, 45, 2201, 45, 45,
1483 45, 45, 45, 45, 45, 2201, 45, 2201, 2201, 2201,
1485 0, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201
1490 2201, 13, 14, 13, 2201, 15, 16, 101, 17, 18,
1491 19, 20, 21, 22, 22, 22, 22, 22, 23, 24,
1492 85, 246, 37, 14, 37, 86, 25, 26, 38, 37,
1493 14, 37, 42, 27, 42, 38, 876, 877, 28, 90,
1494 13, 14, 13, 91, 29, 90, 30, 102, 13, 14,
1495 13, 199, 25, 31, 13, 14, 13, 42, 40, 42,
1496 546, 32, 13, 14, 13, 90, 40, 33, 247, 164,
1497 92, 93, 91, 165, 34, 35, 13, 14, 13, 199,
1498 15, 16, 91, 17, 18, 19, 20, 21, 22, 22,
1499 22, 22, 22, 23, 24, 39, 13, 14, 13, 92,
1501 92, 25, 26, 39, 13, 14, 13, 42, 27, 42,
1502 132, 94, 547, 28, 108, 239, 41, 103, 104, 29,
1503 107, 30, 114, 133, 41, 227, 228, 25, 31, 95,
1504 372, 240, 88, 134, 88, 229, 32, 89, 89, 89,
1505 89, 89, 33, 108, 103, 104, 107, 373, 114, 34,
1506 35, 44, 44, 44, 45, 45, 46, 45, 45, 45,
1507 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1508 45, 45, 45, 47, 45, 48, 49, 50, 51, 45,
1509 45, 52, 45, 53, 54, 45, 45, 45, 45, 55,
1510 56, 45, 57, 45, 45, 45, 58, 45, 45, 59,
1512 45, 60, 61, 62, 63, 45, 64, 65, 52, 66,
1513 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1514 77, 78, 45, 45, 45, 45, 45, 80, 251, 81,
1515 81, 81, 81, 81, 80, 115, 83, 83, 83, 83,
1516 83, 252, 82, 84, 84, 84, 84, 84, 80, 82,
1517 83, 83, 83, 83, 83, 112, 82, 155, 103, 156,
1518 878, 110, 115, 82, 157, 136, 297, 113, 82, 111,
1519 137, 730, 186, 138, 139, 82, 107, 101, 731, 879,
1520 298, 112, 82, 188, 140, 119, 141, 110, 187, 82,
1521 45, 120, 45, 45, 45, 45, 113, 111, 45, 186,
1523 45, 45, 107, 117, 143, 144, 45, 45, 145, 45,
1524 45, 188, 188, 135, 146, 187, 45, 102, 45, 45,
1525 45, 45, 104, 45, 45, 45, 45, 45, 45, 45,
1526 45, 45, 45, 45, 45, 45, 45, 45, 45, 880,
1527 191, 127, 121, 45, 128, 129, 122, 45, 130, 104,
1528 123, 45, 115, 124, 147, 186, 125, 114, 148, 45,
1529 126, 131, 149, 45, 110, 45, 118, 158, 187, 198,
1530 159, 160, 111, 195, 150, 173, 174, 200, 151, 115,
1531 194, 161, 189, 114, 162, 112, 152, 166, 153, 184,
1532 154, 167, 845, 181, 168, 190, 198, 113, 182, 195,
1534 111, 169, 170, 207, 846, 265, 171, 172, 400, 194,
1535 201, 175, 202, 176, 204, 205, 177, 178, 84, 84,
1536 84, 84, 84, 401, 275, 206, 179, 276, 277, 207,
1537 221, 82, 80, 180, 81, 81, 81, 81, 81, 222,
1538 223, 202, 204, 88, 205, 88, 881, 82, 89, 89,
1539 89, 89, 89, 206, 266, 882, 80, 82, 83, 83,
1540 83, 83, 83, 84, 84, 84, 84, 84, 100, 194,
1541 233, 82, 234, 82, 256, 100, 82, 89, 89, 89,
1542 89, 89, 89, 89, 89, 89, 89, 212, 236, 235,
1543 215, 202, 315, 241, 269, 257, 242, 82, 213, 216,
1545 243, 237, 82, 217, 205, 238, 204, 281, 100, 270,
1546 271, 272, 100, 291, 883, 345, 100, 292, 315, 303,
1547 264, 293, 315, 346, 100, 304, 313, 396, 100, 347,
1548 100, 100, 210, 307, 302, 314, 313, 397, 323, 314,
1549 211, 211, 211, 211, 211, 282, 283, 284, 318, 211,
1550 211, 211, 211, 211, 211, 313, 285, 320, 286, 321,
1551 324, 287, 314, 288, 289, 316, 317, 323, 326, 327,
1552 329, 331, 320, 381, 884, 211, 211, 211, 211, 211,
1553 211, 343, 326, 320, 344, 321, 412, 446, 324, 413,
1554 427, 329, 428, 443, 326, 327, 329, 443, 334, 331,
1556 332, 332, 332, 332, 332, 451, 447, 885, 390, 332,
1557 332, 332, 332, 332, 332, 328, 446, 329, 449, 443,
1558 432, 452, 472, 444, 478, 446, 886, 473, 451, 382,
1559 479, 437, 383, 447, 451, 332, 332, 332, 332, 332,
1560 332, 492, 536, 887, 449, 521, 493, 537, 452, 455,
1561 455, 455, 455, 455, 457, 522, 589, 523, 455, 455,
1562 455, 455, 455, 455, 509, 510, 511, 516, 541, 584,
1563 512, 550, 542, 517, 559, 551, 579, 590, 560, 591,
1564 619, 580, 589, 888, 455, 455, 455, 455, 455, 455,
1565 630, 652, 889, 620, 584, 631, 700, 494, 584, 664,
1567 725, 653, 495, 538, 665, 590, 727, 591, 45, 45,
1568 45, 45, 45, 751, 779, 780, 752, 45, 45, 45,
1569 45, 45, 45, 593, 608, 692, 725, 726, 609, 858,
1570 693, 890, 722, 857, 723, 727, 610, 729, 611, 612,
1571 613, 614, 615, 45, 45, 45, 45, 45, 45, 724,
1572 859, 701, 803, 817, 860, 726, 858, 804, 818, 861,
1573 723, 891, 857, 873, 874, 892, 875, 893, 894, 895,
1574 899, 896, 900, 901, 902, 897, 903, 859, 724, 898,
1575 904, 905, 906, 860, 907, 861, 908, 909, 910, 911,
1576 912, 913, 914, 915, 805, 916, 917, 918, 919, 920,
1578 819, 921, 922, 923, 924, 925, 926, 928, 929, 927,
1579 930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
1580 940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
1581 950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
1582 960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
1583 970, 971, 973, 974, 977, 978, 979, 980, 972, 982,
1584 975, 983, 984, 981, 976, 985, 986, 987, 988, 989,
1585 990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1586 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1587 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1589 1020, 1021, 1022, 996, 1023, 1024, 997, 1025, 1026, 1000,
1590 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1591 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1592 1048, 1049, 1050, 1051, 1047, 1052, 1053, 1054, 1055, 1056,
1593 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,
1594 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1075, 1076, 1077,
1595 1074, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1596 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096,
1597 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1107,
1598 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1600 1106, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1601 1127, 1128, 1129, 1132, 1130, 1133, 1134, 1131, 1135, 1136,
1602 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146,
1603 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1128, 1127,
1604 1155, 1129, 1130, 1131, 1156, 1157, 1158, 1159, 1160, 1161,
1605 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171,
1606 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1183,
1607 1184, 1185, 1186, 1181, 1187, 1188, 1189, 1190, 1191, 1192,
1608 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202,
1609 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212,
1611 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222,
1612 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232,
1613 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1182,
1614 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251,
1615 1252, 1253, 1255, 1254, 1256, 1257, 1258, 1259, 1260, 1261,
1616 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271,
1617 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1252,
1618 1254, 1255, 1256, 1281, 1282, 1283, 1284, 1285, 1286, 1287,
1619 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297,
1620 1298, 1299, 1300, 1301, 1302, 1303, 1305, 1306, 1307, 1308,
1622 1304, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317,
1623 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 1326, 1327,
1624 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337,
1625 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347,
1626 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1357,
1627 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1365, 1366, 1367,
1628 1368, 1369, 1370, 1371, 1372, 1374, 1373, 1375, 1376, 1377,
1629 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387,
1630 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1371,
1631 1397, 1370, 1373, 1372, 1374, 1398, 1399, 1400, 1401, 1402,
1633 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412,
1634 1413, 1414, 1415, 1416, 1417, 1418, 1419, 1420, 1421, 1422,
1635 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432,
1636 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442,
1637 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, 1452,
1638 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462,
1639 1463, 1464, 1465, 1466, 1467, 1468, 1469, 1470, 1471, 1472,
1640 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, 1483,
1641 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1492, 1493,
1642 1494, 1495, 1496, 1497, 1498, 1499, 1500, 1501, 1474, 1475,
1644 1502, 1503, 1476, 1504, 1505, 1506, 1507, 1508, 1509, 1510,
1645 1511, 1512, 1513, 1514, 1515, 1516, 1517, 1518, 1519, 1520,
1646 1521, 1522, 1523, 1524, 1525, 1482, 1526, 1527, 1529, 1530,
1647 1531, 1532, 1533, 1534, 1535, 1528, 1536, 1537, 1538, 1539,
1648 1540, 1541, 1542, 1543, 1544, 1545, 1546, 1547, 1548, 1549,
1649 1550, 1551, 1553, 1554, 1557, 1555, 1552, 1556, 1558, 1559,
1650 1560, 1561, 1562, 1563, 1564, 1565, 1566, 1567, 1568, 1569,
1651 1570, 1571, 1572, 1575, 1574, 1576, 1577, 1578, 1579, 1580,
1652 1581, 1582, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590,
1653 1591, 1592, 1593, 1594, 1595, 1596, 1573, 1571, 1597, 1570,
1655 1574, 1598, 1599, 1600, 1601, 1602, 1603, 1604, 1605, 1606,
1656 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1616,
1657 1617, 1618, 1619, 1620, 1573, 1621, 1622, 1623, 1624, 1625,
1658 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635,
1659 1639, 1636, 1640, 1641, 1637, 1642, 1643, 1638, 1644, 1645,
1660 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655,
1661 1657, 1656, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665,
1662 1666, 1667, 1668, 1669, 1672, 1673, 1674, 1670, 1675, 1676,
1663 1677, 1678, 1679, 1680, 1681, 1654, 1655, 1656, 1671, 1657,
1664 1658, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690,
1666 1691, 1692, 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701,
1667 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711,
1668 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721,
1669 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731,
1670 1732, 1733, 1734, 1735, 1737, 1736, 1738, 1739, 1740, 1741,
1671 1742, 1743, 1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751,
1672 1752, 1753, 1693, 1754, 1755, 1756, 1757, 1760, 1761, 1735,
1673 1762, 1734, 1736, 1737, 1758, 1738, 1763, 1764, 1765, 1759,
1674 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775,
1675 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783, 1784, 1785,
1677 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793, 1794, 1795,
1678 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803, 1804, 1805,
1679 1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813, 1814, 1815,
1680 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824, 1825,
1681 1826, 1827, 1828, 1829, 1803, 1805, 1830, 1831, 1832, 1833,
1682 1834, 1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843,
1683 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853,
1684 1854, 1855, 1856, 1857, 1858, 1860, 1861, 1862, 1863, 1859,
1685 1864, 1865, 1866, 1868, 1867, 1869, 1870, 1871, 1872, 1873,
1686 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883,
1688 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1866,
1689 1867, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901,
1690 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911,
1691 1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921,
1692 1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931,
1693 1932, 1933, 1934, 1935, 1936, 1937, 1938, 1939, 1940, 1941,
1694 1942, 1917, 1918, 1943, 1919, 1944, 1945, 1946, 1947, 1948,
1695 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958,
1696 1959, 1960, 1961, 1963, 1964, 1962, 1965, 1966, 1967, 1968,
1697 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978,
1699 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988,
1700 1989, 1990, 1991, 1992, 1966, 1968, 1993, 1994, 1995, 1996,
1701 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
1702 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,
1703 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026,
1704 2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2010,
1705 2036, 2011, 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044,
1706 2045, 2047, 2046, 2048, 2049, 2050, 2051, 2052, 2053, 2054,
1707 2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064,
1708 2065, 2066, 2067, 2068, 2069, 2070, 2071, 2045, 2046, 2072,
1710 2073, 2074, 2075, 2076, 2077, 2078, 2079, 2080, 2081, 2082,
1711 2083, 2084, 2085, 2086, 2087, 2088, 2089, 2090, 2091, 2092,
1712 2093, 2094, 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2102,
1713 2077, 2103, 2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111,
1714 2112, 2113, 2114, 2115, 2116, 2117, 2118, 2119, 2120, 2121,
1715 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129, 2130, 2131,
1716 2132, 2133, 2134, 2135, 2136, 2137, 2138, 2139, 2140, 2141,
1717 2142, 2143, 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151,
1718 2152, 2153, 2154, 2155, 2156, 2158, 2157, 2159, 2160, 2161,
1719 2162, 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, 2171,
1721 2172, 2173, 2174, 2175, 2176, 2177, 2178, 2179, 2180, 2181,
1722 2182, 2183, 2184, 2185, 2186, 2187, 2188, 2189, 2190, 2191,
1723 2192, 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, 12,
1724 12, 12, 36, 36, 36, 79, 98, 79, 100, 100,
1725 100, 116, 116, 116, 185, 872, 185, 208, 208, 208,
1726 871, 870, 869, 868, 867, 866, 865, 864, 863, 862,
1727 856, 855, 854, 853, 852, 851, 850, 849, 848, 847,
1728 844, 843, 842, 841, 840, 839, 838, 837, 836, 835,
1729 834, 833, 832, 831, 830, 829, 828, 827, 826, 825,
1730 824, 823, 822, 821, 820, 816, 815, 814, 813, 812,
1732 811, 810, 809, 808, 807, 806, 802, 801, 800, 799,
1733 798, 797, 796, 795, 794, 793, 792, 791, 790, 789,
1734 788, 787, 786, 785, 784, 783, 782, 781, 778, 777,
1735 776, 775, 774, 773, 772, 771, 770, 769, 768, 767,
1736 766, 765, 764, 763, 762, 761, 760, 759, 758, 757,
1737 756, 755, 754, 753, 750, 749, 748, 747, 746, 745,
1738 744, 743, 742, 741, 740, 739, 738, 737, 736, 735,
1739 734, 733, 732, 728, 722, 721, 720, 719, 718, 717,
1740 716, 715, 714, 713, 712, 711, 710, 709, 708, 707,
1741 706, 705, 704, 703, 702, 699, 698, 697, 696, 695,
1743 694, 691, 690, 689, 688, 687, 686, 685, 684, 683,
1744 682, 681, 680, 679, 678, 677, 676, 675, 674, 673,
1745 672, 671, 670, 669, 668, 667, 666, 663, 662, 661,
1746 660, 659, 658, 657, 656, 655, 654, 651, 650, 649,
1747 648, 647, 646, 645, 644, 643, 642, 641, 640, 639,
1748 638, 637, 636, 635, 634, 633, 632, 629, 628, 627,
1749 626, 625, 624, 623, 622, 621, 618, 617, 616, 607,
1750 606, 605, 604, 603, 602, 601, 600, 599, 598, 597,
1751 596, 595, 594, 592, 588, 587, 586, 585, 583, 582,
1752 581, 578, 577, 576, 575, 574, 573, 572, 571, 570,
1754 569, 568, 567, 566, 565, 564, 563, 562, 561, 558,
1755 557, 556, 555, 554, 553, 552, 549, 548, 545, 544,
1756 543, 540, 539, 535, 534, 533, 532, 531, 530, 529,
1757 528, 527, 526, 525, 524, 520, 519, 518, 515, 514,
1758 513, 508, 507, 506, 505, 504, 503, 502, 501, 500,
1759 499, 498, 497, 496, 491, 490, 489, 488, 487, 486,
1760 485, 484, 483, 482, 481, 480, 477, 476, 475, 474,
1761 471, 470, 469, 468, 467, 466, 465, 464, 463, 462,
1762 461, 460, 459, 458, 456, 454, 453, 450, 448, 445,
1763 442, 441, 440, 439, 438, 436, 435, 434, 433, 431,
1765 430, 429, 426, 425, 424, 423, 422, 421, 420, 419,
1766 418, 417, 416, 415, 414, 411, 410, 409, 408, 407,
1767 406, 405, 404, 403, 402, 399, 398, 395, 394, 393,
1768 392, 391, 389, 388, 387, 386, 385, 384, 380, 379,
1769 378, 377, 376, 375, 374, 371, 370, 369, 368, 367,
1770 366, 365, 364, 363, 362, 361, 360, 359, 358, 357,
1771 356, 355, 354, 353, 352, 351, 350, 349, 348, 342,
1772 341, 340, 339, 338, 337, 336, 335, 333, 209, 330,
1773 328, 325, 322, 319, 312, 311, 310, 309, 308, 306,
1774 305, 301, 300, 299, 296, 295, 294, 290, 280, 279,
1776 278, 274, 273, 268, 267, 263, 262, 261, 260, 259,
1777 258, 255, 254, 253, 250, 249, 248, 245, 244, 232,
1778 231, 230, 226, 225, 224, 220, 219, 218, 214, 209,
1779 203, 197, 196, 193, 192, 183, 163, 142, 109, 106,
1780 105, 43, 99, 97, 96, 87, 43, 2201, 11, 2201,
1781 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1782 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1783 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1784 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1785 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1787 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1788 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
1789 2201, 2201, 2201, 2201, 2201
1794 0, 1, 1, 1, 0, 1, 1, 44, 1, 1,
1795 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1796 21, 139, 3, 3, 3, 21, 1, 1, 3, 4,
1797 4, 4, 13, 1, 13, 4, 740, 741, 1, 26,
1798 5, 5, 5, 27, 1, 31, 1, 44, 6, 6,
1799 6, 108, 1, 1, 7, 7, 7, 37, 7, 37,
1800 410, 1, 8, 8, 8, 26, 8, 1, 139, 73,
1801 28, 31, 27, 73, 1, 1, 2, 2, 2, 108,
1802 2, 2, 32, 2, 2, 2, 2, 2, 2, 2,
1803 2, 2, 2, 2, 2, 5, 9, 9, 9, 28,
1805 33, 2, 2, 6, 10, 10, 10, 42, 2, 42,
1806 62, 32, 410, 2, 52, 135, 9, 47, 48, 2,
1807 51, 2, 56, 62, 10, 129, 129, 2, 2, 33,
1808 249, 135, 25, 62, 25, 129, 2, 25, 25, 25,
1809 25, 25, 2, 52, 47, 48, 51, 249, 56, 2,
1810 2, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1811 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1812 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1813 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1814 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1816 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1817 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1818 15, 15, 15, 15, 15, 15, 15, 17, 143, 17,
1819 17, 17, 17, 17, 19, 57, 19, 19, 19, 19,
1820 19, 143, 17, 20, 20, 20, 20, 20, 22, 19,
1821 22, 22, 22, 22, 22, 55, 20, 70, 59, 70,
1822 742, 54, 57, 22, 70, 64, 171, 55, 17, 54,
1823 64, 595, 90, 64, 65, 19, 63, 100, 595, 743,
1824 171, 55, 20, 92, 65, 59, 65, 54, 91, 22,
1825 45, 59, 45, 45, 45, 45, 55, 54, 45, 90,
1827 45, 45, 63, 58, 67, 67, 45, 45, 67, 45,
1828 58, 95, 92, 63, 67, 91, 45, 100, 45, 45,
1829 45, 45, 60, 45, 45, 45, 45, 45, 45, 45,
1830 45, 45, 45, 45, 45, 45, 45, 45, 45, 744,
1831 95, 61, 60, 58, 61, 61, 60, 58, 61, 60,
1832 60, 58, 78, 60, 68, 93, 60, 76, 68, 58,
1833 60, 61, 68, 58, 69, 58, 58, 71, 94, 107,
1834 71, 71, 69, 104, 68, 75, 75, 109, 68, 78,
1835 103, 71, 93, 76, 71, 75, 69, 74, 69, 78,
1836 69, 74, 710, 76, 74, 94, 107, 75, 76, 104,
1838 69, 74, 74, 115, 710, 155, 74, 74, 273, 103,
1839 109, 75, 110, 75, 112, 113, 75, 75, 80, 80,
1840 80, 80, 80, 273, 161, 114, 75, 161, 161, 115,
1841 125, 80, 81, 75, 81, 81, 81, 81, 81, 125,
1842 125, 110, 112, 82, 113, 82, 745, 81, 82, 82,
1843 82, 82, 82, 114, 155, 746, 83, 80, 83, 83,
1844 83, 83, 83, 84, 84, 84, 84, 84, 102, 119,
1845 133, 83, 133, 81, 147, 102, 84, 88, 88, 88,
1846 88, 88, 89, 89, 89, 89, 89, 119, 134, 133,
1847 121, 154, 188, 136, 158, 147, 136, 83, 119, 121,
1849 136, 134, 84, 121, 179, 134, 175, 165, 102, 158,
1850 158, 158, 102, 167, 747, 223, 102, 167, 188, 176,
1851 154, 167, 191, 223, 102, 176, 186, 270, 102, 223,
1852 102, 102, 118, 179, 175, 187, 189, 270, 198, 190,
1853 118, 118, 118, 118, 118, 165, 165, 165, 191, 118,
1854 118, 118, 118, 118, 118, 186, 165, 194, 165, 195,
1855 199, 165, 187, 165, 165, 189, 190, 198, 202, 203,
1856 205, 207, 213, 257, 748, 118, 118, 118, 118, 118,
1857 118, 222, 264, 194, 222, 195, 284, 320, 199, 284,
1858 298, 307, 298, 313, 202, 203, 205, 316, 213, 207,
1860 211, 211, 211, 211, 211, 326, 321, 749, 264, 211,
1861 211, 211, 211, 211, 211, 302, 320, 307, 323, 313,
1862 302, 327, 349, 316, 354, 334, 750, 349, 390, 257,
1863 354, 307, 257, 321, 326, 211, 211, 211, 211, 211,
1864 211, 367, 403, 751, 323, 389, 367, 403, 327, 332,
1865 332, 332, 332, 332, 334, 389, 452, 390, 332, 332,
1866 332, 332, 332, 332, 381, 381, 381, 385, 406, 446,
1867 381, 413, 406, 385, 421, 413, 440, 454, 421, 454,
1868 478, 440, 452, 752, 332, 332, 332, 332, 332, 332,
1869 489, 511, 753, 478, 457, 489, 559, 367, 446, 523,
1871 589, 511, 367, 403, 523, 454, 591, 454, 455, 455,
1872 455, 455, 455, 615, 644, 644, 615, 455, 455, 455,
1873 455, 455, 455, 457, 474, 552, 589, 590, 474, 724,
1874 552, 754, 593, 723, 585, 591, 474, 593, 474, 474,
1875 474, 474, 474, 455, 455, 455, 455, 455, 455, 585,
1876 725, 559, 669, 682, 726, 590, 724, 669, 682, 727,
1877 585, 755, 723, 739, 739, 756, 739, 757, 758, 759,
1878 761, 760, 762, 763, 764, 760, 765, 725, 585, 760,
1879 766, 767, 768, 726, 769, 727, 770, 771, 772, 773,
1880 774, 775, 776, 777, 669, 778, 779, 780, 781, 782,
1882 682, 783, 784, 785, 786, 787, 788, 789, 790, 788,
1883 791, 793, 794, 795, 796, 797, 798, 799, 800, 801,
1884 802, 804, 805, 806, 807, 808, 809, 810, 811, 812,
1885 813, 814, 815, 816, 818, 819, 820, 821, 822, 823,
1886 824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
1887 834, 835, 836, 837, 838, 839, 840, 841, 835, 842,
1888 837, 843, 844, 841, 837, 846, 847, 848, 849, 850,
1889 851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
1890 861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
1891 872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
1893 882, 883, 884, 857, 885, 886, 858, 887, 888, 861,
1894 889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
1895 899, 900, 901, 902, 903, 905, 906, 907, 908, 909,
1896 910, 911, 912, 913, 909, 914, 915, 916, 917, 918,
1897 919, 920, 923, 924, 925, 926, 927, 928, 929, 932,
1898 933, 934, 935, 936, 937, 939, 940, 941, 942, 943,
1899 940, 944, 945, 946, 948, 949, 952, 953, 954, 955,
1900 956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
1901 966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
1902 976, 977, 978, 979, 980, 981, 982, 983, 984, 986,
1904 974, 987, 988, 989, 990, 991, 992, 993, 994, 995,
1905 996, 997, 998, 1001, 999, 1002, 1003, 1000, 1004, 1005,
1906 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1907 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 997, 996,
1908 1025, 998, 999, 1000, 1026, 1027, 1028, 1029, 1030, 1031,
1909 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1910 1042, 1043, 1044, 1045, 1047, 1048, 1049, 1050, 1051, 1052,
1911 1053, 1055, 1056, 1051, 1057, 1058, 1059, 1060, 1061, 1062,
1912 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072,
1913 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1081, 1083, 1084,
1915 1085, 1087, 1088, 1089, 1090, 1092, 1093, 1094, 1095, 1096,
1916 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106,
1917 1107, 1108, 1109, 1111, 1112, 1113, 1114, 1115, 1116, 1051,
1918 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1919 1127, 1128, 1130, 1129, 1131, 1133, 1134, 1135, 1136, 1138,
1920 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
1921 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1127,
1922 1129, 1130, 1131, 1158, 1159, 1161, 1162, 1163, 1164, 1165,
1923 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175,
1924 1176, 1177, 1178, 1179, 1181, 1182, 1183, 1184, 1185, 1186,
1926 1182, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195,
1927 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205,
1928 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215,
1929 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226,
1930 1227, 1229, 1230, 1233, 1234, 1235, 1236, 1237, 1238, 1239,
1931 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249,
1932 1250, 1251, 1252, 1253, 1254, 1256, 1255, 1257, 1258, 1259,
1933 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1270,
1934 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1253,
1935 1281, 1252, 1255, 1254, 1256, 1282, 1283, 1284, 1285, 1286,
1937 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296,
1938 1297, 1298, 1299, 1302, 1304, 1305, 1306, 1307, 1308, 1309,
1939 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319,
1940 1320, 1322, 1324, 1325, 1327, 1328, 1329, 1331, 1332, 1334,
1941 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346,
1942 1347, 1348, 1349, 1350, 1351, 1353, 1354, 1355, 1356, 1357,
1943 1358, 1359, 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369,
1944 1370, 1371, 1372, 1373, 1374, 1376, 1377, 1378, 1380, 1381,
1945 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391,
1946 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1371, 1372,
1948 1400, 1401, 1373, 1402, 1403, 1404, 1406, 1407, 1408, 1409,
1949 1410, 1411, 1412, 1413, 1414, 1415, 1416, 1417, 1418, 1419,
1950 1420, 1421, 1422, 1423, 1425, 1380, 1426, 1427, 1428, 1429,
1951 1430, 1431, 1432, 1433, 1434, 1427, 1435, 1437, 1438, 1439,
1952 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449,
1953 1451, 1452, 1453, 1454, 1458, 1456, 1452, 1456, 1459, 1462,
1954 1463, 1464, 1465, 1466, 1467, 1468, 1469, 1470, 1471, 1472,
1955 1473, 1474, 1475, 1478, 1476, 1479, 1480, 1482, 1483, 1484,
1956 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1492, 1493, 1494,
1957 1495, 1496, 1497, 1498, 1499, 1500, 1475, 1474, 1501, 1473,
1959 1476, 1503, 1504, 1506, 1507, 1508, 1509, 1510, 1511, 1512,
1960 1513, 1514, 1515, 1516, 1518, 1520, 1522, 1523, 1525, 1526,
1961 1527, 1528, 1529, 1530, 1475, 1531, 1532, 1533, 1534, 1536,
1962 1537, 1538, 1539, 1540, 1542, 1546, 1547, 1549, 1550, 1552,
1963 1553, 1552, 1554, 1555, 1552, 1556, 1557, 1552, 1558, 1559,
1964 1560, 1561, 1562, 1563, 1564, 1566, 1568, 1569, 1570, 1571,
1965 1573, 1572, 1574, 1576, 1577, 1578, 1580, 1581, 1582, 1583,
1966 1584, 1585, 1586, 1587, 1589, 1590, 1591, 1588, 1592, 1593,
1967 1594, 1595, 1597, 1598, 1599, 1570, 1571, 1572, 1588, 1573,
1968 1574, 1600, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609,
1970 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1616, 1617, 1618,
1971 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 1628,
1972 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638,
1973 1639, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1650,
1974 1651, 1652, 1654, 1655, 1657, 1656, 1658, 1659, 1660, 1663,
1975 1664, 1665, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675,
1976 1676, 1677, 1610, 1678, 1679, 1680, 1681, 1684, 1685, 1655,
1977 1686, 1654, 1656, 1657, 1683, 1658, 1687, 1688, 1689, 1683,
1978 1690, 1691, 1693, 1694, 1695, 1697, 1698, 1700, 1701, 1702,
1979 1704, 1705, 1706, 1707, 1708, 1711, 1712, 1713, 1714, 1715,
1981 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725,
1982 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1734, 1735, 1736,
1983 1737, 1738, 1740, 1741, 1742, 1744, 1745, 1746, 1747, 1748,
1984 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1756, 1757, 1759,
1985 1760, 1761, 1762, 1763, 1734, 1736, 1765, 1766, 1767, 1769,
1986 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1780,
1987 1781, 1782, 1783, 1784, 1785, 1786, 1787, 1788, 1789, 1790,
1988 1791, 1792, 1793, 1794, 1795, 1797, 1799, 1800, 1801, 1795,
1989 1802, 1803, 1805, 1808, 1806, 1810, 1811, 1812, 1813, 1814,
1990 1815, 1816, 1817, 1819, 1820, 1821, 1822, 1823, 1824, 1825,
1992 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834, 1805,
1993 1806, 1835, 1836, 1837, 1839, 1840, 1841, 1842, 1844, 1845,
1994 1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, 1856,
1995 1858, 1859, 1860, 1861, 1864, 1865, 1866, 1867, 1868, 1869,
1996 1870, 1871, 1872, 1873, 1874, 1875, 1877, 1878, 1879, 1880,
1997 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1892,
1998 1893, 1865, 1866, 1894, 1867, 1895, 1896, 1897, 1898, 1899,
1999 1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910,
2000 1911, 1912, 1913, 1914, 1915, 1913, 1916, 1917, 1918, 1919,
2001 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929,
2003 1930, 1932, 1933, 1934, 1935, 1936, 1937, 1938, 1939, 1940,
2004 1941, 1942, 1943, 1945, 1917, 1919, 1947, 1949, 1951, 1952,
2005 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962,
2006 1963, 1964, 1965, 1966, 1968, 1970, 1971, 1972, 1973, 1974,
2007 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1983, 1984, 1985,
2008 1987, 1988, 1989, 1990, 1991, 1993, 1995, 1997, 1998, 1966,
2009 2000, 1968, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009,
2010 2010, 2012, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2020,
2011 2021, 2022, 2023, 2024, 2026, 2027, 2028, 2029, 2030, 2031,
2012 2032, 2033, 2034, 2035, 2036, 2037, 2038, 2010, 2011, 2040,
2014 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2050, 2051,
2015 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, 2060, 2061,
2016 2062, 2063, 2064, 2065, 2066, 2067, 2068, 2069, 2070, 2071,
2017 2045, 2072, 2073, 2074, 2075, 2076, 2077, 2080, 2081, 2082,
2018 2084, 2085, 2086, 2087, 2089, 2090, 2091, 2092, 2097, 2101,
2019 2102, 2103, 2104, 2105, 2106, 2107, 2109, 2110, 2112, 2113,
2020 2114, 2115, 2116, 2117, 2118, 2119, 2121, 2122, 2123, 2124,
2021 2125, 2126, 2128, 2129, 2131, 2133, 2134, 2135, 2136, 2137,
2022 2138, 2140, 2141, 2142, 2143, 2144, 2143, 2145, 2146, 2147,
2023 2149, 2150, 2153, 2154, 2155, 2156, 2157, 2158, 2159, 2160,
2025 2161, 2162, 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2171,
2026 2172, 2173, 2174, 2177, 2178, 2179, 2180, 2182, 2183, 2185,
2027 2187, 2189, 2190, 2191, 2192, 2193, 2194, 2195, 2197, 2202,
2028 2202, 2202, 2203, 2203, 2203, 2204, 2205, 2204, 2206, 2206,
2029 2206, 2207, 2207, 2207, 2208, 738, 2208, 2209, 2209, 2209,
2030 737, 736, 735, 734, 733, 732, 731, 730, 729, 728,
2031 720, 719, 718, 717, 716, 715, 714, 713, 712, 711,
2032 709, 708, 707, 705, 704, 703, 702, 701, 700, 699,
2033 698, 697, 696, 695, 694, 693, 691, 690, 689, 688,
2034 687, 686, 685, 684, 683, 681, 680, 678, 677, 676,
2036 675, 674, 673, 672, 671, 670, 668, 667, 666, 665,
2037 663, 662, 660, 659, 658, 657, 656, 655, 654, 653,
2038 652, 651, 650, 649, 648, 647, 646, 645, 643, 642,
2039 641, 640, 639, 638, 636, 635, 634, 633, 632, 631,
2040 629, 628, 627, 626, 625, 624, 623, 622, 621, 620,
2041 619, 618, 617, 616, 614, 613, 612, 611, 610, 609,
2042 608, 607, 606, 605, 604, 603, 602, 601, 600, 599,
2043 598, 597, 596, 592, 584, 583, 582, 581, 580, 578,
2044 576, 574, 572, 571, 570, 569, 568, 567, 566, 565,
2045 564, 563, 562, 561, 560, 558, 557, 556, 555, 554,
2047 553, 551, 550, 549, 548, 547, 546, 545, 544, 543,
2048 542, 541, 540, 538, 537, 535, 534, 533, 532, 531,
2049 530, 529, 528, 527, 526, 525, 524, 522, 521, 519,
2050 518, 517, 516, 515, 514, 513, 512, 510, 509, 508,
2051 507, 506, 505, 504, 503, 502, 501, 500, 499, 498,
2052 497, 496, 495, 494, 493, 491, 490, 488, 487, 486,
2053 485, 484, 483, 482, 481, 479, 477, 476, 475, 473,
2054 471, 470, 469, 468, 467, 466, 464, 463, 462, 461,
2055 460, 459, 458, 456, 451, 449, 448, 447, 445, 442,
2056 441, 439, 438, 437, 436, 435, 434, 433, 432, 431,
2058 430, 429, 428, 427, 426, 425, 424, 423, 422, 420,
2059 419, 418, 417, 416, 415, 414, 412, 411, 409, 408,
2060 407, 405, 404, 402, 401, 400, 399, 398, 397, 396,
2061 395, 394, 393, 392, 391, 388, 387, 386, 384, 383,
2062 382, 380, 379, 378, 377, 376, 375, 374, 373, 372,
2063 371, 370, 369, 368, 366, 365, 364, 363, 362, 361,
2064 360, 359, 358, 357, 356, 355, 353, 352, 351, 350,
2065 348, 347, 346, 345, 344, 343, 342, 341, 340, 339,
2066 338, 337, 336, 335, 333, 331, 329, 324, 322, 319,
2067 312, 311, 310, 309, 308, 306, 305, 304, 303, 301,
2069 300, 299, 297, 296, 295, 294, 293, 292, 291, 290,
2070 289, 288, 287, 286, 285, 283, 282, 281, 280, 279,
2071 278, 277, 276, 275, 274, 272, 271, 269, 268, 267,
2072 266, 265, 263, 262, 261, 260, 259, 258, 256, 255,
2073 254, 253, 252, 251, 250, 248, 247, 245, 244, 243,
2074 242, 241, 240, 239, 238, 237, 236, 235, 234, 233,
2075 232, 231, 230, 229, 228, 227, 226, 225, 224, 221,
2076 220, 219, 218, 217, 216, 215, 214, 212, 208, 206,
2077 204, 201, 196, 192, 184, 183, 182, 181, 180, 178,
2078 177, 174, 173, 172, 170, 169, 168, 166, 164, 163,
2080 162, 160, 159, 157, 156, 153, 152, 151, 150, 149,
2081 148, 146, 145, 144, 142, 141, 140, 138, 137, 132,
2082 131, 130, 128, 127, 126, 124, 123, 122, 120, 116,
2083 111, 106, 105, 98, 97, 77, 72, 66, 53, 50,
2084 49, 43, 41, 39, 38, 24, 14, 11, 2201, 2201,
2085 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2086 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2087 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2088 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2089 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2091 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2092 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201, 2201,
2093 2201, 2201, 2201, 2201, 2201
2097static char *yy_last_accepting_cpos;
2104 149, 151, 153, 158, 159, 164, 165, 166, 178, 181,
2105 186, 193, 202, 211, 220, 229, 238, 247, 256, 265,
2106 276, 287, 297, 307, 317, 327, 337, 346, 356, 366,
2107 376, 386, 395, 404, 413, 422, 431, 440, 449, 458,
2108 467, 476, 485, 494, 503, 512, 521, 530, 539, 548,
2109 561, 570, 579, 588, 599, 610, 621, 632, 644, 655,
2110 666, 677, 688, 699, 710, 721, 730, 739, 748, 759,
2111 770, 779, 790, 801, 812, 823, 835, 847, 859, 871,
2112 883, 895, 906, 917, 926, 935, 944, 955, 966, 975,
2113 984, 995, 1006, 1017, 1028, 1039, 1050, 1061, 1072, 1083,
2115 1092, 1101, 1110, 1122, 1133, 1143, 1154, 1163, 1172, 1187,
2116 1203, 1212, 1221, 1230, 1239, 1248, 1257, 1266, 1275, 1284,
2117 1293, 1302, 1312, 1336, 1360, 1369, 1379, 1389, 1398, 1408,
2118 1419, 1430, 1441, 1451, 1460, 1469, 1478, 1489, 1500, 1511,
2119 1522, 1533, 1542, 1551, 1560, 1569, 1578, 1587, 1596, 1605,
2120 1614, 1623, 1633, 1645, 1658, 1667, 1676, 1685, 1695, 1705,
2121 1714, 1725, 1735, 1744, 1754, 1764, 1773, 1782, 1791, 1800,
2122 1810, 1819, 1828, 1837, 1846, 1855, 1864, 1873, 1882, 1891,
2123 1900, 1909, 1918, 1927, 1936, 1945, 1954, 1963, 1972, 1981,
2124 1990, 1999, 2008, 2017, 2026, 2035, 2044, 2053, 2062, 2071,
2126 2080, 2089, 2098, 2107, 2116, 2125, 2134, 2235, 2251, 2300,
2127 2308, 2323, 2324, 2325, 2326, 2327, 2328, 2330, 2348, 2361,
2128 2366, 2370, 2372, 2374, 2376
2134#define REJECT reject_used_but_not_detected
2135#define yymore() yymore_used_but_not_detected
2136#define YY_MORE_ADJ 0
2137#define YY_RESTORE_YY_MORE_OFFSET
2139#line 1 "dhcp6_lexer.ll"
2145#line 8 "dhcp6_lexer.ll"
2148#ifndef __clang_analyzer__
2158#include <boost/lexical_cast.hpp>
2172bool start_token_flag =
false;
2175unsigned int comment_start_line = 0;
2182#define YY_FATAL_ERROR(msg) isc::dhcp::Parser6Context::fatal(msg)
2183#line 2183 "dhcp6_lexer.cc"
2198#define YY_NO_INPUT 1
2204#line 96 "dhcp6_lexer.ll"
2208#define YY_USER_ACTION driver.loc_.columns(yyleng);
2209#line 2209 "dhcp6_lexer.cc"
2210#line 2210 "dhcp6_lexer.cc"
2215#define DIR_INCLUDE 3
2218#ifndef YY_NO_UNISTD_H
2230#ifndef YY_EXTRA_TYPE
2231#define YY_EXTRA_TYPE void *
2238static int yy_init_globals (
void );
2281#ifndef YY_SKIP_YYWRAP
2283extern "C" int yywrap (
void );
2285extern int yywrap (
void );
2298static void yy_flex_strncpy (
char *,
const char *,
int );
2301#ifdef YY_NEED_STRLEN
2302static int yy_flex_strlen (
const char * );
2309static int yyinput (
void );
2311static int input (
void );
2323#ifndef YY_READ_BUF_SIZE
2326#define YY_READ_BUF_SIZE 16384
2328#define YY_READ_BUF_SIZE 8192
2338#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
2348#define YY_INPUT(buf,result,max_size) \
2350 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2354 for ( n = 0; n < max_size && \
2355 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2356 buf[n] = (char) c; \
2358 buf[n++] = (char) c; \
2359 if ( c == EOF && ferror( yyin ) ) \
2360 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2366 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
2368 if( errno != EINTR) \
2370 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2388#define yyterminate() return YY_NULL
2392#ifndef YY_START_STACK_INCR
2393#define YY_START_STACK_INCR 25
2397#ifndef YY_FATAL_ERROR
2399#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2420#define YY_DECL_IS_OURS 1
2423extern int yylex (
void);
2425#define YY_DECL int yylex (void)
2434#ifndef YY_USER_ACTION
2435#define YY_USER_ACTION
2440#define YY_BREAK break;
2444#define YY_RULE_SETUP \
2492#line 102 "dhcp6_lexer.ll"
2496#line 106 "dhcp6_lexer.ll"
2504 if (start_token_flag) {
2505 start_token_flag =
false;
2506 switch (start_token_value) {
2540#line 2540 "dhcp6_lexer.cc"
2545 yy_cp = (yy_c_buf_p);
2548 *
yy_cp = (yy_hold_char);
2556 yy_current_state = (yy_start);
2561 if ( yy_accept[yy_current_state] )
2563 (yy_last_accepting_state) = yy_current_state;
2564 (yy_last_accepting_cpos) =
yy_cp;
2566 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2568 yy_current_state = (int) yy_def[yy_current_state];
2569 if ( yy_current_state >= 2202 )
2570 yy_c = yy_meta[yy_c];
2572 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2575 while ( yy_current_state != 2201 );
2576 yy_cp = (yy_last_accepting_cpos);
2577 yy_current_state = (yy_last_accepting_state);
2581 yy_act = yy_accept[yy_current_state];
2593 fprintf( stderr,
"--scanner backing up\n" );
2595 fprintf( stderr,
"--accepting rule at line %ld (\"%s\")\n",
2597 else if (
yy_act == 226 )
2598 fprintf( stderr,
"--accepting default rule (\"%s\")\n",
2600 else if (
yy_act == 227 )
2601 fprintf( stderr,
"--(end of buffer or a NUL)\n" );
2603 fprintf( stderr,
"--EOF (start condition %d)\n",
YY_START );
2611 *
yy_cp = (yy_hold_char);
2612 yy_cp = (yy_last_accepting_cpos);
2613 yy_current_state = (yy_last_accepting_state);
2614 goto yy_find_action;
2618#line 149 "dhcp6_lexer.ll"
2623#line 151 "dhcp6_lexer.ll"
2628#line 153 "dhcp6_lexer.ll"
2631 comment_start_line = driver.loc_.end.line;;
2636#line 158 "dhcp6_lexer.ll"
2641#line 159 "dhcp6_lexer.ll"
2645#line 160 "dhcp6_lexer.ll"
2652#line 164 "dhcp6_lexer.ll"
2657#line 165 "dhcp6_lexer.ll"
2662#line 166 "dhcp6_lexer.ll"
2667 std::string tmp(
yytext+1);
2668 tmp.resize(tmp.size() - 1);
2670 driver.includeFile(tmp);
2676#line 175 "dhcp6_lexer.ll"
2683#line 178 "dhcp6_lexer.ll"
2688#line 181 "dhcp6_lexer.ll"
2697#line 186 "dhcp6_lexer.ll"
2700 driver.loc_.lines(
yyleng);
2706#line 193 "dhcp6_lexer.ll"
2708 switch(driver.ctx_) {
2718#line 202 "dhcp6_lexer.ll"
2720 switch(driver.ctx_) {
2730#line 211 "dhcp6_lexer.ll"
2732 switch(driver.ctx_) {
2742#line 220 "dhcp6_lexer.ll"
2744 switch(driver.ctx_) {
2754#line 229 "dhcp6_lexer.ll"
2756 switch(driver.ctx_) {
2766#line 238 "dhcp6_lexer.ll"
2768 switch(driver.ctx_) {
2778#line 247 "dhcp6_lexer.ll"
2780 switch(driver.ctx_) {
2790#line 256 "dhcp6_lexer.ll"
2792 switch(driver.ctx_) {
2802#line 265 "dhcp6_lexer.ll"
2804 switch(driver.ctx_) {
2816#line 276 "dhcp6_lexer.ll"
2818 switch(driver.ctx_) {
2830#line 287 "dhcp6_lexer.ll"
2836 std::string tmp(
yytext+1);
2837 tmp.resize(tmp.size() - 1);
2843#line 297 "dhcp6_lexer.ll"
2849 std::string tmp(
yytext+1);
2850 tmp.resize(tmp.size() - 1);
2856#line 307 "dhcp6_lexer.ll"
2862 std::string tmp(
yytext+1);
2863 tmp.resize(tmp.size() - 1);
2869#line 317 "dhcp6_lexer.ll"
2875 std::string tmp(
yytext+1);
2876 tmp.resize(tmp.size() - 1);
2882#line 327 "dhcp6_lexer.ll"
2888 std::string tmp(
yytext+1);
2889 tmp.resize(tmp.size() - 1);
2895#line 337 "dhcp6_lexer.ll"
2897 switch(driver.ctx_) {
2907#line 346 "dhcp6_lexer.ll"
2913 std::string tmp(
yytext+1);
2914 tmp.resize(tmp.size() - 1);
2920#line 356 "dhcp6_lexer.ll"
2926 std::string tmp(
yytext+1);
2927 tmp.resize(tmp.size() - 1);
2933#line 366 "dhcp6_lexer.ll"
2939 std::string tmp(
yytext+1);
2940 tmp.resize(tmp.size() - 1);
2946#line 376 "dhcp6_lexer.ll"
2952 std::string tmp(
yytext+1);
2953 tmp.resize(tmp.size() - 1);
2959#line 386 "dhcp6_lexer.ll"
2961 switch(driver.ctx_) {
2971#line 395 "dhcp6_lexer.ll"
2973 switch(driver.ctx_) {
2983#line 404 "dhcp6_lexer.ll"
2985 switch(driver.ctx_) {
2995#line 413 "dhcp6_lexer.ll"
2997 switch(driver.ctx_) {
3007#line 422 "dhcp6_lexer.ll"
3009 switch(driver.ctx_) {
3019#line 431 "dhcp6_lexer.ll"
3021 switch(driver.ctx_) {
3031#line 440 "dhcp6_lexer.ll"
3033 switch(driver.ctx_) {
3043#line 449 "dhcp6_lexer.ll"
3045 switch(driver.ctx_) {
3055#line 458 "dhcp6_lexer.ll"
3057 switch(driver.ctx_) {
3067#line 467 "dhcp6_lexer.ll"
3069 switch(driver.ctx_) {
3079#line 476 "dhcp6_lexer.ll"
3081 switch(driver.ctx_) {
3091#line 485 "dhcp6_lexer.ll"
3093 switch(driver.ctx_) {
3103#line 494 "dhcp6_lexer.ll"
3105 switch(driver.ctx_) {
3115#line 503 "dhcp6_lexer.ll"
3117 switch(driver.ctx_) {
3127#line 512 "dhcp6_lexer.ll"
3129 switch(driver.ctx_) {
3139#line 521 "dhcp6_lexer.ll"
3141 switch(driver.ctx_) {
3151#line 530 "dhcp6_lexer.ll"
3153 switch(driver.ctx_) {
3163#line 539 "dhcp6_lexer.ll"
3165 switch(driver.ctx_) {
3175#line 548 "dhcp6_lexer.ll"
3177 switch(driver.ctx_) {
3191#line 561 "dhcp6_lexer.ll"
3193 switch(driver.ctx_) {
3203#line 570 "dhcp6_lexer.ll"
3205 switch(driver.ctx_) {
3215#line 579 "dhcp6_lexer.ll"
3217 switch(driver.ctx_) {
3227#line 588 "dhcp6_lexer.ll"
3229 switch(driver.ctx_) {
3241#line 599 "dhcp6_lexer.ll"
3243 switch(driver.ctx_) {
3255#line 610 "dhcp6_lexer.ll"
3257 switch(driver.ctx_) {
3269#line 621 "dhcp6_lexer.ll"
3271 switch(driver.ctx_) {
3283#line 632 "dhcp6_lexer.ll"
3285 switch(driver.ctx_) {
3298#line 644 "dhcp6_lexer.ll"
3300 switch(driver.ctx_) {
3312#line 655 "dhcp6_lexer.ll"
3314 switch(driver.ctx_) {
3326#line 666 "dhcp6_lexer.ll"
3328 switch(driver.ctx_) {
3340#line 677 "dhcp6_lexer.ll"
3342 switch(driver.ctx_) {
3354#line 688 "dhcp6_lexer.ll"
3356 switch(driver.ctx_) {
3368#line 699 "dhcp6_lexer.ll"
3370 switch(driver.ctx_) {
3382#line 710 "dhcp6_lexer.ll"
3384 switch(driver.ctx_) {
3396#line 721 "dhcp6_lexer.ll"
3398 switch(driver.ctx_) {
3408#line 730 "dhcp6_lexer.ll"
3410 switch(driver.ctx_) {
3420#line 739 "dhcp6_lexer.ll"
3422 switch(driver.ctx_) {
3432#line 748 "dhcp6_lexer.ll"
3434 switch(driver.ctx_) {
3446#line 759 "dhcp6_lexer.ll"
3448 switch(driver.ctx_) {
3460#line 770 "dhcp6_lexer.ll"
3462 switch(driver.ctx_) {
3472#line 779 "dhcp6_lexer.ll"
3474 switch(driver.ctx_) {
3486#line 790 "dhcp6_lexer.ll"
3488 switch(driver.ctx_) {
3500#line 801 "dhcp6_lexer.ll"
3502 switch(driver.ctx_) {
3514#line 812 "dhcp6_lexer.ll"
3516 switch(driver.ctx_) {
3528#line 823 "dhcp6_lexer.ll"
3530 switch(driver.ctx_) {
3543#line 835 "dhcp6_lexer.ll"
3545 switch(driver.ctx_) {
3558#line 847 "dhcp6_lexer.ll"
3560 switch(driver.ctx_) {
3573#line 859 "dhcp6_lexer.ll"
3575 switch(driver.ctx_) {
3588#line 871 "dhcp6_lexer.ll"
3590 switch(driver.ctx_) {
3603#line 883 "dhcp6_lexer.ll"
3605 switch(driver.ctx_) {
3618#line 895 "dhcp6_lexer.ll"
3620 switch(driver.ctx_) {
3632#line 906 "dhcp6_lexer.ll"
3634 switch(driver.ctx_) {
3646#line 917 "dhcp6_lexer.ll"
3648 switch(driver.ctx_) {
3658#line 926 "dhcp6_lexer.ll"
3660 switch(driver.ctx_) {
3670#line 935 "dhcp6_lexer.ll"
3672 switch(driver.ctx_) {
3682#line 944 "dhcp6_lexer.ll"
3684 switch(driver.ctx_) {
3696#line 955 "dhcp6_lexer.ll"
3698 switch(driver.ctx_) {
3710#line 966 "dhcp6_lexer.ll"
3712 switch(driver.ctx_) {
3722#line 975 "dhcp6_lexer.ll"
3724 switch(driver.ctx_) {
3734#line 984 "dhcp6_lexer.ll"
3736 switch(driver.ctx_) {
3748#line 995 "dhcp6_lexer.ll"
3750 switch(driver.ctx_) {
3762#line 1006 "dhcp6_lexer.ll"
3764 switch(driver.ctx_) {
3776#line 1017 "dhcp6_lexer.ll"
3778 switch(driver.ctx_) {
3790#line 1028 "dhcp6_lexer.ll"
3792 switch(driver.ctx_) {
3804#line 1039 "dhcp6_lexer.ll"
3806 switch(driver.ctx_) {
3818#line 1050 "dhcp6_lexer.ll"
3820 switch(driver.ctx_) {
3832#line 1061 "dhcp6_lexer.ll"
3834 switch(driver.ctx_) {
3846#line 1072 "dhcp6_lexer.ll"
3848 switch(driver.ctx_) {
3860#line 1083 "dhcp6_lexer.ll"
3865 std::string tmp(
yytext+1);
3866 tmp.resize(tmp.size() - 1);
3872#line 1092 "dhcp6_lexer.ll"
3877 std::string tmp(
yytext+1);
3878 tmp.resize(tmp.size() - 1);
3884#line 1101 "dhcp6_lexer.ll"
3889 std::string tmp(
yytext+1);
3890 tmp.resize(tmp.size() - 1);
3896#line 1110 "dhcp6_lexer.ll"
3901 std::string tmp(
yytext+1);
3902 tmp.resize(tmp.size() - 1);
3908#line 1122 "dhcp6_lexer.ll"
3910 switch(driver.ctx_) {
3922#line 1133 "dhcp6_lexer.ll"
3924 switch(driver.ctx_) {
3935#line 1143 "dhcp6_lexer.ll"
3937 switch(driver.ctx_) {
3949#line 1154 "dhcp6_lexer.ll"
3951 switch (driver.ctx_) {
3961#line 1163 "dhcp6_lexer.ll"
3963 switch(driver.ctx_) {
3973#line 1172 "dhcp6_lexer.ll"
3975 switch(driver.ctx_) {
3991#line 1187 "dhcp6_lexer.ll"
3993 switch(driver.ctx_) {
4010#line 1203 "dhcp6_lexer.ll"
4012 switch(driver.ctx_) {
4022#line 1212 "dhcp6_lexer.ll"
4024 switch(driver.ctx_) {
4034#line 1221 "dhcp6_lexer.ll"
4036 switch(driver.ctx_) {
4046#line 1230 "dhcp6_lexer.ll"
4048 switch(driver.ctx_) {
4058#line 1239 "dhcp6_lexer.ll"
4060 switch(driver.ctx_) {
4070#line 1248 "dhcp6_lexer.ll"
4072 switch(driver.ctx_) {
4082#line 1257 "dhcp6_lexer.ll"
4084 switch(driver.ctx_) {
4094#line 1266 "dhcp6_lexer.ll"
4096 switch(driver.ctx_) {
4106#line 1275 "dhcp6_lexer.ll"
4108 switch(driver.ctx_) {
4118#line 1284 "dhcp6_lexer.ll"
4120 switch(driver.ctx_) {
4130#line 1293 "dhcp6_lexer.ll"
4132 switch(driver.ctx_) {
4142#line 1302 "dhcp6_lexer.ll"
4144 switch(driver.ctx_) {
4155#line 1312 "dhcp6_lexer.ll"
4157 switch(driver.ctx_) {
4182#line 1336 "dhcp6_lexer.ll"
4184 switch(driver.ctx_) {
4209#line 1360 "dhcp6_lexer.ll"
4211 switch(driver.ctx_) {
4221#line 1369 "dhcp6_lexer.ll"
4223 switch(driver.ctx_) {
4234#line 1379 "dhcp6_lexer.ll"
4236 switch(driver.ctx_) {
4247#line 1389 "dhcp6_lexer.ll"
4249 switch(driver.ctx_) {
4259#line 1398 "dhcp6_lexer.ll"
4261 switch(driver.ctx_) {
4272#line 1408 "dhcp6_lexer.ll"
4274 switch(driver.ctx_) {
4286#line 1419 "dhcp6_lexer.ll"
4288 switch(driver.ctx_) {
4300#line 1430 "dhcp6_lexer.ll"
4302 switch(driver.ctx_) {
4314#line 1441 "dhcp6_lexer.ll"
4316 switch(driver.ctx_) {
4327#line 1451 "dhcp6_lexer.ll"
4329 switch(driver.ctx_) {
4339#line 1460 "dhcp6_lexer.ll"
4341 switch(driver.ctx_) {
4351#line 1469 "dhcp6_lexer.ll"
4353 switch(driver.ctx_) {
4363#line 1478 "dhcp6_lexer.ll"
4365 switch(driver.ctx_) {
4377#line 1489 "dhcp6_lexer.ll"
4379 switch(driver.ctx_) {
4391#line 1500 "dhcp6_lexer.ll"
4393 switch(driver.ctx_) {
4405#line 1511 "dhcp6_lexer.ll"
4407 switch(driver.ctx_) {
4419#line 1522 "dhcp6_lexer.ll"
4421 switch(driver.ctx_) {
4433#line 1533 "dhcp6_lexer.ll"
4435 switch(driver.ctx_) {
4445#line 1542 "dhcp6_lexer.ll"
4447 switch(driver.ctx_) {
4457#line 1551 "dhcp6_lexer.ll"
4459 switch(driver.ctx_) {
4469#line 1560 "dhcp6_lexer.ll"
4471 switch(driver.ctx_) {
4481#line 1569 "dhcp6_lexer.ll"
4483 switch(driver.ctx_) {
4493#line 1578 "dhcp6_lexer.ll"
4495 switch(driver.ctx_) {
4505#line 1587 "dhcp6_lexer.ll"
4507 switch(driver.ctx_) {
4517#line 1596 "dhcp6_lexer.ll"
4519 switch(driver.ctx_) {
4529#line 1605 "dhcp6_lexer.ll"
4531 switch(driver.ctx_) {
4541#line 1614 "dhcp6_lexer.ll"
4543 switch(driver.ctx_) {
4553#line 1623 "dhcp6_lexer.ll"
4555 switch(driver.ctx_) {
4566#line 1633 "dhcp6_lexer.ll"
4568 switch(driver.ctx_) {
4581#line 1645 "dhcp6_lexer.ll"
4583 switch(driver.ctx_) {
4597#line 1658 "dhcp6_lexer.ll"
4599 switch(driver.ctx_) {
4609#line 1667 "dhcp6_lexer.ll"
4611 switch(driver.ctx_) {
4621#line 1676 "dhcp6_lexer.ll"
4623 switch(driver.ctx_) {
4633#line 1685 "dhcp6_lexer.ll"
4635 switch(driver.ctx_) {
4646#line 1695 "dhcp6_lexer.ll"
4648 switch(driver.ctx_) {
4659#line 1705 "dhcp6_lexer.ll"
4661 switch(driver.ctx_) {
4671#line 1714 "dhcp6_lexer.ll"
4673 switch(driver.ctx_) {
4685#line 1725 "dhcp6_lexer.ll"
4687 switch(driver.ctx_) {
4698#line 1735 "dhcp6_lexer.ll"
4700 switch(driver.ctx_) {
4710#line 1744 "dhcp6_lexer.ll"
4712 switch(driver.ctx_) {
4723#line 1754 "dhcp6_lexer.ll"
4725 switch(driver.ctx_) {
4736#line 1764 "dhcp6_lexer.ll"
4738 switch(driver.ctx_) {
4748#line 1773 "dhcp6_lexer.ll"
4750 switch(driver.ctx_) {
4760#line 1782 "dhcp6_lexer.ll"
4762 switch(driver.ctx_) {
4772#line 1791 "dhcp6_lexer.ll"
4774 switch(driver.ctx_) {
4784#line 1800 "dhcp6_lexer.ll"
4786 switch(driver.ctx_) {
4797#line 1810 "dhcp6_lexer.ll"
4799 switch(driver.ctx_) {
4809#line 1819 "dhcp6_lexer.ll"
4811 switch(driver.ctx_) {
4821#line 1828 "dhcp6_lexer.ll"
4823 switch(driver.ctx_) {
4833#line 1837 "dhcp6_lexer.ll"
4835 switch(driver.ctx_) {
4845#line 1846 "dhcp6_lexer.ll"
4847 switch(driver.ctx_) {
4857#line 1855 "dhcp6_lexer.ll"
4859 switch(driver.ctx_) {
4869#line 1864 "dhcp6_lexer.ll"
4871 switch(driver.ctx_) {
4881#line 1873 "dhcp6_lexer.ll"
4883 switch(driver.ctx_) {
4893#line 1882 "dhcp6_lexer.ll"
4895 switch(driver.ctx_) {
4905#line 1891 "dhcp6_lexer.ll"
4907 switch(driver.ctx_) {
4917#line 1900 "dhcp6_lexer.ll"
4919 switch(driver.ctx_) {
4929#line 1909 "dhcp6_lexer.ll"
4931 switch(driver.ctx_) {
4941#line 1918 "dhcp6_lexer.ll"
4943 switch(driver.ctx_) {
4953#line 1927 "dhcp6_lexer.ll"
4955 switch(driver.ctx_) {
4965#line 1936 "dhcp6_lexer.ll"
4967 switch(driver.ctx_) {
4977#line 1945 "dhcp6_lexer.ll"
4979 switch(driver.ctx_) {
4989#line 1954 "dhcp6_lexer.ll"
4991 switch(driver.ctx_) {
5001#line 1963 "dhcp6_lexer.ll"
5003 switch(driver.ctx_) {
5013#line 1972 "dhcp6_lexer.ll"
5015 switch(driver.ctx_) {
5025#line 1981 "dhcp6_lexer.ll"
5027 switch(driver.ctx_) {
5037#line 1990 "dhcp6_lexer.ll"
5039 switch(driver.ctx_) {
5049#line 1999 "dhcp6_lexer.ll"
5051 switch(driver.ctx_) {
5061#line 2008 "dhcp6_lexer.ll"
5063 switch(driver.ctx_) {
5073#line 2017 "dhcp6_lexer.ll"
5075 switch(driver.ctx_) {
5085#line 2026 "dhcp6_lexer.ll"
5087 switch(driver.ctx_) {
5097#line 2035 "dhcp6_lexer.ll"
5099 switch(driver.ctx_) {
5109#line 2044 "dhcp6_lexer.ll"
5111 switch(driver.ctx_) {
5121#line 2053 "dhcp6_lexer.ll"
5123 switch(driver.ctx_) {
5133#line 2062 "dhcp6_lexer.ll"
5135 switch(driver.ctx_) {
5145#line 2071 "dhcp6_lexer.ll"
5147 switch(driver.ctx_) {
5157#line 2080 "dhcp6_lexer.ll"
5159 switch(driver.ctx_) {
5169#line 2089 "dhcp6_lexer.ll"
5171 switch(driver.ctx_) {
5181#line 2098 "dhcp6_lexer.ll"
5183 switch(driver.ctx_) {
5193#line 2107 "dhcp6_lexer.ll"
5195 switch(driver.ctx_) {
5205#line 2116 "dhcp6_lexer.ll"
5207 switch(driver.ctx_) {
5217#line 2125 "dhcp6_lexer.ll"
5219 switch(driver.ctx_) {
5229#line 2134 "dhcp6_lexer.ll"
5234 std::string raw(
yytext+1);
5235 size_t len = raw.size() - 1;
5237 std::string decoded;
5238 decoded.reserve(len);
5239 for (
size_t pos = 0; pos < len; ++pos) {
5245 driver.error(driver.loc_,
"Bad quote in \"" + raw +
"\"");
5251 driver.error(driver.loc_,
"Overflow escape in \"" + raw +
"\"");
5258 decoded.push_back(c);
5261 decoded.push_back(
'\b');
5264 decoded.push_back(
'\f');
5267 decoded.push_back(
'\n');
5270 decoded.push_back(
'\r');
5273 decoded.push_back(
'\t');
5278 if (pos + 4 > len) {
5280 driver.error(driver.loc_,
5281 "Overflow unicode escape in \"" + raw +
"\"");
5283 if ((raw[pos] !=
'0') || (raw[pos + 1] !=
'0')) {
5284 driver.error(driver.loc_,
5285 "Unsupported unicode escape in \"" + raw +
"\"",
5290 if ((c >=
'0') && (c <=
'9')) {
5292 }
else if ((c >=
'A') && (c <=
'F')) {
5293 b = (c -
'A' + 10) << 4;
5294 }
else if ((c >=
'a') && (c <=
'f')) {
5295 b = (c -
'a' + 10) << 4;
5298 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
5302 if ((c >=
'0') && (c <=
'9')) {
5304 }
else if ((c >=
'A') && (c <=
'F')) {
5306 }
else if ((c >=
'a') && (c <=
'f')) {
5310 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
5312 decoded.push_back(
static_cast<char>(b & 0xff));
5316 driver.error(driver.loc_,
"Bad escape in \"" + raw +
"\"");
5320 if ((c >= 0) && (c < 0x20)) {
5322 driver.error(driver.loc_,
"Invalid control in \"" + raw +
"\"");
5324 decoded.push_back(c);
5334#line 2235 "dhcp6_lexer.ll"
5337 std::string raw(
yytext+1);
5338 size_t len = raw.size() - 1;
5340 for (; pos < len; ++pos) {
5342 if ((c >= 0) && (c < 0x20)) {
5346 driver.error(driver.loc_,
5347 "Invalid control in " + std::string(
yytext),
5354#line 2251 "dhcp6_lexer.ll"
5357 std::string raw(
yytext+1);
5358 size_t len = raw.size() - 1;
5361 for (; pos < len; ++pos) {
5380 if ((pos + 4 > len) ||
5381 !std::isxdigit(raw[pos + 1]) ||
5382 !std::isxdigit(raw[pos + 2]) ||
5383 !std::isxdigit(raw[pos + 3]) ||
5384 !std::isxdigit(raw[pos + 4])) {
5395 std::string trailer =
"";
5396 if (raw[len - 1] ==
'\\') {
5399 driver.error(driver.loc_,
5400 "Bad escape in " + std::string(
yytext) + trailer,
5406#line 2300 "dhcp6_lexer.ll"
5409 std::string raw(
yytext+1);
5410 driver.error(driver.loc_,
5411 "Overflow escape in " + std::string(
yytext),
5417#line 2308 "dhcp6_lexer.ll"
5420 std::string raw(
yytext+1);
5421 size_t pos = raw.size() - 1;
5422 for (; pos > 0; --pos) {
5428 driver.error(driver.loc_,
5429 "Overflow unicode escape in " + std::string(
yytext),
5435#line 2323 "dhcp6_lexer.ll"
5440#line 2324 "dhcp6_lexer.ll"
5445#line 2325 "dhcp6_lexer.ll"
5450#line 2326 "dhcp6_lexer.ll"
5455#line 2327 "dhcp6_lexer.ll"
5460#line 2328 "dhcp6_lexer.ll"
5465#line 2330 "dhcp6_lexer.ll"
5469 int64_t integer = 0;
5475 integer = boost::lexical_cast<int64_t>(tmp);
5476 }
catch (
const boost::bad_lexical_cast &) {
5477 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to an integer.");
5486#line 2348 "dhcp6_lexer.ll"
5492 fp = boost::lexical_cast<double>(tmp);
5493 }
catch (
const boost::bad_lexical_cast &) {
5494 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to a floating point.");
5502#line 2361 "dhcp6_lexer.ll"
5510#line 2366 "dhcp6_lexer.ll"
5517#line 2370 "dhcp6_lexer.ll"
5518driver.error (driver.loc_,
"JSON true reserved keyword is lower case only");
5522#line 2372 "dhcp6_lexer.ll"
5523driver.error (driver.loc_,
"JSON false reserved keyword is lower case only");
5527#line 2374 "dhcp6_lexer.ll"
5528driver.error (driver.loc_,
"JSON null reserved keyword is lower case only");
5532#line 2376 "dhcp6_lexer.ll"
5533driver.error (driver.loc_,
"Invalid character: " + std::string(
yytext));
5536#line 2378 "dhcp6_lexer.ll"
5538 if (driver.states_.empty()) {
5541 driver.loc_ = driver.locs_.back();
5542 driver.locs_.pop_back();
5543 driver.file_ = driver.files_.back();
5544 driver.files_.pop_back();
5545 if (driver.sfile_) {
5546 fclose(driver.sfile_);
5549 if (!driver.sfiles_.empty()) {
5550 driver.sfile_ = driver.sfiles_.back();
5551 driver.sfiles_.pop_back();
5554 parser6__switch_to_buffer(driver.states_.back());
5555 driver.states_.pop_back();
5562#line 2401 "dhcp6_lexer.ll"
5565#line 5565 "dhcp6_lexer.cc"
5573 *
yy_cp = (yy_hold_char);
5607 (yy_c_buf_p) = (
yytext_ptr) + yy_amount_of_matched_text;
5609 yy_current_state = yy_get_previous_state( );
5620 yy_next_state = yy_try_NUL_trans( yy_current_state );
5624 if ( yy_next_state )
5627 yy_cp = ++(yy_c_buf_p);
5628 yy_current_state = yy_next_state;
5635 yy_cp = (yy_last_accepting_cpos);
5636 yy_current_state = (yy_last_accepting_state);
5637 goto yy_find_action;
5641 else switch ( yy_get_next_buffer( ) )
5645 (yy_did_buffer_switch_on_eof) = 0;
5666 if ( ! (yy_did_buffer_switch_on_eof) )
5676 yy_current_state = yy_get_previous_state( );
5678 yy_cp = (yy_c_buf_p);
5686 yy_current_state = yy_get_previous_state( );
5688 yy_cp = (yy_c_buf_p);
5690 goto yy_find_action;
5697 "fatal flex scanner internal error--no action found" );
5718static int yy_get_next_buffer (
void)
5725 int number_to_move, i;
5730 "fatal flex scanner internal error--end of buffer missed" );
5754 number_to_move = (int) ((yy_c_buf_p) - (
yytext_ptr) - 1);
5756 for ( i = 0; i < number_to_move; ++i )
5757 *(dest++) = *(source++);
5770 while ( num_to_read <= 0 )
5776 int yy_c_buf_p_offset =
5783 if ( new_size <= 0 )
5799 "fatal error - scanner input buffer overflow" );
5801 (yy_c_buf_p) = &b->
yy_ch_buf[yy_c_buf_p_offset];
5813 (yy_n_chars), num_to_read );
5818 if ( (yy_n_chars) == 0 )
5839 int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
5843 YY_FATAL_ERROR(
"out of dynamic memory in yy_get_next_buffer()" );
5848 (yy_n_chars) += number_to_move;
5870 yy_current_state = (yy_start);
5876 if ( yy_accept[yy_current_state] )
5878 (yy_last_accepting_state) = yy_current_state;
5879 (yy_last_accepting_cpos) =
yy_cp;
5881 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
5883 yy_current_state = (int) yy_def[yy_current_state];
5884 if ( yy_current_state >= 2202 )
5885 yy_c = yy_meta[yy_c];
5887 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
5890 return yy_current_state;
5906 char *
yy_cp = (yy_c_buf_p);
5909 if ( yy_accept[yy_current_state] )
5911 (yy_last_accepting_state) = yy_current_state;
5912 (yy_last_accepting_cpos) =
yy_cp;
5914 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
5916 yy_current_state = (int) yy_def[yy_current_state];
5917 if ( yy_current_state >= 2202 )
5918 yy_c = yy_meta[yy_c];
5920 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
5921 yy_is_jam = (yy_current_state == 2201);
5923 return yy_is_jam ? 0 : yy_current_state;
5935 static int yyinput (
void)
5937 static int input (
void)
5946 *(yy_c_buf_p) = (yy_hold_char);
5956 *(yy_c_buf_p) =
'\0';
5960 int offset = (int) ((yy_c_buf_p) - (
yytext_ptr));
5963 switch ( yy_get_next_buffer( ) )
5986 if ( ! (yy_did_buffer_switch_on_eof) )
6002 c = *(
unsigned char *) (yy_c_buf_p);
6003 *(yy_c_buf_p) =
'\0';
6004 (yy_hold_char) = *++(yy_c_buf_p);
6062 *(yy_c_buf_p) = (yy_hold_char);
6075 (yy_did_buffer_switch_on_eof) = 1;
6091 (yy_hold_char) = *(yy_c_buf_p);
6239 if (new_buffer == NULL)
6248 *(yy_c_buf_p) = (yy_hold_char);
6255 (yy_buffer_stack_top)++;
6260 (yy_did_buffer_switch_on_eof) = 1;
6280 if ((yy_buffer_stack_top) > 0)
6281 --(yy_buffer_stack_top);
6285 (yy_did_buffer_switch_on_eof) = 1;
6302 if (!(yy_buffer_stack)) {
6312 if ( ! (yy_buffer_stack) )
6313 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
6315 memset((yy_buffer_stack), 0, num_to_alloc *
sizeof(
struct yy_buffer_state*));
6317 (yy_buffer_stack_max) = num_to_alloc;
6318 (yy_buffer_stack_top) = 0;
6322 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
6327 num_to_alloc = (yy_buffer_stack_max) + grow_size;
6332 if ( ! (yy_buffer_stack) )
6333 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
6336 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size *
sizeof(
struct yy_buffer_state*));
6337 (yy_buffer_stack_max) = num_to_alloc;
6416 for ( i = 0; i < _yybytes_len; ++i )
6417 buf[i] = yybytes[i];
6434#ifndef YY_EXIT_FAILURE
6435#define YY_EXIT_FAILURE 2
6439static void yynoreturn yy_fatal_error (
const char* msg )
6441 fprintf( stderr,
"%s\n", msg );
6455 int yyless_macro_arg = (n); \
6456 YY_LESS_LINENO(yyless_macro_arg);\
6457 yytext[yyleng] = (yy_hold_char); \
6458 (yy_c_buf_p) = yytext + yyless_macro_arg; \
6459 (yy_hold_char) = *(yy_c_buf_p); \
6460 *(yy_c_buf_p) = '\0'; \
6461 yyleng = yyless_macro_arg; \
6560static int yy_init_globals (
void)
6566 (yy_buffer_stack) = NULL;
6567 (yy_buffer_stack_top) = 0;
6568 (yy_buffer_stack_max) = 0;
6569 (yy_c_buf_p) = NULL;
6602 yyfree((yy_buffer_stack) );
6603 (yy_buffer_stack) = NULL;
6620static void yy_flex_strncpy (
char* s1,
const char * s2,
int n )
6624 for ( i = 0; i < n; ++i )
6629#ifdef YY_NEED_STRLEN
6630static int yy_flex_strlen (
const char * s )
6633 for ( n = 0; s[n]; ++n )
6642 return malloc(size);
6655 return realloc(ptr, size);
6660 free( (
char *) ptr );
6665#define YYTABLES_NAME "yytables"
6670#line 2401 "dhcp6_lexer.ll"
6678 start_token_flag =
true;
6679 start_token_value = parser_type;
6686 buffer = parser6__scan_bytes(str.c_str(), str.size());
6688 fatal(
"cannot scan string");
6695 const std::string& filename,
6698 start_token_flag =
true;
6699 start_token_value = parser_type;
6708 buffer = parser6__create_buffer(f, 65536 );
6710 fatal(
"cannot scan file " + filename);
6712 parser6__switch_to_buffer(buffer);
6720 static_cast<void>(parser6_lex_destroy());
6731 parser6__delete_buffer(
states_.back());
6739 fatal(
"Too many nested include.");
6742 FILE* f = fopen(filename.c_str(),
"r");
6744 fatal(
"Can't open include file " + filename);
6752 buffer = parser6__create_buffer(f, 65536 );
6754 fatal(
"Can't scan include file " + filename);
6756 parser6__switch_to_buffer(buffer);
6769 void dummy() { yy_fatal_error(
"Fix me: how to disable its definition?"); }
unsigned char flex_uint8_t
#define YY_CURRENT_BUFFER
Evaluation error exception raised when trying to parse.
static symbol_type make_SUB_RESERVATION(const location_type &l)
static symbol_type make_NAME(const location_type &l)
static symbol_type make_CIPHER_LIST(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_WHEN_PRESENT(const location_type &l)
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_LENIENT_OPTION_PARSING(const location_type &l)
static symbol_type make_SENDER_PORT(const location_type &l)
static symbol_type make_CODE(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_AGE(const location_type &l)
static symbol_type make_CACHE_THRESHOLD(const location_type &l)
static symbol_type make_ALLOCATOR(const location_type &l)
static symbol_type make_DHCP6(const location_type &l)
static symbol_type make_HOSTS_DATABASE(const location_type &l)
static symbol_type make_DDNS_CONFLICT_RESOLUTION_MODE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_REQUIRE_ALL(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_ENTERPRISE_ID(const location_type &l)
static symbol_type make_COMMA(const location_type &l)
static symbol_type make_DHCP_DDNS(const location_type &l)
static symbol_type make_MAX_RECLAIM_TIME(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
static symbol_type make_RESERVATIONS_OUT_OF_POOL(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_EN(const location_type &l)
static symbol_type make_ARRAY(const location_type &l)
static symbol_type make_DDNS_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_COLON(const location_type &l)
static symbol_type make_RETRY_ON_STARTUP(const location_type &l)
static symbol_type make_SUB_DHCP6(const location_type &l)
static symbol_type make_RE_DETECT(const location_type &l)
static symbol_type make_DELEGATED_LEN(const location_type &l)
static symbol_type make_THREAD_POOL_SIZE(const location_type &l)
static symbol_type make_INTERFACE_ID(const location_type &l)
static symbol_type make_RESERVATIONS_LOOKUP_FIRST(const location_type &l)
static symbol_type make_HOSTNAME(const location_type &l)
static symbol_type make_DATA_DIRECTORY(const location_type &l)
static symbol_type make_MAX_QUEUE_SIZE(const location_type &l)
static symbol_type make_SUB_POOL6(const location_type &l)
static symbol_type make_SUB_DHCP_DDNS(const location_type &l)
static symbol_type make_SUB_CONFIG_CONTROL(const location_type &l)
static symbol_type make_DDNS_SEND_UPDATES(const location_type &l)
static symbol_type make_IP_ADDRESSES(const location_type &l)
static symbol_type make_POOLS(const location_type &l)
static symbol_type make_PREFIX(const location_type &l)
static symbol_type make_ID(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_RESERVATIONS(const location_type &l)
static symbol_type make_DATA(const location_type &l)
static symbol_type make_INTERFACES(const location_type &l)
static symbol_type make_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_SERVER_IP(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_POOL_ID(const location_type &l)
static symbol_type make_HOST_RESERVATION_IDENTIFIERS(const location_type &l)
static symbol_type make_OPTION_DATA(const location_type &l)
static symbol_type make_SUBNET6(const location_type &l)
static symbol_type make_PD_POOLS(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_TEMPLATE_TEST(const location_type &l)
static symbol_type make_MAX_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_TRUST_ANCHOR(const location_type &l)
static symbol_type make_PORT(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_ENABLE_UPDATES(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_REPLACEMENT(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
static symbol_type make_MAX_RECONNECT_TRIES(const location_type &l)
static symbol_type make_MAX_VALID_LIFETIME(const location_type &l)
static symbol_type make_TIME(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
static symbol_type make_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_SUB_INTERFACES6(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_MIN_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_LLT(const location_type &l)
static symbol_type make_READ_TIMEOUT(const location_type &l)
static symbol_type make_CERT_FILE(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_FLEX_ID(const location_type &l)
static symbol_type make_REQUIRE_CLIENT_CLASSES(const location_type &l)
static symbol_type make_SERVER_PORT(const location_type &l)
static symbol_type make_ONLY_IF_REQUIRED(const location_type &l)
static symbol_type make_SHARED_NETWORKS(const location_type &l)
static symbol_type make_DDNS_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_SUB_OPTION_DATA(const location_type &l)
static symbol_type make_OPTION_DEF(const location_type &l)
static symbol_type make_TCP_USER_TIMEOUT(const location_type &l)
static symbol_type make_DDNS_GENERATED_PREFIX(const location_type &l)
static symbol_type make_ALWAYS_SEND(const location_type &l)
static symbol_type make_CLIENT_CLASS(const location_type &l)
static symbol_type make_NEVER_SEND(const location_type &l)
static symbol_type make_IP_RESERVATIONS_UNIQUE(const location_type &l)
static symbol_type make_PARKED_PACKET_LIMIT(const location_type &l)
static symbol_type make_LFC_INTERVAL(const location_type &l)
static symbol_type make_USER(const location_type &l)
static symbol_type make_SUBNET(const location_type &l)
static symbol_type make_RECORD_TYPES(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_RECONNECT_WAIT_TIME(const location_type &l)
static symbol_type make_SUB_SUBNET6(const location_type &l)
static symbol_type make_EXPIRED_LEASES_PROCESSING(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX(const location_type &l)
static symbol_type make_ALWAYS(const location_type &l)
static symbol_type make_HOSTS_DATABASES(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
static symbol_type make_MYSQL(const location_type &l)
static symbol_type make_DDNS_USE_CONFLICT_RESOLUTION(const location_type &l)
static symbol_type make_MEMFILE(const location_type &l)
static symbol_type make_DDNS_UPDATE_ON_RENEW(const location_type &l)
static symbol_type make_SANITY_CHECKS(const location_type &l)
static symbol_type make_ENABLE_MULTI_THREADING(const location_type &l)
static symbol_type make_PERSIST(const location_type &l)
static symbol_type make_LEASE_DATABASE(const location_type &l)
static symbol_type make_INTERFACES_CONFIG(const location_type &l)
static symbol_type make_HTYPE(const location_type &l)
static symbol_type make_FLUSH_RECLAIMED_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_CONFIG_FETCH_WAIT_TIME(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_STORE_EXTENDED_INFO(const location_type &l)
static symbol_type make_CLIENT_CLASSES(const location_type &l)
static symbol_type make_PREFIX_LEN(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_IDENTIFIER(const location_type &l)
static symbol_type make_CACHE_MAX_AGE(const location_type &l)
static symbol_type make_READONLY(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_LEASE_CHECKS(const location_type &l)
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_MIN_VALID_LIFETIME(const location_type &l)
static symbol_type make_T2_PERCENT(const location_type &l)
static symbol_type make_UNWARNED_RECLAIM_CYCLES(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_POOL(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_RETRY_WAIT_TIME(const location_type &l)
static symbol_type make_LL(const location_type &l)
static symbol_type make_WHEN_NOT_PRESENT(const location_type &l)
static symbol_type make_SERVE_RETRY_EXIT(const location_type &l)
static symbol_type make_INTERFACE(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_SERVE_RETRY_CONTINUE(const location_type &l)
static symbol_type make_ENABLE_QUEUE(const location_type &l)
static symbol_type make_STOP_RETRY_EXIT(const location_type &l)
static symbol_type make_CONFIG_DATABASES(const location_type &l)
static symbol_type make_DHCP_QUEUE_CONTROL(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_COUNT(const location_type &l)
static symbol_type make_CALCULATE_TEE_TIMES(const location_type &l)
static symbol_type make_CAPACITY(const location_type &l)
static symbol_type make_RECLAIM_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_SUB_OPTION_DEF(const location_type &l)
static symbol_type make_DHCP_MULTI_THREADING(const location_type &l)
static symbol_type make_EARLY_GLOBAL_RESERVATIONS_LOOKUP(const location_type &l)
static symbol_type make_SUB_PD_POOL(const location_type &l)
static symbol_type make_T1_PERCENT(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_UDP(const location_type &l)
static symbol_type make_POSTGRESQL(const location_type &l)
static symbol_type make_CHECK_EXISTS_WITH_DHCID(const location_type &l)
static symbol_type make_KEY_FILE(const location_type &l)
static symbol_type make_QUEUE_TYPE(const location_type &l)
static symbol_type make_TOPLEVEL_DHCP6(const location_type &l)
static symbol_type make_SERVER_ID(const location_type &l)
static symbol_type make_RELAY(const location_type &l)
static symbol_type make_HOLD_RECLAIMED_TIME(const location_type &l)
static symbol_type make_RELAY_SUPPLIED_OPTIONS(const location_type &l)
static symbol_type make_COMPATIBILITY(const location_type &l)
static symbol_type make_SUB_OPTION_DEFS(const location_type &l)
static symbol_type make_PD_ALLOCATOR(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_NO_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_WRITE_TIMEOUT(const location_type &l)
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_DDNS_TTL_PERCENT(const location_type &l)
static symbol_type make_EXTENDED_INFO_CHECKS(const location_type &l)
static symbol_type make_CONNECT_TIMEOUT(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
static symbol_type make_PACKET_QUEUE_SIZE(const location_type &l)
static symbol_type make_RESERVATIONS_IN_SUBNET(const location_type &l)
static symbol_type make_REBIND_TIMER(const location_type &l)
static symbol_type make_NO_CHECK_WITHOUT_DHCID(const location_type &l)
static symbol_type make_CONFIG_CONTROL(const location_type &l)
static symbol_type make_PREFIXES(const location_type &l)
static symbol_type make_CSV_FORMAT(const location_type &l)
static symbol_type make_MAC_SOURCES(const location_type &l)
static symbol_type make_DECLINE_PROBATION_PERIOD(const location_type &l)
static symbol_type make_TEST(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_MAX_RETRIES(const location_type &l)
static symbol_type make_RAPID_COMMIT(const location_type &l)
static symbol_type make_DUID(const location_type &l)
static symbol_type make_DHCP4O6_PORT(const location_type &l)
static symbol_type make_VALID_LIFETIME(const location_type &l)
static symbol_type make_ON_FAIL(const location_type &l)
static symbol_type make_SENDER_IP(const location_type &l)
static symbol_type make_HOST(const location_type &l)
static symbol_type make_MAX_RECLAIM_LEASES(const location_type &l)
static symbol_type make_SPACE(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX_LEN(const location_type &l)
static symbol_type make_HW_ADDRESS(const location_type &l)
static symbol_type make_RENEW_TIMER(const location_type &l)
static symbol_type make_MAX_ROW_ERRORS(const location_type &l)
static symbol_type make_NEVER(const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
static symbol_type make_ENCAPSULATE(const location_type &l)
static symbol_type make_RESERVATIONS_GLOBAL(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_SET(const location_type &l)
static symbol_type make_SERVER_TAG(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
std::string file_
File name.
std::vector< isc::dhcp::location > locs_
Location stack.
isc::dhcp::location loc_
Location of the current token.
void includeFile(const std::string &filename)
Divert input to an include file.
FILE * sfile_
sFile (aka FILE)
void scanStringBegin(const std::string &str, ParserType type)
Method called before scanning starts on a string.
std::vector< std::string > files_
File name stack.
@ LOGGERS
Used while parsing Dhcp6/loggers structures.
@ CLIENT_CLASSES
Used while parsing Dhcp6/client-classes structures.
@ DATABASE_ON_FAIL
Used while parsing Dhcp6/*-database/on-fail.
@ OPTION_DEF
Used while parsing Dhcp6/option-def structures.
@ POOLS
Used while parsing Dhcp6/subnet6/pools structures.
@ EXPIRED_LEASES_PROCESSING
Used while parsing Dhcp6/expired-leases-processing.
@ OPTION_DATA
Used while parsing Dhcp6/option-data, Dhcp6/subnet6/option-data or anywhere option-data is present (c...
@ CONTROL_SOCKET
Used while parsing Dhcp6/control-socket structures.
@ SANITY_CHECKS
Sanity checks.
@ DHCP_QUEUE_CONTROL
Used while parsing Dhcp6/dhcp-queue-control structures.
@ SERVER_ID
Used while parsing Dhcp6/server-id structures.
@ HOSTS_DATABASE
Used while parsing Dhcp6/hosts-database[s] structures.
@ SUBNET6
Used while parsing Dhcp6/Subnet6 structures.
@ RESERVATIONS
Used while parsing Dhcp6/reservations structures.
@ CONFIG_DATABASE
Used while parsing config-control/config-databases.
@ DATABASE_TYPE
Used while parsing Dhcp6/*-database/type.
@ DHCP_DDNS
Used while parsing Dhcp6/dhcp-ddns.
@ COMPATIBILITY
Used while parsing compatibility parameters.
@ INTERFACES_CONFIG
Used while parsing Dhcp6/interfaces structures.
@ DUID_TYPE
Used while parsing Dhcp6/server-id/type structures.
@ HOOKS_LIBRARIES
Used while parsing Dhcp6/hooks-libraries.
@ CONFIG
Used while parsing content of Dhcp6.
@ DDNS_CONFLICT_RESOLUTION_MODE
Used while parsing Dhcp6/ddns-conflict-resolution-mode.
@ LEASE_DATABASE
Used while parsing Dhcp6/lease-database structures.
@ NCR_PROTOCOL
Used while parsing Dhcp6/dhcp-ddns/ncr-protocol.
@ RELAY
Used while parsing Dhcp6/subnet6/relay structures.
@ OUTPUT_OPTIONS
Used while parsing Dhcp6/loggers/output-options structures.
@ HOST_RESERVATION_IDENTIFIERS
Used while parsing Dhcp6/host-reservation-identifiers.
@ NCR_FORMAT
Used while parsing Dhcp6/dhcp-ddns/ncr-format.
@ REPLACE_CLIENT_NAME
Used while parsing Dhcp6/dhcp-ddns/replace-client-name.
@ DHCP_MULTI_THREADING
Used while parsing Dhcp6/multi-threading structures.
@ SHARED_NETWORK
Used while parsing shared-networks structures.
@ PD_POOLS
Used while parsing Dhcp6/subnet6/pd-pools structures.
@ MAC_SOURCES
Used while parsing Dhcp6/mac-sources structures.
@ CONFIG_CONTROL
Used while parsing Dhcp6/config-control.
void scanEnd()
Method called after the last tokens are scanned.
void scanFileBegin(FILE *f, const std::string &filename, ParserType type)
Method called before scanning starts on a file.
ParserType
Defines currently supported scopes.
@ PARSER_PD_POOL
This will parse the input as pd-pool content.
@ PARSER_DHCP6
This parser will parse the content as Dhcp6 config wrapped in a map (that's the regular config file)
@ PARSER_OPTION_DATA
This will parse the input as option data.
@ PARSER_HOOKS_LIBRARY
This will parse the input as hooks-library.
@ PARSER_POOL6
This will parse the input as pool6 content.
@ PARSER_JSON
This parser will parse the content as generic JSON.
@ PARSER_OPTION_DEF
This will parse the input as option definition.
@ PARSER_INTERFACES
This will parse the input as interfaces content.
@ PARSER_DHCP_DDNS
This will parse the input as dhcp-ddns. (D2 client config)
@ PARSER_CONFIG_CONTROL
This will parse the input as config-control.
@ PARSER_HOST_RESERVATION
This will parse the input as host-reservation.
@ PARSER_OPTION_DEFS
This will parse the input option definitions (for tests).
@ PARSER_SUBNET6
This will parse the input as Subnet6 content.
@ SUBPARSER_DHCP6
This parser will parse the content of Dhcp6 (without outer { } and without "Dhcp6").
std::vector< FILE * > sfiles_
sFile (aka FILE) stack
std::vector< struct yy_buffer_state * > states_
Lexer state stack.
#define yy_load_buffer_state
unsigned char flex_uint8_t
unsigned int flex_uint32_t
#define yypush_buffer_state
#define yyget_in
Get the input stream.
struct yy_buffer_state * YY_BUFFER_STATE
#define YY_RESTORE_YY_MORE_OFFSET
#define yyget_leng
Get the length of the current token.
#define yyget_out
Get the output stream.
#define yyensure_buffer_stack
#define EOB_ACT_END_OF_FILE
#define YY_CURRENT_BUFFER_LVALUE
#define yyget_text
Get the current token.
#define yy_switch_to_buffer
#define YY_CURRENT_BUFFER
#define YY_INPUT(buf, result, max_size)
#define YY_STATE_EOF(state)
#define YY_END_OF_BUFFER_CHAR
#define YY_FATAL_ERROR(msg)
unsigned short int flex_uint16_t
#define yypop_buffer_state
Removes and deletes the top of the stack, if present.
#define YY_DO_BEFORE_ACTION
#define EOB_ACT_LAST_MATCH
#define YY_BUFFER_EOF_PENDING
#define EOB_ACT_CONTINUE_SCAN
#define yyget_lineno
Get the current line number.
#define isc_throw(type, stream)
A shortcut macro to insert known values into exception arguments.
int yy_bs_column
The column count.
int yy_bs_lineno
The line count.