[Scummvm-git-logs] scummvm master -> 9198d7364ac507369bf6b88b953f85da89b4c5e3
djsrv
dservilla at gmail.com
Thu Jun 24 04:27:42 UTC 2021
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
a049a0107f DIRECTOR: LINGO: Remove evaluate on pop
3ae6829347 DIRECTOR: LINGO: Add missing func descriptions
d9dfad62d2 DIRECTOR: LINGO: Evaluate var refs in LC::call
9198d7364a DIRECTOR: LINGO: Move field funcs from LB to LC
Commit: a049a0107f21b940d5f1839bdf64987d686288e6
https://github.com/scummvm/scummvm/commit/a049a0107f21b940d5f1839bdf64987d686288e6
Author: djsrv (dservilla at gmail.com)
Date: 2021-06-24T00:21:24-04:00
Commit Message:
DIRECTOR: LINGO: Remove evaluate on pop
Grammar changes have made this hack unnecessary.
Changed paths:
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-bytecode.cpp
engines/director/lingo/lingo-code.cpp
engines/director/lingo/lingo.h
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 8656023362..9c2b130ecc 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -498,7 +498,7 @@ void LB::b_charToNum(int nargs) {
}
void LB::b_delete(int nargs) {
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
Datum field;
int start, end;
@@ -549,7 +549,7 @@ void LB::b_delete(int nargs) {
}
void LB::b_hilite(int nargs) {
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
int fieldId, start, end;
if (d.isCastRef()) {
diff --git a/engines/director/lingo/lingo-bytecode.cpp b/engines/director/lingo/lingo-bytecode.cpp
index 3bf74841c5..ed0bc00dda 100644
--- a/engines/director/lingo/lingo-bytecode.cpp
+++ b/engines/director/lingo/lingo-bytecode.cpp
@@ -406,7 +406,7 @@ void LC::cb_localcall() {
void LC::cb_objectcall() {
int varType = g_lingo->readInt();
- Datum varId = g_lingo->pop(false);
+ Datum varId = g_lingo->pop();
Datum nargs = g_lingo->pop();
Datum var = g_lingo->findVarV4(varType, varId);
@@ -436,7 +436,7 @@ void LC::cb_v4assign() {
int arg = g_lingo->readInt();
int op = (arg >> 4) & 0xF;
int varType = arg & 0xF;
- Datum varId = g_lingo->pop(false);
+ Datum varId = g_lingo->pop();
Datum var = g_lingo->findVarV4(varType, varId);
g_lingo->push(var);
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index 711a007c5a..a741df30d5 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -188,25 +188,19 @@ void Lingo::pushVoid() {
push(d);
}
-Datum Lingo::pop(bool eval) {
+Datum Lingo::pop() {
assert (_stack.size() != 0);
Datum ret = _stack.back();
_stack.pop_back();
- if (eval) {
- ret = ret.eval();
- }
return ret;
}
-Datum Lingo::peek(uint offset, bool eval) {
+Datum Lingo::peek(uint offset) {
assert (_stack.size() > offset);
Datum ret = _stack[_stack.size() - 1 - offset];
- if (eval) {
- ret = ret.eval();
- }
return ret;
}
@@ -465,25 +459,25 @@ void LC::c_proprefpush() {
void LC::c_varpush() {
LC::c_varrefpush();
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
g_lingo->push(g_lingo->varFetch(d));
}
void LC::c_globalpush() {
LC::c_globalrefpush();
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
g_lingo->push(g_lingo->varFetch(d));
}
void LC::c_localpush() {
LC::c_localrefpush();
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
g_lingo->push(g_lingo->varFetch(d));
}
void LC::c_proppush() {
LC::c_proprefpush();
- Datum d = g_lingo->pop(false);
+ Datum d = g_lingo->pop();
g_lingo->push(g_lingo->varFetch(d));
}
@@ -501,7 +495,7 @@ void LC::c_stackdrop() {
void LC::c_assign() {
Datum d1, d2;
- d1 = g_lingo->pop(false);
+ d1 = g_lingo->pop();
d2 = g_lingo->pop();
g_lingo->varAssign(d1, d2);
@@ -773,7 +767,7 @@ void LC::c_ampersand() {
}
void LC::c_putbefore() {
- Datum var = g_lingo->pop(false);
+ Datum var = g_lingo->pop();
Datum a = g_lingo->pop();
Datum b = g_lingo->varFetch(var);
@@ -782,7 +776,7 @@ void LC::c_putbefore() {
}
void LC::c_putafter() {
- Datum var = g_lingo->pop(false);
+ Datum var = g_lingo->pop();
Datum a = g_lingo->pop();
Datum b = g_lingo->varFetch(var);
@@ -1026,7 +1020,7 @@ void LC::c_of() {
}
void LC::c_charToOfRef() {
- Datum src = g_lingo->pop(false);
+ Datum src = g_lingo->pop();
Datum indexTo = g_lingo->pop();
Datum indexFrom = g_lingo->pop();
@@ -1042,12 +1036,12 @@ void LC::c_charToOfRef() {
void LC::c_charToOf() {
LC::c_charToOfRef();
- Datum ref = g_lingo->pop(false);
+ Datum ref = g_lingo->pop();
g_lingo->push(ref.eval());
}
void LC::c_itemToOfRef() {
- Datum src = g_lingo->pop(false);
+ Datum src = g_lingo->pop();
Datum indexTo = g_lingo->pop();
Datum indexFrom = g_lingo->pop();
@@ -1063,12 +1057,12 @@ void LC::c_itemToOfRef() {
void LC::c_itemToOf() {
LC::c_itemToOfRef();
- Datum ref = g_lingo->pop(false);
+ Datum ref = g_lingo->pop();
g_lingo->push(ref.eval());
}
void LC::c_lineToOfRef() {
- Datum src = g_lingo->pop(false);
+ Datum src = g_lingo->pop();
Datum indexTo = g_lingo->pop();
Datum indexFrom = g_lingo->pop();
@@ -1084,12 +1078,12 @@ void LC::c_lineToOfRef() {
void LC::c_lineToOf() {
LC::c_lineToOfRef();
- Datum ref = g_lingo->pop(false);
+ Datum ref = g_lingo->pop();
g_lingo->push(ref.eval());
}
void LC::c_wordToOfRef() {
- Datum src = g_lingo->pop(false);
+ Datum src = g_lingo->pop();
Datum indexTo = g_lingo->pop();
Datum indexFrom = g_lingo->pop();
@@ -1105,7 +1099,7 @@ void LC::c_wordToOfRef() {
void LC::c_wordToOf() {
LC::c_wordToOfRef();
- Datum ref = g_lingo->pop(false);
+ Datum ref = g_lingo->pop();
g_lingo->push(ref.eval());
}
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index e3a031959c..8900109282 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -374,8 +374,8 @@ public:
public:
void push(Datum d);
- Datum pop(bool eval = true);
- Datum peek(uint offset, bool eval = true);
+ Datum pop();
+ Datum peek(uint offset);
public:
Common::HashMap<uint32, const char *> _eventHandlerTypes;
Commit: 3ae6829347334ccce15447ad6d865893f7f81be3
https://github.com/scummvm/scummvm/commit/3ae6829347334ccce15447ad6d865893f7f81be3
Author: djsrv (dservilla at gmail.com)
Date: 2021-06-24T00:21:24-04:00
Commit Message:
DIRECTOR: LINGO: Add missing func descriptions
Changed paths:
engines/director/lingo/lingo-code.cpp
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index a741df30d5..d3bf55d890 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -77,6 +77,7 @@ static struct FuncDescr {
{ LC::c_callcmd, "c_callcmd", "si" },
{ LC::c_callfunc, "c_callfunc", "si" },
{ LC::c_charToOf, "c_charToOf", "" }, // D3
+ { LC::c_charToOfRef, "c_charToOfRef", "" }, // D3
{ LC::c_concat, "c_concat", "" },
{ LC::c_constpush, "c_constpush", "s" },
{ LC::c_contains, "c_contains", "" },
@@ -91,10 +92,12 @@ static struct FuncDescr {
{ LC::c_intersects, "c_intersects", "" },
{ LC::c_intpush, "c_intpush", "i" },
{ LC::c_itemToOf, "c_itemToOf", "" }, // D3
+ { LC::c_itemToOfRef, "c_itemToOfRef", "" }, // D3
{ LC::c_jump, "c_jump", "o" },
{ LC::c_jumpifz, "c_jumpifz", "o" },
{ LC::c_le, "c_le", "" },
{ LC::c_lineToOf, "c_lineToOf", "" }, // D3
+ { LC::c_lineToOfRef, "c_lineToOfRef", "" }, // D3
{ LC::c_localpush, "c_localpush", "s" },
{ LC::c_localrefpush, "c_localrefpush", "s" },
{ LC::c_lt, "c_lt", "" },
@@ -131,6 +134,7 @@ static struct FuncDescr {
{ LC::c_whencode, "c_whencode", "s" },
{ LC::c_within, "c_within", "" },
{ LC::c_wordToOf, "c_wordToOf", "" }, // D3
+ { LC::c_wordToOfRef, "c_wordToOfRef", "" }, // D3
{ LC::c_xpop, "c_xpop", "" },
{ LC::cb_call, "cb_call", "N" },
{ LC::cb_delete, "cb_delete", "i" },
Commit: d9dfad62d283d607d12747e1144aeea7eec755d6
https://github.com/scummvm/scummvm/commit/d9dfad62d283d607d12747e1144aeea7eec755d6
Author: djsrv (dservilla at gmail.com)
Date: 2021-06-24T00:21:25-04:00
Commit Message:
DIRECTOR: LINGO: Evaluate var refs in LC::call
Changed paths:
engines/director/lingo/lingo-code.cpp
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index d3bf55d890..b3f68aa00e 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -1403,7 +1403,7 @@ void LC::call(const Common::String &name, int nargs, bool allowRetVal) {
}
return;
}
- firstArg = firstArg.eval();
+ firstArg = g_lingo->_stack[g_lingo->_stack.size() - nargs] = firstArg.eval();
}
// Script/Xtra method call
Commit: 9198d7364ac507369bf6b88b953f85da89b4c5e3
https://github.com/scummvm/scummvm/commit/9198d7364ac507369bf6b88b953f85da89b4c5e3
Author: djsrv (dservilla at gmail.com)
Date: 2021-06-24T00:26:15-04:00
Commit Message:
DIRECTOR: LINGO: Move field funcs from LB to LC
field, delete, and hilite were implemented as their own instructions in
the original. This also avoids having refs evaluated by LC::call.
Changed paths:
engines/director/lingo/lingo-ast.h
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-builtins.h
engines/director/lingo/lingo-bytecode.cpp
engines/director/lingo/lingo-code.cpp
engines/director/lingo/lingo-code.h
engines/director/lingo/lingo-codegen.cpp
engines/director/lingo/lingo-codegen.h
engines/director/lingo/lingo-gr.cpp
engines/director/lingo/lingo-gr.h
engines/director/lingo/lingo-gr.y
engines/director/lingo/lingo-lex.cpp
engines/director/lingo/lingo-lex.l
diff --git a/engines/director/lingo/lingo-ast.h b/engines/director/lingo/lingo-ast.h
index 0b8c9189eb..341d147a24 100644
--- a/engines/director/lingo/lingo-ast.h
+++ b/engines/director/lingo/lingo-ast.h
@@ -47,6 +47,8 @@ struct ExitRepeatNode;
struct ExitNode;
struct TellNode;
struct WhenNode;
+struct DeleteNode;
+struct HiliteNode;
struct AssertErrorNode;
struct IntNode;
struct FloatNode;
@@ -110,6 +112,8 @@ enum NodeType {
kExitNode,
kTellNode,
kWhenNode,
+ kDeleteNode,
+ kHiliteNode,
kAssertErrorNode,
kIntNode,
kFloatNode,
@@ -175,6 +179,8 @@ public:
virtual bool visitExitNode(ExitNode *node) = 0;
virtual bool visitTellNode(TellNode *node) = 0;
virtual bool visitWhenNode(WhenNode *node) = 0;
+ virtual bool visitDeleteNode(DeleteNode *node) = 0;
+ virtual bool visitHiliteNode(HiliteNode *node) = 0;
virtual bool visitAssertErrorNode(AssertErrorNode *node) = 0;
virtual bool visitIntNode(IntNode *node) = 0;
virtual bool visitFloatNode(FloatNode *node) = 0;
@@ -582,6 +588,34 @@ struct WhenNode : StmtNode {
}
};
+/* DeleteNode */
+
+struct DeleteNode : StmtNode {
+ Node *chunk;
+
+ DeleteNode(Node *chunkIn) : StmtNode(kDeleteNode), chunk(chunkIn) {}
+ virtual ~DeleteNode() {
+ delete chunk;
+ }
+ virtual bool accept(NodeVisitor *visitor) {
+ return visitor->visitDeleteNode(this);
+ }
+};
+
+/* HiliteNode */
+
+struct HiliteNode : StmtNode {
+ Node *chunk;
+
+ HiliteNode(Node *chunkIn) : StmtNode(kHiliteNode), chunk(chunkIn) {}
+ virtual ~HiliteNode() {
+ delete chunk;
+ }
+ virtual bool accept(NodeVisitor *visitor) {
+ return visitor->visitHiliteNode(this);
+ }
+};
+
/* AssertErrorNode */
struct AssertErrorNode : StmtNode {
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 9c2b130ecc..6e61483372 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -27,7 +27,6 @@
#include "graphics/macgui/macwindowmanager.h"
#include "graphics/macgui/macmenu.h"
-#include "graphics/macgui/mactext.h"
#include "director/director.h"
#include "director/cast.h"
@@ -107,8 +106,6 @@ static struct BuiltinProto {
// String
{ "chars", LB::b_chars, 3, 3, true, 200, FBLTIN }, // D2 f
{ "charToNum", LB::b_charToNum, 1, 1, true, 200, FBLTIN }, // D2 f
- { "delete", LB::b_delete, 1, 1, true, 300, CBLTIN }, // D3 command
- { "hilite", LB::b_hilite, 1, 1, true, 300, CBLTIN }, // D3 c
{ "length", LB::b_length, 1, 1, true, 200, FBLTIN }, // D2 f
{ "numToChar", LB::b_numToChar, 1, 1, true, 200, FBLTIN }, // D2 f
{ "offset", LB::b_offset, 2, 3, true, 200, FBLTIN }, // D2 f
@@ -254,7 +251,6 @@ static struct BuiltinProto {
{ "version", LB::b_version, 0, 0, false, 300, KBLTIN }, // D3 k
// References
{ "cast", LB::b_cast, 1, 1, false, 400, FBLTIN }, // D4 f
- { "field", LB::b_field, 1, 1, false, 300, FBLTIN }, // D3 f
{ "script", LB::b_script, 1, 1, false, 400, FBLTIN }, // D4 f
{ "window", LB::b_window, 1, 1, false, 400, FBLTIN }, // D4 f
// Chunk operations
@@ -497,94 +493,6 @@ void LB::b_charToNum(int nargs) {
g_lingo->push(res);
}
-void LB::b_delete(int nargs) {
- Datum d = g_lingo->pop();
-
- Datum field;
- int start, end;
- if (d.type == CHUNKREF) {
- if (d.u.cref->source.isVarRef() || d.u.cref->source.isCastRef()) {
- field = d.u.cref->source;
- start = d.u.cref->start;
- end = d.u.cref->end;
- } else {
- warning("BUILDBOT: b_delete: bad chunk ref field type: %s", d.u.cref->source.type2str());
- return;
- }
- } else if (d.isRef()) {
- field = d;
- start = 0;
- end = -1;
- } else {
- warning("BUILDBOT: b_delete: bad field type: %s", d.type2str());
- return;
- }
-
- if (start < 0)
- return;
-
- Common::String text = g_lingo->varFetch(field).asString();
- if (d.type == CHUNKREF) {
- switch (d.u.cref->type) {
- case kChunkChar:
- break;
- case kChunkWord:
- while (end < (int)text.size() && Common::isSpace(text[end]))
- end++;
- break;
- case kChunkItem:
- case kChunkLine:
- // last char of the first portion is the delimiter. skip it.
- if (start > 0)
- start--;
- break;
- }
- }
-
- Common::String res = text.substr(0, start) + text.substr(end);
- Datum s;
- s.u.s = new Common::String(res);
- s.type = STRING;
- g_lingo->varAssign(field, s);
-}
-
-void LB::b_hilite(int nargs) {
- Datum d = g_lingo->pop();
-
- int fieldId, start, end;
- if (d.isCastRef()) {
- fieldId = d.u.i;
- start = 0;
- end = -1;
- } else if (d.type == CHUNKREF) {
- if (d.u.cref->source.isCastRef()) {
- fieldId = d.u.cref->source.u.i;
- start = d.u.cref->start;
- end = d.u.cref->end;
- } else {
- warning("BUILDBOT: b_delete: bad chunk ref field type: %s", d.u.cref->source.type2str());
- return;
- }
- } else {
- warning("BUILDBOT: b_hilite: bad field type: %s", d.type2str());
- return;
- }
-
- if (start < 0)
- return;
-
- Score *score = g_director->getCurrentMovie()->getScore();
- uint16 spriteId = score->getSpriteIdByMemberId(fieldId);
- if (spriteId == 0)
- return;
-
- Channel *channel = score->getChannelById(spriteId);
- if (channel->_sprite->_cast && channel->_sprite->_cast->_type == kCastText && channel->_widget) {
- ((Graphics::MacText *)channel->_widget)->setSelection(start, true);
- ((Graphics::MacText *)channel->_widget)->setSelection(end, false);
- }
-}
-
void LB::b_length(int nargs) {
Datum d = g_lingo->pop();
TYPECHECK(d, STRING);
@@ -2463,13 +2371,6 @@ void LB::b_cast(int nargs) {
g_lingo->push(res);
}
-void LB::b_field(int nargs) {
- Datum d = g_lingo->pop();
- Datum res = d.asCastId();
- res.type = FIELDREF;
- g_lingo->push(res);
-}
-
void LB::b_script(int nargs) {
Datum d = g_lingo->pop();
int castId = d.asCastId();
diff --git a/engines/director/lingo/lingo-builtins.h b/engines/director/lingo/lingo-builtins.h
index bca1b193d1..9ef1e7b67b 100644
--- a/engines/director/lingo/lingo-builtins.h
+++ b/engines/director/lingo/lingo-builtins.h
@@ -44,8 +44,6 @@ void b_tan(int nargs);
void b_chars(int nargs);
void b_charToNum(int nargs);
-void b_delete(int nargs);
-void b_hilite(int nargs);
void b_length(int nargs);
void b_numToChar(int nargs);
void b_offset(int nargs);
@@ -187,7 +185,6 @@ void b_true(int nargs);
void b_version(int nargs);
void b_cast(int nargs);
-void b_field(int nargs);
void b_script(int nargs);
void b_numberofchars(int nargs);
diff --git a/engines/director/lingo/lingo-bytecode.cpp b/engines/director/lingo/lingo-bytecode.cpp
index ed0bc00dda..2ed91411a3 100644
--- a/engines/director/lingo/lingo-bytecode.cpp
+++ b/engines/director/lingo/lingo-bytecode.cpp
@@ -63,10 +63,10 @@ static LingoV4Bytecode lingoV4[] = {
{ 0x15, LC::c_contains, "" },
{ 0x16, LC::c_starts, "" },
{ 0x17, LC::c_of, "" },
- { 0x18, LC::c_hilite, "" },
+ { 0x18, LC::cb_hilite, "" },
{ 0x19, LC::c_intersects, "" },
{ 0x1a, LC::c_within, "" },
- { 0x1b, LC::cb_field, "" },
+ { 0x1b, LC::c_field, "" },
{ 0x1c, LC::c_tell, "" },
{ 0x1d, LC::c_telldone, "" },
{ 0x1e, LC::cb_list, "" },
@@ -378,14 +378,17 @@ void LC::cb_delete() {
Datum var = g_lingo->findVarV4(varType, varID);
Datum chunkRef = readChunkRef(var);
g_lingo->push(chunkRef);
- LB::b_delete(1);
+ LC::c_delete();
}
-void LC::cb_field() {
- LB::b_field(1);
+void LC::cb_hilite() {
+ Datum fieldID = g_lingo->pop().asCastId();
+ fieldID.type = FIELDREF;
+ Datum chunkRef = readChunkRef(fieldID);
+ g_lingo->push(chunkRef);
+ LC::c_hilite();
}
-
void LC::cb_localcall() {
int functionId = g_lingo->readInt();
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index b3f68aa00e..1fafa47941 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -43,7 +43,11 @@
// ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
// THIS SOFTWARE.
+#include "graphics/macgui/macwindowmanager.h"
+#include "graphics/macgui/mactext.h"
+
#include "director/director.h"
+#include "director/castmember.h"
#include "director/movie.h"
#include "director/score.h"
#include "director/sprite.h"
@@ -81,8 +85,11 @@ static struct FuncDescr {
{ LC::c_concat, "c_concat", "" },
{ LC::c_constpush, "c_constpush", "s" },
{ LC::c_contains, "c_contains", "" },
+ { LC::c_delete, "c_delete", "" },
{ LC::c_div, "c_div", "" },
{ LC::c_eq, "c_eq", "" },
+ { LC::c_field, "c_field", "" },
+ { LC::c_fieldref, "c_fieldref", "" },
{ LC::c_floatpush, "c_floatpush", "f" },
{ LC::c_globalpush, "c_globalpush", "s" },
{ LC::c_globalrefpush, "c_globalrefpush", "s" },
@@ -138,7 +145,7 @@ static struct FuncDescr {
{ LC::c_xpop, "c_xpop", "" },
{ LC::cb_call, "cb_call", "N" },
{ LC::cb_delete, "cb_delete", "i" },
- { LC::cb_field, "cb_field", "" },
+ { LC::cb_hilite, "cb_hilite", "" },
{ LC::cb_globalassign, "cb_globalassign", "N" },
{ LC::cb_globalpush, "cb_globalpush", "N" },
{ LC::cb_list, "cb_list", "" },
@@ -1565,12 +1572,106 @@ void LC::c_procret() {
}
}
+void LC::c_delete() {
+ Datum d = g_lingo->pop();
+
+ Datum field;
+ int start, end;
+ if (d.type == CHUNKREF) {
+ if (d.u.cref->source.isVarRef() || d.u.cref->source.isCastRef()) {
+ field = d.u.cref->source;
+ start = d.u.cref->start;
+ end = d.u.cref->end;
+ } else {
+ warning("BUILDBOT: c_delete: bad chunk ref field type: %s", d.u.cref->source.type2str());
+ return;
+ }
+ } else if (d.isRef()) {
+ field = d;
+ start = 0;
+ end = -1;
+ } else {
+ warning("BUILDBOT: c_delete: bad field type: %s", d.type2str());
+ return;
+ }
+
+ if (start < 0)
+ return;
+
+ Common::String text = g_lingo->varFetch(field).asString();
+ if (d.type == CHUNKREF) {
+ switch (d.u.cref->type) {
+ case kChunkChar:
+ break;
+ case kChunkWord:
+ while (end < (int)text.size() && Common::isSpace(text[end]))
+ end++;
+ break;
+ case kChunkItem:
+ case kChunkLine:
+ // last char of the first portion is the delimiter. skip it.
+ if (start > 0)
+ start--;
+ break;
+ }
+ }
+
+ Common::String res = text.substr(0, start) + text.substr(end);
+ Datum s;
+ s.u.s = new Common::String(res);
+ s.type = STRING;
+ g_lingo->varAssign(field, s);
+}
+
void LC::c_hilite() {
- Datum fieldID = g_lingo->pop().asCastId();
- fieldID.type = FIELDREF;
- Datum chunkRef = readChunkRef(fieldID);
- g_lingo->push(chunkRef);
- LB::b_hilite(1);
+ Datum d = g_lingo->pop();
+
+ int fieldId, start, end;
+ if (d.isCastRef()) {
+ fieldId = d.u.i;
+ start = 0;
+ end = -1;
+ } else if (d.type == CHUNKREF) {
+ if (d.u.cref->source.isCastRef()) {
+ fieldId = d.u.cref->source.u.i;
+ start = d.u.cref->start;
+ end = d.u.cref->end;
+ } else {
+ warning("BUILDBOT: c_delete: bad chunk ref field type: %s", d.u.cref->source.type2str());
+ return;
+ }
+ } else {
+ warning("BUILDBOT: c_hilite: bad field type: %s", d.type2str());
+ return;
+ }
+
+ if (start < 0)
+ return;
+
+ Score *score = g_director->getCurrentMovie()->getScore();
+ uint16 spriteId = score->getSpriteIdByMemberId(fieldId);
+ if (spriteId == 0)
+ return;
+
+ Channel *channel = score->getChannelById(spriteId);
+ if (channel->_sprite->_cast && channel->_sprite->_cast->_type == kCastText && channel->_widget) {
+ ((Graphics::MacText *)channel->_widget)->setSelection(start, true);
+ ((Graphics::MacText *)channel->_widget)->setSelection(end, false);
+ }
+}
+
+void LC::c_fieldref() {
+ Datum d = g_lingo->pop();
+ Datum res = d.asCastId();
+ res.type = FIELDREF;
+ g_lingo->push(res);
+}
+
+void LC::c_field() {
+ LC::c_fieldref();
+ Datum d = g_lingo->pop();
+ Datum ref = d.eval();
+ g_lingo->push(ref.eval());
}
void LC::c_asserterror() {
diff --git a/engines/director/lingo/lingo-code.h b/engines/director/lingo/lingo-code.h
index b2b7ce49b8..6a9014f0ca 100644
--- a/engines/director/lingo/lingo-code.h
+++ b/engines/director/lingo/lingo-code.h
@@ -132,7 +132,10 @@ void c_mci();
void c_mciwait();
void c_open();
+void c_delete();
void c_hilite();
+void c_field();
+void c_fieldref();
// custom instructions for testing
void c_asserterror();
@@ -146,7 +149,7 @@ void cb_unk2();
// bytecode-related instructions
void cb_call();
void cb_delete();
-void cb_field();
+void cb_hilite();
void cb_globalassign();
void cb_globalpush();
void cb_list();
diff --git a/engines/director/lingo/lingo-codegen.cpp b/engines/director/lingo/lingo-codegen.cpp
index fc203582f6..ff259614ef 100644
--- a/engines/director/lingo/lingo-codegen.cpp
+++ b/engines/director/lingo/lingo-codegen.cpp
@@ -536,12 +536,6 @@ bool LingoCompiler::visitCmdNode(CmdNode *node) {
}
}
- if ((node->name->equalsIgnoreCase("delete") || node->name->equalsIgnoreCase("hilite")) && node->args->size() == 1) {
- COMPILE_REF((*node->args)[0]);
- codeCmd(*node->name, 1);
- return true;
- }
-
if (node->args->size() >= 1 && (*node->args)[0]->type == kVarNode) {
// This could be a method call. Code the first arg as a reference.
COMPILE_REF((*node->args)[0]);
@@ -965,6 +959,22 @@ bool LingoCompiler::visitWhenNode(WhenNode *node) {
return true;
}
+/* DeleteNode */
+
+bool LingoCompiler::visitDeleteNode(DeleteNode *node) {
+ COMPILE_REF(node->chunk);
+ code1(LC::c_delete);
+ return true;
+}
+
+/* HiliteNode */
+
+bool LingoCompiler::visitHiliteNode(HiliteNode *node) {
+ COMPILE_REF(node->chunk);
+ code1(LC::c_hilite);
+ return true;
+}
+
/* AssertErrorNode */
bool LingoCompiler::visitAssertErrorNode(AssertErrorNode *node) {
@@ -1035,6 +1045,16 @@ bool LingoCompiler::visitPropPairNode(PropPairNode *node) {
/* FuncNode */
bool LingoCompiler::visitFuncNode(FuncNode *node) {
+ if (node->name->equalsIgnoreCase("field") && node->args->size() >= 1) {
+ COMPILE((*node->args)[0]);
+ if (_refMode) {
+ code1(LC::c_fieldref);
+ } else {
+ code1(LC::c_field);
+ }
+ return true;
+ }
+
if (node->args->size() >= 1 && (*node->args)[0]->type == kVarNode) {
// This could be a method call. Code the first arg as a reference.
COMPILE_REF((*node->args)[0]);
diff --git a/engines/director/lingo/lingo-codegen.h b/engines/director/lingo/lingo-codegen.h
index ace393c312..1c3e08db9e 100644
--- a/engines/director/lingo/lingo-codegen.h
+++ b/engines/director/lingo/lingo-codegen.h
@@ -96,6 +96,8 @@ public:
virtual bool visitExitNode(ExitNode *node);
virtual bool visitTellNode(TellNode *node);
virtual bool visitWhenNode(WhenNode *node);
+ virtual bool visitDeleteNode(DeleteNode *node);
+ virtual bool visitHiliteNode(HiliteNode *node);
virtual bool visitAssertErrorNode(AssertErrorNode *node);
virtual bool visitIntNode(IntNode *node);
virtual bool visitFloatNode(FloatNode *node);
diff --git a/engines/director/lingo/lingo-gr.cpp b/engines/director/lingo/lingo-gr.cpp
index 521810d696..b9b0cc9e34 100644
--- a/engines/director/lingo/lingo-gr.cpp
+++ b/engines/director/lingo/lingo-gr.cpp
@@ -168,160 +168,162 @@ enum yysymbol_kind_t
YYSYMBOL_tFIELD = 12, /* tFIELD */
YYSYMBOL_tSCRIPT = 13, /* tSCRIPT */
YYSYMBOL_tWINDOW = 14, /* tWINDOW */
- YYSYMBOL_tDOWN = 15, /* tDOWN */
- YYSYMBOL_tELSE = 16, /* tELSE */
- YYSYMBOL_tELSIF = 17, /* tELSIF */
- YYSYMBOL_tEXIT = 18, /* tEXIT */
- YYSYMBOL_tFRAME = 19, /* tFRAME */
- YYSYMBOL_tGLOBAL = 20, /* tGLOBAL */
- YYSYMBOL_tGO = 21, /* tGO */
- YYSYMBOL_tIF = 22, /* tIF */
- YYSYMBOL_tIN = 23, /* tIN */
- YYSYMBOL_tINTO = 24, /* tINTO */
- YYSYMBOL_tMACRO = 25, /* tMACRO */
- YYSYMBOL_tMOVIE = 26, /* tMOVIE */
- YYSYMBOL_tNEXT = 27, /* tNEXT */
- YYSYMBOL_tOF = 28, /* tOF */
- YYSYMBOL_tPREVIOUS = 29, /* tPREVIOUS */
- YYSYMBOL_tPUT = 30, /* tPUT */
- YYSYMBOL_tREPEAT = 31, /* tREPEAT */
- YYSYMBOL_tSET = 32, /* tSET */
- YYSYMBOL_tTHEN = 33, /* tTHEN */
- YYSYMBOL_tTO = 34, /* tTO */
- YYSYMBOL_tWHEN = 35, /* tWHEN */
- YYSYMBOL_tWITH = 36, /* tWITH */
- YYSYMBOL_tWHILE = 37, /* tWHILE */
- YYSYMBOL_tFACTORY = 38, /* tFACTORY */
- YYSYMBOL_tOPEN = 39, /* tOPEN */
- YYSYMBOL_tPLAY = 40, /* tPLAY */
- YYSYMBOL_tINSTANCE = 41, /* tINSTANCE */
- YYSYMBOL_tGE = 42, /* tGE */
- YYSYMBOL_tLE = 43, /* tLE */
- YYSYMBOL_tEQ = 44, /* tEQ */
- YYSYMBOL_tNEQ = 45, /* tNEQ */
- YYSYMBOL_tAND = 46, /* tAND */
- YYSYMBOL_tOR = 47, /* tOR */
- YYSYMBOL_tNOT = 48, /* tNOT */
- YYSYMBOL_tMOD = 49, /* tMOD */
- YYSYMBOL_tAFTER = 50, /* tAFTER */
- YYSYMBOL_tBEFORE = 51, /* tBEFORE */
- YYSYMBOL_tCONCAT = 52, /* tCONCAT */
- YYSYMBOL_tCONTAINS = 53, /* tCONTAINS */
- YYSYMBOL_tSTARTS = 54, /* tSTARTS */
- YYSYMBOL_tCHAR = 55, /* tCHAR */
- YYSYMBOL_tCHARS = 56, /* tCHARS */
- YYSYMBOL_tITEM = 57, /* tITEM */
- YYSYMBOL_tITEMS = 58, /* tITEMS */
- YYSYMBOL_tLINE = 59, /* tLINE */
- YYSYMBOL_tLINES = 60, /* tLINES */
- YYSYMBOL_tWORD = 61, /* tWORD */
- YYSYMBOL_tWORDS = 62, /* tWORDS */
- YYSYMBOL_tABBREVIATED = 63, /* tABBREVIATED */
- YYSYMBOL_tABBREV = 64, /* tABBREV */
- YYSYMBOL_tABBR = 65, /* tABBR */
- YYSYMBOL_tLONG = 66, /* tLONG */
- YYSYMBOL_tSHORT = 67, /* tSHORT */
- YYSYMBOL_tCASTMEMBERS = 68, /* tCASTMEMBERS */
- YYSYMBOL_tDATE = 69, /* tDATE */
- YYSYMBOL_tLAST = 70, /* tLAST */
- YYSYMBOL_tMENU = 71, /* tMENU */
- YYSYMBOL_tMENUITEM = 72, /* tMENUITEM */
- YYSYMBOL_tMENUITEMS = 73, /* tMENUITEMS */
- YYSYMBOL_tNUMBER = 74, /* tNUMBER */
- YYSYMBOL_tTHE = 75, /* tTHE */
- YYSYMBOL_tTIME = 76, /* tTIME */
- YYSYMBOL_tSOUND = 77, /* tSOUND */
- YYSYMBOL_tSPRITE = 78, /* tSPRITE */
- YYSYMBOL_tINTERSECTS = 79, /* tINTERSECTS */
- YYSYMBOL_tWITHIN = 80, /* tWITHIN */
- YYSYMBOL_tTELL = 81, /* tTELL */
- YYSYMBOL_tPROPERTY = 82, /* tPROPERTY */
- YYSYMBOL_tON = 83, /* tON */
- YYSYMBOL_tMETHOD = 84, /* tMETHOD */
- YYSYMBOL_tENDIF = 85, /* tENDIF */
- YYSYMBOL_tENDREPEAT = 86, /* tENDREPEAT */
- YYSYMBOL_tENDTELL = 87, /* tENDTELL */
- YYSYMBOL_tASSERTERROR = 88, /* tASSERTERROR */
- YYSYMBOL_89_ = 89, /* '<' */
- YYSYMBOL_90_ = 90, /* '>' */
- YYSYMBOL_91_ = 91, /* '&' */
- YYSYMBOL_92_ = 92, /* '+' */
- YYSYMBOL_93_ = 93, /* '-' */
- YYSYMBOL_94_ = 94, /* '*' */
- YYSYMBOL_95_ = 95, /* '/' */
- YYSYMBOL_96_ = 96, /* '%' */
- YYSYMBOL_97_n_ = 97, /* '\n' */
- YYSYMBOL_98_ = 98, /* ',' */
- YYSYMBOL_99_ = 99, /* '(' */
- YYSYMBOL_100_ = 100, /* ')' */
- YYSYMBOL_101_ = 101, /* '[' */
- YYSYMBOL_102_ = 102, /* ']' */
- YYSYMBOL_103_ = 103, /* ':' */
- YYSYMBOL_YYACCEPT = 104, /* $accept */
- YYSYMBOL_script = 105, /* script */
- YYSYMBOL_scriptpartlist = 106, /* scriptpartlist */
- YYSYMBOL_scriptpart = 107, /* scriptpart */
- YYSYMBOL_macro = 108, /* macro */
- YYSYMBOL_factory = 109, /* factory */
- YYSYMBOL_method = 110, /* method */
- YYSYMBOL_methodlist = 111, /* methodlist */
- YYSYMBOL_nonemptymethodlist = 112, /* nonemptymethodlist */
- YYSYMBOL_methodlistline = 113, /* methodlistline */
- YYSYMBOL_handler = 114, /* handler */
- YYSYMBOL_endargdef = 115, /* endargdef */
- YYSYMBOL_CMDID = 116, /* CMDID */
- YYSYMBOL_ID = 117, /* ID */
- YYSYMBOL_idlist = 118, /* idlist */
- YYSYMBOL_nonemptyidlist = 119, /* nonemptyidlist */
- YYSYMBOL_stmt = 120, /* stmt */
- YYSYMBOL_stmt_insideif = 121, /* stmt_insideif */
- YYSYMBOL_stmtoneliner = 122, /* stmtoneliner */
- YYSYMBOL_proc = 123, /* proc */
- YYSYMBOL_cmdargs = 124, /* cmdargs */
- YYSYMBOL_trailingcomma = 125, /* trailingcomma */
- YYSYMBOL_frameargs = 126, /* frameargs */
- YYSYMBOL_asgn = 127, /* asgn */
- YYSYMBOL_to = 128, /* to */
- YYSYMBOL_definevars = 129, /* definevars */
- YYSYMBOL_ifstmt = 130, /* ifstmt */
- YYSYMBOL_ifelsestmt = 131, /* ifelsestmt */
- YYSYMBOL_endif = 132, /* endif */
- YYSYMBOL_loop = 133, /* loop */
- YYSYMBOL_tell = 134, /* tell */
- YYSYMBOL_when = 135, /* when */
- YYSYMBOL_stmtlist = 136, /* stmtlist */
- YYSYMBOL_nonemptystmtlist = 137, /* nonemptystmtlist */
- YYSYMBOL_stmtlistline = 138, /* stmtlistline */
- YYSYMBOL_stmtlist_insideif = 139, /* stmtlist_insideif */
- YYSYMBOL_nonemptystmtlist_insideif = 140, /* nonemptystmtlist_insideif */
- YYSYMBOL_stmtlistline_insideif = 141, /* stmtlistline_insideif */
- YYSYMBOL_simpleexpr_nounarymath = 142, /* simpleexpr_nounarymath */
- YYSYMBOL_var = 143, /* var */
- YYSYMBOL_varorchunk = 144, /* varorchunk */
- YYSYMBOL_varorthe = 145, /* varorthe */
- YYSYMBOL_chunk = 146, /* chunk */
- YYSYMBOL_object = 147, /* object */
- YYSYMBOL_refargs = 148, /* refargs */
- YYSYMBOL_the = 149, /* the */
- YYSYMBOL_theobj = 150, /* theobj */
- YYSYMBOL_menu = 151, /* menu */
- YYSYMBOL_thedatetime = 152, /* thedatetime */
- YYSYMBOL_thenumberof = 153, /* thenumberof */
- YYSYMBOL_chunktype = 154, /* chunktype */
- YYSYMBOL_inof = 155, /* inof */
- YYSYMBOL_writablethe = 156, /* writablethe */
- YYSYMBOL_writabletheobj = 157, /* writabletheobj */
- YYSYMBOL_list = 158, /* list */
- YYSYMBOL_proplist = 159, /* proplist */
- YYSYMBOL_proppair = 160, /* proppair */
- YYSYMBOL_unarymath = 161, /* unarymath */
- YYSYMBOL_simpleexpr = 162, /* simpleexpr */
- YYSYMBOL_expr = 163, /* expr */
- YYSYMBOL_expr_nounarymath = 164, /* expr_nounarymath */
- YYSYMBOL_expr_noeq = 165, /* expr_noeq */
- YYSYMBOL_sprite = 166, /* sprite */
- YYSYMBOL_exprlist = 167, /* exprlist */
- YYSYMBOL_nonemptyexprlist = 168 /* nonemptyexprlist */
+ YYSYMBOL_tDELETE = 15, /* tDELETE */
+ YYSYMBOL_tDOWN = 16, /* tDOWN */
+ YYSYMBOL_tELSE = 17, /* tELSE */
+ YYSYMBOL_tELSIF = 18, /* tELSIF */
+ YYSYMBOL_tEXIT = 19, /* tEXIT */
+ YYSYMBOL_tFRAME = 20, /* tFRAME */
+ YYSYMBOL_tGLOBAL = 21, /* tGLOBAL */
+ YYSYMBOL_tGO = 22, /* tGO */
+ YYSYMBOL_tHILITE = 23, /* tHILITE */
+ YYSYMBOL_tIF = 24, /* tIF */
+ YYSYMBOL_tIN = 25, /* tIN */
+ YYSYMBOL_tINTO = 26, /* tINTO */
+ YYSYMBOL_tMACRO = 27, /* tMACRO */
+ YYSYMBOL_tMOVIE = 28, /* tMOVIE */
+ YYSYMBOL_tNEXT = 29, /* tNEXT */
+ YYSYMBOL_tOF = 30, /* tOF */
+ YYSYMBOL_tPREVIOUS = 31, /* tPREVIOUS */
+ YYSYMBOL_tPUT = 32, /* tPUT */
+ YYSYMBOL_tREPEAT = 33, /* tREPEAT */
+ YYSYMBOL_tSET = 34, /* tSET */
+ YYSYMBOL_tTHEN = 35, /* tTHEN */
+ YYSYMBOL_tTO = 36, /* tTO */
+ YYSYMBOL_tWHEN = 37, /* tWHEN */
+ YYSYMBOL_tWITH = 38, /* tWITH */
+ YYSYMBOL_tWHILE = 39, /* tWHILE */
+ YYSYMBOL_tFACTORY = 40, /* tFACTORY */
+ YYSYMBOL_tOPEN = 41, /* tOPEN */
+ YYSYMBOL_tPLAY = 42, /* tPLAY */
+ YYSYMBOL_tINSTANCE = 43, /* tINSTANCE */
+ YYSYMBOL_tGE = 44, /* tGE */
+ YYSYMBOL_tLE = 45, /* tLE */
+ YYSYMBOL_tEQ = 46, /* tEQ */
+ YYSYMBOL_tNEQ = 47, /* tNEQ */
+ YYSYMBOL_tAND = 48, /* tAND */
+ YYSYMBOL_tOR = 49, /* tOR */
+ YYSYMBOL_tNOT = 50, /* tNOT */
+ YYSYMBOL_tMOD = 51, /* tMOD */
+ YYSYMBOL_tAFTER = 52, /* tAFTER */
+ YYSYMBOL_tBEFORE = 53, /* tBEFORE */
+ YYSYMBOL_tCONCAT = 54, /* tCONCAT */
+ YYSYMBOL_tCONTAINS = 55, /* tCONTAINS */
+ YYSYMBOL_tSTARTS = 56, /* tSTARTS */
+ YYSYMBOL_tCHAR = 57, /* tCHAR */
+ YYSYMBOL_tCHARS = 58, /* tCHARS */
+ YYSYMBOL_tITEM = 59, /* tITEM */
+ YYSYMBOL_tITEMS = 60, /* tITEMS */
+ YYSYMBOL_tLINE = 61, /* tLINE */
+ YYSYMBOL_tLINES = 62, /* tLINES */
+ YYSYMBOL_tWORD = 63, /* tWORD */
+ YYSYMBOL_tWORDS = 64, /* tWORDS */
+ YYSYMBOL_tABBREVIATED = 65, /* tABBREVIATED */
+ YYSYMBOL_tABBREV = 66, /* tABBREV */
+ YYSYMBOL_tABBR = 67, /* tABBR */
+ YYSYMBOL_tLONG = 68, /* tLONG */
+ YYSYMBOL_tSHORT = 69, /* tSHORT */
+ YYSYMBOL_tCASTMEMBERS = 70, /* tCASTMEMBERS */
+ YYSYMBOL_tDATE = 71, /* tDATE */
+ YYSYMBOL_tLAST = 72, /* tLAST */
+ YYSYMBOL_tMENU = 73, /* tMENU */
+ YYSYMBOL_tMENUITEM = 74, /* tMENUITEM */
+ YYSYMBOL_tMENUITEMS = 75, /* tMENUITEMS */
+ YYSYMBOL_tNUMBER = 76, /* tNUMBER */
+ YYSYMBOL_tTHE = 77, /* tTHE */
+ YYSYMBOL_tTIME = 78, /* tTIME */
+ YYSYMBOL_tSOUND = 79, /* tSOUND */
+ YYSYMBOL_tSPRITE = 80, /* tSPRITE */
+ YYSYMBOL_tINTERSECTS = 81, /* tINTERSECTS */
+ YYSYMBOL_tWITHIN = 82, /* tWITHIN */
+ YYSYMBOL_tTELL = 83, /* tTELL */
+ YYSYMBOL_tPROPERTY = 84, /* tPROPERTY */
+ YYSYMBOL_tON = 85, /* tON */
+ YYSYMBOL_tMETHOD = 86, /* tMETHOD */
+ YYSYMBOL_tENDIF = 87, /* tENDIF */
+ YYSYMBOL_tENDREPEAT = 88, /* tENDREPEAT */
+ YYSYMBOL_tENDTELL = 89, /* tENDTELL */
+ YYSYMBOL_tASSERTERROR = 90, /* tASSERTERROR */
+ YYSYMBOL_91_ = 91, /* '<' */
+ YYSYMBOL_92_ = 92, /* '>' */
+ YYSYMBOL_93_ = 93, /* '&' */
+ YYSYMBOL_94_ = 94, /* '+' */
+ YYSYMBOL_95_ = 95, /* '-' */
+ YYSYMBOL_96_ = 96, /* '*' */
+ YYSYMBOL_97_ = 97, /* '/' */
+ YYSYMBOL_98_ = 98, /* '%' */
+ YYSYMBOL_99_n_ = 99, /* '\n' */
+ YYSYMBOL_100_ = 100, /* ',' */
+ YYSYMBOL_101_ = 101, /* '(' */
+ YYSYMBOL_102_ = 102, /* ')' */
+ YYSYMBOL_103_ = 103, /* '[' */
+ YYSYMBOL_104_ = 104, /* ']' */
+ YYSYMBOL_105_ = 105, /* ':' */
+ YYSYMBOL_YYACCEPT = 106, /* $accept */
+ YYSYMBOL_script = 107, /* script */
+ YYSYMBOL_scriptpartlist = 108, /* scriptpartlist */
+ YYSYMBOL_scriptpart = 109, /* scriptpart */
+ YYSYMBOL_macro = 110, /* macro */
+ YYSYMBOL_factory = 111, /* factory */
+ YYSYMBOL_method = 112, /* method */
+ YYSYMBOL_methodlist = 113, /* methodlist */
+ YYSYMBOL_nonemptymethodlist = 114, /* nonemptymethodlist */
+ YYSYMBOL_methodlistline = 115, /* methodlistline */
+ YYSYMBOL_handler = 116, /* handler */
+ YYSYMBOL_endargdef = 117, /* endargdef */
+ YYSYMBOL_CMDID = 118, /* CMDID */
+ YYSYMBOL_ID = 119, /* ID */
+ YYSYMBOL_idlist = 120, /* idlist */
+ YYSYMBOL_nonemptyidlist = 121, /* nonemptyidlist */
+ YYSYMBOL_stmt = 122, /* stmt */
+ YYSYMBOL_stmt_insideif = 123, /* stmt_insideif */
+ YYSYMBOL_stmtoneliner = 124, /* stmtoneliner */
+ YYSYMBOL_proc = 125, /* proc */
+ YYSYMBOL_cmdargs = 126, /* cmdargs */
+ YYSYMBOL_trailingcomma = 127, /* trailingcomma */
+ YYSYMBOL_frameargs = 128, /* frameargs */
+ YYSYMBOL_asgn = 129, /* asgn */
+ YYSYMBOL_to = 130, /* to */
+ YYSYMBOL_definevars = 131, /* definevars */
+ YYSYMBOL_ifstmt = 132, /* ifstmt */
+ YYSYMBOL_ifelsestmt = 133, /* ifelsestmt */
+ YYSYMBOL_endif = 134, /* endif */
+ YYSYMBOL_loop = 135, /* loop */
+ YYSYMBOL_tell = 136, /* tell */
+ YYSYMBOL_when = 137, /* when */
+ YYSYMBOL_stmtlist = 138, /* stmtlist */
+ YYSYMBOL_nonemptystmtlist = 139, /* nonemptystmtlist */
+ YYSYMBOL_stmtlistline = 140, /* stmtlistline */
+ YYSYMBOL_stmtlist_insideif = 141, /* stmtlist_insideif */
+ YYSYMBOL_nonemptystmtlist_insideif = 142, /* nonemptystmtlist_insideif */
+ YYSYMBOL_stmtlistline_insideif = 143, /* stmtlistline_insideif */
+ YYSYMBOL_simpleexpr_nounarymath = 144, /* simpleexpr_nounarymath */
+ YYSYMBOL_var = 145, /* var */
+ YYSYMBOL_varorchunk = 146, /* varorchunk */
+ YYSYMBOL_varorthe = 147, /* varorthe */
+ YYSYMBOL_chunk = 148, /* chunk */
+ YYSYMBOL_chunktype = 149, /* chunktype */
+ YYSYMBOL_object = 150, /* object */
+ YYSYMBOL_refargs = 151, /* refargs */
+ YYSYMBOL_the = 152, /* the */
+ YYSYMBOL_theobj = 153, /* theobj */
+ YYSYMBOL_menu = 154, /* menu */
+ YYSYMBOL_thedatetime = 155, /* thedatetime */
+ YYSYMBOL_thenumberof = 156, /* thenumberof */
+ YYSYMBOL_inof = 157, /* inof */
+ YYSYMBOL_writablethe = 158, /* writablethe */
+ YYSYMBOL_writabletheobj = 159, /* writabletheobj */
+ YYSYMBOL_list = 160, /* list */
+ YYSYMBOL_proplist = 161, /* proplist */
+ YYSYMBOL_proppair = 162, /* proppair */
+ YYSYMBOL_unarymath = 163, /* unarymath */
+ YYSYMBOL_simpleexpr = 164, /* simpleexpr */
+ YYSYMBOL_expr = 165, /* expr */
+ YYSYMBOL_expr_nounarymath = 166, /* expr_nounarymath */
+ YYSYMBOL_expr_noeq = 167, /* expr_noeq */
+ YYSYMBOL_sprite = 168, /* sprite */
+ YYSYMBOL_exprlist = 169, /* exprlist */
+ YYSYMBOL_nonemptyexprlist = 170 /* nonemptyexprlist */
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
@@ -641,21 +643,21 @@ union yyalloc
#endif /* !YYCOPY_NEEDED */
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 176
+#define YYFINAL 189
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 4448
+#define YYLAST 4539
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 104
+#define YYNTOKENS 106
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 65
/* YYNRULES -- Number of rules. */
-#define YYNRULES 321
+#define YYNRULES 325
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 590
+#define YYNSTATES 607
/* YYMAXUTOK -- Last valid token kind. */
-#define YYMAXUTOK 343
+#define YYMAXUTOK 345
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
@@ -670,15 +672,15 @@ union yyalloc
static const yytype_int8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 97, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 99, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 96, 91, 2,
- 99, 100, 94, 92, 98, 93, 2, 95, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 103, 2,
- 89, 2, 90, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 98, 93, 2,
+ 101, 102, 96, 94, 100, 95, 2, 97, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 105, 2,
+ 91, 2, 92, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 101, 2, 102, 2, 2, 2, 2, 2, 2,
+ 2, 103, 2, 104, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -703,7 +705,7 @@ static const yytype_int8 yytranslate[] =
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
- 85, 86, 87, 88
+ 85, 86, 87, 88, 89, 90
};
#if YYDEBUG
@@ -717,32 +719,32 @@ static const yytype_int16 yyrline[] =
308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
- 338, 339, 340, 341, 342, 345, 346, 347, 348, 349,
+ 338, 339, 340, 341, 342, 343, 344, 347, 348, 349,
350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
- 360, 361, 362, 363, 364, 367, 368, 369, 372, 376,
- 386, 387, 390, 391, 392, 393, 394, 395, 398, 399,
- 400, 403, 404, 405, 406, 407, 408, 409, 410, 415,
- 416, 417, 418, 421, 424, 429, 433, 439, 444, 447,
- 452, 458, 458, 464, 469, 475, 481, 487, 495, 496,
- 497, 498, 501, 501, 503, 504, 505, 508, 512, 516,
- 522, 526, 530, 534, 535, 537, 539, 541, 543, 547,
- 551, 555, 557, 558, 562, 568, 575, 576, 579, 580,
- 584, 590, 597, 598, 604, 605, 606, 607, 608, 609,
- 610, 611, 612, 613, 614, 615, 616, 619, 621, 622,
- 625, 626, 629, 630, 631, 633, 635, 637, 639, 641,
- 643, 645, 649, 650, 653, 658, 661, 666, 672, 673,
- 674, 675, 676, 677, 680, 681, 682, 683, 684, 687,
- 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
- 702, 703, 704, 705, 706, 709, 710, 711, 712, 715,
- 715, 717, 718, 721, 722, 723, 724, 725, 728, 729,
- 730, 733, 737, 742, 743, 744, 747, 748, 751, 752,
- 756, 757, 758, 759, 760, 761, 762, 763, 764, 765,
- 766, 767, 768, 769, 770, 771, 772, 773, 774, 781,
- 782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
- 792, 793, 794, 795, 796, 797, 798, 799, 802, 803,
- 804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
- 814, 815, 816, 817, 818, 819, 822, 823, 826, 827,
- 830, 834
+ 360, 361, 362, 363, 364, 365, 366, 369, 370, 371,
+ 374, 378, 388, 389, 392, 393, 394, 395, 396, 397,
+ 400, 401, 402, 405, 406, 407, 408, 409, 410, 411,
+ 412, 417, 418, 419, 420, 421, 422, 425, 428, 433,
+ 437, 443, 448, 451, 456, 462, 462, 468, 473, 479,
+ 485, 491, 499, 500, 501, 502, 505, 505, 507, 508,
+ 509, 512, 516, 520, 526, 530, 534, 538, 539, 541,
+ 543, 545, 547, 551, 555, 559, 561, 562, 566, 572,
+ 579, 580, 583, 584, 588, 594, 601, 602, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 623, 625, 626, 629, 630, 633, 634, 635, 637,
+ 639, 641, 643, 645, 647, 649, 651, 654, 655, 656,
+ 657, 660, 661, 664, 669, 672, 677, 683, 684, 685,
+ 686, 687, 690, 691, 692, 693, 694, 697, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 712, 713,
+ 714, 715, 716, 719, 719, 721, 722, 725, 726, 727,
+ 728, 729, 732, 733, 734, 737, 741, 746, 747, 748,
+ 751, 752, 755, 756, 760, 761, 762, 763, 764, 765,
+ 766, 767, 768, 769, 770, 771, 772, 773, 774, 775,
+ 776, 777, 778, 785, 786, 787, 788, 789, 790, 791,
+ 792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
+ 802, 803, 806, 807, 808, 809, 810, 811, 812, 813,
+ 814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
+ 826, 827, 830, 831, 834, 838
};
#endif
@@ -761,29 +763,29 @@ yysymbol_name (yysymbol_kind_t yysymbol)
{
"end of file", "error", "invalid token", "tUNARY", "tLEXERROR", "tINT",
"tFLOAT", "tVARID", "tSTRING", "tSYMBOL", "tENDCLAUSE", "tCAST",
- "tFIELD", "tSCRIPT", "tWINDOW", "tDOWN", "tELSE", "tELSIF", "tEXIT",
- "tFRAME", "tGLOBAL", "tGO", "tIF", "tIN", "tINTO", "tMACRO", "tMOVIE",
- "tNEXT", "tOF", "tPREVIOUS", "tPUT", "tREPEAT", "tSET", "tTHEN", "tTO",
- "tWHEN", "tWITH", "tWHILE", "tFACTORY", "tOPEN", "tPLAY", "tINSTANCE",
- "tGE", "tLE", "tEQ", "tNEQ", "tAND", "tOR", "tNOT", "tMOD", "tAFTER",
- "tBEFORE", "tCONCAT", "tCONTAINS", "tSTARTS", "tCHAR", "tCHARS", "tITEM",
- "tITEMS", "tLINE", "tLINES", "tWORD", "tWORDS", "tABBREVIATED",
- "tABBREV", "tABBR", "tLONG", "tSHORT", "tCASTMEMBERS", "tDATE", "tLAST",
- "tMENU", "tMENUITEM", "tMENUITEMS", "tNUMBER", "tTHE", "tTIME", "tSOUND",
- "tSPRITE", "tINTERSECTS", "tWITHIN", "tTELL", "tPROPERTY", "tON",
- "tMETHOD", "tENDIF", "tENDREPEAT", "tENDTELL", "tASSERTERROR", "'<'",
- "'>'", "'&'", "'+'", "'-'", "'*'", "'/'", "'%'", "'\\n'", "','", "'('",
- "')'", "'['", "']'", "':'", "$accept", "script", "scriptpartlist",
- "scriptpart", "macro", "factory", "method", "methodlist",
- "nonemptymethodlist", "methodlistline", "handler", "endargdef", "CMDID",
- "ID", "idlist", "nonemptyidlist", "stmt", "stmt_insideif",
- "stmtoneliner", "proc", "cmdargs", "trailingcomma", "frameargs", "asgn",
- "to", "definevars", "ifstmt", "ifelsestmt", "endif", "loop", "tell",
- "when", "stmtlist", "nonemptystmtlist", "stmtlistline",
+ "tFIELD", "tSCRIPT", "tWINDOW", "tDELETE", "tDOWN", "tELSE", "tELSIF",
+ "tEXIT", "tFRAME", "tGLOBAL", "tGO", "tHILITE", "tIF", "tIN", "tINTO",
+ "tMACRO", "tMOVIE", "tNEXT", "tOF", "tPREVIOUS", "tPUT", "tREPEAT",
+ "tSET", "tTHEN", "tTO", "tWHEN", "tWITH", "tWHILE", "tFACTORY", "tOPEN",
+ "tPLAY", "tINSTANCE", "tGE", "tLE", "tEQ", "tNEQ", "tAND", "tOR", "tNOT",
+ "tMOD", "tAFTER", "tBEFORE", "tCONCAT", "tCONTAINS", "tSTARTS", "tCHAR",
+ "tCHARS", "tITEM", "tITEMS", "tLINE", "tLINES", "tWORD", "tWORDS",
+ "tABBREVIATED", "tABBREV", "tABBR", "tLONG", "tSHORT", "tCASTMEMBERS",
+ "tDATE", "tLAST", "tMENU", "tMENUITEM", "tMENUITEMS", "tNUMBER", "tTHE",
+ "tTIME", "tSOUND", "tSPRITE", "tINTERSECTS", "tWITHIN", "tTELL",
+ "tPROPERTY", "tON", "tMETHOD", "tENDIF", "tENDREPEAT", "tENDTELL",
+ "tASSERTERROR", "'<'", "'>'", "'&'", "'+'", "'-'", "'*'", "'/'", "'%'",
+ "'\\n'", "','", "'('", "')'", "'['", "']'", "':'", "$accept", "script",
+ "scriptpartlist", "scriptpart", "macro", "factory", "method",
+ "methodlist", "nonemptymethodlist", "methodlistline", "handler",
+ "endargdef", "CMDID", "ID", "idlist", "nonemptyidlist", "stmt",
+ "stmt_insideif", "stmtoneliner", "proc", "cmdargs", "trailingcomma",
+ "frameargs", "asgn", "to", "definevars", "ifstmt", "ifelsestmt", "endif",
+ "loop", "tell", "when", "stmtlist", "nonemptystmtlist", "stmtlistline",
"stmtlist_insideif", "nonemptystmtlist_insideif",
"stmtlistline_insideif", "simpleexpr_nounarymath", "var", "varorchunk",
- "varorthe", "chunk", "object", "refargs", "the", "theobj", "menu",
- "thedatetime", "thenumberof", "chunktype", "inof", "writablethe",
+ "varorthe", "chunk", "chunktype", "object", "refargs", "the", "theobj",
+ "menu", "thedatetime", "thenumberof", "inof", "writablethe",
"writabletheobj", "list", "proplist", "proppair", "unarymath",
"simpleexpr", "expr", "expr_nounarymath", "expr_noeq", "sprite",
"exprlist", "nonemptyexprlist", YY_NULLPTR
@@ -805,13 +807,13 @@ static const yytype_int16 yytoknum[] =
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
- 335, 336, 337, 338, 339, 340, 341, 342, 343, 60,
- 62, 38, 43, 45, 42, 47, 37, 10, 44, 40,
- 41, 91, 93, 58
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 60, 62, 38, 43, 45, 42, 47, 37, 10,
+ 44, 40, 41, 91, 93, 58
};
#endif
-#define YYPACT_NINF (-505)
+#define YYPACT_NINF (-518)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
@@ -825,65 +827,67 @@ static const yytype_int16 yytoknum[] =
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 2823, -505, -505, -505, -505, -505, -505, -23, -505, 3393,
- 1762, 1859, -505, -505, 3393, -505, -7, -505, -505, 1956,
- 92, 3472, -505, 3393, -505, -505, 3393, 1956, 1762, 3393,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, 1859, 3393, 3393, -67, 3708, -505, 32,
- 2823, -505, -505, -505, -505, 1956, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -47, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, -505, -44, -43, -505, -505, -505, -505, 2053,
- 2053, 2053, 2053, 1859, 1859, 2150, 1859, 1859, 1859, 1859,
- 3551, 1859, 2150, 2150, 1277, 693, 26, -21, -14, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, 792,
- -505, 1859, 3935, 3393, 44, 51, 889, 3393, 1859, 3393,
- -505, -505, -6, -505, 40, 53, 65, 986, 70, 72,
- 78, 3902, 79, 3393, -505, -505, -505, -505, 81, 1083,
- -505, -505, 3393, 1374, -505, -505, -505, -505, -505, 1180,
- 4245, -505, 509, 531, 600, 3761, -24, -22, 27, 45,
- 47, 111, 116, 135, 4216, -505, -505, -505, 436, -5,
- 80, 71, -2, 4, -505, 4245, 77, 88, 1471, -505,
- -505, 165, 1859, 1859, 1859, 1859, 2538, 2538, 2732, 1859,
- 2635, 2635, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859,
- -505, -505, 4017, -505, 3989, 2903, 1859, 1859, 1859, 1859,
- 1859, 102, -505, -505, 3630, 3630, 3630, 2, 4048, 172,
- -505, -505, 1859, 1859, -57, -505, 1859, -505, -505, -505,
- 3708, 2983, -505, 104, -505, -505, -505, 3958, 177, 4270,
- 2150, 1859, 2150, 1859, 2150, 1859, 2150, 1859, -505, -505,
- -505, -505, -505, -505, -505, -505, -505, -505, -505, -505,
- -505, -505, 13, 2247, 2344, 2150, 2150, 1568, -505, 1859,
- 1859, -505, 1859, 3314, -505, -505, 1859, -505, 107, 1859,
- -33, -33, -33, -33, 4324, 4324, -505, -29, -33, -33,
- -33, -33, -29, -26, -26, -505, -505, 107, 1859, 1859,
- 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859,
- 1859, 1859, 1859, 1859, 1859, 1859, -505, 3223, 190, 2983,
- -505, 110, -505, 112, 117, 1859, 1859, 2983, 2441, 4074,
- 4245, 3393, -505, -505, -505, -57, -505, 4104, -505, -505,
- -505, 121, 2983, -505, 2983, 1665, 1859, -505, 3774, -505,
- 3794, -505, 3848, -505, 3868, -505, -505, 2150, 13, 13,
- 13, 13, 2150, 2150, 13, 2150, 2150, -505, -505, -505,
- -505, -505, -505, -505, 107, 4245, 4245, 4245, -5, 80,
- 113, -505, 4245, 1859, 115, 4245, -505, -33, -33, -33,
- -33, 4324, 4324, -505, -29, -33, -33, -33, -33, -29,
- -26, -26, -505, -505, 107, -505, -505, 1, 3223, -505,
- 3063, -505, -505, -505, -505, 4130, 66, 127, 1859, 1859,
- 1859, 1859, -505, -505, -505, 3393, -505, -505, 120, -505,
- 208, -505, 107, 4245, 2150, 2150, 2150, 2150, -505, 2150,
- 2150, 2150, 2150, -505, 192, 150, -505, -505, 122, -505,
- -505, 3143, 126, -505, -505, 3223, -505, 2983, 191, 1859,
- 130, -505, 4299, -505, 3881, 4299, 4299, 131, -505, 3393,
- 124, -505, -505, -505, -505, -505, -505, -505, -505, 158,
- 2150, -505, -505, 3223, -505, -505, 145, 146, 1859, 4160,
- -505, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859,
- 1859, 1859, 1859, 1859, 1859, 1859, 1859, 160, 2983, 37,
- -505, -505, 2150, 145, -505, 137, 4186, 2983, -1, -1,
- -1, 4353, 4353, -505, 38, -1, -1, -1, -1, 38,
- -16, -16, -505, -505, 1859, -505, -505, 3393, -505, -505,
- -505, 2983, 147, 4299, -505, 149, 143, 144, -505, -505
+ 2949, -518, -518, -518, -518, -518, 26, -518, -17, -518,
+ 3528, 1866, 26, 1965, -518, -518, 3528, -518, 7, -518,
+ -518, 2064, 41, 3609, -518, 3528, -518, -518, 3528, 2064,
+ 1866, 3528, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, -518, -518, -518, -518, 1965, 3528, 3528, -50, 3851,
+ -518, 51, 2949, -518, -518, -518, -518, 2064, -518, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, 2163,
+ 2163, 1965, 1965, 1965, 1965, -7, -37, -31, -518, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, -518, -518, -518, -518, 23, -1, -518, -518, -518,
+ -518, 2163, 2163, 2163, 2163, 1965, 1965, 2262, 1965, 1965,
+ 1965, 1965, 3690, 1965, 2262, 2262, 1371, 775, 3, 25,
+ 34, -518, -518, -518, -518, -518, -518, -518, -518, -518,
+ -518, 876, -518, 52, 1965, 4078, 3528, 75, 77, 975,
+ 3528, 1965, 3528, -518, -518, -4, -518, 61, 78, 82,
+ 1074, 90, 92, 101, 4045, 108, 3528, -518, -518, -518,
+ -518, 109, 1173, 1470, -518, -518, -518, 434, 555, 681,
+ 3904, 160, -518, -518, -518, 3528, -518, -518, 1272, 4388,
+ -518, -32, -11, -5, 17, 20, 160, 95, 180, 4359,
+ -518, -518, -518, 612, 85, 111, 118, 58, -10, -518,
+ 4388, 121, 126, 1569, -518, -518, 204, 1965, 1965, 1965,
+ 1965, 2658, 2658, 2856, 1965, 2757, 2757, 1965, 1965, 1965,
+ 1965, 1965, 1965, 1965, 1965, -518, -518, 4160, -518, -518,
+ 4132, 3030, 1965, 1965, 1965, 1965, 1965, 131, -518, -518,
+ 3771, 3771, 3771, 4, 4191, 206, -518, -518, 1965, 1965,
+ -42, -518, 1965, -518, -518, -518, 3851, 3111, -518, 138,
+ -518, -518, 4101, 2262, 1965, 2262, 1965, 2262, 1965, 2262,
+ 1965, -518, -518, -518, -518, 18, -518, 214, 4413, -518,
+ -518, -518, -518, -518, -518, -518, -518, -518, -518, 2361,
+ 2460, 2262, 2262, 1668, -518, 1965, 1965, -518, 1965, 3447,
+ -518, -518, 1965, -518, 143, 1965, 72, 72, 72, 72,
+ 91, 91, -518, 35, 72, 72, 72, 72, 35, -33,
+ -33, -518, -518, 143, 1965, 1965, 1965, 1965, 1965, 1965,
+ 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965,
+ 1965, 1965, -518, 3354, 228, 3111, -7, -518, 147, -518,
+ 148, 149, 1965, 1965, 3111, 2559, 4217, 4388, 3528, -518,
+ -518, -518, -42, -518, 4247, -518, -518, -518, 161, 3111,
+ -518, 3111, 1767, -518, 3917, -518, 3937, -518, 3991, -518,
+ 4011, -518, -518, 2262, 1965, 18, 18, 18, 18, 2262,
+ 2262, 18, 2262, 2262, -518, -518, -518, -518, -518, -518,
+ -518, 143, 4388, 4388, 4388, 85, 111, 150, -518, 4388,
+ 1965, 152, 4388, -518, 72, 72, 72, 72, 91, 91,
+ -518, 35, 72, 72, 72, 72, 35, -33, -33, -518,
+ -518, 143, -518, -518, -6, 3354, -518, 3192, -518, -518,
+ -518, -518, 4273, 358, 169, 1965, 1965, 1965, 1965, -518,
+ -518, -518, 3528, -518, -518, 159, -518, 249, -518, 143,
+ 2262, 2262, 2262, 2262, -518, 4388, 2262, 2262, 2262, 2262,
+ -518, 235, 197, -518, -518, 171, -518, -518, 3273, 172,
+ -518, -518, 3354, -518, 3111, 238, 1965, 183, -518, 4442,
+ -518, 4024, 4442, 4442, 185, -518, 3528, 181, -518, -518,
+ -518, -518, -518, -518, -518, -518, 212, 2262, -518, -518,
+ 3354, -518, -518, 203, 201, 1965, 4303, -518, 1965, 1965,
+ 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965,
+ 1965, 1965, 1965, 1965, 220, 3111, 2, -518, -518, 2262,
+ 203, -518, 195, 4329, 3111, 99, 99, 99, 184, 184,
+ -518, 76, 99, 99, 99, 99, 76, -26, -26, -518,
+ -518, 1965, -518, -518, 3528, -518, -518, -518, 3111, 207,
+ 4442, -518, 208, 198, 199, -518, -518
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -891,89 +895,91 @@ static const yytype_int16 yypact[] =
means the default is an error. */
static const yytype_int16 yydefact[] =
{
- 0, 24, 31, 37, 60, 70, 36, 0, 38, 95,
- 123, 0, 39, 41, 0, 52, 53, 56, 58, 123,
- 59, 0, 68, 0, 71, 69, 0, 123, 123, 95,
- 29, 57, 54, 51, 28, 30, 34, 65, 32, 33,
- 42, 43, 45, 46, 73, 74, 25, 26, 27, 47,
- 62, 35, 44, 48, 49, 50, 55, 66, 67, 63,
- 64, 40, 72, 0, 95, 0, 0, 61, 5, 0,
- 2, 3, 6, 7, 8, 123, 9, 100, 102, 108,
- 109, 110, 103, 104, 105, 106, 107, 0, 121, 77,
- 76, 78, 80, 81, 82, 84, 53, 90, 59, 91,
- 93, 94, 79, 87, 88, 83, 92, 89, 86, 85,
- 61, 75, 98, 0, 96, 174, 175, 177, 176, 31,
- 37, 60, 70, 38, 52, 54, 32, 42, 45, 73,
- 66, 64, 0, 0, 0, 318, 187, 0, 0, 258,
- 182, 183, 184, 185, 211, 212, 186, 259, 260, 131,
- 261, 0, 0, 95, 0, 0, 131, 0, 0, 66,
- 187, 190, 0, 191, 0, 0, 0, 131, 0, 0,
- 0, 0, 0, 95, 101, 122, 1, 4, 0, 131,
- 120, 144, 97, 0, 193, 204, 192, 202, 203, 133,
- 134, 178, 0, 0, 0, 0, 25, 26, 27, 47,
- 62, 44, 55, 208, 0, 256, 257, 128, 0, 177,
- 176, 0, 187, 0, 251, 320, 0, 319, 0, 113,
- 114, 56, 0, 0, 0, 0, 29, 57, 51, 0,
- 34, 65, 0, 0, 0, 0, 0, 0, 0, 132,
- 124, 279, 131, 280, 0, 0, 0, 0, 0, 0,
- 0, 0, 119, 112, 41, 28, 30, 0, 0, 241,
- 142, 143, 0, 0, 13, 117, 71, 115, 116, 146,
- 0, 162, 145, 0, 111, 99, 205, 0, 56, 137,
- 0, 0, 0, 0, 0, 0, 0, 0, 220, 221,
- 222, 223, 224, 225, 226, 227, 228, 229, 235, 237,
- 238, 236, 0, 0, 0, 0, 0, 0, 181, 0,
- 0, 249, 0, 0, 250, 248, 0, 179, 131, 0,
- 271, 272, 269, 270, 273, 274, 266, 276, 277, 278,
- 268, 267, 275, 262, 263, 264, 265, 131, 0, 0,
+ 0, 24, 31, 38, 62, 72, 36, 37, 0, 39,
+ 97, 127, 40, 0, 41, 43, 0, 54, 55, 58,
+ 60, 127, 61, 0, 70, 0, 73, 71, 0, 127,
+ 127, 97, 29, 59, 56, 53, 28, 30, 34, 67,
+ 32, 33, 44, 45, 47, 48, 75, 76, 25, 26,
+ 27, 49, 64, 35, 46, 50, 51, 52, 57, 68,
+ 69, 65, 66, 42, 74, 0, 97, 0, 0, 63,
+ 5, 0, 2, 3, 6, 7, 8, 127, 9, 102,
+ 104, 110, 111, 112, 105, 106, 107, 108, 109, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 123, 79,
+ 36, 78, 80, 82, 83, 40, 84, 86, 55, 92,
+ 61, 93, 95, 96, 81, 89, 90, 85, 94, 91,
+ 88, 87, 63, 77, 100, 0, 98, 178, 179, 181,
+ 180, 31, 38, 62, 72, 39, 54, 56, 32, 44,
+ 47, 75, 68, 66, 0, 0, 0, 322, 191, 0,
+ 0, 262, 186, 187, 188, 189, 220, 221, 190, 263,
+ 264, 135, 265, 0, 0, 0, 97, 0, 0, 135,
+ 0, 0, 68, 191, 194, 0, 195, 0, 0, 0,
+ 135, 0, 0, 0, 0, 0, 97, 103, 126, 1,
+ 4, 0, 135, 0, 197, 213, 196, 0, 0, 0,
+ 0, 0, 124, 122, 148, 99, 211, 212, 137, 138,
+ 182, 25, 26, 27, 49, 64, 46, 57, 217, 0,
+ 260, 261, 132, 0, 181, 180, 0, 191, 0, 255,
+ 324, 0, 323, 0, 115, 116, 58, 0, 0, 0,
+ 0, 29, 59, 53, 0, 34, 67, 0, 0, 0,
+ 0, 0, 0, 0, 136, 128, 283, 135, 284, 125,
+ 0, 0, 0, 0, 0, 0, 0, 0, 121, 114,
+ 43, 28, 30, 0, 0, 245, 146, 147, 0, 0,
+ 13, 119, 73, 117, 118, 150, 0, 166, 149, 0,
+ 113, 214, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 207, 209, 210, 208, 0, 101, 58, 141, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 0,
+ 0, 0, 0, 0, 185, 0, 0, 253, 0, 0,
+ 254, 252, 0, 183, 135, 0, 275, 276, 273, 274,
+ 277, 278, 270, 280, 281, 282, 272, 271, 279, 266,
+ 267, 268, 269, 135, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 132, 126, 168, 147, 162,
- 188, 0, 189, 0, 0, 0, 0, 162, 0, 0,
- 161, 0, 17, 18, 11, 14, 15, 0, 159, 166,
- 167, 0, 163, 164, 162, 0, 0, 194, 0, 198,
- 0, 200, 0, 196, 0, 239, 240, 0, 33, 43,
- 46, 74, 48, 49, 50, 63, 64, 210, 215, 214,
- 209, 316, 317, 129, 131, 255, 253, 254, 0, 0,
- 0, 252, 321, 132, 0, 136, 125, 290, 291, 288,
- 289, 292, 293, 285, 295, 296, 297, 287, 286, 294,
- 281, 282, 283, 284, 131, 172, 173, 153, 169, 170,
- 0, 10, 138, 139, 140, 0, 0, 0, 48, 49,
- 63, 64, 242, 243, 141, 95, 16, 118, 0, 165,
- 20, 206, 131, 135, 0, 0, 0, 0, 213, 0,
- 0, 0, 0, 219, 0, 0, 217, 218, 0, 180,
- 127, 0, 0, 148, 171, 168, 149, 162, 0, 0,
- 0, 298, 244, 299, 0, 246, 247, 0, 160, 21,
- 0, 195, 199, 201, 197, 230, 232, 233, 231, 0,
- 0, 234, 130, 168, 151, 154, 153, 0, 0, 0,
- 155, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 162, 0,
- 22, 207, 0, 153, 150, 0, 0, 162, 308, 309,
- 307, 310, 311, 304, 313, 314, 315, 306, 305, 312,
- 300, 301, 302, 303, 0, 12, 19, 0, 216, 152,
- 158, 162, 0, 245, 23, 0, 0, 0, 156, 157
+ 0, 136, 130, 172, 151, 166, 68, 192, 0, 193,
+ 0, 0, 0, 0, 166, 0, 0, 165, 0, 17,
+ 18, 11, 14, 15, 0, 163, 170, 171, 0, 167,
+ 168, 166, 0, 198, 0, 202, 0, 204, 0, 200,
+ 0, 243, 244, 0, 0, 33, 45, 48, 76, 50,
+ 51, 52, 65, 66, 219, 223, 222, 218, 320, 321,
+ 133, 135, 259, 257, 258, 0, 0, 0, 256, 325,
+ 136, 0, 140, 129, 294, 295, 292, 293, 296, 297,
+ 289, 299, 300, 301, 291, 290, 298, 285, 286, 287,
+ 288, 135, 176, 177, 157, 173, 174, 0, 10, 142,
+ 143, 144, 0, 0, 0, 50, 51, 65, 66, 246,
+ 247, 145, 97, 16, 120, 0, 169, 20, 215, 135,
+ 0, 0, 0, 0, 206, 139, 0, 0, 0, 0,
+ 227, 0, 0, 225, 226, 0, 184, 131, 0, 0,
+ 152, 175, 172, 153, 166, 0, 0, 0, 302, 248,
+ 303, 0, 250, 251, 0, 164, 21, 0, 199, 203,
+ 205, 201, 238, 240, 241, 239, 0, 0, 242, 134,
+ 172, 155, 158, 157, 0, 0, 0, 159, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 166, 0, 22, 216, 0,
+ 157, 154, 0, 0, 166, 312, 313, 311, 314, 315,
+ 308, 317, 318, 319, 310, 309, 316, 304, 305, 306,
+ 307, 0, 12, 19, 0, 224, 156, 162, 166, 0,
+ 249, 23, 0, 0, 0, 160, 161
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -505, -505, -505, 173, -505, -505, -505, -505, -505, -133,
- -505, -505, 0, -8, -27, -505, 5, -343, -60, -505,
- 7, -233, 221, -505, -505, -505, -505, -505, -504, -505,
- -505, -505, -355, -505, -131, -484, -505, -196, 15, -18,
- -102, -505, -212, -505, 76, -505, -51, -231, -505, -505,
- -505, -261, -505, -505, -505, -505, -54, -505, 136, 61,
- 73, -25, -72, -505, -208
+ -518, -518, -518, 227, -518, -518, -518, -518, -518, -75,
+ -518, -518, 0, -8, -25, -518, 5, -360, -62, -518,
+ -2, -256, 288, -518, -518, -518, -518, -518, -517, -518,
+ -518, -518, -354, -518, -80, -488, -518, -145, -147, -19,
+ -128, -518, -3, -518, -518, -78, -518, 10, -180, -518,
+ -518, -203, -518, -518, -518, -518, 8, -518, 202, 63,
+ 115, -442, 80, -518, -223
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- 0, 69, 70, 71, 72, 73, 373, 374, 375, 376,
- 74, 549, 111, 136, 113, 114, 380, 77, 78, 79,
- 137, 240, 138, 80, 262, 81, 82, 83, 493, 84,
- 85, 86, 381, 382, 383, 447, 448, 449, 139, 140,
- 361, 162, 141, 142, 184, 143, 407, 408, 144, 145,
- 302, 397, 163, 462, 146, 213, 214, 147, 148, 215,
- 242, 502, 150, 216, 217
+ 0, 71, 72, 73, 74, 75, 390, 391, 392, 393,
+ 76, 566, 123, 148, 125, 126, 397, 79, 80, 81,
+ 149, 255, 150, 82, 278, 83, 84, 85, 510, 86,
+ 87, 88, 398, 399, 400, 464, 465, 466, 151, 152,
+ 378, 175, 153, 305, 154, 194, 155, 424, 425, 156,
+ 157, 413, 176, 479, 158, 228, 229, 159, 160, 230,
+ 257, 519, 162, 231, 232
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -981,1003 +987,1023 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 75, 112, 170, 161, 451, 76, 153, 175, 87, 356,
- 318, 526, 457, 160, 446, 164, 248, 491, 165, 229,
- 248, 112, 554, 248, 154, 365, 155, 371, 260, 470,
- 174, 337, 176, 536, 166, 168, 395, 172, 261, 553,
- 372, 396, 362, 362, 362, 288, 366, 290, 536, 579,
- 180, 537, 289, 181, 291, 182, 112, 173, 234, 235,
- 236, 237, 238, 235, 236, 237, 238, 75, 237, 238,
- 75, 149, 152, 263, 88, 76, 219, 243, 545, 546,
- 156, 498, 178, 220, 243, 424, 492, 536, 167, 149,
- 542, 543, 544, 545, 546, 243, 292, 218, 309, 414,
- 499, 312, 313, 293, 426, 446, 314, 243, 222, 223,
- 224, 225, 246, 247, 294, 248, 296, 243, 229, 249,
- 250, 295, 203, 297, 171, 218, 251, 212, 157, 158,
- 543, 544, 545, 546, 576, 577, 179, 479, 480, 481,
- 482, 252, 527, 485, 303, 112, 273, 444, 253, 257,
- 264, 259, 446, 363, 364, 232, 233, 234, 235, 236,
- 237, 238, 265, 304, 241, 112, 298, 267, 299, 268,
- 300, 241, 301, 311, 275, 269, 272, 472, 274, 315,
- 446, 488, 241, 310, 189, 190, 316, 192, 193, 194,
- 195, 319, 204, 575, 241, 208, 186, 187, 188, 359,
- 368, 384, 582, 386, 241, 423, 450, 452, 468, 453,
- 378, 490, 244, 500, 454, 489, 312, 508, 509, 258,
- 519, 520, 522, 525, 551, 528, 585, 530, 548, 552,
- 492, 574, 555, 586, 580, 587, 360, 360, 360, 510,
- 588, 589, 466, 177, 277, 75, 160, 160, 160, 169,
- 358, 469, 494, 410, 521, 185, 185, 185, 185, 421,
- 0, 191, 279, 0, 0, 0, 0, 0, 205, 206,
- 75, 75, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 320, 321, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
- 0, 0, 0, 0, 0, 420, 0, 324, 325, 326,
- 328, 329, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 369, 370, 0, 0, 377, 0, 0,
+ 77, 372, 124, 96, 174, 78, 183, 188, 166, 163,
+ 334, 508, 196, 463, 256, 173, 97, 177, 264, 168,
+ 178, 468, 256, 124, 543, 553, 571, 179, 181, 382,
+ 474, 353, 276, 256, 521, 522, 523, 89, 90, 309,
+ 167, 185, 277, 411, 388, 256, 310, 487, 412, 187,
+ 383, 189, 570, 596, 196, 206, 207, 389, 124, 186,
+ 311, 256, 202, 252, 253, 201, 313, 312, 203, 77,
+ 562, 563, 77, 314, 161, 191, 165, 78, 441, 170,
+ 171, 509, 98, 91, 169, 92, 264, 93, 315, 94,
+ 329, 317, 180, 161, 330, 316, 279, 443, 318, 205,
+ 431, 593, 594, 95, 233, 463, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 204, 264, 234, 319, 244, 553, 184, 250,
+ 251, 252, 253, 235, 218, 237, 238, 239, 240, 227,
+ 192, 267, 264, 380, 381, 244, 265, 266, 461, 600,
+ 553, 259, 463, 554, 197, 198, 199, 200, 124, 233,
+ 544, 289, 273, 328, 275, 249, 250, 251, 252, 253,
+ 560, 561, 562, 563, 268, 505, 269, 280, 124, 489,
+ 463, 281, 247, 248, 249, 250, 251, 252, 253, 283,
+ 325, 284, 559, 560, 561, 562, 563, 306, 208, 209,
+ 285, 197, 198, 199, 200, 507, 219, 288, 290, 223,
+ 320, 592, 496, 497, 498, 499, 326, 301, 502, 302,
+ 599, 303, 327, 304, 395, 331, 332, 260, 548, 549,
+ 375, 550, 335, 527, 274, 553, 385, 401, 554, 555,
+ 556, 258, 414, 440, 602, 467, 469, 470, 471, 258,
+ 485, 377, 377, 377, 506, 328, 292, 517, 525, 526,
+ 258, 77, 173, 173, 173, 536, 374, 379, 379, 379,
+ 537, 542, 258, 539, 545, 557, 558, 559, 560, 561,
+ 562, 563, 547, 568, 565, 569, 77, 77, 258, 572,
+ 509, 195, 195, 591, 597, 603, 604, 605, 606, 190,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 483, 182, 486,
+ 511, 437, 538, 308, 0, 340, 341, 342, 344, 345,
+ 427, 0, 0, 195, 195, 195, 195, 438, 0, 210,
+ 0, 386, 387, 0, 0, 394, 220, 221, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 404, 0, 406,
+ 0, 408, 0, 410, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 77, 515, 77, 0, 0, 0, 0,
+ 482, 0, 0, 0, 77, 0, 0, 0, 432, 433,
+ 0, 434, 0, 0, 516, 439, 0, 0, 442, 77,
+ 0, 77, 237, 238, 239, 240, 262, 263, 0, 264,
+ 0, 0, 244, 265, 266, 0, 0, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 472, 473, 0, 0, 247,
+ 248, 249, 250, 251, 252, 253, 0, 524, 0, 0,
+ 0, 0, 0, 0, 293, 77, 0, 77, 0, 0,
+ 294, 0, 513, 0, 124, 0, 0, 495, 237, 238,
+ 239, 240, 262, 263, 0, 264, 0, 0, 244, 265,
+ 266, 0, 0, 0, 0, 403, 0, 405, 0, 407,
+ 0, 409, 0, 439, 0, 0, 0, 0, 77, 0,
+ 0, 0, 77, 541, 77, 0, 0, 0, 567, 0,
+ 0, 426, 426, 428, 429, 247, 248, 249, 250, 251,
+ 252, 253, 0, 0, 0, 0, 0, 0, 0, 0,
+ 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 520, 520, 520, 520, 0,
+ 0, 0, 0, 0, 0, 77, 0, 0, 0, 0,
+ 0, 0, 0, 0, 77, 0, 0, 0, 0, 546,
+ 0, 0, 0, 0, 0, 295, 601, 480, 0, 0,
+ 0, 296, 0, 0, 0, 0, 0, 0, 77, 237,
+ 238, 239, 240, 262, 263, 0, 264, 0, 573, 244,
+ 265, 266, 0, 0, 0, 494, 0, 0, 0, 0,
+ 0, 500, 501, 0, 503, 504, 0, 0, 520, 520,
+ 520, 520, 520, 520, 520, 520, 520, 520, 520, 520,
+ 520, 520, 520, 520, 0, 0, 247, 248, 249, 250,
+ 251, 252, 253, 0, 0, 0, 237, 238, 239, 240,
+ 262, 263, 0, 264, 0, 0, 244, 265, 266, 0,
+ 0, 520, 0, 0, 0, 0, 0, 518, 518, 518,
+ 518, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 528, 529, 530, 531, 0, 0, 532, 533,
+ 534, 535, 0, 247, 248, 249, 250, 251, 252, 253,
+ 0, 297, 323, 0, 324, 0, 0, 298, 0, 0,
+ 0, 0, 0, 0, 0, 237, 238, 239, 240, 262,
+ 263, 0, 264, 0, 0, 244, 265, 266, 0, 500,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 388, 0, 390, 0, 392, 0, 394, 0,
- 0, 0, 0, 0, 0, 0, 0, 75, 0, 75,
- 0, 0, 0, 465, 0, 0, 0, 75, 0, 0,
- 415, 416, 0, 417, 0, 0, 0, 422, 0, 0,
- 425, 0, 75, 0, 75, 0, 503, 503, 503, 503,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 427,
- 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
- 438, 439, 440, 441, 442, 443, 387, 0, 389, 0,
- 391, 0, 393, 0, 0, 0, 455, 456, 0, 0,
- 0, 0, 0, 0, 504, 505, 506, 0, 507, 409,
- 409, 411, 412, 0, 0, 0, 0, 473, 75, 0,
- 75, 0, 0, 0, 0, 496, 0, 112, 0, 503,
- 503, 503, 503, 503, 503, 503, 503, 503, 503, 503,
- 503, 503, 503, 503, 503, 0, 0, 0, 222, 223,
- 224, 225, 246, 247, 422, 248, 0, 0, 229, 249,
- 250, 75, 0, 0, 0, 75, 524, 75, 0, 0,
- 0, 550, 503, 0, 463, 0, 558, 559, 560, 561,
- 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
- 572, 573, 0, 75, 0, 232, 233, 234, 235, 236,
- 237, 238, 0, 478, 307, 0, 308, 280, 483, 484,
- 0, 486, 487, 281, 0, 0, 0, 0, 75, 583,
- 0, 222, 223, 224, 225, 246, 247, 75, 248, 282,
- 529, 229, 249, 250, 0, 283, 0, 0, 0, 584,
- 0, 0, 0, 222, 223, 224, 225, 246, 247, 0,
- 248, 75, 0, 229, 249, 250, 0, 0, 0, 556,
- 0, 0, 0, 0, 501, 501, 501, 501, 232, 233,
- 234, 235, 236, 237, 238, 0, 0, 0, 0, 0,
- 511, 512, 513, 514, 0, 515, 516, 517, 518, 0,
- 232, 233, 234, 235, 236, 237, 238, 0, 284, 0,
- 0, 0, 0, 0, 285, 0, 0, 0, 0, 0,
- 0, 0, 222, 223, 224, 225, 246, 247, 0, 248,
- 0, 0, 229, 249, 250, 0, 483, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 501, 501, 501,
- 501, 501, 501, 501, 501, 501, 501, 501, 501, 501,
- 501, 501, 501, 0, 0, 0, 0, 0, 578, 232,
- 233, 234, 235, 236, 237, 238, 0, 0, 115, 116,
- 1, 209, 210, 89, 119, 120, 121, 122, 6, 90,
- 501, 91, 8, 92, 93, 94, 12, 13, 95, 15,
- 96, 17, 18, 97, 98, 99, 100, 22, 101, 24,
- 25, 102, 103, 104, 105, 0, 0, 0, 0, 30,
- 31, 125, 33, 34, 35, 0, 36, 37, 126, 39,
- 127, 41, 128, 43, 129, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 130, 58,
- 59, 131, 61, 62, 106, 107, 108, 109, 0, 0,
- 0, 110, 0, 0, 0, 132, 133, 0, 0, 0,
- 0, 0, 151, 0, 135, 0, 211, 115, 116, 1,
- 117, 118, 89, 119, 120, 121, 122, 6, 90, 0,
- 91, 8, 92, 93, 94, 12, 13, 95, 15, 96,
- 221, 18, 97, 98, 99, 100, 22, 101, 24, 25,
- 102, 103, 104, 105, 222, 223, 224, 225, 226, 227,
- 125, 228, 34, 35, 229, 230, 231, 126, 39, 127,
- 41, 128, 43, 129, 45, 46, 47, 48, 49, 50,
- 0, 51, 52, 53, 54, 55, 56, 130, 58, 59,
- 131, 61, 62, 106, 107, 108, 109, 0, 0, 0,
- 110, 232, 233, 234, 235, 236, 237, 238, 0, 0,
- 239, 151, 0, 135, 115, 116, 1, 117, 118, 89,
- 119, 120, 121, 122, 6, 90, 0, 91, 8, 92,
- 93, 94, 12, 254, 95, 15, 96, 17, 18, 97,
- 98, 99, 100, 22, 101, 24, 25, 102, 103, 104,
- 105, 222, 223, 224, 225, 226, 227, 125, 228, 255,
- 256, 229, 230, 231, 126, 39, 127, 41, 128, 43,
- 129, 45, 46, 47, 48, 49, 50, 0, 51, 52,
- 53, 54, 55, 56, 130, 58, 59, 131, 61, 62,
- 106, 107, 108, 109, 0, 0, 0, 110, 232, 233,
- 234, 235, 236, 237, 238, 0, 0, 239, 151, 0,
- 135, 115, 116, 1, 117, 118, 89, 119, 120, 121,
- 122, 6, 90, 0, 91, 8, 92, 93, 94, 12,
- 13, 95, 15, 96, 17, 18, 97, 98, 99, 100,
- 22, 101, 266, 25, 102, 103, 104, 105, 222, 223,
- 224, 225, 226, 227, 125, 228, 34, 35, 229, 230,
- 231, 126, 39, 127, 41, 128, 43, 129, 45, 46,
- 47, 48, 49, 50, 0, 51, 52, 53, 54, 55,
- 56, 130, 58, 59, 131, 61, 62, 106, 107, 108,
- 109, 0, 0, 0, 110, 232, 233, 234, 235, 236,
- 237, 238, 0, 0, 239, 151, 0, 135, 115, 116,
- 1, 117, 118, 89, 119, 120, 121, 122, 6, 90,
- 0, 91, 8, 92, 93, 94, 12, 13, 95, 15,
- 96, 17, 18, 97, 98, 99, 100, 22, 101, 24,
- 25, 102, 103, 104, 105, 222, 223, 224, 225, 226,
- 227, 125, 228, 34, 35, 229, 230, 231, 126, 39,
- 127, 41, 128, 43, 129, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 130, 58,
- 59, 131, 61, 62, 106, 107, 108, 109, 0, 0,
- 0, 110, 232, 233, 234, 235, 236, 237, 238, 0,
- 0, 239, 151, 0, 135, 115, 116, 1, 117, 118,
- 89, 119, 120, 121, 122, 6, 90, 0, 91, 8,
- 92, 93, 94, 12, 13, 95, 15, 96, 278, 18,
- 97, 98, 99, 100, 22, 101, 24, 25, 102, 103,
- 104, 105, 222, 223, 224, 225, 226, 227, 125, 228,
- 34, 35, 229, 230, 231, 126, 39, 127, 41, 128,
- 43, 129, 45, 46, 47, 48, 49, 50, 0, 51,
- 52, 53, 54, 55, 56, 130, 58, 59, 131, 61,
- 62, 106, 107, 108, 109, 0, 0, 0, 110, 232,
- 233, 234, 235, 236, 237, 238, 0, 0, 0, 151,
- 0, 135, 115, 116, 1, 117, 118, 89, 119, 120,
- 121, 122, 6, 90, 0, 91, 8, 92, 93, 94,
- 12, 13, 95, 15, 96, 17, 18, 97, 98, 99,
- 100, 22, 101, 24, 25, 102, 103, 104, 105, 0,
- 0, 0, 0, 30, 31, 125, 33, 34, 35, 0,
- 36, 37, 126, 39, 127, 41, 128, 43, 129, 45,
- 46, 47, 48, 49, 50, 0, 51, 52, 53, 54,
- 55, 56, 130, 58, 59, 131, 61, 62, 106, 107,
- 108, 109, 0, 0, 0, 110, 0, 0, 0, 132,
- 133, 0, 0, 0, 0, 0, 151, 207, 135, 115,
- 116, 1, 117, 118, 89, 119, 120, 121, 122, 6,
- 90, 0, 91, 8, 92, 93, 94, 12, 13, 95,
- 15, 96, 17, 18, 97, 98, 99, 100, 22, 101,
- 24, 25, 102, 103, 104, 105, 0, 0, 0, 0,
- 30, 31, 125, 33, 34, 35, 0, 36, 37, 126,
- 39, 127, 41, 128, 43, 129, 45, 46, 47, 48,
- 49, 50, 0, 51, 52, 53, 54, 55, 56, 130,
- 58, 59, 131, 61, 62, 106, 107, 108, 109, 0,
- 0, 0, 110, 0, 0, 0, 132, 133, 0, 0,
- 0, 0, 0, 151, 276, 135, 115, 116, 1, 117,
- 118, 89, 119, 120, 121, 122, 6, 90, 0, 91,
- 8, 92, 93, 94, 12, 13, 95, 15, 96, 17,
- 18, 97, 98, 99, 100, 22, 101, 24, 25, 102,
- 103, 104, 105, 0, 0, 0, 0, 30, 31, 125,
- 33, 34, 35, 0, 36, 37, 126, 39, 127, 41,
- 128, 43, 129, 45, 46, 47, 48, 49, 50, 0,
- 51, 52, 53, 54, 55, 56, 130, 58, 59, 131,
- 61, 62, 106, 107, 108, 109, 0, 0, 0, 110,
- 0, 0, 0, 132, 133, 0, 0, 0, 0, 0,
- 151, 317, 135, 115, 116, 1, 117, 118, 89, 119,
- 120, 121, 122, 6, 90, 0, 91, 8, 92, 93,
- 94, 12, 13, 95, 15, 96, 17, 18, 97, 98,
- 99, 100, 22, 101, 24, 25, 102, 103, 104, 105,
- 0, 0, 0, 0, 30, 31, 125, 33, 34, 35,
- 0, 36, 37, 126, 39, 127, 41, 128, 43, 129,
- 45, 46, 47, 48, 49, 50, 0, 51, 52, 53,
- 54, 55, 56, 130, 58, 59, 131, 61, 62, 106,
- 107, 108, 109, 0, 0, 0, 110, 0, 0, 0,
- 132, 133, 0, 0, 0, 0, 0, 151, 413, 135,
- 115, 116, 1, 117, 118, 89, 119, 120, 121, 122,
- 6, 90, 0, 91, 8, 92, 93, 94, 12, 13,
- 95, 15, 96, 17, 18, 97, 98, 99, 100, 22,
- 101, 24, 25, 102, 103, 104, 105, 0, 0, 0,
- 0, 30, 31, 125, 33, 34, 35, 0, 36, 37,
- 126, 39, 127, 41, 128, 43, 129, 45, 46, 47,
- 48, 49, 50, 0, 51, 52, 53, 54, 55, 56,
- 130, 58, 59, 131, 61, 62, 106, 107, 108, 109,
- 0, 0, 0, 110, 0, 0, 0, 132, 133, 0,
- 0, 0, 0, 0, 151, 471, 135, 115, 116, 1,
- 117, 118, 89, 119, 120, 121, 122, 6, 90, 0,
- 91, 123, 92, 93, 94, 12, 13, 95, 124, 96,
- 17, 18, 97, 98, 99, 100, 22, 101, 24, 25,
- 102, 103, 104, 105, 0, 0, 0, 0, 30, 31,
- 125, 33, 34, 35, 0, 36, 37, 126, 39, 127,
- 41, 128, 43, 129, 45, 46, 47, 48, 49, 50,
- 0, 51, 52, 53, 54, 55, 56, 130, 58, 59,
- 131, 61, 62, 106, 107, 108, 109, 0, 0, 0,
- 110, 0, 0, 0, 132, 133, 0, 0, 0, 0,
- 0, 134, 0, 135, 115, 116, 1, 117, 118, 89,
- 119, 120, 121, 122, 6, 90, 0, 91, 8, 92,
- 93, 94, 12, 13, 95, 15, 96, 17, 18, 97,
- 98, 99, 100, 22, 101, 24, 25, 102, 103, 104,
- 105, 0, 0, 0, 0, 30, 31, 125, 33, 34,
- 35, 0, 36, 37, 126, 39, 127, 41, 128, 43,
- 129, 45, 46, 47, 48, 49, 50, 0, 51, 52,
- 53, 54, 55, 56, 130, 58, 59, 131, 61, 62,
- 106, 107, 108, 109, 0, 0, 0, 110, 0, 0,
- 0, 132, 133, 0, 0, 0, 0, 0, 151, 0,
- 135, 115, 116, 1, 117, 118, 89, 119, 120, 121,
- 122, 6, 90, 0, 91, 8, 92, 93, 94, 12,
- 13, 95, 15, 96, 17, 18, 97, 98, 99, 100,
- 22, 101, 24, 25, 102, 103, 104, 105, 0, 0,
- 0, 0, 30, 31, 125, 33, 34, 35, 0, 36,
- 37, 126, 39, 127, 41, 128, 43, 129, 45, 46,
- 47, 48, 49, 50, 0, 51, 52, 53, 54, 55,
- 56, 130, 58, 59, 131, 61, 62, 106, 107, 108,
- 109, 0, 0, 0, 110, 0, 0, 0, 132, 133,
- 0, 0, 0, 0, 0, 134, 0, 135, 115, 116,
- 1, 117, 118, 89, 119, 120, 121, 122, 6, 90,
- 0, 91, 8, 92, 93, 94, 12, 13, 95, 15,
- 96, 17, 18, 97, 98, 99, 100, 22, 101, 24,
- 25, 102, 103, 104, 105, 0, 0, 0, 0, 30,
- 31, 125, 33, 34, 35, 0, 36, 37, 126, 39,
- 127, 41, 128, 43, 129, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 130, 58,
- 59, 60, 61, 62, 106, 107, 108, 109, 0, 0,
- 0, 110, 0, 0, 0, 132, 133, 0, 0, 0,
- 0, 0, 183, 0, 135, 115, 116, 1, 117, 118,
- 89, 119, 120, 121, 122, 6, 90, 0, 91, 8,
- 92, 93, 94, 12, 13, 95, 15, 96, 17, 18,
- 97, 98, 99, 100, 22, 101, 24, 25, 102, 103,
- 104, 105, 0, 0, 0, 0, 30, 31, 125, 33,
- 34, 35, 0, 36, 37, 126, 39, 127, 41, 128,
- 43, 129, 45, 46, 47, 48, 49, 50, 0, 51,
- 52, 53, 54, 55, 56, 130, 58, 59, 60, 61,
- 62, 106, 107, 108, 109, 0, 0, 0, 110, 0,
- 0, 0, 132, 133, 0, 0, 0, 0, 0, 151,
- 0, 135, 115, 116, 1, 117, 118, 89, 119, 120,
- 121, 122, 6, 90, 0, 91, 8, 92, 93, 94,
- 12, 13, 95, 15, 96, 17, 18, 97, 98, 99,
- 100, 22, 101, 24, 25, 102, 103, 104, 105, 0,
- 0, 0, 0, 30, 31, 125, 33, 34, 35, 0,
- 36, 37, 126, 398, 127, 399, 128, 400, 129, 401,
- 46, 47, 48, 49, 50, 0, 51, 52, 402, 403,
- 404, 56, 130, 58, 405, 406, 61, 62, 106, 107,
- 108, 109, 0, 0, 0, 110, 0, 0, 0, 132,
- 133, 0, 0, 0, 0, 0, 151, 0, 135, 115,
- 116, 1, 117, 118, 89, 119, 120, 121, 122, 6,
- 90, 0, 91, 8, 92, 93, 94, 12, 13, 95,
- 15, 96, 17, 18, 97, 98, 99, 100, 22, 101,
- 24, 25, 102, 103, 104, 105, 0, 0, 0, 0,
- 30, 31, 125, 33, 34, 35, 0, 36, 37, 126,
- 39, 127, 41, 128, 43, 129, 45, 46, 47, 48,
- 49, 50, 0, 51, 52, 402, 403, 55, 56, 130,
- 58, 405, 406, 61, 62, 106, 107, 108, 109, 0,
- 0, 0, 110, 0, 0, 0, 132, 133, 0, 0,
- 0, 0, 0, 151, 0, 135, 115, 116, 1, 117,
- 118, 89, 119, 120, 121, 122, 6, 90, 0, 91,
- 8, 92, 93, 94, 12, 13, 95, 15, 96, 17,
- 18, 97, 98, 99, 100, 22, 101, 24, 25, 102,
- 103, 104, 105, 0, 0, 0, 0, 30, 31, 125,
- 33, 34, 35, 0, 36, 37, 126, 39, 127, 41,
- 128, 43, 129, 45, 46, 47, 48, 49, 50, 0,
- 51, 52, 458, 459, 55, 56, 130, 58, 460, 461,
- 61, 62, 106, 107, 108, 109, 0, 0, 0, 110,
- 0, 0, 0, 132, 133, 0, 0, 0, 0, 0,
- 151, 0, 135, 115, 116, 1, 117, 118, 89, 119,
- 120, 121, 122, 6, 90, 0, 91, 8, 92, 93,
- 94, 12, 13, 95, 15, 96, 17, 18, 97, 98,
- 99, 100, 22, 101, 24, 25, 102, 103, 104, 105,
- 0, 0, 0, 0, 0, 0, 125, 33, 34, 35,
- 0, 36, 37, 126, 39, 127, 41, 128, 43, 129,
- 45, 46, 47, 48, 49, 50, 0, 51, 52, 53,
- 54, 55, 56, 130, 58, 59, 131, 61, 62, 106,
- 107, 108, 109, 0, 0, 0, 110, 0, 0, 0,
- 132, 133, 0, 0, 0, 0, 0, 151, 0, 135,
- 115, 116, 1, 117, 118, 89, 119, 120, 121, 122,
- 6, 90, 0, 91, 8, 92, 93, 94, 12, 13,
- 95, 15, 96, 17, 18, 97, 98, 99, 100, 22,
- 101, 24, 25, 102, 103, 104, 105, 0, 0, 0,
- 0, 0, 0, 125, 33, 34, 35, 0, 0, 0,
- 126, 39, 127, 41, 128, 43, 129, 45, 46, 47,
- 48, 49, 50, 0, 51, 52, 53, 54, 55, 56,
- 130, 58, 59, 131, 61, 62, 106, 107, 108, 109,
- 0, 0, 0, 110, 0, 0, 0, 132, 133, 0,
- 0, 0, 0, 0, 151, 0, 135, 115, 116, 1,
- 117, 118, 89, 119, 120, 121, 122, 6, 90, 0,
- 91, 8, 92, 93, 94, 12, 13, 95, 15, 96,
- 17, 18, 97, 98, 99, 100, 22, 101, 24, 25,
- 102, 103, 104, 105, 0, 0, 0, 0, 0, 0,
- 125, 0, 34, 35, 0, 0, 0, 126, 39, 127,
- 41, 128, 43, 129, 45, 46, 47, 48, 49, 50,
- 0, 51, 52, 53, 54, 55, 56, 130, 58, 59,
- 131, 61, 62, 106, 107, 108, 109, 0, 0, 0,
- 110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 1, 151, 0, 135, 2, 3, 4, 5, 6, 0,
- 0, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 26, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 0, 66, 0,
- 1, 67, 0, 0, 2, 3, 4, 5, 6, 0,
- 68, 7, 8, 9, 10, 11, 12, 13, 0, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 0, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 0, 0, 66, 0,
- 1, 67, 0, 0, 2, 3, 4, 5, 6, 0,
- 357, 7, 8, 9, 10, 11, 12, 13, 0, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 0, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 0, 0, 66, 0,
- 1, 67, 0, 0, 2, 3, 4, 5, 6, 0,
- 379, 7, 8, 9, 10, 11, 12, 13, 0, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 0, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 0, 0, 66, 0,
- 1, 67, 0, 0, 2, 3, 4, 5, 6, 0,
- 495, 7, 8, 9, 10, 11, 12, 13, 0, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 0, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 0, 0, 66, 0,
- 1, 67, 0, 0, 2, 3, 4, 5, 6, 0,
- 523, 7, 8, 9, 10, 11, 12, 13, 0, 15,
- 16, 17, 18, 19, 20, 21, 0, 22, 23, 24,
- 25, 0, 27, 28, 29, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
+ 518, 518, 518, 518, 518, 518, 518, 518, 518, 518,
+ 518, 518, 518, 518, 518, 518, 0, 0, 0, 0,
+ 0, 595, 247, 248, 249, 250, 251, 252, 253, 0,
+ 127, 128, 1, 224, 225, 99, 131, 132, 133, 134,
+ 100, 7, 101, 518, 102, 9, 103, 104, 105, 106,
+ 14, 15, 107, 17, 108, 19, 20, 109, 110, 111,
+ 112, 24, 113, 26, 27, 114, 115, 116, 117, 0,
+ 0, 0, 0, 32, 33, 137, 35, 36, 37, 0,
+ 38, 39, 138, 41, 139, 43, 140, 45, 141, 47,
+ 48, 49, 50, 51, 52, 0, 53, 54, 55, 56,
+ 57, 58, 142, 60, 61, 143, 63, 64, 118, 119,
+ 120, 121, 0, 0, 0, 122, 0, 0, 0, 144,
+ 145, 0, 0, 0, 0, 0, 164, 0, 147, 0,
+ 226, 127, 128, 1, 129, 130, 99, 131, 132, 133,
+ 134, 100, 7, 101, 0, 102, 9, 103, 104, 105,
+ 106, 14, 15, 107, 17, 108, 236, 20, 109, 110,
+ 111, 112, 24, 113, 26, 27, 114, 115, 116, 117,
+ 237, 238, 239, 240, 241, 242, 137, 243, 36, 37,
+ 244, 245, 246, 138, 41, 139, 43, 140, 45, 141,
+ 47, 48, 49, 50, 51, 52, 0, 53, 54, 55,
+ 56, 57, 58, 142, 60, 61, 143, 63, 64, 118,
+ 119, 120, 121, 0, 0, 0, 122, 247, 248, 249,
+ 250, 251, 252, 253, 0, 0, 254, 164, 0, 147,
+ 127, 128, 1, 129, 130, 99, 131, 132, 133, 134,
+ 100, 7, 101, 0, 102, 9, 103, 104, 105, 106,
+ 14, 270, 107, 17, 108, 19, 20, 109, 110, 111,
+ 112, 24, 113, 26, 27, 114, 115, 116, 117, 237,
+ 238, 239, 240, 241, 242, 137, 243, 271, 272, 244,
+ 245, 246, 138, 41, 139, 43, 140, 45, 141, 47,
+ 48, 49, 50, 51, 52, 0, 53, 54, 55, 56,
+ 57, 58, 142, 60, 61, 143, 63, 64, 118, 119,
+ 120, 121, 0, 0, 0, 122, 247, 248, 249, 250,
+ 251, 252, 253, 0, 0, 254, 164, 0, 147, 127,
+ 128, 1, 129, 130, 99, 131, 132, 133, 134, 100,
+ 7, 101, 0, 102, 9, 103, 104, 105, 106, 14,
+ 15, 107, 17, 108, 19, 20, 109, 110, 111, 112,
+ 24, 113, 282, 27, 114, 115, 116, 117, 237, 238,
+ 239, 240, 241, 242, 137, 243, 36, 37, 244, 245,
+ 246, 138, 41, 139, 43, 140, 45, 141, 47, 48,
+ 49, 50, 51, 52, 0, 53, 54, 55, 56, 57,
+ 58, 142, 60, 61, 143, 63, 64, 118, 119, 120,
+ 121, 0, 0, 0, 122, 247, 248, 249, 250, 251,
+ 252, 253, 0, 0, 254, 164, 0, 147, 127, 128,
+ 1, 129, 130, 99, 131, 132, 133, 134, 100, 7,
+ 101, 0, 102, 9, 103, 104, 105, 106, 14, 15,
+ 107, 17, 108, 19, 20, 109, 110, 111, 112, 24,
+ 113, 26, 27, 114, 115, 116, 117, 237, 238, 239,
+ 240, 241, 242, 137, 243, 36, 37, 244, 245, 246,
+ 138, 41, 139, 43, 140, 45, 141, 47, 48, 49,
+ 50, 51, 52, 0, 53, 54, 55, 56, 57, 58,
+ 142, 60, 61, 143, 63, 64, 118, 119, 120, 121,
+ 0, 0, 0, 122, 247, 248, 249, 250, 251, 252,
+ 253, 0, 0, 254, 164, 0, 147, 127, 128, 1,
+ 129, 130, 99, 131, 132, 133, 134, 100, 7, 101,
+ 0, 102, 9, 103, 104, 105, 106, 14, 15, 107,
+ 17, 108, 307, 20, 109, 110, 111, 112, 24, 113,
+ 26, 27, 114, 115, 116, 117, 237, 238, 239, 240,
+ 241, 242, 137, 243, 36, 37, 244, 245, 246, 138,
+ 41, 139, 43, 140, 45, 141, 47, 48, 49, 50,
+ 51, 52, 0, 53, 54, 55, 56, 57, 58, 142,
+ 60, 61, 143, 63, 64, 118, 119, 120, 121, 0,
+ 0, 0, 122, 247, 248, 249, 250, 251, 252, 253,
+ 0, 0, 0, 164, 0, 147, 127, 128, 1, 129,
+ 130, 99, 131, 132, 133, 134, 100, 7, 101, 0,
+ 102, 9, 103, 104, 105, 106, 14, 15, 107, 17,
+ 108, 19, 20, 109, 110, 111, 112, 24, 113, 26,
+ 27, 114, 115, 116, 117, 0, 0, 0, 0, 32,
+ 33, 137, 35, 36, 37, 0, 38, 39, 138, 41,
+ 139, 43, 140, 45, 141, 47, 48, 49, 50, 51,
+ 52, 0, 53, 54, 55, 56, 57, 58, 142, 60,
+ 61, 143, 63, 64, 118, 119, 120, 121, 0, 0,
+ 0, 122, 0, 0, 0, 144, 145, 0, 0, 0,
+ 0, 0, 164, 222, 147, 127, 128, 1, 129, 130,
+ 99, 131, 132, 133, 134, 100, 7, 101, 0, 102,
+ 9, 103, 104, 105, 106, 14, 15, 107, 17, 108,
+ 19, 20, 109, 110, 111, 112, 24, 113, 26, 27,
+ 114, 115, 116, 117, 0, 0, 0, 0, 32, 33,
+ 137, 35, 36, 37, 0, 38, 39, 138, 41, 139,
+ 43, 140, 45, 141, 47, 48, 49, 50, 51, 52,
+ 0, 53, 54, 55, 56, 57, 58, 142, 60, 61,
+ 143, 63, 64, 118, 119, 120, 121, 0, 0, 0,
+ 122, 0, 0, 0, 144, 145, 0, 0, 0, 0,
+ 0, 164, 291, 147, 127, 128, 1, 129, 130, 99,
+ 131, 132, 133, 134, 100, 7, 101, 0, 102, 9,
+ 103, 104, 105, 106, 14, 15, 107, 17, 108, 19,
+ 20, 109, 110, 111, 112, 24, 113, 26, 27, 114,
+ 115, 116, 117, 0, 0, 0, 0, 32, 33, 137,
+ 35, 36, 37, 0, 38, 39, 138, 41, 139, 43,
+ 140, 45, 141, 47, 48, 49, 50, 51, 52, 0,
+ 53, 54, 55, 56, 57, 58, 142, 60, 61, 143,
+ 63, 64, 118, 119, 120, 121, 0, 0, 0, 122,
+ 0, 0, 0, 144, 145, 0, 0, 0, 0, 0,
+ 164, 333, 147, 127, 128, 1, 129, 130, 99, 131,
+ 132, 133, 134, 100, 7, 101, 0, 102, 9, 103,
+ 104, 105, 106, 14, 15, 107, 17, 108, 19, 20,
+ 109, 110, 111, 112, 24, 113, 26, 27, 114, 115,
+ 116, 117, 0, 0, 0, 0, 32, 33, 137, 35,
+ 36, 37, 0, 38, 39, 138, 41, 139, 43, 140,
+ 45, 141, 47, 48, 49, 50, 51, 52, 0, 53,
+ 54, 55, 56, 57, 58, 142, 60, 61, 143, 63,
+ 64, 118, 119, 120, 121, 0, 0, 0, 122, 0,
+ 0, 0, 144, 145, 0, 0, 0, 0, 0, 164,
+ 430, 147, 127, 128, 1, 129, 130, 99, 131, 132,
+ 133, 134, 100, 7, 101, 0, 102, 9, 103, 104,
+ 105, 106, 14, 15, 107, 17, 108, 19, 20, 109,
+ 110, 111, 112, 24, 113, 26, 27, 114, 115, 116,
+ 117, 0, 0, 0, 0, 32, 33, 137, 35, 36,
+ 37, 0, 38, 39, 138, 41, 139, 43, 140, 45,
+ 141, 47, 48, 49, 50, 51, 52, 0, 53, 54,
+ 55, 56, 57, 58, 142, 60, 61, 143, 63, 64,
+ 118, 119, 120, 121, 0, 0, 0, 122, 0, 0,
+ 0, 144, 145, 0, 0, 0, 0, 0, 164, 488,
+ 147, 127, 128, 1, 129, 130, 99, 131, 132, 133,
+ 134, 100, 7, 101, 0, 102, 135, 103, 104, 105,
+ 106, 14, 15, 107, 136, 108, 19, 20, 109, 110,
+ 111, 112, 24, 113, 26, 27, 114, 115, 116, 117,
+ 0, 0, 0, 0, 32, 33, 137, 35, 36, 37,
+ 0, 38, 39, 138, 41, 139, 43, 140, 45, 141,
+ 47, 48, 49, 50, 51, 52, 0, 53, 54, 55,
+ 56, 57, 58, 142, 60, 61, 143, 63, 64, 118,
+ 119, 120, 121, 0, 0, 0, 122, 0, 0, 0,
+ 144, 145, 0, 0, 0, 0, 0, 146, 0, 147,
+ 127, 128, 1, 129, 130, 99, 131, 132, 133, 134,
+ 100, 7, 101, 0, 102, 9, 103, 104, 105, 106,
+ 14, 15, 107, 17, 108, 19, 20, 109, 110, 111,
+ 112, 24, 113, 26, 27, 114, 115, 116, 117, 0,
+ 0, 0, 0, 32, 33, 137, 35, 36, 37, 0,
+ 38, 39, 138, 41, 139, 43, 140, 45, 141, 47,
+ 48, 49, 50, 51, 52, 0, 53, 54, 55, 56,
+ 57, 58, 142, 60, 61, 143, 63, 64, 118, 119,
+ 120, 121, 0, 0, 0, 122, 0, 0, 0, 144,
+ 145, 0, 0, 0, 0, 0, 164, 0, 147, 127,
+ 128, 1, 129, 130, 99, 131, 132, 133, 134, 100,
+ 7, 101, 0, 102, 9, 103, 104, 105, 106, 14,
+ 15, 107, 17, 108, 19, 20, 109, 110, 111, 112,
+ 24, 113, 26, 27, 114, 115, 116, 117, 0, 0,
+ 0, 0, 32, 33, 137, 35, 36, 37, 0, 38,
+ 39, 138, 41, 139, 43, 140, 45, 141, 47, 48,
+ 49, 50, 51, 52, 0, 53, 54, 55, 56, 57,
+ 58, 142, 60, 61, 143, 63, 64, 118, 119, 120,
+ 121, 0, 0, 0, 122, 0, 0, 0, 144, 145,
+ 0, 0, 0, 0, 0, 146, 0, 147, 127, 128,
+ 1, 129, 130, 99, 131, 132, 133, 134, 100, 7,
+ 101, 0, 102, 9, 103, 104, 105, 106, 14, 15,
+ 107, 17, 108, 19, 20, 109, 110, 111, 112, 24,
+ 113, 26, 27, 114, 115, 116, 117, 0, 0, 0,
+ 0, 32, 33, 137, 35, 36, 37, 0, 38, 39,
+ 138, 41, 139, 43, 140, 45, 141, 47, 48, 49,
+ 50, 51, 52, 0, 53, 54, 55, 56, 57, 58,
+ 142, 60, 61, 62, 63, 64, 118, 119, 120, 121,
+ 0, 0, 0, 122, 0, 0, 0, 144, 145, 0,
+ 0, 0, 0, 0, 193, 0, 147, 127, 128, 1,
+ 129, 130, 99, 131, 132, 133, 134, 100, 7, 101,
+ 0, 102, 9, 103, 104, 105, 106, 14, 15, 107,
+ 17, 108, 19, 20, 109, 110, 111, 112, 24, 113,
+ 26, 27, 114, 115, 116, 117, 0, 0, 0, 0,
+ 32, 33, 137, 35, 36, 37, 0, 38, 39, 138,
+ 41, 139, 43, 140, 45, 141, 47, 48, 49, 50,
+ 51, 52, 0, 53, 54, 55, 56, 57, 58, 142,
+ 60, 61, 62, 63, 64, 118, 119, 120, 121, 0,
+ 0, 0, 122, 0, 0, 0, 144, 145, 0, 0,
+ 0, 0, 0, 164, 0, 147, 127, 128, 1, 129,
+ 130, 99, 131, 132, 133, 134, 100, 7, 101, 0,
+ 102, 9, 103, 104, 105, 106, 14, 15, 107, 17,
+ 108, 19, 20, 109, 110, 111, 112, 24, 113, 26,
+ 27, 114, 115, 116, 117, 0, 0, 0, 0, 32,
+ 33, 137, 35, 36, 37, 0, 38, 39, 138, 415,
+ 139, 416, 140, 417, 141, 418, 48, 49, 50, 51,
+ 52, 0, 53, 54, 419, 420, 421, 58, 142, 60,
+ 422, 423, 63, 64, 118, 119, 120, 121, 0, 0,
+ 0, 122, 0, 0, 0, 144, 145, 0, 0, 0,
+ 0, 0, 164, 0, 147, 127, 128, 1, 129, 130,
+ 99, 131, 132, 133, 134, 100, 7, 101, 0, 102,
+ 9, 103, 104, 105, 106, 14, 15, 107, 17, 108,
+ 19, 20, 109, 110, 111, 112, 24, 113, 26, 27,
+ 114, 115, 116, 117, 0, 0, 0, 0, 32, 33,
+ 137, 35, 36, 37, 0, 38, 39, 138, 41, 139,
+ 43, 140, 45, 141, 47, 48, 49, 50, 51, 52,
+ 0, 53, 54, 419, 420, 57, 58, 142, 60, 422,
+ 423, 63, 64, 118, 119, 120, 121, 0, 0, 0,
+ 122, 0, 0, 0, 144, 145, 0, 0, 0, 0,
+ 0, 164, 0, 147, 127, 128, 1, 129, 130, 99,
+ 131, 132, 133, 134, 100, 7, 101, 0, 102, 9,
+ 103, 104, 105, 106, 14, 15, 107, 17, 108, 19,
+ 20, 109, 110, 111, 112, 24, 113, 26, 27, 114,
+ 115, 116, 117, 0, 0, 0, 0, 32, 33, 137,
+ 35, 36, 37, 0, 38, 39, 138, 41, 139, 43,
+ 140, 45, 141, 47, 48, 49, 50, 51, 52, 0,
+ 53, 54, 475, 476, 57, 58, 142, 60, 477, 478,
+ 63, 64, 118, 119, 120, 121, 0, 0, 0, 122,
+ 0, 0, 0, 144, 145, 0, 0, 0, 0, 0,
+ 164, 0, 147, 127, 128, 1, 129, 130, 99, 131,
+ 132, 133, 134, 100, 7, 101, 0, 102, 9, 103,
+ 104, 105, 106, 14, 15, 107, 17, 108, 19, 20,
+ 109, 110, 111, 112, 24, 113, 26, 27, 114, 115,
+ 116, 117, 0, 0, 0, 0, 0, 0, 137, 35,
+ 36, 37, 0, 38, 39, 138, 41, 139, 43, 140,
+ 45, 141, 47, 48, 49, 50, 51, 52, 0, 53,
+ 54, 55, 56, 57, 58, 142, 60, 61, 143, 63,
+ 64, 118, 119, 120, 121, 0, 0, 0, 122, 0,
+ 0, 0, 144, 145, 0, 0, 0, 0, 0, 164,
+ 0, 147, 127, 128, 1, 129, 130, 99, 131, 132,
+ 133, 134, 100, 7, 101, 0, 102, 9, 103, 104,
+ 105, 106, 14, 15, 107, 17, 108, 19, 20, 109,
+ 110, 111, 112, 24, 113, 26, 27, 114, 115, 116,
+ 117, 0, 0, 0, 0, 0, 0, 137, 35, 36,
+ 37, 0, 0, 0, 138, 41, 139, 43, 140, 45,
+ 141, 47, 48, 49, 50, 51, 52, 0, 53, 54,
+ 55, 56, 57, 58, 142, 60, 61, 143, 63, 64,
+ 118, 119, 120, 121, 0, 0, 0, 122, 0, 0,
+ 0, 144, 145, 0, 0, 0, 0, 0, 164, 0,
+ 147, 127, 128, 1, 129, 130, 99, 131, 132, 133,
+ 134, 100, 7, 101, 0, 102, 9, 103, 104, 105,
+ 106, 14, 15, 107, 17, 108, 19, 20, 109, 110,
+ 111, 112, 24, 113, 26, 27, 114, 115, 116, 117,
+ 0, 0, 0, 0, 0, 0, 137, 0, 36, 37,
+ 0, 0, 0, 138, 41, 139, 43, 140, 45, 141,
+ 47, 48, 49, 50, 51, 52, 0, 53, 54, 55,
+ 56, 57, 58, 142, 60, 61, 143, 63, 64, 118,
+ 119, 120, 121, 0, 0, 0, 122, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1, 164, 0, 147,
+ 2, 3, 4, 5, 6, 7, 0, 0, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 20, 21, 22, 23, 0, 24, 25, 26, 27, 28,
+ 29, 30, 31, 0, 0, 0, 0, 32, 33, 34,
+ 35, 36, 37, 0, 38, 39, 40, 41, 42, 43,
+ 44, 45, 46, 47, 48, 49, 50, 51, 52, 0,
+ 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
+ 63, 64, 65, 66, 67, 0, 68, 1, 0, 69,
+ 0, 2, 3, 4, 5, 6, 7, 0, 70, 8,
+ 9, 10, 11, 12, 13, 14, 15, 0, 17, 18,
+ 19, 20, 21, 22, 23, 0, 24, 25, 26, 27,
+ 0, 29, 30, 31, 0, 0, 0, 0, 32, 33,
+ 34, 35, 36, 37, 0, 38, 39, 40, 41, 42,
+ 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
+ 0, 53, 54, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 66, 0, 0, 68, 1, 0,
+ 69, 0, 2, 3, 4, 5, 6, 7, 0, 373,
+ 8, 9, 10, 11, 12, 13, 14, 15, 0, 17,
+ 18, 19, 20, 21, 22, 23, 0, 24, 25, 26,
+ 27, 0, 29, 30, 31, 0, 0, 0, 0, 32,
+ 33, 34, 35, 36, 37, 0, 38, 39, 40, 41,
+ 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
+ 52, 0, 53, 54, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 0, 0, 68, 1,
+ 0, 69, 0, 2, 3, 4, 5, 6, 7, 0,
+ 396, 8, 9, 10, 11, 12, 13, 14, 15, 0,
+ 17, 18, 19, 20, 21, 22, 23, 0, 24, 25,
+ 26, 27, 0, 29, 30, 31, 0, 0, 0, 0,
+ 32, 33, 34, 35, 36, 37, 0, 38, 39, 40,
+ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+ 51, 52, 0, 53, 54, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 0, 0, 68,
+ 1, 0, 69, 0, 2, 3, 4, 5, 6, 7,
+ 0, 512, 8, 9, 10, 11, 12, 13, 14, 15,
+ 0, 17, 18, 19, 20, 21, 22, 23, 0, 24,
+ 25, 26, 27, 0, 29, 30, 31, 0, 0, 0,
+ 0, 32, 33, 34, 35, 36, 37, 0, 38, 39,
40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 0, 0, 0, 0,
- 0, 67, 0, 0, 0, 0, 0, 0, 0, 0,
- 445, 1, 418, 419, 89, 2, 3, 4, 5, 6,
- 90, 0, 91, 8, 92, 93, 94, 12, 13, 95,
- 15, 96, 17, 18, 97, 98, 99, 100, 22, 101,
- 24, 25, 102, 103, 104, 105, 0, 0, 0, 0,
- 30, 31, 32, 33, 34, 35, 0, 36, 37, 38,
+ 50, 51, 52, 0, 53, 54, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 0, 0,
+ 68, 1, 0, 69, 0, 2, 3, 4, 5, 6,
+ 7, 0, 540, 8, 9, 10, 11, 12, 13, 14,
+ 15, 0, 17, 18, 19, 20, 21, 22, 23, 0,
+ 24, 25, 26, 27, 0, 29, 30, 31, 0, 0,
+ 0, 0, 32, 33, 34, 35, 36, 37, 0, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
- 49, 50, 0, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 106, 107, 108, 109, 0,
- 1, 0, 110, 89, 2, 3, 4, 5, 6, 90,
- 0, 91, 8, 92, 93, 94, 12, 13, 95, 15,
- 96, 17, 18, 97, 98, 99, 100, 22, 101, 24,
- 25, 102, 103, 104, 105, 0, 0, 0, 0, 30,
- 31, 32, 33, 34, 35, 0, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 0, 51, 52, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 106, 107, 108, 109, 0, 1,
- 0, 110, 89, 2, 3, 4, 5, 6, 90, 0,
- 91, 8, 92, 93, 94, 12, 13, 95, 15, 96,
- 17, 18, 97, 98, 99, 100, 22, 101, 24, 25,
- 102, 103, 104, 105, 0, 0, 0, 0, 30, 31,
- 32, 33, 34, 35, 0, 36, 37, 38, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
- 0, 51, 52, 53, 54, 55, 56, 159, 58, 59,
- 60, 61, 62, 106, 107, 108, 109, 0, 1, 0,
- 110, 89, 2, 3, 4, 5, 6, 90, 0, 91,
- 8, 92, 93, 94, 12, 13, 95, 15, 96, 17,
- 18, 97, 98, 99, 100, 22, 101, 24, 25, 102,
- 103, 104, 105, 0, 0, 0, 0, 30, 31, 32,
- 33, 34, 35, 0, 36, 37, 38, 39, 40, 41,
- 42, 43, 44, 45, 196, 197, 198, 199, 200, 0,
- 51, 201, 53, 54, 55, 202, 57, 58, 59, 60,
- 61, 62, 106, 107, 108, 109, 0, 1, 0, 110,
- 89, 119, 120, 4, 5, 6, 90, 0, 91, 8,
- 92, 93, 94, 12, 13, 95, 15, 96, 17, 18,
- 97, 98, 99, 100, 22, 101, 24, 25, 102, 103,
- 104, 105, 0, 0, 0, 0, 30, 31, 32, 33,
- 34, 35, 0, 36, 37, 126, 39, 127, 41, 128,
- 43, 129, 45, 46, 47, 48, 49, 50, 0, 51,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 106, 107, 108, 109, 1, 0, 0, 110, 2,
- 3, 4, 5, 6, 0, 0, 7, 8, 9, 10,
- 0, 12, 13, 0, 15, 16, 17, 18, 19, 98,
- 21, 0, 22, 0, 24, 25, 0, 27, 28, 29,
- 0, 0, 0, 0, 30, 31, 32, 33, 34, 35,
- 0, 36, 37, 38, 39, 40, 41, 42, 43, 44,
- 45, 46, 47, 48, 49, 50, 0, 51, 52, 53,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 286,
- 64, 0, 0, 0, 0, 287, 67, 0, 0, 0,
- 0, 0, 474, 222, 223, 224, 225, 246, 247, 0,
- 248, 0, 0, 229, 249, 250, 222, 223, 224, 225,
- 246, 247, 475, 248, 0, 0, 229, 249, 250, 0,
- 0, 0, 0, 0, 0, 0, 222, 223, 224, 225,
- 246, 247, 0, 248, 0, 0, 229, 249, 250, 0,
- 232, 233, 234, 235, 236, 237, 238, 0, 0, 0,
- 0, 0, 0, 232, 233, 234, 235, 236, 237, 238,
- 0, 0, 0, 0, 0, 0, 476, 0, 0, 0,
- 0, 0, 0, 232, 233, 234, 235, 236, 237, 238,
- 222, 223, 224, 225, 246, 247, 477, 248, 0, 0,
- 229, 249, 250, 0, 0, 0, 0, 0, 0, 547,
- 222, 223, 224, 225, 246, 247, 0, 248, 0, 0,
- 229, 249, 250, 531, 532, 0, 533, 534, 535, 0,
- 536, 0, 0, 537, 538, 539, 270, 232, 233, 234,
- 235, 236, 237, 238, 222, 223, 224, 225, 246, 247,
- 0, 248, 0, 0, 229, 249, 250, 232, 233, 234,
- 235, 236, 237, 238, 0, 0, 0, 0, 245, 0,
- 540, 541, 542, 543, 544, 545, 546, 222, 223, 224,
- 225, 246, 247, 0, 248, 0, 0, 229, 249, 250,
- 0, 232, 233, 234, 235, 236, 237, 238, 0, 271,
- 222, 223, 224, 225, 246, 247, 0, 248, 0, 0,
- 229, 249, 250, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 232, 233, 234, 235, 236, 237,
- 238, 222, 223, 224, 225, 246, 247, 0, 248, 0,
- 0, 229, 249, 250, 0, 0, 0, 232, 233, 234,
- 235, 236, 237, 238, 0, 0, 385, 0, 308, 338,
- 339, 340, 341, 342, 343, 0, 344, 0, 0, 345,
- 346, 347, 0, 0, 0, 0, 0, 0, 232, 233,
- 234, 235, 236, 237, 238, 0, 0, 0, 0, 308,
- 222, 223, 224, 225, 246, 247, 0, 248, 0, 0,
- 229, 249, 250, 0, 0, 0, 348, 349, 350, 351,
- 352, 353, 354, 0, 0, 355, 222, 223, 224, 225,
- 246, 247, 0, 248, 0, 0, 229, 249, 250, 0,
- 0, 0, 0, 0, 0, 0, 0, 232, 233, 234,
- 235, 236, 237, 238, 0, 367, 222, 223, 224, 225,
- 246, 247, 0, 248, 0, 0, 229, 249, 250, 0,
- 0, 0, 0, 232, 233, 234, 235, 236, 237, 238,
- 0, 464, 222, 223, 224, 225, 246, 247, 0, 248,
- 0, 0, 229, 249, 250, 0, 0, 0, 0, 0,
- 0, 0, 0, 232, 233, 234, 235, 236, 237, 238,
- 0, 467, 222, 223, 224, 225, 246, 247, 0, 248,
- 0, 0, 229, 249, 250, 0, 0, 0, 0, 232,
- 233, 234, 235, 236, 237, 238, 0, 497, 222, 223,
- 224, 225, 246, 247, 0, 248, 0, 0, 229, 249,
- 250, 0, 0, 0, 0, 0, 0, 0, 0, 232,
- 233, 234, 235, 236, 237, 238, 0, 557, 222, 223,
- 224, 225, 246, 247, 0, 248, 0, 0, 229, 249,
- 250, 0, 0, 0, 0, 232, 233, 234, 235, 236,
- 237, 238, 0, 581, 0, 0, 0, 222, 223, 224,
- 225, 246, 247, 0, 248, 305, 306, 229, 249, 250,
- 0, 0, 0, 0, 0, 232, 233, 234, 235, 236,
- 237, 238, 338, 339, 340, 341, 342, 343, 0, 344,
- 0, 0, 345, 346, 347, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 232, 233, 234, 235, 236, 237,
- 238, 531, 532, 0, 533, 534, 535, 0, 536, 0,
- 0, 537, 538, 539, 0, 0, 0, 0, 0, 348,
- 349, 350, 351, 352, 353, 354, 222, 223, 224, 225,
- 0, 0, 0, 248, 0, 0, 229, 249, 250, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 540, 541,
- 542, 543, 544, 545, 546, 531, 532, 0, 533, 0,
- 0, 0, 536, 0, 0, 537, 538, 539, 0, 0,
- 0, 0, 0, 232, 233, 234, 235, 236, 237, 238,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 49, 50, 51, 52, 0, 53, 54, 55, 56, 57,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, 0,
+ 0, 0, 0, 0, 69, 0, 0, 0, 0, 0,
+ 0, 0, 0, 462, 1, 435, 436, 99, 2, 3,
+ 4, 5, 100, 7, 101, 0, 102, 9, 103, 104,
+ 105, 106, 14, 15, 107, 17, 108, 19, 20, 109,
+ 110, 111, 112, 24, 113, 26, 27, 114, 115, 116,
+ 117, 0, 0, 0, 0, 32, 33, 34, 35, 36,
+ 37, 0, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 0, 53, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 118, 119, 120, 121, 0, 1, 0, 122, 99, 2,
+ 3, 4, 5, 100, 7, 101, 0, 102, 9, 103,
+ 104, 105, 106, 14, 15, 107, 17, 108, 19, 20,
+ 109, 110, 111, 112, 24, 113, 26, 27, 114, 115,
+ 116, 117, 0, 0, 0, 0, 32, 33, 34, 35,
+ 36, 37, 0, 38, 39, 40, 41, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 0, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
+ 64, 118, 119, 120, 121, 0, 1, 0, 122, 99,
+ 2, 3, 4, 5, 100, 7, 101, 0, 102, 9,
+ 103, 104, 105, 106, 14, 15, 107, 17, 108, 19,
+ 20, 109, 110, 111, 112, 24, 113, 26, 27, 114,
+ 115, 116, 117, 0, 0, 0, 0, 32, 33, 34,
+ 35, 36, 37, 0, 38, 39, 40, 41, 42, 43,
+ 44, 45, 46, 47, 48, 49, 50, 51, 52, 0,
+ 53, 54, 55, 56, 57, 58, 172, 60, 61, 62,
+ 63, 64, 118, 119, 120, 121, 0, 1, 0, 122,
+ 99, 2, 3, 4, 5, 100, 7, 101, 0, 102,
+ 9, 103, 104, 105, 106, 14, 15, 107, 17, 108,
+ 19, 20, 109, 110, 111, 112, 24, 113, 26, 27,
+ 114, 115, 116, 117, 0, 0, 0, 0, 32, 33,
+ 34, 35, 36, 37, 0, 38, 39, 40, 41, 42,
+ 43, 44, 45, 46, 47, 211, 212, 213, 214, 215,
+ 0, 53, 216, 55, 56, 57, 217, 59, 60, 61,
+ 62, 63, 64, 118, 119, 120, 121, 0, 1, 0,
+ 122, 99, 131, 132, 4, 5, 100, 7, 101, 0,
+ 102, 9, 103, 104, 105, 106, 14, 15, 107, 17,
+ 108, 19, 20, 109, 110, 111, 112, 24, 113, 26,
+ 27, 114, 115, 116, 117, 0, 0, 0, 0, 32,
+ 33, 34, 35, 36, 37, 0, 38, 39, 138, 41,
+ 139, 43, 140, 45, 141, 47, 48, 49, 50, 51,
+ 52, 0, 53, 54, 55, 56, 57, 58, 376, 60,
+ 61, 62, 63, 64, 118, 119, 120, 121, 1, 0,
+ 0, 122, 2, 3, 4, 5, 6, 7, 0, 0,
+ 8, 9, 10, 11, 12, 0, 14, 15, 0, 17,
+ 18, 19, 20, 21, 110, 23, 0, 24, 0, 26,
+ 27, 0, 29, 30, 31, 0, 0, 0, 0, 32,
+ 33, 34, 35, 36, 37, 0, 38, 39, 40, 41,
+ 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
+ 52, 0, 53, 54, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 299, 66, 0, 0, 0, 0,
+ 300, 69, 0, 0, 0, 0, 0, 490, 237, 238,
+ 239, 240, 262, 263, 0, 264, 0, 0, 244, 265,
+ 266, 237, 238, 239, 240, 262, 263, 491, 264, 0,
+ 0, 244, 265, 266, 0, 0, 0, 0, 0, 0,
+ 0, 237, 238, 239, 240, 262, 263, 0, 264, 0,
+ 0, 244, 265, 266, 0, 247, 248, 249, 250, 251,
+ 252, 253, 0, 0, 0, 0, 0, 0, 247, 248,
+ 249, 250, 251, 252, 253, 0, 0, 0, 0, 0,
+ 0, 492, 0, 0, 0, 0, 0, 0, 247, 248,
+ 249, 250, 251, 252, 253, 237, 238, 239, 240, 262,
+ 263, 493, 264, 0, 0, 244, 265, 266, 0, 0,
+ 0, 0, 0, 0, 564, 237, 238, 239, 240, 262,
+ 263, 0, 264, 0, 0, 244, 265, 266, 548, 549,
+ 0, 550, 551, 552, 0, 553, 0, 0, 554, 555,
+ 556, 286, 247, 248, 249, 250, 251, 252, 253, 237,
+ 238, 239, 240, 262, 263, 0, 264, 0, 0, 244,
+ 265, 266, 247, 248, 249, 250, 251, 252, 253, 0,
+ 0, 0, 0, 261, 0, 557, 558, 559, 560, 561,
+ 562, 563, 237, 238, 239, 240, 262, 263, 0, 264,
+ 0, 0, 244, 265, 266, 0, 247, 248, 249, 250,
+ 251, 252, 253, 0, 287, 237, 238, 239, 240, 262,
+ 263, 0, 264, 0, 0, 244, 265, 266, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 247,
+ 248, 249, 250, 251, 252, 253, 237, 238, 239, 240,
+ 262, 263, 0, 264, 0, 0, 244, 265, 266, 0,
+ 0, 0, 247, 248, 249, 250, 251, 252, 253, 0,
+ 0, 402, 0, 324, 354, 355, 356, 357, 358, 359,
+ 0, 360, 0, 0, 361, 362, 363, 0, 0, 0,
+ 0, 0, 0, 247, 248, 249, 250, 251, 252, 253,
+ 0, 0, 0, 0, 324, 237, 238, 239, 240, 262,
+ 263, 0, 264, 0, 0, 244, 265, 266, 0, 0,
+ 0, 364, 365, 366, 367, 368, 369, 370, 0, 0,
+ 371, 237, 238, 239, 240, 262, 263, 0, 264, 0,
+ 0, 244, 265, 266, 0, 0, 0, 0, 0, 0,
+ 0, 0, 247, 248, 249, 250, 251, 252, 253, 0,
+ 384, 237, 238, 239, 240, 262, 263, 0, 264, 0,
+ 0, 244, 265, 266, 0, 0, 0, 0, 247, 248,
+ 249, 250, 251, 252, 253, 0, 481, 237, 238, 239,
+ 240, 262, 263, 0, 264, 0, 0, 244, 265, 266,
+ 0, 0, 0, 0, 0, 0, 0, 0, 247, 248,
+ 249, 250, 251, 252, 253, 0, 484, 237, 238, 239,
+ 240, 262, 263, 0, 264, 0, 0, 244, 265, 266,
+ 0, 0, 0, 0, 247, 248, 249, 250, 251, 252,
+ 253, 0, 514, 237, 238, 239, 240, 262, 263, 0,
+ 264, 0, 0, 244, 265, 266, 0, 0, 0, 0,
+ 0, 0, 0, 0, 247, 248, 249, 250, 251, 252,
+ 253, 0, 574, 237, 238, 239, 240, 262, 263, 0,
+ 264, 0, 0, 244, 265, 266, 0, 0, 0, 0,
+ 247, 248, 249, 250, 251, 252, 253, 0, 598, 0,
+ 0, 0, 237, 238, 239, 240, 262, 263, 0, 264,
+ 321, 322, 244, 265, 266, 0, 0, 0, 0, 0,
+ 247, 248, 249, 250, 251, 252, 253, 354, 355, 356,
+ 357, 358, 359, 0, 360, 0, 0, 361, 362, 363,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 247,
+ 248, 249, 250, 251, 252, 253, 548, 549, 0, 550,
+ 551, 552, 0, 553, 0, 0, 554, 555, 556, 0,
+ 0, 0, 0, 0, 364, 365, 366, 367, 368, 369,
+ 370, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 540, 541, 542, 543, 544, 545, 546
+ 0, 0, 0, 557, 558, 559, 560, 561, 562, 563
};
static const yytype_int16 yycheck[] =
{
- 0, 9, 29, 21, 359, 0, 14, 67, 31, 242,
- 218, 495, 367, 21, 357, 23, 49, 16, 26, 52,
- 49, 29, 526, 49, 31, 23, 19, 84, 34, 384,
- 97, 239, 0, 49, 27, 28, 23, 64, 44, 523,
- 97, 28, 254, 255, 256, 69, 44, 69, 49, 553,
- 97, 52, 76, 97, 76, 98, 64, 65, 91, 92,
- 93, 94, 95, 92, 93, 94, 95, 67, 94, 95,
- 70, 10, 11, 33, 97, 70, 97, 149, 94, 95,
- 19, 15, 75, 97, 156, 318, 85, 49, 27, 28,
- 91, 92, 93, 94, 95, 167, 69, 99, 103, 307,
- 34, 103, 98, 76, 337, 448, 102, 179, 42, 43,
- 44, 45, 46, 47, 69, 49, 69, 189, 52, 53,
- 54, 76, 130, 76, 63, 99, 153, 135, 36, 37,
- 92, 93, 94, 95, 97, 98, 75, 398, 399, 400,
- 401, 97, 497, 404, 28, 153, 173, 355, 97, 157,
- 97, 159, 495, 255, 256, 89, 90, 91, 92, 93,
- 94, 95, 97, 28, 149, 173, 55, 97, 57, 97,
- 59, 156, 61, 102, 182, 97, 97, 385, 97, 102,
- 523, 414, 167, 103, 123, 124, 98, 126, 127, 128,
- 129, 26, 131, 548, 179, 134, 120, 121, 122, 97,
- 28, 97, 557, 26, 189, 98, 16, 97, 87, 97,
- 270, 444, 151, 86, 97, 100, 103, 97, 10, 158,
- 28, 71, 100, 97, 100, 34, 581, 97, 97, 71,
- 85, 71, 86, 86, 97, 86, 254, 255, 256, 472,
- 97, 97, 375, 70, 183, 245, 254, 255, 256, 28,
- 245, 382, 448, 304, 485, 119, 120, 121, 122, 313,
- -1, 125, 189, -1, -1, -1, -1, -1, 132, 133,
- 270, 271, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 222, 223, 224, 225, 226, 227, 228,
- 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
- -1, -1, -1, -1, -1, 313, -1, 246, 247, 248,
- 249, 250, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 262, 263, -1, -1, 266, -1, -1,
+ 0, 257, 10, 6, 23, 0, 31, 69, 16, 12,
+ 233, 17, 90, 373, 161, 23, 33, 25, 51, 21,
+ 28, 375, 169, 31, 512, 51, 543, 29, 30, 25,
+ 384, 254, 36, 180, 476, 477, 478, 11, 12, 71,
+ 33, 66, 46, 25, 86, 192, 78, 401, 30, 99,
+ 46, 0, 540, 570, 132, 133, 134, 99, 66, 67,
+ 71, 208, 99, 96, 97, 72, 71, 78, 99, 69,
+ 96, 97, 72, 78, 11, 77, 13, 72, 334, 38,
+ 39, 87, 99, 57, 21, 59, 51, 61, 71, 63,
+ 100, 71, 29, 30, 104, 78, 35, 353, 78, 100,
+ 323, 99, 100, 77, 101, 465, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 99, 51, 99, 30, 54, 51, 65, 94,
+ 95, 96, 97, 99, 142, 44, 45, 46, 47, 147,
+ 77, 166, 51, 271, 272, 54, 55, 56, 371, 591,
+ 51, 99, 512, 54, 91, 92, 93, 94, 166, 101,
+ 514, 186, 170, 105, 172, 93, 94, 95, 96, 97,
+ 94, 95, 96, 97, 99, 431, 99, 99, 186, 402,
+ 540, 99, 91, 92, 93, 94, 95, 96, 97, 99,
+ 105, 99, 93, 94, 95, 96, 97, 205, 135, 136,
+ 99, 138, 139, 140, 141, 461, 143, 99, 99, 146,
+ 30, 565, 415, 416, 417, 418, 105, 57, 421, 59,
+ 574, 61, 104, 63, 286, 104, 100, 164, 44, 45,
+ 99, 47, 28, 489, 171, 51, 30, 99, 54, 55,
+ 56, 161, 28, 100, 598, 17, 99, 99, 99, 169,
+ 89, 270, 271, 272, 102, 105, 193, 88, 99, 10,
+ 180, 261, 270, 271, 272, 30, 261, 270, 271, 272,
+ 73, 99, 192, 102, 36, 91, 92, 93, 94, 95,
+ 96, 97, 99, 102, 99, 73, 286, 287, 208, 88,
+ 87, 89, 90, 73, 99, 88, 88, 99, 99, 72,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 247, 248, 249, 250, 251, 252, 253, 392, 30, 399,
+ 465, 329, 502, 208, -1, 262, 263, 264, 265, 266,
+ 320, -1, -1, 131, 132, 133, 134, 329, -1, 137,
+ -1, 278, 279, -1, -1, 282, 144, 145, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 294, -1, 296,
+ -1, 298, -1, 300, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 373, 16, 375, -1, -1, -1, -1,
+ 388, -1, -1, -1, 384, -1, -1, -1, 325, 326,
+ -1, 328, -1, -1, 36, 332, -1, -1, 335, 399,
+ -1, 401, 44, 45, 46, 47, 48, 49, -1, 51,
+ -1, -1, 54, 55, 56, -1, -1, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 382, 383, -1, -1, 91,
+ 92, 93, 94, 95, 96, 97, -1, 482, -1, -1,
+ -1, -1, -1, -1, 30, 465, -1, 467, -1, -1,
+ 36, -1, 467, -1, 482, -1, -1, 414, 44, 45,
+ 46, 47, 48, 49, -1, 51, -1, -1, 54, 55,
+ 56, -1, -1, -1, -1, 293, -1, 295, -1, 297,
+ -1, 299, -1, 440, -1, -1, -1, -1, 508, -1,
+ -1, -1, 512, 508, 514, -1, -1, -1, 526, -1,
+ -1, 319, 320, 321, 322, 91, 92, 93, 94, 95,
+ 96, 97, -1, -1, -1, -1, -1, -1, -1, -1,
+ 540, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 475, 476, 477, 478, -1,
+ -1, -1, -1, -1, -1, 565, -1, -1, -1, -1,
+ -1, -1, -1, -1, 574, -1, -1, -1, -1, 516,
+ -1, -1, -1, -1, -1, 30, 594, 385, -1, -1,
+ -1, 36, -1, -1, -1, -1, -1, -1, 598, 44,
+ 45, 46, 47, 48, 49, -1, 51, -1, 545, 54,
+ 55, 56, -1, -1, -1, 413, -1, -1, -1, -1,
+ -1, 419, 420, -1, 422, 423, -1, -1, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, -1, -1, 91, 92, 93, 94,
+ 95, 96, 97, -1, -1, -1, 44, 45, 46, 47,
+ 48, 49, -1, 51, -1, -1, 54, 55, 56, -1,
+ -1, 591, -1, -1, -1, -1, -1, 475, 476, 477,
+ 478, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 490, 491, 492, 493, -1, -1, 496, 497,
+ 498, 499, -1, 91, 92, 93, 94, 95, 96, 97,
+ -1, 30, 100, -1, 102, -1, -1, 36, -1, -1,
+ -1, -1, -1, -1, -1, 44, 45, 46, 47, 48,
+ 49, -1, 51, -1, -1, 54, 55, 56, -1, 537,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 281, -1, 283, -1, 285, -1, 287, -1,
- -1, -1, -1, -1, -1, -1, -1, 357, -1, 359,
- -1, -1, -1, 371, -1, -1, -1, 367, -1, -1,
- 309, 310, -1, 312, -1, -1, -1, 316, -1, -1,
- 319, -1, 382, -1, 384, -1, 458, 459, 460, 461,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 338,
- 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
- 349, 350, 351, 352, 353, 354, 280, -1, 282, -1,
- 284, -1, 286, -1, -1, -1, 365, 366, -1, -1,
- -1, -1, -1, -1, 459, 460, 461, -1, 465, 303,
- 304, 305, 306, -1, -1, -1, -1, 386, 448, -1,
- 450, -1, -1, -1, -1, 450, -1, 465, -1, 531,
- 532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
- 542, 543, 544, 545, 546, -1, -1, -1, 42, 43,
- 44, 45, 46, 47, 423, 49, -1, -1, 52, 53,
- 54, 491, -1, -1, -1, 495, 491, 497, -1, -1,
- -1, 509, 574, -1, 368, -1, 531, 532, 533, 534,
- 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
- 545, 546, -1, 523, -1, 89, 90, 91, 92, 93,
- 94, 95, -1, 397, 98, -1, 100, 28, 402, 403,
- -1, 405, 406, 34, -1, -1, -1, -1, 548, 574,
- -1, 42, 43, 44, 45, 46, 47, 557, 49, 28,
- 499, 52, 53, 54, -1, 34, -1, -1, -1, 577,
- -1, -1, -1, 42, 43, 44, 45, 46, 47, -1,
- 49, 581, -1, 52, 53, 54, -1, -1, -1, 528,
- -1, -1, -1, -1, 458, 459, 460, 461, 89, 90,
- 91, 92, 93, 94, 95, -1, -1, -1, -1, -1,
- 474, 475, 476, 477, -1, 479, 480, 481, 482, -1,
- 89, 90, 91, 92, 93, 94, 95, -1, 28, -1,
- -1, -1, -1, -1, 34, -1, -1, -1, -1, -1,
- -1, -1, 42, 43, 44, 45, 46, 47, -1, 49,
- -1, -1, 52, 53, 54, -1, 520, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 531, 532, 533,
- 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
- 544, 545, 546, -1, -1, -1, -1, -1, 552, 89,
- 90, 91, 92, 93, 94, 95, -1, -1, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- 574, 18, 19, 20, 21, 22, 23, 24, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, 83, 84, -1, -1,
- -1, 88, -1, -1, -1, 92, 93, -1, -1, -1,
- -1, -1, 99, -1, 101, -1, 103, 5, 6, 7,
- 8, 9, 10, 11, 12, 13, 14, 15, 16, -1,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
- 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
- 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
- 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
- -1, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 82, 83, 84, -1, -1, -1,
- 88, 89, 90, 91, 92, 93, 94, 95, -1, -1,
- 98, 99, -1, 101, 5, 6, 7, 8, 9, 10,
- 11, 12, 13, 14, 15, 16, -1, 18, 19, 20,
- 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, 67, -1, 69, 70,
- 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
- 81, 82, 83, 84, -1, -1, -1, 88, 89, 90,
- 91, 92, 93, 94, 95, -1, -1, 98, 99, -1,
- 101, 5, 6, 7, 8, 9, 10, 11, 12, 13,
- 14, 15, 16, -1, 18, 19, 20, 21, 22, 23,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, -1, -1, -1, -1,
+ -1, 569, 91, 92, 93, 94, 95, 96, 97, -1,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 591, 19, 20, 21, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 39, 40, 41, 42, 43, -1,
+ -1, -1, -1, 48, 49, 50, 51, 52, 53, -1,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 66, 67, 68, 69, -1, 71, 72, 73, 74,
+ 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
+ 85, 86, -1, -1, -1, 90, -1, -1, -1, 94,
+ 95, -1, -1, -1, -1, -1, 101, -1, 103, -1,
+ 105, 5, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, -1, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 66, 67, -1, 69, 70, 71, 72, 73,
+ 64, 65, 66, 67, 68, 69, -1, 71, 72, 73,
74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
- 84, -1, -1, -1, 88, 89, 90, 91, 92, 93,
- 94, 95, -1, -1, 98, 99, -1, 101, 5, 6,
+ 84, 85, 86, -1, -1, -1, 90, 91, 92, 93,
+ 94, 95, 96, 97, -1, -1, 100, 101, -1, 103,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, -1, 19, 20, 21, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 66, 67, 68, 69, -1, 71, 72, 73, 74,
+ 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
+ 85, 86, -1, -1, -1, 90, 91, 92, 93, 94,
+ 95, 96, 97, -1, -1, 100, 101, -1, 103, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, -1, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 66, 67, 68, 69, -1, 71, 72, 73, 74, 75,
+ 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
+ 86, -1, -1, -1, 90, 91, 92, 93, 94, 95,
+ 96, 97, -1, -1, 100, 101, -1, 103, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- -1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+ 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, 83, 84, -1, -1,
- -1, 88, 89, 90, 91, 92, 93, 94, 95, -1,
- -1, 98, 99, -1, 101, 5, 6, 7, 8, 9,
- 10, 11, 12, 13, 14, 15, 16, -1, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
- 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
- 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 66, 67, -1, 69,
- 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, -1, -1, -1, 88, 89,
- 90, 91, 92, 93, 94, 95, -1, -1, -1, 99,
- -1, 101, 5, 6, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 16, -1, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, -1,
- -1, -1, -1, 46, 47, 48, 49, 50, 51, -1,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 66, 67, -1, 69, 70, 71, 72,
- 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
- 83, 84, -1, -1, -1, 88, -1, -1, -1, 92,
- 93, -1, -1, -1, -1, -1, 99, 100, 101, 5,
- 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, -1, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, -1, -1, -1, -1,
- 46, 47, 48, 49, 50, 51, -1, 53, 54, 55,
- 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, -1, 69, 70, 71, 72, 73, 74, 75,
- 76, 77, 78, 79, 80, 81, 82, 83, 84, -1,
- -1, -1, 88, -1, -1, -1, 92, 93, -1, -1,
- -1, -1, -1, 99, 100, 101, 5, 6, 7, 8,
- 9, 10, 11, 12, 13, 14, 15, 16, -1, 18,
+ 67, 68, 69, -1, 71, 72, 73, 74, 75, 76,
+ 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
+ -1, -1, -1, 90, 91, 92, 93, 94, 95, 96,
+ 97, -1, -1, 100, 101, -1, 103, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
+ -1, 19, 20, 21, 22, 23, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
+ 68, 69, -1, 71, 72, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 84, 85, 86, -1,
+ -1, -1, 90, 91, 92, 93, 94, 95, 96, 97,
+ -1, -1, -1, 101, -1, 103, 5, 6, 7, 8,
+ 9, 10, 11, 12, 13, 14, 15, 16, 17, -1,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, -1, -1, -1, -1, 46, 47, 48,
- 49, 50, 51, -1, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 66, 67, -1,
- 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
- 79, 80, 81, 82, 83, 84, -1, -1, -1, 88,
- -1, -1, -1, 92, 93, -1, -1, -1, -1, -1,
- 99, 100, 101, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, -1, 18, 19, 20, 21,
+ 39, 40, 41, 42, 43, -1, -1, -1, -1, 48,
+ 49, 50, 51, 52, 53, -1, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, -1, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, 84, 85, 86, -1, -1,
+ -1, 90, -1, -1, -1, 94, 95, -1, -1, -1,
+ -1, -1, 101, 102, 103, 5, 6, 7, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 41, 42, 43, -1, -1, -1, -1, 48, 49,
+ 50, 51, 52, 53, -1, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, 85, 86, -1, -1, -1,
+ 90, -1, -1, -1, 94, 95, -1, -1, -1, -1,
+ -1, 101, 102, 103, 5, 6, 7, 8, 9, 10,
+ 11, 12, 13, 14, 15, 16, 17, -1, 19, 20,
+ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 42, 43, -1, -1, -1, -1, 48, 49, 50,
+ 51, 52, 53, -1, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, -1,
+ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
+ 81, 82, 83, 84, 85, 86, -1, -1, -1, 90,
+ -1, -1, -1, 94, 95, -1, -1, -1, -1, -1,
+ 101, 102, 103, 5, 6, 7, 8, 9, 10, 11,
+ 12, 13, 14, 15, 16, 17, -1, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- -1, -1, -1, -1, 46, 47, 48, 49, 50, 51,
- -1, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 66, 67, -1, 69, 70, 71,
+ 42, 43, -1, -1, -1, -1, 48, 49, 50, 51,
+ 52, 53, -1, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 66, 67, 68, 69, -1, 71,
72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
- 82, 83, 84, -1, -1, -1, 88, -1, -1, -1,
- 92, 93, -1, -1, -1, -1, -1, 99, 100, 101,
+ 82, 83, 84, 85, 86, -1, -1, -1, 90, -1,
+ -1, -1, 94, 95, -1, -1, -1, -1, -1, 101,
+ 102, 103, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, -1, 19, 20, 21, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
+ 43, -1, -1, -1, -1, 48, 49, 50, 51, 52,
+ 53, -1, 55, 56, 57, 58, 59, 60, 61, 62,
+ 63, 64, 65, 66, 67, 68, 69, -1, 71, 72,
+ 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
+ 83, 84, 85, 86, -1, -1, -1, 90, -1, -1,
+ -1, 94, 95, -1, -1, -1, -1, -1, 101, 102,
+ 103, 5, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, -1, 19, 20, 21, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
+ -1, -1, -1, -1, 48, 49, 50, 51, 52, 53,
+ -1, 55, 56, 57, 58, 59, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, -1, 71, 72, 73,
+ 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
+ 84, 85, 86, -1, -1, -1, 90, -1, -1, -1,
+ 94, 95, -1, -1, -1, -1, -1, 101, -1, 103,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, -1, 18, 19, 20, 21, 22, 23, 24,
+ 15, 16, 17, -1, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- 35, 36, 37, 38, 39, 40, 41, -1, -1, -1,
- -1, 46, 47, 48, 49, 50, 51, -1, 53, 54,
+ 35, 36, 37, 38, 39, 40, 41, 42, 43, -1,
+ -1, -1, -1, 48, 49, 50, 51, 52, 53, -1,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 66, 67, -1, 69, 70, 71, 72, 73, 74,
+ 65, 66, 67, 68, 69, -1, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
- -1, -1, -1, 88, -1, -1, -1, 92, 93, -1,
- -1, -1, -1, -1, 99, 100, 101, 5, 6, 7,
- 8, 9, 10, 11, 12, 13, 14, 15, 16, -1,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
+ 85, 86, -1, -1, -1, 90, -1, -1, -1, 94,
+ 95, -1, -1, -1, -1, -1, 101, -1, 103, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, -1, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 42, 43, -1, -1,
+ -1, -1, 48, 49, 50, 51, 52, 53, -1, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 66, 67, 68, 69, -1, 71, 72, 73, 74, 75,
+ 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
+ 86, -1, -1, -1, 90, -1, -1, -1, 94, 95,
+ -1, -1, -1, -1, -1, 101, -1, 103, 5, 6,
+ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+ 17, -1, 19, 20, 21, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
+ 37, 38, 39, 40, 41, 42, 43, -1, -1, -1,
+ -1, 48, 49, 50, 51, 52, 53, -1, 55, 56,
+ 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
+ 67, 68, 69, -1, 71, 72, 73, 74, 75, 76,
+ 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
+ -1, -1, -1, 90, -1, -1, -1, 94, 95, -1,
+ -1, -1, -1, -1, 101, -1, 103, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
+ -1, 19, 20, 21, 22, 23, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
- 38, 39, 40, 41, -1, -1, -1, -1, 46, 47,
- 48, 49, 50, 51, -1, 53, 54, 55, 56, 57,
+ 38, 39, 40, 41, 42, 43, -1, -1, -1, -1,
+ 48, 49, 50, 51, 52, 53, -1, 55, 56, 57,
58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
- -1, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 82, 83, 84, -1, -1, -1,
- 88, -1, -1, -1, 92, 93, -1, -1, -1, -1,
- -1, 99, -1, 101, 5, 6, 7, 8, 9, 10,
- 11, 12, 13, 14, 15, 16, -1, 18, 19, 20,
+ 68, 69, -1, 71, 72, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 84, 85, 86, -1,
+ -1, -1, 90, -1, -1, -1, 94, 95, -1, -1,
+ -1, -1, -1, 101, -1, 103, 5, 6, 7, 8,
+ 9, 10, 11, 12, 13, 14, 15, 16, 17, -1,
+ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, -1, -1, -1, -1, 48,
+ 49, 50, 51, 52, 53, -1, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, -1, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, 84, 85, 86, -1, -1,
+ -1, 90, -1, -1, -1, 94, 95, -1, -1, -1,
+ -1, -1, 101, -1, 103, 5, 6, 7, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 41, 42, 43, -1, -1, -1, -1, 48, 49,
+ 50, 51, 52, 53, -1, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, 85, 86, -1, -1, -1,
+ 90, -1, -1, -1, 94, 95, -1, -1, -1, -1,
+ -1, 101, -1, 103, 5, 6, 7, 8, 9, 10,
+ 11, 12, 13, 14, 15, 16, 17, -1, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
- 41, -1, -1, -1, -1, 46, 47, 48, 49, 50,
- 51, -1, 53, 54, 55, 56, 57, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, 67, -1, 69, 70,
+ 41, 42, 43, -1, -1, -1, -1, 48, 49, 50,
+ 51, 52, 53, -1, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, -1,
71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
- 81, 82, 83, 84, -1, -1, -1, 88, -1, -1,
- -1, 92, 93, -1, -1, -1, -1, -1, 99, -1,
- 101, 5, 6, 7, 8, 9, 10, 11, 12, 13,
- 14, 15, 16, -1, 18, 19, 20, 21, 22, 23,
+ 81, 82, 83, 84, 85, 86, -1, -1, -1, 90,
+ -1, -1, -1, 94, 95, -1, -1, -1, -1, -1,
+ 101, -1, 103, 5, 6, 7, 8, 9, 10, 11,
+ 12, 13, 14, 15, 16, 17, -1, 19, 20, 21,
+ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
+ 42, 43, -1, -1, -1, -1, -1, -1, 50, 51,
+ 52, 53, -1, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 66, 67, 68, 69, -1, 71,
+ 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
+ 82, 83, 84, 85, 86, -1, -1, -1, 90, -1,
+ -1, -1, 94, 95, -1, -1, -1, -1, -1, 101,
+ -1, 103, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, -1, 19, 20, 21, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
+ 43, -1, -1, -1, -1, -1, -1, 50, 51, 52,
+ 53, -1, -1, -1, 57, 58, 59, 60, 61, 62,
+ 63, 64, 65, 66, 67, 68, 69, -1, 71, 72,
+ 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
+ 83, 84, 85, 86, -1, -1, -1, 90, -1, -1,
+ -1, 94, 95, -1, -1, -1, -1, -1, 101, -1,
+ 103, 5, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, -1, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
- 34, 35, 36, 37, 38, 39, 40, 41, -1, -1,
- -1, -1, 46, 47, 48, 49, 50, 51, -1, 53,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 66, 67, -1, 69, 70, 71, 72, 73,
+ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
+ -1, -1, -1, -1, -1, -1, 50, -1, 52, 53,
+ -1, -1, -1, 57, 58, 59, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, -1, 71, 72, 73,
74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
- 84, -1, -1, -1, 88, -1, -1, -1, 92, 93,
- -1, -1, -1, -1, -1, 99, -1, 101, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- -1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
+ 84, 85, 86, -1, -1, -1, 90, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 7, 101, -1, 103,
+ 11, 12, 13, 14, 15, 16, -1, -1, 19, 20,
+ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, -1, 36, 37, 38, 39, 40,
+ 41, 42, 43, -1, -1, -1, -1, 48, 49, 50,
+ 51, 52, 53, -1, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, -1,
+ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
+ 81, 82, 83, 84, 85, -1, 87, 7, -1, 90,
+ -1, 11, 12, 13, 14, 15, 16, -1, 99, 19,
+ 20, 21, 22, 23, 24, 25, 26, -1, 28, 29,
+ 30, 31, 32, 33, 34, -1, 36, 37, 38, 39,
+ -1, 41, 42, 43, -1, -1, -1, -1, 48, 49,
+ 50, 51, 52, 53, -1, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, -1, -1, 87, 7, -1,
+ 90, -1, 11, 12, 13, 14, 15, 16, -1, 99,
+ 19, 20, 21, 22, 23, 24, 25, 26, -1, 28,
+ 29, 30, 31, 32, 33, 34, -1, 36, 37, 38,
+ 39, -1, 41, 42, 43, -1, -1, -1, -1, 48,
+ 49, 50, 51, 52, 53, -1, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, -1, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, 84, -1, -1, 87, 7,
+ -1, 90, -1, 11, 12, 13, 14, 15, 16, -1,
+ 99, 19, 20, 21, 22, 23, 24, 25, 26, -1,
+ 28, 29, 30, 31, 32, 33, 34, -1, 36, 37,
+ 38, 39, -1, 41, 42, 43, -1, -1, -1, -1,
+ 48, 49, 50, 51, 52, 53, -1, 55, 56, 57,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
+ 68, 69, -1, 71, 72, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 84, -1, -1, 87,
+ 7, -1, 90, -1, 11, 12, 13, 14, 15, 16,
+ -1, 99, 19, 20, 21, 22, 23, 24, 25, 26,
+ -1, 28, 29, 30, 31, 32, 33, 34, -1, 36,
+ 37, 38, 39, -1, 41, 42, 43, -1, -1, -1,
+ -1, 48, 49, 50, 51, 52, 53, -1, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
+ 67, 68, 69, -1, 71, 72, 73, 74, 75, 76,
77, 78, 79, 80, 81, 82, 83, 84, -1, -1,
- -1, 88, -1, -1, -1, 92, 93, -1, -1, -1,
- -1, -1, 99, -1, 101, 5, 6, 7, 8, 9,
- 10, 11, 12, 13, 14, 15, 16, -1, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
- 40, 41, -1, -1, -1, -1, 46, 47, 48, 49,
- 50, 51, -1, 53, 54, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 66, 67, -1, 69,
- 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, -1, -1, -1, 88, -1,
- -1, -1, 92, 93, -1, -1, -1, -1, -1, 99,
- -1, 101, 5, 6, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 16, -1, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 38, 39, 40, 41, -1,
- -1, -1, -1, 46, 47, 48, 49, 50, 51, -1,
- 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 66, 67, -1, 69, 70, 71, 72,
- 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
- 83, 84, -1, -1, -1, 88, -1, -1, -1, 92,
- 93, -1, -1, -1, -1, -1, 99, -1, 101, 5,
- 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, -1, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, -1, -1, -1, -1,
- 46, 47, 48, 49, 50, 51, -1, 53, 54, 55,
+ 87, 7, -1, 90, -1, 11, 12, 13, 14, 15,
+ 16, -1, 99, 19, 20, 21, 22, 23, 24, 25,
+ 26, -1, 28, 29, 30, 31, 32, 33, 34, -1,
+ 36, 37, 38, 39, -1, 41, 42, 43, -1, -1,
+ -1, -1, 48, 49, 50, 51, 52, 53, -1, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, -1, 69, 70, 71, 72, 73, 74, 75,
+ 66, 67, 68, 69, -1, 71, 72, 73, 74, 75,
76, 77, 78, 79, 80, 81, 82, 83, 84, -1,
- -1, -1, 88, -1, -1, -1, 92, 93, -1, -1,
- -1, -1, -1, 99, -1, 101, 5, 6, 7, 8,
- 9, 10, 11, 12, 13, 14, 15, 16, -1, 18,
- 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, -1, -1, -1, -1, 46, 47, 48,
- 49, 50, 51, -1, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 66, 67, -1,
- 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
- 79, 80, 81, 82, 83, 84, -1, -1, -1, 88,
- -1, -1, -1, 92, 93, -1, -1, -1, -1, -1,
- 99, -1, 101, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, -1, 18, 19, 20, 21,
+ -1, -1, -1, -1, 90, -1, -1, -1, -1, -1,
+ -1, -1, -1, 99, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, -1, 19, 20, 21, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
+ 43, -1, -1, -1, -1, 48, 49, 50, 51, 52,
+ 53, -1, 55, 56, 57, 58, 59, 60, 61, 62,
+ 63, 64, 65, 66, 67, 68, 69, -1, 71, 72,
+ 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
+ 83, 84, 85, 86, -1, 7, -1, 90, 10, 11,
+ 12, 13, 14, 15, 16, 17, -1, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- -1, -1, -1, -1, -1, -1, 48, 49, 50, 51,
- -1, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 66, 67, -1, 69, 70, 71,
+ 42, 43, -1, -1, -1, -1, 48, 49, 50, 51,
+ 52, 53, -1, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 66, 67, 68, 69, -1, 71,
72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
- 82, 83, 84, -1, -1, -1, 88, -1, -1, -1,
- 92, 93, -1, -1, -1, -1, -1, 99, -1, 101,
- 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, -1, 18, 19, 20, 21, 22, 23, 24,
- 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- 35, 36, 37, 38, 39, 40, 41, -1, -1, -1,
- -1, -1, -1, 48, 49, 50, 51, -1, -1, -1,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 66, 67, -1, 69, 70, 71, 72, 73, 74,
- 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
- -1, -1, -1, 88, -1, -1, -1, 92, 93, -1,
- -1, -1, -1, -1, 99, -1, 101, 5, 6, 7,
- 8, 9, 10, 11, 12, 13, 14, 15, 16, -1,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
- 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
- 38, 39, 40, 41, -1, -1, -1, -1, -1, -1,
- 48, -1, 50, 51, -1, -1, -1, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
- -1, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 82, 83, 84, -1, -1, -1,
- 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 7, 99, -1, 101, 11, 12, 13, 14, 15, -1,
- -1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, 38, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, 83, -1, 85, -1,
- 7, 88, -1, -1, 11, 12, 13, 14, 15, -1,
- 97, 18, 19, 20, 21, 22, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, -1, -1, 85, -1,
- 7, 88, -1, -1, 11, 12, 13, 14, 15, -1,
- 97, 18, 19, 20, 21, 22, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, -1, -1, 85, -1,
- 7, 88, -1, -1, 11, 12, 13, 14, 15, -1,
- 97, 18, 19, 20, 21, 22, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, -1, -1, 85, -1,
- 7, 88, -1, -1, 11, 12, 13, 14, 15, -1,
- 97, 18, 19, 20, 21, 22, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, -1, -1, 85, -1,
- 7, 88, -1, -1, 11, 12, 13, 14, 15, -1,
- 97, 18, 19, 20, 21, 22, 23, 24, -1, 26,
- 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
- 37, -1, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, -1, -1, -1, -1,
- -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
- 97, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, -1, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, -1, -1, -1, -1,
- 46, 47, 48, 49, 50, 51, -1, 53, 54, 55,
- 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, -1, 69, 70, 71, 72, 73, 74, 75,
- 76, 77, 78, 79, 80, 81, 82, 83, 84, -1,
- 7, -1, 88, 10, 11, 12, 13, 14, 15, 16,
- -1, 18, 19, 20, 21, 22, 23, 24, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, 40, 41, -1, -1, -1, -1, 46,
- 47, 48, 49, 50, 51, -1, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, -1, 69, 70, 71, 72, 73, 74, 75, 76,
- 77, 78, 79, 80, 81, 82, 83, 84, -1, 7,
- -1, 88, 10, 11, 12, 13, 14, 15, 16, -1,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
- 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
- 38, 39, 40, 41, -1, -1, -1, -1, 46, 47,
- 48, 49, 50, 51, -1, 53, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
- -1, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 82, 83, 84, -1, 7, -1,
- 88, 10, 11, 12, 13, 14, 15, 16, -1, 18,
- 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, -1, -1, -1, -1, 46, 47, 48,
- 49, 50, 51, -1, 53, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 66, 67, -1,
- 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
- 79, 80, 81, 82, 83, 84, -1, 7, -1, 88,
- 10, 11, 12, 13, 14, 15, 16, -1, 18, 19,
+ 82, 83, 84, 85, 86, -1, 7, -1, 90, 10,
+ 11, 12, 13, 14, 15, 16, 17, -1, 19, 20,
+ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 42, 43, -1, -1, -1, -1, 48, 49, 50,
+ 51, 52, 53, -1, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, -1,
+ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
+ 81, 82, 83, 84, 85, 86, -1, 7, -1, 90,
+ 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
- 40, 41, -1, -1, -1, -1, 46, 47, 48, 49,
- 50, 51, -1, 53, 54, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 66, 67, -1, 69,
- 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, 7, -1, -1, 88, 11,
- 12, 13, 14, 15, -1, -1, 18, 19, 20, 21,
- -1, 23, 24, -1, 26, 27, 28, 29, 30, 31,
- 32, -1, 34, -1, 36, 37, -1, 39, 40, 41,
- -1, -1, -1, -1, 46, 47, 48, 49, 50, 51,
- -1, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 66, 67, -1, 69, 70, 71,
- 72, 73, 74, 75, 76, 77, 78, 79, 80, 28,
- 82, -1, -1, -1, -1, 34, 88, -1, -1, -1,
- -1, -1, 28, 42, 43, 44, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 42, 43, 44, 45,
- 46, 47, 28, 49, -1, -1, 52, 53, 54, -1,
- -1, -1, -1, -1, -1, -1, 42, 43, 44, 45,
- 46, 47, -1, 49, -1, -1, 52, 53, 54, -1,
- 89, 90, 91, 92, 93, 94, 95, -1, -1, -1,
- -1, -1, -1, 89, 90, 91, 92, 93, 94, 95,
- -1, -1, -1, -1, -1, -1, 28, -1, -1, -1,
- -1, -1, -1, 89, 90, 91, 92, 93, 94, 95,
- 42, 43, 44, 45, 46, 47, 28, 49, -1, -1,
- 52, 53, 54, -1, -1, -1, -1, -1, -1, 28,
- 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, 42, 43, -1, 45, 46, 47, -1,
- 49, -1, -1, 52, 53, 54, 34, 89, 90, 91,
- 92, 93, 94, 95, 42, 43, 44, 45, 46, 47,
- -1, 49, -1, -1, 52, 53, 54, 89, 90, 91,
- 92, 93, 94, 95, -1, -1, -1, -1, 33, -1,
- 89, 90, 91, 92, 93, 94, 95, 42, 43, 44,
- 45, 46, 47, -1, 49, -1, -1, 52, 53, 54,
- -1, 89, 90, 91, 92, 93, 94, 95, -1, 97,
- 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 89, 90, 91, 92, 93, 94,
- 95, 42, 43, 44, 45, 46, 47, -1, 49, -1,
- -1, 52, 53, 54, -1, -1, -1, 89, 90, 91,
- 92, 93, 94, 95, -1, -1, 98, -1, 100, 42,
- 43, 44, 45, 46, 47, -1, 49, -1, -1, 52,
- 53, 54, -1, -1, -1, -1, -1, -1, 89, 90,
- 91, 92, 93, 94, 95, -1, -1, -1, -1, 100,
- 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
- 52, 53, 54, -1, -1, -1, 89, 90, 91, 92,
- 93, 94, 95, -1, -1, 98, 42, 43, 44, 45,
- 46, 47, -1, 49, -1, -1, 52, 53, 54, -1,
- -1, -1, -1, -1, -1, -1, -1, 89, 90, 91,
- 92, 93, 94, 95, -1, 97, 42, 43, 44, 45,
- 46, 47, -1, 49, -1, -1, 52, 53, 54, -1,
- -1, -1, -1, 89, 90, 91, 92, 93, 94, 95,
- -1, 97, 42, 43, 44, 45, 46, 47, -1, 49,
- -1, -1, 52, 53, 54, -1, -1, -1, -1, -1,
- -1, -1, -1, 89, 90, 91, 92, 93, 94, 95,
- -1, 97, 42, 43, 44, 45, 46, 47, -1, 49,
- -1, -1, 52, 53, 54, -1, -1, -1, -1, 89,
- 90, 91, 92, 93, 94, 95, -1, 97, 42, 43,
- 44, 45, 46, 47, -1, 49, -1, -1, 52, 53,
- 54, -1, -1, -1, -1, -1, -1, -1, -1, 89,
- 90, 91, 92, 93, 94, 95, -1, 97, 42, 43,
- 44, 45, 46, 47, -1, 49, -1, -1, 52, 53,
- 54, -1, -1, -1, -1, 89, 90, 91, 92, 93,
- 94, 95, -1, 97, -1, -1, -1, 42, 43, 44,
- 45, 46, 47, -1, 49, 79, 80, 52, 53, 54,
- -1, -1, -1, -1, -1, 89, 90, 91, 92, 93,
- 94, 95, 42, 43, 44, 45, 46, 47, -1, 49,
- -1, -1, 52, 53, 54, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 89, 90, 91, 92, 93, 94,
- 95, 42, 43, -1, 45, 46, 47, -1, 49, -1,
- -1, 52, 53, 54, -1, -1, -1, -1, -1, 89,
- 90, 91, 92, 93, 94, 95, 42, 43, 44, 45,
- -1, -1, -1, 49, -1, -1, 52, 53, 54, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 89, 90,
- 91, 92, 93, 94, 95, 42, 43, -1, 45, -1,
- -1, -1, 49, -1, -1, 52, 53, 54, -1, -1,
- -1, -1, -1, 89, 90, 91, 92, 93, 94, 95,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 40, 41, 42, 43, -1, -1, -1, -1, 48, 49,
+ 50, 51, 52, 53, -1, 55, 56, 57, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, 85, 86, -1, 7, -1,
+ 90, 10, 11, 12, 13, 14, 15, 16, 17, -1,
+ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, -1, -1, -1, -1, 48,
+ 49, 50, 51, 52, 53, -1, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, -1, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 83, 84, 85, 86, 7, -1,
+ -1, 90, 11, 12, 13, 14, 15, 16, -1, -1,
+ 19, 20, 21, 22, 23, -1, 25, 26, -1, 28,
+ 29, 30, 31, 32, 33, 34, -1, 36, -1, 38,
+ 39, -1, 41, 42, 43, -1, -1, -1, -1, 48,
+ 49, 50, 51, 52, 53, -1, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
+ 69, -1, 71, 72, 73, 74, 75, 76, 77, 78,
+ 79, 80, 81, 82, 30, 84, -1, -1, -1, -1,
+ 36, 90, -1, -1, -1, -1, -1, 30, 44, 45,
+ 46, 47, 48, 49, -1, 51, -1, -1, 54, 55,
+ 56, 44, 45, 46, 47, 48, 49, 30, 51, -1,
+ -1, 54, 55, 56, -1, -1, -1, -1, -1, -1,
+ -1, 44, 45, 46, 47, 48, 49, -1, 51, -1,
+ -1, 54, 55, 56, -1, 91, 92, 93, 94, 95,
+ 96, 97, -1, -1, -1, -1, -1, -1, 91, 92,
+ 93, 94, 95, 96, 97, -1, -1, -1, -1, -1,
+ -1, 30, -1, -1, -1, -1, -1, -1, 91, 92,
+ 93, 94, 95, 96, 97, 44, 45, 46, 47, 48,
+ 49, 30, 51, -1, -1, 54, 55, 56, -1, -1,
+ -1, -1, -1, -1, 30, 44, 45, 46, 47, 48,
+ 49, -1, 51, -1, -1, 54, 55, 56, 44, 45,
+ -1, 47, 48, 49, -1, 51, -1, -1, 54, 55,
+ 56, 36, 91, 92, 93, 94, 95, 96, 97, 44,
+ 45, 46, 47, 48, 49, -1, 51, -1, -1, 54,
+ 55, 56, 91, 92, 93, 94, 95, 96, 97, -1,
+ -1, -1, -1, 35, -1, 91, 92, 93, 94, 95,
+ 96, 97, 44, 45, 46, 47, 48, 49, -1, 51,
+ -1, -1, 54, 55, 56, -1, 91, 92, 93, 94,
+ 95, 96, 97, -1, 99, 44, 45, 46, 47, 48,
+ 49, -1, 51, -1, -1, 54, 55, 56, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 91,
+ 92, 93, 94, 95, 96, 97, 44, 45, 46, 47,
+ 48, 49, -1, 51, -1, -1, 54, 55, 56, -1,
+ -1, -1, 91, 92, 93, 94, 95, 96, 97, -1,
+ -1, 100, -1, 102, 44, 45, 46, 47, 48, 49,
+ -1, 51, -1, -1, 54, 55, 56, -1, -1, -1,
+ -1, -1, -1, 91, 92, 93, 94, 95, 96, 97,
+ -1, -1, -1, -1, 102, 44, 45, 46, 47, 48,
+ 49, -1, 51, -1, -1, 54, 55, 56, -1, -1,
+ -1, 91, 92, 93, 94, 95, 96, 97, -1, -1,
+ 100, 44, 45, 46, 47, 48, 49, -1, 51, -1,
+ -1, 54, 55, 56, -1, -1, -1, -1, -1, -1,
+ -1, -1, 91, 92, 93, 94, 95, 96, 97, -1,
+ 99, 44, 45, 46, 47, 48, 49, -1, 51, -1,
+ -1, 54, 55, 56, -1, -1, -1, -1, 91, 92,
+ 93, 94, 95, 96, 97, -1, 99, 44, 45, 46,
+ 47, 48, 49, -1, 51, -1, -1, 54, 55, 56,
+ -1, -1, -1, -1, -1, -1, -1, -1, 91, 92,
+ 93, 94, 95, 96, 97, -1, 99, 44, 45, 46,
+ 47, 48, 49, -1, 51, -1, -1, 54, 55, 56,
+ -1, -1, -1, -1, 91, 92, 93, 94, 95, 96,
+ 97, -1, 99, 44, 45, 46, 47, 48, 49, -1,
+ 51, -1, -1, 54, 55, 56, -1, -1, -1, -1,
+ -1, -1, -1, -1, 91, 92, 93, 94, 95, 96,
+ 97, -1, 99, 44, 45, 46, 47, 48, 49, -1,
+ 51, -1, -1, 54, 55, 56, -1, -1, -1, -1,
+ 91, 92, 93, 94, 95, 96, 97, -1, 99, -1,
+ -1, -1, 44, 45, 46, 47, 48, 49, -1, 51,
+ 81, 82, 54, 55, 56, -1, -1, -1, -1, -1,
+ 91, 92, 93, 94, 95, 96, 97, 44, 45, 46,
+ 47, 48, 49, -1, 51, -1, -1, 54, 55, 56,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 91,
+ 92, 93, 94, 95, 96, 97, 44, 45, -1, 47,
+ 48, 49, -1, 51, -1, -1, 54, 55, 56, -1,
+ -1, -1, -1, -1, 91, 92, 93, 94, 95, 96,
+ 97, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 89, 90, 91, 92, 93, 94, 95
+ -1, -1, -1, 91, 92, 93, 94, 95, 96, 97
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 7, 11, 12, 13, 14, 15, 18, 19, 20,
+ 0, 7, 11, 12, 13, 14, 15, 16, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
- 31, 32, 34, 35, 36, 37, 38, 39, 40, 41,
- 46, 47, 48, 49, 50, 51, 53, 54, 55, 56,
+ 31, 32, 33, 34, 36, 37, 38, 39, 40, 41,
+ 42, 43, 48, 49, 50, 51, 52, 53, 55, 56,
57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- 67, 69, 70, 71, 72, 73, 74, 75, 76, 77,
- 78, 79, 80, 81, 82, 83, 85, 88, 97, 105,
- 106, 107, 108, 109, 114, 116, 120, 121, 122, 123,
- 127, 129, 130, 131, 133, 134, 135, 31, 97, 10,
- 16, 18, 20, 21, 22, 25, 27, 30, 31, 32,
- 33, 35, 38, 39, 40, 41, 81, 82, 83, 84,
- 88, 116, 117, 118, 119, 5, 6, 8, 9, 11,
- 12, 13, 14, 19, 26, 48, 55, 57, 59, 61,
- 75, 78, 92, 93, 99, 101, 117, 124, 126, 142,
- 143, 146, 147, 149, 152, 153, 158, 161, 162, 163,
- 166, 99, 163, 117, 31, 124, 163, 36, 37, 75,
- 117, 143, 145, 156, 117, 117, 124, 163, 124, 126,
- 118, 163, 118, 117, 97, 122, 0, 107, 124, 163,
- 97, 97, 98, 99, 148, 162, 148, 148, 148, 163,
- 163, 162, 163, 163, 163, 163, 63, 64, 65, 66,
- 67, 70, 74, 117, 163, 162, 162, 100, 163, 8,
- 9, 103, 117, 159, 160, 163, 167, 168, 99, 97,
- 97, 28, 42, 43, 44, 45, 46, 47, 49, 52,
- 53, 54, 89, 90, 91, 92, 93, 94, 95, 98,
- 125, 142, 164, 166, 163, 33, 46, 47, 49, 53,
- 54, 118, 97, 97, 24, 50, 51, 117, 163, 117,
- 34, 44, 128, 33, 97, 97, 36, 97, 97, 97,
- 34, 97, 97, 118, 97, 117, 100, 163, 28, 164,
- 28, 34, 28, 34, 28, 34, 28, 34, 69, 76,
- 69, 76, 69, 76, 69, 76, 69, 76, 55, 57,
- 59, 61, 154, 28, 28, 79, 80, 98, 100, 103,
- 103, 102, 103, 98, 102, 102, 98, 100, 168, 26,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 168, 42, 43,
- 44, 45, 46, 47, 49, 52, 53, 54, 89, 90,
- 91, 92, 93, 94, 95, 98, 125, 97, 120, 97,
- 143, 144, 146, 144, 144, 23, 44, 97, 28, 163,
- 163, 84, 97, 110, 111, 112, 113, 163, 122, 97,
- 120, 136, 137, 138, 97, 98, 26, 162, 163, 162,
- 163, 162, 163, 162, 163, 23, 28, 155, 56, 58,
- 60, 62, 71, 72, 73, 77, 78, 150, 151, 162,
- 150, 162, 162, 100, 168, 163, 163, 163, 8, 9,
- 117, 160, 163, 98, 125, 163, 125, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 168, 97, 121, 139, 140, 141,
- 16, 136, 97, 97, 97, 163, 163, 136, 71, 72,
- 77, 78, 157, 162, 97, 117, 113, 97, 87, 138,
- 136, 100, 168, 163, 28, 28, 28, 28, 162, 155,
- 155, 155, 155, 162, 162, 155, 162, 162, 125, 100,
- 125, 16, 85, 132, 141, 97, 120, 97, 15, 34,
- 86, 162, 165, 166, 165, 165, 165, 118, 97, 10,
- 125, 162, 162, 162, 162, 162, 162, 162, 162, 28,
- 71, 151, 100, 97, 120, 97, 139, 136, 34, 163,
- 97, 42, 43, 45, 46, 47, 49, 52, 53, 54,
- 89, 90, 91, 92, 93, 94, 95, 28, 97, 115,
- 117, 100, 71, 139, 132, 86, 163, 97, 165, 165,
+ 67, 68, 69, 71, 72, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 84, 85, 87, 90,
+ 99, 107, 108, 109, 110, 111, 116, 118, 122, 123,
+ 124, 125, 129, 131, 132, 133, 135, 136, 137, 11,
+ 12, 57, 59, 61, 63, 77, 148, 33, 99, 10,
+ 15, 17, 19, 21, 22, 23, 24, 27, 29, 32,
+ 33, 34, 35, 37, 40, 41, 42, 43, 83, 84,
+ 85, 86, 90, 118, 119, 120, 121, 5, 6, 8,
+ 9, 11, 12, 13, 14, 20, 28, 50, 57, 59,
+ 61, 63, 77, 80, 94, 95, 101, 103, 119, 126,
+ 128, 144, 145, 148, 150, 152, 155, 156, 160, 163,
+ 164, 165, 168, 148, 101, 165, 119, 33, 126, 165,
+ 38, 39, 77, 119, 145, 147, 158, 119, 119, 126,
+ 165, 126, 128, 120, 165, 120, 119, 99, 124, 0,
+ 109, 126, 165, 101, 151, 164, 151, 165, 165, 165,
+ 165, 72, 99, 99, 99, 100, 151, 151, 165, 165,
+ 164, 65, 66, 67, 68, 69, 72, 76, 119, 165,
+ 164, 164, 102, 165, 8, 9, 105, 119, 161, 162,
+ 165, 169, 170, 101, 99, 99, 30, 44, 45, 46,
+ 47, 48, 49, 51, 54, 55, 56, 91, 92, 93,
+ 94, 95, 96, 97, 100, 127, 144, 166, 168, 99,
+ 165, 35, 48, 49, 51, 55, 56, 120, 99, 99,
+ 26, 52, 53, 119, 165, 119, 36, 46, 130, 35,
+ 99, 99, 38, 99, 99, 99, 36, 99, 99, 120,
+ 99, 102, 165, 30, 36, 30, 36, 30, 36, 30,
+ 36, 57, 59, 61, 63, 149, 119, 30, 166, 71,
+ 78, 71, 78, 71, 78, 71, 78, 71, 78, 30,
+ 30, 81, 82, 100, 102, 105, 105, 104, 105, 100,
+ 104, 104, 100, 102, 170, 28, 165, 165, 165, 165,
+ 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
+ 165, 165, 165, 170, 44, 45, 46, 47, 48, 49,
+ 51, 54, 55, 56, 91, 92, 93, 94, 95, 96,
+ 97, 100, 127, 99, 122, 99, 77, 145, 146, 148,
+ 146, 146, 25, 46, 99, 30, 165, 165, 86, 99,
+ 112, 113, 114, 115, 165, 124, 99, 122, 138, 139,
+ 140, 99, 100, 164, 165, 164, 165, 164, 165, 164,
+ 165, 25, 30, 157, 28, 58, 60, 62, 64, 73,
+ 74, 75, 79, 80, 153, 154, 164, 153, 164, 164,
+ 102, 170, 165, 165, 165, 8, 9, 119, 162, 165,
+ 100, 127, 165, 127, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 71, 136, 97, 98, 162, 132,
- 97, 97, 136, 165, 117, 136, 86, 86, 97, 97
+ 165, 170, 99, 123, 141, 142, 143, 17, 138, 99,
+ 99, 99, 165, 165, 138, 73, 74, 79, 80, 159,
+ 164, 99, 119, 115, 99, 89, 140, 138, 102, 170,
+ 30, 30, 30, 30, 164, 165, 157, 157, 157, 157,
+ 164, 164, 157, 164, 164, 127, 102, 127, 17, 87,
+ 134, 143, 99, 122, 99, 16, 36, 88, 164, 167,
+ 168, 167, 167, 167, 120, 99, 10, 127, 164, 164,
+ 164, 164, 164, 164, 164, 164, 30, 73, 154, 102,
+ 99, 122, 99, 141, 138, 36, 165, 99, 44, 45,
+ 47, 48, 49, 51, 54, 55, 56, 91, 92, 93,
+ 94, 95, 96, 97, 30, 99, 117, 119, 102, 73,
+ 141, 134, 88, 165, 99, 167, 167, 167, 167, 167,
+ 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
+ 167, 73, 138, 99, 100, 164, 134, 99, 99, 138,
+ 167, 119, 138, 88, 88, 99, 99
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 104, 105, 106, 106, 107, 107, 107, 107, 107,
- 108, 109, 110, 111, 111, 112, 112, 113, 113, 114,
- 114, 115, 115, 115, 116, 116, 116, 116, 116, 116,
- 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
- 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
- 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
- 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
- 116, 116, 116, 116, 116, 117, 117, 117, 117, 117,
- 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
- 117, 117, 117, 117, 117, 118, 118, 118, 119, 119,
- 120, 120, 121, 121, 121, 121, 121, 121, 122, 122,
- 122, 123, 123, 123, 123, 123, 123, 123, 123, 123,
- 123, 123, 123, 124, 124, 124, 124, 124, 124, 124,
- 124, 125, 125, 126, 126, 126, 126, 126, 127, 127,
- 127, 127, 128, 128, 129, 129, 129, 130, 130, 131,
- 131, 131, 131, 132, 132, 133, 133, 133, 133, 134,
- 134, 135, 136, 136, 137, 137, 138, 138, 139, 139,
- 140, 140, 141, 141, 142, 142, 142, 142, 142, 142,
- 142, 142, 142, 142, 142, 142, 142, 143, 144, 144,
- 145, 145, 146, 146, 146, 146, 146, 146, 146, 146,
- 146, 146, 147, 147, 148, 148, 148, 148, 149, 149,
- 149, 149, 149, 149, 150, 150, 150, 150, 150, 151,
- 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
- 153, 153, 153, 153, 153, 154, 154, 154, 154, 155,
- 155, 156, 156, 157, 157, 157, 157, 157, 158, 158,
- 158, 159, 159, 160, 160, 160, 161, 161, 162, 162,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 165, 165,
+ 0, 106, 107, 108, 108, 109, 109, 109, 109, 109,
+ 110, 111, 112, 113, 113, 114, 114, 115, 115, 116,
+ 116, 117, 117, 117, 118, 118, 118, 118, 118, 118,
+ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
+ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
+ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
+ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
+ 118, 118, 118, 118, 118, 118, 118, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 120, 120, 120,
+ 121, 121, 122, 122, 123, 123, 123, 123, 123, 123,
+ 124, 124, 124, 125, 125, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 126, 126, 126,
+ 126, 126, 126, 126, 126, 127, 127, 128, 128, 128,
+ 128, 128, 129, 129, 129, 129, 130, 130, 131, 131,
+ 131, 132, 132, 133, 133, 133, 133, 134, 134, 135,
+ 135, 135, 135, 136, 136, 137, 138, 138, 139, 139,
+ 140, 140, 141, 141, 142, 142, 143, 143, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 145, 146, 146, 147, 147, 148, 148, 148, 148,
+ 148, 148, 148, 148, 148, 148, 148, 149, 149, 149,
+ 149, 150, 150, 151, 151, 151, 151, 152, 152, 152,
+ 152, 152, 153, 153, 153, 153, 153, 154, 155, 155,
+ 155, 155, 155, 155, 155, 155, 155, 155, 156, 156,
+ 156, 156, 156, 157, 157, 158, 158, 159, 159, 159,
+ 159, 159, 160, 160, 160, 161, 161, 162, 162, 162,
+ 163, 163, 164, 164, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 165, 165, 166, 166, 167, 167,
- 168, 168
+ 165, 165, 165, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 167, 167, 167, 167, 167, 167, 167, 167,
+ 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
+ 168, 168, 169, 169, 170, 170
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
@@ -1992,30 +2018,30 @@ static const yytype_int8 yyr2[] =
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 0, 1, 2, 1, 3,
- 1, 2, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 3, 3, 3, 3, 3, 3, 3, 5, 3,
- 3, 2, 2, 0, 2, 4, 3, 5, 2, 4,
- 6, 0, 1, 2, 2, 5, 4, 3, 5, 5,
- 5, 5, 1, 1, 3, 3, 3, 4, 6, 6,
- 8, 7, 9, 0, 2, 7, 11, 12, 9, 4,
- 6, 4, 0, 1, 1, 2, 1, 1, 0, 1,
- 1, 2, 1, 1, 1, 1, 1, 1, 2, 3,
- 5, 3, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 2, 2, 4, 6, 4, 6, 4, 6,
- 4, 6, 2, 2, 1, 2, 4, 6, 2, 4,
- 4, 1, 1, 5, 1, 1, 5, 2, 2, 2,
+ 1, 1, 1, 1, 1, 1, 1, 0, 1, 2,
+ 1, 3, 1, 2, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 3, 3, 3, 3, 3, 3, 3,
+ 5, 3, 3, 2, 3, 3, 2, 0, 2, 4,
+ 3, 5, 2, 4, 6, 0, 1, 2, 2, 5,
+ 4, 3, 5, 5, 5, 5, 1, 1, 3, 3,
+ 3, 4, 6, 6, 8, 7, 9, 0, 2, 7,
+ 11, 12, 9, 4, 6, 4, 0, 1, 1, 2,
+ 1, 1, 0, 1, 1, 2, 1, 1, 1, 1,
+ 1, 1, 2, 3, 5, 3, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 2, 2, 4, 6,
+ 4, 6, 4, 6, 4, 6, 5, 1, 1, 1,
+ 1, 2, 2, 1, 2, 4, 6, 2, 4, 4,
+ 1, 1, 1, 1, 5, 2, 2, 2, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 6, 6,
+ 6, 6, 6, 1, 1, 2, 4, 1, 2, 5,
+ 2, 2, 3, 3, 3, 1, 3, 3, 3, 3,
+ 2, 2, 1, 1, 1, 1, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 6, 6, 6, 6, 6, 1, 1, 1, 1, 1,
- 1, 2, 4, 1, 2, 5, 2, 2, 3, 3,
- 3, 1, 3, 3, 3, 3, 2, 2, 1, 1,
- 1, 1, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3, 3, 1,
- 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3, 1, 1,
+ 3, 3, 3, 1, 1, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 4, 4, 0, 1,
- 1, 3
+ 3, 3, 1, 1, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 4, 4, 0, 1, 1, 3
};
@@ -2289,37 +2315,37 @@ yydestruct (const char *yymsg,
case YYSYMBOL_tVARID: /* tVARID */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2293 "engines/director/lingo/lingo-gr.cpp"
+#line 2319 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tSTRING: /* tSTRING */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2299 "engines/director/lingo/lingo-gr.cpp"
+#line 2325 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tSYMBOL: /* tSYMBOL */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2305 "engines/director/lingo/lingo-gr.cpp"
+#line 2331 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_tENDCLAUSE: /* tENDCLAUSE */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2311 "engines/director/lingo/lingo-gr.cpp"
+#line 2337 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_CMDID: /* CMDID */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2317 "engines/director/lingo/lingo-gr.cpp"
+#line 2343 "engines/director/lingo/lingo-gr.cpp"
break;
case YYSYMBOL_ID: /* ID */
#line 190 "engines/director/lingo/lingo-gr.y"
{ delete ((*yyvaluep).s); }
-#line 2323 "engines/director/lingo/lingo-gr.cpp"
+#line 2349 "engines/director/lingo/lingo-gr.cpp"
break;
default:
@@ -2587,7 +2613,7 @@ yyreduce:
case 2: /* script: scriptpartlist */
#line 196 "engines/director/lingo/lingo-gr.y"
{ g_lingo->_compiler->_assemblyAST = new ScriptNode((yyvsp[0].nodelist)); }
-#line 2591 "engines/director/lingo/lingo-gr.cpp"
+#line 2617 "engines/director/lingo/lingo-gr.cpp"
break;
case 3: /* scriptpartlist: scriptpart */
@@ -2598,7 +2624,7 @@ yyreduce:
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 2602 "engines/director/lingo/lingo-gr.cpp"
+#line 2628 "engines/director/lingo/lingo-gr.cpp"
break;
case 4: /* scriptpartlist: scriptpartlist scriptpart */
@@ -2608,37 +2634,37 @@ yyreduce:
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 2612 "engines/director/lingo/lingo-gr.cpp"
+#line 2638 "engines/director/lingo/lingo-gr.cpp"
break;
case 5: /* scriptpart: '\n' */
#line 211 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 2618 "engines/director/lingo/lingo-gr.cpp"
+#line 2644 "engines/director/lingo/lingo-gr.cpp"
break;
case 10: /* macro: tMACRO ID idlist '\n' stmtlist */
#line 244 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2624 "engines/director/lingo/lingo-gr.cpp"
+#line 2650 "engines/director/lingo/lingo-gr.cpp"
break;
case 11: /* factory: tFACTORY ID '\n' methodlist */
#line 248 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FactoryNode((yyvsp[-2].s), (yyvsp[0].nodelist)); }
-#line 2630 "engines/director/lingo/lingo-gr.cpp"
+#line 2656 "engines/director/lingo/lingo-gr.cpp"
break;
case 12: /* method: tMETHOD ID idlist '\n' stmtlist */
#line 250 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2636 "engines/director/lingo/lingo-gr.cpp"
+#line 2662 "engines/director/lingo/lingo-gr.cpp"
break;
case 13: /* methodlist: %empty */
#line 252 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 2642 "engines/director/lingo/lingo-gr.cpp"
+#line 2668 "engines/director/lingo/lingo-gr.cpp"
break;
case 15: /* nonemptymethodlist: methodlistline */
@@ -2649,7 +2675,7 @@ yyreduce:
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 2653 "engines/director/lingo/lingo-gr.cpp"
+#line 2679 "engines/director/lingo/lingo-gr.cpp"
break;
case 16: /* nonemptymethodlist: nonemptymethodlist methodlistline */
@@ -2659,13 +2685,13 @@ yyreduce:
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 2663 "engines/director/lingo/lingo-gr.cpp"
+#line 2689 "engines/director/lingo/lingo-gr.cpp"
break;
case 17: /* methodlistline: '\n' */
#line 269 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 2669 "engines/director/lingo/lingo-gr.cpp"
+#line 2695 "engines/director/lingo/lingo-gr.cpp"
break;
case 19: /* handler: tON ID idlist '\n' stmtlist tENDCLAUSE endargdef '\n' */
@@ -2674,1663 +2700,1687 @@ yyreduce:
(yyval.node) = new HandlerNode((yyvsp[-6].s), (yyvsp[-5].idlist), (yyvsp[-3].nodelist));
checkEnd((yyvsp[-2].s), (yyvsp[-6].s), false);
delete (yyvsp[-2].s); }
-#line 2678 "engines/director/lingo/lingo-gr.cpp"
+#line 2704 "engines/director/lingo/lingo-gr.cpp"
break;
case 20: /* handler: tON ID idlist '\n' stmtlist */
#line 279 "engines/director/lingo/lingo-gr.y"
{ // D4. No 'end' clause
(yyval.node) = new HandlerNode((yyvsp[-3].s), (yyvsp[-2].idlist), (yyvsp[0].nodelist)); }
-#line 2685 "engines/director/lingo/lingo-gr.cpp"
+#line 2711 "engines/director/lingo/lingo-gr.cpp"
break;
case 22: /* endargdef: ID */
#line 284 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 2691 "engines/director/lingo/lingo-gr.cpp"
+#line 2717 "engines/director/lingo/lingo-gr.cpp"
break;
case 23: /* endargdef: endargdef ',' ID */
#line 285 "engines/director/lingo/lingo-gr.y"
{ delete (yyvsp[0].s); }
-#line 2697 "engines/director/lingo/lingo-gr.cpp"
+#line 2723 "engines/director/lingo/lingo-gr.cpp"
break;
case 25: /* CMDID: tABBREVIATED */
#line 293 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbreviated"); }
-#line 2703 "engines/director/lingo/lingo-gr.cpp"
+#line 2729 "engines/director/lingo/lingo-gr.cpp"
break;
case 26: /* CMDID: tABBREV */
#line 294 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbrev"); }
-#line 2709 "engines/director/lingo/lingo-gr.cpp"
+#line 2735 "engines/director/lingo/lingo-gr.cpp"
break;
case 27: /* CMDID: tABBR */
#line 295 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("abbr"); }
-#line 2715 "engines/director/lingo/lingo-gr.cpp"
+#line 2741 "engines/director/lingo/lingo-gr.cpp"
break;
case 28: /* CMDID: tAFTER */
#line 296 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("after"); }
-#line 2721 "engines/director/lingo/lingo-gr.cpp"
+#line 2747 "engines/director/lingo/lingo-gr.cpp"
break;
case 29: /* CMDID: tAND */
#line 297 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("and"); }
-#line 2727 "engines/director/lingo/lingo-gr.cpp"
+#line 2753 "engines/director/lingo/lingo-gr.cpp"
break;
case 30: /* CMDID: tBEFORE */
#line 298 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("before"); }
-#line 2733 "engines/director/lingo/lingo-gr.cpp"
+#line 2759 "engines/director/lingo/lingo-gr.cpp"
break;
case 31: /* CMDID: tCAST */
#line 299 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("cast"); }
-#line 2739 "engines/director/lingo/lingo-gr.cpp"
+#line 2765 "engines/director/lingo/lingo-gr.cpp"
break;
case 32: /* CMDID: tCHAR */
#line 300 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("char"); }
-#line 2745 "engines/director/lingo/lingo-gr.cpp"
+#line 2771 "engines/director/lingo/lingo-gr.cpp"
break;
case 33: /* CMDID: tCHARS */
#line 301 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("chars"); }
-#line 2751 "engines/director/lingo/lingo-gr.cpp"
+#line 2777 "engines/director/lingo/lingo-gr.cpp"
break;
case 34: /* CMDID: tCONTAINS */
#line 302 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("contains"); }
-#line 2757 "engines/director/lingo/lingo-gr.cpp"
+#line 2783 "engines/director/lingo/lingo-gr.cpp"
break;
case 35: /* CMDID: tDATE */
#line 303 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("date"); }
-#line 2763 "engines/director/lingo/lingo-gr.cpp"
+#line 2789 "engines/director/lingo/lingo-gr.cpp"
break;
- case 36: /* CMDID: tDOWN */
+ case 36: /* CMDID: tDELETE */
#line 304 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("down"); }
-#line 2769 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("delete"); }
+#line 2795 "engines/director/lingo/lingo-gr.cpp"
break;
- case 37: /* CMDID: tFIELD */
+ case 37: /* CMDID: tDOWN */
#line 305 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("field"); }
-#line 2775 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("down"); }
+#line 2801 "engines/director/lingo/lingo-gr.cpp"
break;
- case 38: /* CMDID: tFRAME */
+ case 38: /* CMDID: tFIELD */
#line 306 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("frame"); }
-#line 2781 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("field"); }
+#line 2807 "engines/director/lingo/lingo-gr.cpp"
break;
- case 39: /* CMDID: tIN */
+ case 39: /* CMDID: tFRAME */
#line 307 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("in"); }
-#line 2787 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("frame"); }
+#line 2813 "engines/director/lingo/lingo-gr.cpp"
break;
- case 40: /* CMDID: tINTERSECTS */
+ case 40: /* CMDID: tHILITE */
#line 308 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("intersects"); }
-#line 2793 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("hilite"); }
+#line 2819 "engines/director/lingo/lingo-gr.cpp"
break;
- case 41: /* CMDID: tINTO */
+ case 41: /* CMDID: tIN */
#line 309 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("into"); }
-#line 2799 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("in"); }
+#line 2825 "engines/director/lingo/lingo-gr.cpp"
break;
- case 42: /* CMDID: tITEM */
+ case 42: /* CMDID: tINTERSECTS */
#line 310 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("item"); }
-#line 2805 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("intersects"); }
+#line 2831 "engines/director/lingo/lingo-gr.cpp"
break;
- case 43: /* CMDID: tITEMS */
+ case 43: /* CMDID: tINTO */
#line 311 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("items"); }
-#line 2811 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("into"); }
+#line 2837 "engines/director/lingo/lingo-gr.cpp"
break;
- case 44: /* CMDID: tLAST */
+ case 44: /* CMDID: tITEM */
#line 312 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("last"); }
-#line 2817 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("item"); }
+#line 2843 "engines/director/lingo/lingo-gr.cpp"
break;
- case 45: /* CMDID: tLINE */
+ case 45: /* CMDID: tITEMS */
#line 313 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("line"); }
-#line 2823 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("items"); }
+#line 2849 "engines/director/lingo/lingo-gr.cpp"
break;
- case 46: /* CMDID: tLINES */
+ case 46: /* CMDID: tLAST */
#line 314 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("lines"); }
-#line 2829 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("last"); }
+#line 2855 "engines/director/lingo/lingo-gr.cpp"
break;
- case 47: /* CMDID: tLONG */
+ case 47: /* CMDID: tLINE */
#line 315 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("long"); }
-#line 2835 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("line"); }
+#line 2861 "engines/director/lingo/lingo-gr.cpp"
break;
- case 48: /* CMDID: tMENU */
+ case 48: /* CMDID: tLINES */
#line 316 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("menu"); }
-#line 2841 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("lines"); }
+#line 2867 "engines/director/lingo/lingo-gr.cpp"
break;
- case 49: /* CMDID: tMENUITEM */
+ case 49: /* CMDID: tLONG */
#line 317 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("menuItem"); }
-#line 2847 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("long"); }
+#line 2873 "engines/director/lingo/lingo-gr.cpp"
break;
- case 50: /* CMDID: tMENUITEMS */
+ case 50: /* CMDID: tMENU */
#line 318 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("menuItems"); }
-#line 2853 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("menu"); }
+#line 2879 "engines/director/lingo/lingo-gr.cpp"
break;
- case 51: /* CMDID: tMOD */
+ case 51: /* CMDID: tMENUITEM */
#line 319 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("mod"); }
-#line 2859 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("menuItem"); }
+#line 2885 "engines/director/lingo/lingo-gr.cpp"
break;
- case 52: /* CMDID: tMOVIE */
+ case 52: /* CMDID: tMENUITEMS */
#line 320 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("movie"); }
-#line 2865 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("menuItems"); }
+#line 2891 "engines/director/lingo/lingo-gr.cpp"
break;
- case 53: /* CMDID: tNEXT */
+ case 53: /* CMDID: tMOD */
#line 321 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("next"); }
-#line 2871 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("mod"); }
+#line 2897 "engines/director/lingo/lingo-gr.cpp"
break;
- case 54: /* CMDID: tNOT */
+ case 54: /* CMDID: tMOVIE */
#line 322 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("not"); }
-#line 2877 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("movie"); }
+#line 2903 "engines/director/lingo/lingo-gr.cpp"
break;
- case 55: /* CMDID: tNUMBER */
+ case 55: /* CMDID: tNEXT */
#line 323 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("number"); }
-#line 2883 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("next"); }
+#line 2909 "engines/director/lingo/lingo-gr.cpp"
break;
- case 56: /* CMDID: tOF */
+ case 56: /* CMDID: tNOT */
#line 324 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("of"); }
-#line 2889 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("not"); }
+#line 2915 "engines/director/lingo/lingo-gr.cpp"
break;
- case 57: /* CMDID: tOR */
+ case 57: /* CMDID: tNUMBER */
#line 325 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("or"); }
-#line 2895 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("number"); }
+#line 2921 "engines/director/lingo/lingo-gr.cpp"
break;
- case 58: /* CMDID: tPREVIOUS */
+ case 58: /* CMDID: tOF */
#line 326 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("previous"); }
-#line 2901 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("of"); }
+#line 2927 "engines/director/lingo/lingo-gr.cpp"
break;
- case 59: /* CMDID: tREPEAT */
+ case 59: /* CMDID: tOR */
#line 327 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("repeat"); }
-#line 2907 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("or"); }
+#line 2933 "engines/director/lingo/lingo-gr.cpp"
break;
- case 60: /* CMDID: tSCRIPT */
+ case 60: /* CMDID: tPREVIOUS */
#line 328 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("script"); }
-#line 2913 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("previous"); }
+#line 2939 "engines/director/lingo/lingo-gr.cpp"
break;
- case 61: /* CMDID: tASSERTERROR */
+ case 61: /* CMDID: tREPEAT */
#line 329 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("scummvmAssertError"); }
-#line 2919 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("repeat"); }
+#line 2945 "engines/director/lingo/lingo-gr.cpp"
break;
- case 62: /* CMDID: tSHORT */
+ case 62: /* CMDID: tSCRIPT */
#line 330 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("short"); }
-#line 2925 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("script"); }
+#line 2951 "engines/director/lingo/lingo-gr.cpp"
break;
- case 63: /* CMDID: tSOUND */
+ case 63: /* CMDID: tASSERTERROR */
#line 331 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("sound"); }
-#line 2931 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("scummvmAssertError"); }
+#line 2957 "engines/director/lingo/lingo-gr.cpp"
break;
- case 64: /* CMDID: tSPRITE */
+ case 64: /* CMDID: tSHORT */
#line 332 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("sprite"); }
-#line 2937 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("short"); }
+#line 2963 "engines/director/lingo/lingo-gr.cpp"
break;
- case 65: /* CMDID: tSTARTS */
+ case 65: /* CMDID: tSOUND */
#line 333 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("starts"); }
-#line 2943 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("sound"); }
+#line 2969 "engines/director/lingo/lingo-gr.cpp"
break;
- case 66: /* CMDID: tTHE */
+ case 66: /* CMDID: tSPRITE */
#line 334 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("the"); }
-#line 2949 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("sprite"); }
+#line 2975 "engines/director/lingo/lingo-gr.cpp"
break;
- case 67: /* CMDID: tTIME */
+ case 67: /* CMDID: tSTARTS */
#line 335 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("time"); }
-#line 2955 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("starts"); }
+#line 2981 "engines/director/lingo/lingo-gr.cpp"
break;
- case 68: /* CMDID: tTO */
+ case 68: /* CMDID: tTHE */
#line 336 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("to"); }
-#line 2961 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("the"); }
+#line 2987 "engines/director/lingo/lingo-gr.cpp"
break;
- case 69: /* CMDID: tWHILE */
+ case 69: /* CMDID: tTIME */
#line 337 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("while"); }
-#line 2967 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("time"); }
+#line 2993 "engines/director/lingo/lingo-gr.cpp"
break;
- case 70: /* CMDID: tWINDOW */
+ case 70: /* CMDID: tTO */
#line 338 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("window"); }
-#line 2973 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("to"); }
+#line 2999 "engines/director/lingo/lingo-gr.cpp"
break;
- case 71: /* CMDID: tWITH */
+ case 71: /* CMDID: tWHILE */
#line 339 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("with"); }
-#line 2979 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("while"); }
+#line 3005 "engines/director/lingo/lingo-gr.cpp"
break;
- case 72: /* CMDID: tWITHIN */
+ case 72: /* CMDID: tWINDOW */
#line 340 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("within"); }
-#line 2985 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("window"); }
+#line 3011 "engines/director/lingo/lingo-gr.cpp"
break;
- case 73: /* CMDID: tWORD */
+ case 73: /* CMDID: tWITH */
#line 341 "engines/director/lingo/lingo-gr.y"
- { (yyval.s) = new Common::String("word"); }
-#line 2991 "engines/director/lingo/lingo-gr.cpp"
+ { (yyval.s) = new Common::String("with"); }
+#line 3017 "engines/director/lingo/lingo-gr.cpp"
break;
- case 74: /* CMDID: tWORDS */
+ case 74: /* CMDID: tWITHIN */
#line 342 "engines/director/lingo/lingo-gr.y"
+ { (yyval.s) = new Common::String("within"); }
+#line 3023 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 75: /* CMDID: tWORD */
+#line 343 "engines/director/lingo/lingo-gr.y"
+ { (yyval.s) = new Common::String("word"); }
+#line 3029 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 76: /* CMDID: tWORDS */
+#line 344 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("words"); }
-#line 2997 "engines/director/lingo/lingo-gr.cpp"
+#line 3035 "engines/director/lingo/lingo-gr.cpp"
break;
- case 76: /* ID: tELSE */
-#line 346 "engines/director/lingo/lingo-gr.y"
+ case 78: /* ID: tELSE */
+#line 348 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("else"); }
-#line 3003 "engines/director/lingo/lingo-gr.cpp"
+#line 3041 "engines/director/lingo/lingo-gr.cpp"
break;
- case 77: /* ID: tENDCLAUSE */
-#line 347 "engines/director/lingo/lingo-gr.y"
+ case 79: /* ID: tENDCLAUSE */
+#line 349 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("end"); }
-#line 3009 "engines/director/lingo/lingo-gr.cpp"
+#line 3047 "engines/director/lingo/lingo-gr.cpp"
break;
- case 78: /* ID: tEXIT */
-#line 348 "engines/director/lingo/lingo-gr.y"
+ case 80: /* ID: tEXIT */
+#line 350 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("exit"); }
-#line 3015 "engines/director/lingo/lingo-gr.cpp"
+#line 3053 "engines/director/lingo/lingo-gr.cpp"
break;
- case 79: /* ID: tFACTORY */
-#line 349 "engines/director/lingo/lingo-gr.y"
+ case 81: /* ID: tFACTORY */
+#line 351 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("factory"); }
-#line 3021 "engines/director/lingo/lingo-gr.cpp"
+#line 3059 "engines/director/lingo/lingo-gr.cpp"
break;
- case 80: /* ID: tGLOBAL */
-#line 350 "engines/director/lingo/lingo-gr.y"
+ case 82: /* ID: tGLOBAL */
+#line 352 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("global"); }
-#line 3027 "engines/director/lingo/lingo-gr.cpp"
+#line 3065 "engines/director/lingo/lingo-gr.cpp"
break;
- case 81: /* ID: tGO */
-#line 351 "engines/director/lingo/lingo-gr.y"
+ case 83: /* ID: tGO */
+#line 353 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("go"); }
-#line 3033 "engines/director/lingo/lingo-gr.cpp"
+#line 3071 "engines/director/lingo/lingo-gr.cpp"
break;
- case 82: /* ID: tIF */
-#line 352 "engines/director/lingo/lingo-gr.y"
+ case 84: /* ID: tIF */
+#line 354 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("if"); }
-#line 3039 "engines/director/lingo/lingo-gr.cpp"
+#line 3077 "engines/director/lingo/lingo-gr.cpp"
break;
- case 83: /* ID: tINSTANCE */
-#line 353 "engines/director/lingo/lingo-gr.y"
+ case 85: /* ID: tINSTANCE */
+#line 355 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("instance"); }
-#line 3045 "engines/director/lingo/lingo-gr.cpp"
+#line 3083 "engines/director/lingo/lingo-gr.cpp"
break;
- case 84: /* ID: tMACRO */
-#line 354 "engines/director/lingo/lingo-gr.y"
+ case 86: /* ID: tMACRO */
+#line 356 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("macro"); }
-#line 3051 "engines/director/lingo/lingo-gr.cpp"
+#line 3089 "engines/director/lingo/lingo-gr.cpp"
break;
- case 85: /* ID: tMETHOD */
-#line 355 "engines/director/lingo/lingo-gr.y"
+ case 87: /* ID: tMETHOD */
+#line 357 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("method"); }
-#line 3057 "engines/director/lingo/lingo-gr.cpp"
+#line 3095 "engines/director/lingo/lingo-gr.cpp"
break;
- case 86: /* ID: tON */
-#line 356 "engines/director/lingo/lingo-gr.y"
+ case 88: /* ID: tON */
+#line 358 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("on"); }
-#line 3063 "engines/director/lingo/lingo-gr.cpp"
+#line 3101 "engines/director/lingo/lingo-gr.cpp"
break;
- case 87: /* ID: tOPEN */
-#line 357 "engines/director/lingo/lingo-gr.y"
+ case 89: /* ID: tOPEN */
+#line 359 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("open"); }
-#line 3069 "engines/director/lingo/lingo-gr.cpp"
+#line 3107 "engines/director/lingo/lingo-gr.cpp"
break;
- case 88: /* ID: tPLAY */
-#line 358 "engines/director/lingo/lingo-gr.y"
+ case 90: /* ID: tPLAY */
+#line 360 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("play"); }
-#line 3075 "engines/director/lingo/lingo-gr.cpp"
+#line 3113 "engines/director/lingo/lingo-gr.cpp"
break;
- case 89: /* ID: tPROPERTY */
-#line 359 "engines/director/lingo/lingo-gr.y"
+ case 91: /* ID: tPROPERTY */
+#line 361 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("property"); }
-#line 3081 "engines/director/lingo/lingo-gr.cpp"
+#line 3119 "engines/director/lingo/lingo-gr.cpp"
break;
- case 90: /* ID: tPUT */
-#line 360 "engines/director/lingo/lingo-gr.y"
+ case 92: /* ID: tPUT */
+#line 362 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("put"); }
-#line 3087 "engines/director/lingo/lingo-gr.cpp"
+#line 3125 "engines/director/lingo/lingo-gr.cpp"
break;
- case 91: /* ID: tSET */
-#line 361 "engines/director/lingo/lingo-gr.y"
+ case 93: /* ID: tSET */
+#line 363 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("set"); }
-#line 3093 "engines/director/lingo/lingo-gr.cpp"
+#line 3131 "engines/director/lingo/lingo-gr.cpp"
break;
- case 92: /* ID: tTELL */
-#line 362 "engines/director/lingo/lingo-gr.y"
+ case 94: /* ID: tTELL */
+#line 364 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("tell"); }
-#line 3099 "engines/director/lingo/lingo-gr.cpp"
+#line 3137 "engines/director/lingo/lingo-gr.cpp"
break;
- case 93: /* ID: tTHEN */
-#line 363 "engines/director/lingo/lingo-gr.y"
+ case 95: /* ID: tTHEN */
+#line 365 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("then"); }
-#line 3105 "engines/director/lingo/lingo-gr.cpp"
+#line 3143 "engines/director/lingo/lingo-gr.cpp"
break;
- case 94: /* ID: tWHEN */
-#line 364 "engines/director/lingo/lingo-gr.y"
+ case 96: /* ID: tWHEN */
+#line 366 "engines/director/lingo/lingo-gr.y"
{ (yyval.s) = new Common::String("when"); }
-#line 3111 "engines/director/lingo/lingo-gr.cpp"
+#line 3149 "engines/director/lingo/lingo-gr.cpp"
break;
- case 95: /* idlist: %empty */
-#line 367 "engines/director/lingo/lingo-gr.y"
+ case 97: /* idlist: %empty */
+#line 369 "engines/director/lingo/lingo-gr.y"
{ (yyval.idlist) = new IDList; }
-#line 3117 "engines/director/lingo/lingo-gr.cpp"
+#line 3155 "engines/director/lingo/lingo-gr.cpp"
break;
- case 98: /* nonemptyidlist: ID */
-#line 372 "engines/director/lingo/lingo-gr.y"
+ case 100: /* nonemptyidlist: ID */
+#line 374 "engines/director/lingo/lingo-gr.y"
{
Common::Array<Common::String *> *list = new IDList;
list->push_back((yyvsp[0].s));
(yyval.idlist) = list; }
-#line 3126 "engines/director/lingo/lingo-gr.cpp"
+#line 3164 "engines/director/lingo/lingo-gr.cpp"
break;
- case 99: /* nonemptyidlist: nonemptyidlist ',' ID */
-#line 376 "engines/director/lingo/lingo-gr.y"
+ case 101: /* nonemptyidlist: nonemptyidlist ',' ID */
+#line 378 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].idlist)->push_back((yyvsp[0].s));
(yyval.idlist) = (yyvsp[-2].idlist); }
-#line 3134 "engines/director/lingo/lingo-gr.cpp"
+#line 3172 "engines/director/lingo/lingo-gr.cpp"
break;
- case 101: /* stmt: tENDIF '\n' */
-#line 387 "engines/director/lingo/lingo-gr.y"
+ case 103: /* stmt: tENDIF '\n' */
+#line 389 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3140 "engines/director/lingo/lingo-gr.cpp"
+#line 3178 "engines/director/lingo/lingo-gr.cpp"
break;
- case 111: /* proc: CMDID cmdargs '\n' */
-#line 403 "engines/director/lingo/lingo-gr.y"
+ case 113: /* proc: CMDID cmdargs '\n' */
+#line 405 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode((yyvsp[-2].s), (yyvsp[-1].nodelist)); }
-#line 3146 "engines/director/lingo/lingo-gr.cpp"
+#line 3184 "engines/director/lingo/lingo-gr.cpp"
break;
- case 112: /* proc: tPUT cmdargs '\n' */
-#line 404 "engines/director/lingo/lingo-gr.y"
+ case 114: /* proc: tPUT cmdargs '\n' */
+#line 406 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("put"), (yyvsp[-1].nodelist)); }
-#line 3152 "engines/director/lingo/lingo-gr.cpp"
+#line 3190 "engines/director/lingo/lingo-gr.cpp"
break;
- case 113: /* proc: tGO cmdargs '\n' */
-#line 405 "engines/director/lingo/lingo-gr.y"
+ case 115: /* proc: tGO cmdargs '\n' */
+#line 407 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("go"), (yyvsp[-1].nodelist)); }
-#line 3158 "engines/director/lingo/lingo-gr.cpp"
+#line 3196 "engines/director/lingo/lingo-gr.cpp"
break;
- case 114: /* proc: tGO frameargs '\n' */
-#line 406 "engines/director/lingo/lingo-gr.y"
+ case 116: /* proc: tGO frameargs '\n' */
+#line 408 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("go"), (yyvsp[-1].nodelist)); }
-#line 3164 "engines/director/lingo/lingo-gr.cpp"
+#line 3202 "engines/director/lingo/lingo-gr.cpp"
break;
- case 115: /* proc: tPLAY cmdargs '\n' */
-#line 407 "engines/director/lingo/lingo-gr.y"
+ case 117: /* proc: tPLAY cmdargs '\n' */
+#line 409 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("play"), (yyvsp[-1].nodelist)); }
-#line 3170 "engines/director/lingo/lingo-gr.cpp"
+#line 3208 "engines/director/lingo/lingo-gr.cpp"
break;
- case 116: /* proc: tPLAY frameargs '\n' */
-#line 408 "engines/director/lingo/lingo-gr.y"
+ case 118: /* proc: tPLAY frameargs '\n' */
+#line 410 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("play"), (yyvsp[-1].nodelist)); }
-#line 3176 "engines/director/lingo/lingo-gr.cpp"
+#line 3214 "engines/director/lingo/lingo-gr.cpp"
break;
- case 117: /* proc: tOPEN cmdargs '\n' */
-#line 409 "engines/director/lingo/lingo-gr.y"
+ case 119: /* proc: tOPEN cmdargs '\n' */
+#line 411 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new CmdNode(new Common::String("open"), (yyvsp[-1].nodelist)); }
-#line 3182 "engines/director/lingo/lingo-gr.cpp"
+#line 3220 "engines/director/lingo/lingo-gr.cpp"
break;
- case 118: /* proc: tOPEN expr tWITH expr '\n' */
-#line 410 "engines/director/lingo/lingo-gr.y"
+ case 120: /* proc: tOPEN expr tWITH expr '\n' */
+#line 412 "engines/director/lingo/lingo-gr.y"
{
NodeList *args = new NodeList;
args->push_back((yyvsp[-3].node));
args->push_back((yyvsp[-1].node));
(yyval.node) = new CmdNode(new Common::String("open"), args); }
-#line 3192 "engines/director/lingo/lingo-gr.cpp"
+#line 3230 "engines/director/lingo/lingo-gr.cpp"
break;
- case 119: /* proc: tNEXT tREPEAT '\n' */
-#line 415 "engines/director/lingo/lingo-gr.y"
+ case 121: /* proc: tNEXT tREPEAT '\n' */
+#line 417 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new NextRepeatNode(); }
-#line 3198 "engines/director/lingo/lingo-gr.cpp"
+#line 3236 "engines/director/lingo/lingo-gr.cpp"
break;
- case 120: /* proc: tEXIT tREPEAT '\n' */
-#line 416 "engines/director/lingo/lingo-gr.y"
+ case 122: /* proc: tEXIT tREPEAT '\n' */
+#line 418 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ExitRepeatNode(); }
-#line 3204 "engines/director/lingo/lingo-gr.cpp"
+#line 3242 "engines/director/lingo/lingo-gr.cpp"
break;
- case 121: /* proc: tEXIT '\n' */
-#line 417 "engines/director/lingo/lingo-gr.y"
+ case 123: /* proc: tEXIT '\n' */
+#line 419 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ExitNode(); }
-#line 3210 "engines/director/lingo/lingo-gr.cpp"
+#line 3248 "engines/director/lingo/lingo-gr.cpp"
break;
- case 122: /* proc: tASSERTERROR stmtoneliner */
-#line 418 "engines/director/lingo/lingo-gr.y"
- { (yyval.node) = new AssertErrorNode((yyvsp[0].node)); }
-#line 3216 "engines/director/lingo/lingo-gr.cpp"
+ case 124: /* proc: tDELETE chunk '\n' */
+#line 420 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new DeleteNode((yyvsp[-1].node)); }
+#line 3254 "engines/director/lingo/lingo-gr.cpp"
break;
- case 123: /* cmdargs: %empty */
+ case 125: /* proc: tHILITE chunk '\n' */
#line 421 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new HiliteNode((yyvsp[-1].node)); }
+#line 3260 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 126: /* proc: tASSERTERROR stmtoneliner */
+#line 422 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new AssertErrorNode((yyvsp[0].node)); }
+#line 3266 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 127: /* cmdargs: %empty */
+#line 425 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd`
(yyval.nodelist) = new NodeList; }
-#line 3224 "engines/director/lingo/lingo-gr.cpp"
+#line 3274 "engines/director/lingo/lingo-gr.cpp"
break;
- case 124: /* cmdargs: expr trailingcomma */
-#line 424 "engines/director/lingo/lingo-gr.y"
+ case 128: /* cmdargs: expr trailingcomma */
+#line 428 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg` and `cmd(arg)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-1].node));
(yyval.nodelist) = args; }
-#line 3234 "engines/director/lingo/lingo-gr.cpp"
+#line 3284 "engines/director/lingo/lingo-gr.cpp"
break;
- case 125: /* cmdargs: expr ',' nonemptyexprlist trailingcomma */
-#line 429 "engines/director/lingo/lingo-gr.y"
+ case 129: /* cmdargs: expr ',' nonemptyexprlist trailingcomma */
+#line 433 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd args, ...)
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-3].node));
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3243 "engines/director/lingo/lingo-gr.cpp"
+#line 3293 "engines/director/lingo/lingo-gr.cpp"
break;
- case 126: /* cmdargs: expr expr_nounarymath trailingcomma */
-#line 433 "engines/director/lingo/lingo-gr.y"
+ case 130: /* cmdargs: expr expr_nounarymath trailingcomma */
+#line 437 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg arg`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
args->push_back((yyvsp[-1].node));
(yyval.nodelist) = args; }
-#line 3254 "engines/director/lingo/lingo-gr.cpp"
+#line 3304 "engines/director/lingo/lingo-gr.cpp"
break;
- case 127: /* cmdargs: expr expr_nounarymath ',' nonemptyexprlist trailingcomma */
-#line 439 "engines/director/lingo/lingo-gr.y"
+ case 131: /* cmdargs: expr expr_nounarymath ',' nonemptyexprlist trailingcomma */
+#line 443 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd arg arg, ...`
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-3].node));
(yyvsp[-1].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3264 "engines/director/lingo/lingo-gr.cpp"
+#line 3314 "engines/director/lingo/lingo-gr.cpp"
break;
- case 128: /* cmdargs: '(' ')' */
-#line 444 "engines/director/lingo/lingo-gr.y"
+ case 132: /* cmdargs: '(' ')' */
+#line 448 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd()`
(yyval.nodelist) = new NodeList; }
-#line 3272 "engines/director/lingo/lingo-gr.cpp"
+#line 3322 "engines/director/lingo/lingo-gr.cpp"
break;
- case 129: /* cmdargs: '(' expr ',' ')' */
-#line 447 "engines/director/lingo/lingo-gr.y"
+ case 133: /* cmdargs: '(' expr ',' ')' */
+#line 451 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd(args,)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
(yyval.nodelist) = args; }
-#line 3282 "engines/director/lingo/lingo-gr.cpp"
+#line 3332 "engines/director/lingo/lingo-gr.cpp"
break;
- case 130: /* cmdargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
-#line 452 "engines/director/lingo/lingo-gr.y"
+ case 134: /* cmdargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
+#line 456 "engines/director/lingo/lingo-gr.y"
{
// This matches `cmd(args, ...)`
(yyvsp[-2].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3291 "engines/director/lingo/lingo-gr.cpp"
+#line 3341 "engines/director/lingo/lingo-gr.cpp"
break;
- case 133: /* frameargs: tFRAME expr */
-#line 464 "engines/director/lingo/lingo-gr.y"
+ case 137: /* frameargs: tFRAME expr */
+#line 468 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg`
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3301 "engines/director/lingo/lingo-gr.cpp"
+#line 3351 "engines/director/lingo/lingo-gr.cpp"
break;
- case 134: /* frameargs: tMOVIE expr */
-#line 469 "engines/director/lingo/lingo-gr.y"
+ case 138: /* frameargs: tMOVIE expr */
+#line 473 "engines/director/lingo/lingo-gr.y"
{
// This matches `play movie arg`
NodeList *args = new NodeList;
args->push_back(new IntNode(1));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3312 "engines/director/lingo/lingo-gr.cpp"
+#line 3362 "engines/director/lingo/lingo-gr.cpp"
break;
- case 135: /* frameargs: tFRAME expr tOF tMOVIE expr */
-#line 475 "engines/director/lingo/lingo-gr.y"
+ case 139: /* frameargs: tFRAME expr tOF tMOVIE expr */
+#line 479 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg of movie arg`
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[-3].node)));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3323 "engines/director/lingo/lingo-gr.cpp"
+#line 3373 "engines/director/lingo/lingo-gr.cpp"
break;
- case 136: /* frameargs: expr tOF tMOVIE expr */
-#line 481 "engines/director/lingo/lingo-gr.y"
+ case 140: /* frameargs: expr tOF tMOVIE expr */
+#line 485 "engines/director/lingo/lingo-gr.y"
{
// This matches `play arg of movie arg` (weird but valid)
NodeList *args = new NodeList;
args->push_back((yyvsp[-3].node));
args->push_back(new MovieNode((yyvsp[0].node)));
(yyval.nodelist) = args; }
-#line 3334 "engines/director/lingo/lingo-gr.cpp"
+#line 3384 "engines/director/lingo/lingo-gr.cpp"
break;
- case 137: /* frameargs: tFRAME expr expr_nounarymath */
-#line 487 "engines/director/lingo/lingo-gr.y"
+ case 141: /* frameargs: tFRAME expr expr_nounarymath */
+#line 491 "engines/director/lingo/lingo-gr.y"
{
// This matches `play frame arg arg` (also weird but valid)
NodeList *args = new NodeList;
args->push_back(new FrameNode((yyvsp[-1].node)));
args->push_back((yyvsp[0].node));
(yyval.nodelist) = args; }
-#line 3345 "engines/director/lingo/lingo-gr.cpp"
+#line 3395 "engines/director/lingo/lingo-gr.cpp"
break;
- case 138: /* asgn: tPUT expr tINTO varorchunk '\n' */
-#line 495 "engines/director/lingo/lingo-gr.y"
+ case 142: /* asgn: tPUT expr tINTO varorchunk '\n' */
+#line 499 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutIntoNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3351 "engines/director/lingo/lingo-gr.cpp"
+#line 3401 "engines/director/lingo/lingo-gr.cpp"
break;
- case 139: /* asgn: tPUT expr tAFTER varorchunk '\n' */
-#line 496 "engines/director/lingo/lingo-gr.y"
+ case 143: /* asgn: tPUT expr tAFTER varorchunk '\n' */
+#line 500 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutAfterNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3357 "engines/director/lingo/lingo-gr.cpp"
+#line 3407 "engines/director/lingo/lingo-gr.cpp"
break;
- case 140: /* asgn: tPUT expr tBEFORE varorchunk '\n' */
-#line 497 "engines/director/lingo/lingo-gr.y"
+ case 144: /* asgn: tPUT expr tBEFORE varorchunk '\n' */
+#line 501 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PutBeforeNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3363 "engines/director/lingo/lingo-gr.cpp"
+#line 3413 "engines/director/lingo/lingo-gr.cpp"
break;
- case 141: /* asgn: tSET varorthe to expr '\n' */
-#line 498 "engines/director/lingo/lingo-gr.y"
+ case 145: /* asgn: tSET varorthe to expr '\n' */
+#line 502 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SetNode((yyvsp[-3].node), (yyvsp[-1].node)); }
-#line 3369 "engines/director/lingo/lingo-gr.cpp"
+#line 3419 "engines/director/lingo/lingo-gr.cpp"
break;
- case 144: /* definevars: tGLOBAL idlist '\n' */
-#line 503 "engines/director/lingo/lingo-gr.y"
+ case 148: /* definevars: tGLOBAL idlist '\n' */
+#line 507 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new GlobalNode((yyvsp[-1].idlist)); }
-#line 3375 "engines/director/lingo/lingo-gr.cpp"
+#line 3425 "engines/director/lingo/lingo-gr.cpp"
break;
- case 145: /* definevars: tPROPERTY idlist '\n' */
-#line 504 "engines/director/lingo/lingo-gr.y"
+ case 149: /* definevars: tPROPERTY idlist '\n' */
+#line 508 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropertyNode((yyvsp[-1].idlist)); }
-#line 3381 "engines/director/lingo/lingo-gr.cpp"
+#line 3431 "engines/director/lingo/lingo-gr.cpp"
break;
- case 146: /* definevars: tINSTANCE idlist '\n' */
-#line 505 "engines/director/lingo/lingo-gr.y"
+ case 150: /* definevars: tINSTANCE idlist '\n' */
+#line 509 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new InstanceNode((yyvsp[-1].idlist)); }
-#line 3387 "engines/director/lingo/lingo-gr.cpp"
+#line 3437 "engines/director/lingo/lingo-gr.cpp"
break;
- case 147: /* ifstmt: tIF expr tTHEN stmt */
-#line 508 "engines/director/lingo/lingo-gr.y"
+ case 151: /* ifstmt: tIF expr tTHEN stmt */
+#line 512 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist = new NodeList;
stmtlist->push_back((yyvsp[0].node));
(yyval.node) = new IfStmtNode((yyvsp[-2].node), stmtlist); }
-#line 3396 "engines/director/lingo/lingo-gr.cpp"
+#line 3446 "engines/director/lingo/lingo-gr.cpp"
break;
- case 148: /* ifstmt: tIF expr tTHEN '\n' stmtlist_insideif endif */
-#line 512 "engines/director/lingo/lingo-gr.y"
+ case 152: /* ifstmt: tIF expr tTHEN '\n' stmtlist_insideif endif */
+#line 516 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new IfStmtNode((yyvsp[-4].node), (yyvsp[-1].nodelist)); }
-#line 3403 "engines/director/lingo/lingo-gr.cpp"
+#line 3453 "engines/director/lingo/lingo-gr.cpp"
break;
- case 149: /* ifelsestmt: tIF expr tTHEN stmt tELSE stmt */
-#line 516 "engines/director/lingo/lingo-gr.y"
+ case 153: /* ifelsestmt: tIF expr tTHEN stmt tELSE stmt */
+#line 520 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist1 = new NodeList;
stmtlist1->push_back((yyvsp[-2].node));
NodeList *stmtlist2 = new NodeList;
stmtlist2->push_back((yyvsp[0].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-4].node), stmtlist1, stmtlist2); }
-#line 3414 "engines/director/lingo/lingo-gr.cpp"
+#line 3464 "engines/director/lingo/lingo-gr.cpp"
break;
- case 150: /* ifelsestmt: tIF expr tTHEN stmt tELSE '\n' stmtlist_insideif endif */
-#line 522 "engines/director/lingo/lingo-gr.y"
+ case 154: /* ifelsestmt: tIF expr tTHEN stmt tELSE '\n' stmtlist_insideif endif */
+#line 526 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist1 = new NodeList;
stmtlist1->push_back((yyvsp[-4].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-6].node), stmtlist1, (yyvsp[-1].nodelist)); }
-#line 3423 "engines/director/lingo/lingo-gr.cpp"
+#line 3473 "engines/director/lingo/lingo-gr.cpp"
break;
- case 151: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE stmt */
-#line 526 "engines/director/lingo/lingo-gr.y"
+ case 155: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE stmt */
+#line 530 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist2 = new NodeList;
stmtlist2->push_back((yyvsp[0].node));
(yyval.node) = new IfElseStmtNode((yyvsp[-5].node), (yyvsp[-2].nodelist), stmtlist2); }
-#line 3432 "engines/director/lingo/lingo-gr.cpp"
+#line 3482 "engines/director/lingo/lingo-gr.cpp"
break;
- case 152: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE '\n' stmtlist_insideif endif */
-#line 530 "engines/director/lingo/lingo-gr.y"
+ case 156: /* ifelsestmt: tIF expr tTHEN '\n' stmtlist_insideif tELSE '\n' stmtlist_insideif endif */
+#line 534 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new IfElseStmtNode((yyvsp[-7].node), (yyvsp[-4].nodelist), (yyvsp[-1].nodelist)); }
-#line 3439 "engines/director/lingo/lingo-gr.cpp"
+#line 3489 "engines/director/lingo/lingo-gr.cpp"
break;
- case 153: /* endif: %empty */
-#line 534 "engines/director/lingo/lingo-gr.y"
+ case 157: /* endif: %empty */
+#line 538 "engines/director/lingo/lingo-gr.y"
{ warning("LingoCompiler::parse: no end if"); }
-#line 3445 "engines/director/lingo/lingo-gr.cpp"
+#line 3495 "engines/director/lingo/lingo-gr.cpp"
break;
- case 155: /* loop: tREPEAT tWHILE expr '\n' stmtlist tENDREPEAT '\n' */
-#line 537 "engines/director/lingo/lingo-gr.y"
+ case 159: /* loop: tREPEAT tWHILE expr '\n' stmtlist tENDREPEAT '\n' */
+#line 541 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWhileNode((yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3452 "engines/director/lingo/lingo-gr.cpp"
+#line 3502 "engines/director/lingo/lingo-gr.cpp"
break;
- case 156: /* loop: tREPEAT tWITH ID tEQ expr tTO expr '\n' stmtlist tENDREPEAT '\n' */
-#line 539 "engines/director/lingo/lingo-gr.y"
+ case 160: /* loop: tREPEAT tWITH ID tEQ expr tTO expr '\n' stmtlist tENDREPEAT '\n' */
+#line 543 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithToNode((yyvsp[-8].s), (yyvsp[-6].node), false, (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3459 "engines/director/lingo/lingo-gr.cpp"
+#line 3509 "engines/director/lingo/lingo-gr.cpp"
break;
- case 157: /* loop: tREPEAT tWITH ID tEQ expr tDOWN tTO expr '\n' stmtlist tENDREPEAT '\n' */
-#line 541 "engines/director/lingo/lingo-gr.y"
+ case 161: /* loop: tREPEAT tWITH ID tEQ expr tDOWN tTO expr '\n' stmtlist tENDREPEAT '\n' */
+#line 545 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithToNode((yyvsp[-9].s), (yyvsp[-7].node), true, (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3466 "engines/director/lingo/lingo-gr.cpp"
+#line 3516 "engines/director/lingo/lingo-gr.cpp"
break;
- case 158: /* loop: tREPEAT tWITH ID tIN expr '\n' stmtlist tENDREPEAT '\n' */
-#line 543 "engines/director/lingo/lingo-gr.y"
+ case 162: /* loop: tREPEAT tWITH ID tIN expr '\n' stmtlist tENDREPEAT '\n' */
+#line 547 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new RepeatWithInNode((yyvsp[-6].s), (yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3473 "engines/director/lingo/lingo-gr.cpp"
+#line 3523 "engines/director/lingo/lingo-gr.cpp"
break;
- case 159: /* tell: tTELL expr tTO stmtoneliner */
-#line 547 "engines/director/lingo/lingo-gr.y"
+ case 163: /* tell: tTELL expr tTO stmtoneliner */
+#line 551 "engines/director/lingo/lingo-gr.y"
{
NodeList *stmtlist = new NodeList;
stmtlist->push_back((yyvsp[0].node));
(yyval.node) = new TellNode((yyvsp[-2].node), stmtlist); }
-#line 3482 "engines/director/lingo/lingo-gr.cpp"
+#line 3532 "engines/director/lingo/lingo-gr.cpp"
break;
- case 160: /* tell: tTELL expr '\n' stmtlist tENDTELL '\n' */
-#line 551 "engines/director/lingo/lingo-gr.y"
+ case 164: /* tell: tTELL expr '\n' stmtlist tENDTELL '\n' */
+#line 555 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new TellNode((yyvsp[-4].node), (yyvsp[-2].nodelist)); }
-#line 3489 "engines/director/lingo/lingo-gr.cpp"
+#line 3539 "engines/director/lingo/lingo-gr.cpp"
break;
- case 161: /* when: tWHEN ID tTHEN expr */
-#line 555 "engines/director/lingo/lingo-gr.y"
+ case 165: /* when: tWHEN ID tTHEN expr */
+#line 559 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new WhenNode((yyvsp[-2].s), (yyvsp[0].node)); }
-#line 3495 "engines/director/lingo/lingo-gr.cpp"
+#line 3545 "engines/director/lingo/lingo-gr.cpp"
break;
- case 162: /* stmtlist: %empty */
-#line 557 "engines/director/lingo/lingo-gr.y"
+ case 166: /* stmtlist: %empty */
+#line 561 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 3501 "engines/director/lingo/lingo-gr.cpp"
+#line 3551 "engines/director/lingo/lingo-gr.cpp"
break;
- case 164: /* nonemptystmtlist: stmtlistline */
-#line 562 "engines/director/lingo/lingo-gr.y"
+ case 168: /* nonemptystmtlist: stmtlistline */
+#line 566 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 3512 "engines/director/lingo/lingo-gr.cpp"
+#line 3562 "engines/director/lingo/lingo-gr.cpp"
break;
- case 165: /* nonemptystmtlist: nonemptystmtlist stmtlistline */
-#line 568 "engines/director/lingo/lingo-gr.y"
+ case 169: /* nonemptystmtlist: nonemptystmtlist stmtlistline */
+#line 572 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3522 "engines/director/lingo/lingo-gr.cpp"
+#line 3572 "engines/director/lingo/lingo-gr.cpp"
break;
- case 166: /* stmtlistline: '\n' */
-#line 575 "engines/director/lingo/lingo-gr.y"
+ case 170: /* stmtlistline: '\n' */
+#line 579 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3528 "engines/director/lingo/lingo-gr.cpp"
+#line 3578 "engines/director/lingo/lingo-gr.cpp"
break;
- case 168: /* stmtlist_insideif: %empty */
-#line 579 "engines/director/lingo/lingo-gr.y"
+ case 172: /* stmtlist_insideif: %empty */
+#line 583 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 3534 "engines/director/lingo/lingo-gr.cpp"
+#line 3584 "engines/director/lingo/lingo-gr.cpp"
break;
- case 170: /* nonemptystmtlist_insideif: stmtlistline_insideif */
-#line 584 "engines/director/lingo/lingo-gr.y"
+ case 174: /* nonemptystmtlist_insideif: stmtlistline_insideif */
+#line 588 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
if ((yyvsp[0].node)) {
list->push_back((yyvsp[0].node));
}
(yyval.nodelist) = list; }
-#line 3545 "engines/director/lingo/lingo-gr.cpp"
+#line 3595 "engines/director/lingo/lingo-gr.cpp"
break;
- case 171: /* nonemptystmtlist_insideif: nonemptystmtlist_insideif stmtlistline_insideif */
-#line 590 "engines/director/lingo/lingo-gr.y"
+ case 175: /* nonemptystmtlist_insideif: nonemptystmtlist_insideif stmtlistline_insideif */
+#line 594 "engines/director/lingo/lingo-gr.y"
{
if ((yyvsp[0].node)) {
(yyvsp[-1].nodelist)->push_back((yyvsp[0].node));
}
(yyval.nodelist) = (yyvsp[-1].nodelist); }
-#line 3555 "engines/director/lingo/lingo-gr.cpp"
+#line 3605 "engines/director/lingo/lingo-gr.cpp"
break;
- case 172: /* stmtlistline_insideif: '\n' */
-#line 597 "engines/director/lingo/lingo-gr.y"
+ case 176: /* stmtlistline_insideif: '\n' */
+#line 601 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = nullptr; }
-#line 3561 "engines/director/lingo/lingo-gr.cpp"
+#line 3611 "engines/director/lingo/lingo-gr.cpp"
break;
- case 174: /* simpleexpr_nounarymath: tINT */
-#line 604 "engines/director/lingo/lingo-gr.y"
+ case 178: /* simpleexpr_nounarymath: tINT */
+#line 608 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new IntNode((yyvsp[0].i)); }
-#line 3567 "engines/director/lingo/lingo-gr.cpp"
+#line 3617 "engines/director/lingo/lingo-gr.cpp"
break;
- case 175: /* simpleexpr_nounarymath: tFLOAT */
-#line 605 "engines/director/lingo/lingo-gr.y"
+ case 179: /* simpleexpr_nounarymath: tFLOAT */
+#line 609 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FloatNode((yyvsp[0].f)); }
-#line 3573 "engines/director/lingo/lingo-gr.cpp"
+#line 3623 "engines/director/lingo/lingo-gr.cpp"
break;
- case 176: /* simpleexpr_nounarymath: tSYMBOL */
-#line 606 "engines/director/lingo/lingo-gr.y"
+ case 180: /* simpleexpr_nounarymath: tSYMBOL */
+#line 610 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SymbolNode((yyvsp[0].s)); }
-#line 3579 "engines/director/lingo/lingo-gr.cpp"
+#line 3629 "engines/director/lingo/lingo-gr.cpp"
break;
- case 177: /* simpleexpr_nounarymath: tSTRING */
-#line 607 "engines/director/lingo/lingo-gr.y"
+ case 181: /* simpleexpr_nounarymath: tSTRING */
+#line 611 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new StringNode((yyvsp[0].s)); }
-#line 3585 "engines/director/lingo/lingo-gr.cpp"
+#line 3635 "engines/director/lingo/lingo-gr.cpp"
break;
- case 178: /* simpleexpr_nounarymath: tNOT simpleexpr */
-#line 608 "engines/director/lingo/lingo-gr.y"
+ case 182: /* simpleexpr_nounarymath: tNOT simpleexpr */
+#line 612 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new UnaryOpNode(LC::c_not, (yyvsp[0].node)); }
-#line 3591 "engines/director/lingo/lingo-gr.cpp"
+#line 3641 "engines/director/lingo/lingo-gr.cpp"
break;
- case 179: /* simpleexpr_nounarymath: ID '(' ')' */
-#line 609 "engines/director/lingo/lingo-gr.y"
+ case 183: /* simpleexpr_nounarymath: ID '(' ')' */
+#line 613 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode((yyvsp[-2].s), new NodeList); }
-#line 3597 "engines/director/lingo/lingo-gr.cpp"
+#line 3647 "engines/director/lingo/lingo-gr.cpp"
break;
- case 180: /* simpleexpr_nounarymath: ID '(' nonemptyexprlist trailingcomma ')' */
-#line 610 "engines/director/lingo/lingo-gr.y"
+ case 184: /* simpleexpr_nounarymath: ID '(' nonemptyexprlist trailingcomma ')' */
+#line 614 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode((yyvsp[-4].s), (yyvsp[-2].nodelist)); }
-#line 3603 "engines/director/lingo/lingo-gr.cpp"
+#line 3653 "engines/director/lingo/lingo-gr.cpp"
break;
- case 181: /* simpleexpr_nounarymath: '(' expr ')' */
-#line 611 "engines/director/lingo/lingo-gr.y"
+ case 185: /* simpleexpr_nounarymath: '(' expr ')' */
+#line 615 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = (yyvsp[-1].node); }
-#line 3609 "engines/director/lingo/lingo-gr.cpp"
+#line 3659 "engines/director/lingo/lingo-gr.cpp"
break;
- case 187: /* var: ID */
-#line 619 "engines/director/lingo/lingo-gr.y"
+ case 191: /* var: ID */
+#line 623 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new VarNode((yyvsp[0].s)); }
-#line 3615 "engines/director/lingo/lingo-gr.cpp"
+#line 3665 "engines/director/lingo/lingo-gr.cpp"
break;
- case 192: /* chunk: tFIELD refargs */
-#line 629 "engines/director/lingo/lingo-gr.y"
+ case 196: /* chunk: tFIELD refargs */
+#line 633 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("field"), (yyvsp[0].nodelist)); }
-#line 3621 "engines/director/lingo/lingo-gr.cpp"
+#line 3671 "engines/director/lingo/lingo-gr.cpp"
break;
- case 193: /* chunk: tCAST refargs */
-#line 630 "engines/director/lingo/lingo-gr.y"
+ case 197: /* chunk: tCAST refargs */
+#line 634 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("cast"), (yyvsp[0].nodelist)); }
-#line 3627 "engines/director/lingo/lingo-gr.cpp"
+#line 3677 "engines/director/lingo/lingo-gr.cpp"
break;
- case 194: /* chunk: tCHAR expr tOF simpleexpr */
-#line 631 "engines/director/lingo/lingo-gr.y"
+ case 198: /* chunk: tCHAR expr tOF simpleexpr */
+#line 635 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkChar, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3634 "engines/director/lingo/lingo-gr.cpp"
+#line 3684 "engines/director/lingo/lingo-gr.cpp"
break;
- case 195: /* chunk: tCHAR expr tTO expr tOF simpleexpr */
-#line 633 "engines/director/lingo/lingo-gr.y"
+ case 199: /* chunk: tCHAR expr tTO expr tOF simpleexpr */
+#line 637 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkChar, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3641 "engines/director/lingo/lingo-gr.cpp"
+#line 3691 "engines/director/lingo/lingo-gr.cpp"
break;
- case 196: /* chunk: tWORD expr tOF simpleexpr */
-#line 635 "engines/director/lingo/lingo-gr.y"
+ case 200: /* chunk: tWORD expr tOF simpleexpr */
+#line 639 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkWord, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3648 "engines/director/lingo/lingo-gr.cpp"
+#line 3698 "engines/director/lingo/lingo-gr.cpp"
break;
- case 197: /* chunk: tWORD expr tTO expr tOF simpleexpr */
-#line 637 "engines/director/lingo/lingo-gr.y"
+ case 201: /* chunk: tWORD expr tTO expr tOF simpleexpr */
+#line 641 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkWord, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3655 "engines/director/lingo/lingo-gr.cpp"
+#line 3705 "engines/director/lingo/lingo-gr.cpp"
break;
- case 198: /* chunk: tITEM expr tOF simpleexpr */
-#line 639 "engines/director/lingo/lingo-gr.y"
+ case 202: /* chunk: tITEM expr tOF simpleexpr */
+#line 643 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkItem, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3662 "engines/director/lingo/lingo-gr.cpp"
+#line 3712 "engines/director/lingo/lingo-gr.cpp"
break;
- case 199: /* chunk: tITEM expr tTO expr tOF simpleexpr */
-#line 641 "engines/director/lingo/lingo-gr.y"
+ case 203: /* chunk: tITEM expr tTO expr tOF simpleexpr */
+#line 645 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkItem, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3669 "engines/director/lingo/lingo-gr.cpp"
+#line 3719 "engines/director/lingo/lingo-gr.cpp"
break;
- case 200: /* chunk: tLINE expr tOF simpleexpr */
-#line 643 "engines/director/lingo/lingo-gr.y"
+ case 204: /* chunk: tLINE expr tOF simpleexpr */
+#line 647 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkLine, (yyvsp[-2].node), nullptr, (yyvsp[0].node)); }
-#line 3676 "engines/director/lingo/lingo-gr.cpp"
+#line 3726 "engines/director/lingo/lingo-gr.cpp"
break;
- case 201: /* chunk: tLINE expr tTO expr tOF simpleexpr */
-#line 645 "engines/director/lingo/lingo-gr.y"
+ case 205: /* chunk: tLINE expr tTO expr tOF simpleexpr */
+#line 649 "engines/director/lingo/lingo-gr.y"
{
(yyval.node) = new ChunkExprNode(kChunkLine, (yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 3683 "engines/director/lingo/lingo-gr.cpp"
+#line 3733 "engines/director/lingo/lingo-gr.cpp"
break;
- case 202: /* object: tSCRIPT refargs */
-#line 649 "engines/director/lingo/lingo-gr.y"
+ case 206: /* chunk: tTHE tLAST chunktype inof simpleexpr */
+#line 651 "engines/director/lingo/lingo-gr.y"
+ { (yyval.node) = new TheLastNode((yyvsp[-2].chunktype), (yyvsp[0].node)); }
+#line 3739 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 207: /* chunktype: tCHAR */
+#line 654 "engines/director/lingo/lingo-gr.y"
+ { (yyval.chunktype) = kChunkChar; }
+#line 3745 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 208: /* chunktype: tWORD */
+#line 655 "engines/director/lingo/lingo-gr.y"
+ { (yyval.chunktype) = kChunkWord; }
+#line 3751 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 209: /* chunktype: tITEM */
+#line 656 "engines/director/lingo/lingo-gr.y"
+ { (yyval.chunktype) = kChunkItem; }
+#line 3757 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 210: /* chunktype: tLINE */
+#line 657 "engines/director/lingo/lingo-gr.y"
+ { (yyval.chunktype) = kChunkLine; }
+#line 3763 "engines/director/lingo/lingo-gr.cpp"
+ break;
+
+ case 211: /* object: tSCRIPT refargs */
+#line 660 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("script"), (yyvsp[0].nodelist)); }
-#line 3689 "engines/director/lingo/lingo-gr.cpp"
+#line 3769 "engines/director/lingo/lingo-gr.cpp"
break;
- case 203: /* object: tWINDOW refargs */
-#line 650 "engines/director/lingo/lingo-gr.y"
+ case 212: /* object: tWINDOW refargs */
+#line 661 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new FuncNode(new Common::String("window"), (yyvsp[0].nodelist)); }
-#line 3695 "engines/director/lingo/lingo-gr.cpp"
+#line 3775 "engines/director/lingo/lingo-gr.cpp"
break;
- case 204: /* refargs: simpleexpr */
-#line 653 "engines/director/lingo/lingo-gr.y"
+ case 213: /* refargs: simpleexpr */
+#line 664 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref arg` and `ref(arg)`
NodeList *args = new NodeList;
args->push_back((yyvsp[0].node));
(yyval.nodelist) = args; }
-#line 3705 "engines/director/lingo/lingo-gr.cpp"
+#line 3785 "engines/director/lingo/lingo-gr.cpp"
break;
- case 205: /* refargs: '(' ')' */
-#line 658 "engines/director/lingo/lingo-gr.y"
+ case 214: /* refargs: '(' ')' */
+#line 669 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref()`
(yyval.nodelist) = new NodeList; }
-#line 3713 "engines/director/lingo/lingo-gr.cpp"
+#line 3793 "engines/director/lingo/lingo-gr.cpp"
break;
- case 206: /* refargs: '(' expr ',' ')' */
-#line 661 "engines/director/lingo/lingo-gr.y"
+ case 215: /* refargs: '(' expr ',' ')' */
+#line 672 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref(args,)`
NodeList *args = new NodeList;
args->push_back((yyvsp[-2].node));
(yyval.nodelist) = args; }
-#line 3723 "engines/director/lingo/lingo-gr.cpp"
+#line 3803 "engines/director/lingo/lingo-gr.cpp"
break;
- case 207: /* refargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
-#line 666 "engines/director/lingo/lingo-gr.y"
+ case 216: /* refargs: '(' expr ',' nonemptyexprlist trailingcomma ')' */
+#line 677 "engines/director/lingo/lingo-gr.y"
{
// This matches `ref(args, ...)`
(yyvsp[-2].nodelist)->insert_at(0, (yyvsp[-4].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3732 "engines/director/lingo/lingo-gr.cpp"
+#line 3812 "engines/director/lingo/lingo-gr.cpp"
break;
- case 208: /* the: tTHE ID */
-#line 672 "engines/director/lingo/lingo-gr.y"
+ case 217: /* the: tTHE ID */
+#line 683 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNode((yyvsp[0].s)); }
-#line 3738 "engines/director/lingo/lingo-gr.cpp"
+#line 3818 "engines/director/lingo/lingo-gr.cpp"
break;
- case 209: /* the: tTHE ID tOF theobj */
-#line 673 "engines/director/lingo/lingo-gr.y"
+ case 218: /* the: tTHE ID tOF theobj */
+#line 684 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode((yyvsp[-2].s), (yyvsp[0].node)); }
-#line 3744 "engines/director/lingo/lingo-gr.cpp"
+#line 3824 "engines/director/lingo/lingo-gr.cpp"
break;
- case 210: /* the: tTHE tNUMBER tOF theobj */
-#line 674 "engines/director/lingo/lingo-gr.y"
+ case 219: /* the: tTHE tNUMBER tOF theobj */
+#line 685 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode(new Common::String("number"), (yyvsp[0].node)); }
-#line 3750 "engines/director/lingo/lingo-gr.cpp"
- break;
-
- case 213: /* the: tTHE tLAST chunktype inof simpleexpr */
-#line 677 "engines/director/lingo/lingo-gr.y"
- { (yyval.node) = new TheLastNode((yyvsp[-2].chunktype), (yyvsp[0].node)); }
-#line 3756 "engines/director/lingo/lingo-gr.cpp"
+#line 3830 "engines/director/lingo/lingo-gr.cpp"
break;
- case 216: /* theobj: tMENUITEM simpleexpr tOF tMENU simpleexpr */
-#line 682 "engines/director/lingo/lingo-gr.y"
+ case 224: /* theobj: tMENUITEM simpleexpr tOF tMENU simpleexpr */
+#line 692 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuItemNode((yyvsp[-3].node), (yyvsp[0].node)); }
-#line 3762 "engines/director/lingo/lingo-gr.cpp"
+#line 3836 "engines/director/lingo/lingo-gr.cpp"
break;
- case 217: /* theobj: tSOUND simpleexpr */
-#line 683 "engines/director/lingo/lingo-gr.y"
+ case 225: /* theobj: tSOUND simpleexpr */
+#line 693 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SoundNode((yyvsp[0].node)); }
-#line 3768 "engines/director/lingo/lingo-gr.cpp"
+#line 3842 "engines/director/lingo/lingo-gr.cpp"
break;
- case 218: /* theobj: tSPRITE simpleexpr */
-#line 684 "engines/director/lingo/lingo-gr.y"
+ case 226: /* theobj: tSPRITE simpleexpr */
+#line 694 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SpriteNode((yyvsp[0].node)); }
-#line 3774 "engines/director/lingo/lingo-gr.cpp"
+#line 3848 "engines/director/lingo/lingo-gr.cpp"
break;
- case 219: /* menu: tMENU simpleexpr */
-#line 687 "engines/director/lingo/lingo-gr.y"
+ case 227: /* menu: tMENU simpleexpr */
+#line 697 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuNode((yyvsp[0].node)); }
-#line 3780 "engines/director/lingo/lingo-gr.cpp"
+#line 3854 "engines/director/lingo/lingo-gr.cpp"
break;
- case 220: /* thedatetime: tTHE tABBREVIATED tDATE */
-#line 689 "engines/director/lingo/lingo-gr.y"
+ case 228: /* thedatetime: tTHE tABBREVIATED tDATE */
+#line 699 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3786 "engines/director/lingo/lingo-gr.cpp"
+#line 3860 "engines/director/lingo/lingo-gr.cpp"
break;
- case 221: /* thedatetime: tTHE tABBREVIATED tTIME */
-#line 690 "engines/director/lingo/lingo-gr.y"
+ case 229: /* thedatetime: tTHE tABBREVIATED tTIME */
+#line 700 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3792 "engines/director/lingo/lingo-gr.cpp"
+#line 3866 "engines/director/lingo/lingo-gr.cpp"
break;
- case 222: /* thedatetime: tTHE tABBREV tDATE */
-#line 691 "engines/director/lingo/lingo-gr.y"
+ case 230: /* thedatetime: tTHE tABBREV tDATE */
+#line 701 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3798 "engines/director/lingo/lingo-gr.cpp"
+#line 3872 "engines/director/lingo/lingo-gr.cpp"
break;
- case 223: /* thedatetime: tTHE tABBREV tTIME */
-#line 692 "engines/director/lingo/lingo-gr.y"
+ case 231: /* thedatetime: tTHE tABBREV tTIME */
+#line 702 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3804 "engines/director/lingo/lingo-gr.cpp"
+#line 3878 "engines/director/lingo/lingo-gr.cpp"
break;
- case 224: /* thedatetime: tTHE tABBR tDATE */
-#line 693 "engines/director/lingo/lingo-gr.y"
+ case 232: /* thedatetime: tTHE tABBR tDATE */
+#line 703 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheDate); }
-#line 3810 "engines/director/lingo/lingo-gr.cpp"
+#line 3884 "engines/director/lingo/lingo-gr.cpp"
break;
- case 225: /* thedatetime: tTHE tABBR tTIME */
-#line 694 "engines/director/lingo/lingo-gr.y"
+ case 233: /* thedatetime: tTHE tABBR tTIME */
+#line 704 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheAbbr, kTheTime); }
-#line 3816 "engines/director/lingo/lingo-gr.cpp"
+#line 3890 "engines/director/lingo/lingo-gr.cpp"
break;
- case 226: /* thedatetime: tTHE tLONG tDATE */
-#line 695 "engines/director/lingo/lingo-gr.y"
+ case 234: /* thedatetime: tTHE tLONG tDATE */
+#line 705 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheLong, kTheDate); }
-#line 3822 "engines/director/lingo/lingo-gr.cpp"
+#line 3896 "engines/director/lingo/lingo-gr.cpp"
break;
- case 227: /* thedatetime: tTHE tLONG tTIME */
-#line 696 "engines/director/lingo/lingo-gr.y"
+ case 235: /* thedatetime: tTHE tLONG tTIME */
+#line 706 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheLong, kTheTime); }
-#line 3828 "engines/director/lingo/lingo-gr.cpp"
+#line 3902 "engines/director/lingo/lingo-gr.cpp"
break;
- case 228: /* thedatetime: tTHE tSHORT tDATE */
-#line 697 "engines/director/lingo/lingo-gr.y"
+ case 236: /* thedatetime: tTHE tSHORT tDATE */
+#line 707 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheShort, kTheDate); }
-#line 3834 "engines/director/lingo/lingo-gr.cpp"
+#line 3908 "engines/director/lingo/lingo-gr.cpp"
break;
- case 229: /* thedatetime: tTHE tSHORT tTIME */
-#line 698 "engines/director/lingo/lingo-gr.y"
+ case 237: /* thedatetime: tTHE tSHORT tTIME */
+#line 708 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheDateTimeNode(kTheShort, kTheTime); }
-#line 3840 "engines/director/lingo/lingo-gr.cpp"
+#line 3914 "engines/director/lingo/lingo-gr.cpp"
break;
- case 230: /* thenumberof: tTHE tNUMBER tOF tCHARS inof simpleexpr */
-#line 702 "engines/director/lingo/lingo-gr.y"
+ case 238: /* thenumberof: tTHE tNUMBER tOF tCHARS inof simpleexpr */
+#line 712 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfChars, (yyvsp[0].node)); }
-#line 3846 "engines/director/lingo/lingo-gr.cpp"
+#line 3920 "engines/director/lingo/lingo-gr.cpp"
break;
- case 231: /* thenumberof: tTHE tNUMBER tOF tWORDS inof simpleexpr */
-#line 703 "engines/director/lingo/lingo-gr.y"
+ case 239: /* thenumberof: tTHE tNUMBER tOF tWORDS inof simpleexpr */
+#line 713 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfWords, (yyvsp[0].node)); }
-#line 3852 "engines/director/lingo/lingo-gr.cpp"
+#line 3926 "engines/director/lingo/lingo-gr.cpp"
break;
- case 232: /* thenumberof: tTHE tNUMBER tOF tITEMS inof simpleexpr */
-#line 704 "engines/director/lingo/lingo-gr.y"
+ case 240: /* thenumberof: tTHE tNUMBER tOF tITEMS inof simpleexpr */
+#line 714 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfItems, (yyvsp[0].node)); }
-#line 3858 "engines/director/lingo/lingo-gr.cpp"
+#line 3932 "engines/director/lingo/lingo-gr.cpp"
break;
- case 233: /* thenumberof: tTHE tNUMBER tOF tLINES inof simpleexpr */
-#line 705 "engines/director/lingo/lingo-gr.y"
+ case 241: /* thenumberof: tTHE tNUMBER tOF tLINES inof simpleexpr */
+#line 715 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfLines, (yyvsp[0].node)); }
-#line 3864 "engines/director/lingo/lingo-gr.cpp"
+#line 3938 "engines/director/lingo/lingo-gr.cpp"
break;
- case 234: /* thenumberof: tTHE tNUMBER tOF tMENUITEMS inof menu */
-#line 706 "engines/director/lingo/lingo-gr.y"
+ case 242: /* thenumberof: tTHE tNUMBER tOF tMENUITEMS inof menu */
+#line 716 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNumberOfNode(kNumberOfMenuItems, (yyvsp[0].node)); }
-#line 3870 "engines/director/lingo/lingo-gr.cpp"
+#line 3944 "engines/director/lingo/lingo-gr.cpp"
break;
- case 235: /* chunktype: tCHAR */
-#line 709 "engines/director/lingo/lingo-gr.y"
- { (yyval.chunktype) = kChunkChar; }
-#line 3876 "engines/director/lingo/lingo-gr.cpp"
- break;
-
- case 236: /* chunktype: tWORD */
-#line 710 "engines/director/lingo/lingo-gr.y"
- { (yyval.chunktype) = kChunkWord; }
-#line 3882 "engines/director/lingo/lingo-gr.cpp"
- break;
-
- case 237: /* chunktype: tITEM */
-#line 711 "engines/director/lingo/lingo-gr.y"
- { (yyval.chunktype) = kChunkItem; }
-#line 3888 "engines/director/lingo/lingo-gr.cpp"
- break;
-
- case 238: /* chunktype: tLINE */
-#line 712 "engines/director/lingo/lingo-gr.y"
- { (yyval.chunktype) = kChunkLine; }
-#line 3894 "engines/director/lingo/lingo-gr.cpp"
- break;
-
- case 241: /* writablethe: tTHE ID */
-#line 717 "engines/director/lingo/lingo-gr.y"
+ case 245: /* writablethe: tTHE ID */
+#line 721 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheNode((yyvsp[0].s)); }
-#line 3900 "engines/director/lingo/lingo-gr.cpp"
+#line 3950 "engines/director/lingo/lingo-gr.cpp"
break;
- case 242: /* writablethe: tTHE ID tOF writabletheobj */
-#line 718 "engines/director/lingo/lingo-gr.y"
+ case 246: /* writablethe: tTHE ID tOF writabletheobj */
+#line 722 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new TheOfNode((yyvsp[-2].s), (yyvsp[0].node)); }
-#line 3906 "engines/director/lingo/lingo-gr.cpp"
+#line 3956 "engines/director/lingo/lingo-gr.cpp"
break;
- case 244: /* writabletheobj: tMENU expr_noeq */
-#line 722 "engines/director/lingo/lingo-gr.y"
+ case 248: /* writabletheobj: tMENU expr_noeq */
+#line 726 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuNode((yyvsp[0].node)); }
-#line 3912 "engines/director/lingo/lingo-gr.cpp"
+#line 3962 "engines/director/lingo/lingo-gr.cpp"
break;
- case 245: /* writabletheobj: tMENUITEM expr_noeq tOF tMENU expr_noeq */
-#line 723 "engines/director/lingo/lingo-gr.y"
+ case 249: /* writabletheobj: tMENUITEM expr_noeq tOF tMENU expr_noeq */
+#line 727 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new MenuItemNode((yyvsp[-3].node), (yyvsp[0].node)); }
-#line 3918 "engines/director/lingo/lingo-gr.cpp"
+#line 3968 "engines/director/lingo/lingo-gr.cpp"
break;
- case 246: /* writabletheobj: tSOUND expr_noeq */
-#line 724 "engines/director/lingo/lingo-gr.y"
+ case 250: /* writabletheobj: tSOUND expr_noeq */
+#line 728 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SoundNode((yyvsp[0].node)); }
-#line 3924 "engines/director/lingo/lingo-gr.cpp"
+#line 3974 "engines/director/lingo/lingo-gr.cpp"
break;
- case 247: /* writabletheobj: tSPRITE expr_noeq */
-#line 725 "engines/director/lingo/lingo-gr.y"
+ case 251: /* writabletheobj: tSPRITE expr_noeq */
+#line 729 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new SpriteNode((yyvsp[0].node)); }
-#line 3930 "engines/director/lingo/lingo-gr.cpp"
+#line 3980 "engines/director/lingo/lingo-gr.cpp"
break;
- case 248: /* list: '[' exprlist ']' */
-#line 728 "engines/director/lingo/lingo-gr.y"
+ case 252: /* list: '[' exprlist ']' */
+#line 732 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new ListNode((yyvsp[-1].nodelist)); }
-#line 3936 "engines/director/lingo/lingo-gr.cpp"
+#line 3986 "engines/director/lingo/lingo-gr.cpp"
break;
- case 249: /* list: '[' ':' ']' */
-#line 729 "engines/director/lingo/lingo-gr.y"
+ case 253: /* list: '[' ':' ']' */
+#line 733 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropListNode(new NodeList); }
-#line 3942 "engines/director/lingo/lingo-gr.cpp"
+#line 3992 "engines/director/lingo/lingo-gr.cpp"
break;
- case 250: /* list: '[' proplist ']' */
-#line 730 "engines/director/lingo/lingo-gr.y"
+ case 254: /* list: '[' proplist ']' */
+#line 734 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropListNode((yyvsp[-1].nodelist)); }
-#line 3948 "engines/director/lingo/lingo-gr.cpp"
+#line 3998 "engines/director/lingo/lingo-gr.cpp"
break;
- case 251: /* proplist: proppair */
-#line 733 "engines/director/lingo/lingo-gr.y"
+ case 255: /* proplist: proppair */
+#line 737 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
list->push_back((yyvsp[0].node));
(yyval.nodelist) = list; }
-#line 3957 "engines/director/lingo/lingo-gr.cpp"
+#line 4007 "engines/director/lingo/lingo-gr.cpp"
break;
- case 252: /* proplist: proplist ',' proppair */
-#line 737 "engines/director/lingo/lingo-gr.y"
+ case 256: /* proplist: proplist ',' proppair */
+#line 741 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].nodelist)->push_back((yyvsp[0].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 3965 "engines/director/lingo/lingo-gr.cpp"
+#line 4015 "engines/director/lingo/lingo-gr.cpp"
break;
- case 253: /* proppair: tSYMBOL ':' expr */
-#line 742 "engines/director/lingo/lingo-gr.y"
+ case 257: /* proppair: tSYMBOL ':' expr */
+#line 746 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new SymbolNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 3971 "engines/director/lingo/lingo-gr.cpp"
+#line 4021 "engines/director/lingo/lingo-gr.cpp"
break;
- case 254: /* proppair: ID ':' expr */
-#line 743 "engines/director/lingo/lingo-gr.y"
+ case 258: /* proppair: ID ':' expr */
+#line 747 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new SymbolNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 3977 "engines/director/lingo/lingo-gr.cpp"
+#line 4027 "engines/director/lingo/lingo-gr.cpp"
break;
- case 255: /* proppair: tSTRING ':' expr */
-#line 744 "engines/director/lingo/lingo-gr.y"
+ case 259: /* proppair: tSTRING ':' expr */
+#line 748 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new PropPairNode(new StringNode((yyvsp[-2].s)), (yyvsp[0].node)); }
-#line 3983 "engines/director/lingo/lingo-gr.cpp"
+#line 4033 "engines/director/lingo/lingo-gr.cpp"
break;
- case 256: /* unarymath: '+' simpleexpr */
-#line 747 "engines/director/lingo/lingo-gr.y"
+ case 260: /* unarymath: '+' simpleexpr */
+#line 751 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = (yyvsp[0].node); }
-#line 3989 "engines/director/lingo/lingo-gr.cpp"
+#line 4039 "engines/director/lingo/lingo-gr.cpp"
break;
- case 257: /* unarymath: '-' simpleexpr */
-#line 748 "engines/director/lingo/lingo-gr.y"
+ case 261: /* unarymath: '-' simpleexpr */
+#line 752 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new UnaryOpNode(LC::c_negate, (yyvsp[0].node)); }
-#line 3995 "engines/director/lingo/lingo-gr.cpp"
+#line 4045 "engines/director/lingo/lingo-gr.cpp"
break;
- case 262: /* expr: expr '+' expr */
-#line 758 "engines/director/lingo/lingo-gr.y"
+ case 266: /* expr: expr '+' expr */
+#line 762 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4001 "engines/director/lingo/lingo-gr.cpp"
+#line 4051 "engines/director/lingo/lingo-gr.cpp"
break;
- case 263: /* expr: expr '-' expr */
-#line 759 "engines/director/lingo/lingo-gr.y"
+ case 267: /* expr: expr '-' expr */
+#line 763 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4007 "engines/director/lingo/lingo-gr.cpp"
+#line 4057 "engines/director/lingo/lingo-gr.cpp"
break;
- case 264: /* expr: expr '*' expr */
-#line 760 "engines/director/lingo/lingo-gr.y"
+ case 268: /* expr: expr '*' expr */
+#line 764 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4013 "engines/director/lingo/lingo-gr.cpp"
+#line 4063 "engines/director/lingo/lingo-gr.cpp"
break;
- case 265: /* expr: expr '/' expr */
-#line 761 "engines/director/lingo/lingo-gr.y"
+ case 269: /* expr: expr '/' expr */
+#line 765 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4019 "engines/director/lingo/lingo-gr.cpp"
+#line 4069 "engines/director/lingo/lingo-gr.cpp"
break;
- case 266: /* expr: expr tMOD expr */
-#line 762 "engines/director/lingo/lingo-gr.y"
+ case 270: /* expr: expr tMOD expr */
+#line 766 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4025 "engines/director/lingo/lingo-gr.cpp"
+#line 4075 "engines/director/lingo/lingo-gr.cpp"
break;
- case 267: /* expr: expr '>' expr */
-#line 763 "engines/director/lingo/lingo-gr.y"
+ case 271: /* expr: expr '>' expr */
+#line 767 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4031 "engines/director/lingo/lingo-gr.cpp"
+#line 4081 "engines/director/lingo/lingo-gr.cpp"
break;
- case 268: /* expr: expr '<' expr */
-#line 764 "engines/director/lingo/lingo-gr.y"
+ case 272: /* expr: expr '<' expr */
+#line 768 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4037 "engines/director/lingo/lingo-gr.cpp"
+#line 4087 "engines/director/lingo/lingo-gr.cpp"
break;
- case 269: /* expr: expr tEQ expr */
-#line 765 "engines/director/lingo/lingo-gr.y"
+ case 273: /* expr: expr tEQ expr */
+#line 769 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_eq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4043 "engines/director/lingo/lingo-gr.cpp"
+#line 4093 "engines/director/lingo/lingo-gr.cpp"
break;
- case 270: /* expr: expr tNEQ expr */
-#line 766 "engines/director/lingo/lingo-gr.y"
+ case 274: /* expr: expr tNEQ expr */
+#line 770 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4049 "engines/director/lingo/lingo-gr.cpp"
+#line 4099 "engines/director/lingo/lingo-gr.cpp"
break;
- case 271: /* expr: expr tGE expr */
-#line 767 "engines/director/lingo/lingo-gr.y"
+ case 275: /* expr: expr tGE expr */
+#line 771 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4055 "engines/director/lingo/lingo-gr.cpp"
+#line 4105 "engines/director/lingo/lingo-gr.cpp"
break;
- case 272: /* expr: expr tLE expr */
-#line 768 "engines/director/lingo/lingo-gr.y"
+ case 276: /* expr: expr tLE expr */
+#line 772 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4061 "engines/director/lingo/lingo-gr.cpp"
+#line 4111 "engines/director/lingo/lingo-gr.cpp"
break;
- case 273: /* expr: expr tAND expr */
-#line 769 "engines/director/lingo/lingo-gr.y"
+ case 277: /* expr: expr tAND expr */
+#line 773 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4067 "engines/director/lingo/lingo-gr.cpp"
+#line 4117 "engines/director/lingo/lingo-gr.cpp"
break;
- case 274: /* expr: expr tOR expr */
-#line 770 "engines/director/lingo/lingo-gr.y"
+ case 278: /* expr: expr tOR expr */
+#line 774 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4073 "engines/director/lingo/lingo-gr.cpp"
+#line 4123 "engines/director/lingo/lingo-gr.cpp"
break;
- case 275: /* expr: expr '&' expr */
-#line 771 "engines/director/lingo/lingo-gr.y"
+ case 279: /* expr: expr '&' expr */
+#line 775 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4079 "engines/director/lingo/lingo-gr.cpp"
+#line 4129 "engines/director/lingo/lingo-gr.cpp"
break;
- case 276: /* expr: expr tCONCAT expr */
-#line 772 "engines/director/lingo/lingo-gr.y"
+ case 280: /* expr: expr tCONCAT expr */
+#line 776 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4085 "engines/director/lingo/lingo-gr.cpp"
+#line 4135 "engines/director/lingo/lingo-gr.cpp"
break;
- case 277: /* expr: expr tCONTAINS expr */
-#line 773 "engines/director/lingo/lingo-gr.y"
+ case 281: /* expr: expr tCONTAINS expr */
+#line 777 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4091 "engines/director/lingo/lingo-gr.cpp"
+#line 4141 "engines/director/lingo/lingo-gr.cpp"
break;
- case 278: /* expr: expr tSTARTS expr */
-#line 774 "engines/director/lingo/lingo-gr.y"
+ case 282: /* expr: expr tSTARTS expr */
+#line 778 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4097 "engines/director/lingo/lingo-gr.cpp"
+#line 4147 "engines/director/lingo/lingo-gr.cpp"
break;
- case 281: /* expr_nounarymath: expr_nounarymath '+' expr */
-#line 783 "engines/director/lingo/lingo-gr.y"
+ case 285: /* expr_nounarymath: expr_nounarymath '+' expr */
+#line 787 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4103 "engines/director/lingo/lingo-gr.cpp"
+#line 4153 "engines/director/lingo/lingo-gr.cpp"
break;
- case 282: /* expr_nounarymath: expr_nounarymath '-' expr */
-#line 784 "engines/director/lingo/lingo-gr.y"
+ case 286: /* expr_nounarymath: expr_nounarymath '-' expr */
+#line 788 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4109 "engines/director/lingo/lingo-gr.cpp"
+#line 4159 "engines/director/lingo/lingo-gr.cpp"
break;
- case 283: /* expr_nounarymath: expr_nounarymath '*' expr */
-#line 785 "engines/director/lingo/lingo-gr.y"
+ case 287: /* expr_nounarymath: expr_nounarymath '*' expr */
+#line 789 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4115 "engines/director/lingo/lingo-gr.cpp"
+#line 4165 "engines/director/lingo/lingo-gr.cpp"
break;
- case 284: /* expr_nounarymath: expr_nounarymath '/' expr */
-#line 786 "engines/director/lingo/lingo-gr.y"
+ case 288: /* expr_nounarymath: expr_nounarymath '/' expr */
+#line 790 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4121 "engines/director/lingo/lingo-gr.cpp"
+#line 4171 "engines/director/lingo/lingo-gr.cpp"
break;
- case 285: /* expr_nounarymath: expr_nounarymath tMOD expr */
-#line 787 "engines/director/lingo/lingo-gr.y"
+ case 289: /* expr_nounarymath: expr_nounarymath tMOD expr */
+#line 791 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4127 "engines/director/lingo/lingo-gr.cpp"
+#line 4177 "engines/director/lingo/lingo-gr.cpp"
break;
- case 286: /* expr_nounarymath: expr_nounarymath '>' expr */
-#line 788 "engines/director/lingo/lingo-gr.y"
+ case 290: /* expr_nounarymath: expr_nounarymath '>' expr */
+#line 792 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4133 "engines/director/lingo/lingo-gr.cpp"
+#line 4183 "engines/director/lingo/lingo-gr.cpp"
break;
- case 287: /* expr_nounarymath: expr_nounarymath '<' expr */
-#line 789 "engines/director/lingo/lingo-gr.y"
+ case 291: /* expr_nounarymath: expr_nounarymath '<' expr */
+#line 793 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4139 "engines/director/lingo/lingo-gr.cpp"
+#line 4189 "engines/director/lingo/lingo-gr.cpp"
break;
- case 288: /* expr_nounarymath: expr_nounarymath tEQ expr */
-#line 790 "engines/director/lingo/lingo-gr.y"
+ case 292: /* expr_nounarymath: expr_nounarymath tEQ expr */
+#line 794 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_eq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4145 "engines/director/lingo/lingo-gr.cpp"
+#line 4195 "engines/director/lingo/lingo-gr.cpp"
break;
- case 289: /* expr_nounarymath: expr_nounarymath tNEQ expr */
-#line 791 "engines/director/lingo/lingo-gr.y"
+ case 293: /* expr_nounarymath: expr_nounarymath tNEQ expr */
+#line 795 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4151 "engines/director/lingo/lingo-gr.cpp"
+#line 4201 "engines/director/lingo/lingo-gr.cpp"
break;
- case 290: /* expr_nounarymath: expr_nounarymath tGE expr */
-#line 792 "engines/director/lingo/lingo-gr.y"
+ case 294: /* expr_nounarymath: expr_nounarymath tGE expr */
+#line 796 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4157 "engines/director/lingo/lingo-gr.cpp"
+#line 4207 "engines/director/lingo/lingo-gr.cpp"
break;
- case 291: /* expr_nounarymath: expr_nounarymath tLE expr */
-#line 793 "engines/director/lingo/lingo-gr.y"
+ case 295: /* expr_nounarymath: expr_nounarymath tLE expr */
+#line 797 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4163 "engines/director/lingo/lingo-gr.cpp"
+#line 4213 "engines/director/lingo/lingo-gr.cpp"
break;
- case 292: /* expr_nounarymath: expr_nounarymath tAND expr */
-#line 794 "engines/director/lingo/lingo-gr.y"
+ case 296: /* expr_nounarymath: expr_nounarymath tAND expr */
+#line 798 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4169 "engines/director/lingo/lingo-gr.cpp"
+#line 4219 "engines/director/lingo/lingo-gr.cpp"
break;
- case 293: /* expr_nounarymath: expr_nounarymath tOR expr */
-#line 795 "engines/director/lingo/lingo-gr.y"
+ case 297: /* expr_nounarymath: expr_nounarymath tOR expr */
+#line 799 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4175 "engines/director/lingo/lingo-gr.cpp"
+#line 4225 "engines/director/lingo/lingo-gr.cpp"
break;
- case 294: /* expr_nounarymath: expr_nounarymath '&' expr */
-#line 796 "engines/director/lingo/lingo-gr.y"
+ case 298: /* expr_nounarymath: expr_nounarymath '&' expr */
+#line 800 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4181 "engines/director/lingo/lingo-gr.cpp"
+#line 4231 "engines/director/lingo/lingo-gr.cpp"
break;
- case 295: /* expr_nounarymath: expr_nounarymath tCONCAT expr */
-#line 797 "engines/director/lingo/lingo-gr.y"
+ case 299: /* expr_nounarymath: expr_nounarymath tCONCAT expr */
+#line 801 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4187 "engines/director/lingo/lingo-gr.cpp"
+#line 4237 "engines/director/lingo/lingo-gr.cpp"
break;
- case 296: /* expr_nounarymath: expr_nounarymath tCONTAINS expr */
-#line 798 "engines/director/lingo/lingo-gr.y"
+ case 300: /* expr_nounarymath: expr_nounarymath tCONTAINS expr */
+#line 802 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4193 "engines/director/lingo/lingo-gr.cpp"
+#line 4243 "engines/director/lingo/lingo-gr.cpp"
break;
- case 297: /* expr_nounarymath: expr_nounarymath tSTARTS expr */
-#line 799 "engines/director/lingo/lingo-gr.y"
+ case 301: /* expr_nounarymath: expr_nounarymath tSTARTS expr */
+#line 803 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4199 "engines/director/lingo/lingo-gr.cpp"
+#line 4249 "engines/director/lingo/lingo-gr.cpp"
break;
- case 300: /* expr_noeq: expr_noeq '+' expr_noeq */
-#line 804 "engines/director/lingo/lingo-gr.y"
+ case 304: /* expr_noeq: expr_noeq '+' expr_noeq */
+#line 808 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_add, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4205 "engines/director/lingo/lingo-gr.cpp"
+#line 4255 "engines/director/lingo/lingo-gr.cpp"
break;
- case 301: /* expr_noeq: expr_noeq '-' expr_noeq */
-#line 805 "engines/director/lingo/lingo-gr.y"
+ case 305: /* expr_noeq: expr_noeq '-' expr_noeq */
+#line 809 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_sub, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4211 "engines/director/lingo/lingo-gr.cpp"
+#line 4261 "engines/director/lingo/lingo-gr.cpp"
break;
- case 302: /* expr_noeq: expr_noeq '*' expr_noeq */
-#line 806 "engines/director/lingo/lingo-gr.y"
+ case 306: /* expr_noeq: expr_noeq '*' expr_noeq */
+#line 810 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mul, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4217 "engines/director/lingo/lingo-gr.cpp"
+#line 4267 "engines/director/lingo/lingo-gr.cpp"
break;
- case 303: /* expr_noeq: expr_noeq '/' expr_noeq */
-#line 807 "engines/director/lingo/lingo-gr.y"
+ case 307: /* expr_noeq: expr_noeq '/' expr_noeq */
+#line 811 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_div, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4223 "engines/director/lingo/lingo-gr.cpp"
+#line 4273 "engines/director/lingo/lingo-gr.cpp"
break;
- case 304: /* expr_noeq: expr_noeq tMOD expr_noeq */
-#line 808 "engines/director/lingo/lingo-gr.y"
+ case 308: /* expr_noeq: expr_noeq tMOD expr_noeq */
+#line 812 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_mod, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4229 "engines/director/lingo/lingo-gr.cpp"
+#line 4279 "engines/director/lingo/lingo-gr.cpp"
break;
- case 305: /* expr_noeq: expr_noeq '>' expr_noeq */
-#line 809 "engines/director/lingo/lingo-gr.y"
+ case 309: /* expr_noeq: expr_noeq '>' expr_noeq */
+#line 813 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_gt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4235 "engines/director/lingo/lingo-gr.cpp"
+#line 4285 "engines/director/lingo/lingo-gr.cpp"
break;
- case 306: /* expr_noeq: expr_noeq '<' expr_noeq */
-#line 810 "engines/director/lingo/lingo-gr.y"
+ case 310: /* expr_noeq: expr_noeq '<' expr_noeq */
+#line 814 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_lt, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4241 "engines/director/lingo/lingo-gr.cpp"
+#line 4291 "engines/director/lingo/lingo-gr.cpp"
break;
- case 307: /* expr_noeq: expr_noeq tNEQ expr_noeq */
-#line 811 "engines/director/lingo/lingo-gr.y"
+ case 311: /* expr_noeq: expr_noeq tNEQ expr_noeq */
+#line 815 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_neq, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4247 "engines/director/lingo/lingo-gr.cpp"
+#line 4297 "engines/director/lingo/lingo-gr.cpp"
break;
- case 308: /* expr_noeq: expr_noeq tGE expr_noeq */
-#line 812 "engines/director/lingo/lingo-gr.y"
+ case 312: /* expr_noeq: expr_noeq tGE expr_noeq */
+#line 816 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ge, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4253 "engines/director/lingo/lingo-gr.cpp"
+#line 4303 "engines/director/lingo/lingo-gr.cpp"
break;
- case 309: /* expr_noeq: expr_noeq tLE expr_noeq */
-#line 813 "engines/director/lingo/lingo-gr.y"
+ case 313: /* expr_noeq: expr_noeq tLE expr_noeq */
+#line 817 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_le, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4259 "engines/director/lingo/lingo-gr.cpp"
+#line 4309 "engines/director/lingo/lingo-gr.cpp"
break;
- case 310: /* expr_noeq: expr_noeq tAND expr_noeq */
-#line 814 "engines/director/lingo/lingo-gr.y"
+ case 314: /* expr_noeq: expr_noeq tAND expr_noeq */
+#line 818 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_and, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4265 "engines/director/lingo/lingo-gr.cpp"
+#line 4315 "engines/director/lingo/lingo-gr.cpp"
break;
- case 311: /* expr_noeq: expr_noeq tOR expr_noeq */
-#line 815 "engines/director/lingo/lingo-gr.y"
+ case 315: /* expr_noeq: expr_noeq tOR expr_noeq */
+#line 819 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_or, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4271 "engines/director/lingo/lingo-gr.cpp"
+#line 4321 "engines/director/lingo/lingo-gr.cpp"
break;
- case 312: /* expr_noeq: expr_noeq '&' expr_noeq */
-#line 816 "engines/director/lingo/lingo-gr.y"
+ case 316: /* expr_noeq: expr_noeq '&' expr_noeq */
+#line 820 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_ampersand, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4277 "engines/director/lingo/lingo-gr.cpp"
+#line 4327 "engines/director/lingo/lingo-gr.cpp"
break;
- case 313: /* expr_noeq: expr_noeq tCONCAT expr_noeq */
-#line 817 "engines/director/lingo/lingo-gr.y"
+ case 317: /* expr_noeq: expr_noeq tCONCAT expr_noeq */
+#line 821 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_concat, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4283 "engines/director/lingo/lingo-gr.cpp"
+#line 4333 "engines/director/lingo/lingo-gr.cpp"
break;
- case 314: /* expr_noeq: expr_noeq tCONTAINS expr_noeq */
-#line 818 "engines/director/lingo/lingo-gr.y"
+ case 318: /* expr_noeq: expr_noeq tCONTAINS expr_noeq */
+#line 822 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_contains, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4289 "engines/director/lingo/lingo-gr.cpp"
+#line 4339 "engines/director/lingo/lingo-gr.cpp"
break;
- case 315: /* expr_noeq: expr_noeq tSTARTS expr_noeq */
-#line 819 "engines/director/lingo/lingo-gr.y"
+ case 319: /* expr_noeq: expr_noeq tSTARTS expr_noeq */
+#line 823 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new BinaryOpNode(LC::c_starts, (yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4295 "engines/director/lingo/lingo-gr.cpp"
+#line 4345 "engines/director/lingo/lingo-gr.cpp"
break;
- case 316: /* sprite: tSPRITE expr tINTERSECTS simpleexpr */
-#line 822 "engines/director/lingo/lingo-gr.y"
+ case 320: /* sprite: tSPRITE expr tINTERSECTS simpleexpr */
+#line 826 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new IntersectsNode((yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4301 "engines/director/lingo/lingo-gr.cpp"
+#line 4351 "engines/director/lingo/lingo-gr.cpp"
break;
- case 317: /* sprite: tSPRITE expr tWITHIN simpleexpr */
-#line 823 "engines/director/lingo/lingo-gr.y"
+ case 321: /* sprite: tSPRITE expr tWITHIN simpleexpr */
+#line 827 "engines/director/lingo/lingo-gr.y"
{ (yyval.node) = new WithinNode((yyvsp[-2].node), (yyvsp[0].node)); }
-#line 4307 "engines/director/lingo/lingo-gr.cpp"
+#line 4357 "engines/director/lingo/lingo-gr.cpp"
break;
- case 318: /* exprlist: %empty */
-#line 826 "engines/director/lingo/lingo-gr.y"
+ case 322: /* exprlist: %empty */
+#line 830 "engines/director/lingo/lingo-gr.y"
{ (yyval.nodelist) = new NodeList; }
-#line 4313 "engines/director/lingo/lingo-gr.cpp"
+#line 4363 "engines/director/lingo/lingo-gr.cpp"
break;
- case 320: /* nonemptyexprlist: expr */
-#line 830 "engines/director/lingo/lingo-gr.y"
+ case 324: /* nonemptyexprlist: expr */
+#line 834 "engines/director/lingo/lingo-gr.y"
{
NodeList *list = new NodeList;
list->push_back((yyvsp[0].node));
(yyval.nodelist) = list; }
-#line 4322 "engines/director/lingo/lingo-gr.cpp"
+#line 4372 "engines/director/lingo/lingo-gr.cpp"
break;
- case 321: /* nonemptyexprlist: nonemptyexprlist ',' expr */
-#line 834 "engines/director/lingo/lingo-gr.y"
+ case 325: /* nonemptyexprlist: nonemptyexprlist ',' expr */
+#line 838 "engines/director/lingo/lingo-gr.y"
{
(yyvsp[-2].nodelist)->push_back((yyvsp[0].node));
(yyval.nodelist) = (yyvsp[-2].nodelist); }
-#line 4330 "engines/director/lingo/lingo-gr.cpp"
+#line 4380 "engines/director/lingo/lingo-gr.cpp"
break;
-#line 4334 "engines/director/lingo/lingo-gr.cpp"
+#line 4384 "engines/director/lingo/lingo-gr.cpp"
default: break;
}
@@ -4529,7 +4579,7 @@ yyreturn:
return yyresult;
}
-#line 839 "engines/director/lingo/lingo-gr.y"
+#line 843 "engines/director/lingo/lingo-gr.y"
int yyreport_syntax_error(const yypcontext_t *ctx) {
diff --git a/engines/director/lingo/lingo-gr.h b/engines/director/lingo/lingo-gr.h
index 246cc1d60b..993220fe4c 100644
--- a/engines/director/lingo/lingo-gr.h
+++ b/engines/director/lingo/lingo-gr.h
@@ -66,80 +66,82 @@ extern int yydebug;
tFIELD = 267, /* tFIELD */
tSCRIPT = 268, /* tSCRIPT */
tWINDOW = 269, /* tWINDOW */
- tDOWN = 270, /* tDOWN */
- tELSE = 271, /* tELSE */
- tELSIF = 272, /* tELSIF */
- tEXIT = 273, /* tEXIT */
- tFRAME = 274, /* tFRAME */
- tGLOBAL = 275, /* tGLOBAL */
- tGO = 276, /* tGO */
- tIF = 277, /* tIF */
- tIN = 278, /* tIN */
- tINTO = 279, /* tINTO */
- tMACRO = 280, /* tMACRO */
- tMOVIE = 281, /* tMOVIE */
- tNEXT = 282, /* tNEXT */
- tOF = 283, /* tOF */
- tPREVIOUS = 284, /* tPREVIOUS */
- tPUT = 285, /* tPUT */
- tREPEAT = 286, /* tREPEAT */
- tSET = 287, /* tSET */
- tTHEN = 288, /* tTHEN */
- tTO = 289, /* tTO */
- tWHEN = 290, /* tWHEN */
- tWITH = 291, /* tWITH */
- tWHILE = 292, /* tWHILE */
- tFACTORY = 293, /* tFACTORY */
- tOPEN = 294, /* tOPEN */
- tPLAY = 295, /* tPLAY */
- tINSTANCE = 296, /* tINSTANCE */
- tGE = 297, /* tGE */
- tLE = 298, /* tLE */
- tEQ = 299, /* tEQ */
- tNEQ = 300, /* tNEQ */
- tAND = 301, /* tAND */
- tOR = 302, /* tOR */
- tNOT = 303, /* tNOT */
- tMOD = 304, /* tMOD */
- tAFTER = 305, /* tAFTER */
- tBEFORE = 306, /* tBEFORE */
- tCONCAT = 307, /* tCONCAT */
- tCONTAINS = 308, /* tCONTAINS */
- tSTARTS = 309, /* tSTARTS */
- tCHAR = 310, /* tCHAR */
- tCHARS = 311, /* tCHARS */
- tITEM = 312, /* tITEM */
- tITEMS = 313, /* tITEMS */
- tLINE = 314, /* tLINE */
- tLINES = 315, /* tLINES */
- tWORD = 316, /* tWORD */
- tWORDS = 317, /* tWORDS */
- tABBREVIATED = 318, /* tABBREVIATED */
- tABBREV = 319, /* tABBREV */
- tABBR = 320, /* tABBR */
- tLONG = 321, /* tLONG */
- tSHORT = 322, /* tSHORT */
- tCASTMEMBERS = 323, /* tCASTMEMBERS */
- tDATE = 324, /* tDATE */
- tLAST = 325, /* tLAST */
- tMENU = 326, /* tMENU */
- tMENUITEM = 327, /* tMENUITEM */
- tMENUITEMS = 328, /* tMENUITEMS */
- tNUMBER = 329, /* tNUMBER */
- tTHE = 330, /* tTHE */
- tTIME = 331, /* tTIME */
- tSOUND = 332, /* tSOUND */
- tSPRITE = 333, /* tSPRITE */
- tINTERSECTS = 334, /* tINTERSECTS */
- tWITHIN = 335, /* tWITHIN */
- tTELL = 336, /* tTELL */
- tPROPERTY = 337, /* tPROPERTY */
- tON = 338, /* tON */
- tMETHOD = 339, /* tMETHOD */
- tENDIF = 340, /* tENDIF */
- tENDREPEAT = 341, /* tENDREPEAT */
- tENDTELL = 342, /* tENDTELL */
- tASSERTERROR = 343 /* tASSERTERROR */
+ tDELETE = 270, /* tDELETE */
+ tDOWN = 271, /* tDOWN */
+ tELSE = 272, /* tELSE */
+ tELSIF = 273, /* tELSIF */
+ tEXIT = 274, /* tEXIT */
+ tFRAME = 275, /* tFRAME */
+ tGLOBAL = 276, /* tGLOBAL */
+ tGO = 277, /* tGO */
+ tHILITE = 278, /* tHILITE */
+ tIF = 279, /* tIF */
+ tIN = 280, /* tIN */
+ tINTO = 281, /* tINTO */
+ tMACRO = 282, /* tMACRO */
+ tMOVIE = 283, /* tMOVIE */
+ tNEXT = 284, /* tNEXT */
+ tOF = 285, /* tOF */
+ tPREVIOUS = 286, /* tPREVIOUS */
+ tPUT = 287, /* tPUT */
+ tREPEAT = 288, /* tREPEAT */
+ tSET = 289, /* tSET */
+ tTHEN = 290, /* tTHEN */
+ tTO = 291, /* tTO */
+ tWHEN = 292, /* tWHEN */
+ tWITH = 293, /* tWITH */
+ tWHILE = 294, /* tWHILE */
+ tFACTORY = 295, /* tFACTORY */
+ tOPEN = 296, /* tOPEN */
+ tPLAY = 297, /* tPLAY */
+ tINSTANCE = 298, /* tINSTANCE */
+ tGE = 299, /* tGE */
+ tLE = 300, /* tLE */
+ tEQ = 301, /* tEQ */
+ tNEQ = 302, /* tNEQ */
+ tAND = 303, /* tAND */
+ tOR = 304, /* tOR */
+ tNOT = 305, /* tNOT */
+ tMOD = 306, /* tMOD */
+ tAFTER = 307, /* tAFTER */
+ tBEFORE = 308, /* tBEFORE */
+ tCONCAT = 309, /* tCONCAT */
+ tCONTAINS = 310, /* tCONTAINS */
+ tSTARTS = 311, /* tSTARTS */
+ tCHAR = 312, /* tCHAR */
+ tCHARS = 313, /* tCHARS */
+ tITEM = 314, /* tITEM */
+ tITEMS = 315, /* tITEMS */
+ tLINE = 316, /* tLINE */
+ tLINES = 317, /* tLINES */
+ tWORD = 318, /* tWORD */
+ tWORDS = 319, /* tWORDS */
+ tABBREVIATED = 320, /* tABBREVIATED */
+ tABBREV = 321, /* tABBREV */
+ tABBR = 322, /* tABBR */
+ tLONG = 323, /* tLONG */
+ tSHORT = 324, /* tSHORT */
+ tCASTMEMBERS = 325, /* tCASTMEMBERS */
+ tDATE = 326, /* tDATE */
+ tLAST = 327, /* tLAST */
+ tMENU = 328, /* tMENU */
+ tMENUITEM = 329, /* tMENUITEM */
+ tMENUITEMS = 330, /* tMENUITEMS */
+ tNUMBER = 331, /* tNUMBER */
+ tTHE = 332, /* tTHE */
+ tTIME = 333, /* tTIME */
+ tSOUND = 334, /* tSOUND */
+ tSPRITE = 335, /* tSPRITE */
+ tINTERSECTS = 336, /* tINTERSECTS */
+ tWITHIN = 337, /* tWITHIN */
+ tTELL = 338, /* tTELL */
+ tPROPERTY = 339, /* tPROPERTY */
+ tON = 340, /* tON */
+ tMETHOD = 341, /* tMETHOD */
+ tENDIF = 342, /* tENDIF */
+ tENDREPEAT = 343, /* tENDREPEAT */
+ tENDTELL = 344, /* tENDTELL */
+ tASSERTERROR = 345 /* tASSERTERROR */
};
typedef enum yytokentype yytoken_kind_t;
#endif
@@ -159,7 +161,7 @@ union YYSTYPE
Director::Node *node;
Director::NodeList *nodelist;
-#line 163 "engines/director/lingo/lingo-gr.h"
+#line 165 "engines/director/lingo/lingo-gr.h"
};
typedef union YYSTYPE YYSTYPE;
diff --git a/engines/director/lingo/lingo-gr.y b/engines/director/lingo/lingo-gr.y
index c1b86e8f9d..24315eacd4 100644
--- a/engines/director/lingo/lingo-gr.y
+++ b/engines/director/lingo/lingo-gr.y
@@ -128,7 +128,7 @@ static void checkEnd(Common::String *token, Common::String *expect, bool require
%token<s> tVARID tSTRING tSYMBOL
%token<s> tENDCLAUSE
%token tCAST tFIELD tSCRIPT tWINDOW
-%token tDOWN tELSE tELSIF tEXIT tFRAME tGLOBAL tGO tIF tIN tINTO tMACRO
+%token tDELETE tDOWN tELSE tELSIF tEXIT tFRAME tGLOBAL tGO tHILITE tIF tIN tINTO tMACRO
%token tMOVIE tNEXT tOF tPREVIOUS tPUT tREPEAT tSET tTHEN tTO tWHEN
%token tWITH tWHILE tFACTORY tOPEN tPLAY tINSTANCE
%token tGE tLE tEQ tNEQ tAND tOR tNOT tMOD
@@ -301,9 +301,11 @@ CMDID: tVARID
| tCHARS { $$ = new Common::String("chars"); }
| tCONTAINS { $$ = new Common::String("contains"); }
| tDATE { $$ = new Common::String("date"); }
+ | tDELETE { $$ = new Common::String("delete"); }
| tDOWN { $$ = new Common::String("down"); }
| tFIELD { $$ = new Common::String("field"); }
| tFRAME { $$ = new Common::String("frame"); }
+ | tHILITE { $$ = new Common::String("hilite"); }
| tIN { $$ = new Common::String("in"); }
| tINTERSECTS { $$ = new Common::String("intersects"); }
| tINTO { $$ = new Common::String("into"); }
@@ -415,6 +417,8 @@ proc: CMDID cmdargs '\n' { $$ = new CmdNode($CMDID, $cmdargs); }
| tNEXT tREPEAT '\n' { $$ = new NextRepeatNode(); }
| tEXIT tREPEAT '\n' { $$ = new ExitRepeatNode(); }
| tEXIT '\n' { $$ = new ExitNode(); }
+ | tDELETE chunk '\n' { $$ = new DeleteNode($chunk); }
+ | tHILITE chunk '\n' { $$ = new HiliteNode($chunk); }
| tASSERTERROR stmtoneliner { $$ = new AssertErrorNode($stmtoneliner); }
;
@@ -644,6 +648,13 @@ chunk: tFIELD refargs { $$ = new FuncNode(new Common::String("field"), $refargs
$$ = new ChunkExprNode(kChunkLine, $idx, nullptr, $src); }
| tLINE expr[start] tTO expr[end] tOF simpleexpr[src] {
$$ = new ChunkExprNode(kChunkLine, $start, $end, $src); }
+ | tTHE tLAST chunktype inof simpleexpr { $$ = new TheLastNode($chunktype, $simpleexpr); }
+ ;
+
+chunktype: tCHAR { $$ = kChunkChar; }
+ | tWORD { $$ = kChunkWord; }
+ | tITEM { $$ = kChunkItem; }
+ | tLINE { $$ = kChunkLine; }
;
object: tSCRIPT refargs { $$ = new FuncNode(new Common::String("script"), $refargs); }
@@ -674,7 +685,6 @@ the: tTHE ID { $$ = new TheNode($ID); }
| tTHE tNUMBER tOF theobj { $$ = new TheOfNode(new Common::String("number"), $theobj); }
| thedatetime
| thenumberof
- | tTHE tLAST chunktype inof simpleexpr { $$ = new TheLastNode($chunktype, $simpleexpr); }
;
theobj: simpleexpr
@@ -706,12 +716,6 @@ thenumberof:
| tTHE tNUMBER tOF tMENUITEMS inof menu { $$ = new TheNumberOfNode(kNumberOfMenuItems, $menu); }
;
-chunktype: tCHAR { $$ = kChunkChar; }
- | tWORD { $$ = kChunkWord; }
- | tITEM { $$ = kChunkItem; }
- | tLINE { $$ = kChunkLine; }
- ;
-
inof: tIN | tOF ;
writablethe: tTHE ID { $$ = new TheNode($ID); }
diff --git a/engines/director/lingo/lingo-lex.cpp b/engines/director/lingo/lingo-lex.cpp
index 9b7f0fcdba..4124bcd1b2 100644
--- a/engines/director/lingo/lingo-lex.cpp
+++ b/engines/director/lingo/lingo-lex.cpp
@@ -355,8 +355,8 @@ static void yynoreturn yy_fatal_error ( const char* msg );
(yy_hold_char) = *yy_cp; \
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 84
-#define YY_END_OF_BUFFER 85
+#define YY_NUM_RULES 86
+#define YY_END_OF_BUFFER 87
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -364,41 +364,42 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static const flex_int16_t yy_accept[295] =
+static const flex_int16_t yy_accept[306] =
{ 0,
- 0, 0, 85, 83, 1, 81, 81, 83, 83, 80,
- 80, 79, 80, 76, 80, 77, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 1, 77, 1, 81, 0, 82, 2,
- 75, 78, 79, 74, 72, 73, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 23, 27, 77, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 44, 45, 77, 47, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 77, 77, 64, 77, 77, 77, 1, 0, 77, 2,
-
- 78, 77, 77, 7, 77, 77, 77, 77, 77, 77,
- 77, 16, 77, 77, 77, 77, 22, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 39, 77, 77, 42,
- 77, 77, 77, 77, 77, 51, 77, 77, 77, 55,
- 77, 77, 77, 77, 77, 61, 77, 77, 77, 77,
- 77, 77, 0, 77, 5, 77, 77, 9, 10, 77,
- 13, 14, 15, 0, 17, 77, 77, 77, 0, 77,
- 77, 26, 28, 30, 31, 33, 77, 35, 77, 77,
- 41, 77, 46, 48, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 60, 62, 63, 65, 77, 77, 68,
-
- 70, 0, 77, 77, 6, 77, 11, 77, 16, 19,
- 20, 77, 22, 77, 77, 29, 32, 34, 77, 77,
- 40, 77, 77, 77, 77, 77, 77, 56, 57, 77,
- 77, 66, 77, 77, 71, 0, 77, 4, 8, 77,
- 16, 21, 77, 77, 77, 38, 43, 77, 77, 52,
- 53, 77, 58, 59, 67, 69, 0, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 0, 18, 77, 12,
- 24, 77, 36, 49, 50, 77, 18, 77, 77, 37,
- 77, 77, 25, 77, 3, 77, 77, 77, 77, 77,
- 77, 77, 54, 0
-
+ 0, 0, 87, 85, 1, 83, 83, 85, 85, 82,
+ 82, 81, 82, 78, 82, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 1, 79, 1, 83, 0, 84,
+ 2, 77, 80, 81, 76, 74, 75, 79, 79, 79,
+ 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 79, 79, 25, 29, 79, 79,
+ 79, 79, 79, 79, 79, 79, 79, 79, 46, 47,
+ 79, 49, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 79, 66, 79, 79, 79, 1,
+
+ 0, 79, 2, 80, 79, 79, 7, 79, 79, 79,
+ 79, 79, 79, 79, 79, 17, 79, 79, 79, 79,
+ 23, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 41, 79, 79, 44, 79, 79, 79, 79, 79,
+ 53, 79, 79, 79, 57, 79, 79, 79, 79, 79,
+ 63, 79, 79, 79, 79, 79, 79, 0, 79, 5,
+ 79, 79, 9, 10, 79, 13, 79, 15, 16, 0,
+ 18, 79, 79, 79, 0, 79, 79, 79, 28, 30,
+ 32, 33, 35, 79, 37, 79, 79, 43, 79, 48,
+ 50, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+
+ 62, 64, 65, 67, 79, 79, 70, 72, 0, 79,
+ 79, 6, 79, 11, 79, 79, 17, 20, 21, 79,
+ 23, 79, 79, 79, 31, 34, 36, 79, 79, 42,
+ 79, 79, 79, 79, 79, 79, 58, 59, 79, 79,
+ 68, 79, 79, 73, 0, 79, 4, 8, 79, 14,
+ 17, 22, 24, 79, 79, 79, 40, 45, 79, 79,
+ 54, 55, 79, 60, 61, 69, 71, 0, 79, 79,
+ 79, 79, 79, 79, 79, 79, 79, 0, 19, 79,
+ 12, 26, 79, 38, 51, 52, 79, 19, 79, 79,
+ 39, 79, 79, 27, 79, 3, 79, 79, 79, 79,
+
+ 79, 79, 79, 56, 0
} ;
static const YY_CHAR yy_ec[256] =
@@ -443,159 +444,164 @@ static const YY_CHAR yy_meta[59] =
5, 5, 5, 5, 5, 5, 5, 5
} ;
-static const flex_int16_t yy_base[301] =
+static const flex_int16_t yy_base[312] =
{ 0,
- 0, 57, 167, 615, 58, 615, 615, 158, 0, 615,
- 152, 54, 53, 615, 119, 52, 50, 58, 55, 62,
- 58, 69, 0, 86, 84, 108, 105, 122, 123, 83,
- 162, 164, 173, 195, 202, 71, 615, 122, 615, 0,
- 615, 115, 74, 615, 615, 615, 0, 98, 85, 103,
- 111, 110, 128, 118, 157, 170, 177, 139, 136, 143,
- 182, 193, 112, 0, 197, 184, 191, 197, 204, 216,
- 209, 221, 199, 205, 216, 0, 0, 226, 0, 232,
- 233, 217, 231, 236, 233, 239, 239, 243, 259, 251,
- 259, 254, 0, 262, 273, 254, 306, 275, 275, 0,
-
- 79, 266, 274, 0, 271, 271, 277, 280, 295, 290,
- 300, 79, 291, 299, 302, 304, 327, 299, 313, 309,
- 304, 314, 317, 310, 311, 325, 0, 325, 319, 0,
- 336, 327, 323, 330, 336, 0, 348, 345, 346, 0,
- 344, 350, 346, 348, 354, 353, 364, 358, 363, 371,
- 371, 377, 380, 371, 379, 374, 375, 0, 377, 394,
- 0, 0, 0, 75, 0, 393, 394, 399, 389, 400,
- 389, 0, 391, 0, 392, 0, 396, 405, 403, 410,
- 0, 414, 0, 0, 412, 421, 427, 418, 422, 417,
- 425, 418, 422, 0, 0, 0, 0, 436, 429, 436,
-
- 430, 430, 436, 433, 0, 449, 0, 450, 0, 0,
- 0, 450, 615, 450, 449, 0, 0, 0, 449, 467,
- 0, 457, 460, 460, 460, 461, 460, 0, 0, 476,
- 467, 0, 465, 474, 0, 476, 475, 483, 0, 484,
- 0, 0, 490, 494, 498, 0, 0, 486, 489, 0,
- 0, 498, 0, 0, 0, 0, 495, 491, 516, 503,
- 513, 518, 511, 507, 502, 527, 507, 0, 513, 0,
- 0, 516, 518, 0, 0, 520, 615, 533, 526, 0,
- 531, 535, 0, 544, 0, 538, 537, 545, 542, 544,
- 549, 548, 0, 615, 599, 65, 601, 603, 607, 609
-
+ 0, 57, 166, 630, 58, 630, 630, 156, 0, 630,
+ 147, 54, 53, 630, 140, 52, 50, 58, 55, 62,
+ 58, 74, 48, 86, 0, 99, 100, 97, 114, 121,
+ 65, 160, 162, 171, 128, 157, 155, 630, 130, 630,
+ 0, 630, 115, 65, 630, 630, 630, 0, 139, 58,
+ 156, 155, 130, 181, 137, 137, 176, 171, 182, 197,
+ 195, 201, 207, 196, 120, 200, 0, 195, 210, 200,
+ 205, 206, 217, 210, 222, 200, 207, 218, 0, 0,
+ 231, 0, 236, 241, 230, 236, 237, 236, 243, 239,
+ 245, 261, 254, 258, 254, 0, 262, 271, 258, 302,
+
+ 271, 278, 0, 106, 281, 277, 0, 284, 281, 284,
+ 283, 297, 298, 294, 304, 82, 294, 302, 302, 308,
+ 326, 307, 300, 323, 312, 309, 325, 331, 325, 323,
+ 337, 0, 338, 325, 0, 346, 337, 329, 334, 340,
+ 0, 351, 348, 348, 0, 346, 354, 349, 353, 362,
+ 362, 373, 370, 374, 382, 379, 384, 387, 374, 388,
+ 380, 382, 0, 382, 393, 0, 382, 0, 0, 79,
+ 0, 398, 398, 403, 392, 390, 411, 399, 0, 402,
+ 0, 406, 0, 410, 420, 417, 427, 0, 428, 0,
+ 0, 425, 431, 437, 425, 430, 425, 440, 429, 430,
+
+ 0, 0, 0, 0, 444, 437, 445, 441, 442, 449,
+ 446, 0, 463, 0, 462, 469, 0, 0, 0, 465,
+ 630, 473, 468, 466, 0, 0, 0, 466, 475, 0,
+ 470, 473, 473, 472, 474, 473, 0, 0, 490, 482,
+ 0, 479, 491, 0, 493, 494, 487, 0, 500, 0,
+ 0, 0, 0, 513, 512, 515, 0, 0, 504, 506,
+ 0, 0, 513, 0, 0, 0, 0, 511, 505, 529,
+ 516, 526, 531, 524, 520, 515, 540, 521, 0, 530,
+ 0, 0, 533, 535, 0, 0, 539, 630, 537, 544,
+ 0, 545, 559, 0, 562, 0, 553, 553, 567, 559,
+
+ 560, 563, 563, 0, 630, 614, 72, 616, 618, 622,
+ 624
} ;
-static const flex_int16_t yy_def[301] =
+static const flex_int16_t yy_def[312] =
{ 0,
- 294, 1, 294, 294, 294, 294, 294, 295, 296, 294,
- 294, 294, 294, 294, 294, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 294, 297, 294, 294, 295, 294, 298,
- 294, 294, 294, 294, 294, 294, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 294, 294, 297, 298,
-
- 294, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 294, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 294, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 299, 297, 297, 297, 297, 294, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
-
- 297, 294, 297, 297, 297, 297, 297, 297, 300, 297,
- 297, 297, 294, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 294, 297, 297, 297, 297,
- 300, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 294, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 294, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 294, 297, 297, 297,
- 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 0, 294, 294, 294, 294, 294, 294
-
+ 305, 1, 305, 305, 305, 305, 305, 306, 307, 305,
+ 305, 305, 305, 305, 305, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 305, 308, 305, 305, 306, 305,
+ 309, 305, 305, 305, 305, 305, 305, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 305,
+
+ 305, 308, 309, 305, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 305, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 305, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 310,
+ 308, 308, 308, 308, 305, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+
+ 308, 308, 308, 308, 308, 308, 308, 308, 305, 308,
+ 308, 308, 308, 308, 308, 308, 311, 308, 308, 308,
+ 305, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 305, 308, 308, 308, 308, 308,
+ 311, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 305, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 305, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 305, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+
+ 308, 308, 308, 308, 0, 305, 305, 305, 305, 305,
+ 305
} ;
-static const flex_int16_t yy_nxt[674] =
+static const flex_int16_t yy_nxt[689] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 4, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
- 23, 24, 23, 25, 26, 27, 28, 29, 30, 31,
- 32, 23, 23, 33, 23, 23, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
- 30, 31, 32, 23, 23, 33, 23, 23, 34, 36,
- 37, 37, 42, 43, 44, 45, 48, 51, 55, 40,
- 49, 52, 36, 37, 37, 35, 164, 50, 53, 60,
- 164, 56, 42, 43, 54, 57, 61, 58, 101, 48,
- 51, 55, 62, 49, 52, 63, 59, 67, 35, 50,
-
- 83, 53, 60, 56, 64, 68, 54, 57, 61, 58,
- 69, 65, 102, 117, 62, 103, 66, 63, 59, 104,
- 67, 70, 73, 83, 101, 71, 39, 64, 68, 105,
- 46, 74, 69, 65, 72, 102, 75, 103, 66, 106,
- 76, 107, 104, 108, 70, 73, 80, 77, 71, 78,
- 79, 81, 105, 74, 82, 112, 72, 113, 75, 41,
- 114, 106, 39, 76, 107, 108, 294, 294, 80, 77,
- 294, 78, 79, 81, 294, 294, 82, 84, 112, 85,
- 113, 90, 86, 114, 91, 92, 294, 109, 87, 88,
- 93, 294, 89, 94, 95, 115, 97, 37, 37, 96,
-
- 84, 120, 85, 110, 90, 86, 111, 91, 92, 109,
- 87, 88, 93, 98, 89, 99, 94, 95, 115, 116,
- 121, 96, 122, 60, 120, 110, 118, 119, 111, 123,
- 61, 124, 294, 129, 125, 130, 98, 127, 99, 126,
- 131, 116, 121, 132, 122, 133, 60, 136, 118, 119,
- 134, 123, 61, 128, 124, 129, 125, 130, 137, 135,
- 127, 126, 131, 140, 138, 141, 132, 139, 133, 136,
- 142, 143, 144, 134, 145, 128, 146, 294, 147, 148,
- 137, 135, 152, 149, 294, 140, 138, 141, 153, 139,
- 154, 156, 142, 143, 155, 144, 145, 157, 150, 146,
-
- 147, 158, 148, 151, 152, 159, 149, 97, 37, 37,
- 160, 153, 161, 154, 156, 162, 155, 163, 168, 157,
- 150, 165, 166, 158, 98, 151, 167, 159, 117, 170,
- 171, 175, 160, 173, 174, 161, 176, 162, 177, 172,
- 163, 168, 178, 165, 166, 179, 180, 98, 167, 181,
- 182, 170, 183, 171, 175, 173, 174, 169, 184, 176,
- 177, 172, 185, 186, 178, 187, 188, 192, 179, 180,
- 189, 181, 190, 182, 183, 191, 193, 194, 195, 169,
- 184, 196, 294, 197, 185, 186, 198, 199, 187, 188,
- 192, 200, 189, 201, 190, 202, 204, 191, 193, 194,
-
- 195, 203, 205, 206, 196, 197, 207, 208, 198, 210,
- 199, 211, 212, 214, 200, 213, 201, 215, 202, 204,
- 216, 217, 218, 203, 205, 206, 219, 221, 207, 220,
- 208, 222, 210, 223, 211, 212, 214, 213, 224, 215,
- 225, 229, 216, 217, 218, 226, 227, 228, 230, 219,
- 221, 220, 231, 232, 222, 233, 223, 234, 294, 235,
- 236, 224, 237, 225, 229, 238, 239, 226, 227, 228,
- 230, 240, 294, 242, 231, 243, 232, 233, 244, 245,
- 234, 235, 236, 246, 237, 247, 248, 238, 249, 239,
- 250, 251, 252, 253, 240, 242, 254, 243, 255, 256,
-
- 244, 245, 257, 258, 259, 261, 246, 247, 248, 260,
- 249, 262, 250, 251, 252, 263, 253, 264, 254, 265,
- 255, 256, 266, 267, 257, 258, 268, 259, 261, 269,
- 271, 260, 270, 272, 262, 273, 274, 275, 263, 264,
- 276, 265, 277, 278, 266, 267, 279, 280, 268, 281,
- 282, 285, 269, 271, 270, 283, 272, 273, 274, 275,
- 284, 286, 289, 276, 277, 278, 287, 288, 279, 280,
- 290, 281, 291, 282, 285, 292, 293, 283, 294, 294,
- 294, 294, 284, 294, 286, 289, 294, 294, 287, 288,
- 294, 294, 290, 294, 291, 294, 294, 292, 293, 38,
-
- 38, 294, 38, 38, 47, 47, 100, 100, 209, 294,
- 294, 209, 241, 241, 3, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 25, 25, 34, 25, 25, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 26, 27, 28, 29, 30,
+ 31, 32, 33, 25, 25, 34, 25, 25, 35, 37,
+ 38, 38, 43, 44, 45, 46, 49, 52, 56, 66,
+ 50, 53, 57, 43, 44, 36, 41, 51, 54, 62,
+ 170, 58, 86, 170, 55, 59, 63, 60, 106, 49,
+ 52, 56, 66, 50, 53, 57, 61, 64, 36, 51,
+
+ 65, 54, 62, 58, 67, 86, 55, 59, 63, 60,
+ 106, 68, 70, 73, 76, 104, 69, 74, 61, 64,
+ 71, 121, 65, 77, 104, 72, 75, 67, 78, 100,
+ 38, 38, 79, 68, 40, 70, 73, 76, 69, 80,
+ 74, 81, 82, 71, 83, 77, 101, 72, 75, 84,
+ 78, 47, 85, 105, 42, 79, 37, 38, 38, 109,
+ 40, 80, 111, 81, 82, 305, 83, 112, 305, 101,
+ 102, 84, 107, 108, 85, 87, 105, 88, 62, 93,
+ 89, 109, 94, 95, 111, 63, 90, 91, 96, 112,
+ 92, 97, 98, 102, 110, 107, 108, 99, 87, 113,
+
+ 88, 62, 93, 89, 114, 94, 95, 63, 90, 91,
+ 96, 115, 92, 116, 97, 98, 117, 110, 118, 99,
+ 119, 113, 120, 122, 123, 124, 114, 125, 305, 126,
+ 127, 128, 129, 115, 134, 130, 116, 135, 132, 117,
+ 131, 118, 136, 119, 120, 122, 123, 124, 137, 138,
+ 125, 126, 127, 128, 133, 129, 134, 130, 139, 135,
+ 141, 132, 131, 142, 136, 143, 145, 140, 144, 146,
+ 147, 137, 138, 148, 149, 151, 133, 150, 152, 153,
+ 305, 139, 141, 154, 158, 142, 157, 143, 145, 140,
+ 144, 146, 147, 159, 161, 148, 155, 149, 151, 150,
+
+ 152, 156, 153, 100, 38, 38, 154, 158, 157, 160,
+ 162, 163, 164, 165, 166, 167, 159, 161, 155, 168,
+ 101, 169, 174, 156, 171, 172, 173, 121, 176, 305,
+ 177, 160, 162, 163, 164, 165, 180, 166, 167, 181,
+ 178, 168, 182, 101, 169, 174, 171, 172, 173, 179,
+ 183, 176, 177, 184, 185, 188, 175, 186, 180, 187,
+ 189, 181, 190, 178, 191, 182, 192, 193, 194, 195,
+ 199, 179, 196, 183, 197, 184, 185, 188, 175, 198,
+ 186, 200, 187, 189, 190, 201, 191, 202, 192, 193,
+ 203, 194, 195, 199, 196, 204, 197, 205, 206, 207,
+
+ 208, 198, 209, 200, 210, 211, 215, 201, 212, 202,
+ 213, 214, 216, 203, 218, 219, 220, 204, 221, 205,
+ 222, 206, 207, 208, 223, 209, 210, 224, 211, 215,
+ 212, 225, 213, 214, 216, 226, 227, 218, 219, 220,
+ 221, 228, 222, 229, 230, 231, 232, 223, 233, 224,
+ 234, 305, 235, 225, 236, 237, 238, 226, 227, 239,
+ 240, 241, 305, 242, 228, 229, 243, 230, 231, 232,
+ 244, 233, 245, 234, 235, 246, 236, 237, 247, 238,
+ 248, 239, 240, 249, 241, 242, 250, 305, 252, 243,
+ 253, 257, 244, 254, 245, 255, 256, 246, 258, 259,
+
+ 247, 260, 261, 248, 262, 263, 249, 264, 270, 250,
+ 252, 265, 266, 253, 257, 254, 267, 255, 256, 268,
+ 258, 259, 269, 260, 261, 271, 262, 263, 272, 273,
+ 264, 270, 274, 265, 266, 275, 276, 277, 267, 278,
+ 279, 268, 280, 282, 269, 281, 283, 271, 284, 285,
+ 286, 272, 273, 287, 293, 274, 288, 275, 276, 277,
+ 289, 278, 279, 290, 291, 280, 282, 281, 292, 283,
+ 284, 285, 286, 294, 295, 296, 287, 293, 288, 297,
+ 305, 298, 289, 299, 300, 290, 291, 301, 302, 303,
+ 292, 304, 305, 305, 305, 294, 295, 305, 296, 305,
+
+ 305, 305, 297, 298, 305, 299, 305, 300, 305, 301,
+ 302, 303, 305, 304, 39, 39, 305, 39, 39, 48,
+ 48, 103, 103, 217, 305, 305, 217, 251, 251, 3,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305
} ;
-static const flex_int16_t yy_chk[674] =
+static const flex_int16_t yy_chk[689] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -603,74 +609,75 @@ static const flex_int16_t yy_chk[674] =
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 5,
- 5, 5, 12, 12, 13, 13, 16, 17, 19, 296,
- 16, 18, 36, 36, 36, 2, 164, 16, 18, 21,
- 112, 19, 43, 43, 18, 20, 21, 20, 101, 16,
- 17, 19, 22, 16, 18, 22, 20, 25, 2, 16,
-
- 30, 18, 21, 19, 24, 25, 18, 20, 21, 20,
- 25, 24, 48, 63, 22, 49, 24, 22, 20, 50,
- 25, 26, 27, 30, 42, 26, 38, 24, 25, 51,
- 15, 27, 25, 24, 26, 48, 27, 49, 24, 52,
- 28, 53, 50, 54, 26, 27, 29, 28, 26, 28,
- 28, 29, 51, 27, 29, 58, 26, 59, 27, 11,
- 60, 52, 8, 28, 53, 54, 3, 0, 29, 28,
- 0, 28, 28, 29, 0, 0, 29, 31, 58, 31,
- 59, 32, 31, 60, 32, 32, 0, 55, 31, 31,
- 32, 0, 31, 33, 33, 61, 34, 34, 34, 33,
-
- 31, 66, 31, 56, 32, 31, 57, 32, 32, 55,
- 31, 31, 32, 34, 31, 35, 33, 33, 61, 62,
- 67, 33, 68, 35, 66, 56, 65, 65, 57, 69,
- 35, 70, 0, 73, 71, 74, 34, 72, 35, 71,
- 75, 62, 67, 78, 68, 80, 35, 82, 65, 65,
- 81, 69, 35, 72, 70, 73, 71, 74, 83, 81,
- 72, 71, 75, 85, 84, 86, 78, 84, 80, 82,
- 87, 88, 89, 81, 90, 72, 91, 0, 92, 94,
- 83, 81, 96, 94, 0, 85, 84, 86, 98, 84,
- 99, 103, 87, 88, 102, 89, 90, 105, 95, 91,
-
- 92, 106, 94, 95, 96, 107, 94, 97, 97, 97,
- 108, 98, 109, 99, 103, 110, 102, 111, 116, 105,
- 95, 113, 114, 106, 97, 95, 115, 107, 117, 118,
- 119, 122, 108, 120, 121, 109, 123, 110, 124, 119,
- 111, 116, 125, 113, 114, 126, 128, 97, 115, 129,
- 131, 118, 132, 119, 122, 120, 121, 117, 133, 123,
- 124, 119, 134, 135, 125, 137, 138, 143, 126, 128,
- 139, 129, 141, 131, 132, 142, 144, 145, 146, 117,
- 133, 147, 0, 148, 134, 135, 149, 150, 137, 138,
- 143, 151, 139, 152, 141, 153, 155, 142, 144, 145,
-
- 146, 154, 156, 157, 147, 148, 159, 160, 149, 166,
- 150, 167, 168, 170, 151, 169, 152, 171, 153, 155,
- 173, 175, 177, 154, 156, 157, 178, 180, 159, 179,
- 160, 182, 166, 185, 167, 168, 170, 169, 186, 171,
- 187, 191, 173, 175, 177, 188, 189, 190, 192, 178,
- 180, 179, 193, 198, 182, 199, 185, 200, 0, 201,
- 202, 186, 203, 187, 191, 204, 206, 188, 189, 190,
- 192, 208, 0, 212, 193, 214, 198, 199, 215, 219,
- 200, 201, 202, 220, 203, 222, 223, 204, 224, 206,
- 225, 226, 227, 230, 208, 212, 231, 214, 233, 234,
-
- 215, 219, 236, 237, 238, 243, 220, 222, 223, 240,
- 224, 244, 225, 226, 227, 245, 230, 248, 231, 249,
- 233, 234, 252, 257, 236, 237, 258, 238, 243, 259,
- 261, 240, 260, 262, 244, 263, 264, 265, 245, 248,
- 266, 249, 267, 269, 252, 257, 272, 273, 258, 276,
- 278, 282, 259, 261, 260, 279, 262, 263, 264, 265,
- 281, 284, 288, 266, 267, 269, 286, 287, 272, 273,
- 289, 276, 290, 278, 282, 291, 292, 279, 0, 0,
- 0, 0, 281, 0, 284, 288, 0, 0, 286, 287,
- 0, 0, 289, 0, 290, 0, 0, 291, 292, 295,
-
- 295, 0, 295, 295, 297, 297, 298, 298, 299, 0,
- 0, 299, 300, 300, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
- 294, 294, 294
+ 5, 5, 12, 12, 13, 13, 16, 17, 19, 23,
+ 16, 18, 19, 44, 44, 2, 307, 16, 18, 21,
+ 170, 19, 31, 116, 18, 20, 21, 20, 50, 16,
+ 17, 19, 23, 16, 18, 19, 20, 22, 2, 16,
+
+ 22, 18, 21, 19, 24, 31, 18, 20, 21, 20,
+ 50, 24, 26, 27, 28, 104, 24, 27, 20, 22,
+ 26, 65, 22, 28, 43, 26, 27, 24, 28, 35,
+ 35, 35, 29, 24, 39, 26, 27, 28, 24, 29,
+ 27, 29, 29, 26, 30, 28, 35, 26, 27, 30,
+ 28, 15, 30, 49, 11, 29, 37, 37, 37, 53,
+ 8, 29, 55, 29, 29, 3, 30, 56, 0, 35,
+ 36, 30, 51, 52, 30, 32, 49, 32, 36, 33,
+ 32, 53, 33, 33, 55, 36, 32, 32, 33, 56,
+ 32, 34, 34, 36, 54, 51, 52, 34, 32, 57,
+
+ 32, 36, 33, 32, 58, 33, 33, 36, 32, 32,
+ 33, 59, 32, 60, 34, 34, 61, 54, 62, 34,
+ 63, 57, 64, 66, 68, 68, 58, 69, 0, 70,
+ 71, 72, 73, 59, 76, 74, 60, 77, 75, 61,
+ 74, 62, 78, 63, 64, 66, 68, 68, 81, 83,
+ 69, 70, 71, 72, 75, 73, 76, 74, 84, 77,
+ 85, 75, 74, 86, 78, 87, 88, 84, 87, 89,
+ 90, 81, 83, 91, 92, 94, 75, 93, 95, 97,
+ 0, 84, 85, 97, 101, 86, 99, 87, 88, 84,
+ 87, 89, 90, 102, 106, 91, 98, 92, 94, 93,
+
+ 95, 98, 97, 100, 100, 100, 97, 101, 99, 105,
+ 108, 109, 110, 111, 112, 113, 102, 106, 98, 114,
+ 100, 115, 120, 98, 117, 118, 119, 121, 122, 0,
+ 123, 105, 108, 109, 110, 111, 125, 112, 113, 126,
+ 124, 114, 127, 100, 115, 120, 117, 118, 119, 124,
+ 128, 122, 123, 129, 130, 134, 121, 131, 125, 133,
+ 136, 126, 137, 124, 138, 127, 139, 140, 142, 143,
+ 148, 124, 144, 128, 146, 129, 130, 134, 121, 147,
+ 131, 149, 133, 136, 137, 150, 138, 151, 139, 140,
+ 152, 142, 143, 148, 144, 153, 146, 154, 155, 156,
+
+ 157, 147, 158, 149, 159, 160, 165, 150, 161, 151,
+ 162, 164, 167, 152, 172, 173, 174, 153, 175, 154,
+ 176, 155, 156, 157, 177, 158, 159, 178, 160, 165,
+ 161, 180, 162, 164, 167, 182, 184, 172, 173, 174,
+ 175, 185, 176, 186, 187, 189, 192, 177, 193, 178,
+ 194, 0, 195, 180, 196, 197, 198, 182, 184, 199,
+ 200, 205, 0, 206, 185, 186, 207, 187, 189, 192,
+ 208, 193, 209, 194, 195, 210, 196, 197, 211, 198,
+ 213, 199, 200, 215, 205, 206, 216, 0, 220, 207,
+ 222, 229, 208, 223, 209, 224, 228, 210, 231, 232,
+
+ 211, 233, 234, 213, 235, 236, 215, 239, 247, 216,
+ 220, 240, 242, 222, 229, 223, 243, 224, 228, 245,
+ 231, 232, 246, 233, 234, 249, 235, 236, 254, 255,
+ 239, 247, 256, 240, 242, 259, 260, 263, 243, 268,
+ 269, 245, 270, 272, 246, 271, 273, 249, 274, 275,
+ 276, 254, 255, 277, 289, 256, 278, 259, 260, 263,
+ 280, 268, 269, 283, 284, 270, 272, 271, 287, 273,
+ 274, 275, 276, 290, 292, 293, 277, 289, 278, 295,
+ 0, 297, 280, 298, 299, 283, 284, 300, 301, 302,
+ 287, 303, 0, 0, 0, 290, 292, 0, 293, 0,
+
+ 0, 0, 295, 297, 0, 298, 0, 299, 0, 300,
+ 301, 302, 0, 303, 306, 306, 0, 306, 306, 308,
+ 308, 309, 309, 310, 0, 0, 310, 311, 311, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
+ 305, 305, 305, 305, 305, 305, 305, 305
} ;
static yy_state_type yy_last_accepting_state;
@@ -781,8 +788,8 @@ static Common::String *cleanupString(const char *s) {
return res;
}
-#line 784 "engines/director/lingo/lingo-lex.cpp"
-#line 785 "engines/director/lingo/lingo-lex.cpp"
+#line 791 "engines/director/lingo/lingo-lex.cpp"
+#line 792 "engines/director/lingo/lingo-lex.cpp"
#define INITIAL 0
@@ -1003,7 +1010,7 @@ YY_DECL
#line 112 "engines/director/lingo/lingo-lex.l"
-#line 1006 "engines/director/lingo/lingo-lex.cpp"
+#line 1013 "engines/director/lingo/lingo-lex.cpp"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -1031,13 +1038,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 295 )
+ if ( yy_current_state >= 306 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
++yy_cp;
}
- while ( yy_current_state != 294 );
+ while ( yy_current_state != 305 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
@@ -1125,16 +1132,21 @@ YY_RULE_SETUP
case 14:
YY_RULE_SETUP
#line 129 "engines/director/lingo/lingo-lex.l"
-{ count(); return tDOWN; }
+{ count(); return tDELETE; }
YY_BREAK
case 15:
YY_RULE_SETUP
#line 130 "engines/director/lingo/lingo-lex.l"
-{ count(); return tELSE; }
+{ count(); return tDOWN; }
YY_BREAK
case 16:
YY_RULE_SETUP
#line 131 "engines/director/lingo/lingo-lex.l"
+{ count(); return tELSE; }
+ YY_BREAK
+case 17:
+YY_RULE_SETUP
+#line 132 "engines/director/lingo/lingo-lex.l"
{
count();
@@ -1154,309 +1166,314 @@ YY_RULE_SETUP
return tENDCLAUSE;
}
YY_BREAK
-case 17:
-YY_RULE_SETUP
-#line 149 "engines/director/lingo/lingo-lex.l"
-{ count(); return tEXIT; }
- YY_BREAK
case 18:
YY_RULE_SETUP
#line 150 "engines/director/lingo/lingo-lex.l"
-{ count(); return tFACTORY; }
+{ count(); return tEXIT; }
YY_BREAK
case 19:
YY_RULE_SETUP
#line 151 "engines/director/lingo/lingo-lex.l"
-{ count(); return tFIELD; }
+{ count(); return tFACTORY; }
YY_BREAK
case 20:
YY_RULE_SETUP
#line 152 "engines/director/lingo/lingo-lex.l"
-{ count(); return tFRAME; }
+{ count(); return tFIELD; }
YY_BREAK
case 21:
YY_RULE_SETUP
#line 153 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGLOBAL; }
+{ count(); return tFRAME; }
YY_BREAK
case 22:
YY_RULE_SETUP
#line 154 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGO; }
+{ count(); return tGLOBAL; }
YY_BREAK
case 23:
YY_RULE_SETUP
#line 155 "engines/director/lingo/lingo-lex.l"
-{ count(); return tIF; }
+{ count(); return tGO; }
YY_BREAK
case 24:
YY_RULE_SETUP
#line 156 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINSTANCE; }
+{ count(); return tHILITE; }
YY_BREAK
case 25:
YY_RULE_SETUP
#line 157 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINTERSECTS;}
+{ count(); return tIF; }
YY_BREAK
case 26:
YY_RULE_SETUP
#line 158 "engines/director/lingo/lingo-lex.l"
-{ count(); return tINTO; }
+{ count(); return tINSTANCE; }
YY_BREAK
case 27:
YY_RULE_SETUP
#line 159 "engines/director/lingo/lingo-lex.l"
-{ count(); return tIN; }
+{ count(); return tINTERSECTS;}
YY_BREAK
case 28:
YY_RULE_SETUP
#line 160 "engines/director/lingo/lingo-lex.l"
-{ count(); return tITEM; }
+{ count(); return tINTO; }
YY_BREAK
case 29:
YY_RULE_SETUP
#line 161 "engines/director/lingo/lingo-lex.l"
-{ count(); return tITEMS; }
+{ count(); return tIN; }
YY_BREAK
case 30:
YY_RULE_SETUP
#line 162 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLAST; }
+{ count(); return tITEM; }
YY_BREAK
case 31:
YY_RULE_SETUP
#line 163 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLINE; }
+{ count(); return tITEMS; }
YY_BREAK
case 32:
YY_RULE_SETUP
#line 164 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLINES; }
+{ count(); return tLAST; }
YY_BREAK
case 33:
YY_RULE_SETUP
#line 165 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLONG; }
+{ count(); return tLINE; }
YY_BREAK
case 34:
YY_RULE_SETUP
#line 166 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMACRO; }
+{ count(); return tLINES; }
YY_BREAK
case 35:
YY_RULE_SETUP
#line 167 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMENU; }
+{ count(); return tLONG; }
YY_BREAK
case 36:
YY_RULE_SETUP
#line 168 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMENUITEM;}
+{ count(); return tMACRO; }
YY_BREAK
case 37:
YY_RULE_SETUP
#line 169 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMENUITEMS; }
+{ count(); return tMENU; }
YY_BREAK
case 38:
YY_RULE_SETUP
#line 170 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMETHOD; }
+{ count(); return tMENUITEM;}
YY_BREAK
case 39:
YY_RULE_SETUP
#line 171 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMOD;}
+{ count(); return tMENUITEMS; }
YY_BREAK
case 40:
YY_RULE_SETUP
#line 172 "engines/director/lingo/lingo-lex.l"
-{ count(); return tMOVIE; }
+{ count(); return tMETHOD; }
YY_BREAK
case 41:
YY_RULE_SETUP
#line 173 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNEXT; }
+{ count(); return tMOD;}
YY_BREAK
case 42:
YY_RULE_SETUP
#line 174 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNOT; }
+{ count(); return tMOVIE; }
YY_BREAK
case 43:
YY_RULE_SETUP
#line 175 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNUMBER; }
+{ count(); return tNEXT; }
YY_BREAK
case 44:
YY_RULE_SETUP
#line 176 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOF; }
+{ count(); return tNOT; }
YY_BREAK
case 45:
YY_RULE_SETUP
#line 177 "engines/director/lingo/lingo-lex.l"
-{ count(); return tON; } // D3
+{ count(); return tNUMBER; }
YY_BREAK
case 46:
YY_RULE_SETUP
#line 178 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOPEN; }
+{ count(); return tOF; }
YY_BREAK
case 47:
YY_RULE_SETUP
#line 179 "engines/director/lingo/lingo-lex.l"
-{ count(); return tOR; }
+{ count(); return tON; } // D3
YY_BREAK
case 48:
YY_RULE_SETUP
#line 180 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPLAY; }
+{ count(); return tOPEN; }
YY_BREAK
case 49:
YY_RULE_SETUP
#line 181 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPREVIOUS; }
+{ count(); return tOR; }
YY_BREAK
case 50:
YY_RULE_SETUP
#line 182 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPROPERTY; } // D4
+{ count(); return tPLAY; }
YY_BREAK
case 51:
YY_RULE_SETUP
#line 183 "engines/director/lingo/lingo-lex.l"
-{ count(); return tPUT; }
+{ count(); return tPREVIOUS; }
YY_BREAK
case 52:
YY_RULE_SETUP
#line 184 "engines/director/lingo/lingo-lex.l"
-{ count(); return tREPEAT; }
+{ count(); return tPROPERTY; } // D4
YY_BREAK
case 53:
YY_RULE_SETUP
#line 185 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSCRIPT; }
+{ count(); return tPUT; }
YY_BREAK
case 54:
YY_RULE_SETUP
#line 186 "engines/director/lingo/lingo-lex.l"
-{ count(); return tASSERTERROR; }
+{ count(); return tREPEAT; }
YY_BREAK
case 55:
YY_RULE_SETUP
#line 187 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSET; }
+{ count(); return tSCRIPT; }
YY_BREAK
case 56:
YY_RULE_SETUP
#line 188 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSHORT; }
+{ count(); return tASSERTERROR; }
YY_BREAK
case 57:
YY_RULE_SETUP
#line 189 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSOUND; }
+{ count(); return tSET; }
YY_BREAK
case 58:
YY_RULE_SETUP
#line 190 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSPRITE; }
+{ count(); return tSHORT; }
YY_BREAK
case 59:
YY_RULE_SETUP
#line 191 "engines/director/lingo/lingo-lex.l"
-{ count(); return tSTARTS; }
+{ count(); return tSOUND; }
YY_BREAK
case 60:
YY_RULE_SETUP
#line 192 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTELL; }
+{ count(); return tSPRITE; }
YY_BREAK
case 61:
YY_RULE_SETUP
#line 193 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTHE; }
+{ count(); return tSTARTS; }
YY_BREAK
case 62:
YY_RULE_SETUP
#line 194 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTHEN; }
+{ count(); return tTELL; }
YY_BREAK
case 63:
YY_RULE_SETUP
#line 195 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTIME; }
+{ count(); return tTHE; }
YY_BREAK
case 64:
YY_RULE_SETUP
#line 196 "engines/director/lingo/lingo-lex.l"
-{ count(); return tTO; }
+{ count(); return tTHEN; }
YY_BREAK
case 65:
YY_RULE_SETUP
#line 197 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWHEN; }
+{ count(); return tTIME; }
YY_BREAK
case 66:
YY_RULE_SETUP
#line 198 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWHILE; }
+{ count(); return tTO; }
YY_BREAK
case 67:
YY_RULE_SETUP
#line 199 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWINDOW; }
+{ count(); return tWHEN; }
YY_BREAK
case 68:
YY_RULE_SETUP
#line 200 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWITH; }
+{ count(); return tWHILE; }
YY_BREAK
case 69:
YY_RULE_SETUP
#line 201 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWITHIN; }
+{ count(); return tWINDOW; }
YY_BREAK
case 70:
YY_RULE_SETUP
#line 202 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWORD; }
+{ count(); return tWITH; }
YY_BREAK
case 71:
YY_RULE_SETUP
#line 203 "engines/director/lingo/lingo-lex.l"
-{ count(); return tWORDS; }
+{ count(); return tWITHIN; }
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 205 "engines/director/lingo/lingo-lex.l"
-{ count(); return tNEQ; }
+#line 204 "engines/director/lingo/lingo-lex.l"
+{ count(); return tWORD; }
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 206 "engines/director/lingo/lingo-lex.l"
-{ count(); return tGE; }
+#line 205 "engines/director/lingo/lingo-lex.l"
+{ count(); return tWORDS; }
YY_BREAK
case 74:
YY_RULE_SETUP
#line 207 "engines/director/lingo/lingo-lex.l"
-{ count(); return tLE; }
+{ count(); return tNEQ; }
YY_BREAK
case 75:
YY_RULE_SETUP
#line 208 "engines/director/lingo/lingo-lex.l"
-{ count(); return tCONCAT; }
+{ count(); return tGE; }
YY_BREAK
case 76:
YY_RULE_SETUP
#line 209 "engines/director/lingo/lingo-lex.l"
-{ count(); return tEQ; }
+{ count(); return tLE; }
YY_BREAK
case 77:
YY_RULE_SETUP
+#line 210 "engines/director/lingo/lingo-lex.l"
+{ count(); return tCONCAT; }
+ YY_BREAK
+case 78:
+YY_RULE_SETUP
#line 211 "engines/director/lingo/lingo-lex.l"
+{ count(); return tEQ; }
+ YY_BREAK
+case 79:
+YY_RULE_SETUP
+#line 213 "engines/director/lingo/lingo-lex.l"
{
count();
yylval.s = new Common::String(yytext);
@@ -1464,43 +1481,43 @@ YY_RULE_SETUP
return tVARID;
}
YY_BREAK
-case 78:
-YY_RULE_SETUP
-#line 217 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.f = atof(yytext); return tFLOAT; }
- YY_BREAK
-case 79:
-YY_RULE_SETUP
-#line 218 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.i = strtol(yytext, NULL, 10); return tINT; }
- YY_BREAK
case 80:
YY_RULE_SETUP
#line 219 "engines/director/lingo/lingo-lex.l"
-{ count(); return *yytext; }
+{ count(); yylval.f = atof(yytext); return tFLOAT; }
YY_BREAK
case 81:
-/* rule 81 can match eol */
YY_RULE_SETUP
#line 220 "engines/director/lingo/lingo-lex.l"
-{ count(); return '\n'; }
+{ count(); yylval.i = strtol(yytext, NULL, 10); return tINT; }
YY_BREAK
case 82:
YY_RULE_SETUP
#line 221 "engines/director/lingo/lingo-lex.l"
-{ count(); yylval.s = cleanupString(&yytext[1]); yylval.s->deleteLastChar(); return tSTRING; }
+{ count(); return *yytext; }
YY_BREAK
case 83:
+/* rule 83 can match eol */
YY_RULE_SETUP
#line 222 "engines/director/lingo/lingo-lex.l"
-{ count(); }
+{ count(); return '\n'; }
YY_BREAK
case 84:
YY_RULE_SETUP
+#line 223 "engines/director/lingo/lingo-lex.l"
+{ count(); yylval.s = cleanupString(&yytext[1]); yylval.s->deleteLastChar(); return tSTRING; }
+ YY_BREAK
+case 85:
+YY_RULE_SETUP
#line 224 "engines/director/lingo/lingo-lex.l"
+{ count(); }
+ YY_BREAK
+case 86:
+YY_RULE_SETUP
+#line 226 "engines/director/lingo/lingo-lex.l"
ECHO;
YY_BREAK
-#line 1503 "engines/director/lingo/lingo-lex.cpp"
+#line 1520 "engines/director/lingo/lingo-lex.cpp"
case YY_STATE_EOF(INITIAL):
yyterminate();
@@ -1799,7 +1816,7 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 295 )
+ if ( yy_current_state >= 306 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
@@ -1827,11 +1844,11 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 295 )
+ if ( yy_current_state >= 306 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
- yy_is_jam = (yy_current_state == 294);
+ yy_is_jam = (yy_current_state == 305);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -2472,7 +2489,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 224 "engines/director/lingo/lingo-lex.l"
+#line 226 "engines/director/lingo/lingo-lex.l"
extern int yydebug;
diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l
index 92833755d1..d6803765c8 100644
--- a/engines/director/lingo/lingo-lex.l
+++ b/engines/director/lingo/lingo-lex.l
@@ -126,6 +126,7 @@ char { count(); return tCHAR; } // D3
chars { count(); return tCHARS; }
contains { count(); return tCONTAINS; }
date { count(); return tDATE; }
+delete { count(); return tDELETE; }
down { count(); return tDOWN; }
else { count(); return tELSE; }
end({spc}+{identifier})? {
@@ -152,6 +153,7 @@ field { count(); return tFIELD; }
frame { count(); return tFRAME; }
global { count(); return tGLOBAL; }
go{spc}+(to)? { count(); return tGO; }
+hilite { count(); return tHILITE; }
if { count(); return tIF; }
instance { count(); return tINSTANCE; }
intersects { count(); return tINTERSECTS;}
More information about the Scummvm-git-logs
mailing list