Changeset 16 for ruby/trunk/adl_parser/lib
- Timestamp:
- Apr 26, 2008, 12:47:03 AM (16 years ago)
- Location:
- ruby/trunk/adl_parser/lib
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/adl_parser/lib/parser.rb
r14 r16 21 21 class Parser < Racc::Parser 22 22 23 module_eval <<'..end lib/parser.y modeval..id 7c96f38efa', 'lib/parser.y', 63423 module_eval <<'..end lib/parser.y modeval..id35ef94ed29', 'lib/parser.y', 642 24 24 ###----------/* keywords */ --------------------------------------------- 25 25 @@adl_reserved = { … … 153 153 # @start_block_received = true 154 154 @adl_type.push(:dadl) 155 yield :SYM_START_DBLOCK, :SYM_START_DBLOCK155 yield :SYM_START_DBLOCK, $& 156 156 end 157 157 when /\A\>/ # > … … 171 171 # puts "Escaping #{adl_type}" 172 172 assert_at(__FILE__,__LINE__){adl_type == :cadl} 173 yield :SYM_END_CBLOCK, :SYM_END_CBLOCK173 yield :SYM_END_CBLOCK, $& 174 174 when /\A\-/ # - 175 175 yield :Minus_code, :Minus_code … … 307 307 @in_c_domain_type = true 308 308 @adl_type.push(:dadl) 309 yield :START_V_C_DOMAIN_TYPE_BLOCK, :START_V_C_DOMAIN_TYPE_BLOCK309 yield :START_V_C_DOMAIN_TYPE_BLOCK, $& 310 310 ### else 311 311 ### raise … … 316 316 else 317 317 @adl_type.push(:dadl) 318 yield :SYM_START_DBLOCK, :SYM_START_DBLOCK318 yield :SYM_START_DBLOCK, $& 319 319 end 320 320 when /\A\>/ # > … … 508 508 @in_interval = false 509 509 yield :SYM_GT, :SYM_GT 510 elsif @in_c_domain_type 511 @in_c_domain_type = false510 elsif @in_c_domain_type == true 511 assert_at(__FILE__,__LINE__){@adl_type.last == :dadl} 512 512 adl_type = @adl_type.pop 513 assert_at(__FILE__,__LINE__){adl_type == :dadl} 514 yield :END_V_C_DOMAIN_TYPE_BLOCK, :END_V_C_DOMAIN_TYPE_BLOCK 515 else 513 if @adl_type.last == :cadl 514 @in_c_domain_type = false 515 yield :END_V_C_DOMAIN_TYPE_BLOCK, $& 516 else 517 yield :SYM_END_DBLOCK, $& 518 end 519 elsif @in_c_domain_type == false 516 520 adl_type = @adl_type.pop 517 521 # puts "Escaping #{adl_type}" 518 522 assert_at(__FILE__,__LINE__){adl_type == :dadl} 519 yield :SYM_END_DBLOCK, :SYM_END_DBLOCK 523 yield :SYM_END_DBLOCK, $& 524 else 525 raise 520 526 end 521 527 when /\A\-/ # - … … 556 562 if @in_interval 557 563 @in_interval = false 558 # elsif @start_block_received559 # @start_block_received = false560 564 else 561 565 @in_interval = false 562 566 end 563 567 yield :SYM_INTERVAL_DELIM, :SYM_INTERVAL_DELIM 564 when /\A\[[a-zA-Z0-9()\._-]+::[a-zA-Z0-9\._-]+\]/ 565 # when /\A\[[a-zA-Z0-9()\._-]+\:\:[a-zA-Z0-9\._-]+\]/ #V_QUALIFIED_TERM_CODE_REF form [ICD10AM(1998)::F23] 568 when /\A\[[a-zA-Z0-9()\._-]+::[a-zA-Z0-9\._-]+\]/ #V_QUALIFIED_TERM_CODE_REF form [ICD10AM(1998)::F23] 566 569 yield :V_QUALIFIED_TERM_CODE_REF, $& 570 when /\A\[[a-zA-Z0-9._\- ]+::[a-zA-Z0-9._\- ]+\]/ #ERR_V_QUALIFIED_TERM_CODE_REF 571 yield :ERR_V_QUALIFIED_TERM_CODE_REF, $& 572 when /\A\[[a-zA-Z0-9][a-zA-Z0-9._\-]*\]/ #V_LOCAL_TERM_CODE_REF 573 yield :V_LOCAL_TERM_CODE_REF, $& 567 574 when /\A\[/ # [ 568 575 yield :Left_bracket_code, :Left_bracket_code 569 576 when /\A\]/ # ] 570 577 yield :Right_bracket_code, :Right_bracket_code 571 when /\A[A-Z][a-zA-Z0-9_ ]*/578 when /\A[A-Z][a-zA-Z0-9_-]*/ 572 579 yield :V_TYPE_IDENTIFIER, $& 573 580 when /\A[A-Z][a-zA-Z0-9_]*<[a-zA-Z0-9,_<>]+>/ #V_GENERIC_TYPE_IDENTIFIER … … 580 587 yield :V_ATTRIBUTE_IDENTIFIER, $& 581 588 end 582 when /\A\[[a-zA-Z0-9._\- ]+::[a-zA-Z0-9._\- ]+\]/ #ERR_V_QUALIFIED_TERM_CODE_REF583 yield :ERR_V_QUALIFIED_TERM_CODE_REF, $&584 when /\A\[[a-zA-Z0-9][a-zA-Z0-9._\-]*\]/ #V_LOCAL_TERM_CODE_REF585 yield :V_LOCAL_TERM_CODE_REF, $&586 589 when /\Aa[ct][0-9.]+/ #V_LOCAL_CODE 587 590 yield :V_LOCAL_CODE, $& … … 771 774 772 775 773 ..end lib/parser.y modeval..id 7c96f38efa776 ..end lib/parser.y modeval..id35ef94ed29 774 777 775 778 ##### racc 1.4.5 generates ### … … 795 798 2, 98, :_reduce_none, 796 799 0, 99, :_reduce_none, 797 2, 99, :_reduce_ none,800 2, 99, :_reduce_19, 798 801 2, 99, :_reduce_none, 799 802 0, 100, :_reduce_none, … … 807 810 5, 110, :_reduce_none, 808 811 2, 112, :_reduce_none, 809 1, 114, :_reduce_ none,810 2, 114, :_reduce_ none,812 1, 114, :_reduce_31, 813 2, 114, :_reduce_32, 811 814 1, 113, :_reduce_none, 812 815 1, 113, :_reduce_none, … … 822 825 1, 119, :_reduce_none, 823 826 3, 126, :_reduce_none, 824 1, 127, :_reduce_none,825 827 4, 120, :_reduce_none, 826 828 3, 120, :_reduce_none, 827 829 6, 121, :_reduce_none, 828 2, 12 9, :_reduce_none,829 2, 13 2, :_reduce_none,830 3, 13 2, :_reduce_none,831 2, 13 2, :_reduce_none,830 2, 128, :_reduce_none, 831 2, 131, :_reduce_none, 832 3, 131, :_reduce_none, 833 2, 131, :_reduce_none, 832 834 1, 125, :_reduce_none, 833 1, 13 3, :_reduce_none,834 1, 13 3, :_reduce_none,835 1, 13 3, :_reduce_none,836 1, 13 3, :_reduce_none,837 1, 13 3, :_reduce_none,838 1, 13 3, :_reduce_none,839 1, 13 3, :_reduce_none,840 1, 13 3, :_reduce_none,835 1, 132, :_reduce_none, 836 1, 132, :_reduce_none, 837 1, 132, :_reduce_none, 838 1, 132, :_reduce_none, 839 1, 132, :_reduce_none, 840 1, 132, :_reduce_none, 841 1, 132, :_reduce_none, 842 1, 132, :_reduce_none, 841 843 1, 117, :_reduce_none, 842 844 1, 118, :_reduce_none, 843 845 2, 118, :_reduce_none, 844 5, 142, :_reduce_none, 845 5, 142, :_reduce_none, 846 5, 142, :_reduce_none, 846 5, 141, :_reduce_none, 847 5, 141, :_reduce_none, 848 5, 141, :_reduce_none, 849 2, 142, :_reduce_none, 850 3, 142, :_reduce_none, 851 1, 143, :_reduce_none, 847 852 2, 143, :_reduce_none, 848 3, 143, :_reduce_none, 849 1, 144, :_reduce_none, 850 2, 144, :_reduce_none, 851 1, 144, :_reduce_none, 853 1, 143, :_reduce_none, 854 0, 129, :_reduce_none, 855 2, 129, :_reduce_none, 852 856 0, 130, :_reduce_none, 853 857 2, 130, :_reduce_none, 854 0, 131, :_reduce_none, 855 2, 131, :_reduce_none, 858 1, 146, :_reduce_none, 859 2, 146, :_reduce_none, 860 3, 147, :_reduce_none, 856 861 1, 147, :_reduce_none, 857 2, 147, :_reduce_none, 858 3, 148, :_reduce_none, 859 1, 148, :_reduce_none, 860 3, 148, :_reduce_none, 862 3, 147, :_reduce_none, 861 863 0, 102, :_reduce_none, 862 864 2, 102, :_reduce_none, … … 865 867 2, 103, :_reduce_none, 866 868 1, 108, :_reduce_none, 869 1, 150, :_reduce_none, 870 1, 150, :_reduce_none, 867 871 1, 151, :_reduce_none, 868 1, 151, :_reduce_none, 872 2, 151, :_reduce_none, 873 3, 151, :_reduce_none, 874 3, 153, :_reduce_none, 875 1, 154, :_reduce_none, 876 2, 154, :_reduce_none, 877 1, 155, :_reduce_none, 878 1, 155, :_reduce_none, 869 879 1, 152, :_reduce_none, 870 2, 152, :_reduce_none, 871 3, 152, :_reduce_none, 872 3, 154, :_reduce_none, 873 1, 155, :_reduce_none, 874 2, 155, :_reduce_none, 875 1, 156, :_reduce_none, 876 1, 156, :_reduce_none, 877 1, 153, :_reduce_none, 878 1, 153, :_reduce_none, 879 1, 159, :_reduce_none, 880 2, 159, :_reduce_none, 881 3, 160, :_reduce_none, 882 1, 161, :_reduce_none, 883 1, 162, :_reduce_none, 884 2, 162, :_reduce_none, 885 3, 163, :_reduce_none, 886 3, 164, :_reduce_none, 880 1, 152, :_reduce_none, 887 881 1, 158, :_reduce_none, 888 882 2, 158, :_reduce_none, 889 2, 166, :_reduce_none, 890 3, 166, :_reduce_none, 891 1, 167, :_reduce_none, 883 3, 159, :_reduce_none, 884 1, 160, :_reduce_none, 885 1, 161, :_reduce_none, 886 2, 161, :_reduce_none, 887 3, 162, :_reduce_none, 888 3, 163, :_reduce_none, 892 889 1, 157, :_reduce_none, 893 890 2, 157, :_reduce_none, 894 3, 168, :_reduce_none, 891 2, 165, :_reduce_none, 892 3, 165, :_reduce_none, 893 1, 166, :_reduce_none, 894 1, 156, :_reduce_none, 895 2, 156, :_reduce_none, 896 3, 167, :_reduce_none, 897 1, 168, :_reduce_none, 898 1, 168, :_reduce_none, 899 1, 168, :_reduce_none, 900 1, 168, :_reduce_none, 901 1, 168, :_reduce_none, 902 1, 164, :_reduce_none, 903 1, 164, :_reduce_none, 904 1, 164, :_reduce_none, 905 1, 164, :_reduce_none, 906 1, 164, :_reduce_none, 907 1, 164, :_reduce_none, 908 1, 164, :_reduce_none, 909 1, 164, :_reduce_none, 910 1, 164, :_reduce_none, 911 1, 164, :_reduce_none, 895 912 1, 169, :_reduce_none, 896 913 1, 169, :_reduce_none, … … 898 915 1, 169, :_reduce_none, 899 916 1, 169, :_reduce_none, 900 1, 165, :_reduce_none, 901 1, 165, :_reduce_none, 902 1, 165, :_reduce_none, 903 1, 165, :_reduce_none, 904 1, 165, :_reduce_none, 905 1, 165, :_reduce_none, 906 1, 165, :_reduce_none, 907 1, 165, :_reduce_none, 908 1, 165, :_reduce_none, 909 1, 165, :_reduce_none, 917 1, 169, :_reduce_none, 918 1, 169, :_reduce_none, 919 1, 169, :_reduce_none, 920 1, 169, :_reduce_none, 910 921 1, 170, :_reduce_none, 911 922 1, 170, :_reduce_none, … … 914 925 1, 170, :_reduce_none, 915 926 1, 170, :_reduce_none, 916 1, 170, :_reduce_none,917 1, 170, :_reduce_none,918 1, 170, :_reduce_none,919 1, 171, :_reduce_none,920 1, 171, :_reduce_none,921 1, 171, :_reduce_none,922 1, 171, :_reduce_none,923 1, 171, :_reduce_none,924 1, 171, :_reduce_none,925 927 1, 116, :_reduce_none, 926 928 1, 116, :_reduce_none, 929 1, 173, :_reduce_none, 930 3, 183, :_reduce_none, 931 3, 183, :_reduce_none, 932 3, 183, :_reduce_none, 927 933 1, 174, :_reduce_none, 934 2, 174, :_reduce_none, 935 2, 174, :_reduce_none, 928 936 3, 184, :_reduce_none, 929 937 3, 184, :_reduce_none, 930 938 3, 184, :_reduce_none, 939 5, 192, :_reduce_none, 940 6, 192, :_reduce_none, 941 6, 192, :_reduce_none, 942 7, 192, :_reduce_none, 943 4, 192, :_reduce_none, 944 4, 192, :_reduce_none, 945 4, 192, :_reduce_none, 946 4, 192, :_reduce_none, 947 3, 192, :_reduce_none, 931 948 1, 175, :_reduce_none, 932 949 2, 175, :_reduce_none, … … 945 962 3, 193, :_reduce_none, 946 963 1, 176, :_reduce_none, 947 2, 176, :_reduce_none, 948 2, 176, :_reduce_none, 964 1, 176, :_reduce_none, 949 965 3, 186, :_reduce_none, 950 966 3, 186, :_reduce_none, 951 967 3, 186, :_reduce_none, 968 1, 177, :_reduce_none, 969 3, 187, :_reduce_none, 970 3, 187, :_reduce_none, 971 3, 187, :_reduce_none, 972 1, 178, :_reduce_none, 973 3, 188, :_reduce_none, 974 3, 188, :_reduce_none, 975 3, 188, :_reduce_none, 952 976 5, 194, :_reduce_none, 953 977 6, 194, :_reduce_none, … … 959 983 4, 194, :_reduce_none, 960 984 3, 194, :_reduce_none, 961 1, 177, :_reduce_none,962 1, 177, :_reduce_none,963 3, 187, :_reduce_none,964 3, 187, :_reduce_none,965 3, 187, :_reduce_none,966 1, 178, :_reduce_none,967 3, 188, :_reduce_none,968 3, 188, :_reduce_none,969 3, 188, :_reduce_none,970 985 1, 179, :_reduce_none, 971 986 3, 189, :_reduce_none, … … 1007 1022 4, 197, :_reduce_none, 1008 1023 3, 197, :_reduce_none, 1024 1, 171, :_reduce_none, 1025 3, 172, :_reduce_none, 1026 3, 172, :_reduce_none, 1027 3, 172, :_reduce_none, 1009 1028 1, 182, :_reduce_none, 1010 3, 192, :_reduce_none,1011 3, 192, :_reduce_none,1012 3, 192, :_reduce_none,1013 5, 198, :_reduce_none,1014 6, 198, :_reduce_none,1015 6, 198, :_reduce_none,1016 7, 198, :_reduce_none,1017 4, 198, :_reduce_none,1018 4, 198, :_reduce_none,1019 4, 198, :_reduce_none,1020 4, 198, :_reduce_none,1021 3, 198, :_reduce_none,1022 1, 172, :_reduce_none,1023 3, 173, :_reduce_none,1024 3, 173, :_reduce_none,1025 3, 173, :_reduce_none,1026 1, 183, :_reduce_none,1027 1029 1, 111, :_reduce_none, 1028 1030 2, 111, :_reduce_none, 1031 3, 198, :_reduce_none, 1032 1, 198, :_reduce_none, 1033 3, 198, :_reduce_none, 1034 1, 149, :_reduce_none, 1035 1, 149, :_reduce_none, 1036 2, 200, :_reduce_none, 1037 2, 200, :_reduce_none, 1038 5, 200, :_reduce_none, 1039 5, 200, :_reduce_none, 1040 2, 200, :_reduce_none, 1041 3, 200, :_reduce_none, 1042 3, 200, :_reduce_none, 1043 3, 200, :_reduce_none, 1044 3, 200, :_reduce_none, 1045 3, 200, :_reduce_none, 1046 3, 200, :_reduce_none, 1047 3, 200, :_reduce_none, 1048 3, 200, :_reduce_none, 1049 3, 200, :_reduce_none, 1050 3, 200, :_reduce_none, 1029 1051 3, 199, :_reduce_none, 1030 1052 1, 199, :_reduce_none, 1031 3, 199, :_reduce_none, 1032 1, 150, :_reduce_none, 1033 1, 150, :_reduce_none, 1034 2, 201, :_reduce_none, 1035 2, 201, :_reduce_none, 1036 5, 201, :_reduce_none, 1037 5, 201, :_reduce_none, 1038 2, 201, :_reduce_none, 1039 3, 201, :_reduce_none, 1040 3, 201, :_reduce_none, 1041 3, 201, :_reduce_none, 1042 3, 201, :_reduce_none, 1043 3, 201, :_reduce_none, 1044 3, 201, :_reduce_none, 1045 3, 201, :_reduce_none, 1046 3, 201, :_reduce_none, 1047 3, 201, :_reduce_none, 1048 3, 201, :_reduce_none, 1049 3, 200, :_reduce_none, 1050 1, 200, :_reduce_none, 1051 1, 200, :_reduce_none, 1053 1, 199, :_reduce_none, 1054 1, 202, :_reduce_none, 1055 1, 202, :_reduce_none, 1056 3, 204, :_reduce_none, 1057 3, 204, :_reduce_none, 1058 3, 204, :_reduce_none, 1059 3, 204, :_reduce_none, 1060 3, 204, :_reduce_none, 1061 3, 203, :_reduce_none, 1052 1062 1, 203, :_reduce_none, 1053 1063 1, 203, :_reduce_none, 1054 3, 205, :_reduce_none, 1055 3, 205, :_reduce_none, 1056 3, 205, :_reduce_none, 1057 3, 205, :_reduce_none, 1058 3, 205, :_reduce_none, 1059 3, 204, :_reduce_none, 1060 1, 204, :_reduce_none, 1061 1, 204, :_reduce_none, 1062 1, 204, :_reduce_none, 1063 1, 128, :_reduce_none, 1064 2, 128, :_reduce_none, 1065 1, 202, :_reduce_none, 1066 3, 202, :_reduce_none, 1067 2, 206, :_reduce_none, 1064 1, 203, :_reduce_none, 1065 1, 127, :_reduce_none, 1066 2, 127, :_reduce_none, 1067 1, 201, :_reduce_none, 1068 3, 201, :_reduce_none, 1069 2, 205, :_reduce_none, 1070 1, 205, :_reduce_none, 1071 0, 144, :_reduce_none, 1072 5, 144, :_reduce_none, 1068 1073 1, 206, :_reduce_none, 1069 0, 145, :_reduce_none,1074 3, 206, :_reduce_none, 1070 1075 5, 145, :_reduce_none, 1071 1076 1, 207, :_reduce_none, 1072 1077 3, 207, :_reduce_none, 1073 5, 146, :_reduce_none, 1074 1, 208, :_reduce_none, 1075 3, 208, :_reduce_none, 1076 3, 208, :_reduce_none, 1077 3, 208, :_reduce_none, 1078 5, 208, :_reduce_none, 1079 5, 208, :_reduce_none, 1080 5, 208, :_reduce_none, 1081 5, 208, :_reduce_none, 1082 1, 210, :_reduce_none, 1083 1, 210, :_reduce_none, 1078 3, 207, :_reduce_none, 1079 3, 207, :_reduce_none, 1080 5, 207, :_reduce_none, 1081 5, 207, :_reduce_none, 1082 5, 207, :_reduce_none, 1083 5, 207, :_reduce_none, 1084 1, 209, :_reduce_none, 1085 1, 209, :_reduce_none, 1084 1086 0, 115, :_reduce_none, 1085 1087 5, 115, :_reduce_none, 1086 1088 2, 115, :_reduce_none, 1087 1, 209, :_reduce_none, 1088 3, 209, :_reduce_none, 1089 1, 208, :_reduce_none, 1090 3, 208, :_reduce_none, 1091 1, 210, :_reduce_none, 1092 1, 210, :_reduce_none, 1093 1, 210, :_reduce_none, 1094 1, 133, :_reduce_none, 1095 3, 133, :_reduce_none, 1096 3, 133, :_reduce_none, 1089 1097 1, 211, :_reduce_none, 1090 1098 1, 211, :_reduce_none, … … 1112 1120 3, 137, :_reduce_none, 1113 1121 1, 215, :_reduce_none, 1122 3, 215, :_reduce_none, 1114 1123 1, 215, :_reduce_none, 1115 1124 1, 215, :_reduce_none, … … 1117 1126 3, 138, :_reduce_none, 1118 1127 3, 138, :_reduce_none, 1119 1, 216, :_reduce_none, 1120 3, 216, :_reduce_none, 1121 1, 216, :_reduce_none, 1122 1, 216, :_reduce_none, 1128 1, 217, :_reduce_none, 1129 1, 217, :_reduce_none, 1130 3, 217, :_reduce_none, 1123 1131 1, 139, :_reduce_none, 1124 1132 3, 139, :_reduce_none, … … 1127 1135 1, 218, :_reduce_none, 1128 1136 3, 218, :_reduce_none, 1137 3, 218, :_reduce_none, 1129 1138 1, 140, :_reduce_none, 1130 1139 3, 140, :_reduce_none, 1131 1140 3, 140, :_reduce_none, 1132 1, 219, :_reduce_none,1133 1, 219, :_reduce_none,1134 3, 219, :_reduce_none,1135 3, 219, :_reduce_none,1136 1, 141, :_reduce_none,1137 3, 141, :_reduce_none,1138 3, 141, :_reduce_none,1139 1141 1, 124, :_reduce_none, 1140 1142 3, 124, :_reduce_none, 1141 1143 3, 124, :_reduce_none, 1142 1, 220, :_reduce_none, 1144 1, 219, :_reduce_none, 1145 3, 219, :_reduce_none, 1143 1146 3, 220, :_reduce_none, 1144 3, 221, :_reduce_none,1145 1147 1, 123, :_reduce_none, 1146 1148 1, 123, :_reduce_none, 1147 3, 22 2, :_reduce_none,1148 0, 22 3, :_reduce_none,1149 1, 22 3, :_reduce_none,1150 2, 22 3, :_reduce_none,1149 3, 221, :_reduce_none, 1150 0, 222, :_reduce_none, 1151 1, 222, :_reduce_none, 1152 2, 222, :_reduce_none, 1151 1153 1, 122, :_reduce_none, 1152 1, 14 9, :_reduce_none,1153 1, 14 9, :_reduce_none,1154 1, 21 7, :_reduce_none ]1155 1156 racc_reduce_n = 37 71157 1158 racc_shift_n = 63 41154 1, 148, :_reduce_none, 1155 1, 148, :_reduce_none, 1156 1, 216, :_reduce_none ] 1157 1158 racc_reduce_n = 376 1159 1160 racc_shift_n = 633 1159 1161 1160 1162 racc_action_table = [ 1161 57 4, 497, 475, 144, 409, 90, 96, 472, 467, 469,1162 24, 59 1, 572, 576, 1, 466, 376, 16, 152, 155,1163 3 23, 324, 108, 67, 368, 54, 162, 112, 524, 163,1164 67, 262, 124, 6, 236, 17, 536, 511, 25, 514,1165 51 6, 513, 543, 49, 571, 540, 90, 96, 541, 542,1166 49, 44, 46, 317, 15 6, 495, 78, 183, 112, 86,1167 29 4, 299, 410, 124, 126, 109, 112, 526, 112, 524,1168 57 3, 124, 109, 126, 86, 493, 443, 536, 511, 71,1169 51 4, 516, 273, 90, 96, 309, 314, 279, 532, 148,1170 14 9, 287, 44, 46, 317, 147, 435, 78, 183, 112,1171 8 6, 294, 299, 491, 124, 126, 109, 112, 526, 480,1172 1 60, 109, 152, 155, 431, 143, 628, 217, 463, 323,1173 3 24, 90, 96, 382, 383, 433, 309, 314, 279, 532,1174 12 6, 317, 287, 112, 78, 183, 100, 86, 294, 299,1175 23 0, 124, 126, 109, 112, 90, 96, 371, 156, 216,1176 88, 94, 109, 152, 155, 133, 126, 124, 138, 142,1177 1 00, 76, 127, 309, 314, 279, 90, 96, 124, 287,1178 152, 155, 78, 86, 78, 86, 88, 94, 152, 155,1179 1 26, 100, 138, 148, 149, 82, 85, 152, 155, 156,1180 157, 158, 71, 459, 150, 390, 78, 151, 153, 86,1181 88, 94, 134, 98, 152, 155, 156, 152, 155, 82,1182 85, 237, 44, 46, 156, 458, 71, 78, 90, 96,1183 86, 88, 94, 156, 148, 149, 129, 391, 323, 324,1184 82, 85, 568, 219, 382, 383, 274, 71, 323, 324,1185 156, 148, 149, 156, 152, 155, 211, 157, 158, 148,1186 149, 150, 393, 154, 151, 153, 382, 383, 148, 149,1187 236, 62, 165, 166, 167, 168, 90, 96, 212, 78,1188 12, 395, 86, 323, 324, 148, 149, 489, 148, 149,1189 156, 100, 86, 44, 46, 78, 215, 90, 96, 71,1190 14, 396, 86, 323, 324, 382, 383, 417, 102, 90,1191 96, 3 78, 100, 138, 341, 342, 164, 78, 214, 239,1192 1 54, 90, 96, 180, 100, 148, 149, 78, 90, 96,1193 86, 88, 94, -374, 138, 397, 100, 86, 382, 383,1194 82, 85, 456, 219, 90, 96, 138, 71, 78, 44,1195 46, 86, 88, 94, 90, 96, 78, 86, 138, 219,1196 78, 82, 85, 86, 88, 94, 90, 96, 71, 100,1197 398, 329, 78, 82, 85, 86, 88, 94, 123, 78,1198 71, 100, 86, 374, 37, 82, 85, 90, 96, 78,1199 399, 98, 71, 109, 33, 78, 90, 96, 86, 71,1200 44, 46, 100, 138, 58, 78, 382, 383, 86, 88,1201 94, 219, 90, 96, 386, 71, 385, 78, 82, 85,1202 86, 88, 94, 400, 98, 71, 49, 219, 323, 324,1203 82, 85, 49, 44, 46, 44, 46, 71, 78, 90,1204 96, 86, 88, 94, 171, 90, 96, 78, 401, 209,1205 86, 82, 85, 380, 100, 479, 388, 78, 71, 33,1206 219, -375, 402, 78, 382, 383, 86, 71, 403, 90,1207 96, 90, 96, 382, 383, 20, 138, 21, 322, 382,1208 383, 404, 86, 71, 219, 405, 100, 90, 96, 169,1209 78, 49, 170, 86, 88, 94, 78, 90, 96, 86,1210 44, 46, 219, 82, 85, 406, 90, 96, 98, 414,1211 71, 407, 100, 90, 96, 78, 71, 44, 46, 408,1212 78, 219, 78, 86, 413, 86, 88, 94, 219, 265,1213 78, 90, 96, 261, 98, 82, 85, 20, 78, 21,1214 71, 86, 71, 44, 46, 267, 219, 102, 78, 343,1215 3 44, 86, 88, 94, 90, 96, 268, 78, 71, 570,1216 86, 82, 85, 268, 78, 55, 266, 86, 71, 100,1217 382, 383, 90, 96, 260, 33, 259, 71, 163, 90,1218 96, 170, 78, 258, 71, 86, 264, 219, 44, 46,1219 33, 98, 165, 166, 167, 168, 180, 90, 96, 380,1220 44, 46, 71, 339, 340, 78, 414, 49, 86, 88,1221 94, 90, 96, 618, 619, 620, 44, 46, 82, 85,1222 265, 78, 49, 78, 266, 71, 86, 127, 90, 96,1223 78, 44, 46, 86, 119, 121, 123, 124, 126, 109,1224 112, -104, 115, 71, 267, 202, 90, 96, 78, 183,1225 257, 86, 119, 121, 123, 124, 126, 109, 112, 180,1226 115, 256, 78, 382, 383, 86, 255, 498, 436, 124,1227 126, 109, 112, 90, 96, 382, 383, 252, 437, 78,1228 245, 438, 86, 249, 251, 439, 124, 126, 109, 112,1229 90, 96, 440, 326, 351, 352, 441, 78, 119, 121,1230 86, 599, 600, 254, 124, 126, 109, 112, 29, 30,1231 444, 414, 365, 366, 78, 165, 166, 167, 168, 165,1232 166, 167, 168, 445, 78, 446, 413, 86, 119, 121,1233 447, 124, 126, 109, 112, 165, 166, 167, 168, 273,1234 274, 78, 44, 46, 86, 119, 121, 448, 124, 126,1235 1 09, 112, 165, 166, 167, 168, 165, 166, 167, 168,1236 1 65, 166, 167, 168, 165, 166, 167, 168, 632, 633,1237 4 28, 429, 426, 427, 424, 425, 422, 423, 420, 421,1238 418, 419, 331, 332, 449, 450, 451, 452, 453, 454,1239 455, 243, 162, 169, 242, 460, 461, 241, 240, 239,1240 238, 471, 138, 474, 171, 478, 112, 142, 482, 268,1241 484, 485, 486, 207, 102, 161, 147, 141, 138, 136,1242 500, 12 4, 502, 126, 504, 109, 506, 112, 49, 509,1243 510, 131, 538, 539, 69, 68, 545, 546, 62, 548,1244 12 4, 550, 126, 552, 109, 554, 112, 33, 557, 558,1245 559, 560, 561, 562, 563, 57, 566, 109, 164, -104,1246 263, 126, 51, 577, 579, 147, 581, 583, 112, 112,1247 11 2, 32, 584, 585, 586, 587, 588, 589, 590, 276,1248 59 3, 594, 28, 597, 27, 277, 601, 602, 603, 318,1249 71, 570, 607, 609, 610, 611, 18, 616, 124, 15,1250 62 2, 10, 9, 624, 625, 626, 627, 8, 7, 630,1251 631, 123, 112]1163 576, 435, 474, 155, 409, 92, 96, 471, 467, 469, 1164 24, 594, 574, 578, 12, 465, 1, 373, 148, 151, 1165 380, 381, 58, 229, 366, 16, 322, 169, 525, 178, 1166 170, 118, 120, 125, 14, 6, 538, 513, 25, 515, 1167 518, 514, 543, 17, 573, 540, 92, 96, 541, 542, 1168 49, 44, 46, 317, 152, 228, 78, 181, 111, 87, 1169 296, 300, 410, 123, 125, 109, 111, 529, 111, 525, 1170 575, 123, 109, 125, 87, 491, 495, 538, 513, 71, 1171 515, 518, 273, 92, 96, 311, 315, 278, 534, 144, 1172 145, 288, 44, 46, 317, 158, 489, 78, 181, 111, 1173 87, 296, 300, 433, 123, 125, 109, 111, 529, 148, 1174 151, 148, 151, 431, 463, 493, 230, 27, 129, 377, 1175 378, 92, 96, 262, 148, 151, 311, 315, 278, 534, 1176 125, 317, 288, 111, 78, 181, 100, 87, 296, 300, 1177 236, 123, 125, 109, 111, 152, 76, 152, 390, 417, 1178 123, 92, 96, 60, 380, 381, 480, 215, 138, 109, 1179 152, 377, 378, 311, 315, 278, 100, 571, 125, 288, 1180 78, 109, 78, 380, 381, 87, 90, 95, 133, 214, 1181 144, 145, 144, 145, 631, 82, 85, 274, 98, 92, 1182 96, 327, 71, 148, 151, 144, 145, 44, 46, 123, 1183 148, 151, 78, 123, 100, 87, 90, 95, 87, 126, 1184 148, 151, 78, 153, 154, 82, 85, 146, 44, 46, 1185 147, 149, 71, 148, 151, 134, 138, 87, 462, 152, 1186 393, 148, 151, 237, 153, 154, 152, 102, 146, 394, 1187 78, 147, 149, 87, 90, 95, 152, 236, 143, 168, 1188 461, 380, 381, 82, 85, 92, 96, 380, 381, 152, 1189 71, 450, 92, 96, 144, 145, -373, 152, 92, 96, 1190 217, 144, 145, 92, 96, 395, 150, 217, 44, 46, 1191 371, 144, 145, 217, 162, 163, 164, 165, 100, 92, 1192 96, 111, 142, 166, 144, 145, 167, 150, 396, 92, 1193 96, 388, 144, 145, 217, 87, 78, 377, 378, 87, 1194 138, 87, 397, 78, 217, 209, 87, 92, 96, 78, 1195 380, 381, 87, 102, 78, 34, 71, 87, 90, 95, 1196 92, 96, 217, 71, 377, 378, 398, 82, 85, 71, 1197 78, 92, 96, 87, 71, 217, 92, 96, 92, 96, 1198 78, 399, 369, 87, 92, 96, 217, 49, 78, 400, 1199 71, 217, 109, 217, 44, 46, 44, 46, 78, 217, 1200 71, 87, 92, 96, 87, 380, 381, 401, 66, 498, 1201 55, 78, 377, 378, 87, 78, 449, 100, 71, 211, 1202 34, 402, 78, 377, 378, 87, 403, 78, 49, 78, 1203 87, 71, 87, 92, 96, 78, 404, 160, 87, 138, 1204 405, 212, 71, 377, 378, 92, 96, 71, 100, 71, 1205 44, 46, 49, 78, 171, 71, 87, 90, 95, 87, 1206 100, 44, 46, 78, 406, 324, 82, 85, 92, 96, 1207 98, -374, 121, 71, 78, 377, 378, 90, 95, 44, 1208 46, 407, 138, 100, 78, 341, 342, 87, 90, 95, 1209 408, 92, 96, 383, 78, 263, 78, 82, 85, 87, 1210 90, 95, 377, 378, 71, 98, 100, 337, 338, 82, 1211 85, 413, 92, 96, 44, 46, 71, 265, 261, 78, 1212 570, 264, 87, 90, 95, 265, 412, 100, 138, 377, 1213 378, 268, 82, 85, 266, 92, 96, 260, 413, 71, 1214 29, 30, 78, 92, 96, 87, 90, 95, 259, 138, 1215 100, 258, 386, 78, 385, 82, 85, 375, 217, 479, 1216 264, 37, 71, 78, 92, 96, 87, 90, 95, 355, 1217 356, 34, 98, 265, 377, 378, 82, 85, 497, 100, 1218 78, 44, 46, 71, 357, 358, 78, 92, 96, 87, 1219 90, 95, 178, 20, 78, 21, 20, 87, 21, 82, 1220 85, 98, 100, 49, 377, 378, 71, 34, 92, 96, 1221 44, 46, 44, 46, 71, 78, 602, 603, 87, 90, 1222 95, 375, 108, 100, 98, 78, 92, 96, 82, 85, 1223 66, 339, 340, 44, 46, 71, 273, 274, 78, 49, 1224 413, 87, 90, 95, 266, 138, 92, 96, 44, 46, 1225 49, 82, 85, 118, 120, 412, 629, 630, 71, 78, 1226 92, 96, 87, 90, 95, 162, 163, 164, 165, 611, 1227 612, 613, 82, 85, 126, 428, 429, 78, 267, 71, 1228 87, 118, 120, 121, 123, 125, 109, 111, 257, 114, 1229 -103, 92, 96, 256, 201, 426, 427, 78, 181, 255, 1230 87, 118, 120, 121, 123, 125, 109, 111, 178, 114, 1231 436, 78, 424, 425, 87, 422, 423, 437, 123, 125, 1232 109, 111, 92, 96, 420, 421, 253, 418, 419, 245, 1233 118, 120, 249, 250, 92, 96, 162, 163, 164, 165, 1234 329, 330, 78, 438, 439, 87, 92, 96, 440, 123, 1235 125, 109, 111, 162, 163, 164, 165, 162, 163, 164, 1236 165, 162, 163, 164, 165, 162, 163, 164, 165, 162, 1237 163, 164, 165, 78, 441, 442, 87, 443, 444, 445, 1238 123, 125, 109, 111, 446, 78, 447, 254, 87, 243, 1239 452, 453, 123, 125, 109, 111, 454, 78, 455, 456, 1240 87, 457, 166, 169, 123, 125, 109, 111, 162, 163, 1241 164, 165, 167, 170, 459, 460, 242, 241, 240, 239, 1242 238, 138, 473, 171, 476, 477, 268, 142, 482, 111, 1243 484, 485, 486, 123, 207, 102, 161, 158, 141, 138, 1244 500, 125, 502, 109, 504, 111, 506, 136, 49, 509, 1245 510, 511, 512, 131, 69, 68, 545, 546, 123, 548, 1246 125, 550, 109, 552, 111, 554, 34, 60, 557, 558, 1247 559, 560, 561, 562, 563, 564, 566, 57, 568, 109, 1248 168, -103, 54, 276, 51, 580, 581, 158, 111, 111, 1249 111, 32, 583, 584, 585, 586, 587, 588, 277, 591, 1250 592, 593, 28, 596, 597, 263, 600, 319, 121, 604, 1251 605, 606, 607, 71, 570, 609, 125, 18, 618, 620, 1252 621, 622, 15, 624, 10, 9, 626, 627, 628, 123, 1253 8, 7, 111 ] 1252 1254 1253 1255 racc_action_check = [ 1254 52 9, 427, 405, 82, 312, 529, 529, 403, 400, 401,1255 18, 56 7, 527, 529, 0, 399, 261, 10, 319, 319,1256 399, 399, 59, 47, 255, 31, 90, 261, 529, 90,1257 59, 196, 255, 0, 319, 10, 529, 529, 18, 529,1258 52 9, 459, 478, 47, 527, 478, 459, 459, 478, 478,1259 59, 529, 529, 529, 319, 425, 529, 529, 427, 529,1260 52 9, 529, 312, 529, 529, 529, 529, 529, 405, 459,1261 52 7, 400, 403, 401, 399, 423, 352, 459, 459, 82,1262 4 59, 459, 459, 215, 215, 529, 529, 529, 529, 319,1263 319, 529, 459, 459, 459, 567, 344, 459, 459, 478,1264 4 59, 459, 459, 421, 459, 459, 459, 459, 459, 408,1265 85, 425, 222, 222, 340, 81, 622, 147, 398, 267,1266 267, 622, 622, 398, 398, 342, 459, 459, 459, 459,1267 42 3, 215, 459, 352, 215, 215, 622, 215, 215, 215,1268 161, 215, 215, 215, 215, 161, 161, 257, 222, 147,1269 85, 85, 344, 225, 225, 69, 257, 421, 622, 81,1270 161, 54, 408, 215, 215, 215, 54, 54, 340, 215,1271 228, 228, 622, 267, 398, 622, 622, 622, 224, 224,1272 342, 54, 161, 222, 222, 622, 622, 84, 84, 225,1273 84, 84, 622, 390, 84, 269, 161, 84, 84, 161,1274 161, 161, 69, 54, 229, 229, 228, 221, 221, 161,1275 161, 173, 54, 54, 224, 390, 161, 54, 158, 158,1276 54, 54, 54, 84, 225, 225, 63, 270, 417, 417,1277 54, 54, 516, 158, 456, 456, 272, 54, 489, 489,1278 229, 228, 228, 221, 172, 172, 141, 172, 172, 224,1279 224, 172, 274, 84, 172, 172, 498, 498, 84, 84,1280 172, 63, 173, 173, 173, 173, 165, 165, 141, 158,1281 6, 276, 158, 419, 419, 229, 229, 419, 221, 221,1282 172, 165, 417, 516, 516, 456, 143, 168, 168, 158,1283 6, 277, 489, 332, 332, 573, 573, 332, 57, 167,1284 1 67, 262, 168, 165, 247, 247, 91, 498, 143, 280,1285 1 72, 166, 166, 262, 167, 172, 172, 165, 219, 219,1286 165, 165, 165, 91, 168, 281, 166, 419, 366, 366,1287 1 65, 165, 366, 219, 157, 157, 167, 165, 168, 57,1288 57, 168, 168, 168, 623, 623, 573, 332, 166, 157,1289 1 67, 168, 168, 167, 167, 167, 160, 160, 168, 623,1290 282, 243, 166, 167, 167, 166, 166, 166, 243, 219,1291 1 67, 160, 219, 260, 27, 166, 166, 616, 616, 366,1292 285, 623, 166, 260, 27, 157, 156, 156, 157, 219,1293 623, 623, 616, 160, 38, 623, 268, 268, 623, 623,1294 623, 156, 155, 155, 266, 157, 266, 160, 623, 623,1295 160, 160, 160, 289, 616, 623, 27, 155, 239, 239,1296 160, 160, 38, 616, 616, 27, 27, 160, 616, 100,1297 1 00, 616, 616, 616, 98, 154, 154, 156, 292, 136,1298 156, 616, 616, 407, 100, 407, 268, 268, 616, 136,1299 154, 98, 294, 155, 265, 265, 155, 156, 296, 153,1300 153, 612, 612, 318, 318, 14, 100, 14, 239, 571,1301 571, 299, 239, 155, 153, 300, 612, 148, 148, 96,1302 1 00, 136, 96, 100, 100, 100, 154, 607, 607, 154,1303 136, 136, 148, 100, 100, 303, 151, 151, 612, 318,1304 100, 305, 607, 150, 150, 265, 154, 612, 612, 307,1305 153, 151, 612, 153, 318, 612, 612, 612, 150, 310,1306 571, 149, 149, 193, 607, 612, 612, 30, 148, 30,1307 1 53, 148, 612, 607, 607, 315, 149, 131, 607, 248,1308 2 48, 607, 607, 607, 75, 75, 518, 151, 148, 518,1309 151, 607, 607, 316, 150, 32, 317, 150, 607, 75,1310 485, 485, 152, 152, 190, 32, 189, 151, 323, 62,1311 62, 324, 149, 188, 150, 149, 199, 152, 131, 131,1312 511, 75, 233, 233, 233, 233, 264, 102, 102, 263,1313 75, 75, 149, 246, 246, 75, 485, 32, 75, 75,1314 75, 251, 251, 610, 610, 610, 32, 32, 75, 75,1315 201, 485, 511, 152, 202, 75, 152, 62, 245, 245,1316 62, 511, 511, 62, 62, 62, 62, 62, 62,62,1317 62, 102, 62, 152, 204, 102, 249, 249, 102, 102,1318 187, 102, 102, 102, 102, 102, 102, 102, 102, 102,1319 102, 186, 251, 429, 429, 251, 185, 429, 345, 251,1320 251, 251, 251, 183, 183, 583, 583, 183, 346, 245,1321 1 83, 347, 245, 183, 183, 348, 245, 245, 245, 245,1322 252, 252, 349, 241, 250, 250, 350, 249, 241, 241,1323 249, 578, 578, 184, 249, 249, 249, 249, 22, 22,1324 353, 583, 253, 253, 429, 231, 231, 231, 231, 232,1325 2 32, 232, 232, 354, 183, 355, 583, 183, 238, 238,1326 356, 183, 183, 183, 183, 95, 95, 95, 95, 211,1327 2 11, 252, 514, 514, 252, 410, 410, 357, 252, 252,1328 252, 252, 234, 234, 234, 234, 235, 235, 235, 235,1329 615, 615, 615, 615, 629, 629, 629, 629, 627, 627,1330 3 38, 338, 337, 337, 336, 336, 335, 335, 334, 334,1331 333, 333, 244, 244, 358, 359, 360, 361, 362, 363,1332 364, 182, 382, 383, 181, 393, 394, 179, 178, 176,1333 17 5, 402, 142, 404, 138, 406, 259, 137, 409, 205,1334 41 1, 413, 416, 111, 106, 89, 83, 79, 71, 70,1335 430, 431, 432, 433, 434, 435, 44 2, 443, 67, 457,1336 45 8, 65, 460, 461, 53, 49, 487, 488, 43, 490,1337 491, 492, 493, 494, 495, 496, 497, 41, 499, 501,1338 503, 505, 507, 508, 510, 36, 513, 256, 515, 33,1339 198, 254, 28, 532, 534, 537, 538, 539, 540, 541,1340 542, 26, 547, 549, 551, 553, 555, 556, 564, 212,1341 56 9, 570, 20, 572, 19, 214, 579, 581, 582, 216,1342 5 92, 596, 601, 602, 604, 605, 11, 608, 242, 8,1343 61 4, 5, 4, 617, 618, 619, 620, 3, 2, 625,1344 626, 240, 543 ]1256 528, 342, 404, 82, 309, 528, 528, 402, 400, 401, 1257 18, 569, 526, 528, 6, 399, 0, 260, 223, 223, 1258 399, 399, 36, 158, 255, 10, 239, 96, 528, 260, 1259 96, 239, 239, 255, 6, 0, 528, 528, 18, 528, 1260 528, 462, 477, 10, 526, 477, 462, 462, 477, 477, 1261 36, 528, 528, 528, 223, 158, 528, 528, 342, 528, 1262 528, 528, 309, 528, 528, 528, 528, 528, 404, 462, 1263 526, 400, 402, 401, 399, 421, 425, 462, 462, 82, 1264 462, 462, 462, 215, 215, 528, 528, 528, 528, 223, 1265 223, 528, 462, 462, 462, 569, 419, 462, 462, 477, 1266 462, 462, 462, 340, 462, 462, 462, 462, 462, 219, 1267 219, 220, 220, 338, 398, 423, 161, 19, 61, 398, 1268 398, 161, 161, 195, 318, 318, 462, 462, 462, 462, 1269 421, 215, 462, 425, 215, 215, 161, 215, 215, 215, 1270 318, 215, 215, 215, 215, 219, 54, 220, 269, 330, 1271 419, 54, 54, 61, 498, 498, 408, 143, 161, 340, 1272 318, 263, 263, 215, 215, 215, 54, 518, 338, 215, 1273 398, 423, 161, 450, 450, 161, 161, 161, 69, 143, 1274 219, 219, 220, 220, 624, 161, 161, 271, 54, 624, 1275 624, 243, 161, 227, 227, 318, 318, 54, 54, 243, 1276 226, 226, 54, 330, 624, 54, 54, 54, 498, 408, 1277 81, 81, 263, 81, 81, 54, 54, 81, 518, 518, 1278 81, 81, 54, 222, 222, 69, 624, 450, 394, 227, 1279 274, 172, 172, 173, 172, 172, 226, 131, 172, 275, 1280 624, 172, 172, 624, 624, 624, 81, 172, 80, 93, 1281 394, 268, 268, 624, 624, 151, 151, 358, 358, 222, 1282 624, 358, 153, 153, 227, 227, 93, 172, 152, 152, 1283 151, 226, 226, 160, 160, 276, 81, 153, 131, 131, 1284 259, 81, 81, 152, 173, 173, 173, 173, 160, 154, 1285 154, 259, 80, 92, 222, 222, 92, 172, 277, 150, 1286 150, 268, 172, 172, 154, 268, 151, 449, 449, 151, 1287 160, 358, 279, 153, 150, 136, 153, 149, 149, 152, 1288 264, 264, 152, 57, 160, 136, 151, 160, 160, 160, 1289 148, 148, 149, 153, 497, 497, 280, 160, 160, 152, 1290 154, 147, 147, 154, 160, 148, 146, 146, 145, 145, 1291 150, 283, 258, 150, 144, 144, 147, 136, 449, 286, 1292 154, 146, 258, 145, 57, 57, 136, 136, 149, 144, 1293 150, 149, 163, 163, 264, 429, 429, 290, 45, 429, 1294 32, 148, 356, 356, 148, 497, 356, 163, 149, 141, 1295 32, 293, 147, 575, 575, 147, 296, 146, 45, 145, 1296 146, 148, 145, 618, 618, 144, 297, 85, 144, 163, 1297 300, 141, 147, 265, 265, 164, 164, 146, 618, 145, 1298 515, 515, 32, 163, 98, 144, 163, 163, 163, 429, 1299 164, 32, 32, 356, 301, 241, 163, 163, 625, 625, 1300 618, 98, 241, 163, 575, 563, 563, 85, 85, 618, 1301 618, 303, 164, 625, 618, 248, 248, 618, 618, 618, 1302 305, 165, 165, 265, 265, 307, 164, 618, 618, 164, 1303 164, 164, 484, 484, 618, 625, 165, 246, 246, 164, 1304 164, 563, 100, 100, 625, 625, 164, 517, 194, 625, 1305 517, 312, 625, 625, 625, 313, 563, 100, 165, 573, 1306 573, 316, 625, 625, 317, 609, 609, 192, 484, 625, 1307 22, 22, 165, 217, 217, 165, 165, 165, 189, 100, 1308 609, 186, 266, 484, 266, 165, 165, 407, 217, 407, 1309 199, 27, 165, 100, 614, 614, 100, 100, 100, 251, 1310 251, 27, 609, 200, 427, 427, 100, 100, 427, 614, 1311 573, 609, 609, 100, 252, 252, 609, 75, 75, 609, 1312 609, 609, 262, 30, 217, 30, 14, 217, 14, 609, 1313 609, 614, 75, 27, 319, 319, 609, 513, 162, 162, 1314 614, 614, 27, 27, 217, 614, 579, 579, 614, 614, 1315 614, 261, 59, 162, 75, 427, 60, 60, 614, 614, 1316 59, 247, 247, 75, 75, 614, 211, 211, 75, 513, 1317 319, 75, 75, 75, 201, 162, 102, 102, 513, 513, 1318 59, 75, 75, 410, 410, 319, 622, 622, 75, 162, 1319 249, 249, 162, 162, 162, 233, 233, 233, 233, 606, 1320 606, 606, 162, 162, 60, 336, 336, 60, 203, 162, 1321 60, 60, 60, 60, 60, 60, 60, 60, 185, 60, 1322 102, 250, 250, 184, 102, 335, 335, 102, 102, 183, 1323 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 1324 343, 249, 334, 334, 249, 333, 333, 344, 249, 249, 1325 249, 249, 181, 181, 332, 332, 181, 331, 331, 181, 1326 267, 267, 181, 181, 245, 245, 231, 231, 231, 231, 1327 244, 244, 250, 345, 346, 250, 253, 253, 347, 250, 1328 250, 250, 250, 232, 232, 232, 232, 234, 234, 234, 1329 234, 235, 235, 235, 235, 617, 617, 617, 617, 91, 1330 91, 91, 91, 181, 348, 349, 181, 350, 351, 352, 1331 181, 181, 181, 181, 353, 245, 354, 182, 245, 180, 1332 359, 360, 245, 245, 245, 245, 361, 253, 362, 363, 1333 253, 364, 377, 378, 253, 253, 253, 253, 632, 632, 1334 632, 632, 380, 381, 392, 393, 179, 177, 176, 175, 1335 174, 142, 403, 138, 405, 406, 204, 137, 409, 257, 1336 412, 415, 416, 417, 128, 106, 86, 83, 79, 71, 1337 430, 431, 432, 433, 434, 435, 448, 70, 66, 451, 1338 459, 460, 461, 63, 53, 49, 487, 488, 489, 490, 1339 491, 492, 493, 494, 495, 496, 42, 41, 499, 501, 1340 503, 505, 507, 508, 510, 511, 512, 35, 514, 254, 1341 516, 34, 31, 212, 28, 534, 535, 537, 540, 541, 1342 542, 26, 547, 549, 551, 553, 555, 556, 214, 564, 1343 565, 567, 20, 570, 572, 197, 574, 228, 238, 581, 1344 589, 590, 591, 595, 599, 604, 242, 11, 610, 611, 1345 612, 613, 8, 616, 5, 4, 619, 620, 621, 240, 1346 3, 2, 543 ] 1345 1347 1346 1348 racc_action_pointer = [ 1347 13, nil, 879, 897, 874, 864, 269, nil, 889, nil, 1348 16, 858, nil, nil, 441, nil, nil, nil, 9, 844, 1349 864, nil, 676, nil, nil, nil, 830, 373, 827, nil, 1350 503, -7, 554, 799, nil, nil, 837, nil, 379, nil, 1351 nil, 826, nil, 778, nil, nil, nil, 0, nil, 824, 1352 nil, nil, nil, 777, 160, nil, nil, 287, nil, 7, 1353 nil, nil, 563, 211, nil, 813, nil, 775, nil, 154, 1354 760, 765, nil, nil, nil, 538, nil, nil, nil, 774, 1355 nil, 82, 2, 721, 181, 89, nil, nil, nil, 759, 1356 -31, 277, nil, nil, nil, 652, 422, nil, 405, nil, 1357 423, nil, 581, nil, nil, nil, 793, nil, nil, nil, 1358 nil, 752, nil, nil, nil, nil, nil, nil, nil, nil, 1349 15, nil, 882, 900, 877, 867, 13, nil, 892, nil, 1350 24, 859, nil, nil, 542, nil, nil, nil, 9, 87, 1351 864, nil, 488, nil, nil, nil, 830, 530, 829, nil, 1352 539, 820, 379, nil, 801, 839, 7, nil, nil, nil, 1353 nil, 787, 825, nil, nil, 355, nil, nil, nil, 824, 1354 nil, nil, nil, 777, 145, nil, nil, 312, nil, 577, 1355 590, 103, nil, 815, nil, nil, 775, nil, nil, 177, 1356 768, 766, nil, nil, nil, 551, nil, nil, nil, 775, 1357 215, 204, 2, 722, nil, 386, 760, nil, nil, nil, 1358 nil, 666, 236, 220, nil, nil, -30, nil, 395, nil, 1359 476, nil, 610, nil, nil, nil, 794, nil, nil, nil, 1359 1360 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1360 nil, 526, nil, nil, nil, nil, 438, 720, 765, nil, 1361 nil, 234, 749, 274, nil, nil, nil, 116, 471, 515, 1362 497, 490, 556, 453, 429, 396, 380, 328, 212, nil, 1363 350, 139, nil, nil, nil, 260, 305, 293, 281, nil, 1364 nil, nil, 238, 189, nil, 735, 734, nil, 733, 732, 1365 nil, 729, 726, 657, 638, 601, 596, 585, 558, 511, 1366 509, nil, nil, 468, nil, nil, -24, nil, 795, 521, 1367 nil, 555, 559, nil, 579, 744, nil, nil, nil, nil, 1368 nil, 687, 834, nil, 840, 77, 867, nil, nil, 312, 1369 nil, 201, 106, nil, 172, 147, nil, nil, 164, 198, 1370 nil, 632, 636, 509, 669, 673, nil, nil, 657, 412, 1371 838, 627, 824, 305, 714, 612, 535, 246, 481, 630, 1372 626, 595, 674, 644, 786, -32, 781, 91, nil, 729, 1373 317, -40, 245, 535, 518, 448, 350, 113, 390, 162, 1374 213, nil, 193, nil, 173, nil, 235, 255, nil, nil, 1375 254, 311, 279, nil, nil, 299, nil, nil, nil, 332, 1376 nil, nil, 357, nil, 397, nil, 377, nil, nil, 416, 1377 394, nil, nil, 418, nil, 446, nil, 428, nil, nil, 1378 464, nil, -19, nil, nil, 480, 498, 501, 457, 12, 1379 nil, nil, nil, 508, 511, nil, nil, nil, nil, nil, 1380 nil, nil, 287, 712, 710, 708, 706, 704, 702, nil, 1381 104, nil, 115, nil, 86, 600, 610, 613, 617, 624, 1382 628, nil, 66, 642, 655, 657, 662, 679, 716, 717, 1383 718, 719, 720, 721, 722, nil, 322, nil, nil, nil, 1361 nil, nil, nil, nil, nil, nil, nil, nil, 753, nil, 1362 nil, 226, nil, nil, nil, nil, 314, 720, 764, nil, 1363 nil, 377, 748, 145, 348, 342, 340, 335, 324, 311, 1364 293, 249, 262, 256, 283, nil, nil, nil, 22, nil, 1365 267, 115, 572, 366, 409, 455, nil, nil, nil, nil, 1366 nil, nil, 225, 211, 735, 734, 733, 732, nil, 731, 1367 704, 686, 702, 614, 648, 603, 466, nil, nil, 463, 1368 nil, nil, 452, nil, 433, 68, nil, 820, nil, 475, 1369 488, 559, nil, 593, 741, nil, nil, nil, nil, nil, 1370 nil, 564, 818, nil, 833, 77, nil, 507, nil, 103, 1371 105, nil, 217, 12, nil, nil, 194, 187, 865, nil, 1372 nil, 633, 650, 562, 654, 658, nil, nil, 815, -30, 1373 835, 379, 821, 135, 652, 698, 419, 543, 397, 624, 1374 655, 481, 496, 710, 783, -32, nil, 732, 296, 224, 1375 -39, 537, 494, 155, 314, 407, 468, 639, 245, 134, 1376 nil, 144, nil, nil, 151, 206, 239, 262, nil, 298, 1377 255, nil, nil, 270, nil, nil, 278, nil, nil, nil, 1378 296, nil, nil, 310, nil, nil, 341, 325, nil, nil, 1379 355, 357, nil, 396, nil, 379, nil, 410, nil, -19, 1380 nil, nil, 436, 440, nil, nil, 446, 449, 118, 568, 1384 1381 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1385 nil, nil, 725, 726, nil, nil, nil, nil, nil, nil, 1386 181, nil, nil, 752, 706, nil, nil, nil, 117, 14, 1387 7, 8, 729, 6, 732, 1, 737, 389, 108, 797, 1388 674, 786, nil, 742, nil, nil, 744, 222, nil, 267, 1389 nil, 93, nil, 65, nil, 45, nil, -9, nil, 647, 1390 752, 747, 754, 748, 756, 749, nil, nil, nil, nil, 1391 nil, nil, 758, 750, nil, nil, nil, nil, nil, nil, 1392 nil, nil, nil, nil, nil, nil, 228, 761, 785, 40, 1393 810, 790, nil, nil, nil, nil, nil, nil, nil, nil, 1394 nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, 1395 nil, nil, nil, nil, nil, 554, nil, 768, 769, 232, 1396 771, 766, 773, 767, 775, 768, 777, 769, 250, 780, 1382 139, 639, 636, 627, 624, 607, 587, nil, 103, nil, 1383 93, nil, -9, 622, 629, 655, 656, 660, 686, 687, 1384 689, 690, 691, 696, 698, nil, 376, nil, 251, 702, 1385 703, 708, 710, 711, 713, nil, nil, nil, nil, nil, 1386 nil, nil, nil, nil, nil, nil, nil, 715, 716, nil, 1387 722, 723, nil, nil, nil, nil, nil, nil, nil, nil, 1388 nil, nil, 704, 752, 216, nil, nil, nil, 113, 14, 1389 7, 8, 6, 730, 1, 733, 737, 473, 155, 797, 1390 562, nil, 741, nil, nil, 787, 744, 739, nil, 86, 1391 nil, 65, nil, 105, nil, 66, nil, 538, nil, 369, 1392 752, 746, 754, 747, 756, 748, nil, nil, nil, nil, 1393 nil, nil, nil, nil, nil, nil, nil, nil, 758, 301, 1394 167, 761, nil, nil, nil, nil, nil, nil, nil, 787, 1395 809, 787, 40, nil, nil, nil, nil, nil, nil, nil, 1396 nil, nil, nil, nil, nil, nil, nil, 32, nil, nil, 1397 nil, nil, nil, nil, 466, nil, nil, 768, 769, 764, 1398 771, 765, 773, 766, 775, 767, 777, 328, 148, 780, 1397 1399 nil, 781, nil, 782, nil, 783, nil, 784, 785, nil, 1398 8 08, 569, nil, 832, 680, 819, 231, nil, 491, nil,1399 nil, nil, nil, nil, nil, nil, nil, -11, nil, -1,1400 nil, nil, 762, nil, 821, nil, nil, 770, 799, 845,1400 832, 788, 810, 566, 834, 368, 821, 432, 166, nil, 1401 nil, nil, nil, nil, nil, nil, -11, nil, -1, nil, 1402 nil, nil, nil, nil, 764, 823, nil, 772, nil, nil, 1401 1403 791, 792, 793, 835, nil, nil, nil, 804, nil, 805, 1402 1404 nil, 806, nil, 807, nil, 808, 809, nil, nil, nil, 1403 nil, nil, nil, nil, 829, nil, nil, 10, nil, 841,1404 80 3, 463, 872, 289, nil, nil, nil, nil, 601, 864,1405 nil, 8 18, 864, 659, nil, nil, nil, nil, nil, nil,1406 nil, nil, 803, nil, nil, nil, 823, nil, nil, nil,1407 nil, 838, 826, nil, 803, 871, nil, 481, 842, nil,1408 521, nil, 455, nil, 844, 677, 371, 879, 813, 814,1409 81 5, nil, 115, 338, nil, 815, 816, 676, nil, 681,1410 nil, nil, nil, nil]1405 nil, nil, nil, 439, 810, 856, nil, 832, nil, 10, 1406 805, nil, 845, 493, 875, 387, nil, nil, nil, 496, 1407 nil, 867, nil, nil, nil, nil, nil, nil, nil, 866, 1408 800, 825, nil, nil, nil, 806, nil, nil, nil, 826, 1409 nil, nil, nil, nil, 841, nil, 557, nil, nil, 499, 1410 843, 808, 809, 810, 528, nil, 847, 662, 397, 882, 1411 813, 814, 544, nil, 183, 432, nil, nil, nil, nil, 1412 nil, nil, 705 ] 1411 1413 1412 1414 racc_action_default = [ 1413 -37 7, -2, -377, -377, -377, -13, -6, -4, -377, -1,1414 -37 7, -377, -5, -7, -377, 634, -15, -14, -377, -18,1415 -37 7, -12, -377, -9, -17, -16, -21, -377, -377, -8,1416 -37 7, -377, -377, -113, -91, -109, -377, -20, -377, -99,1417 -100, -37 7, -101, -377, -147, -88, -148, -89, -19, -95,1418 -90, -11, -10, -8 3, -377, -23, -22, -377, -111, -377,1419 - 110, -102, -377, -377, -105, -377, -92, -377, -96, -377,1420 -37 7, -285, -283, -26, -249, -27, -25, -254, -153, -377,1421 - 255, -377, -377, -306, -377, -377, -168, -274, -272, -377,1422 - 377, -31, -284, -275, -273, -252, -377, -287, -290, -282,1423 -37 7, -24, -113, -94, -114, -98, -377, -97, -112, -218,1424 -124, - 377, -231, -125, -126, -248, -127, -128, -129, -183,1425 -1 30, -184, -131, -188, -192, -122, -205, -149, -123, -103,1426 -10 6, -377, -93, -85, -84, -3, -377, -286, -290, -250,1427 -37 4, -377, -377, -377, -257, -256, -30, -377, -377, -377,1428 -37 7, -377, -377, -377, -377, -377, -377, -377, -377, -260,1429 -37 7, -377, -154, -169, -32, -377, -377, -377, -377, -155,1430 -1 70, -289, -377, -377, -146, -135, -124, -117, -136, -125,1431 - 244, -137, -126, -377, -138, -127, -139, -128, -377, -140,1432 -1 29, -118, -141, -130, -119, -142, -120, -143, -132, -121,1433 -1 44, -133, -149, -145, -134, -123, -115, -108, -107, -87,1434 -8 6, -377, -377, -288, -377, -377, -377, -308, -279, -377,1435 -2 80, -264, -265, -276, -266, -261, -277, -278, -262, -263,1436 -25 3, -251, -267, -268, -269, -270, -281, -271, -377, -377,1437 -37 7, -377, -377, -377, -377, -377, -377, -377, -377, -377,1438 -37 7, -377, -377, -377, -377, -377, -377, -377, -116, -377,1439 -37 7, -377, -377, -377, -377, -377, -377, -377, -377, -377,1440 -377, -33, -34, -63, -291, -64, -377, -377, -344, -335,1441 -31 7, -377, -314, -55, -324, -320, -56, -376, -330, -326,1442 -57, -336, -332, -58, -354, -343, -338, -313, -59, -355,1443 -3 45, -319, -60, -341, -325, -349, -61, -351, -331, -323,1444 -3 12, -62, -358, -337, -329, -318, -311, -348, -377, -377,1445 -18 6, -171, -173, -377, -377, -190, -187, -185, -194, -191,1446 - 189, -182, -377, -377, -377, -377, -377, -377, -377, -204,1447 -37 7, -217, -377, -230, -377, -377, -377, -377, -377, -377,1448 -37 7, -243, -377, -377, -377, -377, -377, -377, -377, -377,1449 -37 7, -377, -377, -377, -377, -167, -377, -207, -195, -193,1450 -2 20, -208, -206, -233, -221, -219, -234, -232, -247, -245,1451 - 151, -246, -377, -377, -157, -152, -150, -172, -158, -156,1452 -377, -29, -65, -377, -69, -28, -259, -258, -377, -377,1453 -37 7, -377, -377, -377, -377, -377, -377, -377, -377, -377,1454 -37 7, -377, -309, -153, -305, -304, -377, -377, -180, -377,1455 -2 02, -377, -215, -377, -228, -377, -241, -377, -165, -377,1456 -37 7, -377, -377, -377, -377, -377, -179, -201, -214, -227,1457 - 240, -164, -377, -377, -181, -203, -216, -229, -242, -166,1458 - 178, -200, -213, -226, -239, -163, -377, -377, -377, -377,1459 -37 7, -377, -70, -316, -315, -321, -322, -328, -327, -334,1460 -33 3, -356, -340, -339, -357, -347, -346, -342, -377, -350,1461 -35 3, -352, -360, -359, -307, -377, -174, -377, -377, -377,1462 -37 7, -377, -377, -377, -377, -377, -377, -377, -377, -377,1463 - 196, -377, -209, -377, -222, -377, -235, -377, -377, -159,1464 -37 7, -377, -54, -44, -377, -31, -377, -73, -311, -71,1465 - 36, -37, -38, -39, -373, -40, -368, -361, -41, -377,1466 -36 4, -42, -370, -367, -377, -35, -43, -306, -377, -377,1467 -37 7, -377, -377, -377, -310, -176, -175, -377, -197, -377,1468 -2 10, -377, -223, -377, -236, -377, -377, -160, -198, -211,1469 -2 24, -237, -161, -67, -377, -46, -68, -306, -53, -51,1470 -37 7, -377, -377, -377, -44, -72, -66, -371, -377, -377,1471 -50, -293, -377, -377, -177, -199, -212, -225, -238, -162,1472 -45, -48, -377, -52, -366, -365, -377, -363, -362, -369,1473 -3 72, -74, -377, -292, -296, -377, -47, -377, -76, -294,1474 -377, -295, -75, -78, -377, -81, -377, -377, -297, -298,1475 - 299, -79, -377, -77, -49, -377, -377, -377, -82, -80,1476 -30 0, -301, -302, -303]1415 -376, -2, -376, -376, -376, -13, -6, -4, -376, -1, 1416 -376, -376, -5, -7, -376, 633, -15, -14, -376, -18, 1417 -376, -12, -376, -9, -17, -16, -21, -376, -376, -8, 1418 -376, -376, -376, -108, -112, -376, -376, -20, -98, -99, 1419 -100, -376, -376, -87, -146, -88, -147, -89, -19, -94, 1420 -90, -11, -10, -82, -376, -23, -22, -376, -110, -376, 1421 -376, -376, -104, -376, -109, -101, -376, -91, -95, -376, 1422 -376, -284, -248, -26, -253, -27, -25, -254, -152, -376, 1423 -376, -376, -376, -305, -273, -376, -376, -167, -283, -274, 1424 -271, -251, -376, -31, -286, -272, -376, -281, -289, -282, 1425 -376, -24, -112, -93, -113, -97, -376, -96, -111, -217, 1426 -124, -230, -125, -126, -247, -127, -128, -129, -182, -130, 1427 -183, -187, -121, -191, -122, -204, -148, -123, -376, -102, 1428 -105, -376, -92, -84, -83, -3, -376, -285, -289, -249, 1429 -373, -376, -376, -376, -376, -376, -376, -376, -376, -376, 1430 -376, -376, -376, -376, -376, -256, -255, -30, -376, -259, 1431 -376, -376, -376, -376, -376, -376, -153, -168, -32, -154, 1432 -169, -288, -376, -376, -135, -124, -136, -125, -243, -137, 1433 -126, -376, -138, -127, -376, -139, -128, -117, -140, -129, 1434 -118, -141, -119, -142, -131, -120, -143, -132, -144, -133, 1435 -122, -148, -145, -134, -123, -116, -114, -107, -106, -86, 1436 -85, -376, -376, -287, -376, -376, -278, -376, -279, -263, 1437 -264, -275, -265, -260, -276, -277, -261, -262, -376, -307, 1438 -252, -250, -266, -267, -268, -269, -280, -270, -376, -376, 1439 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 1440 -376, -376, -376, -376, -376, -376, -115, -376, -376, -376, 1441 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 1442 -33, -34, -63, -62, -290, -376, -376, -376, -334, -376, 1443 -313, -54, -323, -319, -55, -329, -325, -56, -375, -335, 1444 -331, -57, -342, -337, -312, -58, -353, -344, -318, -59, 1445 -354, -340, -324, -348, -60, -350, -330, -311, -61, -357, 1446 -336, -322, -317, -310, -343, -328, -316, -347, -376, -376, 1447 -189, -184, -186, -193, -190, -188, -206, -194, -192, -203, 1448 -376, -376, -376, -376, -376, -376, -376, -216, -376, -229, 1449 -376, -242, -376, -376, -376, -376, -376, -376, -376, -376, 1450 -376, -376, -376, -376, -376, -166, -376, -181, -376, -376, 1451 -376, -376, -376, -376, -376, -219, -207, -205, -232, -220, 1452 -218, -233, -231, -246, -244, -150, -245, -376, -376, -156, 1453 -376, -376, -171, -157, -155, -151, -149, -185, -172, -170, 1454 -29, -64, -68, -376, -376, -28, -258, -257, -376, -376, 1455 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 1456 -376, -308, -152, -304, -303, -376, -376, -376, -201, -376, 1457 -214, -376, -227, -376, -240, -376, -164, -376, -179, -376, 1458 -376, -376, -376, -376, -376, -376, -200, -213, -226, -239, 1459 -163, -178, -202, -215, -228, -241, -165, -180, -376, -376, 1460 -376, -376, -199, -212, -225, -238, -162, -177, -69, -376, 1461 -376, -376, -376, -315, -314, -321, -320, -327, -326, -333, 1462 -332, -339, -338, -355, -346, -345, -356, -376, -341, -349, 1463 -352, -351, -359, -358, -376, -306, -195, -376, -376, -376, 1464 -376, -376, -376, -376, -376, -376, -376, -376, -376, -376, 1465 -208, -376, -221, -376, -234, -376, -158, -376, -376, -173, 1466 -376, -376, -376, -376, -44, -376, -31, -310, -376, -72, 1467 -70, -36, -37, -38, -39, -372, -360, -40, -376, -367, 1468 -363, -41, -366, -42, -369, -376, -35, -305, -43, -53, 1469 -376, -376, -376, -376, -309, -197, -196, -376, -209, -376, 1470 -222, -376, -235, -376, -159, -376, -376, -174, -210, -223, 1471 -236, -160, -175, -376, -292, -376, -66, -376, -67, -305, 1472 -376, -52, -50, -376, -376, -376, -44, -71, -65, -376, 1473 -370, -376, -49, -198, -211, -224, -237, -161, -176, -376, 1474 -295, -376, -291, -45, -47, -376, -365, -51, -364, -376, 1475 -362, -361, -368, -371, -73, -294, -376, -293, -46, -376, 1476 -75, -296, -297, -298, -74, -77, -376, -80, -376, -376, 1477 -376, -376, -376, -78, -376, -76, -48, -299, -300, -301, 1478 -302, -81, -79 ] 1477 1479 1478 1480 racc_goto_table = [ 1479 95, 128, 146, 145, 113, 411, 41, 48, 271, 110, 1480 174, 41, 56, 196, 172, 103, 114, 519, 107, 120, 1481 61, 95, 275, 60, 74, 181, 111, 89, 621, 612, 1482 118, 394, 64, 91, 23, 66, 106, 529, 623, 621, 1483 117, 205, 281, 59, 179, 139, 173, 66, 89, 176, 1484 52, 116, 130, 218, 220, 132, 182, 223, 617, 193, 1485 226, 227, 608, 564, 221, 222, 177, 224, 225, 272, 1486 190, 228, 229, 63, 270, 75, 73, 206, 188, 191, 1487 187, 194, 101, 392, 199, 61, 481, 575, 60, 208, 1488 3, 185, 107, 22, 13, 2, 135, 70, 53, 31, 1489 198, 201, 204, 175, 178, 462, 173, 231, 184, 186, 1490 106, 232, 233, 234, 235, 41, 210, 189, 192, 195, 1491 197, 200, 253, 203, 26, 19, 159, 137, 11, 5, 1492 244, 213, 582, 319, 605, 4, 544, 595, 578, nil, 1493 250, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1494 nil, 248, nil, nil, 316, nil, nil, nil, nil, nil, 1495 nil, 247, 280, nil, nil, nil, nil, nil, nil, nil, 1496 nil, nil, 246, 379, nil, 381, nil, nil, nil, nil, 1497 320, nil, nil, 327, 338, nil, 321, nil, 350, nil, 1498 358, 364, 333, nil, 325, nil, 345, 330, 353, 359, 1499 nil, nil, 337, nil, 384, nil, 349, 389, 357, 363, 1500 nil, nil, nil, 336, 387, nil, 373, 348, 377, 356, 1501 362, nil, nil, 335, 370, nil, nil, 347, 375, 355, 1502 361, 328, 367, nil, 334, 372, nil, nil, 346, nil, 1503 354, 360, nil, nil, 369, nil, nil, nil, nil, nil, 1504 nil, nil, nil, nil, nil, nil, 517, 415, nil, nil, 1505 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1506 604, nil, nil, nil, nil, nil, nil, nil, nil, 416, 1481 91, 124, 156, 157, 48, 110, 202, 127, 42, 56, 1482 270, 415, 192, 42, 172, 107, 103, 112, 520, 65, 1483 117, 91, 64, 128, 23, 272, 623, 86, 3, 72, 1484 67, 116, 62, 614, 392, 93, 528, 623, 106, 59, 1485 52, 279, 625, 200, 67, 115, 173, 175, 86, 204, 1486 139, 132, 130, 619, 610, 271, 113, 61, 269, 177, 1487 219, 220, 189, 222, 223, 205, 458, 226, 227, 75, 1488 216, 218, 206, 186, 221, 184, 187, 224, 225, 190, 1489 73, 195, 481, 65, 577, 391, 64, 183, 101, 107, 1490 208, 22, 13, 2, 135, 70, 53, 31, 180, 194, 1491 197, 199, 203, 174, 176, 179, 173, 231, 232, 233, 1492 234, 235, 106, 210, 182, 185, 188, 42, 191, 193, 1493 196, 198, 251, 26, 19, 159, 137, 11, 252, 5, 1494 213, 318, 565, 589, 4, 544, 598, 579, nil, nil, 1495 nil, 248, nil, nil, nil, nil, nil, nil, nil, nil, 1496 nil, nil, 247, nil, nil, nil, 313, nil, nil, nil, 1497 nil, nil, 316, nil, nil, nil, 246, nil, nil, nil, 1498 374, nil, 376, nil, nil, nil, nil, 244, nil, nil, 1499 nil, nil, nil, nil, 321, nil, 335, nil, nil, nil, 1500 347, 353, 336, nil, 363, 320, 348, 354, 325, nil, 1501 364, nil, nil, nil, 379, 334, 384, nil, nil, 346, 1502 352, 382, 387, 362, nil, 389, 333, 368, nil, 372, 1503 345, 351, nil, nil, 361, 365, nil, 326, nil, 370, 1504 332, nil, nil, nil, 344, 350, 323, nil, 360, 328, 1505 367, 331, nil, nil, nil, 343, 349, nil, nil, 359, 1506 nil, nil, nil, nil, nil, 590, nil, nil, nil, nil, 1507 414, 519, nil, nil, nil, nil, nil, nil, nil, nil, 1507 1508 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1508 1509 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1509 nil, nil, nil, nil, nil, 457, nil, nil, nil, 442,1510 nil, nil, 434, nil, 477, nil, nil, nil, nil, nil,1511 4 32, nil, nil, nil, nil, nil, nil, nil, nil, 430,1512 nil, nil, nil, nil, nil, nil, nil, 464, nil, nil,1513 nil, nil, nil, nil, nil, nil, 465, nil, nil, nil,1514 nil, nil, 483, nil, nil, nil, nil, nil, nil, nil,1515 nil, nil, 476, nil, 487, nil, 488, nil, 499, nil,1516 nil, 473, nil, nil, nil, nil, nil, nil, nil, 470,1517 nil, nil, nil, nil, 496, nil, nil, nil, nil, 468,1518 nil, nil, nil, 494, nil, 508, nil, nil, 518, nil,1519 507, 492, nil, 505, nil, nil, 280, nil, nil, nil,1520 490, 503, nil, nil, nil, nil, nil, nil, nil, nil,1521 501, nil, nil, nil, 415, nil, nil, nil, nil, nil,1522 nil, nil, nil, nil, nil, 250, 547, 556, 515, nil,1523 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,1524 nil, nil, nil, nil, 555, nil, 580, nil, nil, nil,1525 nil, nil, nil, 553, nil, nil, nil, nil, 518, nil,1526 nil, 551, nil, nil, nil, nil, 280, nil, nil, nil,1527 549, nil, nil, nil, nil, nil, 592, nil, nil, nil,1528 41, 565, nil, 567, nil, 569, nil, 337, 349, 357,1529 363, nil, nil, nil, nil, nil, nil, nil, 515, nil,1530 596, nil, 598, 606, nil, nil, nil, nil, nil, nil,1531 nil, nil, 415, nil, nil, nil, nil, nil, nil, nil,1510 nil, nil, nil, nil, nil, nil, nil, 448, nil, nil, 1511 nil, nil, 434, nil, nil, 451, nil, nil, nil, nil, 1512 478, 432, nil, nil, nil, nil, nil, nil, nil, nil, 1513 nil, nil, nil, 430, nil, nil, 416, nil, nil, nil, 1514 nil, nil, nil, nil, nil, nil, nil, nil, nil, 464, 1515 nil, nil, nil, nil, nil, nil, 466, nil, nil, nil, 1516 nil, nil, nil, nil, nil, 483, nil, nil, nil, nil, 1517 nil, nil, nil, nil, 475, nil, nil, nil, 496, nil, 1518 nil, nil, nil, 472, nil, nil, 499, nil, nil, nil, 1519 nil, nil, nil, nil, nil, 494, 470, nil, nil, nil, 1520 507, nil, nil, nil, 492, 505, 468, 508, nil, nil, 1521 nil, nil, nil, 517, 503, nil, 490, nil, nil, 316, 1522 nil, nil, nil, 487, nil, 488, 501, nil, nil, nil, 1523 nil, nil, nil, nil, nil, 414, nil, nil, nil, nil, 1524 nil, nil, nil, nil, nil, nil, nil, 248, 555, nil, 1525 nil, nil, nil, 516, nil, 556, nil, nil, nil, nil, 1526 nil, nil, nil, nil, nil, 553, nil, 582, nil, nil, 1527 nil, nil, nil, nil, 551, nil, nil, nil, nil, 517, 1528 nil, nil, nil, nil, nil, 316, 549, nil, nil, nil, 1529 nil, nil, nil, nil, nil, 547, nil, nil, nil, 595, 1530 567, nil, nil, nil, 42, nil, 569, nil, nil, 572, 1531 334, 346, 352, 362, 414, nil, nil, nil, nil, 516, 1532 nil, nil, nil, nil, 599, 608, 601, nil, nil, nil, 1532 1533 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1533 1534 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1534 1535 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1535 nil, nil, nil, nil, nil, nil, nil, nil, 629 ]1536 1537 racc_goto_check = [1538 57, 82, 22, 35, 84, 116, 23, 15, 24, 83,1539 105, 23, 15, 79, 110, 63, 85, 26, 60, 89,1540 67, 57, 49, 73, 106, 96, 72, 56, 55, 54,1541 88, 52, 70, 23, 14, 61, 23, 51, 54, 55,1542 87, 82, 40, 59, 84, 106, 57, 61, 56, 83,1543 14, 86, 70, 111, 111, 61, 85, 111, 38, 89,1544 111, 111, 37, 34, 110, 110, 72, 110, 110, 25,1545 88, 110, 110, 69, 20, 18, 17, 75, 76, 77,1546 87, 78, 16, 49, 80, 67, 81, 26, 73, 63,1547 1, 86, 60, 13, 12, 11, 10, 9, 8, 7,1548 91, 92, 93, 94, 95, 53, 57, 57, 97, 98,1549 23, 57, 57, 57, 57, 23, 15, 99, 100, 101,1550 102, 103, 82, 104, 6, 5, 107, 109, 4, 3,1551 83, 113, 114, 110, 115, 2, 117, 128, 130, nil,1552 89, nil, nil, nil, nil, nil, nil, nil, nil, nil,1553 nil, 88, nil, nil, 82, nil, nil, nil, nil, nil,1554 nil, 87, 83, nil, nil, nil, nil, nil, nil, nil,1555 nil, nil, 86, 79, nil, 79, nil, nil, nil, nil,1556 84, nil, nil, 84, 82, nil, 83, nil, 82, nil,1557 82, 82, 83, nil, 85, nil, 83, 85, 83, 83,1558 nil, nil, 89, nil, 82, nil, 89, 82, 89, 89,1559 nil, nil, nil, 88, 83, nil, 89, 88, 89, 88,1560 88, nil, nil, 87, 88, nil, nil, 87, 88, 87,1561 87, 86, 87, nil, 86, 87, nil, nil, 86, nil,1562 86, 86, nil, nil, 86, nil, nil, nil, nil, nil,1563 nil, nil, nil, nil, nil, nil, 24, 82, nil, nil,1564 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,1565 116, nil, nil, nil, nil, nil, nil, nil, nil, 83,1566 1536 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1567 1537 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1568 nil, nil, nil, nil, nil, 82, nil, nil, nil, 89, 1569 nil, nil, 88, nil, 105, nil, nil, nil, nil, nil, 1570 87, nil, nil, nil, nil, nil, nil, nil, nil, 86, 1571 nil, nil, nil, nil, nil, nil, nil, 82, nil, nil, 1572 nil, nil, nil, nil, nil, nil, 83, nil, nil, nil, 1573 nil, nil, 84, nil, nil, nil, nil, nil, nil, nil, 1574 nil, nil, 89, nil, 83, nil, 83, nil, 82, nil, 1575 nil, 88, nil, nil, nil, nil, nil, nil, nil, 87, 1576 nil, nil, nil, nil, 89, nil, nil, nil, nil, 86, 1577 nil, nil, nil, 88, nil, 82, nil, nil, 82, nil, 1578 89, 87, nil, 88, nil, nil, 83, nil, nil, nil, 1579 86, 87, nil, nil, nil, nil, nil, nil, nil, nil, 1580 86, nil, nil, nil, 82, nil, nil, nil, nil, nil, 1581 nil, nil, nil, nil, nil, 89, 83, 82, 23, nil, 1538 632 ] 1539 1540 racc_goto_check = [ 1541 56, 81, 34, 22, 15, 83, 104, 82, 23, 15, 1542 24, 115, 78, 23, 109, 59, 62, 84, 26, 66, 1543 88, 56, 72, 71, 14, 48, 54, 55, 1, 105, 1544 60, 87, 69, 53, 51, 23, 50, 54, 23, 58, 1545 14, 39, 53, 81, 60, 86, 56, 83, 55, 82, 1546 105, 60, 69, 37, 36, 25, 85, 68, 20, 84, 1547 109, 109, 88, 109, 109, 71, 52, 109, 109, 18, 1548 110, 110, 74, 87, 110, 75, 76, 110, 110, 77, 1549 17, 79, 80, 66, 26, 48, 72, 86, 16, 59, 1550 62, 13, 12, 11, 10, 9, 8, 7, 85, 90, 1551 91, 92, 93, 94, 95, 96, 56, 56, 56, 56, 1552 56, 56, 23, 15, 97, 98, 99, 23, 100, 101, 1553 102, 103, 81, 6, 5, 106, 108, 4, 82, 3, 1554 112, 109, 113, 114, 2, 116, 127, 129, nil, nil, 1555 nil, 88, nil, nil, nil, nil, nil, nil, nil, nil, 1556 nil, nil, 87, nil, nil, nil, 81, nil, nil, nil, 1557 nil, nil, 82, nil, nil, nil, 86, nil, nil, nil, 1558 78, nil, 78, nil, nil, nil, nil, 85, nil, nil, 1559 nil, nil, nil, nil, 83, nil, 81, nil, nil, nil, 1560 81, 81, 82, nil, 81, 84, 82, 82, 84, nil, 1561 82, nil, nil, nil, 81, 88, 81, nil, nil, 88, 1562 88, 82, 83, 88, nil, 82, 87, 88, nil, 88, 1563 87, 87, nil, nil, 87, 87, nil, 86, nil, 87, 1564 86, nil, nil, nil, 86, 86, 85, nil, 86, 85, 1565 86, 85, nil, nil, nil, 85, 85, nil, nil, 85, 1566 nil, nil, nil, nil, nil, 115, nil, nil, nil, nil, 1567 81, 24, nil, nil, nil, nil, nil, nil, nil, nil, 1582 1568 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1583 nil, nil, nil, nil, 89, nil, 22, nil, nil, nil, 1584 nil, nil, nil, 88, nil, nil, nil, nil, 82, nil, 1585 nil, 87, nil, nil, nil, nil, 83, nil, nil, nil, 1586 86, nil, nil, nil, nil, nil, 22, nil, nil, nil, 1587 23, 15, nil, 23, nil, 23, nil, 89, 89, 89, 1588 89, nil, nil, nil, nil, nil, nil, nil, 23, nil, 1589 82, nil, 82, 35, nil, nil, nil, nil, nil, nil, 1590 nil, nil, 82, nil, nil, nil, nil, nil, nil, nil, 1569 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1570 nil, nil, nil, nil, nil, nil, nil, 81, nil, nil, 1571 nil, nil, 88, nil, nil, 82, nil, nil, nil, nil, 1572 104, 87, nil, nil, nil, nil, nil, nil, nil, nil, 1573 nil, nil, nil, 86, nil, nil, 85, nil, nil, nil, 1574 nil, nil, nil, nil, nil, nil, nil, nil, nil, 81, 1575 nil, nil, nil, nil, nil, nil, 82, nil, nil, nil, 1576 nil, nil, nil, nil, nil, 83, nil, nil, nil, nil, 1577 nil, nil, nil, nil, 88, nil, nil, nil, 81, nil, 1578 nil, nil, nil, 87, nil, nil, 82, nil, nil, nil, 1579 nil, nil, nil, nil, nil, 88, 86, nil, nil, nil, 1580 81, nil, nil, nil, 87, 88, 85, 82, nil, nil, 1581 nil, nil, nil, 81, 87, nil, 86, nil, nil, 82, 1582 nil, nil, nil, 85, nil, 85, 86, nil, nil, nil, 1583 nil, nil, nil, nil, nil, 81, nil, nil, nil, nil, 1584 nil, nil, nil, nil, nil, nil, nil, 88, 81, nil, 1585 nil, nil, nil, 23, nil, 82, nil, nil, nil, nil, 1586 nil, nil, nil, nil, nil, 88, nil, 22, nil, nil, 1587 nil, nil, nil, nil, 87, nil, nil, nil, nil, 81, 1588 nil, nil, nil, nil, nil, 82, 86, nil, nil, nil, 1589 nil, nil, nil, nil, nil, 85, nil, nil, nil, 22, 1590 15, nil, nil, nil, 23, nil, 23, nil, nil, 23, 1591 88, 88, 88, 88, 81, nil, nil, nil, nil, 23, 1592 nil, nil, nil, nil, 81, 34, 81, nil, nil, nil, 1591 1593 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1592 1594 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1593 1595 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1594 nil, nil, nil, nil, nil, nil, nil, nil, 57 ] 1596 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1597 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1598 56 ] 1595 1599 1596 1600 racc_goto_pointer = [ 1597 nil, 90, 135, 129, 123, 114, 105, 73, 67, 44, 1598 26, 95, 88, 79, 20, -20, 28, 22, 21, nil, 1599 -137, nil, -81, -21, -203, -142, -442, nil, nil, nil, 1600 nil, nil, nil, nil, -448, -79, nil, -539, -550, nil, 1601 -173, nil, nil, nil, nil, nil, nil, nil, nil, -189, 1602 nil, -422, -243, -289, -578, -584, -27, -54, nil, 5, 1603 -39, -12, nil, -42, nil, nil, nil, -21, nil, 30, 1604 -11, nil, -36, -18, nil, -29, -24, -23, -21, -89, 1605 -18, -322, -61, -53, -58, -46, -11, -22, -32, -43, 1606 nil, -2, -1, 0, 1, 2, -77, 6, 7, 15, 1607 16, 17, 18, 19, 21, -92, -30, 41, nil, 56, 1608 -86, -95, nil, -11, -406, -449, -313, -349, nil, nil, 1609 nil, nil, nil, nil, nil, nil, nil, nil, -434, nil, 1610 -394 ] 1601 nil, 28, 134, 129, 122, 113, 104, 71, 65, 42, 1602 24, 93, 86, 77, 10, -23, 34, 26, 15, nil, 1603 -153, nil, -80, -19, -201, -156, -444, nil, nil, nil, 1604 nil, nil, nil, nil, -80, nil, -550, -557, nil, -174, 1605 nil, nil, nil, nil, nil, nil, nil, nil, -186, nil, 1606 -426, -240, -326, -576, -588, -27, -54, nil, 3, -42, 1607 -15, nil, -41, nil, nil, nil, -23, nil, 16, -9, 1608 nil, -37, -20, nil, -34, -27, -26, -23, -90, -21, 1609 -326, -59, -53, -55, -43, -4, -15, -29, -40, nil, 1610 -3, -2, -1, 0, 1, 2, 3, 12, 13, 14, 1611 16, 17, 18, 19, -96, -25, 40, nil, 55, -86, 1612 -74, nil, -12, -379, -430, -308, -349, nil, nil, nil, 1613 nil, nil, nil, nil, nil, nil, nil, -437, nil, -397 ] 1611 1614 1612 1615 racc_goto_default = [ 1613 1616 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 1614 nil, nil, nil, nil, nil, nil, nil, 535, nil, 79, 1615 nil, 83, nil, 140, nil, nil, nil, 520, 521, 522, 1616 523, 525, 528, 531, nil, 92, 534, nil, nil, 537, 1617 512, 283, 286, 290, 293, 298, 302, 306, 311, nil, 1618 269, nil, nil, nil, nil, 613, 614, 615, 45, 47, 1619 50, 34, 36, nil, 105, 39, 40, 42, 43, nil, 1620 nil, 65, nil, 35, 38, 104, nil, nil, nil, nil, 1621 nil, 125, 99, 72, nil, nil, 284, 288, 291, 295, 1622 122, 305, 310, 315, nil, nil, nil, nil, nil, nil, 1623 297, 301, 304, 308, 313, 278, nil, 77, 80, 81, 1624 84, 87, 93, 97, nil, nil, nil, 412, 282, 285, 1625 289, 292, 296, 300, 303, 307, 312, 527, 530, 533, 1626 nil ] 1617 nil, nil, nil, nil, nil, nil, nil, 536, nil, 79, 1618 nil, 83, nil, 140, nil, nil, nil, 521, 522, 523, 1619 524, 527, 531, 533, 88, 535, nil, nil, 537, 539, 1620 281, 284, 287, 291, 295, 299, 304, 308, nil, 275, 1621 nil, nil, nil, nil, 615, 616, 617, 43, 45, 47, 1622 50, 35, nil, 105, 38, 39, 40, 41, nil, nil, 1623 63, nil, 33, 36, 104, nil, nil, nil, nil, nil, 1624 122, 97, 99, nil, nil, 282, 285, 289, 292, 119, 1625 303, 307, 312, nil, nil, nil, nil, nil, nil, 294, 1626 298, 302, 306, 310, 314, nil, 74, 77, 80, 81, 1627 84, 89, 94, nil, nil, nil, 411, 280, 283, 286, 1628 290, 293, 297, 301, 305, 309, 526, 530, 532, nil ] 1627 1629 1628 1630 racc_token_table = { … … 1665 1667 :END_REGEXP_BLOCK => 36, 1666 1668 :ERR_C_DOMAIN_TYPE => 37, 1667 :START_V_C_DOMAIN_TYPE => 38,1668 :END_V_C_DOMAIN_TYPE => 39,1669 :START_V_C_DOMAIN_TYPE_BLOCK => 38, 1670 :END_V_C_DOMAIN_TYPE_BLOCK => 39, 1669 1671 :SYM_USE_NODE => 40, 1670 1672 :SYM_ALLOW_ARCHETYPE => 41, … … 1780 1782 'END_REGEXP_BLOCK', 1781 1783 'ERR_C_DOMAIN_TYPE', 1782 'START_V_C_DOMAIN_TYPE ',1783 'END_V_C_DOMAIN_TYPE ',1784 'START_V_C_DOMAIN_TYPE_BLOCK', 1785 'END_V_C_DOMAIN_TYPE_BLOCK', 1784 1786 'SYM_USE_NODE', 1785 1787 'SYM_ALLOW_ARCHETYPE', … … 1869 1871 'c_primitive_object', 1870 1872 'v_c_domain_type', 1871 'v_c_domain_type_body',1872 1873 'absolute_path', 1873 1874 'c_archetype_slot_head', … … 2009 2010 # reduce 18 omitted 2010 2011 2011 # reduce 19 omitted 2012 module_eval <<'.,.,', 'lib/parser.y', 74 2013 def _reduce_19( val, _values, result ) 2014 result = {:language => val[1]} 2015 result 2016 end 2017 .,., 2012 2018 2013 2019 # reduce 20 omitted … … 2033 2039 # reduce 30 omitted 2034 2040 2035 # reduce 31 omitted 2036 2037 # reduce 32 omitted 2041 module_eval <<'.,.,', 'lib/parser.y', 111 2042 def _reduce_31( val, _values, result ) 2043 result = {:c_complex_object_id => {:type_identifier => val[0]}} 2044 result 2045 end 2046 .,., 2047 2048 module_eval <<'.,.,', 'lib/parser.y', 115 2049 def _reduce_32( val, _values, result ) 2050 result = {:c_complex_object_id => {:type_identifier => val[0], :V_LOCAL_TERM_CODE_REF => val[1]}} 2051 result 2052 end 2053 .,., 2038 2054 2039 2055 # reduce 33 omitted … … 2722 2738 2723 2739 # reduce 375 omitted 2724 2725 # reduce 376 omitted2726 2740 2727 2741 def _reduce_none( val, _values, result ) -
ruby/trunk/adl_parser/lib/parser.y
r14 r16 70 70 arch_language: #-- empty is ok for ADL 1.4 tools 71 71 | SYM_LANGUAGE dadl_section 72 | SYM_LANGUAGE error 72 { 73 result = {:language => val[1]} 74 } 75 | SYM_LANGUAGE error 73 76 74 77 #arch_description: #-- no meta-data ok … … 104 107 105 108 c_complex_object_id: type_identifier 109 { 110 result = {:c_complex_object_id => {:type_identifier => val[0]}} 111 } 106 112 | type_identifier V_LOCAL_TERM_CODE_REF 113 { 114 result = {:c_complex_object_id => {:type_identifier => val[0], :V_LOCAL_TERM_CODE_REF => val[1]}} 115 } 107 116 108 117 c_complex_object_body: c_any #-- used to indicate that any value of a type is ok … … 130 139 | error 131 140 132 v_c_domain_type: START_V_C_DOMAIN_TYPE v_c_domain_type_body END_V_C_DOMAIN_TYPE 133 v_c_domain_type_body: dadl_section 141 v_c_domain_type: START_V_C_DOMAIN_TYPE_BLOCK dadl_section END_V_C_DOMAIN_TYPE_BLOCK 134 142 135 143 # 'archetype_internal_ref' is a node that refers to a previously defined object node in the same archetype. … … 246 254 single_attr_object_block: untyped_single_attr_object_block 247 255 | type_identifier untyped_single_attr_object_block 248 untyped_single_attr_object_block: single_attr_object_complex_head SYM_END_DBLOCK 256 untyped_single_attr_object_block: single_attr_object_complex_head SYM_END_DBLOCK # <> 249 257 | single_attr_object_complex_head attr_vals SYM_END_DBLOCK 250 258 single_attr_object_complex_head: SYM_START_DBLOCK … … 763 771 # @start_block_received = true 764 772 @adl_type.push(:dadl) 765 yield :SYM_START_DBLOCK, :SYM_START_DBLOCK773 yield :SYM_START_DBLOCK, $& 766 774 end 767 775 when /\A\>/ # > … … 781 789 # puts "Escaping #{adl_type}" 782 790 assert_at(__FILE__,__LINE__){adl_type == :cadl} 783 yield :SYM_END_CBLOCK, :SYM_END_CBLOCK791 yield :SYM_END_CBLOCK, $& 784 792 when /\A\-/ # - 785 793 yield :Minus_code, :Minus_code … … 917 925 @in_c_domain_type = true 918 926 @adl_type.push(:dadl) 919 yield :START_V_C_DOMAIN_TYPE_BLOCK, :START_V_C_DOMAIN_TYPE_BLOCK927 yield :START_V_C_DOMAIN_TYPE_BLOCK, $& 920 928 ### else 921 929 ### raise … … 926 934 else 927 935 @adl_type.push(:dadl) 928 yield :SYM_START_DBLOCK, :SYM_START_DBLOCK936 yield :SYM_START_DBLOCK, $& 929 937 end 930 938 when /\A\>/ # > … … 1118 1126 @in_interval = false 1119 1127 yield :SYM_GT, :SYM_GT 1120 elsif @in_c_domain_type 1121 @in_c_domain_type = false1128 elsif @in_c_domain_type == true 1129 assert_at(__FILE__,__LINE__){@adl_type.last == :dadl} 1122 1130 adl_type = @adl_type.pop 1123 assert_at(__FILE__,__LINE__){adl_type == :dadl} 1124 yield :END_V_C_DOMAIN_TYPE_BLOCK, :END_V_C_DOMAIN_TYPE_BLOCK 1125 else 1131 if @adl_type.last == :cadl 1132 @in_c_domain_type = false 1133 yield :END_V_C_DOMAIN_TYPE_BLOCK, $& 1134 else 1135 yield :SYM_END_DBLOCK, $& 1136 end 1137 elsif @in_c_domain_type == false 1126 1138 adl_type = @adl_type.pop 1127 1139 # puts "Escaping #{adl_type}" 1128 1140 assert_at(__FILE__,__LINE__){adl_type == :dadl} 1129 yield :SYM_END_DBLOCK, :SYM_END_DBLOCK 1141 yield :SYM_END_DBLOCK, $& 1142 else 1143 raise 1130 1144 end 1131 1145 when /\A\-/ # - … … 1166 1180 if @in_interval 1167 1181 @in_interval = false 1168 # elsif @start_block_received1169 # @start_block_received = false1170 1182 else 1171 1183 @in_interval = false 1172 1184 end 1173 1185 yield :SYM_INTERVAL_DELIM, :SYM_INTERVAL_DELIM 1174 when /\A\[[a-zA-Z0-9()\._-]+::[a-zA-Z0-9\._-]+\]/ 1175 # when /\A\[[a-zA-Z0-9()\._-]+\:\:[a-zA-Z0-9\._-]+\]/ #V_QUALIFIED_TERM_CODE_REF form [ICD10AM(1998)::F23] 1186 when /\A\[[a-zA-Z0-9()\._-]+::[a-zA-Z0-9\._-]+\]/ #V_QUALIFIED_TERM_CODE_REF form [ICD10AM(1998)::F23] 1176 1187 yield :V_QUALIFIED_TERM_CODE_REF, $& 1188 when /\A\[[a-zA-Z0-9._\- ]+::[a-zA-Z0-9._\- ]+\]/ #ERR_V_QUALIFIED_TERM_CODE_REF 1189 yield :ERR_V_QUALIFIED_TERM_CODE_REF, $& 1190 when /\A\[[a-zA-Z0-9][a-zA-Z0-9._\-]*\]/ #V_LOCAL_TERM_CODE_REF 1191 yield :V_LOCAL_TERM_CODE_REF, $& 1177 1192 when /\A\[/ # [ 1178 1193 yield :Left_bracket_code, :Left_bracket_code 1179 1194 when /\A\]/ # ] 1180 1195 yield :Right_bracket_code, :Right_bracket_code 1181 when /\A[A-Z][a-zA-Z0-9_ ]*/1196 when /\A[A-Z][a-zA-Z0-9_-]*/ 1182 1197 yield :V_TYPE_IDENTIFIER, $& 1183 1198 when /\A[A-Z][a-zA-Z0-9_]*<[a-zA-Z0-9,_<>]+>/ #V_GENERIC_TYPE_IDENTIFIER … … 1190 1205 yield :V_ATTRIBUTE_IDENTIFIER, $& 1191 1206 end 1192 when /\A\[[a-zA-Z0-9._\- ]+::[a-zA-Z0-9._\- ]+\]/ #ERR_V_QUALIFIED_TERM_CODE_REF1193 yield :ERR_V_QUALIFIED_TERM_CODE_REF, $&1194 when /\A\[[a-zA-Z0-9][a-zA-Z0-9._\-]*\]/ #V_LOCAL_TERM_CODE_REF1195 yield :V_LOCAL_TERM_CODE_REF, $&1196 1207 when /\Aa[ct][0-9.]+/ #V_LOCAL_CODE 1197 1208 yield :V_LOCAL_CODE, $&
Note:
See TracChangeset
for help on using the changeset viewer.