diff --git a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLLexer.java b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLLexer.java index 9e5cf4ca3d874cbc1cade9c13574133455a9e02c..ced0163d036e1cd1298cedd2c402514b8013c598 100644 --- a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLLexer.java +++ b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 06/06/2024 14:48 */ +/* The following code was generated by JFlex 1.4.3 on 06/06/2024 17:02 */ package avatartranslator.tosysmlv2; import java_cup.runtime.*; @@ -9,7 +9,7 @@ import avatartranslator.tosysmlv2.AvatarFromSysMLSyntax.*; /** * This class is a scanner generated by * <a href="http://www.jflex.de/">JFlex</a> 1.4.3 - * on 06/06/2024 14:48 from the specification file + * on 06/06/2024 17:02 from the specification file * <tt>__AvatarFromSysMLLexer__.jflex</tt> */ public class AvatarFromSysMLLexer implements java_cup.runtime.Scanner { diff --git a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLParser.java b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLParser.java index 10f2be4f587913d4b1e449d7acb57c92441076e4..e867dd97e8c760fa5e5f3bfb5e6af4a44e5b17eb 100644 --- a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLParser.java +++ b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLParser.java @@ -38,7 +38,7 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { /** Production table. */ protected static final short _production_table[][] = unpackFromStrings(new String[] { - "\000\u013a\000\002\004\007\000\002\002\004\000\002\004" + + "\000\u013b\000\002\004\007\000\002\002\004\000\002\004" + "\006\000\002\005\003\000\002\005\004\000\002\006\003" + "\000\002\006\003\000\002\006\003\000\002\006\003\000" + "\002\006\003\000\002\006\003\000\002\006\003\000\002" + @@ -103,38 +103,39 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\000\002\152\004\000\002\124\003\000\002\124\005\000" + "\002\125\003\000\002\125\003\000\002\125\003\000\002" + "\125\003\000\002\125\003\000\002\125\003\000\002\125" + - "\003\000\002\133\005\000\002\134\005\000\002\135\003" + - "\000\002\135\003\000\002\137\010\000\002\140\007\000" + - "\002\140\006\000\002\140\004\000\002\140\007\000\002" + - "\140\006\000\002\170\004\000\002\141\005\000\002\142" + - "\007\000\002\143\007\000\002\144\007\000\002\202\003" + - "\000\002\202\005\000\002\171\012\000\002\171\012\000" + - "\002\172\005\000\002\210\003\000\002\211\003\000\002" + - "\211\005\000\002\173\005\000\002\136\010\000\002\174" + - "\012\000\002\174\012\000\002\175\011\000\002\176\006" + - "\000\002\176\007\000\002\176\010\000\002\176\011\000" + - "\002\203\007\000\002\203\013\000\002\177\005\000\002" + - "\177\006\000\002\177\005\000\002\177\006\000\002\212" + - "\006\000\002\213\006\000\002\205\010\000\002\205\006" + - "\000\002\200\007\000\002\200\005\000\002\201\007\000" + - "\002\201\006\000\002\003\003\000\002\207\003\000\002" + - "\206\004\000\002\206\004\000\002\214\013\000\002\215" + - "\010\000\002\215\006\000\002\216\006\000\002\216\004" + - "\000\002\217\012\000\002\204\004\000\002\204\005\000" + - "\002\220\003\000\002\220\003\000\002\220\003\000\002" + - "\221\010\000\002\222\010\000\002\223\010\000\002\223" + - "\010\000\002\224\003\000\002\224\003\000\002\224\003" + - "\000\002\225\003\000\002\227\003\000\002\227\003\000" + - "\002\230\005\000\002\230\005\000\002\230\005\000\002" + - "\230\005\000\002\230\005\000\002\230\004\000\002\230" + - "\005\000\002\230\005\000\002\230\004\000\002\230\005" + - "\000\002\230\005\000\002\230\005\000\002\230\005\000" + - "\002\230\005\000\002\230\005\000\002\230\005\000\002" + - "\230\003\000\002\230\003\000\002\231\003\000\002\231" + - "\005\000\002\226\004\000\002\226\005\000\002\232\004" + - "\000\002\237\003\000\002\237\005\000\002\234\003\000" + - "\002\233\003\000\002\233\003\000\002\233\003\000\002" + - "\235\004\000\002\235\005\000\002\236\004" }); + "\003\000\002\133\005\000\002\134\005\000\002\224\003" + + "\000\002\135\003\000\002\135\003\000\002\137\010\000" + + "\002\140\007\000\002\140\006\000\002\140\004\000\002" + + "\140\007\000\002\140\006\000\002\170\004\000\002\141" + + "\005\000\002\142\007\000\002\143\007\000\002\144\007" + + "\000\002\202\003\000\002\202\005\000\002\171\012\000" + + "\002\171\012\000\002\172\005\000\002\210\003\000\002" + + "\211\003\000\002\211\005\000\002\173\005\000\002\136" + + "\010\000\002\174\012\000\002\174\012\000\002\175\011" + + "\000\002\176\006\000\002\176\007\000\002\176\010\000" + + "\002\176\011\000\002\203\007\000\002\203\013\000\002" + + "\177\005\000\002\177\006\000\002\177\005\000\002\177" + + "\006\000\002\212\006\000\002\213\006\000\002\205\010" + + "\000\002\205\006\000\002\200\007\000\002\200\005\000" + + "\002\201\007\000\002\201\006\000\002\003\003\000\002" + + "\207\003\000\002\206\004\000\002\206\004\000\002\214" + + "\013\000\002\215\010\000\002\215\006\000\002\216\006" + + "\000\002\216\004\000\002\217\012\000\002\204\004\000" + + "\002\204\005\000\002\220\003\000\002\220\003\000\002" + + "\220\003\000\002\221\010\000\002\222\010\000\002\223" + + "\010\000\002\223\010\000\002\225\003\000\002\225\003" + + "\000\002\225\003\000\002\226\003\000\002\230\003\000" + + "\002\230\003\000\002\231\005\000\002\231\005\000\002" + + "\231\005\000\002\231\005\000\002\231\005\000\002\231" + + "\004\000\002\231\005\000\002\231\005\000\002\231\004" + + "\000\002\231\005\000\002\231\005\000\002\231\005\000" + + "\002\231\005\000\002\231\005\000\002\231\005\000\002" + + "\231\005\000\002\231\003\000\002\231\003\000\002\232" + + "\003\000\002\232\005\000\002\227\004\000\002\227\005" + + "\000\002\233\004\000\002\240\003\000\002\240\005\000" + + "\002\235\003\000\002\234\003\000\002\234\003\000\002" + + "\234\003\000\002\236\004\000\002\236\005\000\002\237" + + "\004" }); /** Access to production table. */ @Override @@ -143,7 +144,7 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { /** Parse-action table. */ protected static final short[][] _action_table = unpackFromStrings(new String[] { - "\000\u0320\000\004\260\005\001\002\000\004\002\u0322\001" + + "\000\u0321\000\004\260\005\001\002\000\004\002\u0323\001" + "\002\000\004\141\006\001\002\000\004\014\007\001\002" + "\000\014\015\030\164\020\166\040\232\010\262\046\001" + "\002\000\014\015\ufffc\164\ufffc\166\ufffc\232\ufffc\262\ufffc" + @@ -152,11 +153,11 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\262\ufff5\001\002\000\014\015\uffe2\164\uffe2\166\uffe2\232" + "\uffe2\262\uffe2\001\002\000\014\015\uffe3\164\uffe3\166\uffe3" + "\232\uffe3\262\uffe3\001\002\000\014\015\uffc3\164\uffc3\166" + - "\uffc3\232\uffc3\262\uffc3\001\002\000\014\025\u0305\026\u0308" + - "\027\u02ff\031\u0306\032\u02fe\001\002\000\014\015\uffc9\164" + - "\uffc9\166\uffc9\232\uffc9\262\uffc9\001\002\000\004\201\u031b" + - "\001\002\000\014\025\u0305\026\u0308\027\u02ff\031\u0306\032" + - "\u02fe\001\002\000\014\015\ufffe\164\020\166\040\232\010" + + "\uffc3\232\uffc3\262\uffc3\001\002\000\014\025\u0306\026\u0309" + + "\027\u0300\031\u0307\032\u02ff\001\002\000\014\015\uffc9\164" + + "\uffc9\166\uffc9\232\uffc9\262\uffc9\001\002\000\004\201\u031c" + + "\001\002\000\014\025\u0306\026\u0309\027\u0300\031\u0307\032" + + "\u02ff\001\002\000\014\015\ufffe\164\020\166\040\232\010" + "\262\046\001\002\000\014\015\uffce\164\uffce\166\uffce\232" + "\uffce\262\uffce\001\002\000\014\015\ufffa\164\ufffa\166\ufffa" + "\232\ufffa\262\ufffa\001\002\000\014\015\uffcf\164\uffcf\166" + @@ -164,12 +165,12 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\166\uffc8\232\uffc8\262\uffc8\001\002\000\014\015\uffcd\164" + "\uffcd\166\uffcd\232\uffcd\262\uffcd\001\002\000\004\002\uffff" + "\001\002\000\014\015\uffc2\164\uffc2\166\uffc2\232\uffc2\262" + - "\uffc2\001\002\000\014\025\u0305\026\u0308\027\u02ff\031\u0306" + - "\032\u02fe\001\002\000\006\014\u02f2\017\u02f1\001\002\000" + + "\uffc2\001\002\000\014\025\u0306\026\u0309\027\u0300\031\u0307" + + "\032\u02ff\001\002\000\006\014\u02f3\017\u02f2\001\002\000" + "\014\015\ufff7\164\ufff7\166\ufff7\232\ufff7\262\ufff7\001\002" + - "\000\006\164\275\265\u02e1\001\002\000\014\015\ufffb\164" + - "\ufffb\166\ufffb\232\ufffb\262\ufffb\001\002\000\004\014\u02da" + - "\001\002\000\004\020\u02bf\001\002\000\020\015\163\145" + + "\000\006\164\275\265\u02e2\001\002\000\014\015\ufffb\164" + + "\ufffb\166\ufffb\232\ufffb\262\ufffb\001\002\000\004\014\u02db" + + "\001\002\000\004\020\u02c0\001\002\000\020\015\163\145" + "\172\164\156\171\162\215\153\262\200\270\155\001\002" + "\000\004\015\151\001\002\000\014\015\ufff6\164\ufff6\166" + "\ufff6\232\ufff6\262\ufff6\001\002\000\014\015\uffe4\164\uffe4" + @@ -216,23 +217,23 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\054\147\001\002\000\006\014\uffb6\017\uffb6\001\002\000" + "\006\164\uffc0\265\uffc0\001\002\000\004\002\001\001\002" + "\000\020\015\uff9f\145\uff9f\164\uff9f\171\uff9f\215\uff9f\262" + - "\uff9f\270\uff9f\001\002\000\004\307\u02bb\001\002\000\020" + + "\uff9f\270\uff9f\001\002\000\004\307\u02bc\001\002\000\020" + "\015\uffa8\145\uffa8\164\uffa8\171\uffa8\215\uffa8\262\uffa8\270" + - "\uffa8\001\002\000\004\164\u02b7\001\002\000\004\141\u02b4" + + "\uffa8\001\002\000\004\164\u02b8\001\002\000\004\141\u02b5" + "\001\002\000\020\015\uffa9\145\uffa9\164\uffa9\171\uffa9\215" + - "\uffa9\262\uffa9\270\uffa9\001\002\000\006\017\u02b0\023\u02b1" + + "\uffa9\262\uffa9\270\uffa9\001\002\000\006\017\u02b1\023\u02b2" + "\001\002\000\020\015\uffac\145\uffac\164\uffac\171\uffac\215" + - "\uffac\262\uffac\270\uffac\001\002\000\004\141\u02ad\001\002" + + "\uffac\262\uffac\270\uffac\001\002\000\004\141\u02ae\001\002" + "\000\024\015\uffb2\145\uffb2\164\uffb2\166\uffb2\171\uffb2\215" + - "\uffb2\232\uffb2\262\uffb2\270\uffb2\001\002\000\004\014\u02a2" + - "\001\002\000\020\015\u02a0\145\172\164\156\171\162\215" + + "\uffb2\232\uffb2\262\uffb2\270\uffb2\001\002\000\004\014\u02a3" + + "\001\002\000\020\015\u02a1\145\172\164\156\171\162\215" + "\153\262\200\270\155\001\002\000\020\015\uffab\145\uffab" + "\164\uffab\171\uffab\215\uffab\262\uffab\270\uffab\001\002\000" + "\024\015\uffb1\145\uffb1\164\uffb1\166\uffb1\171\uffb1\215\uffb1" + "\232\uffb1\262\uffb1\270\uffb1\001\002\000\020\015\uffa0\145" + "\uffa0\164\uffa0\171\uffa0\215\uffa0\262\uffa0\270\uffa0\001\002" + "\000\020\015\uffaa\145\uffaa\164\uffaa\171\uffaa\215\uffaa\262" + - "\uffaa\270\uffaa\001\002\000\004\141\u029d\001\002\000\006" + + "\uffaa\270\uffaa\001\002\000\004\141\u029e\001\002\000\006" + "\014\312\017\311\001\002\000\004\014\273\001\002\000" + "\020\015\uffad\145\uffad\164\uffad\171\uffad\215\uffad\262\uffad" + "\270\uffad\001\002\000\006\017\217\023\220\001\002\000" + @@ -250,96 +251,96 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\001\002\000\020\015\uff94\145\uff94\164\uff94\171\uff94\215" + "\uff94\262\uff94\270\uff94\001\002\000\020\015\uffa3\145\uffa3" + "\164\uffa3\171\uffa3\215\uffa3\262\uffa3\270\uffa3\001\002\000" + - "\016\004\222\005\224\012\226\141\223\251\231\335\221" + - "\001\002\000\016\004\222\005\224\012\226\141\223\251" + - "\231\335\221\001\002\000\044\011\ufed7\013\ufed7\016\ufed7" + - "\017\ufed7\024\ufed7\155\ufed7\255\ufed7\334\ufed7\335\ufed7\336" + - "\ufed7\337\ufed7\340\ufed7\341\ufed7\342\ufed7\343\ufed7\344\ufed7" + - "\345\ufed7\001\002\000\046\011\ufed5\013\ufed5\016\ufed5\017" + - "\ufed5\021\270\024\ufed5\155\ufed5\255\ufed5\334\ufed5\335\ufed5" + - "\336\ufed5\337\ufed5\340\ufed5\341\ufed5\342\ufed5\343\ufed5\344" + - "\ufed5\345\ufed5\001\002\000\044\011\ufed6\013\ufed6\016\ufed6" + + "\016\004\222\005\225\012\226\141\223\251\231\335\221" + + "\001\002\000\016\004\222\005\225\012\226\141\223\251" + + "\231\335\221\001\002\000\044\011\ufed6\013\ufed6\016\ufed6" + "\017\ufed6\024\ufed6\155\ufed6\255\ufed6\334\ufed6\335\ufed6\336" + "\ufed6\337\ufed6\340\ufed6\341\ufed6\342\ufed6\343\ufed6\344\ufed6" + - "\345\ufed6\001\002\000\044\011\ufee8\013\ufee8\016\ufee8\017" + - "\ufee8\024\ufee8\155\ufee8\255\ufee8\334\ufee8\335\ufee8\336\ufee8" + - "\337\ufee8\340\ufee8\341\ufee8\342\ufee8\343\ufee8\344\ufee8\345" + - "\ufee8\001\002\000\016\004\222\005\224\012\226\141\223" + - "\251\231\335\221\001\002\000\036\011\241\017\265\155" + - "\234\255\246\334\240\335\233\336\235\337\242\340\236" + - "\341\237\342\244\343\243\344\247\345\245\001\002\000" + - "\044\011\ufee9\013\ufee9\016\ufee9\017\ufee9\024\ufee9\155\ufee9" + - "\255\ufee9\334\ufee9\335\ufee9\336\ufee9\337\ufee9\340\ufee9\341" + - "\ufee9\342\ufee9\343\ufee9\344\ufee9\345\ufee9\001\002\000\016" + - "\004\222\005\224\012\226\141\223\251\231\335\221\001" + - "\002\000\044\011\241\013\ufedf\016\ufedf\017\ufedf\024\ufedf" + - "\155\ufedf\255\ufedf\334\240\335\233\336\235\337\242\340" + - "\236\341\237\342\244\343\243\344\247\345\245\001\002" + - "\000\016\004\222\005\224\012\226\141\223\251\231\335" + - "\221\001\002\000\016\004\222\005\224\012\226\141\223" + - "\251\231\335\221\001\002\000\016\004\222\005\224\012" + + "\345\ufed6\001\002\000\046\011\ufed4\013\ufed4\016\ufed4\017" + + "\ufed4\021\270\024\ufed4\155\ufed4\255\ufed4\334\ufed4\335\ufed4" + + "\336\ufed4\337\ufed4\340\ufed4\341\ufed4\342\ufed4\343\ufed4\344" + + "\ufed4\345\ufed4\001\002\000\044\011\ufee7\013\ufee7\016\ufee7" + + "\017\ufee7\024\ufee7\155\ufee7\255\ufee7\334\ufee7\335\ufee7\336" + + "\ufee7\337\ufee7\340\ufee7\341\ufee7\342\ufee7\343\ufee7\344\ufee7" + + "\345\ufee7\001\002\000\044\011\ufed5\013\ufed5\016\ufed5\017" + + "\ufed5\024\ufed5\155\ufed5\255\ufed5\334\ufed5\335\ufed5\336\ufed5" + + "\337\ufed5\340\ufed5\341\ufed5\342\ufed5\343\ufed5\344\ufed5\345" + + "\ufed5\001\002\000\016\004\222\005\225\012\226\141\223" + + "\251\231\335\221\001\002\000\036\011\240\017\265\155" + + "\234\255\246\334\241\335\233\336\235\337\242\340\236" + + "\341\237\342\245\343\243\344\247\345\244\001\002\000" + + "\044\011\ufee8\013\ufee8\016\ufee8\017\ufee8\024\ufee8\155\ufee8" + + "\255\ufee8\334\ufee8\335\ufee8\336\ufee8\337\ufee8\340\ufee8\341" + + "\ufee8\342\ufee8\343\ufee8\344\ufee8\345\ufee8\001\002\000\016" + + "\004\222\005\225\012\226\141\223\251\231\335\221\001" + + "\002\000\044\011\240\013\ufede\016\ufede\017\ufede\024\ufede" + + "\155\ufede\255\ufede\334\241\335\233\336\235\337\242\340" + + "\236\341\237\342\245\343\243\344\247\345\244\001\002" + + "\000\016\004\222\005\225\012\226\141\223\251\231\335" + + "\221\001\002\000\016\004\222\005\225\012\226\141\223" + + "\251\231\335\221\001\002\000\016\004\222\005\225\012" + "\226\141\223\251\231\335\221\001\002\000\016\004\222" + - "\005\224\012\226\141\223\251\231\335\221\001\002\000" + - "\016\004\222\005\224\012\226\141\223\251\231\335\221" + - "\001\002\000\016\004\222\005\224\012\226\141\223\251" + - "\231\335\221\001\002\000\016\004\222\005\224\012\226" + + "\005\225\012\226\141\223\251\231\335\221\001\002\000" + + "\016\004\222\005\225\012\226\141\223\251\231\335\221" + + "\001\002\000\016\004\222\005\225\012\226\141\223\251" + + "\231\335\221\001\002\000\016\004\222\005\225\012\226" + "\141\223\251\231\335\221\001\002\000\016\004\222\005" + - "\224\012\226\141\223\251\231\335\221\001\002\000\016" + - "\004\222\005\224\012\226\141\223\251\231\335\221\001" + - "\002\000\016\004\222\005\224\012\226\141\223\251\231" + - "\335\221\001\002\000\016\004\222\005\224\012\226\141" + - "\223\251\231\335\221\001\002\000\016\004\222\005\224" + + "\225\012\226\141\223\251\231\335\221\001\002\000\016" + + "\004\222\005\225\012\226\141\223\251\231\335\221\001" + + "\002\000\016\004\222\005\225\012\226\141\223\251\231" + + "\335\221\001\002\000\016\004\222\005\225\012\226\141" + + "\223\251\231\335\221\001\002\000\016\004\222\005\225" + "\012\226\141\223\251\231\335\221\001\002\000\016\004" + - "\222\005\224\012\226\141\223\251\231\335\221\001\002" + - "\000\034\011\ufedc\013\ufedc\016\ufedc\017\ufedc\024\ufedc\155" + - "\ufedc\255\ufedc\334\240\335\233\336\235\337\242\340\236" + - "\341\ufedc\001\002\000\044\011\241\013\ufee1\016\ufee1\017" + - "\ufee1\024\ufee1\155\234\255\ufee1\334\240\335\233\336\235" + - "\337\242\340\236\341\237\342\244\343\243\344\247\345" + - "\245\001\002\000\034\011\ufedb\013\ufedb\016\ufedb\017\ufedb" + - "\024\ufedb\155\ufedb\255\ufedb\334\240\335\233\336\235\337" + - "\242\340\236\341\ufedb\001\002\000\034\011\ufede\013\ufede" + - "\016\ufede\017\ufede\024\ufede\155\ufede\255\ufede\334\240\335" + - "\233\336\235\337\242\340\236\341\ufede\001\002\000\034" + - "\011\ufedd\013\ufedd\016\ufedd\017\ufedd\024\ufedd\155\ufedd\255" + - "\ufedd\334\240\335\233\336\235\337\242\340\236\341\ufedd" + - "\001\002\000\044\011\ufee4\013\ufee4\016\ufee4\017\ufee4\024" + - "\ufee4\155\ufee4\255\ufee4\334\ufee4\335\ufee4\336\ufee4\337\ufee4" + - "\340\ufee4\341\ufee4\342\ufee4\343\ufee4\344\ufee4\345\ufee4\001" + - "\002\000\044\011\ufeda\013\ufeda\016\ufeda\017\ufeda\024\ufeda" + - "\155\ufeda\255\ufeda\334\240\335\233\336\235\337\242\340" + - "\236\341\ufeda\342\244\343\243\344\247\345\245\001\002" + - "\000\044\011\ufee7\013\ufee7\016\ufee7\017\ufee7\024\ufee7\155" + - "\ufee7\255\ufee7\334\ufee7\335\ufee7\336\235\337\242\340\236" + - "\341\ufee7\342\ufee7\343\ufee7\344\ufee7\345\ufee7\001\002\000" + - "\044\011\ufed9\013\ufed9\016\ufed9\017\ufed9\024\ufed9\155\ufed9" + - "\255\ufed9\334\240\335\233\336\235\337\242\340\236\341" + - "\ufed9\342\244\343\243\344\247\345\245\001\002\000\044" + - "\011\ufee3\013\ufee3\016\ufee3\017\ufee3\024\ufee3\155\ufee3\255" + - "\ufee3\334\ufee3\335\ufee3\336\ufee3\337\ufee3\340\ufee3\341\ufee3" + - "\342\ufee3\343\ufee3\344\ufee3\345\ufee3\001\002\000\044\011" + - "\ufee5\013\ufee5\016\ufee5\017\ufee5\024\ufee5\155\ufee5\255\ufee5" + - "\334\ufee5\335\ufee5\336\ufee5\337\ufee5\340\ufee5\341\ufee5\342" + - "\ufee5\343\ufee5\344\ufee5\345\ufee5\001\002\000\044\011\241" + - "\013\ufee0\016\ufee0\017\ufee0\024\ufee0\155\ufee0\255\ufee0\334" + - "\240\335\233\336\235\337\242\340\236\341\237\342\244" + - "\343\243\344\247\345\245\001\002\000\044\011\ufee6\013" + - "\ufee6\016\ufee6\017\ufee6\024\ufee6\155\ufee6\255\ufee6\334\ufee6" + - "\335\ufee6\336\235\337\242\340\236\341\ufee6\342\ufee6\343" + - "\ufee6\344\ufee6\345\ufee6\001\002\000\020\015\uffa2\145\uffa2" + + "\222\005\225\012\226\141\223\251\231\335\221\001\002" + + "\000\034\011\ufedb\013\ufedb\016\ufedb\017\ufedb\024\ufedb\155" + + "\ufedb\255\ufedb\334\241\335\233\336\235\337\242\340\236" + + "\341\ufedb\001\002\000\044\011\240\013\ufee0\016\ufee0\017" + + "\ufee0\024\ufee0\155\234\255\ufee0\334\241\335\233\336\235" + + "\337\242\340\236\341\237\342\245\343\243\344\247\345" + + "\244\001\002\000\034\011\ufedd\013\ufedd\016\ufedd\017\ufedd" + + "\024\ufedd\155\ufedd\255\ufedd\334\241\335\233\336\235\337" + + "\242\340\236\341\ufedd\001\002\000\034\011\ufeda\013\ufeda" + + "\016\ufeda\017\ufeda\024\ufeda\155\ufeda\255\ufeda\334\241\335" + + "\233\336\235\337\242\340\236\341\ufeda\001\002\000\034" + + "\011\ufedc\013\ufedc\016\ufedc\017\ufedc\024\ufedc\155\ufedc\255" + + "\ufedc\334\241\335\233\336\235\337\242\340\236\341\ufedc" + + "\001\002\000\044\011\ufee3\013\ufee3\016\ufee3\017\ufee3\024" + + "\ufee3\155\ufee3\255\ufee3\334\ufee3\335\ufee3\336\ufee3\337\ufee3" + + "\340\ufee3\341\ufee3\342\ufee3\343\ufee3\344\ufee3\345\ufee3\001" + + "\002\000\044\011\ufee6\013\ufee6\016\ufee6\017\ufee6\024\ufee6" + + "\155\ufee6\255\ufee6\334\ufee6\335\ufee6\336\235\337\242\340" + + "\236\341\ufee6\342\ufee6\343\ufee6\344\ufee6\345\ufee6\001\002" + + "\000\044\011\ufed9\013\ufed9\016\ufed9\017\ufed9\024\ufed9\155" + + "\ufed9\255\ufed9\334\241\335\233\336\235\337\242\340\236" + + "\341\ufed9\342\245\343\243\344\247\345\244\001\002\000" + + "\044\011\ufed8\013\ufed8\016\ufed8\017\ufed8\024\ufed8\155\ufed8" + + "\255\ufed8\334\241\335\233\336\235\337\242\340\236\341" + + "\ufed8\342\245\343\243\344\247\345\244\001\002\000\044" + + "\011\ufee2\013\ufee2\016\ufee2\017\ufee2\024\ufee2\155\ufee2\255" + + "\ufee2\334\ufee2\335\ufee2\336\ufee2\337\ufee2\340\ufee2\341\ufee2" + + "\342\ufee2\343\ufee2\344\ufee2\345\ufee2\001\002\000\044\011" + + "\ufee4\013\ufee4\016\ufee4\017\ufee4\024\ufee4\155\ufee4\255\ufee4" + + "\334\ufee4\335\ufee4\336\ufee4\337\ufee4\340\ufee4\341\ufee4\342" + + "\ufee4\343\ufee4\344\ufee4\345\ufee4\001\002\000\044\011\240" + + "\013\ufedf\016\ufedf\017\ufedf\024\ufedf\155\ufedf\255\ufedf\334" + + "\241\335\233\336\235\337\242\340\236\341\237\342\245" + + "\343\243\344\247\345\244\001\002\000\044\011\ufee5\013" + + "\ufee5\016\ufee5\017\ufee5\024\ufee5\155\ufee5\255\ufee5\334\ufee5" + + "\335\ufee5\336\235\337\242\340\236\341\ufee5\342\ufee5\343" + + "\ufee5\344\ufee5\345\ufee5\001\002\000\020\015\uffa2\145\uffa2" + "\164\uffa2\171\uffa2\215\uffa2\262\uffa2\270\uffa2\001\002\000" + - "\036\011\241\013\267\155\234\255\246\334\240\335\233" + - "\336\235\337\242\340\236\341\237\342\244\343\243\344" + - "\247\345\245\001\002\000\044\011\ufed8\013\ufed8\016\ufed8" + - "\017\ufed8\024\ufed8\155\ufed8\255\ufed8\334\ufed8\335\ufed8\336" + - "\ufed8\337\ufed8\340\ufed8\341\ufed8\342\ufed8\343\ufed8\344\ufed8" + - "\345\ufed8\001\002\000\004\141\223\001\002\000\044\011" + - "\ufed4\013\ufed4\016\ufed4\017\ufed4\024\ufed4\155\ufed4\255\ufed4" + - "\334\ufed4\335\ufed4\336\ufed4\337\ufed4\340\ufed4\341\ufed4\342" + - "\ufed4\343\ufed4\344\ufed4\345\ufed4\001\002\000\044\011\ufee2" + - "\013\ufee2\016\ufee2\017\ufee2\024\ufee2\155\ufee2\255\ufee2\334" + - "\ufee2\335\ufee2\336\ufee2\337\ufee2\340\ufee2\341\ufee2\342\ufee2" + - "\343\ufee2\344\ufee2\345\ufee2\001\002\000\006\015\276\164" + + "\036\011\240\013\267\155\234\255\246\334\241\335\233" + + "\336\235\337\242\340\236\341\237\342\245\343\243\344" + + "\247\345\244\001\002\000\044\011\ufed7\013\ufed7\016\ufed7" + + "\017\ufed7\024\ufed7\155\ufed7\255\ufed7\334\ufed7\335\ufed7\336" + + "\ufed7\337\ufed7\340\ufed7\341\ufed7\342\ufed7\343\ufed7\344\ufed7" + + "\345\ufed7\001\002\000\004\141\223\001\002\000\044\011" + + "\ufed3\013\ufed3\016\ufed3\017\ufed3\024\ufed3\155\ufed3\255\ufed3" + + "\334\ufed3\335\ufed3\336\ufed3\337\ufed3\340\ufed3\341\ufed3\342" + + "\ufed3\343\ufed3\344\ufed3\345\ufed3\001\002\000\044\011\ufee1" + + "\013\ufee1\016\ufee1\017\ufee1\024\ufee1\155\ufee1\255\ufee1\334" + + "\ufee1\335\ufee1\336\ufee1\337\ufee1\340\ufee1\341\ufee1\342\ufee1" + + "\343\ufee1\344\ufee1\345\ufee1\001\002\000\006\015\276\164" + "\275\001\002\000\004\015\310\001\002\000\004\141\301" + "\001\002\000\020\015\uff9e\145\uff9e\164\uff9e\171\uff9e\215" + "\uff9e\262\uff9e\270\uff9e\001\002\000\010\015\uffea\164\275" + @@ -352,38 +353,38 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\171\uff9d\215\uff9d\262\uff9d\270\uff9d\001\002\000\020\015" + "\uff8e\145\uff8e\164\uff8e\171\uff8e\215\uff8e\262\uff8e\270\uff8e" + "\001\002\000\014\015\333\212\342\216\313\307\345\316" + - "\353\001\002\000\004\145\u0299\001\002\000\004\022\u0277" + + "\354\001\002\000\004\145\u029a\001\002\000\004\022\u0278" + "\001\002\000\014\015\uff83\212\uff83\216\uff83\307\uff83\316" + "\uff83\001\002\000\014\015\uff7e\212\uff7e\216\uff7e\307\uff7e" + - "\316\uff7e\001\002\000\006\017\u026e\022\u026f\001\002\000" + + "\316\uff7e\001\002\000\006\017\u026f\022\u0270\001\002\000" + "\014\015\uff86\212\uff86\216\uff86\307\uff86\316\uff86\001\002" + - "\000\004\022\u0246\001\002\000\006\017\u023d\022\u023e\001" + + "\000\004\022\u0247\001\002\000\006\017\u023e\022\u023f\001" + "\002\000\014\015\uff8a\212\uff8a\216\uff8a\307\uff8a\316\uff8a" + - "\001\002\000\006\206\u01cb\313\u01cd\001\002\000\014\015" + + "\001\002\000\006\206\u01cc\313\u01ce\001\002\000\014\015" + "\uff7f\212\uff7f\216\uff7f\307\uff7f\316\uff7f\001\002\000\014" + "\015\uff87\212\uff87\216\uff87\307\uff87\316\uff87\001\002\000" + "\014\015\uff88\212\uff88\216\uff88\307\uff88\316\uff88\001\002" + "\000\014\015\uff80\212\uff80\216\uff80\307\uff80\316\uff80\001" + - "\002\000\006\017\u01b9\022\u01ba\001\002\000\004\015\u01b8" + + "\002\000\006\017\u01ba\022\u01bb\001\002\000\004\015\u01b9" + "\001\002\000\020\015\uff8f\145\uff8f\164\uff8f\171\uff8f\215" + - "\uff8f\262\uff8f\270\uff8f\001\002\000\006\017\u01af\022\u01b0" + + "\uff8f\262\uff8f\270\uff8f\001\002\000\006\017\u01b0\022\u01b1" + "\001\002\000\014\015\uff7d\212\uff7d\216\uff7d\307\uff7d\316" + - "\uff7d\001\002\000\006\017\u01a6\022\u01a7\001\002\000\004" + - "\022\u01a0\001\002\000\006\017\u019a\022\u019b\001\002\000" + - "\014\015\uff8c\212\342\216\313\307\345\316\353\001\002" + - "\000\004\145\u0195\001\002\000\014\015\uff81\212\uff81\216" + + "\uff7d\001\002\000\006\017\u01a7\022\u01a8\001\002\000\004" + + "\022\u01a1\001\002\000\006\017\u019b\022\u019c\001\002\000" + + "\014\015\uff8c\212\342\216\313\307\345\316\354\001\002" + + "\000\004\145\u0196\001\002\000\014\015\uff81\212\uff81\216" + "\uff81\307\uff81\316\uff81\001\002\000\014\015\uff84\212\uff84" + - "\216\uff84\307\uff84\316\uff84\001\002\000\004\141\u0189\001" + + "\216\uff84\307\uff84\316\uff84\001\002\000\004\141\u018a\001" + "\002\000\014\015\uff89\212\uff89\216\uff89\307\uff89\316\uff89" + "\001\002\000\014\015\uff85\212\uff85\216\uff85\307\uff85\316" + - "\uff85\001\002\000\006\017\u0180\022\u0181\001\002\000\004" + - "\022\u017a\001\002\000\006\017\365\022\366\001\002\000" + - "\004\020\355\001\002\000\014\015\uff82\212\uff82\216\uff82" + - "\307\uff82\316\uff82\001\002\000\004\115\356\001\002\000" + + "\uff85\001\002\000\006\017\u0181\022\u0182\001\002\000\004" + + "\022\u017b\001\002\000\006\017\365\022\366\001\002\000" + + "\014\015\uff82\212\uff82\216\uff82\307\uff82\316\uff82\001\002" + + "\000\004\020\355\001\002\000\004\115\356\001\002\000" + "\004\221\357\001\002\000\004\141\360\001\002\000\010" + - "\206\uff0e\230\361\313\uff0e\001\002\000\004\036\362\001" + + "\206\uff0d\230\361\313\uff0d\001\002\000\004\036\362\001" + "\002\000\004\011\363\001\002\000\004\004\364\001\002" + - "\000\006\206\uff0d\313\uff0d\001\002\000\014\015\uff53\212" + + "\000\006\206\uff0c\313\uff0c\001\002\000\014\015\uff53\212" + "\uff53\216\uff53\307\uff53\316\uff53\001\002\000\004\124\367" + "\001\002\000\004\012\370\001\002\000\006\013\373\034" + "\371\001\002\000\004\022\377\001\002\000\004\013\375" + @@ -393,380 +394,381 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\uff55\001\002\000\022\065\u0112\066\u0106\067\u0105\070\u0109" + "\125\u0111\126\u010f\127\u0102\230\u0107\001\002\000\010\013" + "\uff48\016\uff48\210\uff48\001\002\000\012\036\u011e\037\u0121" + - "\040\u0118\041\u011f\001\002\000\004\012\u0177\001\002\000" + + "\040\u0118\041\u011f\001\002\000\004\012\u0178\001\002\000" + "\012\036\u011e\037\u0121\040\u0118\041\u011f\001\002\000\006" + - "\013\uff4f\016\uff4f\001\002\000\004\012\u0174\001\002\000" + + "\013\uff4f\016\uff4f\001\002\000\004\012\u0175\001\002\000" + "\010\013\uff44\016\uff44\210\uff44\001\002\000\016\004\222" + - "\005\224\012\226\141\223\251\231\335\221\001\002\000" + + "\005\225\012\226\141\223\251\231\335\221\001\002\000" + "\012\036\u011e\037\u0121\040\u0118\041\u011f\001\002\000\004" + - "\012\u0169\001\002\000\010\013\uff47\016\uff47\210\uff47\001" + + "\012\u016a\001\002\000\010\013\uff47\016\uff47\210\uff47\001" + "\002\000\012\036\u011e\037\u0121\040\u0118\041\u011f\001\002" + "\000\012\036\u011e\037\u0121\040\u0118\041\u011f\001\002\000" + "\006\013\uff4b\016\uff4b\001\002\000\010\013\uff46\016\uff46" + - "\210\uff46\001\002\000\004\012\u0164\001\002\000\010\013" + - "\uff4a\016\uff4a\210\uff4a\001\002\000\004\012\u0163\001\002" + - "\000\004\012\u0162\001\002\000\010\013\uff45\016\uff45\210" + + "\210\uff46\001\002\000\004\012\u0165\001\002\000\010\013" + + "\uff4a\016\uff4a\210\uff4a\001\002\000\004\012\u0164\001\002" + + "\000\004\012\u0163\001\002\000\010\013\uff45\016\uff45\210" + "\uff45\001\002\000\010\013\uff49\016\uff49\210\uff49\001\002" + "\000\012\036\u011e\037\u0121\040\u0118\041\u011f\001\002\000" + "\006\013\uff34\016\uff34\001\002\000\006\013\uff31\016\uff31" + - "\001\002\000\004\022\u0161\001\002\000\006\013\uff35\016" + - "\uff35\001\002\000\004\013\u0160\001\002\000\006\013\uff37" + - "\016\u015e\001\002\000\010\130\u0137\131\u0136\141\u0138\001" + - "\002\000\006\013\uff32\016\uff32\001\002\000\004\022\u0134" + - "\001\002\000\004\022\u012e\001\002\000\006\013\uff2f\016" + - "\uff2f\001\002\000\004\022\u0124\001\002\000\006\013\uff30" + - "\016\uff30\001\002\000\006\013\uff33\016\uff33\001\002\000" + - "\020\004\222\005\224\012\226\073\u0126\141\223\251\231" + - "\335\221\001\002\000\006\013\uff2d\016\uff2d\001\002\000" + - "\004\012\u0129\001\002\000\006\013\uff2b\016\uff2b\001\002" + - "\000\040\011\241\013\uff2c\016\uff2c\155\234\255\246\334" + - "\240\335\233\336\235\337\242\340\236\341\237\342\244" + - "\343\243\344\247\345\245\001\002\000\016\004\222\005" + - "\224\012\226\141\223\251\231\335\221\001\002\000\036" + - "\011\241\016\u012b\155\234\255\246\334\240\335\233\336" + - "\235\337\242\340\236\341\237\342\244\343\243\344\247" + - "\345\245\001\002\000\016\004\222\005\224\012\226\141" + - "\223\251\231\335\221\001\002\000\036\011\241\013\u012d" + - "\155\234\255\246\334\240\335\233\336\235\337\242\340" + - "\236\341\237\342\244\343\243\344\247\345\245\001\002" + - "\000\006\013\uff2a\016\uff2a\001\002\000\004\141\u012f\001" + - "\002\000\010\013\uff23\016\uff23\021\u0130\001\002\000\010" + - "\134\u0131\135\u0133\136\u0132\001\002\000\006\013\uff22\016" + - "\uff22\001\002\000\006\013\uff20\016\uff20\001\002\000\006" + - "\013\uff21\016\uff21\001\002\000\004\004\u0135\001\002\000" + - "\006\013\uff2e\016\uff2e\001\002\000\004\012\u015c\001\002" + - "\000\004\012\u0158\001\002\000\010\012\u0139\013\uff27\016" + - "\uff27\001\002\000\020\004\222\005\224\012\226\013\u0140" + - "\141\u013c\251\231\335\221\001\002\000\006\013\uff1f\016" + - "\uff1f\001\002\000\020\004\222\005\224\012\226\013\u014d" + - "\141\u014a\251\231\335\221\001\002\000\046\011\ufed5\012" + - "\u0146\013\ufed5\016\ufed5\017\ufed5\021\270\155\ufed5\255\ufed5" + - "\334\ufed5\335\ufed5\336\ufed5\337\ufed5\340\ufed5\341\ufed5\342" + - "\ufed5\343\ufed5\344\ufed5\345\ufed5\001\002\000\042\011\ufee8" + - "\013\ufeeb\016\ufeeb\017\ufeeb\155\ufee8\255\ufee8\334\ufee8\335" + - "\ufee8\336\ufee8\337\ufee8\340\ufee8\341\ufee8\342\ufee8\343\ufee8" + - "\344\ufee8\345\ufee8\001\002\000\006\013\u0144\016\u0143\001" + - "\002\000\034\011\241\155\234\255\246\334\240\335\233" + - "\336\235\337\242\340\236\341\237\342\244\343\243\344" + - "\247\345\245\001\002\000\006\013\uff28\016\uff28\001\002" + - "\000\042\011\ufee9\013\ufeec\016\ufeec\017\ufeec\155\ufee9\255" + - "\ufee9\334\ufee9\335\ufee9\336\ufee9\337\ufee9\340\ufee9\341\ufee9" + - "\342\ufee9\343\ufee9\344\ufee9\345\ufee9\001\002\000\010\013" + - "\ufeed\016\ufeed\017\ufeed\001\002\000\016\004\222\005\224" + - "\012\226\141\u013c\251\231\335\221\001\002\000\006\013" + - "\uff29\016\uff29\001\002\000\006\013\uff1e\016\uff1e\001\002" + - "\000\020\004\ufed1\005\ufed1\012\ufed1\013\ufed1\141\ufed1\251" + - "\ufed1\335\ufed1\001\002\000\016\004\222\005\224\012\226" + - "\141\u014a\251\231\335\221\001\002\000\004\013\u0155\001" + - "\002\000\006\013\ufed0\016\u0153\001\002\000\044\011\ufed5" + - "\012\u0151\013\ufed5\016\ufed5\021\270\155\ufed5\255\ufed5\334" + - "\ufed5\335\ufed5\336\ufed5\337\ufed5\340\ufed5\341\ufed5\342\ufed5" + - "\343\ufed5\344\ufed5\345\ufed5\001\002\000\040\011\ufee8\013" + - "\ufecc\016\ufecc\155\ufee8\255\ufee8\334\ufee8\335\ufee8\336\ufee8" + + "\001\002\000\004\022\u0162\001\002\000\006\013\uff35\016" + + "\uff35\001\002\000\004\013\u0161\001\002\000\006\013\uff37" + + "\016\u015f\001\002\000\010\130\u0138\131\u0137\141\u0139\001" + + "\002\000\006\013\uff32\016\uff32\001\002\000\004\022\u0135" + + "\001\002\000\004\022\u012f\001\002\000\006\013\uff2f\016" + + "\uff2f\001\002\000\004\022\uff2c\001\002\000\006\013\uff30" + + "\016\uff30\001\002\000\004\022\u0125\001\002\000\006\013" + + "\uff33\016\uff33\001\002\000\020\004\222\005\225\012\226" + + "\073\u0127\141\223\251\231\335\221\001\002\000\006\013" + + "\uff2d\016\uff2d\001\002\000\004\012\u012a\001\002\000\006" + + "\013\uff2a\016\uff2a\001\002\000\040\011\240\013\uff2b\016" + + "\uff2b\155\234\255\246\334\241\335\233\336\235\337\242" + + "\340\236\341\237\342\245\343\243\344\247\345\244\001" + + "\002\000\016\004\222\005\225\012\226\141\223\251\231" + + "\335\221\001\002\000\036\011\240\016\u012c\155\234\255" + + "\246\334\241\335\233\336\235\337\242\340\236\341\237" + + "\342\245\343\243\344\247\345\244\001\002\000\016\004" + + "\222\005\225\012\226\141\223\251\231\335\221\001\002" + + "\000\036\011\240\013\u012e\155\234\255\246\334\241\335" + + "\233\336\235\337\242\340\236\341\237\342\245\343\243" + + "\344\247\345\244\001\002\000\006\013\uff29\016\uff29\001" + + "\002\000\004\141\u0130\001\002\000\010\013\uff22\016\uff22" + + "\021\u0131\001\002\000\010\134\u0132\135\u0134\136\u0133\001" + + "\002\000\006\013\uff21\016\uff21\001\002\000\006\013\uff1f" + + "\016\uff1f\001\002\000\006\013\uff20\016\uff20\001\002\000" + + "\004\004\u0136\001\002\000\006\013\uff2e\016\uff2e\001\002" + + "\000\004\012\u015d\001\002\000\004\012\u0159\001\002\000" + + "\010\012\u013a\013\uff26\016\uff26\001\002\000\020\004\222" + + "\005\225\012\226\013\u0141\141\u013d\251\231\335\221\001" + + "\002\000\006\013\uff1e\016\uff1e\001\002\000\020\004\222" + + "\005\225\012\226\013\u014f\141\u0149\251\231\335\221\001" + + "\002\000\046\011\ufed4\012\u0147\013\ufed4\016\ufed4\017\ufed4" + + "\021\270\155\ufed4\255\ufed4\334\ufed4\335\ufed4\336\ufed4\337" + + "\ufed4\340\ufed4\341\ufed4\342\ufed4\343\ufed4\344\ufed4\345\ufed4" + + "\001\002\000\042\011\ufee7\013\ufeea\016\ufeea\017\ufeea\155" + + "\ufee7\255\ufee7\334\ufee7\335\ufee7\336\ufee7\337\ufee7\340\ufee7" + + "\341\ufee7\342\ufee7\343\ufee7\344\ufee7\345\ufee7\001\002\000" + + "\006\013\u0145\016\u0144\001\002\000\034\011\240\155\234" + + "\255\246\334\241\335\233\336\235\337\242\340\236\341" + + "\237\342\245\343\243\344\247\345\244\001\002\000\006" + + "\013\uff27\016\uff27\001\002\000\042\011\ufee8\013\ufeeb\016" + + "\ufeeb\017\ufeeb\155\ufee8\255\ufee8\334\ufee8\335\ufee8\336\ufee8" + "\337\ufee8\340\ufee8\341\ufee8\342\ufee8\343\ufee8\344\ufee8\345" + - "\ufee8\001\002\000\004\013\u0150\001\002\000\010\013\ufed3" + - "\016\ufed3\017\ufed3\001\002\000\040\011\ufee9\013\ufecd\016" + - "\ufecd\155\ufee9\255\ufee9\334\ufee9\335\ufee9\336\ufee9\337\ufee9" + - "\340\ufee9\341\ufee9\342\ufee9\343\ufee9\344\ufee9\345\ufee9\001" + - "\002\000\006\013\ufecb\016\ufecb\001\002\000\010\013\ufed2" + - "\016\ufed2\017\ufed2\001\002\000\020\004\ufed1\005\ufed1\012" + - "\ufed1\013\ufec8\141\ufed1\251\ufed1\335\ufed1\001\002\000\016" + - "\004\222\005\224\012\226\141\u014a\251\231\335\221\001" + - "\002\000\016\004\ufece\005\ufece\012\ufece\141\ufece\251\ufece" + - "\335\ufece\001\002\000\004\013\ufecf\001\002\000\006\013" + - "\ufeca\016\ufeca\001\002\000\004\013\u0157\001\002\000\006" + - "\013\ufec9\016\ufec9\001\002\000\016\004\222\005\224\012" + - "\226\141\223\251\231\335\221\001\002\000\036\011\241" + - "\013\ufeea\155\234\255\246\334\240\335\233\336\235\337" + - "\242\340\236\341\237\342\244\343\243\344\247\345\245" + - "\001\002\000\004\013\u015b\001\002\000\006\013\uff26\016" + - "\uff26\001\002\000\004\013\u015d\001\002\000\006\013\uff25" + - "\016\uff25\001\002\000\012\036\u011e\037\u0121\040\u0118\041" + - "\u011f\001\002\000\004\013\uff36\001\002\000\010\013\uff3b" + - "\016\uff3b\210\uff3b\001\002\000\010\130\uff24\131\uff24\141" + - "\uff24\001\002\000\012\036\uff42\037\uff42\040\uff42\041\uff42" + - "\001\002\000\012\036\uff3c\037\uff3c\040\uff3c\041\uff3c\001" + - "\002\000\012\036\uff3a\037\uff3a\040\uff3a\041\uff3a\001\002" + - "\000\004\013\u0166\001\002\000\010\013\uff39\016\uff39\210" + - "\uff39\001\002\000\004\013\u0168\001\002\000\010\013\uff3f" + - "\016\uff3f\210\uff3f\001\002\000\012\036\uff3e\037\uff3e\040" + - "\uff3e\041\uff3e\001\002\000\004\013\u016b\001\002\000\010" + - "\013\uff43\016\uff43\210\uff43\001\002\000\036\011\241\024" + - "\u016d\155\234\255\246\334\240\335\233\336\235\337\242" + - "\340\236\341\237\342\244\343\243\344\247\345\245\001" + - "\002\000\020\065\u0112\066\u0106\067\u0105\070\u0109\125\u0111" + - "\126\u010f\127\u0102\001\002\000\004\210\u016f\001\002\000" + - "\004\064\u0170\001\002\000\004\012\u0171\001\002\000\004" + - "\004\u0172\001\002\000\004\013\u0173\001\002\000\006\013" + - "\uff4c\016\uff4c\001\002\000\012\036\uff40\037\uff40\040\uff40" + - "\041\uff40\001\002\000\004\013\u0176\001\002\000\010\013" + - "\uff41\016\uff41\210\uff41\001\002\000\012\036\uff38\037\uff38" + - "\040\uff38\041\uff38\001\002\000\004\013\u0179\001\002\000" + - "\010\013\uff3d\016\uff3d\210\uff3d\001\002\000\004\113\u017b" + - "\001\002\000\004\012\u017c\001\002\000\004\034\371\001" + - "\002\000\004\013\u017e\001\002\000\004\017\u017f\001\002" + - "\000\014\015\uff61\212\uff61\216\uff61\307\uff61\316\uff61\001" + - "\002\000\014\015\uff57\212\uff57\216\uff57\307\uff57\316\uff57" + - "\001\002\000\004\123\u0182\001\002\000\004\012\u0183\001" + - "\002\000\006\013\u0185\034\371\001\002\000\004\013\u0187" + - "\001\002\000\004\017\u0186\001\002\000\014\015\uff58\212" + - "\uff58\216\uff58\307\uff58\316\uff58\001\002\000\004\017\u0188" + - "\001\002\000\014\015\uff59\212\uff59\216\uff59\307\uff59\316" + - "\uff59\001\002\000\004\020\u018a\001\002\000\026\104\u018d" + - "\107\u018f\110\u018c\111\u018e\112\u0192\113\u0194\114\u0190\122" + - "\u0191\123\u018b\124\u0193\001\002\000\006\017\uff56\022\uff56" + - "\001\002\000\006\017\uff6a\022\uff6a\001\002\000\006\017" + - "\uff75\022\uff75\001\002\000\004\022\uff66\001\002\000\006" + - "\017\uff6e\022\uff6e\001\002\000\004\022\uff5e\001\002\000" + - "\006\017\uff5a\022\uff5a\001\002\000\004\022\uff62\001\002" + - "\000\006\017\uff52\022\uff52\001\002\000\004\022\uff60\001" + - "\002\000\004\141\u0196\001\002\000\004\020\u0197\001\002" + - "\000\004\106\u0198\001\002\000\006\017\uff79\022\uff79\001" + - "\002\000\004\015\uff8b\001\002\000\014\015\uff74\212\uff74" + - "\216\uff74\307\uff74\316\uff74\001\002\000\004\105\u019c\001" + - "\002\000\004\012\u019d\001\002\000\004\013\u019e\001\002" + - "\000\004\017\u019f\001\002\000\014\015\uff73\212\uff73\216" + - "\uff73\307\uff73\316\uff73\001\002\000\004\114\u01a1\001\002" + - "\000\004\012\u01a2\001\002\000\004\034\371\001\002\000" + - "\004\013\u01a4\001\002\000\004\017\u01a5\001\002\000\014" + - "\015\uff5f\212\uff5f\216\uff5f\307\uff5f\316\uff5f\001\002\000" + - "\014\015\uff71\212\uff71\216\uff71\307\uff71\316\uff71\001\002" + - "\000\004\107\u01a8\001\002\000\004\012\u01a9\001\002\000" + - "\006\013\u01ab\034\371\001\002\000\004\013\u01ad\001\002" + - "\000\004\017\u01ac\001\002\000\014\015\uff70\212\uff70\216" + - "\uff70\307\uff70\316\uff70\001\002\000\004\017\u01ae\001\002" + - "\000\014\015\uff6f\212\uff6f\216\uff6f\307\uff6f\316\uff6f\001" + - "\002\000\014\015\uff5b\212\uff5b\216\uff5b\307\uff5b\316\uff5b" + - "\001\002\000\004\122\u01b1\001\002\000\004\012\u01b2\001" + - "\002\000\006\013\u01b4\034\371\001\002\000\004\013\u01b6" + - "\001\002\000\004\017\u01b5\001\002\000\014\015\uff5c\212" + - "\uff5c\216\uff5c\307\uff5c\316\uff5c\001\002\000\004\017\u01b7" + - "\001\002\000\014\015\uff5d\212\uff5d\216\uff5d\307\uff5d\316" + - "\uff5d\001\002\000\020\015\uff90\145\uff90\164\uff90\171\uff90" + - "\215\uff90\262\uff90\270\uff90\001\002\000\014\015\uff78\212" + - "\uff78\216\uff78\307\uff78\316\uff78\001\002\000\004\104\u01bb" + - "\001\002\000\004\012\u01bc\001\002\000\006\013\u01bf\033" + - "\u01be\001\002\000\004\013\u01c9\001\002\000\004\022\u01c1" + - "\001\002\000\004\017\u01c0\001\002\000\014\015\uff77\212" + - "\uff77\216\uff77\307\uff77\316\uff77\001\002\000\024\012\u01c3" + - "\065\u0112\066\u0106\067\u0105\070\u0109\125\u0111\126\u010f\127" + - "\u0102\230\u0107\001\002\000\004\013\uff50\001\002\000\022" + - "\065\u0112\066\u0106\067\u0105\070\u0109\125\u0111\126\u010f\127" + - "\u0102\230\u0107\001\002\000\006\013\uff4e\016\u01c7\001\002" + - "\000\004\013\u01c6\001\002\000\004\013\uff51\001\002\000" + - "\022\065\u0112\066\u0106\067\u0105\070\u0109\125\u0111\126\u010f" + - "\127\u0102\230\u0107\001\002\000\004\013\uff4d\001\002\000" + - "\004\017\u01ca\001\002\000\014\015\uff76\212\uff76\216\uff76" + - "\307\uff76\316\uff76\001\002\000\004\145\u0239\001\002\000" + - "\004\014\u0215\001\002\000\004\141\u0210\001\002\000\004" + - "\014\u01f1\001\002\000\004\313\u01d0\001\002\000\004\141" + - "\u01d1\001\002\000\006\014\u01d3\017\u01d2\001\002\000\014" + - "\015\uff11\212\uff11\216\uff11\307\uff11\316\uff11\001\002\000" + - "\004\164\u01d5\001\002\000\004\017\u01ef\001\002\000\012" + - "\007\u01de\137\u01db\140\u01dc\141\u01dd\001\002\000\004\015" + - "\u01da\001\002\000\004\017\ufef2\001\002\000\004\017\ufef3" + - "\001\002\000\004\017\ufef4\001\002\000\014\015\uff0f\212" + - "\uff0f\216\uff0f\307\uff0f\316\uff0f\001\002\000\004\020\u01eb" + - "\001\002\000\004\020\u01e7\001\002\000\004\020\u01e3\001" + - "\002\000\004\020\u01df\001\002\000\004\076\u01e0\001\002" + - "\000\004\022\u01e1\001\002\000\004\006\u01e2\001\002\000" + - "\004\017\ufeef\001\002\000\004\076\u01e4\001\002\000\004" + - "\022\u01e5\001\002\000\004\006\u01e6\001\002\000\004\017" + - "\ufeee\001\002\000\004\076\u01e8\001\002\000\004\022\u01e9" + - "\001\002\000\004\010\u01ea\001\002\000\004\017\ufef0\001" + - "\002\000\004\076\u01ec\001\002\000\004\022\u01ed\001\002" + - "\000\004\006\u01ee\001\002\000\004\017\ufef1\001\002\000" + - "\010\014\ufef6\015\ufef6\164\u01d5\001\002\000\006\014\ufef5" + - "\015\ufef5\001\002\000\006\015\u01f3\221\u01f4\001\002\000" + - "\004\015\u020f\001\002\000\004\313\uff0c\001\002\000\004" + - "\045\u01f5\001\002\000\004\017\u01f6\001\002\000\004\313" + - "\u01f7\001\002\000\010\046\u01f9\145\u01fc\160\u01fd\001\002" + - "\000\004\015\uff05\001\002\000\004\017\u020e\001\002\000" + - "\004\313\u020a\001\002\000\004\141\u0203\001\002\000\004" + - "\022\u01fe\001\002\000\004\141\ufeff\001\002\000\004\141" + - "\u01ff\001\002\000\004\012\u0146\001\002\000\004\017\u0201" + - "\001\002\000\004\313\uff01\001\002\000\006\021\u0208\023" + - "\uff00\001\002\000\012\013\uff19\016\uff19\021\uff19\023\uff19" + - "\001\002\000\004\023\u0205\001\002\000\016\004\222\005" + - "\224\012\226\141\u013c\251\231\335\221\001\002\000\004" + - "\017\u0207\001\002\000\004\313\uff02\001\002\000\004\141" + - "\u0209\001\002\000\012\013\uff18\016\uff18\021\uff18\023\uff18" + - "\001\002\000\010\046\u020c\145\u01fc\160\u01fd\001\002\000" + - "\004\015\uff03\001\002\000\004\017\u020d\001\002\000\004" + - "\015\uff04\001\002\000\004\015\uff06\001\002\000\004\313" + - "\uff0b\001\002\000\006\017\u0211\164\u01d5\001\002\000\014" + - "\015\uff12\212\uff12\216\uff12\307\uff12\316\uff12\001\002\000" + - "\004\014\u0213\001\002\000\004\015\u0214\001\002\000\014" + - "\015\uff10\212\uff10\216\uff10\307\uff10\316\uff10\001\002\000" + - "\010\015\u0219\221\u021b\241\u0217\001\002\000\004\221\u021b" + - "\001\002\000\004\071\u0230\001\002\000\004\241\u0217\001" + - "\002\000\004\313\uff0a\001\002\000\004\015\u022e\001\002" + - "\000\004\045\u021c\001\002\000\004\017\u021d\001\002\000" + - "\004\313\u021e\001\002\000\006\046\u022c\160\u01fd\001\002" + - "\000\004\313\u0221\001\002\000\006\015\ufefa\241\ufefa\001" + - "\002\000\006\046\u0223\160\u01fd\001\002\000\006\015\ufef8" + - "\241\ufef8\001\002\000\004\017\u022b\001\002\000\004\141" + - "\u0203\001\002\000\006\021\u0208\023\u0226\001\002\000\004" + - "\071\u0227\001\002\000\004\021\u0228\001\002\000\004\141" + - "\u0229\001\002\000\004\017\u022a\001\002\000\004\313\ufef7" + - "\001\002\000\006\015\ufef9\241\ufef9\001\002\000\004\017" + - "\u022d\001\002\000\006\015\ufefb\241\ufefb\001\002\000\004" + - "\313\uff09\001\002\000\004\015\ufefd\001\002\000\004\020" + - "\u0231\001\002\000\004\141\u0232\001\002\000\004\022\u0233" + - "\001\002\000\004\040\u0234\001\002\000\004\156\u0235\001" + - "\002\000\004\141\u0236\001\002\000\004\017\u0237\001\002" + - "\000\006\015\ufefc\221\ufefc\001\002\000\004\015\ufefe\001" + - "\002\000\004\020\u023a\001\002\000\006\117\u023b\120\u023c" + - "\001\002\000\004\014\uff07\001\002\000\004\014\uff08\001" + - "\002\000\014\015\uff6d\212\uff6d\216\uff6d\307\uff6d\316\uff6d" + - "\001\002\000\004\110\u023f\001\002\000\004\012\u0240\001" + - "\002\000\006\013\u0242\034\371\001\002\000\004\013\u0244" + - "\001\002\000\004\017\u0243\001\002\000\014\015\uff6c\212" + - "\uff6c\216\uff6c\307\uff6c\316\uff6c\001\002\000\004\017\u0245" + - "\001\002\000\014\015\uff6b\212\uff6b\216\uff6b\307\uff6b\316" + - "\uff6b\001\002\000\004\111\u0247\001\002\000\004\012\u0248" + - "\001\002\000\006\034\371\035\u0249\001\002\000\004\022" + - "\u0256\001\002\000\004\016\u0252\001\002\000\006\013\u024d" + - "\016\u024c\001\002\000\004\034\371\001\002\000\004\017" + - "\u024e\001\002\000\014\015\uff67\212\uff67\216\uff67\307\uff67" + - "\316\uff67\001\002\000\004\013\u0250\001\002\000\004\017" + - "\u0251\001\002\000\014\015\uff69\212\uff69\216\uff69\307\uff69" + - "\316\uff69\001\002\000\004\035\u0249\001\002\000\004\013" + - "\u0254\001\002\000\004\017\u0255\001\002\000\014\015\uff68" + - "\212\uff68\216\uff68\307\uff68\316\uff68\001\002\000\004\072" + - "\u0257\001\002\000\004\012\u0258\001\002\000\006\042\u0259" + - "\043\u025b\001\002\000\004\022\u0266\001\002\000\004\016" + - "\u0263\001\002\000\004\022\uff1a\001\002\000\004\016\u0260" + - "\001\002\000\004\022\u025e\001\002\000\004\141\u0203\001" + - "\002\000\010\013\uff1b\016\uff1b\021\u0208\001\002\000\004" + - "\042\u0259\001\002\000\004\013\u0262\001\002\000\006\013" + - "\uff1d\016\uff1d\001\002\000\004\043\u025b\001\002\000\004" + - "\013\u0265\001\002\000\006\013\uff1c\016\uff1c\001\002\000" + - "\004\073\u0267\001\002\000\004\012\u0269\001\002\000\006" + - "\013\uff17\016\uff17\001\002\000\016\004\222\005\224\012" + - "\226\141\223\251\231\335\221\001\002\000\036\011\241" + - "\016\u026b\155\234\255\246\334\240\335\233\336\235\337" + - "\242\340\236\341\237\342\244\343\243\344\247\345\245" + - "\001\002\000\016\004\222\005\224\012\226\141\223\251" + - "\231\335\221\001\002\000\036\011\241\013\u026d\155\234" + - "\255\246\334\240\335\233\336\235\337\242\340\236\341" + - "\237\342\244\343\243\344\247\345\245\001\002\000\006" + - "\013\uff16\016\uff16\001\002\000\014\015\uff7c\212\uff7c\216" + - "\uff7c\307\uff7c\316\uff7c\001\002\000\004\106\u0270\001\002" + - "\000\004\012\u0271\001\002\000\006\013\u0273\034\371\001" + - "\002\000\004\013\u0275\001\002\000\004\017\u0274\001\002" + - "\000\014\015\uff7b\212\uff7b\216\uff7b\307\uff7b\316\uff7b\001" + - "\002\000\004\017\u0276\001\002\000\014\015\uff7a\212\uff7a" + - "\216\uff7a\307\uff7a\316\uff7a\001\002\000\004\112\u0278\001" + - "\002\000\004\012\u0279\001\002\000\006\034\371\035\u027a" + - "\001\002\000\004\022\u0287\001\002\000\006\013\u0282\016" + - "\u0281\001\002\000\004\016\u027d\001\002\000\004\035\u027a" + - "\001\002\000\004\013\u027f\001\002\000\004\017\u0280\001" + - "\002\000\014\015\uff64\212\uff64\216\uff64\307\uff64\316\uff64" + - "\001\002\000\004\034\371\001\002\000\004\017\u0283\001" + - "\002\000\014\015\uff65\212\uff65\216\uff65\307\uff65\316\uff65" + - "\001\002\000\004\013\u0285\001\002\000\004\017\u0286\001" + - "\002\000\014\015\uff63\212\uff63\216\uff63\307\uff63\316\uff63" + - "\001\002\000\004\072\u0288\001\002\000\004\012\u0289\001" + - "\002\000\006\042\u028a\043\u025b\001\002\000\004\022\u0293" + - "\001\002\000\004\016\u0290\001\002\000\004\016\u028d\001" + - "\002\000\004\043\u025b\001\002\000\004\013\u028f\001\002" + - "\000\006\013\uff14\016\uff14\001\002\000\004\042\u028a\001" + - "\002\000\004\013\u0292\001\002\000\006\013\uff15\016\uff15" + - "\001\002\000\004\141\u0294\001\002\000\004\021\u0295\001" + - "\002\000\004\044\u0296\001\002\000\004\012\u0297\001\002" + - "\000\004\013\u0298\001\002\000\006\013\uff13\016\uff13\001" + - "\002\000\004\141\u029a\001\002\000\004\020\u029b\001\002" + - "\000\004\105\u029c\001\002\000\006\017\uff72\022\uff72\001" + - "\002\000\004\020\u029e\001\002\000\004\102\u029f\001\002" + - "\000\004\014\uff9c\001\002\000\024\015\uffaf\145\uffaf\164" + - "\uffaf\166\uffaf\171\uffaf\215\uffaf\232\uffaf\262\uffaf\270\uffaf" + - "\001\002\000\024\015\uffae\145\uffae\164\uffae\166\uffae\171" + - "\uffae\215\uffae\232\uffae\262\uffae\270\uffae\001\002\000\010" + - "\015\u02a5\164\275\301\u02a4\001\002\000\004\015\u02ac\001" + - "\002\000\004\020\u02a9\001\002\000\020\015\uff9b\145\uff9b" + - "\164\uff9b\171\uff9b\215\uff9b\262\uff9b\270\uff9b\001\002\000" + - "\010\015\uff98\164\275\301\u02a4\001\002\000\010\015\uff96" + - "\164\uff96\301\uff96\001\002\000\004\015\uff97\001\002\000" + - "\010\074\306\075\305\141\303\001\002\000\004\017\u02ab" + - "\001\002\000\010\015\uff95\164\uff95\301\uff95\001\002\000" + - "\020\015\uff9a\145\uff9a\164\uff9a\171\uff9a\215\uff9a\262\uff9a" + - "\270\uff9a\001\002\000\004\020\u02ae\001\002\000\004\103" + - "\u02af\001\002\000\004\014\uff99\001\002\000\020\015\uffa6" + - "\145\uffa6\164\uffa6\171\uffa6\215\uffa6\262\uffa6\270\uffa6\001" + - "\002\000\016\004\222\005\224\012\226\141\223\251\231" + - "\335\221\001\002\000\036\011\241\017\u02b3\155\234\255" + - "\246\334\240\335\233\336\235\337\242\340\236\341\237" + - "\342\244\343\243\344\247\345\245\001\002\000\020\015" + - "\uffa5\145\uffa5\164\uffa5\171\uffa5\215\uffa5\262\uffa5\270\uffa5" + - "\001\002\000\004\020\u02b5\001\002\000\010\074\306\075" + - "\305\141\303\001\002\000\006\017\uffa4\023\uffa4\001\002" + - "\000\004\141\u02b8\001\002\000\004\020\u02b9\001\002\000" + - "\010\074\306\075\305\141\303\001\002\000\006\017\uffa1" + - "\023\uffa1\001\002\000\004\121\u02bc\001\002\000\004\020" + - "\u02bd\001\002\000\004\116\u02be\001\002\000\006\014\uff8d" + - "\017\uff8d\001\002\000\006\062\u02c1\063\u02c0\001\002\000" + - "\004\165\u02ce\001\002\000\004\165\u02c2\001\002\000\004" + - "\141\u02c3\001\002\000\006\021\u02c4\022\u02c5\001\002\000" + - "\004\141\u02ca\001\002\000\004\141\u02c6\001\002\000\004" + - "\021\u02c7\001\002\000\004\141\u02c8\001\002\000\004\017" + - "\u02c9\001\002\000\014\015\uffc6\164\uffc6\166\uffc6\232\uffc6" + - "\262\uffc6\001\002\000\004\022\u02cb\001\002\000\004\141" + - "\u02cc\001\002\000\004\017\u02cd\001\002\000\014\015\uffc7" + - "\164\uffc7\166\uffc7\232\uffc7\262\uffc7\001\002\000\004\141" + - "\u02cf\001\002\000\006\021\u02d0\022\u02d1\001\002\000\004" + - "\141\u02d6\001\002\000\004\141\u02d2\001\002\000\004\021" + - "\u02d3\001\002\000\004\141\u02d4\001\002\000\004\017\u02d5" + - "\001\002\000\014\015\uffc4\164\uffc4\166\uffc4\232\uffc4\262" + - "\uffc4\001\002\000\004\022\u02d7\001\002\000\004\141\u02d8" + - "\001\002\000\004\017\u02d9\001\002\000\014\015\uffc5\164" + - "\uffc5\166\uffc5\232\uffc5\262\uffc5\001\002\000\006\015\u02dc" + - "\164\275\001\002\000\004\015\u02dd\001\002\000\014\015" + - "\uffec\164\uffec\166\uffec\232\uffec\262\uffec\001\002\000\014" + - "\015\uffed\164\uffed\166\uffed\232\uffed\262\uffed\001\002\000" + - "\004\265\u02e1\001\002\000\014\015\uffc1\164\uffc1\166\uffc1" + - "\232\uffc1\262\uffc1\001\002\000\006\015\u02ed\164\275\001" + - "\002\000\004\262\u02e2\001\002\000\004\041\u02e3\001\002" + - "\000\006\020\u02e5\022\u02e4\001\002\000\004\141\u02ea\001" + - "\002\000\004\055\u02e6\001\002\000\004\022\u02e7\001\002" + - "\000\004\141\u02e8\001\002\000\004\017\u02e9\001\002\000" + - "\006\015\uffbc\164\uffbc\001\002\000\004\017\u02eb\001\002" + - "\000\006\015\uffbb\164\uffbb\001\002\000\004\015\u02ee\001" + - "\002\000\014\015\uffbf\164\uffbf\166\uffbf\232\uffbf\262\uffbf" + - "\001\002\000\014\015\uffbe\164\uffbe\166\uffbe\232\uffbe\262" + - "\uffbe\001\002\000\004\015\u02f0\001\002\000\014\015\uffbd" + - "\164\uffbd\166\uffbd\232\uffbd\262\uffbd\001\002\000\014\015" + - "\uffba\164\uffba\166\uffba\232\uffba\262\uffba\001\002\000\006" + - "\015\u02f5\164\u02f3\001\002\000\004\141\u02f9\001\002\000" + - "\014\015\uffb8\164\uffb8\166\uffb8\232\uffb8\262\uffb8\001\002" + - "\000\014\015\uffb9\164\uffb9\166\uffb9\232\uffb9\262\uffb9\001" + - "\002\000\006\015\u02f8\164\u02f3\001\002\000\014\015\uffb4" + - "\164\uffb4\166\uffb4\232\uffb4\262\uffb4\001\002\000\014\015" + - "\uffb5\164\uffb5\166\uffb5\232\uffb5\262\uffb5\001\002\000\004" + - "\271\u02fa\001\002\000\004\141\u02fb\001\002\000\004\017" + - "\u02fc\001\002\000\006\015\uffb3\164\uffb3\001\002\000\006" + - "\013\uffd7\016\uffd7\001\002\000\004\022\u0315\001\002\000" + - "\004\022\u0313\001\002\000\004\013\u0311\001\002\000\006" + - "\013\uffd8\016\uffd8\001\002\000\006\013\uffd5\016\uffd5\001" + - "\002\000\006\013\uffdb\016\u030f\001\002\000\006\013\uffd6" + - "\016\uffd6\001\002\000\004\022\u030d\001\002\000\004\022" + - "\u030b\001\002\000\006\013\uffd9\016\uffd9\001\002\000\004" + - "\022\u0309\001\002\000\004\004\u030a\001\002\000\006\013" + - "\uffd1\016\uffd1\001\002\000\004\141\u030c\001\002\000\006" + - "\013\uffd4\016\uffd4\001\002\000\004\005\u030e\001\002\000" + - "\006\013\uffd0\016\uffd0\001\002\000\014\025\u0305\026\u0308" + - "\027\u02ff\031\u0306\032\u02fe\001\002\000\004\013\uffda\001" + - "\002\000\004\017\u0312\001\002\000\014\015\uffe1\164\uffe1" + - "\166\uffe1\232\uffe1\262\uffe1\001\002\000\004\005\u0314\001" + - "\002\000\006\013\uffd2\016\uffd2\001\002\000\004\141\u0316" + - "\001\002\000\006\013\uffd3\016\uffd3\001\002\000\004\015" + - "\ufffd\001\002\000\004\013\u0319\001\002\000\004\017\u031a" + - "\001\002\000\014\015\uffdd\164\uffdd\166\uffdd\232\uffdd\262" + - "\uffdd\001\002\000\004\141\u031c\001\002\000\006\305\136" + - "\333\140\001\002\000\004\100\u031e\001\002\000\004\014" + - "\uffeb\001\002\000\004\013\u0320\001\002\000\004\017\u0321" + - "\001\002\000\014\015\uffdf\164\uffdf\166\uffdf\232\uffdf\262" + - "\uffdf\001\002\000\004\002\000\001\002" }); + "\ufee8\001\002\000\010\013\ufeec\016\ufeec\017\ufeec\001\002" + + "\000\016\004\222\005\225\012\226\141\u013d\251\231\335" + + "\221\001\002\000\006\013\uff28\016\uff28\001\002\000\006" + + "\013\uff1d\016\uff1d\001\002\000\020\004\ufed0\005\ufed0\012" + + "\ufed0\013\ufed0\141\ufed0\251\ufed0\335\ufed0\001\002\000\016" + + "\004\222\005\225\012\226\141\u0149\251\231\335\221\001" + + "\002\000\044\011\ufed4\012\u0156\013\ufed4\016\ufed4\021\270" + + "\155\ufed4\255\ufed4\334\ufed4\335\ufed4\336\ufed4\337\ufed4\340" + + "\ufed4\341\ufed4\342\ufed4\343\ufed4\344\ufed4\345\ufed4\001\002" + + "\000\004\013\u0155\001\002\000\006\013\ufecf\016\u0152\001" + + "\002\000\040\011\ufee7\013\ufecb\016\ufecb\155\ufee7\255\ufee7" + + "\334\ufee7\335\ufee7\336\ufee7\337\ufee7\340\ufee7\341\ufee7\342" + + "\ufee7\343\ufee7\344\ufee7\345\ufee7\001\002\000\004\013\u0151" + + "\001\002\000\040\011\ufee8\013\ufecc\016\ufecc\155\ufee8\255" + + "\ufee8\334\ufee8\335\ufee8\336\ufee8\337\ufee8\340\ufee8\341\ufee8" + + "\342\ufee8\343\ufee8\344\ufee8\345\ufee8\001\002\000\010\013" + + "\ufed2\016\ufed2\017\ufed2\001\002\000\006\013\ufeca\016\ufeca" + + "\001\002\000\010\013\ufed1\016\ufed1\017\ufed1\001\002\000" + + "\016\004\ufecd\005\ufecd\012\ufecd\141\ufecd\251\ufecd\335\ufecd" + + "\001\002\000\016\004\222\005\225\012\226\141\u0149\251" + + "\231\335\221\001\002\000\004\013\ufece\001\002\000\006" + + "\013\ufec9\016\ufec9\001\002\000\020\004\ufed0\005\ufed0\012" + + "\ufed0\013\ufec7\141\ufed0\251\ufed0\335\ufed0\001\002\000\004" + + "\013\u0158\001\002\000\006\013\ufec8\016\ufec8\001\002\000" + + "\016\004\222\005\225\012\226\141\223\251\231\335\221" + + "\001\002\000\036\011\240\013\ufee9\155\234\255\246\334" + + "\241\335\233\336\235\337\242\340\236\341\237\342\245" + + "\343\243\344\247\345\244\001\002\000\004\013\u015c\001" + + "\002\000\006\013\uff25\016\uff25\001\002\000\004\013\u015e" + + "\001\002\000\006\013\uff24\016\uff24\001\002\000\012\036" + + "\u011e\037\u0121\040\u0118\041\u011f\001\002\000\004\013\uff36" + + "\001\002\000\010\013\uff3b\016\uff3b\210\uff3b\001\002\000" + + "\010\130\uff23\131\uff23\141\uff23\001\002\000\012\036\uff42" + + "\037\uff42\040\uff42\041\uff42\001\002\000\012\036\uff3c\037" + + "\uff3c\040\uff3c\041\uff3c\001\002\000\012\036\uff3a\037\uff3a" + + "\040\uff3a\041\uff3a\001\002\000\004\013\u0167\001\002\000" + + "\010\013\uff39\016\uff39\210\uff39\001\002\000\004\013\u0169" + + "\001\002\000\010\013\uff3f\016\uff3f\210\uff3f\001\002\000" + + "\012\036\uff3e\037\uff3e\040\uff3e\041\uff3e\001\002\000\004" + + "\013\u016c\001\002\000\010\013\uff43\016\uff43\210\uff43\001" + + "\002\000\036\011\240\024\u016e\155\234\255\246\334\241" + + "\335\233\336\235\337\242\340\236\341\237\342\245\343" + + "\243\344\247\345\244\001\002\000\020\065\u0112\066\u0106" + + "\067\u0105\070\u0109\125\u0111\126\u010f\127\u0102\001\002\000" + + "\004\210\u0170\001\002\000\004\064\u0171\001\002\000\004" + + "\012\u0172\001\002\000\004\004\u0173\001\002\000\004\013" + + "\u0174\001\002\000\006\013\uff4c\016\uff4c\001\002\000\012" + + "\036\uff40\037\uff40\040\uff40\041\uff40\001\002\000\004\013" + + "\u0177\001\002\000\010\013\uff41\016\uff41\210\uff41\001\002" + + "\000\012\036\uff38\037\uff38\040\uff38\041\uff38\001\002\000" + + "\004\013\u017a\001\002\000\010\013\uff3d\016\uff3d\210\uff3d" + + "\001\002\000\004\113\u017c\001\002\000\004\012\u017d\001" + + "\002\000\004\034\371\001\002\000\004\013\u017f\001\002" + + "\000\004\017\u0180\001\002\000\014\015\uff61\212\uff61\216" + + "\uff61\307\uff61\316\uff61\001\002\000\014\015\uff57\212\uff57" + + "\216\uff57\307\uff57\316\uff57\001\002\000\004\123\u0183\001" + + "\002\000\004\012\u0184\001\002\000\006\013\u0186\034\371" + + "\001\002\000\004\013\u0188\001\002\000\004\017\u0187\001" + + "\002\000\014\015\uff58\212\uff58\216\uff58\307\uff58\316\uff58" + + "\001\002\000\004\017\u0189\001\002\000\014\015\uff59\212" + + "\uff59\216\uff59\307\uff59\316\uff59\001\002\000\004\020\u018b" + + "\001\002\000\026\104\u018e\107\u0190\110\u018d\111\u018f\112" + + "\u0193\113\u0195\114\u0191\122\u0192\123\u018c\124\u0194\001\002" + + "\000\006\017\uff56\022\uff56\001\002\000\006\017\uff6a\022" + + "\uff6a\001\002\000\006\017\uff75\022\uff75\001\002\000\004" + + "\022\uff66\001\002\000\006\017\uff6e\022\uff6e\001\002\000" + + "\004\022\uff5e\001\002\000\006\017\uff5a\022\uff5a\001\002" + + "\000\004\022\uff62\001\002\000\006\017\uff52\022\uff52\001" + + "\002\000\004\022\uff60\001\002\000\004\141\u0197\001\002" + + "\000\004\020\u0198\001\002\000\004\106\u0199\001\002\000" + + "\006\017\uff79\022\uff79\001\002\000\004\015\uff8b\001\002" + + "\000\014\015\uff74\212\uff74\216\uff74\307\uff74\316\uff74\001" + + "\002\000\004\105\u019d\001\002\000\004\012\u019e\001\002" + + "\000\004\013\u019f\001\002\000\004\017\u01a0\001\002\000" + + "\014\015\uff73\212\uff73\216\uff73\307\uff73\316\uff73\001\002" + + "\000\004\114\u01a2\001\002\000\004\012\u01a3\001\002\000" + + "\004\034\371\001\002\000\004\013\u01a5\001\002\000\004" + + "\017\u01a6\001\002\000\014\015\uff5f\212\uff5f\216\uff5f\307" + + "\uff5f\316\uff5f\001\002\000\014\015\uff71\212\uff71\216\uff71" + + "\307\uff71\316\uff71\001\002\000\004\107\u01a9\001\002\000" + + "\004\012\u01aa\001\002\000\006\013\u01ac\034\371\001\002" + + "\000\004\013\u01ae\001\002\000\004\017\u01ad\001\002\000" + + "\014\015\uff70\212\uff70\216\uff70\307\uff70\316\uff70\001\002" + + "\000\004\017\u01af\001\002\000\014\015\uff6f\212\uff6f\216" + + "\uff6f\307\uff6f\316\uff6f\001\002\000\014\015\uff5b\212\uff5b" + + "\216\uff5b\307\uff5b\316\uff5b\001\002\000\004\122\u01b2\001" + + "\002\000\004\012\u01b3\001\002\000\006\013\u01b5\034\371" + + "\001\002\000\004\013\u01b7\001\002\000\004\017\u01b6\001" + + "\002\000\014\015\uff5c\212\uff5c\216\uff5c\307\uff5c\316\uff5c" + + "\001\002\000\004\017\u01b8\001\002\000\014\015\uff5d\212" + + "\uff5d\216\uff5d\307\uff5d\316\uff5d\001\002\000\020\015\uff90" + + "\145\uff90\164\uff90\171\uff90\215\uff90\262\uff90\270\uff90\001" + + "\002\000\014\015\uff78\212\uff78\216\uff78\307\uff78\316\uff78" + + "\001\002\000\004\104\u01bc\001\002\000\004\012\u01bd\001" + + "\002\000\006\013\u01c0\033\u01bf\001\002\000\004\013\u01ca" + + "\001\002\000\004\022\u01c2\001\002\000\004\017\u01c1\001" + + "\002\000\014\015\uff77\212\uff77\216\uff77\307\uff77\316\uff77" + + "\001\002\000\024\012\u01c4\065\u0112\066\u0106\067\u0105\070" + + "\u0109\125\u0111\126\u010f\127\u0102\230\u0107\001\002\000\004" + + "\013\uff50\001\002\000\022\065\u0112\066\u0106\067\u0105\070" + + "\u0109\125\u0111\126\u010f\127\u0102\230\u0107\001\002\000\006" + + "\013\uff4e\016\u01c8\001\002\000\004\013\u01c7\001\002\000" + + "\004\013\uff51\001\002\000\022\065\u0112\066\u0106\067\u0105" + + "\070\u0109\125\u0111\126\u010f\127\u0102\230\u0107\001\002\000" + + "\004\013\uff4d\001\002\000\004\017\u01cb\001\002\000\014" + + "\015\uff76\212\uff76\216\uff76\307\uff76\316\uff76\001\002\000" + + "\004\145\u023a\001\002\000\004\014\u0216\001\002\000\004" + + "\141\u0211\001\002\000\004\014\u01f2\001\002\000\004\313" + + "\u01d1\001\002\000\004\141\u01d2\001\002\000\006\014\u01d4" + + "\017\u01d3\001\002\000\014\015\uff10\212\uff10\216\uff10\307" + + "\uff10\316\uff10\001\002\000\004\164\u01d6\001\002\000\004" + + "\017\u01f0\001\002\000\012\007\u01df\137\u01dc\140\u01dd\141" + + "\u01de\001\002\000\004\015\u01db\001\002\000\004\017\ufef2" + + "\001\002\000\004\017\ufef1\001\002\000\004\017\ufef3\001" + + "\002\000\014\015\uff0e\212\uff0e\216\uff0e\307\uff0e\316\uff0e" + + "\001\002\000\004\020\u01ec\001\002\000\004\020\u01e8\001" + + "\002\000\004\020\u01e4\001\002\000\004\020\u01e0\001\002" + + "\000\004\076\u01e1\001\002\000\004\022\u01e2\001\002\000" + + "\004\006\u01e3\001\002\000\004\017\ufeee\001\002\000\004" + + "\076\u01e5\001\002\000\004\022\u01e6\001\002\000\004\006" + + "\u01e7\001\002\000\004\017\ufeed\001\002\000\004\076\u01e9" + + "\001\002\000\004\022\u01ea\001\002\000\004\010\u01eb\001" + + "\002\000\004\017\ufeef\001\002\000\004\076\u01ed\001\002" + + "\000\004\022\u01ee\001\002\000\004\006\u01ef\001\002\000" + + "\004\017\ufef0\001\002\000\010\014\ufef5\015\ufef5\164\u01d6" + + "\001\002\000\006\014\ufef4\015\ufef4\001\002\000\006\015" + + "\u01f4\221\u01f5\001\002\000\004\015\u0210\001\002\000\004" + + "\313\uff0b\001\002\000\004\045\u01f6\001\002\000\004\017" + + "\u01f7\001\002\000\004\313\u01f8\001\002\000\010\046\u01fa" + + "\145\u01fd\160\u01fe\001\002\000\004\015\uff04\001\002\000" + + "\004\017\u020f\001\002\000\004\313\u020b\001\002\000\004" + + "\141\u0204\001\002\000\004\022\u01ff\001\002\000\004\141" + + "\ufefe\001\002\000\004\141\u0200\001\002\000\004\012\u0147" + + "\001\002\000\004\017\u0202\001\002\000\004\313\uff00\001" + + "\002\000\006\021\u0209\023\ufeff\001\002\000\012\013\uff18" + + "\016\uff18\021\uff18\023\uff18\001\002\000\004\023\u0206\001" + + "\002\000\016\004\222\005\225\012\226\141\u013d\251\231" + + "\335\221\001\002\000\004\017\u0208\001\002\000\004\313" + + "\uff01\001\002\000\004\141\u020a\001\002\000\012\013\uff17" + + "\016\uff17\021\uff17\023\uff17\001\002\000\010\046\u020d\145" + + "\u01fd\160\u01fe\001\002\000\004\015\uff02\001\002\000\004" + + "\017\u020e\001\002\000\004\015\uff03\001\002\000\004\015" + + "\uff05\001\002\000\004\313\uff0a\001\002\000\006\017\u0212" + + "\164\u01d6\001\002\000\014\015\uff11\212\uff11\216\uff11\307" + + "\uff11\316\uff11\001\002\000\004\014\u0214\001\002\000\004" + + "\015\u0215\001\002\000\014\015\uff0f\212\uff0f\216\uff0f\307" + + "\uff0f\316\uff0f\001\002\000\010\015\u021a\221\u021b\241\u0217" + + "\001\002\000\004\071\u0232\001\002\000\004\221\u021b\001" + + "\002\000\004\241\u0217\001\002\000\004\313\uff09\001\002" + + "\000\004\045\u021e\001\002\000\004\015\u021d\001\002\000" + + "\004\313\uff08\001\002\000\004\017\u021f\001\002\000\004" + + "\313\u0220\001\002\000\006\046\u022e\160\u01fe\001\002\000" + + "\004\313\u0223\001\002\000\006\015\ufef9\241\ufef9\001\002" + + "\000\006\046\u0225\160\u01fe\001\002\000\006\015\ufef7\241" + + "\ufef7\001\002\000\004\017\u022d\001\002\000\004\141\u0204" + + "\001\002\000\006\021\u0209\023\u0228\001\002\000\004\071" + + "\u0229\001\002\000\004\021\u022a\001\002\000\004\141\u022b" + + "\001\002\000\004\017\u022c\001\002\000\004\313\ufef6\001" + + "\002\000\006\015\ufef8\241\ufef8\001\002\000\004\017\u022f" + + "\001\002\000\006\015\ufefa\241\ufefa\001\002\000\004\015" + + "\ufefc\001\002\000\004\015\ufefd\001\002\000\004\020\u0233" + + "\001\002\000\004\141\u0234\001\002\000\004\022\u0235\001" + + "\002\000\004\040\u0236\001\002\000\004\156\u0237\001\002" + + "\000\004\141\u0238\001\002\000\004\017\u0239\001\002\000" + + "\006\015\ufefb\221\ufefb\001\002\000\004\020\u023b\001\002" + + "\000\006\117\u023c\120\u023d\001\002\000\004\014\uff06\001" + + "\002\000\004\014\uff07\001\002\000\014\015\uff6d\212\uff6d" + + "\216\uff6d\307\uff6d\316\uff6d\001\002\000\004\110\u0240\001" + + "\002\000\004\012\u0241\001\002\000\006\013\u0243\034\371" + + "\001\002\000\004\013\u0245\001\002\000\004\017\u0244\001" + + "\002\000\014\015\uff6c\212\uff6c\216\uff6c\307\uff6c\316\uff6c" + + "\001\002\000\004\017\u0246\001\002\000\014\015\uff6b\212" + + "\uff6b\216\uff6b\307\uff6b\316\uff6b\001\002\000\004\111\u0248" + + "\001\002\000\004\012\u0249\001\002\000\006\034\371\035" + + "\u024a\001\002\000\004\022\u0257\001\002\000\004\016\u0253" + + "\001\002\000\006\013\u024e\016\u024d\001\002\000\004\034" + + "\371\001\002\000\004\017\u024f\001\002\000\014\015\uff67" + + "\212\uff67\216\uff67\307\uff67\316\uff67\001\002\000\004\013" + + "\u0251\001\002\000\004\017\u0252\001\002\000\014\015\uff69" + + "\212\uff69\216\uff69\307\uff69\316\uff69\001\002\000\004\035" + + "\u024a\001\002\000\004\013\u0255\001\002\000\004\017\u0256" + + "\001\002\000\014\015\uff68\212\uff68\216\uff68\307\uff68\316" + + "\uff68\001\002\000\004\072\u0258\001\002\000\004\012\u0259" + + "\001\002\000\006\042\u025a\043\u025d\001\002\000\004\022" + + "\u0267\001\002\000\004\016\u0264\001\002\000\004\022\u0262" + + "\001\002\000\004\022\uff19\001\002\000\004\016\u025f\001" + + "\002\000\004\042\u025a\001\002\000\004\013\u0261\001\002" + + "\000\006\013\uff1c\016\uff1c\001\002\000\004\141\u0204\001" + + "\002\000\010\013\uff1a\016\uff1a\021\u0209\001\002\000\004" + + "\043\u025d\001\002\000\004\013\u0266\001\002\000\006\013" + + "\uff1b\016\uff1b\001\002\000\004\073\u0268\001\002\000\004" + + "\012\u026a\001\002\000\006\013\uff16\016\uff16\001\002\000" + + "\016\004\222\005\225\012\226\141\223\251\231\335\221" + + "\001\002\000\036\011\240\016\u026c\155\234\255\246\334" + + "\241\335\233\336\235\337\242\340\236\341\237\342\245" + + "\343\243\344\247\345\244\001\002\000\016\004\222\005" + + "\225\012\226\141\223\251\231\335\221\001\002\000\036" + + "\011\240\013\u026e\155\234\255\246\334\241\335\233\336" + + "\235\337\242\340\236\341\237\342\245\343\243\344\247" + + "\345\244\001\002\000\006\013\uff15\016\uff15\001\002\000" + + "\014\015\uff7c\212\uff7c\216\uff7c\307\uff7c\316\uff7c\001\002" + + "\000\004\106\u0271\001\002\000\004\012\u0272\001\002\000" + + "\006\013\u0274\034\371\001\002\000\004\013\u0276\001\002" + + "\000\004\017\u0275\001\002\000\014\015\uff7b\212\uff7b\216" + + "\uff7b\307\uff7b\316\uff7b\001\002\000\004\017\u0277\001\002" + + "\000\014\015\uff7a\212\uff7a\216\uff7a\307\uff7a\316\uff7a\001" + + "\002\000\004\112\u0279\001\002\000\004\012\u027a\001\002" + + "\000\006\034\371\035\u027b\001\002\000\004\022\u0288\001" + + "\002\000\006\013\u0283\016\u0282\001\002\000\004\016\u027e" + + "\001\002\000\004\035\u027b\001\002\000\004\013\u0280\001" + + "\002\000\004\017\u0281\001\002\000\014\015\uff64\212\uff64" + + "\216\uff64\307\uff64\316\uff64\001\002\000\004\034\371\001" + + "\002\000\004\017\u0284\001\002\000\014\015\uff65\212\uff65" + + "\216\uff65\307\uff65\316\uff65\001\002\000\004\013\u0286\001" + + "\002\000\004\017\u0287\001\002\000\014\015\uff63\212\uff63" + + "\216\uff63\307\uff63\316\uff63\001\002\000\004\072\u0289\001" + + "\002\000\004\012\u028a\001\002\000\006\042\u028b\043\u025d" + + "\001\002\000\004\022\u0294\001\002\000\004\016\u0291\001" + + "\002\000\004\016\u028e\001\002\000\004\043\u025d\001\002" + + "\000\004\013\u0290\001\002\000\006\013\uff13\016\uff13\001" + + "\002\000\004\042\u028b\001\002\000\004\013\u0293\001\002" + + "\000\006\013\uff14\016\uff14\001\002\000\004\141\u0295\001" + + "\002\000\004\021\u0296\001\002\000\004\044\u0297\001\002" + + "\000\004\012\u0298\001\002\000\004\013\u0299\001\002\000" + + "\006\013\uff12\016\uff12\001\002\000\004\141\u029b\001\002" + + "\000\004\020\u029c\001\002\000\004\105\u029d\001\002\000" + + "\006\017\uff72\022\uff72\001\002\000\004\020\u029f\001\002" + + "\000\004\102\u02a0\001\002\000\004\014\uff9c\001\002\000" + + "\024\015\uffaf\145\uffaf\164\uffaf\166\uffaf\171\uffaf\215\uffaf" + + "\232\uffaf\262\uffaf\270\uffaf\001\002\000\024\015\uffae\145" + + "\uffae\164\uffae\166\uffae\171\uffae\215\uffae\232\uffae\262\uffae" + + "\270\uffae\001\002\000\010\015\u02a6\164\275\301\u02a5\001" + + "\002\000\004\015\u02ad\001\002\000\004\020\u02aa\001\002" + + "\000\020\015\uff9b\145\uff9b\164\uff9b\171\uff9b\215\uff9b\262" + + "\uff9b\270\uff9b\001\002\000\010\015\uff98\164\275\301\u02a5" + + "\001\002\000\010\015\uff96\164\uff96\301\uff96\001\002\000" + + "\004\015\uff97\001\002\000\010\074\306\075\305\141\303" + + "\001\002\000\004\017\u02ac\001\002\000\010\015\uff95\164" + + "\uff95\301\uff95\001\002\000\020\015\uff9a\145\uff9a\164\uff9a" + + "\171\uff9a\215\uff9a\262\uff9a\270\uff9a\001\002\000\004\020" + + "\u02af\001\002\000\004\103\u02b0\001\002\000\004\014\uff99" + + "\001\002\000\020\015\uffa6\145\uffa6\164\uffa6\171\uffa6\215" + + "\uffa6\262\uffa6\270\uffa6\001\002\000\016\004\222\005\225" + + "\012\226\141\223\251\231\335\221\001\002\000\036\011" + + "\240\017\u02b4\155\234\255\246\334\241\335\233\336\235" + + "\337\242\340\236\341\237\342\245\343\243\344\247\345" + + "\244\001\002\000\020\015\uffa5\145\uffa5\164\uffa5\171\uffa5" + + "\215\uffa5\262\uffa5\270\uffa5\001\002\000\004\020\u02b6\001" + + "\002\000\010\074\306\075\305\141\303\001\002\000\006" + + "\017\uffa4\023\uffa4\001\002\000\004\141\u02b9\001\002\000" + + "\004\020\u02ba\001\002\000\010\074\306\075\305\141\303" + + "\001\002\000\006\017\uffa1\023\uffa1\001\002\000\004\121" + + "\u02bd\001\002\000\004\020\u02be\001\002\000\004\116\u02bf" + + "\001\002\000\006\014\uff8d\017\uff8d\001\002\000\006\062" + + "\u02c2\063\u02c1\001\002\000\004\165\u02cf\001\002\000\004" + + "\165\u02c3\001\002\000\004\141\u02c4\001\002\000\006\021" + + "\u02c5\022\u02c6\001\002\000\004\141\u02cb\001\002\000\004" + + "\141\u02c7\001\002\000\004\021\u02c8\001\002\000\004\141" + + "\u02c9\001\002\000\004\017\u02ca\001\002\000\014\015\uffc6" + + "\164\uffc6\166\uffc6\232\uffc6\262\uffc6\001\002\000\004\022" + + "\u02cc\001\002\000\004\141\u02cd\001\002\000\004\017\u02ce" + + "\001\002\000\014\015\uffc7\164\uffc7\166\uffc7\232\uffc7\262" + + "\uffc7\001\002\000\004\141\u02d0\001\002\000\006\021\u02d1" + + "\022\u02d2\001\002\000\004\141\u02d7\001\002\000\004\141" + + "\u02d3\001\002\000\004\021\u02d4\001\002\000\004\141\u02d5" + + "\001\002\000\004\017\u02d6\001\002\000\014\015\uffc4\164" + + "\uffc4\166\uffc4\232\uffc4\262\uffc4\001\002\000\004\022\u02d8" + + "\001\002\000\004\141\u02d9\001\002\000\004\017\u02da\001" + + "\002\000\014\015\uffc5\164\uffc5\166\uffc5\232\uffc5\262\uffc5" + + "\001\002\000\006\015\u02dd\164\275\001\002\000\004\015" + + "\u02de\001\002\000\014\015\uffec\164\uffec\166\uffec\232\uffec" + + "\262\uffec\001\002\000\014\015\uffed\164\uffed\166\uffed\232" + + "\uffed\262\uffed\001\002\000\004\265\u02e2\001\002\000\014" + + "\015\uffc1\164\uffc1\166\uffc1\232\uffc1\262\uffc1\001\002\000" + + "\006\015\u02ee\164\275\001\002\000\004\262\u02e3\001\002" + + "\000\004\041\u02e4\001\002\000\006\020\u02e6\022\u02e5\001" + + "\002\000\004\141\u02eb\001\002\000\004\055\u02e7\001\002" + + "\000\004\022\u02e8\001\002\000\004\141\u02e9\001\002\000" + + "\004\017\u02ea\001\002\000\006\015\uffbc\164\uffbc\001\002" + + "\000\004\017\u02ec\001\002\000\006\015\uffbb\164\uffbb\001" + + "\002\000\004\015\u02ef\001\002\000\014\015\uffbf\164\uffbf" + + "\166\uffbf\232\uffbf\262\uffbf\001\002\000\014\015\uffbe\164" + + "\uffbe\166\uffbe\232\uffbe\262\uffbe\001\002\000\004\015\u02f1" + + "\001\002\000\014\015\uffbd\164\uffbd\166\uffbd\232\uffbd\262" + + "\uffbd\001\002\000\014\015\uffba\164\uffba\166\uffba\232\uffba" + + "\262\uffba\001\002\000\006\015\u02f6\164\u02f4\001\002\000" + + "\004\141\u02fa\001\002\000\014\015\uffb8\164\uffb8\166\uffb8" + + "\232\uffb8\262\uffb8\001\002\000\014\015\uffb9\164\uffb9\166" + + "\uffb9\232\uffb9\262\uffb9\001\002\000\006\015\u02f9\164\u02f4" + + "\001\002\000\014\015\uffb4\164\uffb4\166\uffb4\232\uffb4\262" + + "\uffb4\001\002\000\014\015\uffb5\164\uffb5\166\uffb5\232\uffb5" + + "\262\uffb5\001\002\000\004\271\u02fb\001\002\000\004\141" + + "\u02fc\001\002\000\004\017\u02fd\001\002\000\006\015\uffb3" + + "\164\uffb3\001\002\000\006\013\uffd7\016\uffd7\001\002\000" + + "\004\022\u0316\001\002\000\004\022\u0314\001\002\000\004" + + "\013\u0312\001\002\000\006\013\uffd8\016\uffd8\001\002\000" + + "\006\013\uffd5\016\uffd5\001\002\000\006\013\uffdb\016\u0310" + + "\001\002\000\006\013\uffd6\016\uffd6\001\002\000\004\022" + + "\u030e\001\002\000\004\022\u030c\001\002\000\006\013\uffd9" + + "\016\uffd9\001\002\000\004\022\u030a\001\002\000\004\004" + + "\u030b\001\002\000\006\013\uffd1\016\uffd1\001\002\000\004" + + "\141\u030d\001\002\000\006\013\uffd4\016\uffd4\001\002\000" + + "\004\005\u030f\001\002\000\006\013\uffd0\016\uffd0\001\002" + + "\000\014\025\u0306\026\u0309\027\u0300\031\u0307\032\u02ff\001" + + "\002\000\004\013\uffda\001\002\000\004\017\u0313\001\002" + + "\000\014\015\uffe1\164\uffe1\166\uffe1\232\uffe1\262\uffe1\001" + + "\002\000\004\005\u0315\001\002\000\006\013\uffd2\016\uffd2" + + "\001\002\000\004\141\u0317\001\002\000\006\013\uffd3\016" + + "\uffd3\001\002\000\004\015\ufffd\001\002\000\004\013\u031a" + + "\001\002\000\004\017\u031b\001\002\000\014\015\uffdd\164" + + "\uffdd\166\uffdd\232\uffdd\262\uffdd\001\002\000\004\141\u031d" + + "\001\002\000\006\305\136\333\140\001\002\000\004\100" + + "\u031f\001\002\000\004\014\uffeb\001\002\000\004\013\u0321" + + "\001\002\000\004\017\u0322\001\002\000\014\015\uffdf\164" + + "\uffdf\166\uffdf\232\uffdf\262\uffdf\001\002\000\004\002\000" + + "\001\002" }); /** Access to parse-action table. */ @Override @@ -775,27 +777,27 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { /** <code>reduce_goto</code> table. */ protected static final short[][] _reduce_table = unpackFromStrings(new String[] { - "\000\u0320\000\004\004\003\001\001\000\002\001\001\000" + + "\000\u0321\000\004\004\003\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\066\005\041\006\021" + "\011\011\013\035\014\036\017\023\020\043\021\013\022" + "\012\032\031\033\015\034\020\035\044\036\024\037\022" + "\040\026\041\010\042\016\043\025\044\033\045\014\046" + "\030\053\034\054\032\055\042\056\040\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\020\023\u031e" + - "\024\u0302\025\u0306\026\u0300\027\u02fc\030\u0303\031\u0301\001" + - "\001\000\002\001\001\000\002\001\001\000\020\023\u0317" + - "\024\u0302\025\u0306\026\u0300\027\u02fc\030\u0303\031\u0301\001" + - "\001\000\066\005\u0316\006\021\011\011\013\035\014\036" + + "\001\000\002\001\001\000\002\001\001\000\020\023\u031f" + + "\024\u0303\025\u0307\026\u0301\027\u02fd\030\u0304\031\u0302\001" + + "\001\000\002\001\001\000\002\001\001\000\020\023\u0318" + + "\024\u0303\025\u0307\026\u0301\027\u02fd\030\u0304\031\u0302\001" + + "\001\000\066\005\u0317\006\021\011\011\013\035\014\036" + "\017\023\020\043\021\013\022\012\032\031\033\015\034" + "\020\035\044\036\024\037\022\040\026\041\010\042\016" + "\043\025\044\033\045\014\046\030\053\034\054\032\055" + "\042\056\040\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\020\023\u02ff\024\u0302" + - "\025\u0306\026\u0300\027\u02fc\030\u0303\031\u0301\001\001\000" + - "\002\001\001\000\002\001\001\000\012\015\u02dd\016\276" + - "\047\u02de\050\u02df\001\001\000\002\001\001\000\002\001" + + "\002\001\001\000\002\001\001\000\020\023\u0300\024\u0303" + + "\025\u0307\026\u0301\027\u02fd\030\u0304\031\u0302\001\001\000" + + "\002\001\001\000\002\001\001\000\012\015\u02de\016\276" + + "\047\u02df\050\u02e0\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\044\055\176\056\040\057\166" + "\060\164\061\174\062\160\063\157\064\165\065\167\066" + "\151\071\170\072\156\073\153\076\173\077\163\100\175" + @@ -826,7 +828,7 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\044\055\176\056" + - "\040\057\u02a0\060\164\061\174\062\160\063\157\064\165" + + "\040\057\u02a1\060\164\061\174\062\160\063\157\064\165" + "\065\167\066\151\071\170\072\156\073\153\076\173\077" + "\163\100\175\167\172\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + @@ -836,27 +838,27 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\010\227\226\230\227" + - "\231\224\001\001\000\010\227\271\230\227\231\224\001" + + "\002\001\001\000\002\001\001\000\010\230\226\231\227" + + "\232\223\001\001\000\010\230\271\231\227\232\223\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\010\227\265\230\227\231\224\001" + - "\001\000\002\001\001\000\002\001\001\000\010\227\231" + - "\230\227\231\224\001\001\000\002\001\001\000\010\227" + - "\263\230\227\231\224\001\001\000\010\227\262\230\227" + - "\231\224\001\001\000\010\227\261\230\227\231\224\001" + - "\001\000\010\227\260\230\227\231\224\001\001\000\010" + - "\227\257\230\227\231\224\001\001\000\010\227\256\230" + - "\227\231\224\001\001\000\010\227\255\230\227\231\224" + - "\001\001\000\010\227\254\230\227\231\224\001\001\000" + - "\010\227\253\230\227\231\224\001\001\000\010\227\252" + - "\230\227\231\224\001\001\000\010\227\251\230\227\231" + - "\224\001\001\000\010\227\250\230\227\231\224\001\001" + - "\000\010\227\247\230\227\231\224\001\001\000\002\001" + + "\000\002\001\001\000\010\230\265\231\227\232\223\001" + + "\001\000\002\001\001\000\002\001\001\000\010\230\231" + + "\231\227\232\223\001\001\000\002\001\001\000\010\230" + + "\263\231\227\232\223\001\001\000\010\230\262\231\227" + + "\232\223\001\001\000\010\230\261\231\227\232\223\001" + + "\001\000\010\230\260\231\227\232\223\001\001\000\010" + + "\230\257\231\227\232\223\001\001\000\010\230\256\231" + + "\227\232\223\001\001\000\010\230\255\231\227\232\223" + + "\001\001\000\010\230\254\231\227\232\223\001\001\000" + + "\010\230\253\231\227\232\223\001\001\000\010\230\252" + + "\231\227\232\223\001\001\000\010\230\251\231\227\232" + + "\223\001\001\000\010\230\250\231\227\232\223\001\001" + + "\000\010\230\247\231\227\232\223\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\004\231\270" + + "\001\000\002\001\001\000\002\001\001\000\004\232\270" + "\001\001\000\002\001\001\000\002\001\001\000\006\015" + "\273\016\276\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\006\015\277\016\276\001\001\000" + @@ -864,19 +866,19 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\074\074\331\075\340\101\322\102\317\103" + - "\326\104\325\105\346\106\343\107\314\110\353\111\342" + + "\326\104\325\105\346\106\343\107\314\110\352\111\342" + "\112\327\113\324\114\315\115\334\153\316\154\330\155" + "\337\156\335\157\321\160\320\161\313\162\350\163\336" + "\164\333\165\347\166\351\176\345\203\323\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\010\177\u01ce" + - "\212\u01cd\213\u01cb\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\010\177\u01cf" + + "\212\u01ce\213\u01cc\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\074\074\u0198\075\340\101\322\102\317\103" + - "\326\104\325\105\346\106\343\107\314\110\353\111\342" + + "\001\001\000\074\074\u0199\075\340\101\322\102\317\103" + + "\326\104\325\105\346\106\343\107\314\110\352\111\342" + "\112\327\113\324\114\315\115\334\153\316\154\330\155" + "\337\156\335\157\321\160\320\161\313\162\350\163\336" + "\164\333\165\347\166\351\176\345\203\323\001\001\000" + @@ -891,69 +893,71 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\036\121\u0103\122\u010c\123\u010f\126\u0113\127\377\130" + "\u0109\131\u010d\132\u0112\145\u0107\146\u0102\147\u010a\150\u0100" + - "\151\u0114\152\u010b\001\001\000\002\001\001\000\026\124" + - "\u0177\125\u011a\133\u0118\134\u0115\140\u011c\141\u0122\142\u0116" + - "\143\u0121\144\u011f\170\u011b\001\001\000\002\001\001\000" + - "\026\124\u0174\125\u011a\133\u0118\134\u0115\140\u011c\141\u0122" + - "\142\u0116\143\u0121\144\u011f\170\u011b\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\010\227\u016b" + - "\230\227\231\224\001\001\000\026\124\u0169\125\u011a\133" + - "\u0118\134\u0115\140\u011c\141\u0122\142\u0116\143\u0121\144\u011f" + - "\170\u011b\001\001\000\002\001\001\000\002\001\001\000" + - "\026\124\u0166\125\u011a\133\u0118\134\u0115\140\u011c\141\u0122" + - "\142\u0116\143\u0121\144\u011f\170\u011b\001\001\000\026\124" + - "\u0164\125\u011a\133\u0118\134\u0115\140\u011c\141\u0122\142\u0116" + - "\143\u0121\144\u011f\170\u011b\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\026\124\u0119\125\u011a\133\u0118\134\u0115\140\u011c" + - "\141\u0122\142\u0116\143\u0121\144\u011f\170\u011b\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\151\u0114\152\u010b\001\001\000\002\001\001\000\030\124" + + "\u0178\125\u011a\133\u0118\134\u0115\140\u011c\141\u0123\142\u0116" + + "\143\u0121\144\u011f\170\u011b\224\u0122\001\001\000\002\001" + + "\001\000\030\124\u0175\125\u011a\133\u0118\134\u0115\140\u011c" + + "\141\u0123\142\u0116\143\u0121\144\u011f\170\u011b\224\u0122\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\010\230\u016c\231\227\232\223\001\001\000\030\124" + + "\u016a\125\u011a\133\u0118\134\u0115\140\u011c\141\u0123\142\u0116" + + "\143\u0121\144\u011f\170\u011b\224\u0122\001\001\000\002\001" + + "\001\000\002\001\001\000\030\124\u0167\125\u011a\133\u0118" + + "\134\u0115\140\u011c\141\u0123\142\u0116\143\u0121\144\u011f\170" + + "\u011b\224\u0122\001\001\000\030\124\u0165\125\u011a\133\u0118" + + "\134\u0115\140\u011c\141\u0123\142\u0116\143\u0121\144\u011f\170" + + "\u011b\224\u0122\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\014\135\u0124\137\u0126\227\u0127\230\227" + - "\231\224\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\010\227\u0129\230\227" + - "\231\224\001\001\000\002\001\001\000\010\227\u012b\230" + - "\227\231\224\001\001\000\002\001\001\000\002\001\001" + + "\002\001\001\000\002\001\001\000\002\001\001\000\030" + + "\124\u0119\125\u011a\133\u0118\134\u0115\140\u011c\141\u0123\142" + + "\u0116\143\u0121\144\u011f\170\u011b\224\u0122\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\020\202\u013d\224\u0139\226\u0141" + - "\227\u013e\230\u0140\231\u013c\232\u013a\001\001\000\002\001" + - "\001\000\022\227\u013e\230\u014d\231\u014a\232\u0146\233\u0148" + - "\235\u014e\236\u0147\237\u014b\001\001\000\002\001\001\000" + + "\001\001\000\002\001\001\000\014\135\u0125\137\u0127\230" + + "\u0128\231\227\232\223\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\010\230" + + "\u012a\231\227\232\223\001\001\000\002\001\001\000\010" + + "\230\u012c\231\227\232\223\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\016\224" + - "\u0144\226\u0141\227\u013e\230\u0140\231\u013c\232\u013a\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\022\227\u013e\230\u014d\231\u014a\232\u0146\233\u0148\235\u014e" + - "\236\u0147\237\u0155\001\001\000\002\001\001\000\004\234" + - "\u0151\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\022\227\u013e" + - "\230\u014d\231\u014a\232\u0146\233\u0148\235\u014e\236\u0147\237" + - "\u0153\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\012\225" + - "\u0159\227\u0158\230\227\231\224\001\001\000\002\001\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\002\001\001\000\020\202\u013e\225" + + "\u013a\227\u0142\230\u013f\231\u0141\232\u013d\233\u013b\001\001" + + "\000\002\001\001\000\022\230\u013f\231\u014d\232\u014b\233" + + "\u0147\234\u014a\236\u014f\237\u0149\240\u014c\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\016\225\u0145\227\u0142\230\u013f\231\u0141\232\u013d\233" + + "\u013b\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\022\230\u013f\231\u014d\232\u014b\233\u0147\234" + + "\u014a\236\u014f\237\u0149\240\u0156\001\001\000\002\001\001" + + "\000\002\001\001\000\004\235\u0152\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\026\124\u015e\125\u011a\133\u0118\134\u0115" + - "\140\u011c\141\u0122\142\u0116\143\u0121\144\u011f\170\u011b\001" + + "\022\230\u013f\231\u014d\232\u014b\233\u0147\234\u014a\236\u014f" + + "\237\u0149\240\u0153\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\012\226\u015a\230\u0159\231\227\232\223\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\030\124\u015f\125\u011a\133" + + "\u0118\134\u0115\140\u011c\141\u0123\142\u0116\143\u0121\144\u011f" + + "\170\u011b\224\u0122\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\034\122\u016d\123\u010f\126\u0113" + - "\127\377\130\u0109\131\u010d\132\u0112\145\u0107\146\u0102\147" + - "\u010a\150\u0100\151\u0114\152\u010b\001\001\000\002\001\001" + + "\001\001\000\002\001\001\000\002\001\001\000\034\122" + + "\u016e\123\u010f\126\u0113\127\377\130\u0109\131\u010d\132\u0112" + + "\145\u0107\146\u0102\147\u010a\150\u0100\151\u0114\152\u010b\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\004\117\u017c\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\004\117\u0183\001\001\000\002\001" + + "\001\000\002\001\001\000\004\117\u017d\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\004\117\u0184" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + @@ -962,31 +966,31 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\004\117\u01a3\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\004\117\u01aa" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\004\117\u01a2\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\004\117\u01a9\001\001\000\002\001" + + "\000\002\001\001\000\002\001\001\000\004\117\u01b3\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\004\117\u01b2\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\004\116\u01bc\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\036\121\u01c1\122\u010c\123\u010f\126\u0113\127" + - "\377\130\u0109\131\u010d\132\u0112\145\u0107\146\u0102\147\u010a" + - "\150\u0100\151\u0114\152\u010b\001\001\000\002\001\001\000" + - "\040\120\u01c4\121\u01c3\122\u010c\123\u010f\126\u0113\127\377" + - "\130\u0109\131\u010d\132\u0112\145\u0107\146\u0102\147\u010a\150" + - "\u0100\151\u0114\152\u010b\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\040\120\u01c7\121\u01c3\122" + - "\u010c\123\u010f\126\u0113\127\377\130\u0109\131\u010d\132\u0112" + - "\145\u0107\146\u0102\147\u010a\150\u0100\151\u0114\152\u010b\001" + + "\002\001\001\000\002\001\001\000\002\001\001\000\004" + + "\116\u01bd\001\001\000\002\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\036\121\u01c2\122\u010c" + + "\123\u010f\126\u0113\127\377\130\u0109\131\u010d\132\u0112\145" + + "\u0107\146\u0102\147\u010a\150\u0100\151\u0114\152\u010b\001\001" + + "\000\002\001\001\000\040\120\u01c5\121\u01c4\122\u010c\123" + + "\u010f\126\u0113\127\377\130\u0109\131\u010d\132\u0112\145\u0107" + + "\146\u0102\147\u010a\150\u0100\151\u0114\152\u010b\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\040" + + "\120\u01c8\121\u01c4\122\u010c\123\u010f\126\u0113\127\377\130" + + "\u0109\131\u010d\132\u0112\145\u0107\146\u0102\147\u010a\150\u0100" + + "\151\u0114\152\u010b\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\014" + + "\204\u01d6\220\u01d4\221\u01d9\222\u01d7\223\u01d8\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\014\204\u01d5\220\u01d3\221" + - "\u01d8\222\u01d7\223\u01d6\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + @@ -994,82 +998,82 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\014" + - "\204\u01ef\220\u01d3\221\u01d8\222\u01d7\223\u01d6\001\001\000" + - "\002\001\001\000\004\205\u01f1\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\004\200\u01f7\001\001\000\006\201\u01f9\207\u01fa\001\001" + - "\000\002\001\001\000\002\001\001\000\004\200\u020a\001" + - "\001\000\006\003\u0203\211\u0201\001\001\000\002\001\001" + - "\000\002\001\001\000\006\226\u01ff\232\u013a\001\001\000" + + "\002\001\001\000\014\204\u01f0\220\u01d4\221\u01d9\222\u01d7" + + "\223\u01d8\001\001\000\002\001\001\000\004\205\u01f2\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\004\200\u01f8\001\001\000\006\201" + + "\u01fa\207\u01fb\001\001\000\002\001\001\000\002\001\001" + + "\000\004\200\u020b\001\001\000\006\003\u0204\211\u0202\001" + + "\001\000\002\001\001\000\002\001\001\000\006\227\u0200" + + "\233\u013b\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\016\224" + - "\u0205\226\u0141\227\u013e\230\u0140\231\u013c\232\u013a\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\006\201\u01f9\207\u01fa\001\001\000\002" + + "\001\001\000\016\225\u0206\227\u0142\230\u013f\231\u0141\232" + + "\u013d\233\u013b\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\002\001\001\000\006\201\u01fa\207" + + "\u01fb\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\014\204" + + "\u0212\220\u01d4\221\u01d9\222\u01d7\223\u01d8\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\014\204\u0211\220\u01d3\221\u01d8" + - "\222\u01d7\223\u01d6\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001\000\010\206\u0219" + - "\214\u0215\215\u0217\001\001\000\004\215\u0237\001\001\000" + - "\002\001\001\000\004\214\u022e\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\006\216\u021f\217\u021e\001\001\000\004\207\u0223\001\001" + - "\000\006\216\u0221\217\u021e\001\001\000\002\001\001\000" + - "\004\207\u0223\001\001\000\002\001\001\000\002\001\001" + - "\000\004\211\u0224\001\001\000\002\001\001\000\002\001" + + "\001\000\010\206\u021b\214\u0217\215\u0218\001\001\000\002" + + "\001\001\000\004\215\u0230\001\001\000\004\214\u022f\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\000\002\001\001\000\002\001\001\000\006\216\u0221\217" + + "\u0220\001\001\000\004\207\u0225\001\001\000\006\216\u0223" + + "\217\u0220\001\001\000\002\001\001\000\004\207\u0225\001" + + "\001\000\002\001\001\000\002\001\001\000\004\211\u0226" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\004\117" + - "\u0240\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\006\117\u0249\171\u024a\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\004\117\u024e\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\004\171\u0252\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\010\172\u025b\173\u0259\210\u025c\001\001\000\002\001\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\004\211\u025e\001\001\000\002\001\001" + - "\000\004\173\u0260\001\001\000\002\001\001\000\002\001" + - "\001\000\006\172\u0263\210\u025c\001\001\000\002\001\001" + - "\000\002\001\001\000\004\136\u0267\001\001\000\002\001" + - "\001\000\002\001\001\000\010\227\u0269\230\227\231\224" + - "\001\001\000\002\001\001\000\010\227\u026b\230\227\231" + - "\224\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\004\117" + - "\u0271\001\001\000\002\001\001\000\002\001\001\000\002" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\004\117\u0241\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\006\117" + + "\u024a\171\u024b\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\004\117\u024f\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\004\171\u0253\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\010\172\u025d\173\u025a\210\u025b\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\002\001\001\000\004\173\u025f\001" + + "\001\000\002\001\001\000\002\001\001\000\004\211\u0262" + + "\001\001\000\002\001\001\000\006\172\u0264\210\u025b\001" + + "\001\000\002\001\001\000\002\001\001\000\004\136\u0268" + + "\001\001\000\002\001\001\000\002\001\001\000\010\230" + + "\u026a\231\227\232\223\001\001\000\002\001\001\000\010" + + "\230\u026c\231\227\232\223\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\004\117\u0272\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\006\117" + + "\u027c\174\u027b\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\004\174\u027e\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\004\117\u0284" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\006\117\u027b\174\u027a\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\004\174\u027d\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\004\117\u0283\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\010\172\u028b\175\u028c\210\u025b\001" + + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + + "\000\006\172\u028e\210\u025b\001\001\000\002\001\001\000" + + "\002\001\001\000\004\175\u0291\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\010\172\u028a\175\u028b\210\u025c\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\006\172\u028d\210" + - "\u025c\001\001\000\002\001\001\000\002\001\001\000\004" + - "\175\u0290\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\002\001\001\000\010\016\u02a6\067\u02a2" + - "\070\u02a5\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\010\016\u02a6\067\u02a7\070\u02a5\001\001" + - "\000\002\001\001\000\002\001\001\000\004\002\u02a9\001" + + "\010\016\u02a7\067\u02a3\070\u02a6\001\001\000\002\001\001" + + "\000\002\001\001\000\002\001\001\000\010\016\u02a7\067" + + "\u02a8\070\u02a6\001\001\000\002\001\001\000\002\001\001" + + "\000\004\002\u02aa\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\002\001\001\000\010\227\u02b1\230\227\231\224\001\001" + - "\000\002\001\001\000\002\001\001\000\002\001\001\000" + - "\004\002\u02b5\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\004\002\u02b9\001\001\000\002\001" + + "\000\002\001\001\000\002\001\001\000\010\230\u02b2\231" + + "\227\232\223\001\001\000\002\001\001\000\002\001\001" + + "\000\002\001\001\000\004\002\u02b6\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\004\002\u02ba" + + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + @@ -1079,32 +1083,32 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\002\001\001\000\006\015\u02da\016" + - "\276\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\004\050\u02ee\001\001\000\002\001\001\000" + - "\006\015\u02eb\016\276\001\001\000\002\001\001\000\002" + + "\000\006\015\u02db\016\276\001\001\000\002\001\001\000" + + "\002\001\001\000\002\001\001\000\004\050\u02ef\001\001" + + "\000\002\001\001\000\006\015\u02ec\016\276\001\001\000" + + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\006\051" + - "\u02f3\052\u02f5\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\006\051\u02f6\052\u02f5\001\001\000" + + "\001\001\000\006\051\u02f4\052\u02f6\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\006\051\u02f7" + + "\052\u02f6\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + + "\001\000\002\001\001\000\002\001\001\000\020\023\u0310" + + "\024\u0303\025\u0307\026\u0301\027\u02fd\030\u0304\031\u0302\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + - "\000\002\001\001\000\020\023\u030f\024\u0302\025\u0306\026" + - "\u0300\027\u02fc\030\u0303\031\u0301\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + + "\001\001\000\002\001\001\000\002\001\001\000\004\007" + + "\u031d\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\004\007\u031c\001\001\000\002" + - "\001\001\000\002\001\001\000\002\001\001\000\002\001" + - "\001\000\002\001\001\000\002\001\001" }); + "\001" }); /** Access to <code>reduce_goto</code> table. */ @Override @@ -1326,6 +1330,23 @@ public class AvatarFromSysMLParser extends java_cup.runtime.lr_parser { private void getTransition(int _index) { theTransition = theState.getTransition(_index); } + private Location indexArg; + private Location delayArg; + private Location channelArg; + private Location payloadArg; + private Location settimerArg; + private Location resettimerArg; + private Location expiretimerArg; + private boolean argOK; + private void clearRequestArgs() { + indexArg = null; + delayArg = null; + channelArg = null; + payloadArg = null; + settimerArg = null; + resettimerArg = null; + expiretimerArg = null; + } private ArrayList<StxTerm> argList; private ArrayList<StxAction> actionList; @@ -3396,9 +3417,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTARTSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTARTSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("startStateBegin",105, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3458,10 +3485,16 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTANDARDSTATE); - theState.setName(id.getAvatarName()); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTANDARDSTATE); + theState.setName(id.getAvatarName()); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("standardStateBegin",106, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3507,8 +3540,14 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTOPSTATE); - theState.setLeft(zxright); + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTOPSTATE); + theState.setLeft(zxright); + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stopStateBegin",107, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3568,9 +3607,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSENDSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSENDSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("sendStateBegin",108, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3630,9 +3675,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRECEIVESTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRECEIVESTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("receiveStateBegin",109, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3692,9 +3743,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRANDOMSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRANDOMSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("randomStateBegin",110, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3754,9 +3811,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXCOUNTSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXCOUNTSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("countStateBegin",111, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3788,9 +3851,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXPRESENDSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXPRESENDSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("presendStateBegin",112, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3822,9 +3891,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXPRERECEIVESTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXPRERECEIVESTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("prereceiveStateBegin",113, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3884,9 +3959,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSETTIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSETTIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("setTimerStateBegin",114, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -3946,9 +4027,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRESETTIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRESETTIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("resetTimerStateBegin",115, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4008,9 +4095,15 @@ class CUP$AvatarFromSysMLParser$actions { Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expireTimerStateBegin",116, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4074,12 +4167,21 @@ class CUP$AvatarFromSysMLParser$actions { Location qxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-5)).xleft; Location qxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-5)).xright; Object q = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-5).<Object>value(); - - getTransition(requestIndex); - theTransition.setGuard(e); - theTransition.setRleft(ixleft); - theTransition.setRright(qxright); - requestIndex++; + Location nxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; + Location nxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; + Integer n = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<Integer>value(); + + if ( requestIndex >= 0) { + if (n != requestIndex + 1) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, nxleft, + " request index must be the request range in the request list (beginning at 1)", null) ); + } + getTransition(requestIndex); + theTransition.setGuard(e); + theTransition.setRleft(ixleft); + theTransition.setRright(qxright); + requestIndex++; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("request",79, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-8), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4093,11 +4195,13 @@ class CUP$AvatarFromSysMLParser$actions { Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; Object i = CUP$AvatarFromSysMLParser$stack.peek().<Object>value(); - getTransition(requestIndex); - theTransition.setRleft(ixleft); - theTransition.setRright(ixright); - requestIndex++; - + if ( requestIndex >= 0) { + getTransition(requestIndex); + theTransition.setRleft(ixleft); + theTransition.setRright(ixright); + requestIndex++; + } + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("request",79, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; @@ -4160,7 +4264,14 @@ class CUP$AvatarFromSysMLParser$actions { case 189: // trivialRequest ::= IMMEDIATEREQUEST_U { Object RESULT =null; + Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; + Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; + Object i = CUP$AvatarFromSysMLParser$stack.peek().<Object>value(); + if (!(requestIndex == 0)) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, ixleft, + " immediate request has index 1 and thus can only be used as first request", null) ); + } getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXTRIVIALTRANSITION); @@ -4184,6 +4295,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXTRIVIALTRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("trivialRequestBegin",99, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4205,6 +4317,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXSENDTRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("sendRequestBegin",100, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4226,6 +4339,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXRECEIVETRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("receiveRequestBegin",101, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4247,6 +4361,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXSETTIMERTRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("setTimerRequestBegin",102, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4268,6 +4383,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXRESETTIMERTRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("resetTimerRequestBegin",103, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4289,6 +4405,7 @@ class CUP$AvatarFromSysMLParser$actions { getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERTRANSITION); + clearRequestArgs(); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expireTimerRequestBegin",104, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } @@ -4379,13 +4496,26 @@ class CUP$AvatarFromSysMLParser$actions { case 211: // indexParam ::= INDEX_F EQUAL INT { Object RESULT =null; + Location fxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; + Location fxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xright; + Object f = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Object>value(); + Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; + Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; + Integer i = CUP$AvatarFromSysMLParser$stack.peek().<Integer>value(); + + if (indexArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING,fxleft, "index parameter has already been set", indexArg)); + if (i != requestIndex + 1) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING,fxleft, "the index of a request must be its range (beginning at 1)", + null)); + if (indexArg == null) indexArg = fxleft; CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("indexParam",89, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 212: // delayParam ::= DELAY_F EQUAL delayExpr + case 212: // delayParam ::= delayKeyword EQUAL delayExpr { Object RESULT =null; @@ -4394,19 +4524,40 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 213: // delayExpr ::= iexpr + case 213: // delayKeyword ::= DELAY_F + { + Object RESULT =null; + Location dxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; + Location dxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; + Object d = CUP$AvatarFromSysMLParser$stack.peek().<Object>value(); + + if (delayArg != null) { + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, dxleft, "delay parameter has already been set", delayArg)); + argOK = false; + } + else { + delayArg = dxleft; + argOK = true; + } + + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("delayKeyword",146, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + } + return CUP$AvatarFromSysMLParser$result; + + /*. . . . . . . . . . . . . . . . . . . .*/ + case 214: // delayExpr ::= iexpr { Object RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); - theTransition.setMinDelay(e); + if (argOK) theTransition.setMinDelay(e); CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("delayExpr",91, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 214: // delayExpr ::= delayRandomExpr + case 215: // delayExpr ::= delayRandomExpr { Object RESULT =null; @@ -4415,7 +4566,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 215: // delayRandomExpr ::= BOUNDRANDOM_U LPAR iexpr COMMA iexpr RPAR + case 216: // delayRandomExpr ::= BOUNDRANDOM_U LPAR iexpr COMMA iexpr RPAR { Object RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3)).xleft; @@ -4425,27 +4576,31 @@ class CUP$AvatarFromSysMLParser$actions { Location axright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; String a = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<String>value(); - theTransition.setMinDelay(i); - theTransition.setMaxDelay(a); + if(argOK) { + theTransition.setMinDelay(i); + theTransition.setMaxDelay(a); + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("delayRandomExpr",93, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-5), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 216: // payloadParam ::= payloadParamBegin IDENT LPAR termList RPAR + case 217: // payloadParam ::= payloadParamBegin IDENT LPAR termList RPAR { Object RESULT =null; - theTransition.setSendPayload(argList); - argList = null; + if (argOK) { + theTransition.setSendPayload(argList); + argList = null; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("payloadParam",94, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 217: // payloadParam ::= payloadParamBegin IDENT LPAR RPAR + case 218: // payloadParam ::= payloadParamBegin IDENT LPAR RPAR { Object RESULT =null; @@ -4454,7 +4609,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 218: // payloadParam ::= payloadParamBegin IDENT + case 219: // payloadParam ::= payloadParamBegin IDENT { Object RESULT =null; @@ -4463,23 +4618,25 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 219: // payloadParam ::= payloadParamBegin TIMERSETMSG_T LPAR stxExpr RPAR + case 220: // payloadParam ::= payloadParamBegin TIMERSETMSG_T LPAR stxExpr RPAR { Object RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; StxExpr e = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<StxExpr>value(); - argList.add(e); - theTransition.setSendPayload(argList); - argList = null; + if (argOK) { + argList.add(e); + theTransition.setSendPayload(argList); + argList = null; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("payloadParam",94, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 220: // payloadParam ::= payloadParamBegin TIMERRESETMSG_T LPAR RPAR + case 221: // payloadParam ::= payloadParamBegin TIMERRESETMSG_T LPAR RPAR { Object RESULT =null; @@ -4490,73 +4647,118 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 221: // payloadParamBegin ::= PAYLOAD_F EQUAL + case 222: // payloadParamBegin ::= PAYLOAD_F EQUAL { Object RESULT =null; - argList= new ArrayList<StxTerm>(); + Location pxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; + Location pxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; + Object p = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<Object>value(); + + if (payloadArg != null) { + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, pxleft, "payload parameter has already been set", payloadArg)); + argOK = false; + } + else { + payloadArg = pxleft; + argOK = true; + argList= new ArrayList<StxTerm>(); + } + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("payloadParamBegin",118, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 222: // channelParam ::= CHANNEL_F EQUAL IDENT + case 223: // channelParam ::= CHANNEL_F EQUAL IDENT { Object RESULT =null; + Location cxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; + Location cxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xright; + Object c = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Object>value(); Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location idxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; Ident id = CUP$AvatarFromSysMLParser$stack.peek().<Ident>value(); - theTransition.setSignalName(theBlock.getName(), id.getAvatarName()); - commTransitions.add(theTransition); + if (channelArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "channel parameter has already been set", channelArg)); + else { + theTransition.setSignalName(theBlock.getName(), id.getAvatarName()); + commTransitions.add(theTransition); + channelArg = cxleft; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("channelParam",95, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 223: // settimerParam ::= CHANNEL_F EQUAL IDENT POINT SET_TM + case 224: // settimerParam ::= CHANNEL_F EQUAL IDENT POINT SET_TM { Object RESULT =null; + Location cxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; + Location cxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xright; + Object c = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4).<Object>value(); Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; Location idxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xright; Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); - // '@payload' = '#TimerSetMsg'(10) - theTransition.setTimer(id.getAvatarName()); + + if (settimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + settimerArg = cxleft; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("settimerParam",96, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 224: // resettimerParam ::= CHANNEL_F EQUAL IDENT POINT RESET_TM + case 225: // resettimerParam ::= CHANNEL_F EQUAL IDENT POINT RESET_TM { Object RESULT =null; + Location cxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; + Location cxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xright; + Object c = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4).<Object>value(); Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; Location idxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xright; Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); - theTransition.setTimer(id.getAvatarName()); + if (resettimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + resettimerArg = cxleft; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("resettimerParam",97, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 225: // expiretimerParam ::= CHANNEL_F EQUAL IDENT POINT EXPIRE_TM + case 226: // expiretimerParam ::= CHANNEL_F EQUAL IDENT POINT EXPIRE_TM { Object RESULT =null; + Location cxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; + Location cxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xright; + Object c = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4).<Object>value(); Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; Location idxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xright; Ident id = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2).<Ident>value(); - theTransition.setTimer(id.getAvatarName()); + if (expiretimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + expiretimerArg = cxleft; + } CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expiretimerParam",98, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 226: // termList ::= stxRvalue + case 227: // termList ::= stxRvalue { Object RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -4568,7 +4770,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 227: // termList ::= termList COMMA stxRvalue + case 228: // termList ::= termList COMMA stxRvalue { Object RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -4580,7 +4782,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 228: // randomAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR targetParam COMMA randomParam RPAR + case 229: // randomAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR targetParam COMMA randomParam RPAR { Object RESULT =null; @@ -4589,7 +4791,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 229: // randomAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR randomParam COMMA targetParam RPAR + case 230: // randomAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR randomParam COMMA targetParam RPAR { Object RESULT =null; @@ -4598,7 +4800,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 230: // targetParam ::= target EQUAL fullIdent + case 231: // targetParam ::= target EQUAL fullIdent { Object RESULT =null; @@ -4609,7 +4811,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 231: // target ::= TARGET_F + case 232: // target ::= TARGET_F { Object RESULT =null; @@ -4620,7 +4822,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 232: // fullIdent ::= IDENT + case 233: // fullIdent ::= IDENT { Object RESULT =null; Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -4634,7 +4836,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 233: // fullIdent ::= fullIdent POINT IDENT + case 234: // fullIdent ::= fullIdent POINT IDENT { Object RESULT =null; Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -4648,7 +4850,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 234: // randomParam ::= VALUE_F EQUAL actionRandomExpr + case 235: // randomParam ::= VALUE_F EQUAL actionRandomExpr { Object RESULT =null; @@ -4657,7 +4859,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 235: // actionRandomExpr ::= BOUNDRANDOM_U LPAR iexpr COMMA iexpr RPAR + case 236: // actionRandomExpr ::= BOUNDRANDOM_U LPAR iexpr COMMA iexpr RPAR { Object RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3)).xleft; @@ -4675,7 +4877,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 236: // countAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR targetParam COMMA countParam RPAR + case 237: // countAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR targetParam COMMA countParam RPAR { Object RESULT =null; @@ -4684,7 +4886,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 237: // countAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR countParam COMMA targetParam RPAR + case 238: // countAction ::= STATEACTION_F EQUAL ASSIGNMENT_T LPAR countParam COMMA targetParam RPAR { Object RESULT =null; @@ -4693,7 +4895,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 238: // countParam ::= VALUE_F EQUAL IDENT POINT AMOUNT_U LPAR RPAR + case 239: // countParam ::= VALUE_F EQUAL IDENT POINT AMOUNT_U LPAR RPAR { Object RESULT =null; Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -4708,7 +4910,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 239: // transition ::= transitionBegin THEN IDENT SEMICOLON + case 240: // transition ::= transitionBegin THEN IDENT SEMICOLON { Object RESULT =null; Location txleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3)).xleft; @@ -4731,7 +4933,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 240: // transition ::= transitionBegin doActions THEN IDENT SEMICOLON + case 241: // transition ::= transitionBegin doActions THEN IDENT SEMICOLON { Object RESULT =null; Location txleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -4754,7 +4956,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 241: // transition ::= transitionBegin THEN IDENT transitionLabels LBRAC RBRAC + case 242: // transition ::= transitionBegin THEN IDENT transitionLabels LBRAC RBRAC { Object RESULT =null; Location txleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-5)).xleft; @@ -4779,7 +4981,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 242: // transition ::= transitionBegin doActions THEN IDENT LBRAC transitionLabels RBRAC + case 243: // transition ::= transitionBegin doActions THEN IDENT LBRAC transitionLabels RBRAC { Object RESULT =null; Location txleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-6)).xleft; @@ -4804,7 +5006,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 243: // transitionBegin ::= TRANSITION COLON AVTRANSITION_T FIRST IDENT + case 244: // transitionBegin ::= TRANSITION COLON AVTRANSITION_T FIRST IDENT { Object RESULT =null; Location stxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -4819,7 +5021,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 244: // transitionBegin ::= TRANSITION COLON AVTRANSITION_T FIRST IDENT IF INDEX_F EQ INT + case 245: // transitionBegin ::= TRANSITION COLON AVTRANSITION_T FIRST IDENT IF INDEX_F EQ INT { Object RESULT =null; Location stxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -4837,7 +5039,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 245: // doActions ::= transitionActionBegin LBRAC RBRAC + case 246: // doActions ::= transitionActionBegin LBRAC RBRAC { Object RESULT =null; @@ -4846,7 +5048,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 246: // doActions ::= transitionActionBegin LBRAC transitionAction RBRAC + case 247: // doActions ::= transitionActionBegin LBRAC transitionAction RBRAC { Object RESULT =null; @@ -4858,7 +5060,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 247: // doActions ::= receiveActionBegin LBRAC RBRAC + case 248: // doActions ::= receiveActionBegin LBRAC RBRAC { Object RESULT =null; @@ -4867,7 +5069,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 248: // doActions ::= receiveActionBegin LBRAC receiveAction RBRAC + case 249: // doActions ::= receiveActionBegin LBRAC receiveAction RBRAC { Object RESULT =null; @@ -4879,7 +5081,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 249: // transitionActionBegin ::= DO ACTION COLON TRANSITIONACTION_T + case 250: // transitionActionBegin ::= DO ACTION COLON TRANSITIONACTION_T { Object RESULT =null; @@ -4890,7 +5092,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 250: // receiveActionBegin ::= DO ACTION COLON RECEIVEACTION_T + case 251: // receiveActionBegin ::= DO ACTION COLON RECEIVEACTION_T { Object RESULT =null; @@ -4901,7 +5103,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 251: // transitionAction ::= FIRST START_U SEMICOLON THEN DONE_U SEMICOLON + case 252: // transitionAction ::= FIRST START_U SEMICOLON THEN DONE_U SEMICOLON { Object RESULT =null; @@ -4910,7 +5112,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 252: // transitionAction ::= FIRST START_U SEMICOLON actionSeq + case 253: // transitionAction ::= FIRST START_U SEMICOLON actionSeq { Object RESULT =null; @@ -4919,7 +5121,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 253: // actionSeq ::= THEN act THEN DONE_U SEMICOLON + case 254: // actionSeq ::= THEN act THEN DONE_U SEMICOLON { Object RESULT =null; @@ -4928,7 +5130,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 254: // actionSeq ::= THEN act actionSeq + case 255: // actionSeq ::= THEN act actionSeq { Object RESULT =null; @@ -4937,7 +5139,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 255: // act ::= assign fulllIdent GETS stxRvalue SEMICOLON + case 256: // act ::= assign fulllIdent GETS stxRvalue SEMICOLON { Object RESULT =null; Location axleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -4960,7 +5162,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 256: // act ::= ACTION EQUAL stxCall SEMICOLON + case 257: // act ::= ACTION EQUAL stxCall SEMICOLON { Object RESULT =null; Location axleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-3)).xleft; @@ -4980,7 +5182,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 257: // fulllIdent ::= fullIdent + case 258: // fulllIdent ::= fullIdent { String RESULT =null; @@ -4992,7 +5194,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 258: // assign ::= ASSIGN + case 259: // assign ::= ASSIGN { Object RESULT =null; @@ -5003,7 +5205,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 259: // receiveAction ::= messageLine receiveAssigns + case 260: // receiveAction ::= messageLine receiveAssigns { Object RESULT =null; @@ -5012,7 +5214,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 260: // receiveAction ::= receiveAssigns messageLine + case 261: // receiveAction ::= receiveAssigns messageLine { Object RESULT =null; @@ -5021,7 +5223,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 261: // messageLine ::= ITEM MSG_U COLON IDENT EQUAL PAYLOAD_F AS IDENT SEMICOLON + case 262: // messageLine ::= ITEM MSG_U COLON IDENT EQUAL PAYLOAD_F AS IDENT SEMICOLON { Object RESULT =null; @@ -5030,7 +5232,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 262: // receiveAssigns ::= FIRST START_U SEMICOLON THEN DONE_U SEMICOLON + case 263: // receiveAssigns ::= FIRST START_U SEMICOLON THEN DONE_U SEMICOLON { Object RESULT =null; @@ -5039,7 +5241,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 263: // receiveAssigns ::= FIRST START_U SEMICOLON receiveAssignSeq + case 264: // receiveAssigns ::= FIRST START_U SEMICOLON receiveAssignSeq { Object RESULT =null; @@ -5048,7 +5250,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 264: // receiveAssignSeq ::= receiveAssign THEN DONE_U SEMICOLON + case 265: // receiveAssignSeq ::= receiveAssign THEN DONE_U SEMICOLON { Object RESULT =null; @@ -5057,7 +5259,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 265: // receiveAssignSeq ::= receiveAssign receiveAssignSeq + case 266: // receiveAssignSeq ::= receiveAssign receiveAssignSeq { Object RESULT =null; @@ -5066,7 +5268,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 266: // receiveAssign ::= THEN assign fullIdent GETS MSG_U POINT IDENT SEMICOLON + case 267: // receiveAssign ::= THEN assign fullIdent GETS MSG_U POINT IDENT SEMICOLON { Object RESULT =null; Location idxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; @@ -5080,7 +5282,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 267: // transitionLabels ::= transitionLabel SEMICOLON + case 268: // transitionLabels ::= transitionLabel SEMICOLON { Object RESULT =null; @@ -5089,7 +5291,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 268: // transitionLabels ::= transitionLabel SEMICOLON transitionLabels + case 269: // transitionLabels ::= transitionLabel SEMICOLON transitionLabels { Object RESULT =null; @@ -5098,7 +5300,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 269: // transitionLabel ::= distributionLabel + case 270: // transitionLabel ::= distributionLabel { Object RESULT =null; @@ -5107,7 +5309,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 270: // transitionLabel ::= weightLabel + case 271: // transitionLabel ::= weightLabel { Object RESULT =null; @@ -5116,7 +5318,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 271: // transitionLabel ::= extraLabel + case 272: // transitionLabel ::= extraLabel { Object RESULT =null; @@ -5125,7 +5327,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 272: // distributionLabel ::= ATTRIBUTE DISTRIBUTION_A COLON STRING_T EQUAL STRING + case 273: // distributionLabel ::= ATTRIBUTE DISTRIBUTION_A COLON STRING_T EQUAL STRING { Object RESULT =null; Location sxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -5139,7 +5341,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 273: // weightLabel ::= ATTRIBUTE WEIGHT_A COLON STRING_T EQUAL REAL + case 274: // weightLabel ::= ATTRIBUTE WEIGHT_A COLON STRING_T EQUAL REAL { Object RESULT =null; Location rxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -5153,7 +5355,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 274: // extraLabel ::= ATTRIBUTE ANYNAME COLON STRING_T EQUAL STRING + case 275: // extraLabel ::= ATTRIBUTE ANYNAME COLON STRING_T EQUAL STRING { Object RESULT =null; Location nxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -5172,7 +5374,7 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 275: // extraLabel ::= ATTRIBUTE IDENT COLON STRING_T EQUAL STRING + case 276: // extraLabel ::= ATTRIBUTE IDENT COLON STRING_T EQUAL STRING { Object RESULT =null; Location nxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-4)).xleft; @@ -5191,79 +5393,79 @@ class CUP$AvatarFromSysMLParser$actions { return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 276: // stxRvalue ::= stxCall + case 277: // stxRvalue ::= stxCall { StxTerm RESULT =null; Location cxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location cxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; StxCall c = CUP$AvatarFromSysMLParser$stack.peek().<StxCall>value(); RESULT = c; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",146, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",147, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 277: // stxRvalue ::= expr + case 278: // stxRvalue ::= expr { StxTerm RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = new StxExpr(e); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",146, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",147, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 278: // stxRvalue ::= complexIdent + case 279: // stxRvalue ::= complexIdent { StxTerm RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String i = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = new StxId(i); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",146, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxRvalue",147, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 279: // stxExpr ::= iexpr + case 280: // stxExpr ::= iexpr { StxExpr RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = new StxExpr(e); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxExpr",147, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxExpr",148, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 280: // iexpr ::= expr + case 281: // iexpr ::= expr { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = e; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("iexpr",149, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("iexpr",150, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 281: // iexpr ::= complexIdent + case 282: // iexpr ::= complexIdent { String RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String i = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = i; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("iexpr",149, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("iexpr",150, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 282: // expr ::= iexpr PLUS iexpr + case 283: // expr ::= iexpr PLUS iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5273,12 +5475,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " + " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 283: // expr ::= iexpr MINUS iexpr + case 284: // expr ::= iexpr MINUS iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5288,12 +5490,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " - " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 284: // expr ::= iexpr MULT iexpr + case 285: // expr ::= iexpr MULT iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5303,12 +5505,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " * " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 285: // expr ::= iexpr DIV iexpr + case 286: // expr ::= iexpr DIV iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5318,12 +5520,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " / " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 286: // expr ::= iexpr MOD iexpr + case 287: // expr ::= iexpr MOD iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5333,24 +5535,24 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " % " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 287: // expr ::= MINUS iexpr + case 288: // expr ::= MINUS iexpr { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = "-" + e; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 288: // expr ::= iexpr OR iexpr + case 289: // expr ::= iexpr OR iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5360,12 +5562,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " || " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 289: // expr ::= iexpr AND iexpr + case 290: // expr ::= iexpr AND iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5375,24 +5577,24 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " && " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 290: // expr ::= NOT iexpr + case 291: // expr ::= NOT iexpr { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = "!" + e; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 291: // expr ::= iexpr LT iexpr + case 292: // expr ::= iexpr LT iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5402,12 +5604,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " < " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 292: // expr ::= iexpr GT iexpr + case 293: // expr ::= iexpr GT iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5417,12 +5619,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " > " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 293: // expr ::= iexpr LEQ iexpr + case 294: // expr ::= iexpr LEQ iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5432,12 +5634,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " <= " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 294: // expr ::= iexpr GEQ iexpr + case 295: // expr ::= iexpr GEQ iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5447,12 +5649,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " >= " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 295: // expr ::= iexpr EQ iexpr + case 296: // expr ::= iexpr EQ iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5462,12 +5664,12 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " == " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 296: // expr ::= iexpr DIF iexpr + case 297: // expr ::= iexpr DIF iexpr { String RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5477,43 +5679,31 @@ class CUP$AvatarFromSysMLParser$actions { Location rxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String r = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = l + " != " + r; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 297: // expr ::= LPAR iexpr RPAR + case 298: // expr ::= LPAR iexpr RPAR { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; String e = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<String>value(); RESULT = "(" + e + ")"; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 298: // expr ::= INT + case 299: // expr ::= INT { String RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; Integer i = CUP$AvatarFromSysMLParser$stack.peek().<Integer>value(); RESULT = "" + i; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); - } - return CUP$AvatarFromSysMLParser$result; - - /*. . . . . . . . . . . . . . . . . . . .*/ - case 299: // expr ::= BOOL - { - String RESULT =null; - Location bxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; - Location bxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; - Boolean b = CUP$AvatarFromSysMLParser$stack.peek().<Boolean>value(); - RESULT = ( b ? "true" : "false" ); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",150, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; @@ -5539,19 +5729,31 @@ class CUP$AvatarFromSysMLParser$actions { switch (CUP$AvatarFromSysMLParser$act_num) { /*. . . . . . . . . . . . . . . . . . . .*/ - case 300: // complexIdent ::= IDENT + case 300: // expr ::= BOOL + { + String RESULT =null; + Location bxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; + Location bxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; + Boolean b = CUP$AvatarFromSysMLParser$stack.peek().<Boolean>value(); + RESULT = ( b ? "true" : "false" ); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("expr",151, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + } + return CUP$AvatarFromSysMLParser$result; + + /*. . . . . . . . . . . . . . . . . . . .*/ + case 301: // complexIdent ::= IDENT { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; Ident e = CUP$AvatarFromSysMLParser$stack.peek().<Ident>value(); RESULT = e.getAvatarName(); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("complexIdent",151, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("complexIdent",152, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 301: // complexIdent ::= IDENT POINT complexIdent + case 302: // complexIdent ::= IDENT POINT complexIdent { String RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2)).xleft; @@ -5561,24 +5763,24 @@ class CUP$AvatarFromSysMLParser$actions { Location ixright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String i = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); RESULT = e.getAvatarName() + "__" + i; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("complexIdent",151, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("complexIdent",152, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 302: // stxCall ::= stxCallBegin RPAR + case 303: // stxCall ::= stxCallBegin RPAR { StxCall RESULT =null; theCall.addSegment(stringAcc.toString() + ")"); RESULT = theCall; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCall",148, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCall",149, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 303: // stxCall ::= stxCallBegin stxCallParams RPAR + case 304: // stxCall ::= stxCallBegin stxCallParams RPAR { StxCall RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; @@ -5588,12 +5790,12 @@ class CUP$AvatarFromSysMLParser$actions { theCall.addSegment(stringAcc.toString() + ")"); RESULT = theCall; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCall",148, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCall",149, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 304: // stxCallBegin ::= IDENT LPAR + case 305: // stxCallBegin ::= IDENT LPAR { Object RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; @@ -5603,51 +5805,51 @@ class CUP$AvatarFromSysMLParser$actions { theCall = new StxCall(); stringAcc = new StringBuffer(i.getAvatarName() + "("); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallBegin",152, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallBegin",153, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 305: // stxCallParams ::= stxCallParam + case 306: // stxCallParams ::= stxCallParam { Object RESULT =null; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParams",157, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParams",158, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 306: // stxCallParams ::= stxCallParam comma stxCallParams + case 307: // stxCallParams ::= stxCallParam comma stxCallParams { Object RESULT =null; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParams",157, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParams",158, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 307: // comma ::= COMMA + case 308: // comma ::= COMMA { Object RESULT =null; stringAcc.append(", "); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("comma",154, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("comma",155, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 308: // stxCallParam ::= expr + case 309: // stxCallParam ::= expr { Object RESULT =null; Location exleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; Location exright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xright; String e = CUP$AvatarFromSysMLParser$stack.peek().<String>value(); stringAcc.append(e); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",153, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",154, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 309: // stxCallParam ::= complexIdent + case 310: // stxCallParam ::= complexIdent { Object RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.peek()).xleft; @@ -5658,42 +5860,42 @@ class CUP$AvatarFromSysMLParser$actions { theCall.addIdent(i); stringAcc.setLength(0); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",153, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",154, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 310: // stxCallParam ::= call + case 311: // stxCallParam ::= call { Object RESULT =null; - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",153, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("stxCallParam",154, CUP$AvatarFromSysMLParser$stack.peek(), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 311: // call ::= callBegin RPAR + case 312: // call ::= callBegin RPAR { Object RESULT =null; stringAcc.append(")"); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("call",155, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("call",156, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 312: // call ::= stxCallBegin stxCallParams RPAR + case 313: // call ::= stxCallBegin stxCallParams RPAR { Object RESULT =null; Location lxleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; Location lxright = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xright; Object l = CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1).<Object>value(); stringAcc.append(")"); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("call",155, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("call",156, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-2), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ - case 313: // callBegin ::= IDENT LPAR + case 314: // callBegin ::= IDENT LPAR { Object RESULT =null; Location ixleft = ((java_cup.runtime.ComplexSymbolFactory.ComplexSymbol)CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1)).xleft; @@ -5702,7 +5904,7 @@ class CUP$AvatarFromSysMLParser$actions { stringAcc.append(i.getAvatarName() + "("); - CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("callBegin",156, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); + CUP$AvatarFromSysMLParser$result = parser.getSymbolFactory().newSymbol("callBegin",157, CUP$AvatarFromSysMLParser$stack.elementAt(CUP$AvatarFromSysMLParser$top-1), CUP$AvatarFromSysMLParser$stack.peek(), RESULT); } return CUP$AvatarFromSysMLParser$result; diff --git a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLSymbols.java b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLSymbols.java index 301926d03c7d39961d2a677db099ae7ea229cd24..ad8d0d337cd0a9d5ab4df75ca2c72cfe11bf3b2b 100644 --- a/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLSymbols.java +++ b/src/main/java/avatartranslator/tosysmlv2/AvatarFromSysMLSymbols.java @@ -473,7 +473,7 @@ public class AvatarFromSysMLSymbols { static final int receiveRequestBegin = 101; static final int privateParam = 21; static final int startStateBegin = 105; - static final int call = 155; + static final int call = 156; static final int receiveAssign = 141; static final int specializes = 5; static final int calcMethodDeclBegin = 61; @@ -482,7 +482,7 @@ public class AvatarFromSysMLSymbols { static final int transitionActionBegin = 136; static final int block2Param = 20; static final int standardState = 65; - static final int stxCallParams = 157; + static final int stxCallParams = 158; static final int featureList = 3; static final int presendState = 71; static final int inSignalBinding = 32; @@ -498,11 +498,12 @@ public class AvatarFromSysMLSymbols { static final int stopStateBegin = 107; static final int signalBinding = 31; static final int receiveAssignSeq = 140; - static final int stxCallParam = 153; + static final int stxCallParam = 154; static final int fieldDecl = 12; static final int setTimerState = 73; static final int stateMachineItem = 59; static final int trivialRequestBegin = 99; + static final int delayKeyword = 146; static final int weightLabel = 144; static final int messageLine = 138; static final int randomParam = 121; @@ -534,7 +535,7 @@ public class AvatarFromSysMLSymbols { static final int simpleRequest = 80; static final int messageDecl = 34; static final int datatypeDeclHEADER = 10; - static final int expr = 150; + static final int expr = 151; static final int stopState = 66; static final int randomAction = 119; static final int calcMethodItem = 54; @@ -554,7 +555,7 @@ public class AvatarFromSysMLSymbols { static final int constantDeclHEADER = 62; static final int blockDeclBODY = 45; static final int trivialRequest = 81; - static final int stxCall = 148; + static final int stxCall = 149; static final int countAction = 122; static final int expireTimerStateBegin = 116; static final int relationDecl = 13; @@ -562,7 +563,7 @@ public class AvatarFromSysMLSymbols { static final int blockItem = 46; static final int outMessageDeclBegin = 42; static final int transitionLabels = 130; - static final int comma = 154; + static final int comma = 155; static final int delayParam = 90; static final int relParams = 17; static final int targetParam = 120; @@ -600,13 +601,13 @@ public class AvatarFromSysMLSymbols { static final int transitionBegin = 129; static final int timerDecl = 56; static final int transitionAction = 131; - static final int stxRvalue = 146; + static final int stxRvalue = 147; static final int sendState = 67; static final int block1Param = 19; - static final int complexIdent = 151; - static final int iexpr = 149; + static final int complexIdent = 152; + static final int iexpr = 150; static final int datatypeDecl = 9; - static final int callBegin = 156; + static final int callBegin = 157; static final int countParam = 123; static final int expireTimerState = 75; static final int prereceiveState = 72; @@ -616,7 +617,7 @@ public class AvatarFromSysMLSymbols { static final int requestArgs = 82; static final int stateMachineItems = 58; static final int request = 79; - static final int stxExpr = 147; + static final int stxExpr = 148; static final int setTimerStateBegin = 114; static final int delayExpr = 91; static final int attributeDeclHEADER = 49; @@ -625,7 +626,7 @@ public class AvatarFromSysMLSymbols { static final int nbfChDecl = 29; static final int receiveAssigns = 139; static final int stateMachineBegin = 117; - static final int stxCallBegin = 152; + static final int stxCallBegin = 153; static final int transitionLabel = 142; static final int countStateBegin = 111; } diff --git a/src/main/java/avatartranslator/tosysmlv2/javacup/AvatarFromSysML.jcup b/src/main/java/avatartranslator/tosysmlv2/javacup/AvatarFromSysML.jcup index 0bb7f6a3483ddecd7f09ddfc72dde46c4bda411c..4c2d63b793e17aecf7a32ca53d54835137a9addc 100644 --- a/src/main/java/avatartranslator/tosysmlv2/javacup/AvatarFromSysML.jcup +++ b/src/main/java/avatartranslator/tosysmlv2/javacup/AvatarFromSysML.jcup @@ -184,6 +184,23 @@ parser code {: private void getTransition(int _index) { theTransition = theState.getTransition(_index); } + private Location indexArg; + private Location delayArg; + private Location channelArg; + private Location payloadArg; + private Location settimerArg; + private Location resettimerArg; + private Location expiretimerArg; + private boolean argOK; + private void clearRequestArgs() { + indexArg = null; + delayArg = null; + channelArg = null; + payloadArg = null; + settimerArg = null; + resettimerArg = null; + expiretimerArg = null; + } private ArrayList<StxTerm> argList; private ArrayList<StxAction> actionList; @@ -273,7 +290,7 @@ non terminal state, startState, standardState, stopState, sendState, receiveStat non terminal randomAction, targetParam, randomParam, countAction, countParam, transition, doActions, actionSeq, act, termList, transitionBegin, transitionLabels, transitionAction, receiveAction, assign, target, fullIdent, transitionActionBegin, receiveActionBegin, messageLine, receiveAssigns, receiveAssignSeq, - receiveAssign, transitionLabel, distributionLabel, weightLabel, extraLabel; + receiveAssign, transitionLabel, distributionLabel, weightLabel, extraLabel, delayKeyword; non terminal StxTerm stxRvalue; non terminal StxExpr stxExpr; @@ -967,9 +984,15 @@ startState ::= ; startStateBegin ::= ENTRY:z ACTION IDENT:id COLON AVSTARTSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTARTSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTARTSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; standardState ::= standardStateBegin SEMICOLON:q {: @@ -984,10 +1007,16 @@ standardState ::= ; standardStateBegin ::= STATE:z IDENT:id COLON AVSTANDARDSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTANDARDSTATE); - theState.setName(id.getAvatarName()); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTANDARDSTATE); + theState.setName(id.getAvatarName()); + theState.setLeft(zxright); + requestIndex = 0; + } :}; stopState ::= stopStateBegin SEMICOLON:q {: @@ -999,8 +1028,14 @@ stopState ::= ; stopStateBegin ::= EXIT:z ACTION IDENT:id COLON AVSTOPSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSTOPSTATE); - theState.setLeft(zxright); + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSTOPSTATE); + theState.setLeft(zxright); + } :}; sendState ::= sendStateBegin SEMICOLON:q {: @@ -1015,9 +1050,15 @@ sendState ::= ; sendStateBegin ::= STATE:z IDENT:id COLON AVSENDSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSENDSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSENDSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; receiveState ::= receiveStateBegin SEMICOLON:q {: @@ -1032,9 +1073,15 @@ receiveState ::= ; receiveStateBegin ::= STATE:z IDENT:id COLON AVRECEIVESTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRECEIVESTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRECEIVESTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; randomState ::= randomStateBegin EQUAL AVRANDOMSTATE_T LPAR randomAction COMMA requestParam RPAR SEMICOLON:q {: @@ -1049,9 +1096,15 @@ randomState ::= ; randomStateBegin ::= STATE:z IDENT:id COLON AVRANDOMSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRANDOMSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRANDOMSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; countState ::= countStateBegin EQUAL AVCOUNTSTATE_T LPAR countAction RPAR SEMICOLON:q {: @@ -1066,9 +1119,15 @@ countState ::= ; countStateBegin ::= STATE:z IDENT:id COLON AVCOUNTSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXCOUNTSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXCOUNTSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; presendState ::= presendStateBegin EQUAL AVPRESENDSTATE_T LPAR requestParam RPAR SEMICOLON:q {: @@ -1077,9 +1136,15 @@ presendState ::= ; presendStateBegin ::= STATE:z IDENT:id COLON AVPRESENDSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXPRESENDSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXPRESENDSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; prereceiveState ::= prereceiveStateBegin EQUAL AVPRERECEIVESTATE_T LPAR requestParam RPAR SEMICOLON:q {: @@ -1088,9 +1153,15 @@ prereceiveState ::= ; prereceiveStateBegin ::= STATE:z IDENT:id COLON AVPRERECEIVESTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXPRERECEIVESTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXPRERECEIVESTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; setTimerState ::= setTimerStateBegin EQUAL AVSETTIMERSTATE_T LPAR requestParam RPAR SEMICOLON:q {: @@ -1105,9 +1176,15 @@ setTimerState ::= ; setTimerStateBegin ::= STATE:z IDENT:id COLON AVSETTIMERSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXSETTIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXSETTIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; resetTimerState ::= resetTimerStateBegin EQUAL AVRESETTIMERSTATE_T LPAR requestParam RPAR SEMICOLON:q {: @@ -1122,9 +1199,15 @@ resetTimerState ::= ; resetTimerStateBegin ::= STATE:z IDENT:id COLON AVRESETTIMERSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXRESETTIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXRESETTIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; expireTimerState ::= expireTimerStateBegin EQUAL AVEXPIRETIMERSTATE_T LPAR requestParam RPAR SEMICOLON:q {: @@ -1139,9 +1222,15 @@ expireTimerState ::= ; expireTimerStateBegin ::= STATE:z IDENT:id COLON AVEXPIRETIMERSTATE_T {: getState(id.getAvatarName()); - theState.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERSTATE); - theState.setLeft(zxright); - requestIndex = 0; + if (! theState.declare() ) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.HIGHERROR, zxleft, "State " + id.getAvatarName() + + " is already declared", theState.getLeft()) ); + requestIndex = -1; + } else { + theState.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERSTATE); + theState.setLeft(zxright); + requestIndex = 0; + } :}; // STATES PARAMETERS @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ -1153,25 +1242,36 @@ poolParam ::= requestParam ::= REQUEST_F EQUAL request; requestList ::= request | request COMMA requestList; request ::= - IF:i iexpr:e QUEST simpleRequest:q ELSE NOKREQUEST_U LPAR INT RPAR {: - getTransition(requestIndex); - theTransition.setGuard(e); - theTransition.setRleft(ixleft); - theTransition.setRright(qxright); - requestIndex++; + IF:i iexpr:e QUEST simpleRequest:q ELSE NOKREQUEST_U LPAR INT:n RPAR {: + if ( requestIndex >= 0) { + if (n != requestIndex + 1) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, nxleft, + " request index must be the request range in the request list (beginning at 1)", null) ); + } + getTransition(requestIndex); + theTransition.setGuard(e); + theTransition.setRleft(ixleft); + theTransition.setRright(qxright); + requestIndex++; + } :} | simpleRequest:i {: - getTransition(requestIndex); - theTransition.setRleft(ixleft); - theTransition.setRright(ixright); - requestIndex++; - :} -; + if ( requestIndex >= 0) { + getTransition(requestIndex); + theTransition.setRleft(ixleft); + theTransition.setRright(ixright); + requestIndex++; + } +:}; simpleRequest ::= trivialRequest | sendRequest | receiveRequest | setTimerRequest | resetTimerRequest | expireTimerRequest; trivialRequest ::= - IMMEDIATEREQUEST_U {: + IMMEDIATEREQUEST_U:i {: + if (!(requestIndex == 0)) { + addError( new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, ixleft, + " immediate request has index 1 and thus can only be used as first request", null) ); + } getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXTRIVIALTRANSITION); :} @@ -1180,79 +1280,138 @@ trivialRequest ::= trivialRequestBegin ::= TRIVIALREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXTRIVIALTRANSITION); + clearRequestArgs(); :}; sendRequest ::= sendRequestBegin requestArgs RPAR; sendRequestBegin ::= SENDREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXSENDTRANSITION); + clearRequestArgs(); :}; receiveRequest ::= receiveRequestBegin requestArgs RPAR; receiveRequestBegin ::= RECEIVEREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXRECEIVETRANSITION); + clearRequestArgs(); :}; setTimerRequest ::= setTimerRequestBegin requestArgs RPAR; setTimerRequestBegin ::= SETTIMERREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXSETTIMERTRANSITION); + clearRequestArgs(); :}; resetTimerRequest ::= resetTimerRequestBegin requestArgs RPAR; resetTimerRequestBegin ::= RESETTIMERREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXRESETTIMERTRANSITION); + clearRequestArgs(); :}; expireTimerRequest ::= expireTimerRequestBegin requestArgs RPAR; expireTimerRequestBegin ::= EXPIRETIMERREQUEST_T LPAR {: getTransition(requestIndex); theTransition.setType(AvatarFromSysMLSyntax.STXEXPIRETIMERTRANSITION); + clearRequestArgs(); :}; requestArgs ::= requestArg | requestArg COMMA requestArgs; requestArg ::= indexParam | delayParam | channelParam | payloadParam | settimerParam | resettimerParam | expiretimerParam; -indexParam ::= INDEX_F EQUAL INT; -delayParam ::= DELAY_F EQUAL delayExpr; +indexParam ::= INDEX_F:f EQUAL INT:i {: + if (indexArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING,fxleft, "index parameter has already been set", indexArg)); + if (i != requestIndex + 1) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING,fxleft, "the index of a request must be its range (beginning at 1)", + null)); + if (indexArg == null) indexArg = fxleft; +:}; +delayParam ::= delayKeyword EQUAL delayExpr; +delayKeyword ::= DELAY_F:d {: + if (delayArg != null) { + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, dxleft, "delay parameter has already been set", delayArg)); + argOK = false; + } + else { + delayArg = dxleft; + argOK = true; + } +:}; delayExpr ::= - iexpr:e {: theTransition.setMinDelay(e); :} + iexpr:e {: if (argOK) theTransition.setMinDelay(e); :} | delayRandomExpr ; delayRandomExpr ::= BOUNDRANDOM_U LPAR iexpr:i COMMA iexpr:a RPAR {: - theTransition.setMinDelay(i); - theTransition.setMaxDelay(a); + if(argOK) { + theTransition.setMinDelay(i); + theTransition.setMaxDelay(a); + } :} ; payloadParam ::= payloadParamBegin IDENT LPAR termList RPAR {: - theTransition.setSendPayload(argList); - argList = null; + if (argOK) { + theTransition.setSendPayload(argList); + argList = null; + } :} | payloadParamBegin IDENT LPAR RPAR | payloadParamBegin IDENT | payloadParamBegin TIMERSETMSG_T LPAR stxExpr:e RPAR {: - argList.add(e); - theTransition.setSendPayload(argList); - argList = null; + if (argOK) { + argList.add(e); + theTransition.setSendPayload(argList); + argList = null; + } :} | payloadParamBegin TIMERRESETMSG_T LPAR RPAR {: argList = null; :} ; -payloadParamBegin ::= PAYLOAD_F EQUAL {: argList= new ArrayList<StxTerm>(); :}; +payloadParamBegin ::= PAYLOAD_F:p EQUAL {: + if (payloadArg != null) { + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, pxleft, "payload parameter has already been set", payloadArg)); + argOK = false; + } + else { + payloadArg = pxleft; + argOK = true; + argList= new ArrayList<StxTerm>(); + } +:}; -channelParam ::= CHANNEL_F EQUAL IDENT:id {: - theTransition.setSignalName(theBlock.getName(), id.getAvatarName()); - commTransitions.add(theTransition); +channelParam ::= CHANNEL_F:c EQUAL IDENT:id {: + if (channelArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "channel parameter has already been set", channelArg)); + else { + theTransition.setSignalName(theBlock.getName(), id.getAvatarName()); + commTransitions.add(theTransition); + channelArg = cxleft; + } :}; -settimerParam ::= CHANNEL_F EQUAL IDENT:id POINT SET_TM {: // '@payload' = '#TimerSetMsg'(10) - theTransition.setTimer(id.getAvatarName()); +settimerParam ::= CHANNEL_F:c EQUAL IDENT:id POINT SET_TM {: + if (settimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + settimerArg = cxleft; + } :}; -resettimerParam ::= CHANNEL_F EQUAL IDENT:id POINT RESET_TM {: - theTransition.setTimer(id.getAvatarName()); +resettimerParam ::= CHANNEL_F:c EQUAL IDENT:id POINT RESET_TM {: + if (resettimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + resettimerArg = cxleft; + } :}; -expiretimerParam ::= CHANNEL_F EQUAL IDENT:id POINT EXPIRE_TM {: - theTransition.setTimer(id.getAvatarName()); +expiretimerParam ::= CHANNEL_F:c EQUAL IDENT:id POINT EXPIRE_TM {: + if (expiretimerArg != null) + addError(new AvatarFromSysMLError(AvatarFromSysMLError.LOWWARNING, cxleft, "timer channel parameter has already been set", settimerArg)); + else { + theTransition.setTimer(id.getAvatarName()); + expiretimerArg = cxleft; + } :}; termList ::=