From 382fb8cea6c7a71ecbdab2a4ef8526bf3045fb2e Mon Sep 17 00:00:00 2001
From: Johan Berntsson
Date: Fri, 4 Jul 2008 08:59:41 +0000
Subject: The new llScript-cs parser. Thanks Mike
---
.../DotNetEngine/Compiler/LSL/CSCodeGenerator.cs | 775 +
.../DotNetEngine/Compiler/LSL/Compiler.cs | 3 +
.../Compiler/LSL/LSL2CSCodeTransformer.cs | 100 +
.../DotNetEngine/Compiler/LSL/lsl.lexer.cs | 18686 +++++++++++++++++++
.../DotNetEngine/Compiler/LSL/lsl.parser.cs | 9507 ++++++++++
5 files changed, 29071 insertions(+)
create mode 100644 OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/CSCodeGenerator.cs
create mode 100644 OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSCodeTransformer.cs
create mode 100644 OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.lexer.cs
create mode 100644 OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.parser.cs
(limited to 'OpenSim/Region/ScriptEngine/DotNetEngine')
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/CSCodeGenerator.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/CSCodeGenerator.cs
new file mode 100644
index 0000000..142e791
--- /dev/null
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/CSCodeGenerator.cs
@@ -0,0 +1,775 @@
+/*
+ * Copyright (c) Contributors, http://opensimulator.org/
+ * See CONTRIBUTORS.TXT for a full list of copyright holders.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the OpenSim Project nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+using System;
+using System.IO;
+using System.Collections.Generic;
+using Tools;
+
+namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
+{
+ public class CSCodeGenerator
+ {
+ private SYMBOL m_astRoot = null;
+ private int m_braceCount; // for indentation
+
+ ///
+ /// Pass the new CodeGenerator a string containing the LSL source.
+ ///
+ /// String containing LSL source.
+ public CSCodeGenerator(string script)
+ {
+ Parser p = new LSLSyntax();
+ // Obviously this needs to be in a try/except block.
+ LSL2CSCodeTransformer codeTransformer = new LSL2CSCodeTransformer(p.Parse(script));
+ m_astRoot = codeTransformer.Transform();
+ }
+
+ ///
+ /// Pass the new CodeGenerator an abstract syntax tree.
+ ///
+ /// The root node of the AST.
+ public CSCodeGenerator(SYMBOL astRoot)
+ {
+ m_braceCount = 0;
+ m_astRoot = astRoot;
+ }
+
+ ///
+ /// Generate the code from the AST we have.
+ ///
+ /// String containing the generated C# code.
+ public string Generate()
+ {
+ string retstr = String.Empty;
+
+ // standard preamble
+ //retstr = "using OpenSim.Region.ScriptEngine.Common;\n";
+ //retstr += "using System.Collections.Generic;\n\n";
+ //retstr += "namespace SecondLife\n";
+ //retstr += "{\n";
+ //retstr += " public class Script : OpenSim.Region.ScriptEngine.Common\n";
+ //retstr += " {\n";
+
+ // here's the payload
+ m_braceCount += 2;
+ retstr += "\n";
+ foreach (SYMBOL s in m_astRoot.kids)
+ retstr += GenerateNode(s);
+
+ // close braces!
+ //retstr += " }\n";
+ //retstr += "}\n";
+ m_braceCount -= 2;
+
+ return retstr;
+ }
+
+ ///
+ /// Recursively called to generate each type of node. Will generate this
+ /// node, then all it's children.
+ ///
+ /// The current node to generate code for.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateNode(SYMBOL s)
+ {
+ string retstr = String.Empty;
+
+ // make sure to put type lower in the inheritance hierarchy first
+ // ie: since IdentArgument and ExpressionArgument inherit from
+ // Argument, put IdentArgument and ExpressionArgument before Argument
+ if (s is GlobalFunctionDefinition)
+ retstr += GenerateGlobalFunctionDefinition((GlobalFunctionDefinition) s);
+ else if (s is GlobalVariableDeclaration)
+ retstr += GenerateGlobalVariableDeclaration((GlobalVariableDeclaration) s);
+ else if (s is State)
+ retstr += GenerateState((State) s);
+ else if (s is CompoundStatement)
+ retstr += GenerateCompoundStatement((CompoundStatement) s);
+ else if (s is Declaration)
+ retstr += GenerateDeclaration((Declaration) s);
+ else if (s is Statement)
+ retstr += GenerateStatement((Statement) s);
+ else if (s is ReturnStatement)
+ retstr += GenerateReturnStatement((ReturnStatement) s);
+ else if (s is StateChange)
+ retstr += GenerateStateChange((StateChange) s);
+ else if (s is IfStatement)
+ retstr += GenerateIfStatement((IfStatement) s);
+ else if (s is WhileStatement)
+ retstr += GenerateWhileStatement((WhileStatement) s);
+ else if (s is DoWhileStatement)
+ retstr += GenerateDoWhileStatement((DoWhileStatement) s);
+ else if (s is ForLoop)
+ retstr += GenerateForLoop((ForLoop) s);
+ else if (s is ArgumentList)
+ retstr += GenerateArgumentList((ArgumentList) s);
+ else if (s is Assignment)
+ retstr += GenerateAssignment((Assignment) s);
+ else if (s is BinaryExpression)
+ retstr += GenerateBinaryExpression((BinaryExpression) s);
+ else if (s is ParenthesisExpression)
+ retstr += GenerateParenthesisExpression((ParenthesisExpression) s);
+ else if (s is UnaryExpression)
+ retstr += GenerateUnaryExpression((UnaryExpression) s);
+ else if (s is IncrementDecrementExpression)
+ retstr += GenerateIncrementDecrementExpression((IncrementDecrementExpression) s);
+ else if (s is TypecastExpression)
+ retstr += GenerateTypecastExpression((TypecastExpression) s);
+ else if (s is FunctionCall)
+ retstr += GenerateFunctionCall((FunctionCall) s);
+ else if (s is VectorConstant)
+ retstr += GenerateVectorConstant((VectorConstant) s);
+ else if (s is RotationConstant)
+ retstr += GenerateRotationConstant((RotationConstant) s);
+ else if (s is ListConstant)
+ retstr += GenerateListConstant((ListConstant) s);
+ else if (s is Constant)
+ retstr += GenerateConstant((Constant) s);
+ else if (s is IdentDotExpression)
+ retstr += ((IdentDotExpression) s).Name + "." + ((IdentDotExpression) s).Member;
+ else if (s is IdentExpression)
+ retstr += ((IdentExpression) s).Name;
+ else if (s is IDENT)
+ retstr += ((TOKEN) s).yytext;
+ else
+ {
+ foreach (SYMBOL kid in s.kids)
+ retstr += GenerateNode(kid);
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a GlobalFunctionDefinition node.
+ ///
+ /// The GlobalFunctionDefinition node.
+ /// String containing C# code for GlobalFunctionDefinition gf.
+ private string GenerateGlobalFunctionDefinition(GlobalFunctionDefinition gf)
+ {
+ string retstr = String.Empty;
+
+ // we need to separate the argument declaration list from other kids
+ List argumentDeclarationListKids = new List();
+ List remainingKids = new List();
+
+ foreach (SYMBOL kid in gf.kids)
+ if (kid is ArgumentDeclarationList)
+ argumentDeclarationListKids.Add(kid);
+ else
+ remainingKids.Add(kid);
+
+ retstr += WriteIndented(String.Format("{0} {1}(", gf.ReturnType, gf.Name));
+
+ // print the state arguments, if any
+ foreach (SYMBOL kid in argumentDeclarationListKids)
+ retstr += GenerateArgumentDeclarationList((ArgumentDeclarationList) kid);
+
+ retstr += ")\n";
+
+ foreach (SYMBOL kid in remainingKids)
+ retstr += GenerateNode(kid);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a GlobalVariableDeclaration node.
+ ///
+ /// The GlobalVariableDeclaration node.
+ /// String containing C# code for GlobalVariableDeclaration gv.
+ private string GenerateGlobalVariableDeclaration(GlobalVariableDeclaration gv)
+ {
+ string retstr = String.Empty;
+
+ foreach (SYMBOL s in gv.kids)
+ {
+ retstr += Indent();
+ retstr += GenerateNode(s);
+ retstr += ";\n";
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a State node.
+ ///
+ /// The State node.
+ /// String containing C# code for State s.
+ private string GenerateState(State s)
+ {
+ string retstr = String.Empty;
+
+ foreach (SYMBOL kid in s.kids)
+ if (kid is StateEvent)
+ retstr += GenerateStateEvent((StateEvent) kid, s.Name);
+ else
+ retstr += String.Format("ERROR: State '{0}' contains a '{1}\n", s.Name, kid.GetType());
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a StateEvent node.
+ ///
+ /// The StateEvent node.
+ /// The name of the parent state.
+ /// String containing C# code for StateEvent se.
+ private string GenerateStateEvent(StateEvent se, string parentStateName)
+ {
+ string retstr = String.Empty;
+
+ // we need to separate the argument declaration list from other kids
+ List argumentDeclarationListKids = new List();
+ List remainingKids = new List();
+
+ foreach (SYMBOL kid in se.kids)
+ if (kid is ArgumentDeclarationList)
+ argumentDeclarationListKids.Add(kid);
+ else
+ remainingKids.Add(kid);
+
+ // "state" (function) declaration
+ retstr += WriteIndented(String.Format("public void {0}_event_{1}(", parentStateName, se.Name));
+
+ // print the state arguments, if any
+ foreach (SYMBOL kid in argumentDeclarationListKids)
+ retstr += GenerateArgumentDeclarationList((ArgumentDeclarationList) kid);
+
+ retstr += ")\n";
+
+ foreach (SYMBOL kid in remainingKids)
+ retstr += GenerateNode(kid);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for an ArgumentDeclarationList node.
+ ///
+ /// The ArgumentDeclarationList node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateArgumentDeclarationList(ArgumentDeclarationList adl)
+ {
+ string retstr = String.Empty;
+
+ int comma = adl.kids.Count - 1; // tells us whether to print a comma
+
+ foreach (Declaration d in adl.kids)
+ {
+ retstr += String.Format("{0} {1}", d.Datatype, d.Id);
+ if (0 < comma--)
+ retstr += ", ";
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for an ArgumentList node.
+ ///
+ /// The ArgumentList node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateArgumentList(ArgumentList al)
+ {
+ string retstr = String.Empty;
+
+ int comma = al.kids.Count - 1; // tells us whether to print a comma
+
+ foreach (SYMBOL s in al.kids)
+ {
+ retstr += GenerateNode(s);
+ if (0 < comma--)
+ retstr += ", ";
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a CompoundStatement node.
+ ///
+ /// The CompoundStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateCompoundStatement(CompoundStatement cs)
+ {
+ string retstr = String.Empty;
+
+ // opening brace
+ retstr += WriteIndentedLine("{");
+ m_braceCount++;
+
+ foreach (SYMBOL kid in cs.kids)
+ retstr += GenerateNode(kid);
+
+ // closing brace
+ m_braceCount--;
+ retstr += WriteIndentedLine("}");
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a Declaration node.
+ ///
+ /// The Declaration node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateDeclaration(Declaration d)
+ {
+ return String.Format("{0} {1}", d.Datatype, d.Id);
+ }
+
+ ///
+ /// Generates the code for a Statement node.
+ ///
+ /// The Statement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateStatement(Statement s)
+ {
+ string retstr = String.Empty;
+
+ retstr += Indent();
+
+ foreach (SYMBOL kid in s.kids)
+ retstr += GenerateNode(kid);
+
+ retstr += ";\n";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for an Assignment node.
+ ///
+ /// The Assignment node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateAssignment(Assignment a)
+ {
+ string retstr = String.Empty;
+
+ retstr += GenerateNode((SYMBOL) a.kids.Pop());
+ retstr +=String.Format(" {0} ", a.AssignmentType);
+ foreach (SYMBOL kid in a.kids)
+ retstr += GenerateNode(kid);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a ReturnStatement node.
+ ///
+ /// The ReturnStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateReturnStatement(ReturnStatement rs)
+ {
+ string retstr = String.Empty;
+
+ retstr += "return ";
+
+ foreach (SYMBOL kid in rs.kids)
+ retstr += GenerateNode(kid);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a IfStatement node.
+ ///
+ /// The IfStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateIfStatement(IfStatement ifs)
+ {
+ string retstr = String.Empty;
+
+ retstr += WriteIndented("if (");
+ retstr += GenerateNode((SYMBOL) ifs.kids.Pop());
+ retstr += ")\n";
+
+ // CompoundStatement handles indentation itself but we need to do it
+ // otherwise.
+ bool indentHere = ifs.kids.Top is Statement;
+ if (indentHere) m_braceCount++;
+ retstr += GenerateNode((SYMBOL) ifs.kids.Pop());
+ if (indentHere) m_braceCount--;
+
+ if (0 < ifs.kids.Count) // do it again for an else
+ {
+ retstr += WriteIndentedLine("else");
+
+ indentHere = ifs.kids.Top is Statement;
+ if (indentHere) m_braceCount++;
+ retstr += GenerateNode((SYMBOL) ifs.kids.Pop());
+ if (indentHere) m_braceCount--;
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a StateChange node.
+ ///
+ /// The StateChange node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateStateChange(StateChange sc)
+ {
+ return String.Format("state(\"{0}\")", sc.NewState);
+ }
+
+ ///
+ /// Generates the code for a WhileStatement node.
+ ///
+ /// The WhileStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateWhileStatement(WhileStatement ws)
+ {
+ string retstr = String.Empty;
+
+ retstr += WriteIndented("while (");
+ retstr += GenerateNode((SYMBOL) ws.kids.Pop());
+ retstr += ")\n";
+
+ // CompoundStatement handles indentation itself but we need to do it
+ // otherwise.
+ bool indentHere = ws.kids.Top is Statement;
+ if (indentHere) m_braceCount++;
+ retstr += GenerateNode((SYMBOL) ws.kids.Pop());
+ if (indentHere) m_braceCount--;
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a DoWhileStatement node.
+ ///
+ /// The DoWhileStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateDoWhileStatement(DoWhileStatement dws)
+ {
+ string retstr = String.Empty;
+
+ retstr += WriteIndentedLine("do");
+
+ // CompoundStatement handles indentation itself but we need to do it
+ // otherwise.
+ bool indentHere = dws.kids.Top is Statement;
+ if (indentHere) m_braceCount++;
+ retstr += GenerateNode((SYMBOL) dws.kids.Pop());
+ if (indentHere) m_braceCount--;
+
+ retstr += WriteIndented("while (");
+ retstr += GenerateNode((SYMBOL) dws.kids.Pop());
+ retstr += ");\n";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a ForLoop node.
+ ///
+ /// The ForLoop node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateForLoop(ForLoop fl)
+ {
+ string retstr = String.Empty;
+
+ retstr += WriteIndented("for (");
+
+ // for ( x = 0 ; x < 10 ; x++ )
+ // ^^^^^^^
+ retstr += GenerateForLoopStatement((ForLoopStatement) fl.kids.Pop());
+ retstr += "; ";
+ // for ( x = 0 ; x < 10 ; x++ )
+ // ^^^^^^^^
+ retstr += GenerateNode((SYMBOL) fl.kids.Pop());
+ retstr += "; ";
+ // for ( x = 0 ; x < 10 ; x++ )
+ // ^^^^^
+ retstr += GenerateForLoopStatement((ForLoopStatement) fl.kids.Pop());
+ retstr += ")\n";
+
+ // CompoundStatement handles indentation itself but we need to do it
+ // otherwise.
+ bool indentHere = fl.kids.Top is Statement;
+ if (indentHere) m_braceCount++;
+ retstr += GenerateNode((SYMBOL) fl.kids.Pop());
+ if (indentHere) m_braceCount--;
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a ForLoopStatement node.
+ ///
+ /// The ForLoopStatement node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateForLoopStatement(ForLoopStatement fls)
+ {
+ string retstr = String.Empty;
+
+ int comma = fls.kids.Count - 1; // tells us whether to print a comma
+
+ foreach (SYMBOL s in fls.kids)
+ {
+ retstr += GenerateNode(s);
+ if (0 < comma--)
+ retstr += ", ";
+ }
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a BinaryExpression node.
+ ///
+ /// The BinaryExpression node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateBinaryExpression(BinaryExpression be)
+ {
+ string retstr = String.Empty;
+
+ retstr += GenerateNode((SYMBOL) be.kids.Pop());
+ retstr += String.Format(" {0} ", be.ExpressionSymbol);
+ foreach (SYMBOL kid in be.kids)
+ retstr += GenerateNode(kid);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a UnaryExpression node.
+ ///
+ /// The UnaryExpression node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateUnaryExpression(UnaryExpression ue)
+ {
+ string retstr = String.Empty;
+
+ retstr += ue.UnarySymbol;
+ retstr += GenerateNode((SYMBOL) ue.kids.Pop());
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a ParenthesisExpression node.
+ ///
+ /// The ParenthesisExpression node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateParenthesisExpression(ParenthesisExpression pe)
+ {
+ string retstr = String.Empty;
+
+ retstr += "(";
+ foreach (SYMBOL kid in pe.kids)
+ retstr += GenerateNode(kid);
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a IncrementDecrementExpression node.
+ ///
+ /// The IncrementDecrementExpression node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateIncrementDecrementExpression(IncrementDecrementExpression ide)
+ {
+ string retstr = String.Empty;
+
+ if (0 < ide.kids.Count)
+ {
+ IdentDotExpression dot = (IdentDotExpression) ide.kids.Top;
+ retstr += String.Format("{0}", ide.PostOperation ? dot.Name + "." + dot.Member + ide.Operation : ide.Operation + dot.Name + "." + dot.Member);
+ }
+ else
+ retstr += String.Format("{0}", ide.PostOperation ? ide.Name + ide.Operation : ide.Operation + ide.Name);
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a TypecastExpression node.
+ ///
+ /// The TypecastExpression node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateTypecastExpression(TypecastExpression te)
+ {
+ string retstr = String.Empty;
+
+ // we wrap all typecasted statements in parentheses
+ retstr += String.Format("({0}) (", te.TypecastType);
+ retstr += GenerateNode((SYMBOL) te.kids.Pop());
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a FunctionCall node.
+ ///
+ /// The FunctionCall node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateFunctionCall(FunctionCall fc)
+ {
+ string retstr = String.Empty;
+
+ retstr += String.Format("{0}(", fc.Id);
+
+ foreach (SYMBOL kid in fc.kids)
+ retstr += GenerateNode(kid);
+
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a Constant node.
+ ///
+ /// The Constant node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateConstant(Constant c)
+ {
+ string retstr = String.Empty;
+
+ // Supprt LSL's weird acceptance of floats with no trailing digits
+ // after the period. Turn float x = 10.; into float x = 10.0;
+ if ("LSL_Types.LSLFloat" == c.Type)
+ {
+ int dotIndex = c.Value.IndexOf('.') + 1;
+ if (0 < dotIndex && (dotIndex == c.Value.Length || !Char.IsDigit(c.Value[dotIndex])))
+ c.Value = c.Value.Insert(dotIndex, "0");
+ }
+
+ // need to quote strings
+ if ("LSL_Types.LSLString" == c.Type)
+ retstr += "\"";
+ retstr += c.Value;
+ if ("LSL_Types.LSLString" == c.Type)
+ retstr += "\"";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a VectorConstant node.
+ ///
+ /// The VectorConstant node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateVectorConstant(VectorConstant vc)
+ {
+ string retstr = String.Empty;
+
+ retstr += String.Format("new {0}(", vc.Type);
+ retstr += GenerateNode((SYMBOL) vc.kids.Pop());
+ retstr += ", ";
+ retstr += GenerateNode((SYMBOL) vc.kids.Pop());
+ retstr += ", ";
+ retstr += GenerateNode((SYMBOL) vc.kids.Pop());
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a RotationConstant node.
+ ///
+ /// The RotationConstant node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateRotationConstant(RotationConstant rc)
+ {
+ string retstr = String.Empty;
+
+ retstr += String.Format("new {0}(", rc.Type);
+ retstr += GenerateNode((SYMBOL) rc.kids.Pop());
+ retstr += ", ";
+ retstr += GenerateNode((SYMBOL) rc.kids.Pop());
+ retstr += ", ";
+ retstr += GenerateNode((SYMBOL) rc.kids.Pop());
+ retstr += ", ";
+ retstr += GenerateNode((SYMBOL) rc.kids.Pop());
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Generates the code for a ListConstant node.
+ ///
+ /// The ListConstant node.
+ /// String containing C# code for SYMBOL s.
+ private string GenerateListConstant(ListConstant lc)
+ {
+ string retstr = String.Empty;
+
+ retstr += String.Format("new {0}(", lc.Type);
+
+ foreach (SYMBOL kid in lc.kids)
+ retstr += GenerateNode(kid);
+
+ retstr += ")";
+
+ return retstr;
+ }
+
+ ///
+ /// Prints text correctly indented, followed by a newline.
+ ///
+ /// String of text to print.
+ /// String containing C# code for SYMBOL s.
+ private string WriteIndentedLine(string s)
+ {
+ return WriteIndented(s) + "\n";
+ }
+
+ ///
+ /// Prints text correctly indented.
+ ///
+ /// String of text to print.
+ /// String containing C# code for SYMBOL s.
+ private string WriteIndented(string s)
+ {
+ return Indent() + s;
+ }
+
+ ///
+ /// Prints correct indentation.
+ ///
+ /// String containing C# code for SYMBOL s.
+ private string Indent()
+ {
+ string retstr = String.Empty;
+
+ for (int i = 0; i < m_braceCount; i++)
+ retstr += " ";
+
+ return retstr;
+ }
+ }
+}
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
index 0d3c8c6..022cae4 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/Compiler.cs
@@ -73,6 +73,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
private string ScriptEnginesPath = "ScriptEngines";
private static LSL2CSConverter LSL_Converter = new LSL2CSConverter();
+ //private static CSCodeGenerator LSL_Converter;
private static CSharpCodeProvider CScodeProvider = new CSharpCodeProvider();
private static VBCodeProvider VBcodeProvider = new VBCodeProvider();
private static JScriptCodeProvider JScodeProvider = new JScriptCodeProvider();
@@ -275,6 +276,8 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
{
// Its LSL, convert it to C#
compileScript = LSL_Converter.Convert(Script);
+ //LSL_Converter = new CSCodeGenerator(Script);
+ //compileScript = LSL_Converter.Generate();
l = enumCompileType.cs;
}
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSCodeTransformer.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSCodeTransformer.cs
new file mode 100644
index 0000000..db40ace
--- /dev/null
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/LSL2CSCodeTransformer.cs
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) Contributors, http://opensimulator.org/
+ * See CONTRIBUTORS.TXT for a full list of copyright holders.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the OpenSim Project nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+using System;
+using System.Collections.Generic;
+using Tools;
+
+namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL
+{
+ public class LSL2CSCodeTransformer
+ {
+ private SYMBOL m_astRoot = null;
+ private static Dictionary m_datatypeLSL2OpenSim = new Dictionary();
+
+ ///
+ /// Pass the new CodeTranformer an abstract syntax tree.
+ ///
+ /// The root node of the AST.
+ public LSL2CSCodeTransformer(SYMBOL astRoot)
+ {
+ m_astRoot = astRoot;
+
+ // let's populate the dictionary
+ try
+ {
+ m_datatypeLSL2OpenSim.Add("integer", "LSL_Types.LSLInteger");
+ m_datatypeLSL2OpenSim.Add("float", "LSL_Types.LSLFloat");
+ //m_datatypeLSL2OpenSim.Add("key", "LSL_Types.key"); // key doesn't seem to be used
+ m_datatypeLSL2OpenSim.Add("key", "LSL_Types.LSLString");
+ m_datatypeLSL2OpenSim.Add("string", "LSL_Types.LSLString");
+ m_datatypeLSL2OpenSim.Add("vector", "LSL_Types.Vector3");
+ m_datatypeLSL2OpenSim.Add("rotation", "LSL_Types.Quaternion");
+ m_datatypeLSL2OpenSim.Add("list", "LSL_Types.list");
+ }
+ catch
+ {
+ // temporary workaround since we are adding to a static datatype
+ }
+ }
+
+ ///
+ /// Transform the code in the AST we have.
+ ///
+ /// The root node of the transformed AST
+ public SYMBOL Transform()
+ {
+ foreach (SYMBOL s in m_astRoot.kids)
+ TransformNode(s);
+
+ return m_astRoot;
+ }
+
+ ///
+ /// Recursively called to transform each type of node. Will transform this
+ /// node, then all it's children.
+ ///
+ /// The current node to transform.
+ private void TransformNode(SYMBOL s)
+ {
+ // make sure to put type lower in the inheritance hierarchy first
+ // ie: since IdentConstant and StringConstant inherit from Constant,
+ // put IdentConstant and StringConstant before Constant
+ if (s is Declaration)
+ ((Declaration) s).Datatype = m_datatypeLSL2OpenSim[((Declaration) s).Datatype];
+ else if (s is Constant)
+ ((Constant) s).Type = m_datatypeLSL2OpenSim[((Constant) s).Type];
+ else if (s is TypecastExpression)
+ ((TypecastExpression) s).TypecastType = m_datatypeLSL2OpenSim[((TypecastExpression) s).TypecastType];
+ else if (s is GlobalFunctionDefinition && "void" != ((GlobalFunctionDefinition) s).ReturnType) // we don't need to translate "void"
+ ((GlobalFunctionDefinition) s).ReturnType = m_datatypeLSL2OpenSim[((GlobalFunctionDefinition) s).ReturnType];
+
+ foreach (SYMBOL kid in s.kids)
+ TransformNode(kid);
+ }
+ }
+}
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.lexer.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.lexer.cs
new file mode 100644
index 0000000..dfd802a
--- /dev/null
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.lexer.cs
@@ -0,0 +1,18686 @@
+using System;using Tools;
+//%+STRING_CONSTANT+3
+public class STRING_CONSTANT : TOKEN{
+public override string yyname { get { return "STRING_CONSTANT"; }}
+public override int yynum { get { return 3; }}
+public STRING_CONSTANT(Lexer yyl):base(yyl){}}
+//%INCREMENT+4
+public class INCREMENT : TOKEN{ public override string yyname { get { return "INCREMENT";}}
+public override int yynum { get { return 4; }}
+ public INCREMENT(Lexer yyl):base(yyl) {}}
+//%DECREMENT+5
+public class DECREMENT : TOKEN{ public override string yyname { get { return "DECREMENT";}}
+public override int yynum { get { return 5; }}
+ public DECREMENT(Lexer yyl):base(yyl) {}}
+//%PLUS_EQUALS+6
+public class PLUS_EQUALS : TOKEN{ public override string yyname { get { return "PLUS_EQUALS";}}
+public override int yynum { get { return 6; }}
+ public PLUS_EQUALS(Lexer yyl):base(yyl) {}}
+//%MINUS_EQUALS+7
+public class MINUS_EQUALS : TOKEN{ public override string yyname { get { return "MINUS_EQUALS";}}
+public override int yynum { get { return 7; }}
+ public MINUS_EQUALS(Lexer yyl):base(yyl) {}}
+//%STAR_EQUALS+8
+public class STAR_EQUALS : TOKEN{ public override string yyname { get { return "STAR_EQUALS";}}
+public override int yynum { get { return 8; }}
+ public STAR_EQUALS(Lexer yyl):base(yyl) {}}
+//%SLASH_EQUALS+9
+public class SLASH_EQUALS : TOKEN{ public override string yyname { get { return "SLASH_EQUALS";}}
+public override int yynum { get { return 9; }}
+ public SLASH_EQUALS(Lexer yyl):base(yyl) {}}
+//%PERCENT_EQUALS+10
+public class PERCENT_EQUALS : TOKEN{ public override string yyname { get { return "PERCENT_EQUALS";}}
+public override int yynum { get { return 10; }}
+ public PERCENT_EQUALS(Lexer yyl):base(yyl) {}}
+//%SEMICOLON+11
+public class SEMICOLON : TOKEN{ public override string yyname { get { return "SEMICOLON";}}
+public override int yynum { get { return 11; }}
+ public SEMICOLON(Lexer yyl):base(yyl) {}}
+//%LEFT_BRACE+12
+public class LEFT_BRACE : TOKEN{ public override string yyname { get { return "LEFT_BRACE";}}
+public override int yynum { get { return 12; }}
+ public LEFT_BRACE(Lexer yyl):base(yyl) {}}
+//%RIGHT_BRACE+13
+public class RIGHT_BRACE : TOKEN{ public override string yyname { get { return "RIGHT_BRACE";}}
+public override int yynum { get { return 13; }}
+ public RIGHT_BRACE(Lexer yyl):base(yyl) {}}
+//%COMMA+14
+public class COMMA : TOKEN{ public override string yyname { get { return "COMMA";}}
+public override int yynum { get { return 14; }}
+ public COMMA(Lexer yyl):base(yyl) {}}
+//%EQUALS+15
+public class EQUALS : TOKEN{ public override string yyname { get { return "EQUALS";}}
+public override int yynum { get { return 15; }}
+ public EQUALS(Lexer yyl):base(yyl) {}}
+//%LEFT_PAREN+16
+public class LEFT_PAREN : TOKEN{ public override string yyname { get { return "LEFT_PAREN";}}
+public override int yynum { get { return 16; }}
+ public LEFT_PAREN(Lexer yyl):base(yyl) {}}
+//%RIGHT_PAREN+17
+public class RIGHT_PAREN : TOKEN{ public override string yyname { get { return "RIGHT_PAREN";}}
+public override int yynum { get { return 17; }}
+ public RIGHT_PAREN(Lexer yyl):base(yyl) {}}
+//%PLUS+18
+public class PLUS : TOKEN{ public override string yyname { get { return "PLUS";}}
+public override int yynum { get { return 18; }}
+ public PLUS(Lexer yyl):base(yyl) {}}
+//%MINUS+19
+public class MINUS : TOKEN{ public override string yyname { get { return "MINUS";}}
+public override int yynum { get { return 19; }}
+ public MINUS(Lexer yyl):base(yyl) {}}
+//%STAR+20
+public class STAR : TOKEN{ public override string yyname { get { return "STAR";}}
+public override int yynum { get { return 20; }}
+ public STAR(Lexer yyl):base(yyl) {}}
+//%SLASH+21
+public class SLASH : TOKEN{ public override string yyname { get { return "SLASH";}}
+public override int yynum { get { return 21; }}
+ public SLASH(Lexer yyl):base(yyl) {}}
+//%PERCENT+22
+public class PERCENT : TOKEN{ public override string yyname { get { return "PERCENT";}}
+public override int yynum { get { return 22; }}
+ public PERCENT(Lexer yyl):base(yyl) {}}
+//%AT+23
+public class AT : TOKEN{ public override string yyname { get { return "AT";}}
+public override int yynum { get { return 23; }}
+ public AT(Lexer yyl):base(yyl) {}}
+//%PERIOD+24
+public class PERIOD : TOKEN{ public override string yyname { get { return "PERIOD";}}
+public override int yynum { get { return 24; }}
+ public PERIOD(Lexer yyl):base(yyl) {}}
+//%LEFT_ANGLE+25
+public class LEFT_ANGLE : TOKEN{ public override string yyname { get { return "LEFT_ANGLE";}}
+public override int yynum { get { return 25; }}
+ public LEFT_ANGLE(Lexer yyl):base(yyl) {}}
+//%RIGHT_ANGLE+26
+public class RIGHT_ANGLE : TOKEN{ public override string yyname { get { return "RIGHT_ANGLE";}}
+public override int yynum { get { return 26; }}
+ public RIGHT_ANGLE(Lexer yyl):base(yyl) {}}
+//%LEFT_BRACKET+27
+public class LEFT_BRACKET : TOKEN{ public override string yyname { get { return "LEFT_BRACKET";}}
+public override int yynum { get { return 27; }}
+ public LEFT_BRACKET(Lexer yyl):base(yyl) {}}
+//%RIGHT_BRACKET+28
+public class RIGHT_BRACKET : TOKEN{ public override string yyname { get { return "RIGHT_BRACKET";}}
+public override int yynum { get { return 28; }}
+ public RIGHT_BRACKET(Lexer yyl):base(yyl) {}}
+//%EQUALS_EQUALS+29
+public class EQUALS_EQUALS : TOKEN{ public override string yyname { get { return "EQUALS_EQUALS";}}
+public override int yynum { get { return 29; }}
+ public EQUALS_EQUALS(Lexer yyl):base(yyl) {}}
+//%EXCLAMATION_EQUALS+30
+public class EXCLAMATION_EQUALS : TOKEN{ public override string yyname { get { return "EXCLAMATION_EQUALS";}}
+public override int yynum { get { return 30; }}
+ public EXCLAMATION_EQUALS(Lexer yyl):base(yyl) {}}
+//%LESS_EQUALS+31
+public class LESS_EQUALS : TOKEN{ public override string yyname { get { return "LESS_EQUALS";}}
+public override int yynum { get { return 31; }}
+ public LESS_EQUALS(Lexer yyl):base(yyl) {}}
+//%GREATER_EQUALS+32
+public class GREATER_EQUALS : TOKEN{ public override string yyname { get { return "GREATER_EQUALS";}}
+public override int yynum { get { return 32; }}
+ public GREATER_EQUALS(Lexer yyl):base(yyl) {}}
+//%AMP+33
+public class AMP : TOKEN{ public override string yyname { get { return "AMP";}}
+public override int yynum { get { return 33; }}
+ public AMP(Lexer yyl):base(yyl) {}}
+//%STROKE+34
+public class STROKE : TOKEN{ public override string yyname { get { return "STROKE";}}
+public override int yynum { get { return 34; }}
+ public STROKE(Lexer yyl):base(yyl) {}}
+//%CARET+35
+public class CARET : TOKEN{ public override string yyname { get { return "CARET";}}
+public override int yynum { get { return 35; }}
+ public CARET(Lexer yyl):base(yyl) {}}
+//%TILDE+36
+public class TILDE : TOKEN{ public override string yyname { get { return "TILDE";}}
+public override int yynum { get { return 36; }}
+ public TILDE(Lexer yyl):base(yyl) {}}
+//%EXCLAMATION+37
+public class EXCLAMATION : TOKEN{ public override string yyname { get { return "EXCLAMATION";}}
+public override int yynum { get { return 37; }}
+ public EXCLAMATION(Lexer yyl):base(yyl) {}}
+//%AMP_AMP+38
+public class AMP_AMP : TOKEN{ public override string yyname { get { return "AMP_AMP";}}
+public override int yynum { get { return 38; }}
+ public AMP_AMP(Lexer yyl):base(yyl) {}}
+//%STROKE_STROKE+39
+public class STROKE_STROKE : TOKEN{ public override string yyname { get { return "STROKE_STROKE";}}
+public override int yynum { get { return 39; }}
+ public STROKE_STROKE(Lexer yyl):base(yyl) {}}
+//%LEFT_SHIFT+40
+public class LEFT_SHIFT : TOKEN{ public override string yyname { get { return "LEFT_SHIFT";}}
+public override int yynum { get { return 40; }}
+ public LEFT_SHIFT(Lexer yyl):base(yyl) {}}
+//%RIGHT_SHIFT+41
+public class RIGHT_SHIFT : TOKEN{ public override string yyname { get { return "RIGHT_SHIFT";}}
+public override int yynum { get { return 41; }}
+ public RIGHT_SHIFT(Lexer yyl):base(yyl) {}}
+//%IF+42
+public class IF : TOKEN{ public override string yyname { get { return "IF";}}
+public override int yynum { get { return 42; }}
+ public IF(Lexer yyl):base(yyl) {}}
+//%ELSE+43
+public class ELSE : TOKEN{ public override string yyname { get { return "ELSE";}}
+public override int yynum { get { return 43; }}
+ public ELSE(Lexer yyl):base(yyl) {}}
+//%DO+44
+public class DO : TOKEN{ public override string yyname { get { return "DO";}}
+public override int yynum { get { return 44; }}
+ public DO(Lexer yyl):base(yyl) {}}
+//%WHILE+45
+public class WHILE : TOKEN{ public override string yyname { get { return "WHILE";}}
+public override int yynum { get { return 45; }}
+ public WHILE(Lexer yyl):base(yyl) {}}
+//%FOR+46
+public class FOR : TOKEN{ public override string yyname { get { return "FOR";}}
+public override int yynum { get { return 46; }}
+ public FOR(Lexer yyl):base(yyl) {}}
+//%DEFAULT_STATE+47
+public class DEFAULT_STATE : TOKEN{ public override string yyname { get { return "DEFAULT_STATE";}}
+public override int yynum { get { return 47; }}
+ public DEFAULT_STATE(Lexer yyl):base(yyl) {}}
+//%STATE+48
+public class STATE : TOKEN{ public override string yyname { get { return "STATE";}}
+public override int yynum { get { return 48; }}
+ public STATE(Lexer yyl):base(yyl) {}}
+//%JUMP+49
+public class JUMP : TOKEN{ public override string yyname { get { return "JUMP";}}
+public override int yynum { get { return 49; }}
+ public JUMP(Lexer yyl):base(yyl) {}}
+//%RETURN+50
+public class RETURN : TOKEN{ public override string yyname { get { return "RETURN";}}
+public override int yynum { get { return 50; }}
+ public RETURN(Lexer yyl):base(yyl) {}}
+//%INTEGER_TYPE+51
+public class INTEGER_TYPE : TOKEN{ public override string yyname { get { return "INTEGER_TYPE";}}
+public override int yynum { get { return 51; }}
+ public INTEGER_TYPE(Lexer yyl):base(yyl) {}}
+//%FLOAT_TYPE+52
+public class FLOAT_TYPE : TOKEN{ public override string yyname { get { return "FLOAT_TYPE";}}
+public override int yynum { get { return 52; }}
+ public FLOAT_TYPE(Lexer yyl):base(yyl) {}}
+//%STRING_TYPE+53
+public class STRING_TYPE : TOKEN{ public override string yyname { get { return "STRING_TYPE";}}
+public override int yynum { get { return 53; }}
+ public STRING_TYPE(Lexer yyl):base(yyl) {}}
+//%KEY_TYPE+54
+public class KEY_TYPE : TOKEN{ public override string yyname { get { return "KEY_TYPE";}}
+public override int yynum { get { return 54; }}
+ public KEY_TYPE(Lexer yyl):base(yyl) {}}
+//%VECTOR_TYPE+55
+public class VECTOR_TYPE : TOKEN{ public override string yyname { get { return "VECTOR_TYPE";}}
+public override int yynum { get { return 55; }}
+ public VECTOR_TYPE(Lexer yyl):base(yyl) {}}
+//%ROTATION_TYPE+56
+public class ROTATION_TYPE : TOKEN{ public override string yyname { get { return "ROTATION_TYPE";}}
+public override int yynum { get { return 56; }}
+ public ROTATION_TYPE(Lexer yyl):base(yyl) {}}
+//%LIST_TYPE+57
+public class LIST_TYPE : TOKEN{ public override string yyname { get { return "LIST_TYPE";}}
+public override int yynum { get { return 57; }}
+ public LIST_TYPE(Lexer yyl):base(yyl) {}}
+//%AT_ROT_TARGET_EVENT+58
+public class AT_ROT_TARGET_EVENT : TOKEN{ public override string yyname { get { return "AT_ROT_TARGET_EVENT";}}
+public override int yynum { get { return 58; }}
+ public AT_ROT_TARGET_EVENT(Lexer yyl):base(yyl) {}}
+//%AT_TARGET_EVENT+59
+public class AT_TARGET_EVENT : TOKEN{ public override string yyname { get { return "AT_TARGET_EVENT";}}
+public override int yynum { get { return 59; }}
+ public AT_TARGET_EVENT(Lexer yyl):base(yyl) {}}
+//%ATTACH_EVENT+60
+public class ATTACH_EVENT : TOKEN{ public override string yyname { get { return "ATTACH_EVENT";}}
+public override int yynum { get { return 60; }}
+ public ATTACH_EVENT(Lexer yyl):base(yyl) {}}
+//%CHANGED_EVENT+61
+public class CHANGED_EVENT : TOKEN{ public override string yyname { get { return "CHANGED_EVENT";}}
+public override int yynum { get { return 61; }}
+ public CHANGED_EVENT(Lexer yyl):base(yyl) {}}
+//%COLLISION_EVENT+62
+public class COLLISION_EVENT : TOKEN{ public override string yyname { get { return "COLLISION_EVENT";}}
+public override int yynum { get { return 62; }}
+ public COLLISION_EVENT(Lexer yyl):base(yyl) {}}
+//%COLLISION_END_EVENT+63
+public class COLLISION_END_EVENT : TOKEN{ public override string yyname { get { return "COLLISION_END_EVENT";}}
+public override int yynum { get { return 63; }}
+ public COLLISION_END_EVENT(Lexer yyl):base(yyl) {}}
+//%COLLISION_START_EVENT+64
+public class COLLISION_START_EVENT : TOKEN{ public override string yyname { get { return "COLLISION_START_EVENT";}}
+public override int yynum { get { return 64; }}
+ public COLLISION_START_EVENT(Lexer yyl):base(yyl) {}}
+//%CONTROL_EVENT+65
+public class CONTROL_EVENT : TOKEN{ public override string yyname { get { return "CONTROL_EVENT";}}
+public override int yynum { get { return 65; }}
+ public CONTROL_EVENT(Lexer yyl):base(yyl) {}}
+//%DATASERVER_EVENT+66
+public class DATASERVER_EVENT : TOKEN{ public override string yyname { get { return "DATASERVER_EVENT";}}
+public override int yynum { get { return 66; }}
+ public DATASERVER_EVENT(Lexer yyl):base(yyl) {}}
+//%EMAIL_EVENT+67
+public class EMAIL_EVENT : TOKEN{ public override string yyname { get { return "EMAIL_EVENT";}}
+public override int yynum { get { return 67; }}
+ public EMAIL_EVENT(Lexer yyl):base(yyl) {}}
+//%HTTP_RESPONSE_EVENT+68
+public class HTTP_RESPONSE_EVENT : TOKEN{ public override string yyname { get { return "HTTP_RESPONSE_EVENT";}}
+public override int yynum { get { return 68; }}
+ public HTTP_RESPONSE_EVENT(Lexer yyl):base(yyl) {}}
+//%LAND_COLLISION_EVENT+69
+public class LAND_COLLISION_EVENT : TOKEN{ public override string yyname { get { return "LAND_COLLISION_EVENT";}}
+public override int yynum { get { return 69; }}
+ public LAND_COLLISION_EVENT(Lexer yyl):base(yyl) {}}
+//%LAND_COLLISION_END_EVENT+70
+public class LAND_COLLISION_END_EVENT : TOKEN{ public override string yyname { get { return "LAND_COLLISION_END_EVENT";}}
+public override int yynum { get { return 70; }}
+ public LAND_COLLISION_END_EVENT(Lexer yyl):base(yyl) {}}
+//%LAND_COLLISION_START_EVENT+71
+public class LAND_COLLISION_START_EVENT : TOKEN{ public override string yyname { get { return "LAND_COLLISION_START_EVENT";}}
+public override int yynum { get { return 71; }}
+ public LAND_COLLISION_START_EVENT(Lexer yyl):base(yyl) {}}
+//%LINK_MESSAGE_EVENT+72
+public class LINK_MESSAGE_EVENT : TOKEN{ public override string yyname { get { return "LINK_MESSAGE_EVENT";}}
+public override int yynum { get { return 72; }}
+ public LINK_MESSAGE_EVENT(Lexer yyl):base(yyl) {}}
+//%LISTEN_EVENT+73
+public class LISTEN_EVENT : TOKEN{ public override string yyname { get { return "LISTEN_EVENT";}}
+public override int yynum { get { return 73; }}
+ public LISTEN_EVENT(Lexer yyl):base(yyl) {}}
+//%MONEY_EVENT+74
+public class MONEY_EVENT : TOKEN{ public override string yyname { get { return "MONEY_EVENT";}}
+public override int yynum { get { return 74; }}
+ public MONEY_EVENT(Lexer yyl):base(yyl) {}}
+//%MOVING_END_EVENT+75
+public class MOVING_END_EVENT : TOKEN{ public override string yyname { get { return "MOVING_END_EVENT";}}
+public override int yynum { get { return 75; }}
+ public MOVING_END_EVENT(Lexer yyl):base(yyl) {}}
+//%MOVING_START_EVENT+76
+public class MOVING_START_EVENT : TOKEN{ public override string yyname { get { return "MOVING_START_EVENT";}}
+public override int yynum { get { return 76; }}
+ public MOVING_START_EVENT(Lexer yyl):base(yyl) {}}
+//%NO_SENSOR_EVENT+77
+public class NO_SENSOR_EVENT : TOKEN{ public override string yyname { get { return "NO_SENSOR_EVENT";}}
+public override int yynum { get { return 77; }}
+ public NO_SENSOR_EVENT(Lexer yyl):base(yyl) {}}
+//%NOT_AT_ROT_TARGET_EVENT+78
+public class NOT_AT_ROT_TARGET_EVENT : TOKEN{ public override string yyname { get { return "NOT_AT_ROT_TARGET_EVENT";}}
+public override int yynum { get { return 78; }}
+ public NOT_AT_ROT_TARGET_EVENT(Lexer yyl):base(yyl) {}}
+//%NOT_AT_TARGET_EVENT+79
+public class NOT_AT_TARGET_EVENT : TOKEN{ public override string yyname { get { return "NOT_AT_TARGET_EVENT";}}
+public override int yynum { get { return 79; }}
+ public NOT_AT_TARGET_EVENT(Lexer yyl):base(yyl) {}}
+//%OBJECT_REZ_EVENT+80
+public class OBJECT_REZ_EVENT : TOKEN{ public override string yyname { get { return "OBJECT_REZ_EVENT";}}
+public override int yynum { get { return 80; }}
+ public OBJECT_REZ_EVENT(Lexer yyl):base(yyl) {}}
+//%ON_REZ_EVENT+81
+public class ON_REZ_EVENT : TOKEN{ public override string yyname { get { return "ON_REZ_EVENT";}}
+public override int yynum { get { return 81; }}
+ public ON_REZ_EVENT(Lexer yyl):base(yyl) {}}
+//%REMOTE_DATA_EVENT+82
+public class REMOTE_DATA_EVENT : TOKEN{ public override string yyname { get { return "REMOTE_DATA_EVENT";}}
+public override int yynum { get { return 82; }}
+ public REMOTE_DATA_EVENT(Lexer yyl):base(yyl) {}}
+//%RUN_TIME_PERMISSIONS_EVENT+83
+public class RUN_TIME_PERMISSIONS_EVENT : TOKEN{ public override string yyname { get { return "RUN_TIME_PERMISSIONS_EVENT";}}
+public override int yynum { get { return 83; }}
+ public RUN_TIME_PERMISSIONS_EVENT(Lexer yyl):base(yyl) {}}
+//%SENSOR_EVENT+84
+public class SENSOR_EVENT : TOKEN{ public override string yyname { get { return "SENSOR_EVENT";}}
+public override int yynum { get { return 84; }}
+ public SENSOR_EVENT(Lexer yyl):base(yyl) {}}
+//%STATE_ENTRY_EVENT+85
+public class STATE_ENTRY_EVENT : TOKEN{ public override string yyname { get { return "STATE_ENTRY_EVENT";}}
+public override int yynum { get { return 85; }}
+ public STATE_ENTRY_EVENT(Lexer yyl):base(yyl) {}}
+//%STATE_EXIT_EVENT+86
+public class STATE_EXIT_EVENT : TOKEN{ public override string yyname { get { return "STATE_EXIT_EVENT";}}
+public override int yynum { get { return 86; }}
+ public STATE_EXIT_EVENT(Lexer yyl):base(yyl) {}}
+//%TIMER_EVENT+87
+public class TIMER_EVENT : TOKEN{ public override string yyname { get { return "TIMER_EVENT";}}
+public override int yynum { get { return 87; }}
+ public TIMER_EVENT(Lexer yyl):base(yyl) {}}
+//%TOUCH_EVENT+88
+public class TOUCH_EVENT : TOKEN{ public override string yyname { get { return "TOUCH_EVENT";}}
+public override int yynum { get { return 88; }}
+ public TOUCH_EVENT(Lexer yyl):base(yyl) {}}
+//%TOUCH_START_EVENT+89
+public class TOUCH_START_EVENT : TOKEN{ public override string yyname { get { return "TOUCH_START_EVENT";}}
+public override int yynum { get { return 89; }}
+ public TOUCH_START_EVENT(Lexer yyl):base(yyl) {}}
+//%TOUCH_END_EVENT+90
+public class TOUCH_END_EVENT : TOKEN{ public override string yyname { get { return "TOUCH_END_EVENT";}}
+public override int yynum { get { return 90; }}
+ public TOUCH_END_EVENT(Lexer yyl):base(yyl) {}}
+//%IDENT+91
+public class IDENT : TOKEN{ public override string yyname { get { return "IDENT";}}
+public override int yynum { get { return 91; }}
+ public IDENT(Lexer yyl):base(yyl) {}}
+//%INTEGER_CONSTANT+92
+public class INTEGER_CONSTANT : TOKEN{ public override string yyname { get { return "INTEGER_CONSTANT";}}
+public override int yynum { get { return 92; }}
+ public INTEGER_CONSTANT(Lexer yyl):base(yyl) {}}
+//%HEX_INTEGER_CONSTANT+93
+public class HEX_INTEGER_CONSTANT : TOKEN{ public override string yyname { get { return "HEX_INTEGER_CONSTANT";}}
+public override int yynum { get { return 93; }}
+ public HEX_INTEGER_CONSTANT(Lexer yyl):base(yyl) {}}
+//%FLOAT_CONSTANT+94
+public class FLOAT_CONSTANT : TOKEN{ public override string yyname { get { return "FLOAT_CONSTANT";}}
+public override int yynum { get { return 94; }}
+ public FLOAT_CONSTANT(Lexer yyl):base(yyl) {}}
+//%|LSLTokens
+public class yyLSLTokens : YyLexer {
+ public yyLSLTokens(ErrorHandler eh):base(eh) { arr = new int[] {
+101,4,6,52,0,
+46,0,53,0,6,
+102,4,16,117,0,
+115,0,45,0,97,
+0,115,0,99,0,
+105,0,105,0,2,
+0,103,5,27,7,
+0,104,9,1,0,
+3,192,0,105,5,
+27,3,65,0,2,
+1,3,66,0,2,
+1,3,67,0,2,
+1,3,68,0,2,
+1,3,69,0,2,
+1,3,70,0,2,
+1,3,71,0,2,
+1,3,72,0,2,
+1,3,73,0,2,
+1,3,74,0,2,
+1,3,75,0,2,
+1,3,76,0,2,
+1,3,77,0,2,
+1,3,78,0,2,
+1,3,79,0,2,
+1,3,80,0,2,
+1,3,81,0,2,
+1,3,82,0,2,
+1,3,83,0,2,
+1,3,84,0,2,
+1,3,85,0,2,
+1,3,86,0,2,
+1,3,87,0,2,
+1,3,88,0,2,
+1,3,89,0,2,
+1,3,90,0,2,
+1,3,192,0,2,
+1,7,1,106,9,
+1,1,3,170,0,
+107,5,27,3,109,
+0,2,1,3,110,
+0,2,1,3,111,
+0,2,1,3,112,
+0,2,1,3,113,
+0,2,1,3,114,
+0,2,1,3,115,
+0,2,1,3,116,
+0,2,1,3,117,
+0,2,1,3,118,
+0,2,1,3,119,
+0,2,1,3,120,
+0,2,1,3,121,
+0,2,1,3,122,
+0,2,1,3,170,
+0,2,1,3,97,
+0,2,1,3,98,
+0,2,1,3,99,
+0,2,1,3,100,
+0,2,1,3,101,
+0,2,1,3,102,
+0,2,1,3,103,
+0,2,1,3,104,
+0,2,1,3,105,
+0,2,1,3,106,
+0,2,1,3,107,
+0,2,1,3,108,
+0,2,1,7,2,
+108,9,1,2,3,
+197,1,109,5,1,
+3,197,1,2,1,
+7,3,110,9,1,
+3,3,176,2,111,
+5,1,3,176,2,
+2,1,7,4,112,
+9,1,4,3,187,
+1,113,5,1,3,
+187,1,2,1,7,
+5,114,9,1,5,
+3,0,3,115,5,
+1,3,0,3,2,
+1,7,6,116,9,
+1,6,3,3,9,
+117,5,1,3,3,
+9,2,1,7,7,
+118,9,1,7,3,
+136,4,119,5,1,
+3,136,4,2,1,
+7,8,120,9,1,
+8,3,96,6,121,
+5,11,3,96,6,
+2,1,3,48,0,
+2,1,3,49,0,
+2,1,3,50,0,
+2,1,3,51,0,
+2,1,3,52,0,
+2,1,3,53,0,
+2,1,3,54,0,
+2,1,3,55,0,
+2,1,3,56,0,
+2,1,3,57,0,
+2,1,7,9,122,
+9,1,9,3,96,
+33,123,5,1,3,
+96,33,2,1,7,
+10,124,9,1,10,
+3,178,0,125,5,
+1,3,178,0,2,
+1,7,11,126,9,
+1,11,3,160,0,
+127,5,2,3,160,
+0,2,1,3,32,
+0,2,1,7,12,
+128,9,1,12,3,
+40,32,129,5,1,
+3,40,32,2,1,
+7,13,130,9,1,
+13,3,41,32,131,
+5,1,3,41,32,
+2,1,7,14,132,
+9,1,14,3,1,
+0,133,5,5,3,
+0,0,2,1,3,
+1,0,2,1,3,
+13,0,2,1,3,
+9,0,2,1,3,
+10,0,2,1,7,
+15,134,9,1,15,
+3,15,7,135,5,
+1,3,15,7,2,
+1,7,17,136,9,
+1,17,3,0,224,
+137,5,1,3,0,
+224,2,1,7,18,
+138,9,1,18,3,
+63,32,139,5,2,
+3,63,32,2,1,
+3,95,0,2,1,
+7,19,140,9,1,
+19,3,173,0,141,
+5,2,3,45,0,
+2,1,3,173,0,
+2,1,7,20,142,
+9,1,20,3,58,
+15,143,5,4,3,
+123,0,2,1,3,
+91,0,2,1,3,
+58,15,2,1,3,
+40,0,2,1,7,
+21,144,9,1,21,
+3,59,15,145,5,
+4,3,59,15,2,
+1,3,125,0,2,
+1,3,93,0,2,
+1,3,41,0,2,
+1,7,22,146,9,
+1,22,3,171,0,
+147,5,1,3,171,
+0,2,1,7,23,
+148,9,1,23,3,
+187,0,149,5,1,
+3,187,0,2,1,
+7,24,150,9,1,
+24,3,35,0,151,
+5,12,3,37,0,
+2,1,3,38,0,
+2,1,3,42,0,
+2,1,3,44,0,
+2,1,3,46,0,
+2,1,3,47,0,
+2,1,3,92,0,
+2,1,3,59,0,
+2,1,3,64,0,
+2,1,3,33,0,
+2,1,3,34,0,
+2,1,3,35,0,
+2,1,7,25,152,
+9,1,25,3,172,
+0,153,5,7,3,
+172,0,2,1,3,
+124,0,2,1,3,
+126,0,2,1,3,
+60,0,2,1,3,
+61,0,2,1,3,
+62,0,2,1,3,
+43,0,2,1,7,
+26,154,9,1,26,
+3,36,0,155,5,
+1,3,36,0,2,
+1,7,27,156,9,
+1,27,3,96,0,
+157,5,2,3,94,
+0,2,1,3,96,
+0,2,1,7,27,
+2,0,158,5,2,
+159,4,18,89,0,
+89,0,73,0,78,
+0,73,0,84,0,
+73,0,65,0,76,
+0,160,12,1,1092,
+161,5,91,3,9,
+0,162,12,1,39807,
+163,5,0,164,11,
+1,1069,0,165,4,
+0,1,-1,3,10,
+0,162,3,13,0,
+162,3,32,0,162,
+3,33,0,166,12,
+1,42720,167,5,1,
+3,61,0,168,12,
+1,42835,169,5,0,
+170,11,1,142,0,
+171,4,36,69,0,
+88,0,67,0,76,
+0,65,0,77,0,
+65,0,84,0,73,
+0,79,0,78,0,
+95,0,69,0,81,
+0,85,0,65,0,
+76,0,83,0,1,
+-1,172,11,1,180,
+0,173,4,22,69,
+0,88,0,67,0,
+76,0,65,0,77,
+0,65,0,84,0,
+73,0,79,0,78,
+0,1,-1,3,34,
+0,174,12,1,42961,
+175,5,0,176,11,
+1,951,0,165,1,
+-1,3,37,0,177,
+12,1,41031,178,5,
+1,3,61,0,179,
+12,1,41146,180,5,
+0,181,11,1,40,
+0,182,4,28,80,
+0,69,0,82,0,
+67,0,69,0,78,
+0,84,0,95,0,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,-1,183,
+11,1,101,0,184,
+4,14,80,0,69,
+0,82,0,67,0,
+69,0,78,0,84,
+0,1,-1,3,38,
+0,185,12,1,41272,
+186,5,1,3,38,
+0,187,12,1,41372,
+188,5,0,189,11,
+1,185,0,190,4,
+14,65,0,77,0,
+80,0,95,0,65,
+0,77,0,80,0,
+1,-1,191,11,1,
+160,0,192,4,6,
+65,0,77,0,80,
+0,1,-1,3,40,
+0,193,12,1,40544,
+194,5,0,195,11,
+1,71,0,196,4,
+20,76,0,69,0,
+70,0,84,0,95,
+0,80,0,65,0,
+82,0,69,0,78,
+0,1,-1,3,41,
+0,197,12,1,40908,
+198,5,0,199,11,
+1,76,0,200,4,
+22,82,0,73,0,
+71,0,72,0,84,
+0,95,0,80,0,
+65,0,82,0,69,
+0,78,0,1,-1,
+3,42,0,201,12,
+1,41513,202,5,1,
+3,61,0,203,12,
+1,41628,204,5,0,
+205,11,1,28,0,
+206,4,22,83,0,
+84,0,65,0,82,
+0,95,0,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,-1,207,11,1,
+91,0,208,4,8,
+83,0,84,0,65,
+0,82,0,1,-1,
+3,43,0,209,12,
+1,44409,210,5,2,
+3,61,0,211,12,
+1,44524,212,5,0,
+213,11,1,16,0,
+214,4,22,80,0,
+76,0,85,0,83,
+0,95,0,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,-1,3,43,0,
+215,12,1,44646,216,
+5,0,217,11,1,
+2,0,218,4,18,
+73,0,78,0,67,
+0,82,0,69,0,
+77,0,69,0,78,
+0,84,0,1,-1,
+219,11,1,81,0,
+220,4,8,80,0,
+76,0,85,0,83,
+0,1,-1,3,44,
+0,221,12,1,41754,
+222,5,0,223,11,
+1,61,0,224,4,
+10,67,0,79,0,
+77,0,77,0,65,
+0,1,-1,3,45,
+0,225,12,1,39939,
+226,5,17,3,45,
+0,227,12,1,40026,
+228,5,0,229,11,
+1,10,0,230,4,
+18,68,0,69,0,
+67,0,82,0,69,
+0,77,0,69,0,
+78,0,84,0,1,
+-1,3,46,0,231,
+12,1,39479,232,5,
+14,3,48,0,233,
+12,1,39541,234,5,
+14,3,48,0,233,
+3,49,0,233,3,
+50,0,233,3,51,
+0,233,3,52,0,
+233,3,53,0,233,
+3,54,0,233,3,
+55,0,233,3,56,
+0,233,3,57,0,
+233,3,101,0,235,
+12,1,38959,236,5,
+12,3,43,0,237,
+12,1,1664,238,5,
+10,3,48,0,239,
+12,1,1726,240,5,
+12,3,48,0,239,
+3,49,0,239,3,
+50,0,239,3,51,
+0,239,3,52,0,
+239,3,53,0,239,
+3,54,0,239,3,
+55,0,239,3,56,
+0,239,3,57,0,
+239,3,102,0,241,
+12,1,1732,242,5,
+0,243,11,1,882,
+0,244,4,28,70,
+0,76,0,79,0,
+65,0,84,0,95,
+0,67,0,79,0,
+78,0,83,0,84,
+0,65,0,78,0,
+84,0,1,-1,3,
+70,0,241,245,11,
+1,882,0,244,1,
+-1,3,49,0,239,
+3,50,0,239,3,
+51,0,239,3,52,
+0,239,3,53,0,
+239,3,54,0,239,
+3,55,0,239,3,
+56,0,239,3,57,
+0,239,0,165,1,
+-1,3,45,0,237,
+3,48,0,239,3,
+49,0,239,3,50,
+0,239,3,51,0,
+239,3,52,0,239,
+3,53,0,239,3,
+54,0,239,3,55,
+0,239,3,56,0,
+239,3,57,0,239,
+0,165,1,-1,3,
+102,0,241,3,69,
+0,235,3,70,0,
+241,246,11,1,882,
+0,244,1,-1,3,
+49,0,233,3,50,
+0,233,3,51,0,
+233,3,52,0,233,
+3,53,0,233,3,
+54,0,233,3,55,
+0,233,3,56,0,
+233,3,57,0,233,
+3,101,0,235,3,
+102,0,241,3,69,
+0,235,3,70,0,
+241,247,11,1,882,
+0,244,1,-1,3,
+48,0,248,12,1,
+38954,249,5,17,3,
+120,0,250,12,1,
+39098,251,5,22,3,
+102,0,252,12,1,
+39099,253,5,22,3,
+102,0,252,3,48,
+0,252,3,49,0,
+252,3,50,0,252,
+3,51,0,252,3,
+52,0,252,3,53,
+0,252,3,54,0,
+252,3,55,0,252,
+3,56,0,252,3,
+57,0,252,3,97,
+0,252,3,98,0,
+252,3,99,0,252,
+3,100,0,252,3,
+101,0,252,3,65,
+0,252,3,66,0,
+252,3,67,0,252,
+3,68,0,252,3,
+69,0,252,3,70,
+0,252,254,11,1,
+855,0,255,4,40,
+72,0,69,0,88,
+0,95,0,73,0,
+78,0,84,0,69,
+0,71,0,69,0,
+82,0,95,0,67,
+0,79,0,78,0,
+83,0,84,0,65,
+0,78,0,84,0,
+1,-1,3,48,0,
+252,3,49,0,252,
+3,50,0,252,3,
+51,0,252,3,52,
+0,252,3,53,0,
+252,3,54,0,252,
+3,55,0,252,3,
+56,0,252,3,57,
+0,252,3,97,0,
+252,3,98,0,252,
+3,99,0,252,3,
+100,0,252,3,101,
+0,252,3,65,0,
+252,3,66,0,252,
+3,67,0,252,3,
+68,0,252,3,69,
+0,252,3,70,0,
+252,0,165,1,-1,
+3,48,0,256,12,
+1,39376,257,5,15,
+3,46,0,231,3,
+48,0,256,3,49,
+0,256,3,50,0,
+256,3,51,0,256,
+3,52,0,256,3,
+53,0,256,3,54,
+0,256,3,55,0,
+256,3,56,0,256,
+3,57,0,256,3,
+101,0,235,3,102,
+0,241,3,69,0,
+235,3,70,0,241,
+258,11,1,841,0,
+259,4,32,73,0,
+78,0,84,0,69,
+0,71,0,69,0,
+82,0,95,0,67,
+0,79,0,78,0,
+83,0,84,0,65,
+0,78,0,84,0,
+1,-1,3,49,0,
+256,3,50,0,256,
+3,88,0,250,3,
+52,0,256,3,53,
+0,256,3,51,0,
+256,3,55,0,256,
+3,56,0,256,3,
+54,0,256,3,46,
+0,231,3,57,0,
+256,3,101,0,235,
+3,102,0,241,3,
+69,0,235,3,70,
+0,241,260,11,1,
+841,0,259,1,-1,
+3,49,0,256,3,
+50,0,256,3,51,
+0,256,3,52,0,
+256,3,53,0,256,
+3,54,0,256,3,
+55,0,256,3,56,
+0,256,3,57,0,
+256,3,61,0,261,
+12,1,40174,262,5,
+0,263,11,1,22,
+0,264,4,24,77,
+0,73,0,78,0,
+85,0,83,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,-1,
+3,101,0,235,3,
+102,0,241,3,69,
+0,235,3,70,0,
+241,265,11,1,86,
+0,266,4,10,77,
+0,73,0,78,0,
+85,0,83,0,1,
+-1,3,46,0,267,
+12,1,41875,268,5,
+14,3,48,0,233,
+3,49,0,233,3,
+50,0,233,3,51,
+0,233,3,52,0,
+233,3,53,0,233,
+3,54,0,233,3,
+55,0,233,3,56,
+0,233,3,57,0,
+233,3,101,0,235,
+3,102,0,241,3,
+69,0,235,3,70,
+0,241,269,11,1,
+111,0,270,4,12,
+80,0,69,0,82,
+0,73,0,79,0,
+68,0,1,-1,3,
+47,0,271,12,1,
+41996,272,5,2,3,
+47,0,273,12,1,
+42100,274,5,118,3,
+1,0,275,12,1,
+42101,276,5,118,3,
+1,0,275,3,9,
+0,275,3,96,33,
+275,3,13,0,275,
+3,0,3,275,3,
+32,0,275,3,33,
+0,275,3,34,0,
+275,3,35,0,275,
+3,36,0,275,3,
+37,0,275,3,38,
+0,275,3,40,0,
+275,3,41,0,275,
+3,42,0,275,3,
+43,0,275,3,44,
+0,275,3,45,0,
+275,3,46,0,275,
+3,47,0,275,3,
+3,9,275,3,49,
+0,275,3,50,0,
+275,3,48,0,275,
+3,52,0,275,3,
+53,0,275,3,51,
+0,275,3,55,0,
+275,3,56,0,275,
+3,54,0,275,3,
+59,0,275,3,57,
+0,275,3,61,0,
+275,3,62,0,275,
+3,60,0,275,3,
+64,0,275,3,65,
+0,275,3,66,0,
+275,3,67,0,275,
+3,68,0,275,3,
+69,0,275,3,70,
+0,275,3,71,0,
+275,3,72,0,275,
+3,73,0,275,3,
+74,0,275,3,75,
+0,275,3,76,0,
+275,3,77,0,275,
+3,78,0,275,3,
+79,0,275,3,80,
+0,275,3,81,0,
+275,3,82,0,275,
+3,83,0,275,3,
+84,0,275,3,85,
+0,275,3,86,0,
+275,3,87,0,275,
+3,88,0,275,3,
+89,0,275,3,90,
+0,275,3,91,0,
+275,3,92,0,275,
+3,93,0,275,3,
+94,0,275,3,95,
+0,275,3,96,0,
+275,3,97,0,275,
+3,98,0,275,3,
+99,0,275,3,100,
+0,275,3,101,0,
+275,3,102,0,275,
+3,103,0,275,3,
+104,0,275,3,105,
+0,275,3,106,0,
+275,3,107,0,275,
+3,15,7,275,3,
+109,0,275,3,110,
+0,275,3,111,0,
+275,3,112,0,275,
+3,113,0,275,3,
+114,0,275,3,115,
+0,275,3,116,0,
+275,3,117,0,275,
+3,118,0,275,3,
+119,0,275,3,120,
+0,275,3,121,0,
+275,3,122,0,275,
+3,108,0,275,3,
+124,0,275,3,125,
+0,275,3,96,6,
+275,3,123,0,275,
+3,126,0,275,3,
+58,15,275,3,59,
+15,275,3,136,4,
+275,3,160,0,275,
+3,170,0,275,3,
+171,0,275,3,172,
+0,275,3,173,0,
+275,3,178,0,275,
+3,176,2,275,3,
+187,0,275,3,187,
+1,275,3,192,0,
+275,3,41,32,275,
+3,197,1,275,3,
+0,224,275,3,40,
+32,275,3,63,32,
+275,277,11,1,1073,
+0,165,1,-1,3,
+9,0,275,3,96,
+33,275,3,13,0,
+275,3,0,3,275,
+3,32,0,275,3,
+33,0,275,3,34,
+0,275,3,35,0,
+275,3,36,0,275,
+3,37,0,275,3,
+38,0,275,3,40,
+0,275,3,41,0,
+275,3,42,0,275,
+3,43,0,275,3,
+44,0,275,3,45,
+0,275,3,46,0,
+275,3,47,0,275,
+3,3,9,275,3,
+49,0,275,3,50,
+0,275,3,48,0,
+275,3,52,0,275,
+3,53,0,275,3,
+51,0,275,3,55,
+0,275,3,56,0,
+275,3,54,0,275,
+3,59,0,275,3,
+57,0,275,3,61,
+0,275,3,62,0,
+275,3,60,0,275,
+3,64,0,275,3,
+65,0,275,3,66,
+0,275,3,67,0,
+275,3,68,0,275,
+3,69,0,275,3,
+70,0,275,3,71,
+0,275,3,72,0,
+275,3,73,0,275,
+3,74,0,275,3,
+75,0,275,3,76,
+0,275,3,77,0,
+275,3,78,0,275,
+3,79,0,275,3,
+80,0,275,3,81,
+0,275,3,82,0,
+275,3,83,0,275,
+3,84,0,275,3,
+85,0,275,3,86,
+0,275,3,87,0,
+275,3,88,0,275,
+3,89,0,275,3,
+90,0,275,3,91,
+0,275,3,92,0,
+275,3,93,0,275,
+3,94,0,275,3,
+95,0,275,3,96,
+0,275,3,97,0,
+275,3,98,0,275,
+3,99,0,275,3,
+100,0,275,3,101,
+0,275,3,102,0,
+275,3,103,0,275,
+3,104,0,275,3,
+105,0,275,3,106,
+0,275,3,107,0,
+275,3,15,7,275,
+3,109,0,275,3,
+110,0,275,3,111,
+0,275,3,112,0,
+275,3,113,0,275,
+3,114,0,275,3,
+115,0,275,3,116,
+0,275,3,117,0,
+275,3,118,0,275,
+3,119,0,275,3,
+120,0,275,3,121,
+0,275,3,122,0,
+275,3,108,0,275,
+3,124,0,275,3,
+125,0,275,3,96,
+6,275,3,123,0,
+275,3,126,0,275,
+3,58,15,275,3,
+59,15,275,3,136,
+4,275,3,160,0,
+275,3,170,0,275,
+3,171,0,275,3,
+172,0,275,3,173,
+0,275,3,178,0,
+275,3,176,2,275,
+3,187,0,275,3,
+187,1,275,3,192,
+0,275,3,41,32,
+275,3,197,1,275,
+3,0,224,275,3,
+40,32,275,3,63,
+32,275,278,11,1,
+1073,0,165,1,-1,
+3,61,0,279,12,
+1,42351,280,5,0,
+281,11,1,34,0,
+282,4,24,83,0,
+76,0,65,0,83,
+0,72,0,95,0,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,-1,283,
+11,1,96,0,284,
+4,10,83,0,76,
+0,65,0,83,0,
+72,0,1,-1,3,
+48,0,248,3,49,
+0,256,3,50,0,
+256,3,51,0,256,
+3,52,0,256,3,
+53,0,256,3,54,
+0,256,3,55,0,
+256,3,56,0,256,
+3,57,0,256,3,
+59,0,285,12,1,
+42478,286,5,0,287,
+11,1,46,0,288,
+4,18,83,0,69,
+0,77,0,73,0,
+67,0,79,0,76,
+0,79,0,78,0,
+1,-1,3,60,0,
+289,12,1,43446,290,
+5,2,3,60,0,
+291,12,1,43560,292,
+5,0,293,11,1,
+197,0,294,4,20,
+76,0,69,0,70,
+0,84,0,95,0,
+83,0,72,0,73,
+0,70,0,84,0,
+1,-1,3,61,0,
+295,12,1,43681,296,
+5,0,297,11,1,
+148,0,298,4,22,
+76,0,69,0,83,
+0,83,0,95,0,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,-1,299,
+11,1,116,0,300,
+4,20,76,0,69,
+0,70,0,84,0,
+95,0,65,0,78,
+0,71,0,76,0,
+69,0,1,-1,3,
+61,0,301,12,1,
+43807,302,5,1,3,
+61,0,303,12,1,
+43922,304,5,0,305,
+11,1,136,0,306,
+4,26,69,0,81,
+0,85,0,65,0,
+76,0,83,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,-1,
+307,11,1,66,0,
+308,4,12,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,-1,3,62,0,
+309,12,1,44048,310,
+5,2,3,61,0,
+311,12,1,44163,312,
+5,0,313,11,1,
+154,0,314,4,28,
+71,0,82,0,69,
+0,65,0,84,0,
+69,0,82,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,-1,
+3,62,0,315,12,
+1,44284,316,5,0,
+317,11,1,203,0,
+318,4,22,82,0,
+73,0,71,0,72,
+0,84,0,95,0,
+83,0,72,0,73,
+0,70,0,84,0,
+1,-1,319,11,1,
+121,0,320,4,22,
+82,0,73,0,71,
+0,72,0,84,0,
+95,0,65,0,78,
+0,71,0,76,0,
+69,0,1,-1,3,
+64,0,321,12,1,
+42599,322,5,0,323,
+11,1,106,0,324,
+4,4,65,0,84,
+0,1,-1,3,65,
+0,325,12,1,1093,
+326,5,63,3,109,
+0,327,12,1,1094,
+328,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+329,11,1,829,0,
+330,4,10,73,0,
+68,0,69,0,78,
+0,84,0,1,-1,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,331,11,
+1,829,0,330,1,
+-1,3,66,0,325,
+3,67,0,325,3,
+68,0,325,3,69,
+0,332,12,1,1337,
+333,5,65,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+43,0,237,3,45,
+0,237,3,48,0,
+334,12,1,1399,335,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,334,3,49,0,
+334,3,50,0,334,
+3,51,0,334,3,
+52,0,334,3,53,
+0,334,3,54,0,
+334,3,55,0,334,
+3,56,0,334,3,
+57,0,334,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,336,12,1,1405,
+337,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+338,11,1,829,0,
+330,1,-1,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+336,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+339,11,1,829,0,
+330,1,-1,3,49,
+0,334,3,50,0,
+334,3,51,0,334,
+3,52,0,334,3,
+53,0,334,3,54,
+0,334,3,55,0,
+334,3,56,0,334,
+3,57,0,334,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+340,11,1,829,0,
+330,1,-1,3,70,
+0,341,12,1,2058,
+342,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+343,11,1,829,0,
+330,1,-1,3,71,
+0,325,3,72,0,
+325,3,73,0,325,
+3,74,0,325,3,
+75,0,325,3,76,
+0,325,3,77,0,
+325,3,78,0,325,
+3,79,0,325,3,
+80,0,325,3,81,
+0,325,3,82,0,
+325,3,83,0,325,
+3,84,0,325,3,
+85,0,325,3,86,
+0,325,3,87,0,
+325,3,88,0,325,
+3,89,0,325,3,
+90,0,325,3,91,
+0,344,12,1,40422,
+345,5,0,346,11,
+1,126,0,347,4,
+24,76,0,69,0,
+70,0,84,0,95,
+0,66,0,82,0,
+65,0,67,0,75,
+0,69,0,84,0,
+1,-1,3,93,0,
+348,12,1,40787,349,
+5,0,350,11,1,
+131,0,351,4,26,
+82,0,73,0,71,
+0,72,0,84,0,
+95,0,66,0,82,
+0,65,0,67,0,
+75,0,69,0,84,
+0,1,-1,3,94,
+0,352,12,1,44771,
+353,5,0,354,11,
+1,170,0,355,4,
+10,67,0,65,0,
+82,0,69,0,84,
+0,1,-1,3,95,
+0,325,3,97,0,
+356,12,1,20935,357,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,358,12,
+1,20970,359,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,360,12,1,21005,
+361,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+362,12,1,21048,363,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,364,12,1,
+21093,365,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,366,
+12,1,21143,367,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,368,11,
+1,380,0,369,4,
+24,65,0,84,0,
+84,0,65,0,67,
+0,72,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,370,11,
+1,829,0,330,1,
+-1,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,371,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,372,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,373,12,
+1,21536,374,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,375,12,
+1,21569,376,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,377,12,1,21599,
+378,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,379,
+12,1,21634,380,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,381,
+12,1,21720,382,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,383,12,1,
+21755,384,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,385,12,1,21798,
+386,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,387,12,1,21831,
+388,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,389,
+12,1,21880,390,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,391,
+12,1,21927,392,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,393,12,1,
+21962,394,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,395,11,1,350,
+0,396,4,38,65,
+0,84,0,95,0,
+82,0,79,0,84,
+0,95,0,84,0,
+65,0,82,0,71,
+0,69,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,397,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+398,11,1,829,0,
+330,1,-1,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,399,11,
+1,829,0,330,1,
+-1,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,400,
+11,1,829,0,330,
+1,-1,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,401,11,1,829,
+0,330,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,402,
+11,1,829,0,330,
+1,-1,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+403,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,404,11,
+1,829,0,330,1,
+-1,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,405,11,1,829,
+0,330,1,-1,3,
+115,0,327,3,116,
+0,406,12,1,22771,
+407,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+408,12,1,22814,409,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+410,12,1,22847,411,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,412,12,
+1,22896,413,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,414,12,
+1,22943,415,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,416,12,1,22978,
+417,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+418,11,1,367,0,
+419,4,30,65,0,
+84,0,95,0,84,
+0,65,0,82,0,
+71,0,69,0,84,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+420,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,421,11,1,829,
+0,330,1,-1,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,422,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+423,11,1,829,0,
+330,1,-1,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,424,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+425,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,426,11,1,829,
+0,330,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,427,
+11,1,829,0,330,
+1,-1,3,98,0,
+325,3,99,0,428,
+12,1,23697,429,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,430,12,1,
+23727,431,5,63,3,
+109,0,327,3,110,
+0,432,12,1,23756,
+433,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,434,
+12,1,23791,435,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,436,
+12,1,23824,437,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,438,12,1,
+23854,439,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+440,12,1,23908,441,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,442,
+11,1,450,0,443,
+4,26,67,0,79,
+0,78,0,84,0,
+82,0,79,0,76,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+444,11,1,829,0,
+330,1,-1,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,445,11,
+1,829,0,330,1,
+-1,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,446,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,447,11,1,
+829,0,330,1,-1,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,448,12,
+1,24381,449,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,450,12,1,24435,
+451,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,452,12,1,
+24486,453,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,454,12,1,24520,
+455,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,456,12,1,
+24571,457,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+458,12,1,24601,459,
+5,63,3,109,0,
+327,3,110,0,460,
+12,1,24630,461,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,462,
+12,1,24716,463,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,464,12,
+1,24750,465,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,466,12,1,24785,
+467,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+468,12,1,24828,469,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+470,12,1,24861,471,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,472,12,
+1,24896,473,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,474,11,1,
+431,0,475,4,42,
+67,0,79,0,76,
+0,76,0,73,0,
+83,0,73,0,79,
+0,78,0,95,0,
+83,0,84,0,65,
+0,82,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,476,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+477,11,1,829,0,
+330,1,-1,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,478,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+479,11,1,829,0,
+330,1,-1,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,480,12,
+1,25363,481,5,63,
+3,109,0,327,3,
+110,0,482,12,1,
+25392,483,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,484,12,
+1,25438,485,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,486,11,1,
+414,0,487,4,38,
+67,0,79,0,76,
+0,76,0,73,0,
+83,0,73,0,79,
+0,78,0,95,0,
+69,0,78,0,68,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,488,11,1,
+829,0,330,1,-1,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,489,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+490,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,491,11,1,401,
+0,492,4,30,67,
+0,79,0,76,0,
+76,0,73,0,83,
+0,73,0,79,0,
+78,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+493,11,1,829,0,
+330,1,-1,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,494,11,
+1,829,0,330,1,
+-1,3,106,0,327,
+3,107,0,327,3,
+108,0,327,495,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+496,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+497,11,1,829,0,
+330,1,-1,498,11,
+1,829,0,330,1,
+-1,499,11,1,829,
+0,330,1,-1,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,500,12,1,
+26387,501,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,502,12,1,26430,
+503,5,63,3,109,
+0,327,3,110,0,
+504,12,1,26459,505,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,506,12,
+1,26508,507,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,508,12,
+1,26555,509,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,510,
+12,1,26601,511,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,512,11,
+1,390,0,513,4,
+26,67,0,72,0,
+65,0,78,0,71,
+0,69,0,68,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,514,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,515,11,1,
+829,0,330,1,-1,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+516,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,517,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,518,
+11,1,829,0,330,
+1,-1,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,519,11,
+1,829,0,330,1,
+-1,3,100,0,520,
+12,1,27178,521,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,522,12,1,
+27208,523,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,524,11,1,223,
+0,525,4,4,68,
+0,79,0,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+526,12,1,27341,527,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,528,12,
+1,27376,529,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,530,12,1,
+27419,531,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,532,12,1,27453,
+533,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,534,12,1,27500,
+535,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,536,12,1,27533,
+537,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,538,12,1,
+27570,539,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,540,12,1,
+27617,541,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,542,12,1,
+27650,543,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,544,11,1,461,
+0,545,4,32,68,
+0,65,0,84,0,
+65,0,83,0,69,
+0,82,0,86,0,
+69,0,82,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,-1,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,546,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,547,11,1,
+829,0,330,1,-1,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,548,11,1,
+829,0,330,1,-1,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,549,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,550,
+11,1,829,0,330,
+1,-1,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,551,11,1,829,
+0,330,1,-1,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,552,11,
+1,829,0,330,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,553,11,1,829,
+0,330,1,-1,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,554,
+12,1,28425,555,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,556,12,
+1,28473,557,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,558,12,1,
+28516,559,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,560,
+12,1,28552,561,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,562,12,1,
+28606,563,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+564,12,1,28641,565,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,566,
+11,1,245,0,567,
+4,26,68,0,69,
+0,70,0,65,0,
+85,0,76,0,84,
+0,95,0,83,0,
+84,0,65,0,84,
+0,69,0,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+568,11,1,829,0,
+330,1,-1,569,11,
+1,829,0,330,1,
+-1,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,570,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,571,
+11,1,829,0,330,
+1,-1,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,572,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,573,11,1,
+829,0,330,1,-1,
+3,101,0,574,12,
+1,29219,575,5,65,
+3,109,0,576,12,
+1,29247,577,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,578,12,1,
+29290,579,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,580,12,
+1,29341,581,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,582,12,1,29395,
+583,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+584,11,1,475,0,
+585,4,22,69,0,
+77,0,65,0,73,
+0,76,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,586,11,1,
+829,0,330,1,-1,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,587,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,588,
+11,1,829,0,330,
+1,-1,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+43,0,237,3,45,
+0,237,3,48,0,
+334,3,49,0,334,
+3,50,0,334,3,
+51,0,334,3,52,
+0,334,3,53,0,
+334,3,54,0,334,
+3,55,0,334,3,
+56,0,334,3,57,
+0,334,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,589,12,1,
+29753,590,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,591,12,1,29787,
+592,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,593,12,1,29834,
+594,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+595,11,1,215,0,
+596,4,8,69,0,
+76,0,83,0,69,
+0,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,597,11,1,829,
+0,330,1,-1,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,598,11,
+1,829,0,330,1,
+-1,599,11,1,829,
+0,330,1,-1,3,
+102,0,600,12,1,
+30180,601,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+602,12,1,30210,603,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+604,12,1,30243,605,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,606,
+11,1,238,0,607,
+4,6,70,0,79,
+0,82,0,1,-1,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,608,11,
+1,829,0,330,1,
+-1,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+609,12,1,30474,610,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,611,12,
+1,30504,612,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,613,12,1,
+30547,614,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+615,12,1,30582,616,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,617,
+11,1,294,0,618,
+4,20,70,0,76,
+0,79,0,65,0,
+84,0,95,0,84,
+0,89,0,80,0,
+69,0,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,619,
+11,1,829,0,330,
+1,-1,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,620,11,1,829,
+0,330,1,-1,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,621,
+11,1,829,0,330,
+1,-1,622,11,1,
+829,0,330,1,-1,
+3,103,0,325,3,
+104,0,623,12,1,
+31022,624,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+625,12,1,31057,626,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,627,12,
+1,31092,628,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+629,12,1,31123,630,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+631,12,1,31209,632,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+633,12,1,31242,634,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+635,12,1,31289,636,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,637,
+12,1,31323,638,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,639,12,1,31354,
+640,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,641,
+12,1,31384,642,5,
+63,3,109,0,327,
+3,110,0,643,12,
+1,31413,644,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,645,12,1,
+31447,646,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,647,12,1,
+31494,648,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,649,11,1,484,
+0,650,4,38,72,
+0,84,0,84,0,
+80,0,95,0,82,
+0,69,0,83,0,
+80,0,79,0,78,
+0,83,0,69,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,651,11,1,
+829,0,330,1,-1,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,652,
+11,1,829,0,330,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,653,11,1,829,
+0,330,1,-1,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,654,
+11,1,829,0,330,
+1,-1,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,655,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+656,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,657,11,1,829,
+0,330,1,-1,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,658,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,659,11,
+1,829,0,330,1,
+-1,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,660,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+661,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,662,11,
+1,829,0,330,1,
+-1,3,105,0,663,
+12,1,32583,664,5,
+63,3,109,0,327,
+3,110,0,665,12,
+1,32612,666,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,667,12,1,32647,
+668,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,669,12,1,32694,
+670,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,671,
+12,1,32743,672,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,673,
+12,1,32790,674,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,675,
+12,1,32823,676,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,677,11,
+1,283,0,678,4,
+24,73,0,78,0,
+84,0,69,0,71,
+0,69,0,82,0,
+95,0,84,0,89,
+0,80,0,69,0,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+679,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,680,11,1,829,
+0,330,1,-1,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,681,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+682,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,683,11,
+1,829,0,330,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+684,12,1,33351,685,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,686,
+11,1,209,0,687,
+4,4,73,0,70,
+0,1,-1,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,688,11,1,
+829,0,330,1,-1,
+3,106,0,689,12,
+1,33544,690,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+691,12,1,33580,692,
+5,63,3,109,0,
+693,12,1,33608,694,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,695,12,1,
+33639,696,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,697,11,1,265,
+0,698,4,8,74,
+0,85,0,77,0,
+80,0,1,-1,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+699,11,1,829,0,
+330,1,-1,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,700,11,1,829,
+0,330,1,-1,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+701,11,1,829,0,
+330,1,-1,3,107,
+0,702,12,1,34025,
+703,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,704,12,1,34072,
+705,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,706,
+12,1,34112,707,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,708,11,
+1,313,0,709,4,
+16,75,0,69,0,
+89,0,95,0,84,
+0,89,0,80,0,
+69,0,1,-1,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,710,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+711,11,1,829,0,
+330,1,-1,3,108,
+0,712,12,1,34386,
+713,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+714,12,1,34429,715,
+5,63,3,109,0,
+327,3,110,0,716,
+12,1,34458,717,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+718,12,1,34504,719,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+720,12,1,34590,721,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,722,12,1,
+34635,723,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+724,12,1,34665,725,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,726,12,
+1,34719,727,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,728,12,1,34773,
+729,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,730,12,1,
+34824,731,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,732,12,1,34858,
+733,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,734,12,1,
+34909,735,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+736,12,1,34939,737,
+5,63,3,109,0,
+327,3,110,0,738,
+12,1,34968,739,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,740,
+12,1,35054,741,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,742,12,
+1,35088,743,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,744,12,1,35123,
+745,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+746,12,1,35166,747,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+748,12,1,35199,749,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,750,12,
+1,35234,751,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,752,11,1,
+541,0,753,4,52,
+76,0,65,0,78,
+0,68,0,95,0,
+67,0,79,0,76,
+0,76,0,73,0,
+83,0,73,0,79,
+0,78,0,95,0,
+83,0,84,0,65,
+0,82,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,754,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+755,11,1,829,0,
+330,1,-1,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,756,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+757,11,1,829,0,
+330,1,-1,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,758,12,
+1,35701,759,5,63,
+3,109,0,327,3,
+110,0,760,12,1,
+35730,761,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,762,12,
+1,35776,763,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,764,11,1,
+519,0,765,4,48,
+76,0,65,0,78,
+0,68,0,95,0,
+67,0,79,0,76,
+0,76,0,73,0,
+83,0,73,0,79,
+0,78,0,95,0,
+69,0,78,0,68,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,766,11,1,
+829,0,330,1,-1,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,767,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+768,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,769,11,1,501,
+0,770,4,40,76,
+0,65,0,78,0,
+68,0,95,0,67,
+0,79,0,76,0,
+76,0,73,0,83,
+0,73,0,79,0,
+78,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+771,11,1,829,0,
+330,1,-1,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,772,11,
+1,829,0,330,1,
+-1,3,106,0,327,
+3,107,0,327,3,
+108,0,327,773,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+774,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+775,11,1,829,0,
+330,1,-1,776,11,
+1,829,0,330,1,
+-1,777,11,1,829,
+0,330,1,-1,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,778,
+11,1,829,0,330,
+1,-1,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,779,11,
+1,829,0,330,1,
+-1,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,780,
+11,1,829,0,330,
+1,-1,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,781,
+11,1,829,0,330,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,782,11,1,829,
+0,330,1,-1,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+783,12,1,37077,784,
+5,63,3,109,0,
+327,3,110,0,785,
+12,1,37106,786,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,787,12,
+1,37159,788,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,789,12,
+1,37245,790,5,63,
+3,109,0,791,12,
+1,37273,792,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,793,12,
+1,37320,794,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,795,12,1,
+37354,796,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,797,12,1,37388,
+798,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+799,12,1,37431,800,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,801,12,
+1,37480,802,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,803,12,
+1,37527,804,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,805,11,1,
+565,0,806,4,36,
+76,0,73,0,78,
+0,75,0,95,0,
+77,0,69,0,83,
+0,83,0,65,0,
+71,0,69,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,807,11,1,829,
+0,330,1,-1,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,808,
+11,1,829,0,330,
+1,-1,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,809,11,1,829,
+0,330,1,-1,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,810,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+811,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,812,11,1,829,
+0,330,1,-1,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,813,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,814,11,
+1,829,0,330,1,
+-1,3,108,0,327,
+815,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,816,12,1,
+38311,817,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+818,12,1,38346,819,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+820,12,1,38393,821,
+5,63,3,109,0,
+327,3,110,0,822,
+12,1,38422,823,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,824,11,
+1,581,0,825,4,
+24,76,0,73,0,
+83,0,84,0,69,
+0,78,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,826,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,827,11,1,
+342,0,828,4,18,
+76,0,73,0,83,
+0,84,0,95,0,
+84,0,89,0,80,
+0,69,0,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+829,11,1,829,0,
+330,1,-1,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,830,11,1,
+829,0,330,1,-1,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,831,11,1,
+829,0,330,1,-1,
+3,109,0,832,12,
+1,2200,833,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,834,12,1,2230,
+835,5,63,3,109,
+0,327,3,110,0,
+836,12,1,2259,837,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+838,12,1,2306,839,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,840,12,
+1,2346,841,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,842,11,1,
+591,0,843,4,22,
+77,0,79,0,78,
+0,69,0,89,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,844,
+11,1,829,0,330,
+1,-1,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+845,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,846,
+12,1,2627,847,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+848,12,1,2678,849,
+5,63,3,109,0,
+327,3,110,0,850,
+12,1,2707,851,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,852,12,1,
+2756,853,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,854,12,1,
+2842,855,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,856,12,1,2876,
+857,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,858,
+12,1,2911,859,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,860,12,
+1,2954,861,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,862,12,
+1,2987,863,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,864,12,1,3022,
+865,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+866,11,1,614,0,
+867,4,36,77,0,
+79,0,86,0,73,
+0,78,0,71,0,
+95,0,83,0,84,
+0,65,0,82,0,
+84,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,868,11,1,829,
+0,330,1,-1,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,869,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,870,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,871,11,1,
+829,0,330,1,-1,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+872,12,1,3489,873,
+5,63,3,109,0,
+327,3,110,0,874,
+12,1,3518,875,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+876,12,1,3564,877,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,878,
+11,1,600,0,879,
+4,32,77,0,79,
+0,86,0,73,0,
+78,0,71,0,95,
+0,69,0,78,0,
+68,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,880,11,
+1,829,0,330,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+881,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,882,11,1,829,
+0,330,1,-1,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,883,11,1,
+829,0,330,1,-1,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+884,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,885,11,1,
+829,0,330,1,-1,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,886,11,1,
+829,0,330,1,-1,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,887,11,1,
+829,0,330,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+888,11,1,829,0,
+330,1,-1,3,110,
+0,889,12,1,4361,
+890,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,891,
+12,1,4391,892,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,893,12,1,
+4426,894,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,895,12,1,
+4512,896,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,897,12,1,4555,
+898,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,899,
+12,1,4590,900,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,901,
+12,1,4676,902,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,903,
+12,1,4709,904,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,905,12,1,
+4739,906,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+907,12,1,4774,908,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+909,12,1,4860,910,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,911,12,
+1,4895,912,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,913,12,1,
+4938,914,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,915,12,1,
+4971,916,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+917,12,1,5020,918,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+919,12,1,5067,920,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,921,12,
+1,5102,922,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,923,11,1,
+643,0,924,4,46,
+78,0,79,0,84,
+0,95,0,65,0,
+84,0,95,0,82,
+0,79,0,84,0,
+95,0,84,0,65,
+0,82,0,71,0,
+69,0,84,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,925,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,926,
+11,1,829,0,330,
+1,-1,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,927,11,1,
+829,0,330,1,-1,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,928,11,
+1,829,0,330,1,
+-1,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+929,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,930,11,
+1,829,0,330,1,
+-1,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,931,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,932,11,1,
+829,0,330,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+933,11,1,829,0,
+330,1,-1,3,115,
+0,327,3,116,0,
+934,12,1,5911,935,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,936,
+12,1,5954,937,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,938,
+12,1,5987,939,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,940,12,1,
+6036,941,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,942,12,1,
+6083,943,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+944,12,1,6118,945,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,946,
+11,1,664,0,947,
+4,38,78,0,79,
+0,84,0,95,0,
+65,0,84,0,95,
+0,84,0,65,0,
+82,0,71,0,69,
+0,84,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,948,11,1,
+829,0,330,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,949,11,
+1,829,0,330,1,
+-1,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,950,11,1,829,
+0,330,1,-1,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,951,11,1,
+829,0,330,1,-1,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,952,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,953,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,954,11,
+1,829,0,330,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,955,11,1,829,
+0,330,1,-1,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,956,11,
+1,829,0,330,1,
+-1,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,957,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,958,12,
+1,6997,959,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,960,12,1,
+7031,961,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,962,12,1,
+7078,963,5,63,3,
+109,0,327,3,110,
+0,964,12,1,7107,
+965,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+966,12,1,7141,967,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,968,12,
+1,7171,969,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,970,12,
+1,7204,971,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,972,11,1,
+630,0,973,4,30,
+78,0,79,0,95,
+0,83,0,69,0,
+78,0,83,0,79,
+0,82,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+974,11,1,829,0,
+330,1,-1,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,975,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+976,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,977,11,1,
+829,0,330,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,978,11,
+1,829,0,330,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+979,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,980,11,1,829,
+0,330,1,-1,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,981,
+11,1,829,0,330,
+1,-1,3,111,0,
+982,12,1,7962,983,
+5,63,3,109,0,
+327,3,110,0,984,
+12,1,7991,985,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,986,
+12,1,8077,987,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,988,
+12,1,8110,989,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,990,
+12,1,8157,991,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,992,12,1,8198,
+993,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+994,11,1,695,0,
+995,4,24,79,0,
+78,0,95,0,82,
+0,69,0,90,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+996,11,1,829,0,
+330,1,-1,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,997,11,1,829,
+0,330,1,-1,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,998,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,999,11,
+1,829,0,330,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,1000,
+12,1,8606,1001,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,1002,
+12,1,8658,1003,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,1004,
+12,1,8705,1005,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,1006,12,1,8750,
+1007,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,1008,
+12,1,8785,1009,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,1010,
+12,1,8871,1011,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,1012,
+12,1,8904,1013,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,1014,
+12,1,8951,1015,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,1016,12,1,8992,
+1017,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1018,11,1,681,0,
+1019,4,32,79,0,
+66,0,74,0,69,
+0,67,0,84,0,
+95,0,82,0,69,
+0,90,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1020,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1021,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1022,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1023,11,1,829,
+0,330,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1024,
+11,1,829,0,330,
+1,-1,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1025,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1026,
+11,1,829,0,330,
+1,-1,3,107,0,
+327,3,108,0,327,
+1027,11,1,829,0,
+330,1,-1,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1028,11,
+1,829,0,330,1,
+-1,3,112,0,325,
+3,113,0,325,3,
+114,0,1029,12,1,
+9765,1030,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+1031,12,1,9795,1032,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,1033,12,
+1,9830,1034,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,1035,12,1,
+9873,1036,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+1037,12,1,9908,1038,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,1039,12,1,9959,
+1040,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,1041,
+12,1,9989,1042,5,
+63,3,109,0,327,
+3,110,0,1043,12,
+1,10018,1044,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1045,11,1,
+330,0,1046,4,26,
+82,0,79,0,84,
+0,65,0,84,0,
+73,0,79,0,78,
+0,95,0,84,0,
+89,0,80,0,69,
+0,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1047,11,1,
+829,0,330,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1048,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1049,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1050,11,
+1,829,0,330,1,
+-1,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1051,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1052,11,
+1,829,0,330,1,
+-1,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,1053,
+12,1,10641,1054,5,
+63,3,109,0,327,
+3,110,0,1055,12,
+1,10670,1056,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,1057,12,
+1,10756,1058,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,1059,12,1,10791,
+1060,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,1061,12,1,
+10842,1062,5,63,3,
+109,0,1063,12,1,
+10870,1064,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,1065,12,1,
+10917,1066,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,1067,12,1,
+11003,1068,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,1069,
+12,1,11034,1070,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,1071,
+12,1,11081,1072,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,1073,
+12,1,11114,1074,5,
+63,3,109,0,1075,
+12,1,11142,1076,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+1077,12,1,11193,1078,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,1079,
+12,1,11227,1080,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,1081,12,
+1,11261,1082,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,1083,
+12,1,11312,1084,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,1085,12,1,
+11342,1086,5,63,3,
+109,0,327,3,110,
+0,1087,12,1,11371,
+1088,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+1089,12,1,11405,1090,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1091,
+11,1,720,0,1092,
+4,52,82,0,85,
+0,78,0,95,0,
+84,0,73,0,77,
+0,69,0,95,0,
+80,0,69,0,82,
+0,77,0,73,0,
+83,0,83,0,73,
+0,79,0,78,0,
+83,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1093,11,1,829,0,
+330,1,-1,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1094,11,1,
+829,0,330,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1095,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1096,11,1,829,0,
+330,1,-1,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1097,11,1,
+829,0,330,1,-1,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1098,
+11,1,829,0,330,
+1,-1,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1099,
+11,1,829,0,330,
+1,-1,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1100,11,1,829,0,
+330,1,-1,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1101,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1102,11,1,
+829,0,330,1,-1,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1103,11,1,829,
+0,330,1,-1,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1104,11,1,
+829,0,330,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1105,11,
+1,829,0,330,1,
+-1,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1106,
+11,1,829,0,330,
+1,-1,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1107,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1108,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1109,11,
+1,829,0,330,1,
+-1,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1110,11,1,829,0,
+330,1,-1,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+1111,12,1,12932,1112,
+5,63,3,109,0,
+1113,12,1,12960,1114,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,1115,12,
+1,12990,1116,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,1117,12,1,13025,
+1118,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,1119,12,1,13072,
+1120,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,1121,12,1,13158,
+1122,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,1123,12,1,
+13204,1124,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,1125,12,1,13247,
+1126,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,1127,
+12,1,13282,1128,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,1129,12,
+1,13325,1130,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1131,11,1,
+705,0,1132,4,34,
+82,0,69,0,77,
+0,79,0,84,0,
+69,0,95,0,68,
+0,65,0,84,0,
+65,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1133,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1134,11,
+1,829,0,330,1,
+-1,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1135,11,1,829,0,
+330,1,-1,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1136,11,1,829,0,
+330,1,-1,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1137,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1138,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1139,11,1,829,0,
+330,1,-1,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1140,11,
+1,829,0,330,1,
+-1,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,1141,12,
+1,14047,1142,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+1143,12,1,14083,1144,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+1145,12,1,14116,1146,
+5,63,3,109,0,
+327,3,110,0,1147,
+12,1,14145,1148,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1149,11,
+1,273,0,1150,4,
+12,82,0,69,0,
+84,0,85,0,82,
+0,78,0,1,-1,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1151,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1152,11,1,829,0,
+330,1,-1,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1153,
+11,1,829,0,330,
+1,-1,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1154,11,1,
+829,0,330,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1155,11,
+1,829,0,330,1,
+-1,3,115,0,1156,
+12,1,14686,1157,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,1158,12,1,
+14721,1159,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,1160,12,1,
+14754,1161,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,1162,12,
+1,14805,1163,5,63,
+3,109,0,327,3,
+110,0,1164,12,1,
+14834,1165,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+1166,12,1,14883,1167,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1168,
+11,1,303,0,1169,
+4,22,83,0,84,
+0,82,0,73,0,
+78,0,71,0,95,
+0,84,0,89,0,
+80,0,69,0,1,
+-1,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1170,11,1,829,
+0,330,1,-1,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1171,11,
+1,829,0,330,1,
+-1,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1172,11,
+1,829,0,330,1,
+-1,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,1173,
+12,1,15244,1174,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,1175,12,1,
+15279,1176,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,1177,12,1,
+15326,1178,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,1179,12,1,
+15412,1180,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,1181,12,1,
+15459,1182,5,63,3,
+109,0,327,3,110,
+0,1183,12,1,15488,
+1184,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,1185,
+12,1,15523,1186,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,1187,
+12,1,15556,1188,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,1189,12,1,
+15596,1190,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1191,11,1,754,
+0,1192,4,34,83,
+0,84,0,65,0,
+84,0,69,0,95,
+0,69,0,78,0,
+84,0,82,0,89,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1193,11,1,829,0,
+330,1,-1,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1194,11,1,829,
+0,330,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1195,
+11,1,829,0,330,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,1196,12,1,15978,
+1197,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,1198,12,1,
+16029,1199,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+1200,12,1,16064,1201,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1202,
+11,1,769,0,1203,
+4,32,83,0,84,
+0,65,0,84,0,
+69,0,95,0,69,
+0,88,0,73,0,
+84,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1204,11,1,829,
+0,330,1,-1,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1205,11,1,829,
+0,330,1,-1,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1206,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1207,
+11,1,829,0,330,
+1,-1,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1208,11,1,256,0,
+1209,4,10,83,0,
+84,0,65,0,84,
+0,69,0,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1210,11,
+1,829,0,330,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1211,11,1,829,
+0,330,1,-1,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1212,11,
+1,829,0,330,1,
+-1,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,1213,12,1,
+16773,1214,5,63,3,
+109,0,327,3,110,
+0,1215,12,1,16802,
+1216,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+1217,12,1,16836,1218,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,1219,12,
+1,16866,1220,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,1221,12,
+1,16899,1222,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1223,11,1,
+744,0,1224,4,24,
+83,0,69,0,78,
+0,83,0,79,0,
+82,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+-1,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1225,
+11,1,829,0,330,
+1,-1,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1226,11,1,
+829,0,330,1,-1,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1227,
+11,1,829,0,330,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1228,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1229,11,1,
+829,0,330,1,-1,
+3,116,0,1230,12,
+1,17447,1231,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,1232,12,1,17477,
+1233,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,1234,12,
+1,17513,1235,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+1236,12,1,17558,1237,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,1238,12,1,
+17608,1239,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,1240,12,1,
+17694,1241,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,1242,12,1,17728,
+1243,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,1244,
+12,1,17763,1245,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,1246,12,
+1,17806,1247,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,1248,12,
+1,17839,1249,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,1250,12,1,17874,
+1251,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1252,11,1,801,0,
+1253,4,34,84,0,
+79,0,85,0,67,
+0,72,0,95,0,
+83,0,84,0,65,
+0,82,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,-1,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1254,
+11,1,829,0,330,
+1,-1,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1255,11,1,829,0,
+330,1,-1,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1256,11,1,
+829,0,330,1,-1,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1257,11,1,829,0,
+330,1,-1,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,1258,12,
+1,18341,1259,5,63,
+3,109,0,327,3,
+110,0,1260,12,1,
+18370,1261,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,1262,12,
+1,18416,1263,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1264,11,1,
+816,0,1265,4,30,
+84,0,79,0,85,
+0,67,0,72,0,
+95,0,69,0,78,
+0,68,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,-1,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1266,
+11,1,829,0,330,
+1,-1,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1267,11,1,829,
+0,330,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1268,11,1,
+829,0,330,1,-1,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1269,11,
+1,792,0,1270,4,
+22,84,0,79,0,
+85,0,67,0,72,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+327,1271,11,1,829,
+0,330,1,-1,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1272,11,1,829,0,
+330,1,-1,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1273,
+11,1,829,0,330,
+1,-1,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,1274,
+12,1,19058,1275,5,
+63,3,109,0,1276,
+12,1,19086,1277,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,1278,
+12,1,19133,1279,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,1280,
+12,1,19166,1281,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1282,11,
+1,783,0,1283,4,
+22,84,0,73,0,
+77,0,69,0,82,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,-1,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1284,11,
+1,829,0,330,1,
+-1,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1285,
+11,1,829,0,330,
+1,-1,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1286,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1287,11,1,829,0,
+330,1,-1,3,117,
+0,325,3,118,0,
+1288,12,1,19609,1289,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+1290,12,1,19656,1291,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,1292,12,1,
+19701,1293,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+1294,12,1,19736,1295,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,1296,12,
+1,19766,1297,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,1298,12,
+1,19799,1299,5,63,
+3,109,0,327,3,
+110,0,327,3,111,
+0,327,3,112,0,
+327,3,113,0,327,
+3,114,0,327,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1300,11,1,
+320,0,1301,4,22,
+86,0,69,0,67,
+0,84,0,79,0,
+82,0,95,0,84,
+0,89,0,80,0,
+69,0,1,-1,3,
+115,0,327,3,116,
+0,327,3,117,0,
+327,3,118,0,327,
+3,119,0,327,3,
+120,0,327,3,121,
+0,327,3,122,0,
+327,3,48,0,327,
+3,49,0,327,3,
+50,0,327,3,51,
+0,327,3,52,0,
+327,3,53,0,327,
+3,54,0,327,3,
+55,0,327,3,56,
+0,327,3,57,0,
+327,3,65,0,327,
+3,66,0,327,3,
+67,0,327,3,68,
+0,327,3,69,0,
+327,3,70,0,327,
+3,71,0,327,3,
+72,0,327,3,73,
+0,327,3,74,0,
+327,3,75,0,327,
+3,76,0,327,3,
+77,0,327,3,78,
+0,327,3,79,0,
+327,3,80,0,327,
+3,81,0,327,3,
+82,0,327,3,83,
+0,327,3,84,0,
+327,3,85,0,327,
+3,86,0,327,3,
+87,0,327,3,88,
+0,327,3,89,0,
+327,3,90,0,327,
+3,95,0,327,3,
+97,0,327,3,98,
+0,327,3,99,0,
+327,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1302,11,1,
+829,0,330,1,-1,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,327,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1303,11,1,829,0,
+330,1,-1,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1304,11,
+1,829,0,330,1,
+-1,3,100,0,327,
+3,101,0,327,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1305,11,1,
+829,0,330,1,-1,
+3,102,0,327,3,
+103,0,327,3,104,
+0,327,3,105,0,
+327,3,106,0,327,
+3,107,0,327,3,
+108,0,327,1306,11,
+1,829,0,330,1,
+-1,3,119,0,1307,
+12,1,20330,1308,5,
+63,3,109,0,327,
+3,110,0,327,3,
+111,0,327,3,112,
+0,327,3,113,0,
+327,3,114,0,327,
+3,115,0,327,3,
+116,0,327,3,117,
+0,327,3,118,0,
+327,3,119,0,327,
+3,120,0,327,3,
+121,0,327,3,122,
+0,327,3,48,0,
+327,3,49,0,327,
+3,50,0,327,3,
+51,0,327,3,52,
+0,327,3,53,0,
+327,3,54,0,327,
+3,55,0,327,3,
+56,0,327,3,57,
+0,327,3,65,0,
+327,3,66,0,327,
+3,67,0,327,3,
+68,0,327,3,69,
+0,327,3,70,0,
+327,3,71,0,327,
+3,72,0,327,3,
+73,0,327,3,74,
+0,327,3,75,0,
+327,3,76,0,327,
+3,77,0,327,3,
+78,0,327,3,79,
+0,327,3,80,0,
+327,3,81,0,327,
+3,82,0,327,3,
+83,0,327,3,84,
+0,327,3,85,0,
+327,3,86,0,327,
+3,87,0,327,3,
+88,0,327,3,89,
+0,327,3,90,0,
+327,3,95,0,327,
+3,97,0,327,3,
+98,0,327,3,99,
+0,327,3,100,0,
+327,3,101,0,327,
+3,102,0,327,3,
+103,0,327,3,104,
+0,1309,12,1,20380,
+1310,5,63,3,109,
+0,327,3,110,0,
+327,3,111,0,327,
+3,112,0,327,3,
+113,0,327,3,114,
+0,327,3,115,0,
+327,3,116,0,327,
+3,117,0,327,3,
+118,0,327,3,119,
+0,327,3,120,0,
+327,3,121,0,327,
+3,122,0,327,3,
+48,0,327,3,49,
+0,327,3,50,0,
+327,3,51,0,327,
+3,52,0,327,3,
+53,0,327,3,54,
+0,327,3,55,0,
+327,3,56,0,327,
+3,57,0,327,3,
+65,0,327,3,66,
+0,327,3,67,0,
+327,3,68,0,327,
+3,69,0,327,3,
+70,0,327,3,71,
+0,327,3,72,0,
+327,3,73,0,327,
+3,74,0,327,3,
+75,0,327,3,76,
+0,327,3,77,0,
+327,3,78,0,327,
+3,79,0,327,3,
+80,0,327,3,81,
+0,327,3,82,0,
+327,3,83,0,327,
+3,84,0,327,3,
+85,0,327,3,86,
+0,327,3,87,0,
+327,3,88,0,327,
+3,89,0,327,3,
+90,0,327,3,95,
+0,327,3,97,0,
+327,3,98,0,327,
+3,99,0,327,3,
+100,0,327,3,101,
+0,327,3,102,0,
+327,3,103,0,327,
+3,104,0,327,3,
+105,0,1311,12,1,
+20431,1312,5,63,3,
+109,0,327,3,110,
+0,327,3,111,0,
+327,3,112,0,327,
+3,113,0,327,3,
+114,0,327,3,115,
+0,327,3,116,0,
+327,3,117,0,327,
+3,118,0,327,3,
+119,0,327,3,120,
+0,327,3,121,0,
+327,3,122,0,327,
+3,48,0,327,3,
+49,0,327,3,50,
+0,327,3,51,0,
+327,3,52,0,327,
+3,53,0,327,3,
+54,0,327,3,55,
+0,327,3,56,0,
+327,3,57,0,327,
+3,65,0,327,3,
+66,0,327,3,67,
+0,327,3,68,0,
+327,3,69,0,327,
+3,70,0,327,3,
+71,0,327,3,72,
+0,327,3,73,0,
+327,3,74,0,327,
+3,75,0,327,3,
+76,0,327,3,77,
+0,327,3,78,0,
+327,3,79,0,327,
+3,80,0,327,3,
+81,0,327,3,82,
+0,327,3,83,0,
+327,3,84,0,327,
+3,85,0,327,3,
+86,0,327,3,87,
+0,327,3,88,0,
+327,3,89,0,327,
+3,90,0,327,3,
+95,0,327,3,97,
+0,327,3,98,0,
+327,3,99,0,327,
+3,100,0,327,3,
+101,0,327,3,102,
+0,327,3,103,0,
+327,3,104,0,327,
+3,105,0,327,3,
+106,0,327,3,107,
+0,327,3,108,0,
+1313,12,1,20485,1314,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+1315,12,1,20532,1316,
+5,63,3,109,0,
+327,3,110,0,327,
+3,111,0,327,3,
+112,0,327,3,113,
+0,327,3,114,0,
+327,3,115,0,327,
+3,116,0,327,3,
+117,0,327,3,118,
+0,327,3,119,0,
+327,3,120,0,327,
+3,121,0,327,3,
+122,0,327,3,48,
+0,327,3,49,0,
+327,3,50,0,327,
+3,51,0,327,3,
+52,0,327,3,53,
+0,327,3,54,0,
+327,3,55,0,327,
+3,56,0,327,3,
+57,0,327,3,65,
+0,327,3,66,0,
+327,3,67,0,327,
+3,68,0,327,3,
+69,0,327,3,70,
+0,327,3,71,0,
+327,3,72,0,327,
+3,73,0,327,3,
+74,0,327,3,75,
+0,327,3,76,0,
+327,3,77,0,327,
+3,78,0,327,3,
+79,0,327,3,80,
+0,327,3,81,0,
+327,3,82,0,327,
+3,83,0,327,3,
+84,0,327,3,85,
+0,327,3,86,0,
+327,3,87,0,327,
+3,88,0,327,3,
+89,0,327,3,90,
+0,327,3,95,0,
+327,3,97,0,327,
+3,98,0,327,3,
+99,0,327,3,100,
+0,327,3,101,0,
+327,3,102,0,327,
+3,103,0,327,3,
+104,0,327,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1317,
+11,1,229,0,1318,
+4,10,87,0,72,
+0,73,0,76,0,
+69,0,1,-1,3,
+102,0,327,3,103,
+0,327,3,104,0,
+327,3,105,0,327,
+3,106,0,327,3,
+107,0,327,3,108,
+0,327,1319,11,1,
+829,0,330,1,-1,
+1320,11,1,829,0,
+330,1,-1,3,106,
+0,327,3,107,0,
+327,3,108,0,327,
+1321,11,1,829,0,
+330,1,-1,3,105,
+0,327,3,106,0,
+327,3,107,0,327,
+3,108,0,327,1322,
+11,1,829,0,330,
+1,-1,3,120,0,
+325,3,121,0,325,
+3,122,0,325,3,
+123,0,1323,12,1,
+40301,1324,5,0,1325,
+11,1,51,0,1326,
+4,20,76,0,69,
+0,70,0,84,0,
+95,0,66,0,82,
+0,65,0,67,0,
+69,0,1,-1,3,
+124,0,1327,12,1,
+43084,1328,5,1,3,
+124,0,1329,12,1,
+43196,1330,5,0,1331,
+11,1,191,0,1332,
+4,26,83,0,84,
+0,82,0,79,0,
+75,0,69,0,95,
+0,83,0,84,0,
+82,0,79,0,75,
+0,69,0,1,-1,
+1333,11,1,165,0,
+1334,4,12,83,0,
+84,0,82,0,79,
+0,75,0,69,0,
+1,-1,3,125,0,
+1335,12,1,40666,1336,
+5,0,1337,11,1,
+56,0,1338,4,22,
+82,0,73,0,71,
+0,72,0,84,0,
+95,0,66,0,82,
+0,65,0,67,0,
+69,0,1,-1,3,
+126,0,1339,12,1,
+43325,1340,5,0,1341,
+11,1,175,0,1342,
+4,10,84,0,73,
+0,76,0,68,0,
+69,0,1,-1,1343,
+11,1,882,0,244,
+1,-1,1344,4,12,
+83,0,84,0,82,
+0,73,0,78,0,
+71,0,1345,12,1,
+44893,1346,5,119,3,
+1,0,1347,12,1,
+44894,1348,5,0,1349,
+11,1,956,0,165,
+1,-1,3,9,0,
+1347,3,10,0,1350,
+12,1,45095,1351,5,
+0,1352,11,1,962,
+0,165,1,-1,3,
+13,0,1347,3,0,
+3,1347,3,96,33,
+1347,3,32,0,1347,
+3,33,0,1347,3,
+34,0,1353,12,1,
+46442,1354,5,0,1355,
+11,1,1064,0,165,
+1,-1,3,35,0,
+1347,3,36,0,1347,
+3,37,0,1347,3,
+38,0,1347,3,40,
+0,1347,3,41,0,
+1347,3,42,0,1347,
+3,43,0,1347,3,
+44,0,1347,3,45,
+0,1347,3,46,0,
+1347,3,47,0,1347,
+3,3,9,1347,3,
+49,0,1347,3,50,
+0,1347,3,48,0,
+1347,3,52,0,1347,
+3,53,0,1347,3,
+51,0,1347,3,55,
+0,1347,3,56,0,
+1347,3,54,0,1347,
+3,59,0,1347,3,
+57,0,1347,3,61,
+0,1347,3,62,0,
+1347,3,60,0,1347,
+3,64,0,1347,3,
+65,0,1347,3,66,
+0,1347,3,67,0,
+1347,3,68,0,1347,
+3,69,0,1347,3,
+70,0,1347,3,71,
+0,1347,3,72,0,
+1347,3,73,0,1347,
+3,74,0,1347,3,
+75,0,1347,3,76,
+0,1347,3,77,0,
+1347,3,78,0,1347,
+3,79,0,1347,3,
+80,0,1347,3,81,
+0,1347,3,82,0,
+1347,3,83,0,1347,
+3,84,0,1347,3,
+85,0,1347,3,86,
+0,1347,3,87,0,
+1347,3,88,0,1347,
+3,89,0,1347,3,
+90,0,1347,3,91,
+0,1347,3,92,0,
+1356,12,1,45238,1357,
+5,8,3,110,0,
+1358,12,1,45267,1359,
+5,0,1360,11,1,
+967,0,165,1,-1,
+3,10,0,1361,12,
+1,45796,1362,5,5,
+3,10,0,1361,3,
+13,0,1363,12,1,
+45633,1364,5,5,3,
+10,0,1361,3,13,
+0,1363,3,92,0,
+1365,12,1,45901,1366,
+5,0,1367,11,1,
+1020,0,165,1,-1,
+3,9,0,1368,12,
+1,45714,1369,5,5,
+3,10,0,1361,3,
+13,0,1363,3,92,
+0,1365,3,9,0,
+1368,3,32,0,1370,
+12,1,45553,1371,5,
+5,3,10,0,1361,
+3,13,0,1363,3,
+92,0,1365,3,9,
+0,1368,3,32,0,
+1370,0,165,1,-1,
+0,165,1,-1,3,
+32,0,1370,0,165,
+1,-1,3,92,0,
+1365,3,9,0,1368,
+3,32,0,1370,0,
+165,1,-1,3,13,
+0,1363,3,92,0,
+1372,12,1,46183,1373,
+5,0,1374,11,1,
+1003,0,165,1,-1,
+3,116,0,1375,12,
+1,45393,1376,5,0,
+1377,11,1,979,0,
+165,1,-1,3,34,
+0,1378,12,1,46307,
+1379,5,0,1380,11,
+1,991,0,165,1,
+-1,3,9,0,1368,
+3,32,0,1370,1381,
+11,1,1015,0,165,
+1,-1,3,93,0,
+1347,3,94,0,1347,
+3,95,0,1347,3,
+96,0,1347,3,97,
+0,1347,3,98,0,
+1347,3,99,0,1347,
+3,100,0,1347,3,
+101,0,1347,3,102,
+0,1347,3,103,0,
+1347,3,104,0,1347,
+3,105,0,1347,3,
+106,0,1347,3,107,
+0,1347,3,108,0,
+1347,3,109,0,1347,
+3,110,0,1347,3,
+111,0,1347,3,112,
+0,1347,3,113,0,
+1347,3,114,0,1347,
+3,115,0,1347,3,
+116,0,1347,3,117,
+0,1347,3,118,0,
+1347,3,119,0,1347,
+3,120,0,1347,3,
+121,0,1347,3,122,
+0,1347,3,123,0,
+1347,3,124,0,1347,
+3,125,0,1347,3,
+96,6,1347,3,126,
+0,1347,3,58,15,
+1347,3,59,15,1347,
+3,136,4,1347,3,
+160,0,1347,3,15,
+7,1347,3,170,0,
+1347,3,171,0,1347,
+3,172,0,1347,3,
+173,0,1347,3,178,
+0,1347,3,176,2,
+1347,3,187,0,1347,
+3,187,1,1347,3,
+192,0,1347,3,41,
+32,1347,3,197,1,
+1347,3,0,224,1347,
+3,40,32,1347,3,
+63,32,1347,0,165,
+1,-1,1382,5,92,
+266,1383,10,266,1,
+19,567,1384,10,567,
+1,47,259,1385,10,
+259,1,92,1150,1386,
+10,1150,1,50,1019,
+1387,10,1019,1,80,
+1169,1388,10,1169,1,
+53,173,1389,10,173,
+1,37,596,1390,10,
+596,1,43,678,1391,
+10,678,1,51,607,
+1392,10,607,1,46,
+196,1393,10,196,1,
+16,200,1394,10,200,
+1,17,650,1395,10,
+650,1,68,879,1396,
+10,879,1,75,355,
+1397,10,355,1,35,
+208,1398,10,208,1,
+20,214,1399,10,214,
+1,6,184,1400,10,
+184,1,22,284,1401,
+10,284,1,21,244,
+1402,10,244,1,94,
+1270,1403,10,1270,1,
+88,475,1404,10,475,
+1,64,698,1405,10,
+698,1,49,351,1406,
+10,351,1,28,300,
+1407,10,300,1,25,
+687,1408,10,687,1,
+42,770,1409,10,770,
+1,69,1209,1410,10,
+1209,1,48,318,1411,
+10,318,1,41,828,
+1412,10,828,1,57,
+218,1413,10,218,1,
+4,324,1414,10,324,
+1,23,487,1415,10,
+487,1,63,1224,1416,
+10,1224,1,84,306,
+1417,10,306,1,29,
+230,1418,10,230,1,
+5,298,1419,10,298,
+1,31,618,1420,10,
+618,1,52,867,1421,
+10,867,1,76,1092,
+1422,10,1092,1,83,
+995,1423,10,995,1,
+81,973,1424,10,973,
+1,77,171,1425,10,
+171,1,30,264,1426,
+10,264,1,7,825,
+1427,10,825,1,73,
+182,1428,10,182,1,
+10,347,1429,10,347,
+1,27,255,1430,10,
+255,1,93,224,1431,
+10,224,1,14,270,
+1432,10,270,1,24,
+709,1433,10,709,1,
+54,282,1434,10,282,
+1,9,1203,1435,10,
+1203,1,86,492,1436,
+10,492,1,62,1437,
+4,30,83,0,84,
+0,82,0,73,0,
+78,0,71,0,95,
+0,67,0,79,0,
+78,0,83,0,84,
+0,65,0,78,0,
+84,0,1438,10,1437,
+1,3,1318,1439,10,
+1318,1,45,330,1440,
+10,330,1,91,545,
+1441,10,545,1,66,
+1046,1442,10,1046,1,
+56,396,1443,10,396,
+1,58,1326,1444,10,
+1326,1,12,525,1445,
+10,525,1,44,294,
+1446,10,294,1,40,
+1132,1447,10,1132,1,
+82,585,1448,10,585,
+1,67,924,1449,10,
+924,1,78,1342,1450,
+10,1342,1,36,1334,
+1451,10,1334,1,34,
+765,1452,10,765,1,
+70,1283,1453,10,1283,
+1,87,843,1454,10,
+843,1,74,320,1455,
+10,320,1,26,419,
+1456,10,419,1,59,
+192,1457,10,192,1,
+33,288,1458,10,288,
+1,11,190,1459,10,
+190,1,38,513,1460,
+10,513,1,61,806,
+1461,10,806,1,72,
+1265,1462,10,1265,1,
+90,308,1463,10,308,
+1,15,947,1464,10,
+947,1,79,1332,1465,
+10,1332,1,39,314,
+1466,10,314,1,32,
+1253,1467,10,1253,1,
+89,369,1468,10,369,
+1,60,1301,1469,10,
+1301,1,55,1338,1470,
+10,1338,1,13,1192,
+1471,10,1192,1,85,
+220,1472,10,220,1,
+18,206,1473,10,206,
+1,8,753,1474,10,
+753,1,71,443,1475,
+10,443,1,65,1476,
+5,0,0};
+ new Tfactory(this,"MINUS",new TCreator(MINUS_factory));
+ new Tfactory(this,"DEFAULT_STATE",new TCreator(DEFAULT_STATE_factory));
+ new Tfactory(this,"INTEGER_CONSTANT",new TCreator(INTEGER_CONSTANT_factory));
+ new Tfactory(this,"RETURN",new TCreator(RETURN_factory));
+ new Tfactory(this,"OBJECT_REZ_EVENT",new TCreator(OBJECT_REZ_EVENT_factory));
+ new Tfactory(this,"STRING_TYPE",new TCreator(STRING_TYPE_factory));
+ new Tfactory(this,"EXCLAMATION",new TCreator(EXCLAMATION_factory));
+ new Tfactory(this,"ELSE",new TCreator(ELSE_factory));
+ new Tfactory(this,"INTEGER_TYPE",new TCreator(INTEGER_TYPE_factory));
+ new Tfactory(this,"FOR",new TCreator(FOR_factory));
+ new Tfactory(this,"LEFT_PAREN",new TCreator(LEFT_PAREN_factory));
+ new Tfactory(this,"RIGHT_PAREN",new TCreator(RIGHT_PAREN_factory));
+ new Tfactory(this,"HTTP_RESPONSE_EVENT",new TCreator(HTTP_RESPONSE_EVENT_factory));
+ new Tfactory(this,"MOVING_END_EVENT",new TCreator(MOVING_END_EVENT_factory));
+ new Tfactory(this,"CARET",new TCreator(CARET_factory));
+ new Tfactory(this,"STAR",new TCreator(STAR_factory));
+ new Tfactory(this,"PLUS_EQUALS",new TCreator(PLUS_EQUALS_factory));
+ new Tfactory(this,"PERCENT",new TCreator(PERCENT_factory));
+ new Tfactory(this,"SLASH",new TCreator(SLASH_factory));
+ new Tfactory(this,"FLOAT_CONSTANT",new TCreator(FLOAT_CONSTANT_factory));
+ new Tfactory(this,"TOUCH_EVENT",new TCreator(TOUCH_EVENT_factory));
+ new Tfactory(this,"COLLISION_START_EVENT",new TCreator(COLLISION_START_EVENT_factory));
+ new Tfactory(this,"JUMP",new TCreator(JUMP_factory));
+ new Tfactory(this,"RIGHT_BRACKET",new TCreator(RIGHT_BRACKET_factory));
+ new Tfactory(this,"LEFT_ANGLE",new TCreator(LEFT_ANGLE_factory));
+ new Tfactory(this,"IF",new TCreator(IF_factory));
+ new Tfactory(this,"LAND_COLLISION_EVENT",new TCreator(LAND_COLLISION_EVENT_factory));
+ new Tfactory(this,"STATE",new TCreator(STATE_factory));
+ new Tfactory(this,"RIGHT_SHIFT",new TCreator(RIGHT_SHIFT_factory));
+ new Tfactory(this,"LIST_TYPE",new TCreator(LIST_TYPE_factory));
+ new Tfactory(this,"INCREMENT",new TCreator(INCREMENT_factory));
+ new Tfactory(this,"AT",new TCreator(AT_factory));
+ new Tfactory(this,"COLLISION_END_EVENT",new TCreator(COLLISION_END_EVENT_factory));
+ new Tfactory(this,"SENSOR_EVENT",new TCreator(SENSOR_EVENT_factory));
+ new Tfactory(this,"EQUALS_EQUALS",new TCreator(EQUALS_EQUALS_factory));
+ new Tfactory(this,"DECREMENT",new TCreator(DECREMENT_factory));
+ new Tfactory(this,"LESS_EQUALS",new TCreator(LESS_EQUALS_factory));
+ new Tfactory(this,"FLOAT_TYPE",new TCreator(FLOAT_TYPE_factory));
+ new Tfactory(this,"MOVING_START_EVENT",new TCreator(MOVING_START_EVENT_factory));
+ new Tfactory(this,"RUN_TIME_PERMISSIONS_EVENT",new TCreator(RUN_TIME_PERMISSIONS_EVENT_factory));
+ new Tfactory(this,"ON_REZ_EVENT",new TCreator(ON_REZ_EVENT_factory));
+ new Tfactory(this,"NO_SENSOR_EVENT",new TCreator(NO_SENSOR_EVENT_factory));
+ new Tfactory(this,"EXCLAMATION_EQUALS",new TCreator(EXCLAMATION_EQUALS_factory));
+ new Tfactory(this,"MINUS_EQUALS",new TCreator(MINUS_EQUALS_factory));
+ new Tfactory(this,"LISTEN_EVENT",new TCreator(LISTEN_EVENT_factory));
+ new Tfactory(this,"PERCENT_EQUALS",new TCreator(PERCENT_EQUALS_factory));
+ new Tfactory(this,"LEFT_BRACKET",new TCreator(LEFT_BRACKET_factory));
+ new Tfactory(this,"HEX_INTEGER_CONSTANT",new TCreator(HEX_INTEGER_CONSTANT_factory));
+ new Tfactory(this,"COMMA",new TCreator(COMMA_factory));
+ new Tfactory(this,"PERIOD",new TCreator(PERIOD_factory));
+ new Tfactory(this,"KEY_TYPE",new TCreator(KEY_TYPE_factory));
+ new Tfactory(this,"SLASH_EQUALS",new TCreator(SLASH_EQUALS_factory));
+ new Tfactory(this,"STATE_EXIT_EVENT",new TCreator(STATE_EXIT_EVENT_factory));
+ new Tfactory(this,"COLLISION_EVENT",new TCreator(COLLISION_EVENT_factory));
+ new Tfactory(this,"STRING_CONSTANT",new TCreator(STRING_CONSTANT_factory));
+ new Tfactory(this,"WHILE",new TCreator(WHILE_factory));
+ new Tfactory(this,"IDENT",new TCreator(IDENT_factory));
+ new Tfactory(this,"DATASERVER_EVENT",new TCreator(DATASERVER_EVENT_factory));
+ new Tfactory(this,"ROTATION_TYPE",new TCreator(ROTATION_TYPE_factory));
+ new Tfactory(this,"AT_ROT_TARGET_EVENT",new TCreator(AT_ROT_TARGET_EVENT_factory));
+ new Tfactory(this,"LEFT_BRACE",new TCreator(LEFT_BRACE_factory));
+ new Tfactory(this,"DO",new TCreator(DO_factory));
+ new Tfactory(this,"LEFT_SHIFT",new TCreator(LEFT_SHIFT_factory));
+ new Tfactory(this,"REMOTE_DATA_EVENT",new TCreator(REMOTE_DATA_EVENT_factory));
+ new Tfactory(this,"EMAIL_EVENT",new TCreator(EMAIL_EVENT_factory));
+ new Tfactory(this,"NOT_AT_ROT_TARGET_EVENT",new TCreator(NOT_AT_ROT_TARGET_EVENT_factory));
+ new Tfactory(this,"TILDE",new TCreator(TILDE_factory));
+ new Tfactory(this,"STROKE",new TCreator(STROKE_factory));
+ new Tfactory(this,"LAND_COLLISION_END_EVENT",new TCreator(LAND_COLLISION_END_EVENT_factory));
+ new Tfactory(this,"TIMER_EVENT",new TCreator(TIMER_EVENT_factory));
+ new Tfactory(this,"MONEY_EVENT",new TCreator(MONEY_EVENT_factory));
+ new Tfactory(this,"RIGHT_ANGLE",new TCreator(RIGHT_ANGLE_factory));
+ new Tfactory(this,"AT_TARGET_EVENT",new TCreator(AT_TARGET_EVENT_factory));
+ new Tfactory(this,"AMP",new TCreator(AMP_factory));
+ new Tfactory(this,"SEMICOLON",new TCreator(SEMICOLON_factory));
+ new Tfactory(this,"AMP_AMP",new TCreator(AMP_AMP_factory));
+ new Tfactory(this,"CHANGED_EVENT",new TCreator(CHANGED_EVENT_factory));
+ new Tfactory(this,"LINK_MESSAGE_EVENT",new TCreator(LINK_MESSAGE_EVENT_factory));
+ new Tfactory(this,"TOUCH_END_EVENT",new TCreator(TOUCH_END_EVENT_factory));
+ new Tfactory(this,"EQUALS",new TCreator(EQUALS_factory));
+ new Tfactory(this,"NOT_AT_TARGET_EVENT",new TCreator(NOT_AT_TARGET_EVENT_factory));
+ new Tfactory(this,"STROKE_STROKE",new TCreator(STROKE_STROKE_factory));
+ new Tfactory(this,"GREATER_EQUALS",new TCreator(GREATER_EQUALS_factory));
+ new Tfactory(this,"TOUCH_START_EVENT",new TCreator(TOUCH_START_EVENT_factory));
+ new Tfactory(this,"ATTACH_EVENT",new TCreator(ATTACH_EVENT_factory));
+ new Tfactory(this,"VECTOR_TYPE",new TCreator(VECTOR_TYPE_factory));
+ new Tfactory(this,"RIGHT_BRACE",new TCreator(RIGHT_BRACE_factory));
+ new Tfactory(this,"STATE_ENTRY_EVENT",new TCreator(STATE_ENTRY_EVENT_factory));
+ new Tfactory(this,"PLUS",new TCreator(PLUS_factory));
+ new Tfactory(this,"STAR_EQUALS",new TCreator(STAR_EQUALS_factory));
+ new Tfactory(this,"LAND_COLLISION_START_EVENT",new TCreator(LAND_COLLISION_START_EVENT_factory));
+ new Tfactory(this,"CONTROL_EVENT",new TCreator(CONTROL_EVENT_factory));
+}
+public static object MINUS_factory(Lexer yyl) { return new MINUS(yyl);}
+public static object DEFAULT_STATE_factory(Lexer yyl) { return new DEFAULT_STATE(yyl);}
+public static object INTEGER_CONSTANT_factory(Lexer yyl) { return new INTEGER_CONSTANT(yyl);}
+public static object RETURN_factory(Lexer yyl) { return new RETURN(yyl);}
+public static object OBJECT_REZ_EVENT_factory(Lexer yyl) { return new OBJECT_REZ_EVENT(yyl);}
+public static object STRING_TYPE_factory(Lexer yyl) { return new STRING_TYPE(yyl);}
+public static object EXCLAMATION_factory(Lexer yyl) { return new EXCLAMATION(yyl);}
+public static object ELSE_factory(Lexer yyl) { return new ELSE(yyl);}
+public static object INTEGER_TYPE_factory(Lexer yyl) { return new INTEGER_TYPE(yyl);}
+public static object FOR_factory(Lexer yyl) { return new FOR(yyl);}
+public static object LEFT_PAREN_factory(Lexer yyl) { return new LEFT_PAREN(yyl);}
+public static object RIGHT_PAREN_factory(Lexer yyl) { return new RIGHT_PAREN(yyl);}
+public static object HTTP_RESPONSE_EVENT_factory(Lexer yyl) { return new HTTP_RESPONSE_EVENT(yyl);}
+public static object MOVING_END_EVENT_factory(Lexer yyl) { return new MOVING_END_EVENT(yyl);}
+public static object CARET_factory(Lexer yyl) { return new CARET(yyl);}
+public static object STAR_factory(Lexer yyl) { return new STAR(yyl);}
+public static object PLUS_EQUALS_factory(Lexer yyl) { return new PLUS_EQUALS(yyl);}
+public static object PERCENT_factory(Lexer yyl) { return new PERCENT(yyl);}
+public static object SLASH_factory(Lexer yyl) { return new SLASH(yyl);}
+public static object FLOAT_CONSTANT_factory(Lexer yyl) { return new FLOAT_CONSTANT(yyl);}
+public static object TOUCH_EVENT_factory(Lexer yyl) { return new TOUCH_EVENT(yyl);}
+public static object COLLISION_START_EVENT_factory(Lexer yyl) { return new COLLISION_START_EVENT(yyl);}
+public static object JUMP_factory(Lexer yyl) { return new JUMP(yyl);}
+public static object RIGHT_BRACKET_factory(Lexer yyl) { return new RIGHT_BRACKET(yyl);}
+public static object LEFT_ANGLE_factory(Lexer yyl) { return new LEFT_ANGLE(yyl);}
+public static object IF_factory(Lexer yyl) { return new IF(yyl);}
+public static object LAND_COLLISION_EVENT_factory(Lexer yyl) { return new LAND_COLLISION_EVENT(yyl);}
+public static object STATE_factory(Lexer yyl) { return new STATE(yyl);}
+public static object RIGHT_SHIFT_factory(Lexer yyl) { return new RIGHT_SHIFT(yyl);}
+public static object LIST_TYPE_factory(Lexer yyl) { return new LIST_TYPE(yyl);}
+public static object INCREMENT_factory(Lexer yyl) { return new INCREMENT(yyl);}
+public static object AT_factory(Lexer yyl) { return new AT(yyl);}
+public static object COLLISION_END_EVENT_factory(Lexer yyl) { return new COLLISION_END_EVENT(yyl);}
+public static object SENSOR_EVENT_factory(Lexer yyl) { return new SENSOR_EVENT(yyl);}
+public static object EQUALS_EQUALS_factory(Lexer yyl) { return new EQUALS_EQUALS(yyl);}
+public static object DECREMENT_factory(Lexer yyl) { return new DECREMENT(yyl);}
+public static object LESS_EQUALS_factory(Lexer yyl) { return new LESS_EQUALS(yyl);}
+public static object FLOAT_TYPE_factory(Lexer yyl) { return new FLOAT_TYPE(yyl);}
+public static object MOVING_START_EVENT_factory(Lexer yyl) { return new MOVING_START_EVENT(yyl);}
+public static object RUN_TIME_PERMISSIONS_EVENT_factory(Lexer yyl) { return new RUN_TIME_PERMISSIONS_EVENT(yyl);}
+public static object ON_REZ_EVENT_factory(Lexer yyl) { return new ON_REZ_EVENT(yyl);}
+public static object NO_SENSOR_EVENT_factory(Lexer yyl) { return new NO_SENSOR_EVENT(yyl);}
+public static object EXCLAMATION_EQUALS_factory(Lexer yyl) { return new EXCLAMATION_EQUALS(yyl);}
+public static object MINUS_EQUALS_factory(Lexer yyl) { return new MINUS_EQUALS(yyl);}
+public static object LISTEN_EVENT_factory(Lexer yyl) { return new LISTEN_EVENT(yyl);}
+public static object PERCENT_EQUALS_factory(Lexer yyl) { return new PERCENT_EQUALS(yyl);}
+public static object LEFT_BRACKET_factory(Lexer yyl) { return new LEFT_BRACKET(yyl);}
+public static object HEX_INTEGER_CONSTANT_factory(Lexer yyl) { return new HEX_INTEGER_CONSTANT(yyl);}
+public static object COMMA_factory(Lexer yyl) { return new COMMA(yyl);}
+public static object PERIOD_factory(Lexer yyl) { return new PERIOD(yyl);}
+public static object KEY_TYPE_factory(Lexer yyl) { return new KEY_TYPE(yyl);}
+public static object SLASH_EQUALS_factory(Lexer yyl) { return new SLASH_EQUALS(yyl);}
+public static object STATE_EXIT_EVENT_factory(Lexer yyl) { return new STATE_EXIT_EVENT(yyl);}
+public static object COLLISION_EVENT_factory(Lexer yyl) { return new COLLISION_EVENT(yyl);}
+public static object STRING_CONSTANT_factory(Lexer yyl) { return new STRING_CONSTANT(yyl);}
+public static object WHILE_factory(Lexer yyl) { return new WHILE(yyl);}
+public static object IDENT_factory(Lexer yyl) { return new IDENT(yyl);}
+public static object DATASERVER_EVENT_factory(Lexer yyl) { return new DATASERVER_EVENT(yyl);}
+public static object ROTATION_TYPE_factory(Lexer yyl) { return new ROTATION_TYPE(yyl);}
+public static object AT_ROT_TARGET_EVENT_factory(Lexer yyl) { return new AT_ROT_TARGET_EVENT(yyl);}
+public static object LEFT_BRACE_factory(Lexer yyl) { return new LEFT_BRACE(yyl);}
+public static object DO_factory(Lexer yyl) { return new DO(yyl);}
+public static object LEFT_SHIFT_factory(Lexer yyl) { return new LEFT_SHIFT(yyl);}
+public static object REMOTE_DATA_EVENT_factory(Lexer yyl) { return new REMOTE_DATA_EVENT(yyl);}
+public static object EMAIL_EVENT_factory(Lexer yyl) { return new EMAIL_EVENT(yyl);}
+public static object NOT_AT_ROT_TARGET_EVENT_factory(Lexer yyl) { return new NOT_AT_ROT_TARGET_EVENT(yyl);}
+public static object TILDE_factory(Lexer yyl) { return new TILDE(yyl);}
+public static object STROKE_factory(Lexer yyl) { return new STROKE(yyl);}
+public static object LAND_COLLISION_END_EVENT_factory(Lexer yyl) { return new LAND_COLLISION_END_EVENT(yyl);}
+public static object TIMER_EVENT_factory(Lexer yyl) { return new TIMER_EVENT(yyl);}
+public static object MONEY_EVENT_factory(Lexer yyl) { return new MONEY_EVENT(yyl);}
+public static object RIGHT_ANGLE_factory(Lexer yyl) { return new RIGHT_ANGLE(yyl);}
+public static object AT_TARGET_EVENT_factory(Lexer yyl) { return new AT_TARGET_EVENT(yyl);}
+public static object AMP_factory(Lexer yyl) { return new AMP(yyl);}
+public static object SEMICOLON_factory(Lexer yyl) { return new SEMICOLON(yyl);}
+public static object AMP_AMP_factory(Lexer yyl) { return new AMP_AMP(yyl);}
+public static object CHANGED_EVENT_factory(Lexer yyl) { return new CHANGED_EVENT(yyl);}
+public static object LINK_MESSAGE_EVENT_factory(Lexer yyl) { return new LINK_MESSAGE_EVENT(yyl);}
+public static object TOUCH_END_EVENT_factory(Lexer yyl) { return new TOUCH_END_EVENT(yyl);}
+public static object EQUALS_factory(Lexer yyl) { return new EQUALS(yyl);}
+public static object NOT_AT_TARGET_EVENT_factory(Lexer yyl) { return new NOT_AT_TARGET_EVENT(yyl);}
+public static object STROKE_STROKE_factory(Lexer yyl) { return new STROKE_STROKE(yyl);}
+public static object GREATER_EQUALS_factory(Lexer yyl) { return new GREATER_EQUALS(yyl);}
+public static object TOUCH_START_EVENT_factory(Lexer yyl) { return new TOUCH_START_EVENT(yyl);}
+public static object ATTACH_EVENT_factory(Lexer yyl) { return new ATTACH_EVENT(yyl);}
+public static object VECTOR_TYPE_factory(Lexer yyl) { return new VECTOR_TYPE(yyl);}
+public static object RIGHT_BRACE_factory(Lexer yyl) { return new RIGHT_BRACE(yyl);}
+public static object STATE_ENTRY_EVENT_factory(Lexer yyl) { return new STATE_ENTRY_EVENT(yyl);}
+public static object PLUS_factory(Lexer yyl) { return new PLUS(yyl);}
+public static object STAR_EQUALS_factory(Lexer yyl) { return new STAR_EQUALS(yyl);}
+public static object LAND_COLLISION_START_EVENT_factory(Lexer yyl) { return new LAND_COLLISION_START_EVENT(yyl);}
+public static object CONTROL_EVENT_factory(Lexer yyl) { return new CONTROL_EVENT(yyl);}
+public override TOKEN OldAction(Lexer yym,ref string yytext,int action, ref bool reject) {
+ switch(action) {
+ case -1: break;
+ case 1015: { ((LSLTokens)yym).str += '\\'; }
+ break;
+ case 991: { ((LSLTokens)yym).str += "\\\""; }
+ break;
+ case 1020: { }
+ break;
+ case 1064: { yym.yy_begin("YYINITIAL"); ((LSLTokens)yym).yytext = ((LSLTokens)yym).str; ((LSLTokens)yym).str = String.Empty; return new STRING_CONSTANT(yym); }
+ break;
+ case 1069: ;
+ break;
+ case 1073: ;
+ break;
+ case 1003: { ((LSLTokens)yym).str += "\\\\"; }
+ break;
+ case 951: { yym.yy_begin("STRING"); ((LSLTokens)yym).str = "";}
+ break;
+ case 967: { ((LSLTokens)yym).str += "\\n"; }
+ break;
+ case 979: { ((LSLTokens)yym).str += " "; }
+ break;
+ case 956: { ((LSLTokens)yym).str += yytext; }
+ break;
+ case 962: { ((LSLTokens)yym).str += "\\n"; }
+ break;
+ }
+ return null;
+}}
+public class LSLTokens:Lexer {
+public LSLTokens():base(new yyLSLTokens(new ErrorHandler(false))) {}
+public LSLTokens(ErrorHandler eh):base(new yyLSLTokens(eh)) {}
+public LSLTokens(YyLexer tks):base(tks){}
+
+ public string str;
+
+ }
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.parser.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.parser.cs
new file mode 100644
index 0000000..adcf90a
--- /dev/null
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/LSL/lsl.parser.cs
@@ -0,0 +1,9507 @@
+using System;using Tools;
+//%+LSLProgramRoot+95
+public class LSLProgramRoot : SYMBOL{
+ public LSLProgramRoot (Parser yyp, States s ):base(((LSLSyntax
+)yyp)){ while (0< s . kids . Count ) kids . Add ( s . kids . Pop ());
+}
+ public LSLProgramRoot (Parser yyp, GlobalDefinitions gd , States s ):base(((LSLSyntax
+)yyp)){ while (0< gd . kids . Count ) kids . Add ( gd . kids . Pop ());
+ while (0< s . kids . Count ) kids . Add ( s . kids . Pop ());
+}
+
+public override string yyname { get { return "LSLProgramRoot"; }}
+public override int yynum { get { return 95; }}
+public LSLProgramRoot(Parser yyp):base(yyp){}}
+//%+GlobalDefinitions+96
+public class GlobalDefinitions : SYMBOL{
+ public GlobalDefinitions (Parser yyp, GlobalVariableDeclaration gvd ):base(((LSLSyntax
+)yyp)){ kids . Add ( gvd );
+}
+ public GlobalDefinitions (Parser yyp, GlobalDefinitions gd , GlobalVariableDeclaration gvd ):base(((LSLSyntax
+)yyp)){ while (0< gd . kids . Count ) kids . Add ( gd . kids . Pop ());
+ kids . Add ( gvd );
+}
+ public GlobalDefinitions (Parser yyp, GlobalFunctionDefinition gfd ):base(((LSLSyntax
+)yyp)){ kids . Add ( gfd );
+}
+ public GlobalDefinitions (Parser yyp, GlobalDefinitions gd , GlobalFunctionDefinition gfd ):base(((LSLSyntax
+)yyp)){ while (0< gd . kids . Count ) kids . Add ( gd . kids . Pop ());
+ kids . Add ( gfd );
+}
+
+public override string yyname { get { return "GlobalDefinitions"; }}
+public override int yynum { get { return 96; }}
+public GlobalDefinitions(Parser yyp):base(yyp){}}
+//%+GlobalVariableDeclaration+97
+public class GlobalVariableDeclaration : SYMBOL{
+ public GlobalVariableDeclaration (Parser yyp, Declaration d ):base(((LSLSyntax
+)yyp)){ kids . Add ( d );
+}
+ public GlobalVariableDeclaration (Parser yyp, Assignment a ):base(((LSLSyntax
+)yyp)){ kids . Add ( a );
+}
+
+public override string yyname { get { return "GlobalVariableDeclaration"; }}
+public override int yynum { get { return 97; }}
+public GlobalVariableDeclaration(Parser yyp):base(yyp){}}
+//%+GlobalFunctionDefinition+98
+public class GlobalFunctionDefinition : SYMBOL{
+ private string m_returnType ;
+ private string m_name ;
+ public GlobalFunctionDefinition (Parser yyp, string returnType , string name , ArgumentDeclarationList adl , CompoundStatement cs ):base(((LSLSyntax
+)yyp)){ m_returnType = returnType ;
+ m_name = name ;
+ kids . Add ( adl );
+ kids . Add ( cs );
+}
+ public string ReturnType { get { return m_returnType ;
+}
+ set { m_returnType = value ;
+}
+}
+ public string Name { get { return m_name ;
+}
+}
+
+public override string yyname { get { return "GlobalFunctionDefinition"; }}
+public override int yynum { get { return 98; }}
+public GlobalFunctionDefinition(Parser yyp):base(yyp){}}
+//%+States+99
+public class States : SYMBOL{
+ public States (Parser yyp, State ds ):base(((LSLSyntax
+)yyp)){ kids . Add ( ds );
+}
+ public States (Parser yyp, States s , State us ):base(((LSLSyntax
+)yyp)){ while (0< s . kids . Count ) kids . Add ( s . kids . Pop ());
+ kids . Add ( us );
+}
+
+public override string yyname { get { return "States"; }}
+public override int yynum { get { return 99; }}
+public States(Parser yyp):base(yyp){}}
+//%+State+100
+public class State : SYMBOL{
+ private string m_name ;
+ public State (Parser yyp, string name , StateBody sb ):base(((LSLSyntax
+)yyp)){ m_name = name ;
+ while (0< sb . kids . Count ) kids . Add ( sb . kids . Pop ());
+}
+ public override string ToString (){ return "STATE<"+ m_name +">";
+}
+ public string Name { get { return m_name ;
+}
+}
+
+public override string yyname { get { return "State"; }}
+public override int yynum { get { return 100; }}
+public State(Parser yyp):base(yyp){}}
+//%+StateBody+101
+public class StateBody : SYMBOL{
+ public StateBody (Parser yyp, StateBody sb , StateEvent se ):base(((LSLSyntax
+)yyp)){ while (0< sb . kids . Count ) kids . Add ( sb . kids . Pop ());
+ kids . Add ( se );
+}
+ public StateBody (Parser yyp, StateEvent se ):base(((LSLSyntax
+)yyp)){ kids . Add ( se );
+}
+
+public override string yyname { get { return "StateBody"; }}
+public override int yynum { get { return 101; }}
+public StateBody(Parser yyp):base(yyp){}}
+//%+StateEvent+102
+public class StateEvent : SYMBOL{
+ private string m_name ;
+ public StateEvent (Parser yyp, string name , CompoundStatement cs ):base(((LSLSyntax
+)yyp)){ m_name = name ;
+ kids . Add ( cs );
+}
+ public StateEvent (Parser yyp, string name , ArgumentDeclarationList dal , CompoundStatement cs ):base(((LSLSyntax
+)yyp)){ m_name = name ;
+ if (0< dal . kids . Count ) kids . Add ( dal );
+ kids . Add ( cs );
+}
+ public override string ToString (){ return "EVENT<"+ m_name +">";
+}
+ public string Name { get { return m_name ;
+}
+}
+
+public override string yyname { get { return "StateEvent"; }}
+public override int yynum { get { return 102; }}
+public StateEvent(Parser yyp):base(yyp){}}
+//%+ArgumentDeclarationList+103
+public class ArgumentDeclarationList : SYMBOL{
+ public ArgumentDeclarationList (Parser yyp, Declaration d ):base(((LSLSyntax
+)yyp)){ kids . Add ( d );
+}
+ public ArgumentDeclarationList (Parser yyp, ArgumentDeclarationList adl , Declaration d ):base(((LSLSyntax
+)yyp)){ while (0< adl . kids . Count ) kids . Add ( adl . kids . Pop ());
+ kids . Add ( d );
+}
+
+public override string yyname { get { return "ArgumentDeclarationList"; }}
+public override int yynum { get { return 103; }}
+public ArgumentDeclarationList(Parser yyp):base(yyp){}}
+//%+Declaration+104
+public class Declaration : SYMBOL{
+ private string m_datatype ;
+ private string m_id ;
+ public Declaration (Parser yyp, string type , string id ):base(((LSLSyntax
+)yyp)){ m_datatype = type ;
+ m_id = id ;
+}
+ public override string ToString (){ return "Declaration<"+ m_datatype +":"+ m_id +">";
+}
+ public string Datatype { get { return m_datatype ;
+}
+ set { m_datatype = value ;
+}
+}
+ public string Id { get { return m_id ;
+}
+}
+
+public override string yyname { get { return "Declaration"; }}
+public override int yynum { get { return 104; }}
+public Declaration(Parser yyp):base(yyp){}}
+//%+Typename+105
+public class Typename : SYMBOL{
+ public string yytext ;
+ public Typename (Parser yyp, string text ):base(((LSLSyntax
+)yyp)){ yytext = text ;
+}
+
+public override string yyname { get { return "Typename"; }}
+public override int yynum { get { return 105; }}
+public Typename(Parser yyp):base(yyp){}}
+//%+Event+106
+public class Event : SYMBOL{
+ public string yytext ;
+ public Event (Parser yyp, string text ):base(((LSLSyntax
+)yyp)){ yytext = text ;
+}
+
+public override string yyname { get { return "Event"; }}
+public override int yynum { get { return 106; }}
+public Event(Parser yyp):base(yyp){}}
+//%+CompoundStatement+107
+public class CompoundStatement : SYMBOL{
+ public CompoundStatement (Parser yyp):base(((LSLSyntax
+)yyp)){}
+ public CompoundStatement (Parser yyp, StatementList sl ):base(((LSLSyntax
+)yyp)){ while (0< sl . kids . Count ) kids . Add ( sl . kids . Pop ());
+}
+
+public override string yyname { get { return "CompoundStatement"; }}
+public override int yynum { get { return 107; }}
+}
+//%+StatementList+108
+public class StatementList : SYMBOL{
+ private void AddStatement ( Statement s ){ if ( s . kids . Top is IfStatement || s . kids . Top is WhileStatement || s . kids . Top is DoWhileStatement || s . kids . Top is ForLoop ) kids . Add ( s . kids . Pop ());
+ else kids . Add ( s );
+}
+ public StatementList (Parser yyp, Statement s ):base(((LSLSyntax
+)yyp)){ AddStatement ( s );
+}
+ public StatementList (Parser yyp, StatementList sl , Statement s ):base(((LSLSyntax
+)yyp)){ while (0< sl . kids . Count ) kids . Add ( sl . kids . Pop ());
+ AddStatement ( s );
+}
+
+public override string yyname { get { return "StatementList"; }}
+public override int yynum { get { return 108; }}
+public StatementList(Parser yyp):base(yyp){}}
+//%+Statement+109
+public class Statement : SYMBOL{
+ public Statement (Parser yyp, Declaration d ):base(((LSLSyntax
+)yyp)){ kids . Add ( d );
+}
+ public Statement (Parser yyp, CompoundStatement cs ):base(((LSLSyntax
+)yyp)){ kids . Add ( cs );
+}
+ public Statement (Parser yyp, FunctionCall fc ):base(((LSLSyntax
+)yyp)){ kids . Add ( fc );
+}
+ public Statement (Parser yyp, Assignment a ):base(((LSLSyntax
+)yyp)){ kids . Add ( a );
+}
+ public Statement (Parser yyp, Expression e ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+}
+ public Statement (Parser yyp, ReturnStatement rs ):base(((LSLSyntax
+)yyp)){ kids . Add ( rs );
+}
+ public Statement (Parser yyp, StateChange sc ):base(((LSLSyntax
+)yyp)){ kids . Add ( sc );
+}
+ public Statement (Parser yyp, IfStatement ifs ):base(((LSLSyntax
+)yyp)){ kids . Add ( ifs );
+}
+ public Statement (Parser yyp, WhileStatement ifs ):base(((LSLSyntax
+)yyp)){ kids . Add ( ifs );
+}
+ public Statement (Parser yyp, DoWhileStatement ifs ):base(((LSLSyntax
+)yyp)){ kids . Add ( ifs );
+}
+ public Statement (Parser yyp, ForLoop fl ):base(((LSLSyntax
+)yyp)){ kids . Add ( fl );
+}
+
+public override string yyname { get { return "Statement"; }}
+public override int yynum { get { return 109; }}
+public Statement(Parser yyp):base(yyp){}}
+//%+Assignment+110
+public class Assignment : SYMBOL{
+ private string m_assignmentType ;
+ public Assignment (Parser yyp, SYMBOL lhs , SYMBOL rhs , string assignmentType ):base(((LSLSyntax
+)yyp)){ m_assignmentType = assignmentType ;
+ kids . Add ( lhs );
+ if ( rhs is ConstantExpression ) while (0< rhs . kids . Count ) kids . Add ( rhs . kids . Pop ());
+ else kids . Add ( rhs );
+}
+ public string AssignmentType { get { return m_assignmentType ;
+}
+}
+
+public override string yyname { get { return "Assignment"; }}
+public override int yynum { get { return 110; }}
+public Assignment(Parser yyp):base(yyp){}}
+//%+ReturnStatement+111
+public class ReturnStatement : SYMBOL{
+ public ReturnStatement (Parser yyp):base(((LSLSyntax
+)yyp)){}
+ public ReturnStatement (Parser yyp, Expression e ):base(((LSLSyntax
+)yyp)){ if ( e is ConstantExpression ) while (0< e . kids . Count ) kids . Add ( e . kids . Pop ());
+ else kids . Add ( e );
+}
+
+public override string yyname { get { return "ReturnStatement"; }}
+public override int yynum { get { return 111; }}
+}
+//%+StateChange+112
+public class StateChange : SYMBOL{
+ private string m_newState ;
+ public StateChange (Parser yyp, string newState ):base(((LSLSyntax
+)yyp)){ m_newState = newState ;
+}
+ public string NewState { get { return m_newState ;
+}
+}
+
+public override string yyname { get { return "StateChange"; }}
+public override int yynum { get { return 112; }}
+public StateChange(Parser yyp):base(yyp){}}
+//%+IfStatement+113
+public class IfStatement : SYMBOL{
+ private void AddStatement ( Statement s ){ if ( s . kids . Top is CompoundStatement ) kids . Add ( s . kids . Pop ());
+ else kids . Add ( s );
+}
+ public IfStatement (Parser yyp, Expression e , Statement ifs ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+ AddStatement ( ifs );
+}
+ public IfStatement (Parser yyp, Expression e , Statement ifs , Statement es ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+ AddStatement ( ifs );
+ if ( es . kids . Top is IfStatement ) kids . Add ( es . kids . Pop ());
+ else AddStatement ( es );
+}
+
+public override string yyname { get { return "IfStatement"; }}
+public override int yynum { get { return 113; }}
+public IfStatement(Parser yyp):base(yyp){}}
+//%+WhileStatement+114
+public class WhileStatement : SYMBOL{
+ public WhileStatement (Parser yyp, Expression e , Statement s ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+ if ( s . kids . Top is CompoundStatement ) kids . Add ( s . kids . Pop ());
+ else kids . Add ( s );
+}
+
+public override string yyname { get { return "WhileStatement"; }}
+public override int yynum { get { return 114; }}
+public WhileStatement(Parser yyp):base(yyp){}}
+//%+DoWhileStatement+115
+public class DoWhileStatement : SYMBOL{
+ public DoWhileStatement (Parser yyp, Expression e , Statement s ):base(((LSLSyntax
+)yyp)){ if ( s . kids . Top is CompoundStatement ) kids . Add ( s . kids . Pop ());
+ else kids . Add ( s );
+ kids . Add ( e );
+}
+
+public override string yyname { get { return "DoWhileStatement"; }}
+public override int yynum { get { return 115; }}
+public DoWhileStatement(Parser yyp):base(yyp){}}
+//%+ForLoop+116
+public class ForLoop : SYMBOL{
+ public ForLoop (Parser yyp, ForLoopStatement flsa , Expression e , ForLoopStatement flsb , Statement s ):base(((LSLSyntax
+)yyp)){ kids . Add ( flsa );
+ kids . Add ( e );
+ kids . Add ( flsb );
+ if ( s . kids . Top is CompoundStatement ) kids . Add ( s . kids . Pop ());
+ else kids . Add ( s );
+}
+
+public override string yyname { get { return "ForLoop"; }}
+public override int yynum { get { return 116; }}
+public ForLoop(Parser yyp):base(yyp){}}
+//%+ForLoopStatement+117
+public class ForLoopStatement : SYMBOL{
+ public ForLoopStatement (Parser yyp, Expression e ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+}
+ public ForLoopStatement (Parser yyp, Assignment a ):base(((LSLSyntax
+)yyp)){ kids . Add ( a );
+}
+ public ForLoopStatement (Parser yyp, ForLoopStatement fls , Expression e ):base(((LSLSyntax
+)yyp)){ while (0< fls . kids . Count ) kids . Add ( fls . kids . Pop ());
+ kids . Add ( e );
+}
+ public ForLoopStatement (Parser yyp, ForLoopStatement fls , Assignment a ):base(((LSLSyntax
+)yyp)){ while (0< fls . kids . Count ) kids . Add ( fls . kids . Pop ());
+ kids . Add ( a );
+}
+
+public override string yyname { get { return "ForLoopStatement"; }}
+public override int yynum { get { return 117; }}
+public ForLoopStatement(Parser yyp):base(yyp){}}
+//%+FunctionCall+118
+public class FunctionCall : SYMBOL{
+ private string m_id ;
+ public FunctionCall (Parser yyp, string id , ArgumentList al ):base(((LSLSyntax
+)yyp)){ m_id = id ;
+ kids . Add ( al );
+}
+ public override string ToString (){ return base . ToString ()+"<"+ m_id +">";
+}
+ public string Id { get { return m_id ;
+}
+}
+
+public override string yyname { get { return "FunctionCall"; }}
+public override int yynum { get { return 118; }}
+public FunctionCall(Parser yyp):base(yyp){}}
+//%+ArgumentList+119
+public class ArgumentList : SYMBOL{
+ public ArgumentList (Parser yyp, Argument a ):base(((LSLSyntax
+)yyp)){ AddArgument ( a );
+}
+ public ArgumentList (Parser yyp, ArgumentList al , Argument a ):base(((LSLSyntax
+)yyp)){ while (0< al . kids . Count ) kids . Add ( al . kids . Pop ());
+ AddArgument ( a );
+}
+ private void AddArgument ( Argument a ){ if ( a is ExpressionArgument ) while (0< a . kids . Count ) kids . Add ( a . kids . Pop ());
+ else kids . Add ( a );
+}
+
+public override string yyname { get { return "ArgumentList"; }}
+public override int yynum { get { return 119; }}
+public ArgumentList(Parser yyp):base(yyp){}}
+//%+Argument+120
+public class Argument : SYMBOL{
+public override string yyname { get { return "Argument"; }}
+public override int yynum { get { return 120; }}
+public Argument(Parser yyp):base(yyp){}}
+//%+ExpressionArgument+121
+public class ExpressionArgument : Argument{
+ public ExpressionArgument (Parser yyp, Expression e ):base(((LSLSyntax
+)yyp)){ if ( e is ConstantExpression ) while (0< e . kids . Count ) kids . Add ( e . kids . Pop ());
+ else kids . Add ( e );
+}
+
+public override string yyname { get { return "ExpressionArgument"; }}
+public override int yynum { get { return 121; }}
+public ExpressionArgument(Parser yyp):base(yyp){}}
+//%+Constant+122
+public class Constant : SYMBOL{
+ private string m_type ;
+ private string m_val ;
+ public Constant (Parser yyp, string type , string val ):base(((LSLSyntax
+)yyp)){ m_type = type ;
+ m_val = val ;
+}
+ public override string ToString (){ return base . ToString ()+"<"+ m_type +":"+ m_val +">";
+}
+ public string Value { get { return m_val ;
+}
+ set { m_val = value ;
+}
+}
+ public string Type { get { return m_type ;
+}
+ set { m_type = value ;
+}
+}
+
+public override string yyname { get { return "Constant"; }}
+public override int yynum { get { return 122; }}
+public Constant(Parser yyp):base(yyp){}}
+//%+VectorConstant+123
+public class VectorConstant : Constant{
+ public VectorConstant (Parser yyp, Expression valX , Expression valY , Expression valZ ):base(((LSLSyntax
+)yyp),"vector", null ){ kids . Add ( valX );
+ kids . Add ( valY );
+ kids . Add ( valZ );
+}
+
+public override string yyname { get { return "VectorConstant"; }}
+public override int yynum { get { return 123; }}
+public VectorConstant(Parser yyp):base(yyp){}}
+//%+RotationConstant+124
+public class RotationConstant : Constant{
+ public RotationConstant (Parser yyp, Expression valX , Expression valY , Expression valZ , Expression valS ):base(((LSLSyntax
+)yyp),"rotation", null ){ kids . Add ( valX );
+ kids . Add ( valY );
+ kids . Add ( valZ );
+ kids . Add ( valS );
+}
+
+public override string yyname { get { return "RotationConstant"; }}
+public override int yynum { get { return 124; }}
+public RotationConstant(Parser yyp):base(yyp){}}
+//%+ListConstant+125
+public class ListConstant : Constant{
+ public ListConstant (Parser yyp, ArgumentList al ):base(((LSLSyntax
+)yyp),"list", null ){ kids . Add ( al );
+}
+
+public override string yyname { get { return "ListConstant"; }}
+public override int yynum { get { return 125; }}
+public ListConstant(Parser yyp):base(yyp){}}
+//%+Expression+126
+public class Expression : SYMBOL{
+ protected void AddExpression ( Expression e ){ if ( e is ConstantExpression ) while (0< e . kids . Count ) kids . Add ( e . kids . Pop ());
+ else kids . Add ( e );
+}
+
+public override string yyname { get { return "Expression"; }}
+public override int yynum { get { return 126; }}
+public Expression(Parser yyp):base(yyp){}}
+//%+ConstantExpression+127
+public class ConstantExpression : Expression{
+ public ConstantExpression (Parser yyp, Constant c ):base(((LSLSyntax
+)yyp)){ kids . Add ( c );
+}
+
+public override string yyname { get { return "ConstantExpression"; }}
+public override int yynum { get { return 127; }}
+public ConstantExpression(Parser yyp):base(yyp){}}
+//%+IdentExpression+128
+public class IdentExpression : Expression{
+ protected string m_name ;
+ public IdentExpression (Parser yyp, string name ):base(((LSLSyntax
+)yyp)){ m_name = name ;
+}
+ public override string ToString (){ return base . ToString ()+"<"+ m_name +">";
+}
+ public string Name { get { return m_name ;
+}
+}
+
+public override string yyname { get { return "IdentExpression"; }}
+public override int yynum { get { return 128; }}
+public IdentExpression(Parser yyp):base(yyp){}}
+//%+IdentDotExpression+129
+public class IdentDotExpression : IdentExpression{
+ private string m_member ;
+ public IdentDotExpression (Parser yyp, string name , string member ):base(((LSLSyntax
+)yyp), name ){ m_member = member ;
+}
+ public override string ToString (){ string baseToString = base . ToString ();
+ return baseToString . Substring (0, baseToString . Length -1)+"."+ m_member +">";
+}
+ public string Member { get { return m_member ;
+}
+}
+
+public override string yyname { get { return "IdentDotExpression"; }}
+public override int yynum { get { return 129; }}
+public IdentDotExpression(Parser yyp):base(yyp){}}
+//%+FunctionCallExpression+130
+public class FunctionCallExpression : Expression{
+ public FunctionCallExpression (Parser yyp, FunctionCall fc ):base(((LSLSyntax
+)yyp)){ kids . Add ( fc );
+}
+
+public override string yyname { get { return "FunctionCallExpression"; }}
+public override int yynum { get { return 130; }}
+public FunctionCallExpression(Parser yyp):base(yyp){}}
+//%+BinaryExpression+131
+public class BinaryExpression : Expression{
+ private string m_expressionSymbol ;
+ public BinaryExpression (Parser yyp, Expression lhs , Expression rhs , string expressionSymbol ):base(((LSLSyntax
+)yyp)){ m_expressionSymbol = expressionSymbol ;
+ AddExpression ( lhs );
+ AddExpression ( rhs );
+}
+ public string ExpressionSymbol { get { return m_expressionSymbol ;
+}
+}
+ public override string ToString (){ return base . ToString ()+"<"+ m_expressionSymbol +">";
+}
+
+public override string yyname { get { return "BinaryExpression"; }}
+public override int yynum { get { return 131; }}
+public BinaryExpression(Parser yyp):base(yyp){}}
+//%+UnaryExpression+132
+public class UnaryExpression : Expression{
+ private string m_unarySymbol ;
+ public UnaryExpression (Parser yyp, string unarySymbol , Expression e ):base(((LSLSyntax
+)yyp)){ m_unarySymbol = unarySymbol ;
+ kids . Add ( e );
+}
+ public string UnarySymbol { get { return m_unarySymbol ;
+}
+}
+
+public override string yyname { get { return "UnaryExpression"; }}
+public override int yynum { get { return 132; }}
+public UnaryExpression(Parser yyp):base(yyp){}}
+//%+TypecastExpression+133
+public class TypecastExpression : Expression{
+ private string m_typecastType ;
+ public TypecastExpression (Parser yyp, string typecastType , SYMBOL rhs ):base(((LSLSyntax
+)yyp)){ m_typecastType = typecastType ;
+ kids . Add ( rhs );
+}
+ public string TypecastType { get { return m_typecastType ;
+}
+ set { m_typecastType = value ;
+}
+}
+
+public override string yyname { get { return "TypecastExpression"; }}
+public override int yynum { get { return 133; }}
+public TypecastExpression(Parser yyp):base(yyp){}}
+//%+ParenthesisExpression+134
+public class ParenthesisExpression : Expression{
+ public ParenthesisExpression (Parser yyp, Expression e ):base(((LSLSyntax
+)yyp)){ kids . Add ( e );
+}
+
+public override string yyname { get { return "ParenthesisExpression"; }}
+public override int yynum { get { return 134; }}
+public ParenthesisExpression(Parser yyp):base(yyp){}}
+//%+IncrementDecrementExpression+135
+public class IncrementDecrementExpression : Expression{
+ private string m_name ;
+ private string m_operation ;
+ private bool m_postOperation ;
+ public IncrementDecrementExpression (Parser yyp, string name , string operation , bool postOperation ):base(((LSLSyntax
+)yyp)){ m_name = name ;
+ m_operation = operation ;
+ m_postOperation = postOperation ;
+}
+ public IncrementDecrementExpression (Parser yyp, IdentDotExpression ide , string operation , bool postOperation ):base(((LSLSyntax
+)yyp)){ m_operation = operation ;
+ m_postOperation = postOperation ;
+ kids . Add ( ide );
+}
+ public override string ToString (){ return base . ToString ()+"<"+( m_postOperation ? m_name + m_operation : m_operation + m_name )+">";
+}
+ public string Name { get { return m_name ;
+}
+}
+ public string Operation { get { return m_operation ;
+}
+}
+ public bool PostOperation { get { return m_postOperation ;
+}
+}
+
+public override string yyname { get { return "IncrementDecrementExpression"; }}
+public override int yynum { get { return 135; }}
+public IncrementDecrementExpression(Parser yyp):base(yyp){}}
+
+public class LSLProgramRoot_1 : LSLProgramRoot {
+ public LSLProgramRoot_1(Parser yyq):base(yyq,
+ ((GlobalDefinitions)(yyq.StackAt(1).m_value))
+ ,
+ ((States)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class LSLProgramRoot_2 : LSLProgramRoot {
+ public LSLProgramRoot_2(Parser yyq):base(yyq,
+ ((States)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalDefinitions_1 : GlobalDefinitions {
+ public GlobalDefinitions_1(Parser yyq):base(yyq,
+ ((GlobalVariableDeclaration)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalDefinitions_2 : GlobalDefinitions {
+ public GlobalDefinitions_2(Parser yyq):base(yyq,
+ ((GlobalDefinitions)(yyq.StackAt(1).m_value))
+ ,
+ ((GlobalVariableDeclaration)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalDefinitions_3 : GlobalDefinitions {
+ public GlobalDefinitions_3(Parser yyq):base(yyq,
+ ((GlobalFunctionDefinition)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalDefinitions_4 : GlobalDefinitions {
+ public GlobalDefinitions_4(Parser yyq):base(yyq,
+ ((GlobalDefinitions)(yyq.StackAt(1).m_value))
+ ,
+ ((GlobalFunctionDefinition)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalVariableDeclaration_1 : GlobalVariableDeclaration {
+ public GlobalVariableDeclaration_1(Parser yyq):base(yyq,
+ ((Declaration)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class GlobalVariableDeclaration_2 : GlobalVariableDeclaration {
+ public GlobalVariableDeclaration_2(Parser yyq):base(yyq,new Assignment(((LSLSyntax
+)yyq),
+ ((Declaration)(yyq.StackAt(3).m_value))
+ ,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ,
+ ((EQUALS)(yyq.StackAt(2).m_value))
+ .yytext)){}}
+
+public class GlobalFunctionDefinition_1 : GlobalFunctionDefinition {
+ public GlobalFunctionDefinition_1(Parser yyq):base(yyq,"void",
+ ((IDENT)(yyq.StackAt(4).m_value))
+ .yytext,
+ ((ArgumentDeclarationList)(yyq.StackAt(2).m_value))
+ ,
+ ((CompoundStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class GlobalFunctionDefinition_2 : GlobalFunctionDefinition {
+ public GlobalFunctionDefinition_2(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(5).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(4).m_value))
+ .yytext,
+ ((ArgumentDeclarationList)(yyq.StackAt(2).m_value))
+ ,
+ ((CompoundStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class States_1 : States {
+ public States_1(Parser yyq):base(yyq,
+ ((State)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class States_2 : States {
+ public States_2(Parser yyq):base(yyq,
+ ((States)(yyq.StackAt(1).m_value))
+ ,
+ ((State)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class State_1 : State {
+ public State_1(Parser yyq):base(yyq,
+ ((DEFAULT_STATE)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((StateBody)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class State_2 : State {
+ public State_2(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((StateBody)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class StateBody_1 : StateBody {
+ public StateBody_1(Parser yyq):base(yyq,
+ ((StateEvent)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class StateBody_2 : StateBody {
+ public StateBody_2(Parser yyq):base(yyq,
+ ((StateBody)(yyq.StackAt(1).m_value))
+ ,
+ ((StateEvent)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class StateEvent_1 : StateEvent {
+ public StateEvent_1(Parser yyq):base(yyq,
+ ((Event)(yyq.StackAt(4).m_value))
+ .yytext,
+ ((ArgumentDeclarationList)(yyq.StackAt(2).m_value))
+ ,
+ ((CompoundStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ArgumentDeclarationList_1 : ArgumentDeclarationList {
+ public ArgumentDeclarationList_1(Parser yyq):base(yyq,
+ ((Declaration)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ArgumentDeclarationList_2 : ArgumentDeclarationList {
+ public ArgumentDeclarationList_2(Parser yyq):base(yyq,
+ ((ArgumentDeclarationList)(yyq.StackAt(2).m_value))
+ ,
+ ((Declaration)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Declaration_1 : Declaration {
+ public Declaration_1(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class CompoundStatement_1 : CompoundStatement {
+ public CompoundStatement_1(Parser yyq):base(yyq){}}
+
+public class CompoundStatement_2 : CompoundStatement {
+ public CompoundStatement_2(Parser yyq):base(yyq,
+ ((StatementList)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class StatementList_1 : StatementList {
+ public StatementList_1(Parser yyq):base(yyq,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class StatementList_2 : StatementList {
+ public StatementList_2(Parser yyq):base(yyq,
+ ((StatementList)(yyq.StackAt(1).m_value))
+ ,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Statement_1 : Statement {
+ public Statement_1(Parser yyq):base(yyq,
+ ((Declaration)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class Statement_2 : Statement {
+ public Statement_2(Parser yyq):base(yyq,
+ ((Assignment)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class Statement_3 : Statement {
+ public Statement_3(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class Statement_4 : Statement {
+ public Statement_4(Parser yyq):base(yyq,
+ ((ReturnStatement)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class Statement_5 : Statement {
+ public Statement_5(Parser yyq):base(yyq,
+ ((StateChange)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class Statement_6 : Statement {
+ public Statement_6(Parser yyq):base(yyq,
+ ((IfStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Statement_7 : Statement {
+ public Statement_7(Parser yyq):base(yyq,
+ ((WhileStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Statement_8 : Statement {
+ public Statement_8(Parser yyq):base(yyq,
+ ((DoWhileStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Statement_9 : Statement {
+ public Statement_9(Parser yyq):base(yyq,
+ ((ForLoop)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Statement_10 : Statement {
+ public Statement_10(Parser yyq):base(yyq,
+ ((CompoundStatement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class StateChange_1 : StateChange {
+ public StateChange_1(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class StateChange_2 : StateChange {
+ public StateChange_2(Parser yyq):base(yyq,
+ ((DEFAULT_STATE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class IfStatement_1 : IfStatement {
+ public IfStatement_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class IfStatement_2 : IfStatement {
+ public IfStatement_2(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(4).m_value))
+ ,
+ ((Statement)(yyq.StackAt(2).m_value))
+ ,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class WhileStatement_1 : WhileStatement {
+ public WhileStatement_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class DoWhileStatement_1 : DoWhileStatement {
+ public DoWhileStatement_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Statement)(yyq.StackAt(5).m_value))
+ ){}}
+
+public class ForLoop_1 : ForLoop {
+ public ForLoop_1(Parser yyq):base(yyq,
+ ((ForLoopStatement)(yyq.StackAt(6).m_value))
+ ,
+ ((Expression)(yyq.StackAt(4).m_value))
+ ,
+ ((ForLoopStatement)(yyq.StackAt(2).m_value))
+ ,
+ ((Statement)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ForLoopStatement_1 : ForLoopStatement {
+ public ForLoopStatement_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ForLoopStatement_2 : ForLoopStatement {
+ public ForLoopStatement_2(Parser yyq):base(yyq,
+ ((Assignment)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ForLoopStatement_3 : ForLoopStatement {
+ public ForLoopStatement_3(Parser yyq):base(yyq,
+ ((ForLoopStatement)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ForLoopStatement_4 : ForLoopStatement {
+ public ForLoopStatement_4(Parser yyq):base(yyq,
+ ((ForLoopStatement)(yyq.StackAt(2).m_value))
+ ,
+ ((Assignment)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Assignment_1 : Assignment {
+ public Assignment_1(Parser yyq):base(yyq,
+ ((Declaration)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_2 : Assignment {
+ public Assignment_2(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_3 : Assignment {
+ public Assignment_3(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((PLUS_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_4 : Assignment {
+ public Assignment_4(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((MINUS_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_5 : Assignment {
+ public Assignment_5(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((STAR_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_6 : Assignment {
+ public Assignment_6(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((SLASH_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_7 : Assignment {
+ public Assignment_7(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((PERCENT_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class Assignment_8 : Assignment {
+ public Assignment_8(Parser yyq):base(yyq,new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(4).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ .yytext),
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class ReturnStatement_1 : ReturnStatement {
+ public ReturnStatement_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ReturnStatement_2 : ReturnStatement {
+ public ReturnStatement_2(Parser yyq):base(yyq){}}
+
+public class Constant_1 : Constant {
+ public Constant_1(Parser yyq):base(yyq,"integer",
+ ((INTEGER_CONSTANT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Constant_2 : Constant {
+ public Constant_2(Parser yyq):base(yyq,"integer",
+ ((HEX_INTEGER_CONSTANT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Constant_3 : Constant {
+ public Constant_3(Parser yyq):base(yyq,"float",
+ ((FLOAT_CONSTANT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Constant_4 : Constant {
+ public Constant_4(Parser yyq):base(yyq,"string",
+ ((STRING_CONSTANT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class VectorConstant_1 : VectorConstant {
+ public VectorConstant_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(5).m_value))
+ ,
+ ((Expression)(yyq.StackAt(3).m_value))
+ ,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class RotationConstant_1 : RotationConstant {
+ public RotationConstant_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(7).m_value))
+ ,
+ ((Expression)(yyq.StackAt(5).m_value))
+ ,
+ ((Expression)(yyq.StackAt(3).m_value))
+ ,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class ListConstant_1 : ListConstant {
+ public ListConstant_1(Parser yyq):base(yyq,
+ ((ArgumentList)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class ConstantExpression_1 : ConstantExpression {
+ public ConstantExpression_1(Parser yyq):base(yyq,
+ ((Constant)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class IdentExpression_1 : IdentExpression {
+ public IdentExpression_1(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class IdentDotExpression_1 : IdentDotExpression {
+ public IdentDotExpression_1(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class IncrementDecrementExpression_1 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_1(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((INCREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true){}}
+
+public class IncrementDecrementExpression_2 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_2(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((DECREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true){}}
+
+public class IncrementDecrementExpression_3 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_3(Parser yyq):base(yyq,new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext),
+ ((INCREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true){}}
+
+public class IncrementDecrementExpression_4 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_4(Parser yyq):base(yyq,new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext),
+ ((DECREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true){}}
+
+public class IncrementDecrementExpression_5 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_5(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext,
+ ((INCREMENT)(yyq.StackAt(1).m_value))
+ .yytext, false){}}
+
+public class IncrementDecrementExpression_6 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_6(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext,
+ ((DECREMENT)(yyq.StackAt(1).m_value))
+ .yytext, false){}}
+
+public class IncrementDecrementExpression_7 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_7(Parser yyq):base(yyq,new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext),
+ ((INCREMENT)(yyq.StackAt(3).m_value))
+ .yytext, false){}}
+
+public class IncrementDecrementExpression_8 : IncrementDecrementExpression {
+ public IncrementDecrementExpression_8(Parser yyq):base(yyq,new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext),
+ ((DECREMENT)(yyq.StackAt(3).m_value))
+ .yytext, false){}}
+
+public class FunctionCallExpression_1 : FunctionCallExpression {
+ public FunctionCallExpression_1(Parser yyq):base(yyq,
+ ((FunctionCall)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class BinaryExpression_1 : BinaryExpression {
+ public BinaryExpression_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((PLUS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_2 : BinaryExpression {
+ public BinaryExpression_2(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((MINUS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_3 : BinaryExpression {
+ public BinaryExpression_3(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((STAR)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_4 : BinaryExpression {
+ public BinaryExpression_4(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((SLASH)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_5 : BinaryExpression {
+ public BinaryExpression_5(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((PERCENT)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_6 : BinaryExpression {
+ public BinaryExpression_6(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((AMP)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_7 : BinaryExpression {
+ public BinaryExpression_7(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((STROKE)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_8 : BinaryExpression {
+ public BinaryExpression_8(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((CARET)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_9 : BinaryExpression {
+ public BinaryExpression_9(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((RIGHT_ANGLE)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_10 : BinaryExpression {
+ public BinaryExpression_10(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((LEFT_ANGLE)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_11 : BinaryExpression {
+ public BinaryExpression_11(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((EQUALS_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_12 : BinaryExpression {
+ public BinaryExpression_12(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((EXCLAMATION_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_13 : BinaryExpression {
+ public BinaryExpression_13(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((LESS_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_14 : BinaryExpression {
+ public BinaryExpression_14(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((GREATER_EQUALS)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_15 : BinaryExpression {
+ public BinaryExpression_15(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((AMP_AMP)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_16 : BinaryExpression {
+ public BinaryExpression_16(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((STROKE_STROKE)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_17 : BinaryExpression {
+ public BinaryExpression_17(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((LEFT_SHIFT)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class BinaryExpression_18 : BinaryExpression {
+ public BinaryExpression_18(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(2).m_value))
+ ,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ,
+ ((RIGHT_SHIFT)(yyq.StackAt(1).m_value))
+ .yytext){}}
+
+public class UnaryExpression_1 : UnaryExpression {
+ public UnaryExpression_1(Parser yyq):base(yyq,
+ ((EXCLAMATION)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class UnaryExpression_2 : UnaryExpression {
+ public UnaryExpression_2(Parser yyq):base(yyq,
+ ((MINUS)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class UnaryExpression_3 : UnaryExpression {
+ public UnaryExpression_3(Parser yyq):base(yyq,
+ ((TILDE)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ParenthesisExpression_1 : ParenthesisExpression {
+ public ParenthesisExpression_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class TypecastExpression_1 : TypecastExpression {
+ public TypecastExpression_1(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((Constant)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class TypecastExpression_2 : TypecastExpression {
+ public TypecastExpression_2(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(2).m_value))
+ .yytext, new IdentExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext)){}}
+
+public class TypecastExpression_3 : TypecastExpression {
+ public TypecastExpression_3(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(4).m_value))
+ .yytext, new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(0).m_value))
+ .yytext)){}}
+
+public class TypecastExpression_4 : TypecastExpression {
+ public TypecastExpression_4(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(3).m_value))
+ .yytext, new IncrementDecrementExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((INCREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true)){}}
+
+public class TypecastExpression_5 : TypecastExpression {
+ public TypecastExpression_5(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(5).m_value))
+ .yytext, new IncrementDecrementExpression(((LSLSyntax
+)yyq), new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext),
+ ((INCREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true)){}}
+
+public class TypecastExpression_6 : TypecastExpression {
+ public TypecastExpression_6(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(3).m_value))
+ .yytext, new IncrementDecrementExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext,
+ ((DECREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true)){}}
+
+public class TypecastExpression_7 : TypecastExpression {
+ public TypecastExpression_7(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(5).m_value))
+ .yytext, new IncrementDecrementExpression(((LSLSyntax
+)yyq), new IdentDotExpression(((LSLSyntax
+)yyq),
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((IDENT)(yyq.StackAt(1).m_value))
+ .yytext),
+ ((DECREMENT)(yyq.StackAt(0).m_value))
+ .yytext, true)){}}
+
+public class TypecastExpression_8 : TypecastExpression {
+ public TypecastExpression_8(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(2).m_value))
+ .yytext,
+ ((FunctionCall)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class TypecastExpression_9 : TypecastExpression {
+ public TypecastExpression_9(Parser yyq):base(yyq,
+ ((Typename)(yyq.StackAt(4).m_value))
+ .yytext,
+ ((Expression)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class FunctionCall_1 : FunctionCall {
+ public FunctionCall_1(Parser yyq):base(yyq,
+ ((IDENT)(yyq.StackAt(3).m_value))
+ .yytext,
+ ((ArgumentList)(yyq.StackAt(1).m_value))
+ ){}}
+
+public class ArgumentList_1 : ArgumentList {
+ public ArgumentList_1(Parser yyq):base(yyq,
+ ((Argument)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ArgumentList_2 : ArgumentList {
+ public ArgumentList_2(Parser yyq):base(yyq,
+ ((ArgumentList)(yyq.StackAt(2).m_value))
+ ,
+ ((Argument)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class ExpressionArgument_1 : ExpressionArgument {
+ public ExpressionArgument_1(Parser yyq):base(yyq,
+ ((Expression)(yyq.StackAt(0).m_value))
+ ){}}
+
+public class Typename_1 : Typename {
+ public Typename_1(Parser yyq):base(yyq,
+ ((INTEGER_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_2 : Typename {
+ public Typename_2(Parser yyq):base(yyq,
+ ((FLOAT_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_3 : Typename {
+ public Typename_3(Parser yyq):base(yyq,
+ ((STRING_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_4 : Typename {
+ public Typename_4(Parser yyq):base(yyq,
+ ((KEY_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_5 : Typename {
+ public Typename_5(Parser yyq):base(yyq,
+ ((VECTOR_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_6 : Typename {
+ public Typename_6(Parser yyq):base(yyq,
+ ((ROTATION_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Typename_7 : Typename {
+ public Typename_7(Parser yyq):base(yyq,
+ ((LIST_TYPE)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_1 : Event {
+ public Event_1(Parser yyq):base(yyq,
+ ((AT_ROT_TARGET_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_2 : Event {
+ public Event_2(Parser yyq):base(yyq,
+ ((AT_TARGET_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_3 : Event {
+ public Event_3(Parser yyq):base(yyq,
+ ((ATTACH_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_4 : Event {
+ public Event_4(Parser yyq):base(yyq,
+ ((CHANGED_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_5 : Event {
+ public Event_5(Parser yyq):base(yyq,
+ ((COLLISION_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_6 : Event {
+ public Event_6(Parser yyq):base(yyq,
+ ((COLLISION_END_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_7 : Event {
+ public Event_7(Parser yyq):base(yyq,
+ ((COLLISION_START_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_8 : Event {
+ public Event_8(Parser yyq):base(yyq,
+ ((CONTROL_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_9 : Event {
+ public Event_9(Parser yyq):base(yyq,
+ ((DATASERVER_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_10 : Event {
+ public Event_10(Parser yyq):base(yyq,
+ ((EMAIL_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_11 : Event {
+ public Event_11(Parser yyq):base(yyq,
+ ((HTTP_RESPONSE_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_12 : Event {
+ public Event_12(Parser yyq):base(yyq,
+ ((LAND_COLLISION_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_13 : Event {
+ public Event_13(Parser yyq):base(yyq,
+ ((LAND_COLLISION_END_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_14 : Event {
+ public Event_14(Parser yyq):base(yyq,
+ ((LAND_COLLISION_START_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_15 : Event {
+ public Event_15(Parser yyq):base(yyq,
+ ((LINK_MESSAGE_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_16 : Event {
+ public Event_16(Parser yyq):base(yyq,
+ ((LISTEN_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_17 : Event {
+ public Event_17(Parser yyq):base(yyq,
+ ((MONEY_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_18 : Event {
+ public Event_18(Parser yyq):base(yyq,
+ ((MOVING_END_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_19 : Event {
+ public Event_19(Parser yyq):base(yyq,
+ ((MOVING_START_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_20 : Event {
+ public Event_20(Parser yyq):base(yyq,
+ ((NO_SENSOR_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_21 : Event {
+ public Event_21(Parser yyq):base(yyq,
+ ((NOT_AT_ROT_TARGET_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_22 : Event {
+ public Event_22(Parser yyq):base(yyq,
+ ((NOT_AT_TARGET_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_23 : Event {
+ public Event_23(Parser yyq):base(yyq,
+ ((OBJECT_REZ_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_24 : Event {
+ public Event_24(Parser yyq):base(yyq,
+ ((ON_REZ_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_25 : Event {
+ public Event_25(Parser yyq):base(yyq,
+ ((REMOTE_DATA_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_26 : Event {
+ public Event_26(Parser yyq):base(yyq,
+ ((RUN_TIME_PERMISSIONS_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_27 : Event {
+ public Event_27(Parser yyq):base(yyq,
+ ((SENSOR_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_28 : Event {
+ public Event_28(Parser yyq):base(yyq,
+ ((STATE_ENTRY_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_29 : Event {
+ public Event_29(Parser yyq):base(yyq,
+ ((STATE_EXIT_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_30 : Event {
+ public Event_30(Parser yyq):base(yyq,
+ ((TIMER_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_31 : Event {
+ public Event_31(Parser yyq):base(yyq,
+ ((TOUCH_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_32 : Event {
+ public Event_32(Parser yyq):base(yyq,
+ ((TOUCH_END_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+
+public class Event_33 : Event {
+ public Event_33(Parser yyq):base(yyq,
+ ((TOUCH_START_EVENT)(yyq.StackAt(0).m_value))
+ .yytext){}}
+public class yyLSLSyntax
+: YyParser {
+ public override object Action(Parser yyq,SYMBOL yysym, int yyact) {
+ switch(yyact) {
+ case -1: break; //// keep compiler happy
+} return null; }
+
+public class ArgumentDeclarationList_3 : ArgumentDeclarationList {
+ public ArgumentDeclarationList_3(Parser yyq):base(yyq){}}
+
+public class ArgumentList_3 : ArgumentList {
+ public ArgumentList_3(Parser yyq):base(yyq){}}
+
+public class Statement_11 : Statement {
+ public Statement_11(Parser yyq):base(yyq){}}
+
+public class ArgumentList_4 : ArgumentList {
+ public ArgumentList_4(Parser yyq):base(yyq){}}
+
+public class ArgumentDeclarationList_4 : ArgumentDeclarationList {
+ public ArgumentDeclarationList_4(Parser yyq):base(yyq){}}
+
+public class ArgumentDeclarationList_5 : ArgumentDeclarationList {
+ public ArgumentDeclarationList_5(Parser yyq):base(yyq){}}
+public yyLSLSyntax
+():base() { arr = new int[] {
+101,4,6,52,0,
+46,0,53,0,102,
+20,103,4,28,76,
+0,83,0,76,0,
+80,0,114,0,111,
+0,103,0,114,0,
+97,0,109,0,82,
+0,111,0,111,0,
+116,0,1,95,1,
+2,104,18,1,2260,
+102,2,0,105,5,
+269,1,0,106,18,
+1,0,0,2,0,
+1,1,107,18,1,
+1,108,20,109,4,
+18,76,0,73,0,
+83,0,84,0,95,
+0,84,0,89,0,
+80,0,69,0,1,
+57,1,1,2,0,
+1,2,110,18,1,
+2,111,20,112,4,
+26,82,0,79,0,
+84,0,65,0,84,
+0,73,0,79,0,
+78,0,95,0,84,
+0,89,0,80,0,
+69,0,1,56,1,
+1,2,0,1,3,
+113,18,1,3,114,
+20,115,4,22,86,
+0,69,0,67,0,
+84,0,79,0,82,
+0,95,0,84,0,
+89,0,80,0,69,
+0,1,55,1,1,
+2,0,1,4,116,
+18,1,4,117,20,
+118,4,16,75,0,
+69,0,89,0,95,
+0,84,0,89,0,
+80,0,69,0,1,
+54,1,1,2,0,
+1,5,119,18,1,
+5,120,20,121,4,
+22,83,0,84,0,
+82,0,73,0,78,
+0,71,0,95,0,
+84,0,89,0,80,
+0,69,0,1,53,
+1,1,2,0,1,
+6,122,18,1,6,
+123,20,124,4,20,
+70,0,76,0,79,
+0,65,0,84,0,
+95,0,84,0,89,
+0,80,0,69,0,
+1,52,1,1,2,
+0,1,7,125,18,
+1,7,126,20,127,
+4,24,73,0,78,
+0,84,0,69,0,
+71,0,69,0,82,
+0,95,0,84,0,
+89,0,80,0,69,
+0,1,51,1,1,
+2,0,1,8,128,
+18,1,8,129,20,
+130,4,16,84,0,
+121,0,112,0,101,
+0,110,0,97,0,
+109,0,101,0,1,
+105,1,2,2,0,
+1,9,131,18,1,
+9,132,20,133,4,
+10,73,0,68,0,
+69,0,78,0,84,
+0,1,91,1,1,
+2,0,1,10,134,
+18,1,10,135,20,
+136,4,20,76,0,
+69,0,70,0,84,
+0,95,0,80,0,
+65,0,82,0,69,
+0,78,0,1,16,
+1,1,2,0,1,
+573,137,18,1,573,
+138,20,139,4,26,
+82,0,73,0,71,
+0,72,0,84,0,
+95,0,66,0,82,
+0,65,0,67,0,
+75,0,69,0,84,
+0,1,28,1,1,
+2,0,1,574,140,
+18,1,574,141,20,
+142,4,16,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,1,
+120,1,2,2,0,
+1,18,143,18,1,
+18,129,2,0,1,
+19,144,18,1,19,
+132,2,0,1,20,
+145,18,1,20,146,
+20,147,4,46,65,
+0,114,0,103,0,
+117,0,109,0,101,
+0,110,0,116,0,
+68,0,101,0,99,
+0,108,0,97,0,
+114,0,97,0,116,
+0,105,0,111,0,
+110,0,76,0,105,
+0,115,0,116,0,
+1,103,1,2,2,
+0,1,21,148,18,
+1,21,149,20,150,
+4,10,67,0,79,
+0,77,0,77,0,
+65,0,1,14,1,
+1,2,0,1,1693,
+151,18,1,1693,152,
+20,153,4,22,82,
+0,73,0,71,0,
+72,0,84,0,95,
+0,80,0,65,0,
+82,0,69,0,78,
+0,1,17,1,1,
+2,0,1,1694,154,
+18,1,1694,155,20,
+156,4,18,83,0,
+69,0,77,0,73,
+0,67,0,79,0,
+76,0,79,0,78,
+0,1,11,1,1,
+2,0,1,2182,157,
+18,1,2182,158,20,
+159,4,10,83,0,
+116,0,97,0,116,
+0,101,0,1,100,
+1,2,2,0,1,
+2184,160,18,1,2184,
+132,2,0,1,2256,
+161,18,1,2256,162,
+20,163,4,48,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,68,0,101,
+0,102,0,105,0,
+110,0,105,0,116,
+0,105,0,111,0,
+110,0,1,98,1,
+2,2,0,1,2257,
+164,18,1,2257,165,
+20,166,4,50,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,86,0,97,0,
+114,0,105,0,97,
+0,98,0,108,0,
+101,0,68,0,101,
+0,99,0,108,0,
+97,0,114,0,97,
+0,116,0,105,0,
+111,0,110,0,1,
+97,1,2,2,0,
+1,30,167,18,1,
+30,168,20,169,4,
+22,68,0,101,0,
+99,0,108,0,97,
+0,114,0,97,0,
+116,0,105,0,111,
+0,110,0,1,104,
+1,2,2,0,1,
+31,170,18,1,31,
+152,2,0,1,32,
+171,18,1,32,172,
+20,173,4,20,76,
+0,69,0,70,0,
+84,0,95,0,66,
+0,82,0,65,0,
+67,0,69,0,1,
+12,1,1,2,0,
+1,2261,174,18,1,
+2261,175,23,176,4,
+6,69,0,79,0,
+70,0,1,2,1,
+6,2,0,1,1706,
+177,18,1,1706,178,
+20,179,4,10,87,
+0,72,0,73,0,
+76,0,69,0,1,
+45,1,1,2,0,
+1,1707,180,18,1,
+1707,135,2,0,1,
+1115,181,18,1,1115,
+182,20,183,4,12,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,15,1,
+1,2,0,1,1152,
+184,18,1,1152,185,
+20,186,4,28,80,
+0,69,0,82,0,
+67,0,69,0,78,
+0,84,0,95,0,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,10,1,
+1,2,0,1,40,
+187,18,1,40,132,
+2,0,1,41,188,
+18,1,41,135,2,
+0,1,42,189,18,
+1,42,190,20,191,
+4,20,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,1,126,1,
+2,2,0,1,43,
+192,18,1,43,193,
+20,194,4,22,82,
+0,73,0,71,0,
+72,0,84,0,95,
+0,83,0,72,0,
+73,0,70,0,84,
+0,1,41,1,1,
+2,0,1,44,195,
+18,1,44,132,2,
+0,1,46,196,18,
+1,46,197,20,198,
+4,12,80,0,69,
+0,82,0,73,0,
+79,0,68,0,1,
+24,1,1,2,0,
+1,47,199,18,1,
+47,132,2,0,1,
+48,200,18,1,48,
+201,20,202,4,18,
+68,0,69,0,67,
+0,82,0,69,0,
+77,0,69,0,78,
+0,84,0,1,5,
+1,1,2,0,1,
+49,203,18,1,49,
+204,20,205,4,18,
+73,0,78,0,67,
+0,82,0,69,0,
+77,0,69,0,78,
+0,84,0,1,4,
+1,1,2,0,1,
+50,206,18,1,50,
+201,2,0,1,51,
+207,18,1,51,204,
+2,0,1,52,208,
+18,1,52,135,2,
+0,1,1674,209,18,
+1,1674,190,2,0,
+1,61,210,18,1,
+61,129,2,0,1,
+62,211,18,1,62,
+152,2,0,1,63,
+212,18,1,63,132,
+2,0,1,65,213,
+18,1,65,197,2,
+0,1,66,214,18,
+1,66,132,2,0,
+1,67,215,18,1,
+67,201,2,0,1,
+68,216,18,1,68,
+204,2,0,1,69,
+217,18,1,69,201,
+2,0,1,70,218,
+18,1,70,204,2,
+0,1,71,219,18,
+1,71,135,2,0,
+1,73,220,18,1,
+73,190,2,0,1,
+74,221,18,1,74,
+152,2,0,1,76,
+222,18,1,76,223,
+20,224,4,20,76,
+0,69,0,70,0,
+84,0,95,0,83,
+0,72,0,73,0,
+70,0,84,0,1,
+40,1,1,2,0,
+1,1193,225,18,1,
+1193,190,2,0,1,
+2237,226,18,1,2237,
+155,2,0,1,1121,
+227,18,1,1121,190,
+2,0,1,82,228,
+18,1,82,190,2,
+0,1,79,229,18,
+1,79,230,20,231,
+4,10,84,0,73,
+0,76,0,68,0,
+69,0,1,36,1,
+1,2,0,1,85,
+232,18,1,85,233,
+20,234,4,26,83,
+0,84,0,82,0,
+79,0,75,0,69,
+0,95,0,83,0,
+84,0,82,0,79,
+0,75,0,69,0,
+1,39,1,1,2,
+0,1,2050,235,18,
+1,2050,236,20,237,
+4,38,65,0,84,
+0,95,0,82,0,
+79,0,84,0,95,
+0,84,0,65,0,
+82,0,71,0,69,
+0,84,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,58,1,1,2,
+0,1,89,238,18,
+1,89,239,20,240,
+4,10,77,0,73,
+0,78,0,85,0,
+83,0,1,19,1,
+1,2,0,1,1762,
+241,18,1,1762,242,
+20,243,4,4,73,
+0,70,0,1,42,
+1,1,2,0,1,
+1763,244,18,1,1763,
+135,2,0,1,93,
+245,18,1,93,190,
+2,0,1,97,246,
+18,1,97,247,20,
+248,4,14,65,0,
+77,0,80,0,95,
+0,65,0,77,0,
+80,0,1,38,1,
+1,2,0,1,1769,
+249,18,1,1769,190,
+2,0,1,102,250,
+18,1,102,251,20,
+252,4,22,69,0,
+88,0,67,0,76,
+0,65,0,77,0,
+65,0,84,0,73,
+0,79,0,78,0,
+1,37,1,1,2,
+0,1,2259,253,18,
+1,2259,165,2,0,
+1,2260,104,1,1668,
+254,18,1,1668,135,
+2,0,1,2194,255,
+18,1,2194,146,2,
+0,1,107,256,18,
+1,107,190,2,0,
+1,1222,257,18,1,
+1222,258,20,259,4,
+22,83,0,84,0,
+65,0,82,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,8,
+1,1,2,0,1,
+112,260,18,1,112,
+261,20,262,4,28,
+71,0,82,0,69,
+0,65,0,84,0,
+69,0,82,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,32,
+1,1,2,0,1,
+1228,263,18,1,1228,
+190,2,0,1,1732,
+264,18,1,1732,152,
+2,0,1,118,265,
+18,1,118,190,2,
+0,1,1158,266,18,
+1,1158,190,2,0,
+1,124,267,18,1,
+124,268,20,269,4,
+22,76,0,69,0,
+83,0,83,0,95,
+0,69,0,81,0,
+85,0,65,0,76,
+0,83,0,1,31,
+1,1,2,0,1,
+130,270,18,1,130,
+190,2,0,1,137,
+271,18,1,137,272,
+20,273,4,36,69,
+0,88,0,67,0,
+76,0,65,0,77,
+0,65,0,84,0,
+73,0,79,0,78,
+0,95,0,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,30,1,1,2,
+0,1,2226,274,18,
+1,2226,155,2,0,
+1,1257,275,18,1,
+1257,276,20,277,4,
+24,77,0,73,0,
+78,0,85,0,83,
+0,95,0,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,7,1,1,2,
+0,1,1817,278,18,
+1,1817,279,20,280,
+4,18,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+1,109,1,2,2,
+0,1,1818,281,18,
+1,1818,282,20,283,
+4,8,69,0,76,
+0,83,0,69,0,
+1,43,1,1,2,
+0,1,1263,284,18,
+1,1263,190,2,0,
+1,151,285,18,1,
+151,286,20,287,4,
+26,69,0,81,0,
+85,0,65,0,76,
+0,83,0,95,0,
+69,0,81,0,85,
+0,65,0,76,0,
+83,0,1,29,1,
+1,2,0,1,1713,
+288,18,1,1713,190,
+2,0,1,143,289,
+18,1,143,190,2,
+0,1,157,290,18,
+1,157,190,2,0,
+1,2249,291,18,1,
+2249,292,20,293,4,
+12,83,0,116,0,
+97,0,116,0,101,
+0,115,0,1,99,
+1,2,2,0,1,
+166,294,18,1,166,
+295,20,296,4,20,
+76,0,69,0,70,
+0,84,0,95,0,
+65,0,78,0,71,
+0,76,0,69,0,
+1,25,1,1,2,
+0,1,172,297,18,
+1,172,190,2,0,
+1,1788,298,18,1,
+1788,152,2,0,1,
+1847,299,18,1,1847,
+279,2,0,1,1292,
+300,18,1,1292,301,
+20,302,4,22,80,
+0,76,0,85,0,
+83,0,95,0,69,
+0,81,0,85,0,
+65,0,76,0,83,
+0,1,6,1,1,
+2,0,1,1850,303,
+18,1,1850,304,20,
+305,4,26,68,0,
+69,0,70,0,65,
+0,85,0,76,0,
+84,0,95,0,83,
+0,84,0,65,0,
+84,0,69,0,1,
+47,1,1,2,0,
+1,1851,306,18,1,
+1851,132,2,0,1,
+1852,307,18,1,1852,
+308,20,309,4,34,
+67,0,111,0,109,
+0,112,0,111,0,
+117,0,110,0,100,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,1,
+107,1,2,2,0,
+1,1853,310,18,1,
+1853,311,20,312,4,
+14,70,0,111,0,
+114,0,76,0,111,
+0,111,0,112,0,
+1,116,1,2,2,
+0,1,1854,313,18,
+1,1854,314,20,315,
+4,32,68,0,111,
+0,87,0,104,0,
+105,0,108,0,101,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,1,
+115,1,2,2,0,
+1,1855,316,18,1,
+1855,317,20,318,4,
+28,87,0,104,0,
+105,0,108,0,101,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,1,
+114,1,2,2,0,
+1,1856,319,18,1,
+1856,320,20,321,4,
+22,73,0,102,0,
+83,0,116,0,97,
+0,116,0,101,0,
+109,0,101,0,110,
+0,116,0,1,113,
+1,2,2,0,1,
+1857,322,18,1,1857,
+323,20,324,4,22,
+83,0,116,0,97,
+0,116,0,101,0,
+67,0,104,0,97,
+0,110,0,103,0,
+101,0,1,112,1,
+2,2,0,1,1858,
+325,18,1,1858,155,
+2,0,1,188,326,
+18,1,188,190,2,
+0,1,1860,327,18,
+1,1860,155,2,0,
+1,1187,328,18,1,
+1187,329,20,330,4,
+24,83,0,76,0,
+65,0,83,0,72,
+0,95,0,69,0,
+81,0,85,0,65,
+0,76,0,83,0,
+1,9,1,1,2,
+0,1,1862,331,18,
+1,1862,155,2,0,
+1,1863,332,18,1,
+1863,155,2,0,1,
+182,333,18,1,182,
+334,20,335,4,22,
+82,0,73,0,71,
+0,72,0,84,0,
+95,0,65,0,78,
+0,71,0,76,0,
+69,0,1,26,1,
+1,2,0,1,199,
+336,18,1,199,337,
+20,338,4,10,67,
+0,65,0,82,0,
+69,0,84,0,1,
+35,1,1,2,0,
+1,1760,339,18,1,
+1760,279,2,0,1,
+205,340,18,1,205,
+190,2,0,1,1327,
+341,18,1,1327,182,
+2,0,1,217,342,
+18,1,217,343,20,
+344,4,12,83,0,
+84,0,82,0,79,
+0,75,0,69,0,
+1,34,1,1,2,
+0,1,1333,345,18,
+1,1333,190,2,0,
+1,223,346,18,1,
+223,190,2,0,1,
+1298,347,18,1,1298,
+190,2,0,1,236,
+348,18,1,236,349,
+20,350,4,6,65,
+0,77,0,80,0,
+1,33,1,1,2,
+0,1,1849,351,18,
+1,1849,352,20,353,
+4,10,83,0,84,
+0,65,0,84,0,
+69,0,1,48,1,
+1,2,0,1,242,
+354,18,1,242,190,
+2,0,1,2258,355,
+18,1,2258,162,2,
+0,1,1859,356,18,
+1,1859,357,20,358,
+4,30,82,0,101,
+0,116,0,117,0,
+114,0,110,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,1,111,1,
+2,2,0,1,1861,
+359,18,1,1861,360,
+20,361,4,20,65,
+0,115,0,115,0,
+105,0,103,0,110,
+0,109,0,101,0,
+110,0,116,0,1,
+110,1,2,2,0,
+1,1366,362,18,1,
+1366,190,2,0,1,
+256,363,18,1,256,
+364,20,365,4,14,
+80,0,69,0,82,
+0,67,0,69,0,
+78,0,84,0,1,
+22,1,1,2,0,
+1,262,366,18,1,
+262,190,2,0,1,
+1938,367,18,1,1938,
+360,2,0,1,827,
+368,18,1,827,190,
+2,0,1,1385,369,
+18,1,1385,155,2,
+0,1,277,370,18,
+1,277,371,20,372,
+4,10,83,0,76,
+0,65,0,83,0,
+72,0,1,21,1,
+1,2,0,1,1396,
+373,18,1,1396,374,
+20,375,4,12,82,
+0,69,0,84,0,
+85,0,82,0,78,
+0,1,50,1,1,
+2,0,1,283,376,
+18,1,283,190,2,
+0,1,1402,377,18,
+1,1402,190,2,0,
+1,1965,378,18,1,
+1965,379,20,380,4,
+26,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,1,108,1,
+2,2,0,1,299,
+381,18,1,299,382,
+20,383,4,8,83,
+0,84,0,65,0,
+82,0,1,20,1,
+1,2,0,1,305,
+384,18,1,305,190,
+2,0,1,1431,385,
+18,1,1431,168,2,
+0,1,1432,386,18,
+1,1432,182,2,0,
+1,322,387,18,1,
+322,239,2,0,1,
+1438,388,18,1,1438,
+190,2,0,1,883,
+389,18,1,883,190,
+2,0,1,328,390,
+18,1,328,190,2,
+0,1,2005,391,18,
+1,2005,279,2,0,
+1,2006,392,18,1,
+2006,393,20,394,4,
+22,82,0,73,0,
+71,0,72,0,84,
+0,95,0,66,0,
+82,0,65,0,67,
+0,69,0,1,13,
+1,1,2,0,1,
+2009,395,18,1,2009,
+279,2,0,1,2011,
+396,18,1,2011,393,
+2,0,1,2013,397,
+18,1,2013,308,2,
+0,1,2014,398,18,
+1,2014,168,2,0,
+1,2015,399,18,1,
+2015,352,2,0,1,
+2016,400,18,1,2016,
+132,2,0,1,346,
+401,18,1,346,402,
+20,403,4,8,80,
+0,76,0,85,0,
+83,0,1,18,1,
+1,2,0,1,2018,
+404,18,1,2018,405,
+20,406,4,34,84,
+0,79,0,85,0,
+67,0,72,0,95,
+0,83,0,84,0,
+65,0,82,0,84,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,89,
+1,1,2,0,1,
+2019,407,18,1,2019,
+408,20,409,4,30,
+84,0,79,0,85,
+0,67,0,72,0,
+95,0,69,0,78,
+0,68,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,90,1,1,2,
+0,1,2020,410,18,
+1,2020,411,20,412,
+4,22,84,0,79,
+0,85,0,67,0,
+72,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+88,1,1,2,0,
+1,2021,413,18,1,
+2021,414,20,415,4,
+22,84,0,73,0,
+77,0,69,0,82,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,87,
+1,1,2,0,1,
+2022,416,18,1,2022,
+417,20,418,4,32,
+83,0,84,0,65,
+0,84,0,69,0,
+95,0,69,0,88,
+0,73,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,86,1,
+1,2,0,1,352,
+419,18,1,352,190,
+2,0,1,1467,420,
+18,1,1467,155,2,
+0,1,1468,421,18,
+1,1468,422,20,423,
+4,6,70,0,79,
+0,82,0,1,46,
+1,1,2,0,1,
+1469,424,18,1,1469,
+135,2,0,1,2027,
+425,18,1,2027,426,
+20,427,4,24,79,
+0,78,0,95,0,
+82,0,69,0,90,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,81,
+1,1,2,0,1,
+2028,428,18,1,2028,
+429,20,430,4,32,
+79,0,66,0,74,
+0,69,0,67,0,
+84,0,95,0,82,
+0,69,0,90,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,80,1,
+1,2,0,1,2029,
+431,18,1,2029,432,
+20,433,4,38,78,
+0,79,0,84,0,
+95,0,65,0,84,
+0,95,0,84,0,
+65,0,82,0,71,
+0,69,0,84,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,79,1,
+1,2,0,1,2030,
+434,18,1,2030,435,
+20,436,4,46,78,
+0,79,0,84,0,
+95,0,65,0,84,
+0,95,0,82,0,
+79,0,84,0,95,
+0,84,0,65,0,
+82,0,71,0,69,
+0,84,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,78,1,1,2,
+0,1,2031,437,18,
+1,2031,438,20,439,
+4,30,78,0,79,
+0,95,0,83,0,
+69,0,78,0,83,
+0,79,0,82,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,77,1,
+1,2,0,1,2032,
+440,18,1,2032,441,
+20,442,4,36,77,
+0,79,0,86,0,
+73,0,78,0,71,
+0,95,0,83,0,
+84,0,65,0,82,
+0,84,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,76,1,1,2,
+0,1,2033,443,18,
+1,2033,444,20,445,
+4,32,77,0,79,
+0,86,0,73,0,
+78,0,71,0,95,
+0,69,0,78,0,
+68,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+75,1,1,2,0,
+1,2034,446,18,1,
+2034,447,20,448,4,
+22,77,0,79,0,
+78,0,69,0,89,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,74,
+1,1,2,0,1,
+2035,449,18,1,2035,
+450,20,451,4,24,
+76,0,73,0,83,
+0,84,0,69,0,
+78,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+73,1,1,2,0,
+1,2036,452,18,1,
+2036,453,20,454,4,
+36,76,0,73,0,
+78,0,75,0,95,
+0,77,0,69,0,
+83,0,83,0,65,
+0,71,0,69,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,72,1,
+1,2,0,1,2037,
+455,18,1,2037,456,
+20,457,4,52,76,
+0,65,0,78,0,
+68,0,95,0,67,
+0,79,0,76,0,
+76,0,73,0,83,
+0,73,0,79,0,
+78,0,95,0,83,
+0,84,0,65,0,
+82,0,84,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,71,1,1,
+2,0,1,2038,458,
+18,1,2038,459,20,
+460,4,48,76,0,
+65,0,78,0,68,
+0,95,0,67,0,
+79,0,76,0,76,
+0,73,0,83,0,
+73,0,79,0,78,
+0,95,0,69,0,
+78,0,68,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,70,1,1,
+2,0,1,1482,461,
+18,1,1482,190,2,
+0,1,2040,462,18,
+1,2040,463,20,464,
+4,38,72,0,84,
+0,84,0,80,0,
+95,0,82,0,69,
+0,83,0,80,0,
+79,0,78,0,83,
+0,69,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,68,1,1,2,
+0,1,2041,465,18,
+1,2041,466,20,467,
+4,22,69,0,77,
+0,65,0,73,0,
+76,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+67,1,1,2,0,
+1,371,468,18,1,
+371,469,20,470,4,
+24,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,67,0,97,
+0,108,0,108,0,
+1,118,1,2,2,
+0,1,372,471,18,
+1,372,201,2,0,
+1,373,472,18,1,
+373,132,2,0,1,
+374,473,18,1,374,
+197,2,0,1,375,
+474,18,1,375,132,
+2,0,1,376,475,
+18,1,376,204,2,
+0,1,377,476,18,
+1,377,132,2,0,
+1,378,477,18,1,
+378,197,2,0,1,
+379,478,18,1,379,
+132,2,0,1,380,
+479,18,1,380,480,
+20,481,4,16,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+1,122,1,2,2,
+0,1,381,482,18,
+1,381,483,20,484,
+4,24,76,0,69,
+0,70,0,84,0,
+95,0,66,0,82,
+0,65,0,67,0,
+75,0,69,0,84,
+0,1,27,1,1,
+2,0,1,383,485,
+18,1,383,486,20,
+487,4,24,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,1,119,1,
+2,2,0,1,384,
+488,18,1,384,149,
+2,0,1,942,489,
+18,1,942,190,2,
+0,1,386,490,18,
+1,386,141,2,0,
+1,2196,491,18,1,
+2196,152,2,0,1,
+2061,492,18,1,2061,
+146,2,0,1,2063,
+493,18,1,2063,152,
+2,0,1,2065,494,
+18,1,2065,308,2,
+0,1,2067,495,18,
+1,2067,496,20,497,
+4,18,83,0,116,
+0,97,0,116,0,
+101,0,66,0,111,
+0,100,0,121,0,
+1,101,1,2,2,
+0,1,1511,498,18,
+1,1511,168,2,0,
+1,1513,499,18,1,
+1513,500,20,501,4,
+32,70,0,111,0,
+114,0,76,0,111,
+0,111,0,112,0,
+83,0,116,0,97,
+0,116,0,101,0,
+109,0,101,0,110,
+0,116,0,1,117,
+1,2,2,0,1,
+1514,502,18,1,1514,
+149,2,0,1,403,
+503,18,1,403,190,
+2,0,1,397,504,
+18,1,397,295,2,
+0,1,1527,505,18,
+1,1527,190,2,0,
+1,2023,506,18,1,
+2023,507,20,508,4,
+34,83,0,84,0,
+65,0,84,0,69,
+0,95,0,69,0,
+78,0,84,0,82,
+0,89,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,85,1,1,2,
+0,1,2024,509,18,
+1,2024,510,20,511,
+4,24,83,0,69,
+0,78,0,83,0,
+79,0,82,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,84,1,1,
+2,0,1,2025,512,
+18,1,2025,513,20,
+514,4,52,82,0,
+85,0,78,0,95,
+0,84,0,73,0,
+77,0,69,0,95,
+0,80,0,69,0,
+82,0,77,0,73,
+0,83,0,83,0,
+73,0,79,0,78,
+0,83,0,95,0,
+69,0,86,0,69,
+0,78,0,84,0,
+1,83,1,1,2,
+0,1,2026,515,18,
+1,2026,516,20,517,
+4,34,82,0,69,
+0,77,0,79,0,
+84,0,69,0,95,
+0,68,0,65,0,
+84,0,65,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,82,1,1,
+2,0,1,422,518,
+18,1,422,149,2,
+0,1,428,519,18,
+1,428,190,2,0,
+1,2102,520,18,1,
+2102,521,20,522,4,
+20,83,0,116,0,
+97,0,116,0,101,
+0,69,0,118,0,
+101,0,110,0,116,
+0,1,102,1,2,
+2,0,1,2103,523,
+18,1,2103,393,2,
+0,1,2039,524,18,
+1,2039,525,20,526,
+4,40,76,0,65,
+0,78,0,68,0,
+95,0,67,0,79,
+0,76,0,76,0,
+73,0,83,0,73,
+0,79,0,78,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,69,1,
+1,2,0,1,2105,
+527,18,1,2105,304,
+2,0,1,2106,528,
+18,1,2106,172,2,
+0,1,2042,529,18,
+1,2042,530,20,531,
+4,32,68,0,65,
+0,84,0,65,0,
+83,0,69,0,82,
+0,86,0,69,0,
+82,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+66,1,1,2,0,
+1,2043,532,18,1,
+2043,533,20,534,4,
+26,67,0,79,0,
+78,0,84,0,82,
+0,79,0,76,0,
+95,0,69,0,86,
+0,69,0,78,0,
+84,0,1,65,1,
+1,2,0,1,2044,
+535,18,1,2044,536,
+20,537,4,42,67,
+0,79,0,76,0,
+76,0,73,0,83,
+0,73,0,79,0,
+78,0,95,0,83,
+0,84,0,65,0,
+82,0,84,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,64,1,1,
+2,0,1,2045,538,
+18,1,2045,539,20,
+540,4,38,67,0,
+79,0,76,0,76,
+0,73,0,83,0,
+73,0,79,0,78,
+0,95,0,69,0,
+78,0,68,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,63,1,1,
+2,0,1,2046,541,
+18,1,2046,542,20,
+543,4,30,67,0,
+79,0,76,0,76,
+0,73,0,83,0,
+73,0,79,0,78,
+0,95,0,69,0,
+86,0,69,0,78,
+0,84,0,1,62,
+1,1,2,0,1,
+2047,544,18,1,2047,
+545,20,546,4,26,
+67,0,72,0,65,
+0,78,0,71,0,
+69,0,68,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,61,1,1,
+2,0,1,1557,547,
+18,1,1557,360,2,
+0,1,1001,548,18,
+1,1001,469,2,0,
+1,1559,549,18,1,
+1559,155,2,0,1,
+2051,550,18,1,2051,
+551,20,552,4,10,
+69,0,118,0,101,
+0,110,0,116,0,
+1,106,1,2,2,
+0,1,447,553,18,
+1,447,149,2,0,
+1,1565,554,18,1,
+1565,190,2,0,1,
+1010,555,18,1,1010,
+190,2,0,1,1011,
+556,18,1,1011,152,
+2,0,1,463,557,
+18,1,463,334,2,
+0,1,453,558,18,
+1,453,190,2,0,
+1,1584,559,18,1,
+1584,155,2,0,1,
+476,560,18,1,476,
+561,20,562,4,30,
+83,0,84,0,82,
+0,73,0,78,0,
+71,0,95,0,67,
+0,79,0,78,0,
+83,0,84,0,65,
+0,78,0,84,0,
+1,3,1,1,2,
+0,1,477,563,18,
+1,477,564,20,565,
+4,28,70,0,76,
+0,79,0,65,0,
+84,0,95,0,67,
+0,79,0,78,0,
+83,0,84,0,65,
+0,78,0,84,0,
+1,94,1,1,2,
+0,1,478,566,18,
+1,478,567,20,568,
+4,40,72,0,69,
+0,88,0,95,0,
+73,0,78,0,84,
+0,69,0,71,0,
+69,0,82,0,95,
+0,67,0,79,0,
+78,0,83,0,84,
+0,65,0,78,0,
+84,0,1,93,1,
+1,2,0,1,479,
+569,18,1,479,570,
+20,571,4,32,73,
+0,78,0,84,0,
+69,0,71,0,69,
+0,82,0,95,0,
+67,0,79,0,78,
+0,83,0,84,0,
+65,0,78,0,84,
+0,1,92,1,1,
+2,0,1,488,572,
+18,1,488,149,2,
+0,1,1046,573,18,
+1,1046,190,2,0,
+1,494,574,18,1,
+494,190,2,0,1,
+1609,575,18,1,1609,
+500,2,0,1,1611,
+576,18,1,1611,152,
+2,0,1,2104,577,
+18,1,2104,521,2,
+0,1,504,578,18,
+1,504,334,2,0,
+1,2177,579,18,1,
+2177,393,2,0,1,
+2238,580,18,1,2238,
+581,20,582,4,34,
+71,0,108,0,111,
+0,98,0,97,0,
+108,0,68,0,101,
+0,102,0,105,0,
+110,0,105,0,116,
+0,105,0,111,0,
+110,0,115,0,1,
+96,1,2,2,0,
+1,2179,583,18,1,
+2179,292,2,0,1,
+2048,584,18,1,2048,
+585,20,586,4,24,
+65,0,84,0,84,
+0,65,0,67,0,
+72,0,95,0,69,
+0,86,0,69,0,
+78,0,84,0,1,
+60,1,1,2,0,
+1,2049,587,18,1,
+2049,588,20,589,4,
+30,65,0,84,0,
+95,0,84,0,65,
+0,82,0,71,0,
+69,0,84,0,95,
+0,69,0,86,0,
+69,0,78,0,84,
+0,1,59,1,1,
+2,0,1,1002,590,
+18,1,1002,480,2,
+0,1,2183,591,18,
+1,2183,158,2,0,
+1,2052,592,18,1,
+2052,135,2,0,1,
+2185,593,18,1,2185,
+135,2,0,1,1637,
+594,18,1,1637,279,
+2,0,1,1639,595,
+18,1,1639,596,20,
+597,4,4,68,0,
+79,0,1,44,1,
+1,2,0,1,2198,
+598,18,1,2198,308,
+2,0,1,2200,599,
+18,1,2200,168,2,
+0,1,2201,600,18,
+1,2201,182,2,0,
+1,1092,601,18,1,
+1092,486,2,0,1,
+2207,602,18,1,2207,
+190,2,0,1,1094,
+603,18,1,1094,152,
+2,0,1,2141,604,
+18,1,2141,496,2,
+0,1,2017,605,18,
+1,2017,172,2,0,
+1,1666,606,18,1,
+1666,279,2,0,1,
+1667,607,18,1,1667,
+178,2,0,1,1111,
+608,18,1,1111,197,
+2,0,1,1112,609,
+18,1,1112,132,2,
+0,610,5,0,611,
+5,287,1,2,612,
+19,176,1,2,613,
+5,6,1,2179,614,
+17,615,15,616,4,
+30,37,0,76,0,
+83,0,76,0,80,
+0,114,0,111,0,
+103,0,114,0,97,
+0,109,0,82,0,
+111,0,111,0,116,
+0,1,-1,1,5,
+617,20,618,4,32,
+76,0,83,0,76,
+0,80,0,114,0,
+111,0,103,0,114,
+0,97,0,109,0,
+82,0,111,0,111,
+0,116,0,95,0,
+50,0,1,138,1,
+3,1,2,1,1,
+619,22,1,2,1,
+2103,620,17,621,15,
+622,4,12,37,0,
+83,0,116,0,97,
+0,116,0,101,0,
+1,-1,1,5,623,
+20,624,4,14,83,
+0,116,0,97,0,
+116,0,101,0,95,
+0,50,0,1,150,
+1,3,1,6,1,
+5,625,22,1,14,
+1,2183,626,17,627,
+15,628,4,14,37,
+0,83,0,116,0,
+97,0,116,0,101,
+0,115,0,1,-1,
+1,5,629,20,630,
+4,16,83,0,116,
+0,97,0,116,0,
+101,0,115,0,95,
+0,49,0,1,147,
+1,3,1,2,1,
+1,631,22,1,11,
+1,2182,632,17,633,
+15,628,1,-1,1,
+5,634,20,635,4,
+16,83,0,116,0,
+97,0,116,0,101,
+0,115,0,95,0,
+50,0,1,148,1,
+3,1,3,1,2,
+636,22,1,12,1,
+2249,637,17,638,15,
+616,1,-1,1,5,
+639,20,640,4,32,
+76,0,83,0,76,
+0,80,0,114,0,
+111,0,103,0,114,
+0,97,0,109,0,
+82,0,111,0,111,
+0,116,0,95,0,
+49,0,1,137,1,
+3,1,3,1,2,
+641,22,1,1,1,
+2177,642,17,643,15,
+622,1,-1,1,5,
+644,20,645,4,14,
+83,0,116,0,97,
+0,116,0,101,0,
+95,0,49,0,1,
+149,1,3,1,5,
+1,4,646,22,1,
+13,1,3,647,19,
+562,1,3,648,5,
+77,1,1853,649,17,
+650,15,651,4,20,
+37,0,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+1,-1,1,5,652,
+20,653,4,22,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,57,
+0,1,169,1,3,
+1,2,1,1,654,
+22,1,35,1,1854,
+655,17,656,15,651,
+1,-1,1,5,657,
+20,658,4,22,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,56,
+0,1,168,1,3,
+1,2,1,1,659,
+22,1,34,1,1855,
+660,17,661,15,651,
+1,-1,1,5,662,
+20,663,4,22,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,55,
+0,1,167,1,3,
+1,2,1,1,664,
+22,1,33,1,112,
+665,16,0,560,1,
+384,666,16,0,560,
+1,1858,667,17,668,
+15,651,1,-1,1,
+5,669,20,670,4,
+22,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,53,0,1,165,
+1,3,1,3,1,
+2,671,22,1,31,
+1,1860,672,17,673,
+15,651,1,-1,1,
+5,674,20,675,4,
+22,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,52,0,1,164,
+1,3,1,3,1,
+2,676,22,1,30,
+1,1862,677,17,678,
+15,651,1,-1,1,
+5,679,20,680,4,
+22,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,50,0,1,162,
+1,3,1,3,1,
+2,681,22,1,28,
+1,1863,682,17,683,
+15,651,1,-1,1,
+5,279,1,1,1,
+1,684,22,1,26,
+1,447,685,16,0,
+560,1,1611,686,16,
+0,560,1,124,687,
+16,0,560,1,1760,
+688,17,689,15,690,
+4,30,37,0,87,
+0,104,0,105,0,
+108,0,101,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,1,-1,1,
+5,691,20,692,4,
+32,87,0,104,0,
+105,0,108,0,101,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,49,0,1,175,
+1,3,1,6,1,
+5,693,22,1,41,
+1,236,694,16,0,
+560,1,1763,695,16,
+0,560,1,2201,696,
+16,0,560,1,1222,
+697,16,0,560,1,
+1115,698,16,0,560,
+1,1187,699,16,0,
+560,1,137,700,16,
+0,560,1,217,701,
+16,0,560,1,32,
+702,16,0,560,1,
+1668,703,16,0,560,
+1,1514,704,16,0,
+560,1,256,705,16,
+0,560,1,41,706,
+16,0,560,1,151,
+707,16,0,560,1,
+43,708,16,0,560,
+1,1732,709,16,0,
+560,1,1637,710,17,
+711,15,712,4,16,
+37,0,70,0,111,
+0,114,0,76,0,
+111,0,111,0,112,
+0,1,-1,1,5,
+713,20,714,4,18,
+70,0,111,0,114,
+0,76,0,111,0,
+111,0,112,0,95,
+0,49,0,1,177,
+1,3,1,10,1,
+9,715,22,1,43,
+1,2009,716,17,717,
+15,718,4,28,37,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,1,-1,1,
+5,719,20,720,4,
+30,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,95,0,49,
+0,1,159,1,3,
+1,2,1,1,721,
+22,1,24,1,1639,
+722,16,0,560,1,
+2011,723,17,724,15,
+725,4,36,37,0,
+67,0,111,0,109,
+0,112,0,111,0,
+117,0,110,0,100,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,1,
+-1,1,5,726,20,
+727,4,38,67,0,
+111,0,109,0,112,
+0,111,0,117,0,
+110,0,100,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,157,1,3,
+1,3,1,2,728,
+22,1,22,1,1467,
+729,17,730,15,651,
+1,-1,1,5,731,
+20,732,4,22,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,161,1,3,
+1,3,1,2,733,
+22,1,27,1,1584,
+734,16,0,560,1,
+52,735,16,0,560,
+1,381,736,16,0,
+560,1,346,737,16,
+0,560,1,166,738,
+16,0,560,1,1257,
+739,16,0,560,1,
+1694,740,17,741,15,
+742,4,34,37,0,
+68,0,111,0,87,
+0,104,0,105,0,
+108,0,101,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,1,-1,1,
+5,743,20,744,4,
+36,68,0,111,0,
+87,0,104,0,105,
+0,108,0,101,0,
+83,0,116,0,97,
+0,116,0,101,0,
+109,0,101,0,110,
+0,116,0,95,0,
+49,0,1,176,1,
+3,1,8,1,7,
+745,22,1,42,1,
+1432,746,16,0,560,
+1,1152,747,16,0,
+560,1,1856,748,17,
+749,15,651,1,-1,
+1,5,750,20,751,
+4,22,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+95,0,54,0,1,
+166,1,3,1,2,
+1,1,752,22,1,
+32,1,62,753,16,
+0,560,1,1965,754,
+16,0,560,1,504,
+755,16,0,560,1,
+277,756,16,0,560,
+1,397,757,16,0,
+560,1,71,758,16,
+0,560,1,1707,759,
+16,0,560,1,1817,
+760,17,761,15,762,
+4,24,37,0,73,
+0,102,0,83,0,
+116,0,97,0,116,
+0,101,0,109,0,
+101,0,110,0,116,
+0,1,-1,1,5,
+763,20,764,4,26,
+73,0,102,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,173,1,3,
+1,6,1,5,765,
+22,1,39,1,1818,
+766,16,0,560,1,
+463,767,16,0,560,
+1,76,768,16,0,
+560,1,1385,769,17,
+770,15,651,1,-1,
+1,5,771,20,772,
+4,22,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+95,0,51,0,1,
+163,1,3,1,3,
+1,2,773,22,1,
+29,1,79,774,16,
+0,560,1,182,775,
+16,0,560,1,299,
+776,16,0,560,1,
+2006,777,17,778,15,
+725,1,-1,1,5,
+779,20,780,4,38,
+67,0,111,0,109,
+0,112,0,111,0,
+117,0,110,0,100,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,50,0,1,158,
+1,3,1,4,1,
+3,781,22,1,23,
+1,1559,782,16,0,
+560,1,85,783,16,
+0,560,1,488,784,
+16,0,560,1,1396,
+785,16,0,560,1,
+89,786,16,0,560,
+1,199,787,16,0,
+560,1,1292,788,16,
+0,560,1,422,789,
+16,0,560,1,97,
+790,16,0,560,1,
+1469,791,16,0,560,
+1,1788,792,16,0,
+560,1,102,793,16,
+0,560,1,1847,794,
+17,795,15,762,1,
+-1,1,5,796,20,
+797,4,26,73,0,
+102,0,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+95,0,50,0,1,
+174,1,3,1,8,
+1,7,798,22,1,
+40,1,322,799,16,
+0,560,1,1327,800,
+16,0,560,1,2005,
+801,17,802,15,718,
+1,-1,1,5,803,
+20,804,4,30,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,76,0,105,
+0,115,0,116,0,
+95,0,50,0,1,
+160,1,3,1,3,
+1,2,805,22,1,
+25,1,1852,806,17,
+807,15,651,1,-1,
+1,5,808,20,809,
+4,24,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+95,0,49,0,48,
+0,1,170,1,3,
+1,2,1,1,810,
+22,1,36,1,4,
+811,19,205,1,4,
+812,5,82,1,2009,
+716,1,1257,813,16,
+0,475,1,1760,688,
+1,256,814,16,0,
+475,1,1763,815,16,
+0,475,1,1514,816,
+16,0,475,1,504,
+817,16,0,475,1,
+277,818,16,0,475,
+1,1788,819,16,0,
+475,1,32,820,16,
+0,475,1,1292,821,
+16,0,475,1,40,
+822,16,0,207,1,
+41,823,16,0,475,
+1,43,824,16,0,
+475,1,44,825,16,
+0,207,1,47,826,
+16,0,203,1,299,
+827,16,0,475,1,
+52,828,16,0,475,
+1,1559,829,16,0,
+475,1,1817,760,1,
+1818,830,16,0,475,
+1,63,831,16,0,
+218,1,66,832,16,
+0,216,1,2011,723,
+1,71,833,16,0,
+475,1,1327,834,16,
+0,475,1,76,835,
+16,0,475,1,1584,
+836,16,0,475,1,
+79,837,16,0,475,
+1,322,838,16,0,
+475,1,85,839,16,
+0,475,1,89,840,
+16,0,475,1,1847,
+794,1,346,841,16,
+0,475,1,1853,649,
+1,1854,655,1,1855,
+660,1,1856,748,1,
+1858,667,1,97,842,
+16,0,475,1,1860,
+672,1,1862,677,1,
+1863,682,1,102,843,
+16,0,475,1,1112,
+844,16,0,203,1,
+1115,845,16,0,475,
+1,112,846,16,0,
+475,1,124,847,16,
+0,475,1,381,848,
+16,0,475,1,1637,
+710,1,384,849,16,
+0,475,1,137,850,
+16,0,475,1,1396,
+851,16,0,475,1,
+397,852,16,0,475,
+1,1152,853,16,0,
+475,1,151,854,16,
+0,475,1,1852,806,
+1,1611,855,16,0,
+475,1,1668,856,16,
+0,475,1,166,857,
+16,0,475,1,422,
+858,16,0,475,1,
+1385,769,1,1432,859,
+16,0,475,1,182,
+860,16,0,475,1,
+1187,861,16,0,475,
+1,1639,862,16,0,
+475,1,1694,740,1,
+2201,863,16,0,475,
+1,447,864,16,0,
+475,1,199,865,16,
+0,475,1,1707,866,
+16,0,475,1,1965,
+867,16,0,475,1,
+1467,729,1,1469,868,
+16,0,475,1,217,
+869,16,0,475,1,
+1222,870,16,0,475,
+1,1732,871,16,0,
+475,1,463,872,16,
+0,475,1,236,873,
+16,0,475,1,488,
+874,16,0,475,1,
+2005,801,1,2006,777,
+1,5,875,19,202,
+1,5,876,5,82,
+1,2009,716,1,1257,
+877,16,0,471,1,
+1760,688,1,256,878,
+16,0,471,1,1763,
+879,16,0,471,1,
+1514,880,16,0,471,
+1,504,881,16,0,
+471,1,277,882,16,
+0,471,1,1788,883,
+16,0,471,1,32,
+884,16,0,471,1,
+1292,885,16,0,471,
+1,40,886,16,0,
+206,1,41,887,16,
+0,471,1,43,888,
+16,0,471,1,44,
+889,16,0,206,1,
+47,890,16,0,200,
+1,299,891,16,0,
+471,1,52,892,16,
+0,471,1,1559,893,
+16,0,471,1,1817,
+760,1,1818,894,16,
+0,471,1,63,895,
+16,0,217,1,66,
+896,16,0,215,1,
+2011,723,1,71,897,
+16,0,471,1,1327,
+898,16,0,471,1,
+76,899,16,0,471,
+1,1584,900,16,0,
+471,1,79,901,16,
+0,471,1,322,902,
+16,0,471,1,85,
+903,16,0,471,1,
+89,904,16,0,471,
+1,1847,794,1,346,
+905,16,0,471,1,
+1853,649,1,1854,655,
+1,1855,660,1,1856,
+748,1,1858,667,1,
+97,906,16,0,471,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+102,907,16,0,471,
+1,1112,908,16,0,
+200,1,1115,909,16,
+0,471,1,112,910,
+16,0,471,1,124,
+911,16,0,471,1,
+381,912,16,0,471,
+1,1637,710,1,384,
+913,16,0,471,1,
+137,914,16,0,471,
+1,1396,915,16,0,
+471,1,397,916,16,
+0,471,1,1152,917,
+16,0,471,1,151,
+918,16,0,471,1,
+1852,806,1,1611,919,
+16,0,471,1,1668,
+920,16,0,471,1,
+166,921,16,0,471,
+1,422,922,16,0,
+471,1,1385,769,1,
+1432,923,16,0,471,
+1,182,924,16,0,
+471,1,1187,925,16,
+0,471,1,1639,926,
+16,0,471,1,1694,
+740,1,2201,927,16,
+0,471,1,447,928,
+16,0,471,1,199,
+929,16,0,471,1,
+1707,930,16,0,471,
+1,1965,931,16,0,
+471,1,1467,729,1,
+1469,932,16,0,471,
+1,217,933,16,0,
+471,1,1222,934,16,
+0,471,1,1732,935,
+16,0,471,1,463,
+936,16,0,471,1,
+236,937,16,0,471,
+1,488,938,16,0,
+471,1,2005,801,1,
+2006,777,1,6,939,
+19,302,1,6,940,
+5,1,1,40,941,
+16,0,300,1,7,
+942,19,277,1,7,
+943,5,1,1,40,
+944,16,0,275,1,
+8,945,19,259,1,
+8,946,5,1,1,
+40,947,16,0,257,
+1,9,948,19,330,
+1,9,949,5,1,
+1,40,950,16,0,
+328,1,10,951,19,
+186,1,10,952,5,
+1,1,40,953,16,
+0,184,1,11,954,
+19,156,1,11,955,
+5,108,1,2009,716,
+1,504,956,17,957,
+15,958,4,34,37,
+0,82,0,111,0,
+116,0,97,0,116,
+0,105,0,111,0,
+110,0,67,0,111,
+0,110,0,115,0,
+116,0,97,0,110,
+0,116,0,1,-1,
+1,5,959,20,960,
+4,36,82,0,111,
+0,116,0,97,0,
+116,0,105,0,111,
+0,110,0,67,0,
+111,0,110,0,115,
+0,116,0,97,0,
+110,0,116,0,95,
+0,49,0,1,197,
+1,3,1,10,1,
+9,961,22,1,63,
+1,1760,688,1,1513,
+962,16,0,549,1,
+1263,963,17,964,15,
+965,4,22,37,0,
+65,0,115,0,115,
+0,105,0,103,0,
+110,0,109,0,101,
+0,110,0,116,0,
+1,-1,1,5,966,
+20,967,4,24,65,
+0,115,0,115,0,
+105,0,103,0,110,
+0,109,0,101,0,
+110,0,116,0,95,
+0,52,0,1,185,
+1,3,1,4,1,
+3,968,22,1,51,
+1,9,969,17,970,
+15,971,4,24,37,
+0,68,0,101,0,
+99,0,108,0,97,
+0,114,0,97,0,
+116,0,105,0,111,
+0,110,0,1,-1,
+1,5,972,20,973,
+4,26,68,0,101,
+0,99,0,108,0,
+97,0,114,0,97,
+0,116,0,105,0,
+111,0,110,0,95,
+0,49,0,1,156,
+1,3,1,3,1,
+2,974,22,1,21,
+1,262,975,17,976,
+15,977,4,34,37,
+0,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,1,-1,
+1,5,978,20,979,
+4,36,66,0,105,
+0,110,0,97,0,
+114,0,121,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,53,0,1,215,
+1,3,1,4,1,
+3,980,22,1,81,
+1,19,981,17,970,
+1,2,974,1,1527,
+982,17,983,15,984,
+4,34,37,0,70,
+0,111,0,114,0,
+76,0,111,0,111,
+0,112,0,83,0,
+116,0,97,0,116,
+0,101,0,109,0,
+101,0,110,0,116,
+0,1,-1,1,5,
+985,20,986,4,36,
+70,0,111,0,114,
+0,76,0,111,0,
+111,0,112,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,51,
+0,1,180,1,3,
+1,4,1,3,987,
+22,1,46,1,477,
+988,17,989,15,990,
+4,18,37,0,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+1,-1,1,5,991,
+20,992,4,20,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+95,0,51,0,1,
+194,1,3,1,2,
+1,1,993,22,1,
+60,1,1001,994,17,
+995,15,996,4,38,
+37,0,84,0,121,
+0,112,0,101,0,
+99,0,97,0,115,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,1,-1,
+1,5,997,20,998,
+4,40,84,0,121,
+0,112,0,101,0,
+99,0,97,0,115,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+56,0,1,240,1,
+3,1,5,1,4,
+999,22,1,106,1,
+1788,1000,16,0,332,
+1,32,1001,16,0,
+332,1,40,1002,17,
+1003,15,1004,4,32,
+37,0,73,0,100,
+0,101,0,110,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,1,-1,1,
+5,1005,20,1006,4,
+34,73,0,100,0,
+101,0,110,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,95,0,49,0,
+1,200,1,3,1,
+2,1,1,1007,22,
+1,66,1,283,1008,
+17,1009,15,977,1,
+-1,1,5,1010,20,
+1011,4,36,66,0,
+105,0,110,0,97,
+0,114,0,121,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,52,0,1,
+214,1,3,1,4,
+1,3,1012,22,1,
+80,1,1298,1013,17,
+1014,15,965,1,-1,
+1,5,1015,20,1016,
+4,24,65,0,115,
+0,115,0,105,0,
+103,0,110,0,109,
+0,101,0,110,0,
+116,0,95,0,51,
+0,1,184,1,3,
+1,4,1,3,1017,
+22,1,50,1,44,
+1018,17,1003,1,1,
+1007,1,47,1019,17,
+1020,15,1021,4,38,
+37,0,73,0,100,
+0,101,0,110,0,
+116,0,68,0,111,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,1,-1,
+1,5,1022,20,1023,
+4,40,73,0,100,
+0,101,0,110,0,
+116,0,68,0,111,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+49,0,1,201,1,
+3,1,4,1,3,
+1024,22,1,67,1,
+48,1025,17,1026,15,
+1027,4,58,37,0,
+73,0,110,0,99,
+0,114,0,101,0,
+109,0,101,0,110,
+0,116,0,68,0,
+101,0,99,0,114,
+0,101,0,109,0,
+101,0,110,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,1,-1,1,5,
+1028,20,1029,4,60,
+73,0,110,0,99,
+0,114,0,101,0,
+109,0,101,0,110,
+0,116,0,68,0,
+101,0,99,0,114,
+0,101,0,109,0,
+101,0,110,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,95,0,52,0,
+1,205,1,3,1,
+5,1,4,1030,22,
+1,71,1,49,1031,
+17,1032,15,1027,1,
+-1,1,5,1033,20,
+1034,4,60,73,0,
+110,0,99,0,114,
+0,101,0,109,0,
+101,0,110,0,116,
+0,68,0,101,0,
+99,0,114,0,101,
+0,109,0,101,0,
+110,0,116,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,51,0,1,204,
+1,3,1,5,1,
+4,1035,22,1,70,
+1,50,1036,17,1037,
+15,1027,1,-1,1,
+5,1038,20,1039,4,
+60,73,0,110,0,
+99,0,114,0,101,
+0,109,0,101,0,
+110,0,116,0,68,
+0,101,0,99,0,
+114,0,101,0,109,
+0,101,0,110,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,50,
+0,1,203,1,3,
+1,3,1,2,1040,
+22,1,69,1,51,
+1041,17,1042,15,1027,
+1,-1,1,5,1043,
+20,1044,4,60,73,
+0,110,0,99,0,
+114,0,101,0,109,
+0,101,0,110,0,
+116,0,68,0,101,
+0,99,0,114,0,
+101,0,109,0,101,
+0,110,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,49,0,1,
+202,1,3,1,3,
+1,2,1045,22,1,
+68,1,305,1046,17,
+1047,15,977,1,-1,
+1,5,1048,20,1049,
+4,36,66,0,105,
+0,110,0,97,0,
+114,0,121,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,51,0,1,213,
+1,3,1,4,1,
+3,1050,22,1,79,
+1,1565,1051,16,0,
+559,1,1817,760,1,
+1818,1052,16,0,332,
+1,63,1053,17,1054,
+15,996,1,-1,1,
+5,1055,20,1056,4,
+40,84,0,121,0,
+112,0,101,0,99,
+0,97,0,115,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,50,
+0,1,234,1,3,
+1,5,1,4,1057,
+22,1,100,1,1002,
+1058,17,1059,15,996,
+1,-1,1,5,1060,
+20,1061,4,40,84,
+0,121,0,112,0,
+101,0,99,0,97,
+0,115,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,49,0,1,
+233,1,3,1,5,
+1,4,1062,22,1,
+99,1,66,1063,17,
+1064,15,996,1,-1,
+1,5,1065,20,1066,
+4,40,84,0,121,
+0,112,0,101,0,
+99,0,97,0,115,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+51,0,1,235,1,
+3,1,7,1,6,
+1067,22,1,101,1,
+2011,723,1,68,1068,
+17,1069,15,996,1,
+-1,1,5,1070,20,
+1071,4,40,84,0,
+121,0,112,0,101,
+0,99,0,97,0,
+115,0,116,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,53,0,1,237,
+1,3,1,8,1,
+7,1072,22,1,103,
+1,69,1073,17,1074,
+15,996,1,-1,1,
+5,1075,20,1076,4,
+40,84,0,121,0,
+112,0,101,0,99,
+0,97,0,115,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,54,
+0,1,238,1,3,
+1,6,1,5,1077,
+22,1,104,1,70,
+1078,17,1079,15,996,
+1,-1,1,5,1080,
+20,1081,4,40,84,
+0,121,0,112,0,
+101,0,99,0,97,
+0,115,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,52,0,1,
+236,1,3,1,6,
+1,5,1082,22,1,
+102,1,573,1083,17,
+1084,15,1085,4,26,
+37,0,76,0,105,
+0,115,0,116,0,
+67,0,111,0,110,
+0,115,0,116,0,
+97,0,110,0,116,
+0,1,-1,1,5,
+1086,20,1087,4,28,
+76,0,105,0,115,
+0,116,0,67,0,
+111,0,110,0,115,
+0,116,0,97,0,
+110,0,116,0,95,
+0,49,0,1,198,
+1,3,1,4,1,
+3,1088,22,1,64,
+1,1011,1089,17,1090,
+15,1091,4,44,37,
+0,80,0,97,0,
+114,0,101,0,110,
+0,116,0,104,0,
+101,0,115,0,105,
+0,115,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,1,-1,
+1,5,1092,20,1093,
+4,46,80,0,97,
+0,114,0,101,0,
+110,0,116,0,104,
+0,101,0,115,0,
+105,0,115,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,49,0,1,232,
+1,3,1,4,1,
+3,1094,22,1,98,
+1,74,1095,17,1096,
+15,996,1,-1,1,
+5,1097,20,1098,4,
+40,84,0,121,0,
+112,0,101,0,99,
+0,97,0,115,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,57,
+0,1,241,1,3,
+1,7,1,6,1099,
+22,1,107,1,67,
+1100,17,1101,15,996,
+1,-1,1,5,1102,
+20,1103,4,40,84,
+0,121,0,112,0,
+101,0,99,0,97,
+0,115,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,55,0,1,
+239,1,3,1,8,
+1,7,1104,22,1,
+105,1,1046,1105,17,
+1106,15,977,1,-1,
+1,5,1107,20,1108,
+4,38,66,0,105,
+0,110,0,97,0,
+114,0,121,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,49,0,56,0,
+1,228,1,3,1,
+4,1,3,1109,22,
+1,94,1,328,1110,
+17,1111,15,977,1,
+-1,1,5,1112,20,
+1113,4,36,66,0,
+105,0,110,0,97,
+0,114,0,121,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,50,0,1,
+212,1,3,1,4,
+1,3,1114,22,1,
+78,1,1333,1115,17,
+1116,15,965,1,-1,
+1,5,1117,20,1118,
+4,24,65,0,115,
+0,115,0,105,0,
+103,0,110,0,109,
+0,101,0,110,0,
+116,0,95,0,50,
+0,1,183,1,3,
+1,4,1,3,1119,
+22,1,49,1,82,
+1120,17,1121,15,1122,
+4,32,37,0,85,
+0,110,0,97,0,
+114,0,121,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,1,
+-1,1,5,1123,20,
+1124,4,34,85,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+51,0,1,231,1,
+3,1,3,1,2,
+1125,22,1,97,1,
+1847,794,1,1850,1126,
+17,1127,15,1128,4,
+24,37,0,83,0,
+116,0,97,0,116,
+0,101,0,67,0,
+104,0,97,0,110,
+0,103,0,101,0,
+1,-1,1,5,1129,
+20,1130,4,26,83,
+0,116,0,97,0,
+116,0,101,0,67,
+0,104,0,97,0,
+110,0,103,0,101,
+0,95,0,50,0,
+1,172,1,3,1,
+3,1,2,1131,22,
+1,38,1,1851,1132,
+17,1133,15,1128,1,
+-1,1,5,1134,20,
+1135,4,26,83,0,
+116,0,97,0,116,
+0,101,0,67,0,
+104,0,97,0,110,
+0,103,0,101,0,
+95,0,49,0,1,
+171,1,3,1,3,
+1,2,1136,22,1,
+37,1,1852,806,1,
+1853,649,1,1854,655,
+1,1855,660,1,1856,
+748,1,1857,1137,16,
+0,325,1,1858,667,
+1,1859,1138,16,0,
+327,1,1860,672,1,
+1861,1139,16,0,331,
+1,1862,677,1,1863,
+682,1,107,1140,17,
+1141,15,1122,1,-1,
+1,5,1142,20,1143,
+4,34,85,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,1,229,1,3,
+1,3,1,2,1144,
+22,1,95,1,1112,
+1145,17,1020,1,3,
+1024,1,93,1146,17,
+1147,15,1122,1,-1,
+1,5,1148,20,1149,
+4,34,85,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,50,
+0,1,230,1,3,
+1,3,1,2,1150,
+22,1,96,1,1366,
+1151,16,0,369,1,
+352,1152,17,1153,15,
+977,1,-1,1,5,
+1154,20,1155,4,36,
+66,0,105,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,1,211,1,3,
+1,4,1,3,1156,
+22,1,77,1,1121,
+1157,17,1158,15,965,
+1,-1,1,5,1159,
+20,1160,4,24,65,
+0,115,0,115,0,
+105,0,103,0,110,
+0,109,0,101,0,
+110,0,116,0,95,
+0,56,0,1,189,
+1,3,1,6,1,
+5,1161,22,1,55,
+1,118,1162,17,1163,
+15,977,1,-1,1,
+5,1164,20,1165,4,
+38,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+49,0,52,0,1,
+224,1,3,1,4,
+1,3,1166,22,1,
+90,1,371,1167,17,
+1168,15,1169,4,46,
+37,0,70,0,117,
+0,110,0,99,0,
+116,0,105,0,111,
+0,110,0,67,0,
+97,0,108,0,108,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,1,-1,1,5,
+1170,20,1171,4,48,
+70,0,117,0,110,
+0,99,0,116,0,
+105,0,111,0,110,
+0,67,0,97,0,
+108,0,108,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,49,0,1,210,
+1,3,1,2,1,
+1,1172,22,1,76,
+1,373,1173,17,1174,
+15,1027,1,-1,1,
+5,1175,20,1176,4,
+60,73,0,110,0,
+99,0,114,0,101,
+0,109,0,101,0,
+110,0,116,0,68,
+0,101,0,99,0,
+114,0,101,0,109,
+0,101,0,110,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,54,
+0,1,207,1,3,
+1,3,1,2,1177,
+22,1,73,1,375,
+1178,17,1179,15,1027,
+1,-1,1,5,1180,
+20,1181,4,60,73,
+0,110,0,99,0,
+114,0,101,0,109,
+0,101,0,110,0,
+116,0,68,0,101,
+0,99,0,114,0,
+101,0,109,0,101,
+0,110,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,56,0,1,
+209,1,3,1,5,
+1,4,1182,22,1,
+75,1,377,1183,17,
+1184,15,1027,1,-1,
+1,5,1185,20,1186,
+4,60,73,0,110,
+0,99,0,114,0,
+101,0,109,0,101,
+0,110,0,116,0,
+68,0,101,0,99,
+0,114,0,101,0,
+109,0,101,0,110,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+53,0,1,206,1,
+3,1,3,1,2,
+1187,22,1,72,1,
+827,1188,17,1189,15,
+977,1,-1,1,5,
+1190,20,1191,4,38,
+66,0,105,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,53,0,1,225,
+1,3,1,4,1,
+3,1192,22,1,91,
+1,380,1193,17,1194,
+15,1195,4,38,37,
+0,67,0,111,0,
+110,0,115,0,116,
+0,97,0,110,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,1,-1,1,
+5,1196,20,1197,4,
+40,67,0,111,0,
+110,0,115,0,116,
+0,97,0,110,0,
+116,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,1,199,1,3,
+1,2,1,1,1198,
+22,1,65,1,883,
+1199,17,1200,15,977,
+1,-1,1,5,1201,
+20,1202,4,38,66,
+0,105,0,110,0,
+97,0,114,0,121,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,95,0,49,0,
+54,0,1,226,1,
+3,1,4,1,3,
+1203,22,1,92,1,
+1637,710,1,1639,1204,
+16,0,332,1,130,
+1205,17,1206,15,977,
+1,-1,1,5,1207,
+20,1208,4,38,66,
+0,105,0,110,0,
+97,0,114,0,121,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,95,0,49,0,
+51,0,1,223,1,
+3,1,4,1,3,
+1209,22,1,89,1,
+1396,1210,17,1211,15,
+1212,4,32,37,0,
+82,0,101,0,116,
+0,117,0,114,0,
+110,0,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+1,-1,1,5,1213,
+20,1214,4,34,82,
+0,101,0,116,0,
+117,0,114,0,110,
+0,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,50,0,1,191,
+1,3,1,2,1,
+1,1215,22,1,57,
+1,143,1216,17,1217,
+15,977,1,-1,1,
+5,1218,20,1219,4,
+38,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+49,0,50,0,1,
+222,1,3,1,4,
+1,3,1220,22,1,
+88,1,1402,1221,17,
+1222,15,1212,1,-1,
+1,5,1223,20,1224,
+4,34,82,0,101,
+0,116,0,117,0,
+114,0,110,0,83,
+0,116,0,97,0,
+116,0,101,0,109,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,190,1,3,
+1,3,1,2,1225,
+22,1,56,1,1557,
+1226,17,1227,15,984,
+1,-1,1,5,1228,
+20,1229,4,36,70,
+0,111,0,114,0,
+76,0,111,0,111,
+0,112,0,83,0,
+116,0,97,0,116,
+0,101,0,109,0,
+101,0,110,0,116,
+0,95,0,52,0,
+1,181,1,3,1,
+4,1,3,1230,22,
+1,47,1,1158,1231,
+17,1232,15,965,1,
+-1,1,5,1233,20,
+1234,4,24,65,0,
+115,0,115,0,105,
+0,103,0,110,0,
+109,0,101,0,110,
+0,116,0,95,0,
+55,0,1,188,1,
+3,1,4,1,3,
+1235,22,1,54,1,
+157,1236,17,1237,15,
+977,1,-1,1,5,
+1238,20,1239,4,38,
+66,0,105,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,49,0,1,221,
+1,3,1,4,1,
+3,1240,22,1,87,
+1,1094,1241,17,1242,
+15,1243,4,26,37,
+0,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,67,0,97,
+0,108,0,108,0,
+1,-1,1,5,1244,
+20,1245,4,28,70,
+0,117,0,110,0,
+99,0,116,0,105,
+0,111,0,110,0,
+67,0,97,0,108,
+0,108,0,95,0,
+49,0,1,242,1,
+3,1,5,1,4,
+1246,22,1,108,1,
+379,1247,17,1248,15,
+1027,1,-1,1,5,
+1249,20,1250,4,60,
+73,0,110,0,99,
+0,114,0,101,0,
+109,0,101,0,110,
+0,116,0,68,0,
+101,0,99,0,114,
+0,101,0,109,0,
+101,0,110,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,95,0,55,0,
+1,208,1,3,1,
+5,1,4,1251,22,
+1,74,1,172,1252,
+17,1253,15,977,1,
+-1,1,5,1254,20,
+1255,4,38,66,0,
+105,0,110,0,97,
+0,114,0,121,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+95,0,49,0,48,
+0,1,220,1,3,
+1,4,1,3,1256,
+22,1,86,1,1385,
+769,1,1431,1257,16,
+0,420,1,1938,1258,
+17,1259,15,984,1,
+-1,1,5,1260,20,
+1261,4,36,70,0,
+111,0,114,0,76,
+0,111,0,111,0,
+112,0,83,0,116,
+0,97,0,116,0,
+101,0,109,0,101,
+0,110,0,116,0,
+95,0,50,0,1,
+179,1,3,1,2,
+1,1,1262,22,1,
+45,1,1438,1263,17,
+1264,15,965,1,-1,
+1,5,1265,20,1266,
+4,24,65,0,115,
+0,115,0,105,0,
+103,0,110,0,109,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,182,1,3,
+1,4,1,3,1267,
+22,1,48,1,1693,
+1268,16,0,154,1,
+1694,740,1,1193,1269,
+17,1270,15,965,1,
+-1,1,5,1271,20,
+1272,4,24,65,0,
+115,0,115,0,105,
+0,103,0,110,0,
+109,0,101,0,110,
+0,116,0,95,0,
+54,0,1,187,1,
+3,1,4,1,3,
+1273,22,1,53,1,
+2200,1274,16,0,226,
+1,188,1275,17,1276,
+15,977,1,-1,1,
+5,1277,20,1278,4,
+36,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+57,0,1,219,1,
+3,1,4,1,3,
+1279,22,1,85,1,
+2207,1280,16,0,274,
+1,205,1281,17,1282,
+15,977,1,-1,1,
+5,1283,20,1284,4,
+36,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+56,0,1,218,1,
+3,1,4,1,3,
+1285,22,1,84,1,
+1965,1286,16,0,332,
+1,1611,1287,16,0,
+332,1,1467,729,1,
+942,1288,17,1289,15,
+977,1,-1,1,5,
+1290,20,1291,4,38,
+66,0,105,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,95,0,49,
+0,55,0,1,227,
+1,3,1,4,1,
+3,1292,22,1,93,
+1,223,1293,17,1294,
+15,977,1,-1,1,
+5,1295,20,1296,4,
+36,66,0,105,0,
+110,0,97,0,114,
+0,121,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,95,0,
+55,0,1,217,1,
+3,1,4,1,3,
+1297,22,1,83,1,
+1228,1298,17,1299,15,
+965,1,-1,1,5,
+1300,20,1301,4,24,
+65,0,115,0,115,
+0,105,0,103,0,
+110,0,109,0,101,
+0,110,0,116,0,
+95,0,53,0,1,
+186,1,3,1,4,
+1,3,1302,22,1,
+52,1,476,1303,17,
+1304,15,990,1,-1,
+1,5,1305,20,1306,
+4,20,67,0,111,
+0,110,0,115,0,
+116,0,97,0,110,
+0,116,0,95,0,
+52,0,1,195,1,
+3,1,2,1,1,
+1307,22,1,61,1,
+1732,1308,16,0,332,
+1,1482,1309,17,1310,
+15,984,1,-1,1,
+5,1311,20,1312,4,
+36,70,0,111,0,
+114,0,76,0,111,
+0,111,0,112,0,
+83,0,116,0,97,
+0,116,0,101,0,
+109,0,101,0,110,
+0,116,0,95,0,
+49,0,1,178,1,
+3,1,2,1,1,
+1313,22,1,44,1,
+463,1314,17,1315,15,
+1316,4,30,37,0,
+86,0,101,0,99,
+0,116,0,111,0,
+114,0,67,0,111,
+0,110,0,115,0,
+116,0,97,0,110,
+0,116,0,1,-1,
+1,5,1317,20,1318,
+4,32,86,0,101,
+0,99,0,116,0,
+111,0,114,0,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+95,0,49,0,1,
+196,1,3,1,8,
+1,7,1319,22,1,
+62,1,242,1320,17,
+1321,15,977,1,-1,
+1,5,1322,20,1323,
+4,36,66,0,105,
+0,110,0,97,0,
+114,0,121,0,69,
+0,120,0,112,0,
+114,0,101,0,115,
+0,115,0,105,0,
+111,0,110,0,95,
+0,54,0,1,216,
+1,3,1,4,1,
+3,1324,22,1,82,
+1,478,1325,17,1326,
+15,990,1,-1,1,
+5,1327,20,1328,4,
+20,67,0,111,0,
+110,0,115,0,116,
+0,97,0,110,0,
+116,0,95,0,50,
+0,1,193,1,3,
+1,2,1,1,1329,
+22,1,59,1,479,
+1330,17,1331,15,990,
+1,-1,1,5,1332,
+20,1333,4,20,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+95,0,49,0,1,
+192,1,3,1,2,
+1,1,1334,22,1,
+58,1,2005,801,1,
+2006,777,1,12,1335,
+19,173,1,12,1336,
+5,32,1,1853,649,
+1,1854,655,1,1855,
+660,1,1856,748,1,
+1639,1337,16,0,171,
+1,1858,667,1,1860,
+672,1,1862,677,1,
+1863,682,1,2196,1338,
+16,0,171,1,1760,
+688,1,31,1339,16,
+0,171,1,32,1340,
+16,0,171,1,2105,
+1341,16,0,528,1,
+2005,801,1,1788,1342,
+16,0,171,1,2009,
+716,1,2011,723,1,
+1467,729,1,2016,1343,
+16,0,605,1,1637,
+710,1,1694,740,1,
+2006,777,1,1965,1344,
+16,0,171,1,1817,
+760,1,1818,1345,16,
+0,171,1,1385,769,
+1,1611,1346,16,0,
+171,1,1732,1347,16,
+0,171,1,2063,1348,
+16,0,171,1,1847,
+794,1,1852,806,1,
+13,1349,19,394,1,
+13,1350,5,27,1,
+1852,806,1,1853,649,
+1,1817,760,1,1855,
+660,1,1856,748,1,
+2005,801,1,1858,667,
+1,1637,710,1,1860,
+672,1,2009,716,1,
+1862,677,1,1863,682,
+1,1385,769,1,2102,
+1351,17,1352,15,1353,
+4,20,37,0,83,
+0,116,0,97,0,
+116,0,101,0,66,
+0,111,0,100,0,
+121,0,1,-1,1,
+5,1354,20,1355,4,
+22,83,0,116,0,
+97,0,116,0,101,
+0,66,0,111,0,
+100,0,121,0,95,
+0,50,0,1,152,
+1,3,1,3,1,
+2,1356,22,1,16,
+1,1760,688,1,2141,
+1357,16,0,579,1,
+2011,723,1,1467,729,
+1,2067,1358,16,0,
+523,1,2104,1359,17,
+1360,15,1353,1,-1,
+1,5,1361,20,1362,
+4,22,83,0,116,
+0,97,0,116,0,
+101,0,66,0,111,
+0,100,0,121,0,
+95,0,49,0,1,
+151,1,3,1,2,
+1,1,1363,22,1,
+15,1,1854,655,1,
+1694,740,1,2065,1364,
+17,1365,15,1366,4,
+22,37,0,83,0,
+116,0,97,0,116,
+0,101,0,69,0,
+118,0,101,0,110,
+0,116,0,1,-1,
+1,5,1367,20,1368,
+4,24,83,0,116,
+0,97,0,116,0,
+101,0,69,0,118,
+0,101,0,110,0,
+116,0,95,0,49,
+0,1,153,1,3,
+1,6,1,5,1369,
+22,1,17,1,1965,
+1370,16,0,392,1,
+32,1371,16,0,396,
+1,1847,794,1,2006,
+777,1,14,1372,19,
+150,1,14,1373,5,
+87,1,504,956,1,
+2014,1374,17,1375,15,
+1376,4,48,37,0,
+65,0,114,0,103,
+0,117,0,109,0,
+101,0,110,0,116,
+0,68,0,101,0,
+99,0,108,0,97,
+0,114,0,97,0,
+116,0,105,0,111,
+0,110,0,76,0,
+105,0,115,0,116,
+0,1,-1,1,5,
+1377,20,1378,4,50,
+65,0,114,0,103,
+0,117,0,109,0,
+101,0,110,0,116,
+0,68,0,101,0,
+99,0,108,0,97,
+0,114,0,97,0,
+116,0,105,0,111,
+0,110,0,76,0,
+105,0,115,0,116,
+0,95,0,49,0,
+1,154,1,3,1,
+2,1,1,1379,22,
+1,19,1,1513,1380,
+16,0,502,1,1263,
+963,1,9,969,1,
+10,1381,17,1382,15,
+1376,1,-1,1,5,
+146,1,0,1,0,
+1383,22,1,18,1,
+262,975,1,1193,1269,
+1,19,981,1,20,
+1384,16,0,148,1,
+1527,982,1,1482,1309,
+1,30,1385,17,1386,
+15,1376,1,-1,1,
+5,1387,20,1388,4,
+50,65,0,114,0,
+103,0,117,0,109,
+0,101,0,110,0,
+116,0,68,0,101,
+0,99,0,108,0,
+97,0,114,0,97,
+0,116,0,105,0,
+111,0,110,0,76,
+0,105,0,115,0,
+116,0,95,0,50,
+0,1,155,1,3,
+1,4,1,3,1389,
+22,1,20,1,283,
+1008,1,40,1002,1,
+41,1390,17,1391,15,
+1392,4,26,37,0,
+65,0,114,0,103,
+0,117,0,109,0,
+101,0,110,0,116,
+0,76,0,105,0,
+115,0,116,0,1,
+-1,1,5,486,1,
+0,1,0,1393,22,
+1,109,1,42,1394,
+17,1395,15,1396,4,
+38,37,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,1,
+-1,1,5,1397,20,
+1398,4,40,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,95,
+0,49,0,1,245,
+1,3,1,2,1,
+1,1399,22,1,112,
+1,1298,1013,1,44,
+1018,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,2061,1400,16,
+0,148,1,305,1046,
+1,63,1053,1,66,
+1063,1,67,1100,1,
+68,1068,1,69,1073,
+1,70,1078,1,573,
+1083,1,574,1401,17,
+1402,15,1392,1,-1,
+1,5,1403,20,1404,
+4,28,65,0,114,
+0,103,0,117,0,
+109,0,101,0,110,
+0,116,0,76,0,
+105,0,115,0,116,
+0,95,0,49,0,
+1,243,1,3,1,
+2,1,1,1405,22,
+1,110,1,1011,1089,
+1,74,1095,1,1046,
+1105,1,328,1110,1,
+1333,1115,1,82,1120,
+1,1092,1406,16,0,
+488,1,1094,1241,1,
+93,1146,1,352,1152,
+1,1609,1407,16,0,
+502,1,107,1140,1,
+1112,1145,1,2052,1408,
+17,1409,15,1376,1,
+-1,1,5,146,1,
+0,1,0,1383,1,
+1121,1157,1,118,1162,
+1,371,1167,1,373,
+1173,1,375,1178,1,
+377,1183,1,379,1247,
+1,380,1193,1,883,
+1199,1,383,1410,16,
+0,488,1,386,1411,
+17,1412,15,1392,1,
+-1,1,5,1413,20,
+1414,4,28,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,95,0,50,
+0,1,244,1,3,
+1,4,1,3,1415,
+22,1,111,1,130,
+1205,1,143,1216,1,
+1557,1226,1,403,1416,
+16,0,518,1,1158,
+1231,1,827,1188,1,
+381,1417,17,1418,15,
+1392,1,-1,1,5,
+486,1,0,1,0,
+1393,1,157,1236,1,
+172,1252,1,428,1419,
+16,0,553,1,1938,
+1258,1,1438,1263,1,
+2194,1420,16,0,148,
+1,188,1275,1,942,
+1288,1,453,1421,16,
+0,572,1,205,1281,
+1,463,1314,1,223,
+1293,1,1228,1298,1,
+476,1303,1,477,988,
+1,478,1325,1,479,
+1330,1,242,1320,1,
+2185,1422,17,1423,15,
+1376,1,-1,1,5,
+146,1,0,1,0,
+1383,1,1001,994,1,
+1002,1058,1,15,1424,
+19,183,1,15,1425,
+5,7,1,2200,1426,
+16,0,600,1,1431,
+1427,16,0,386,1,
+1112,1428,16,0,181,
+1,1511,1429,16,0,
+386,1,40,1430,16,
+0,341,1,19,981,
+1,9,969,1,16,
+1431,19,136,1,16,
+1432,5,120,1,2009,
+716,1,1257,1433,16,
+0,208,1,1760,688,
+1,1762,1434,16,0,
+244,1,1763,1435,16,
+0,208,1,1514,1436,
+16,0,208,1,9,
+1437,16,0,134,1,
+2018,1438,17,1439,15,
+1440,4,12,37,0,
+69,0,118,0,101,
+0,110,0,116,0,
+1,-1,1,5,1441,
+20,1442,4,16,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,51,0,51,0,
+1,285,1,3,1,
+2,1,1,1443,22,
+1,152,1,2019,1444,
+17,1445,15,1440,1,
+-1,1,5,1446,20,
+1447,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+51,0,50,0,1,
+284,1,3,1,2,
+1,1,1448,22,1,
+151,1,2020,1449,17,
+1450,15,1440,1,-1,
+1,5,1451,20,1452,
+4,16,69,0,118,
+0,101,0,110,0,
+116,0,95,0,51,
+0,49,0,1,283,
+1,3,1,2,1,
+1,1453,22,1,150,
+1,2021,1454,17,1455,
+15,1440,1,-1,1,
+5,1456,20,1457,4,
+16,69,0,118,0,
+101,0,110,0,116,
+0,95,0,51,0,
+48,0,1,282,1,
+3,1,2,1,1,
+1458,22,1,149,1,
+2022,1459,17,1460,15,
+1440,1,-1,1,5,
+1461,20,1462,4,16,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,50,0,57,
+0,1,281,1,3,
+1,2,1,1,1463,
+22,1,148,1,256,
+1464,16,0,208,1,
+2024,1465,17,1466,15,
+1440,1,-1,1,5,
+1467,20,1468,4,16,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,50,0,55,
+0,1,279,1,3,
+1,2,1,1,1469,
+22,1,146,1,2025,
+1470,17,1471,15,1440,
+1,-1,1,5,1472,
+20,1473,4,16,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,50,0,54,0,
+1,278,1,3,1,
+2,1,1,1474,22,
+1,145,1,2026,1475,
+17,1476,15,1440,1,
+-1,1,5,1477,20,
+1478,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+50,0,53,0,1,
+277,1,3,1,2,
+1,1,1479,22,1,
+144,1,2027,1480,17,
+1481,15,1440,1,-1,
+1,5,1482,20,1483,
+4,16,69,0,118,
+0,101,0,110,0,
+116,0,95,0,50,
+0,52,0,1,276,
+1,3,1,2,1,
+1,1484,22,1,143,
+1,2028,1485,17,1486,
+15,1440,1,-1,1,
+5,1487,20,1488,4,
+16,69,0,118,0,
+101,0,110,0,116,
+0,95,0,50,0,
+51,0,1,275,1,
+3,1,2,1,1,
+1489,22,1,142,1,
+2029,1490,17,1491,15,
+1440,1,-1,1,5,
+1492,20,1493,4,16,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,50,0,50,
+0,1,274,1,3,
+1,2,1,1,1494,
+22,1,141,1,2030,
+1495,17,1496,15,1440,
+1,-1,1,5,1497,
+20,1498,4,16,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,50,0,49,0,
+1,273,1,3,1,
+2,1,1,1499,22,
+1,140,1,2031,1500,
+17,1501,15,1440,1,
+-1,1,5,1502,20,
+1503,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+50,0,48,0,1,
+272,1,3,1,2,
+1,1,1504,22,1,
+139,1,2032,1505,17,
+1506,15,1440,1,-1,
+1,5,1507,20,1508,
+4,16,69,0,118,
+0,101,0,110,0,
+116,0,95,0,49,
+0,57,0,1,271,
+1,3,1,2,1,
+1,1509,22,1,138,
+1,2033,1510,17,1511,
+15,1440,1,-1,1,
+5,1512,20,1513,4,
+16,69,0,118,0,
+101,0,110,0,116,
+0,95,0,49,0,
+56,0,1,270,1,
+3,1,2,1,1,
+1514,22,1,137,1,
+277,1515,16,0,208,
+1,2035,1516,17,1517,
+15,1440,1,-1,1,
+5,1518,20,1519,4,
+16,69,0,118,0,
+101,0,110,0,116,
+0,95,0,49,0,
+54,0,1,268,1,
+3,1,2,1,1,
+1520,22,1,135,1,
+2036,1521,17,1522,15,
+1440,1,-1,1,5,
+1523,20,1524,4,16,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,49,0,53,
+0,1,267,1,3,
+1,2,1,1,1525,
+22,1,134,1,2037,
+1526,17,1527,15,1440,
+1,-1,1,5,1528,
+20,1529,4,16,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,49,0,52,0,
+1,266,1,3,1,
+2,1,1,1530,22,
+1,133,1,2038,1531,
+17,1532,15,1440,1,
+-1,1,5,1533,20,
+1534,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+49,0,51,0,1,
+265,1,3,1,2,
+1,1,1535,22,1,
+132,1,1788,1536,16,
+0,208,1,32,1537,
+16,0,208,1,2041,
+1538,17,1539,15,1440,
+1,-1,1,5,1540,
+20,1541,4,16,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,49,0,48,0,
+1,262,1,3,1,
+2,1,1,1542,22,
+1,129,1,2042,1543,
+17,1544,15,1440,1,
+-1,1,5,1545,20,
+1546,4,14,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+57,0,1,261,1,
+3,1,2,1,1,
+1547,22,1,128,1,
+2043,1548,17,1549,15,
+1440,1,-1,1,5,
+1550,20,1551,4,14,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,56,0,1,
+260,1,3,1,2,
+1,1,1552,22,1,
+127,1,2044,1553,17,
+1554,15,1440,1,-1,
+1,5,1555,20,1556,
+4,14,69,0,118,
+0,101,0,110,0,
+116,0,95,0,55,
+0,1,259,1,3,
+1,2,1,1,1557,
+22,1,126,1,1292,
+1558,16,0,208,1,
+2046,1559,17,1560,15,
+1440,1,-1,1,5,
+1561,20,1562,4,14,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,53,0,1,
+257,1,3,1,2,
+1,1,1563,22,1,
+124,1,2047,1564,17,
+1565,15,1440,1,-1,
+1,5,1566,20,1567,
+4,14,69,0,118,
+0,101,0,110,0,
+116,0,95,0,52,
+0,1,256,1,3,
+1,2,1,1,1568,
+22,1,123,1,40,
+1569,16,0,188,1,
+41,1570,16,0,208,
+1,2050,1571,17,1572,
+15,1440,1,-1,1,
+5,1573,20,1574,4,
+14,69,0,118,0,
+101,0,110,0,116,
+0,95,0,49,0,
+1,253,1,3,1,
+2,1,1,1575,22,
+1,120,1,43,1576,
+16,0,208,1,44,
+1577,16,0,188,1,
+299,1578,16,0,208,
+1,52,1579,16,0,
+208,1,1559,1580,16,
+0,208,1,1817,760,
+1,1818,1581,16,0,
+208,1,62,1582,16,
+0,219,1,63,1583,
+16,0,188,1,2011,
+723,1,504,1584,16,
+0,208,1,71,1585,
+16,0,208,1,1327,
+1586,16,0,208,1,
+76,1587,16,0,208,
+1,1584,1588,16,0,
+208,1,79,1589,16,
+0,208,1,2023,1590,
+17,1591,15,1440,1,
+-1,1,5,1592,20,
+1593,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+50,0,56,0,1,
+280,1,3,1,2,
+1,1,1594,22,1,
+147,1,322,1595,16,
+0,208,1,85,1596,
+16,0,208,1,89,
+1597,16,0,208,1,
+1847,794,1,2034,1598,
+17,1599,15,1440,1,
+-1,1,5,1600,20,
+1601,4,16,69,0,
+118,0,101,0,110,
+0,116,0,95,0,
+49,0,55,0,1,
+269,1,3,1,2,
+1,1,1602,22,1,
+136,1,346,1603,16,
+0,208,1,1853,649,
+1,1854,655,1,1855,
+660,1,1856,748,1,
+1858,667,1,97,1604,
+16,0,208,1,1860,
+672,1,1862,677,1,
+1863,682,1,102,1605,
+16,0,208,1,2051,
+1606,16,0,592,1,
+1115,1607,16,0,208,
+1,112,1608,16,0,
+208,1,124,1609,16,
+0,208,1,1385,769,
+1,1637,710,1,384,
+1610,16,0,208,1,
+137,1611,16,0,208,
+1,1396,1612,16,0,
+208,1,381,1613,16,
+0,208,1,397,1614,
+16,0,208,1,1152,
+1615,16,0,208,1,
+151,1616,16,0,208,
+1,1852,806,1,1611,
+1617,16,0,208,1,
+2039,1618,17,1619,15,
+1440,1,-1,1,5,
+1620,20,1621,4,16,
+69,0,118,0,101,
+0,110,0,116,0,
+95,0,49,0,50,
+0,1,264,1,3,
+1,2,1,1,1622,
+22,1,131,1,1668,
+1623,16,0,208,1,
+166,1624,16,0,208,
+1,2045,1625,17,1626,
+15,1440,1,-1,1,
+5,1627,20,1628,4,
+14,69,0,118,0,
+101,0,110,0,116,
+0,95,0,54,0,
+1,258,1,3,1,
+2,1,1,1629,22,
+1,125,1,422,1630,
+16,0,208,1,2048,
+1631,17,1632,15,1440,
+1,-1,1,5,1633,
+20,1634,4,14,69,
+0,118,0,101,0,
+110,0,116,0,95,
+0,51,0,1,255,
+1,3,1,2,1,
+1,1635,22,1,122,
+1,2049,1636,17,1637,
+15,1440,1,-1,1,
+5,1638,20,1639,4,
+14,69,0,118,0,
+101,0,110,0,116,
+0,95,0,50,0,
+1,254,1,3,1,
+2,1,1,1640,22,
+1,121,1,2184,1641,
+16,0,593,1,1432,
+1642,16,0,208,1,
+182,1643,16,0,208,
+1,1187,1644,16,0,
+208,1,1639,1645,16,
+0,208,1,1694,740,
+1,2201,1646,16,0,
+208,1,447,1647,16,
+0,208,1,199,1648,
+16,0,208,1,1706,
+1649,16,0,180,1,
+1707,1650,16,0,208,
+1,1965,1651,16,0,
+208,1,1467,729,1,
+1468,1652,16,0,424,
+1,1469,1653,16,0,
+208,1,1667,1654,16,
+0,254,1,217,1655,
+16,0,208,1,1222,
+1656,16,0,208,1,
+1732,1657,16,0,208,
+1,2040,1658,17,1659,
+15,1440,1,-1,1,
+5,1660,20,1661,4,
+16,69,0,118,0,
+101,0,110,0,116,
+0,95,0,49,0,
+49,0,1,263,1,
+3,1,2,1,1,
+1662,22,1,130,1,
+463,1663,16,0,208,
+1,236,1664,16,0,
+208,1,488,1665,16,
+0,208,1,2005,801,
+1,2006,777,1,17,
+1666,19,153,1,17,
+1667,5,95,1,1,
+1668,17,1669,15,1670,
+4,18,37,0,84,
+0,121,0,112,0,
+101,0,110,0,97,
+0,109,0,101,0,
+1,-1,1,5,1671,
+20,1672,4,20,84,
+0,121,0,112,0,
+101,0,110,0,97,
+0,109,0,101,0,
+95,0,55,0,1,
+252,1,3,1,2,
+1,1,1673,22,1,
+119,1,2,1674,17,
+1675,15,1670,1,-1,
+1,5,1676,20,1677,
+4,20,84,0,121,
+0,112,0,101,0,
+110,0,97,0,109,
+0,101,0,95,0,
+54,0,1,251,1,
+3,1,2,1,1,
+1678,22,1,118,1,
+3,1679,17,1680,15,
+1670,1,-1,1,5,
+1681,20,1682,4,20,
+84,0,121,0,112,
+0,101,0,110,0,
+97,0,109,0,101,
+0,95,0,53,0,
+1,250,1,3,1,
+2,1,1,1683,22,
+1,117,1,4,1684,
+17,1685,15,1670,1,
+-1,1,5,1686,20,
+1687,4,20,84,0,
+121,0,112,0,101,
+0,110,0,97,0,
+109,0,101,0,95,
+0,52,0,1,249,
+1,3,1,2,1,
+1,1688,22,1,116,
+1,5,1689,17,1690,
+15,1670,1,-1,1,
+5,1691,20,1692,4,
+20,84,0,121,0,
+112,0,101,0,110,
+0,97,0,109,0,
+101,0,95,0,51,
+0,1,248,1,3,
+1,2,1,1,1693,
+22,1,115,1,6,
+1694,17,1695,15,1670,
+1,-1,1,5,1696,
+20,1697,4,20,84,
+0,121,0,112,0,
+101,0,110,0,97,
+0,109,0,101,0,
+95,0,50,0,1,
+247,1,3,1,2,
+1,1,1698,22,1,
+114,1,7,1699,17,
+1700,15,1670,1,-1,
+1,5,1701,20,1702,
+4,20,84,0,121,
+0,112,0,101,0,
+110,0,97,0,109,
+0,101,0,95,0,
+49,0,1,246,1,
+3,1,2,1,1,
+1703,22,1,113,1,
+1263,963,1,9,969,
+1,10,1381,1,262,
+975,1,1769,1704,16,
+0,298,1,19,981,
+1,20,1705,16,0,
+170,1,1527,982,1,
+30,1385,1,283,1008,
+1,504,956,1,1010,
+1706,16,0,556,1,
+40,1002,1,41,1390,
+1,42,1394,1,1298,
+1013,1,44,1018,1,
+47,1019,1,48,1025,
+1,49,1031,1,50,
+1036,1,51,1041,1,
+2061,1707,16,0,493,
+1,305,1046,1,61,
+1708,16,0,211,1,
+63,1053,1,66,1063,
+1,67,1100,1,68,
+1068,1,69,1073,1,
+2014,1374,1,573,1083,
+1,574,1401,1,1011,
+1089,1,70,1078,1,
+1046,1105,1,328,1110,
+1,1333,1115,1,73,
+1709,16,0,221,1,
+74,1095,1,82,1120,
+1,1092,1710,16,0,
+603,1,1094,1241,1,
+93,1146,1,352,1152,
+1,1609,1711,16,0,
+576,1,107,1140,1,
+1112,1145,1,2052,1408,
+1,1121,1157,1,118,
+1162,1,371,1167,1,
+373,1173,1,375,1178,
+1,377,1183,1,827,
+1188,1,380,1193,1,
+883,1199,1,386,1411,
+1,130,1205,1,379,
+1247,1,143,1216,1,
+1557,1226,1,1158,1231,
+1,381,1417,1,157,
+1236,1,1674,1712,16,
+0,151,1,172,1252,
+1,2185,1422,1,1938,
+1258,1,1438,1263,1,
+2194,1713,16,0,491,
+1,188,1275,1,942,
+1288,1,205,1281,1,
+1713,1714,16,0,264,
+1,463,1314,1,223,
+1293,1,1228,1298,1,
+476,1303,1,477,988,
+1,1482,1309,1,1193,
+1269,1,242,1320,1,
+478,1325,1,479,1330,
+1,1001,994,1,1002,
+1058,1,18,1715,19,
+403,1,18,1716,5,
+77,1,328,1110,1,
+1333,1717,16,0,401,
+1,1094,1241,1,1438,
+1718,16,0,401,1,
+223,1719,16,0,401,
+1,428,1720,16,0,
+401,1,118,1721,16,
+0,401,1,883,1722,
+16,0,401,1,453,
+1723,16,0,401,1,
+1001,994,1,130,1724,
+16,0,401,1,1112,
+1145,1,242,1725,16,
+0,401,1,1769,1726,
+16,0,401,1,463,
+1314,1,573,1083,1,
+1228,1727,16,0,401,
+1,1011,1089,1,1121,
+1728,16,0,401,1,
+143,1729,16,0,401,
+1,352,1152,1,1674,
+1730,16,0,401,1,
+40,1002,1,477,988,
+1,42,1731,16,0,
+401,1,479,1330,1,
+44,1018,1,373,1173,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,1482,1732,16,0,
+401,1,380,1193,1,
+157,1733,16,0,401,
+1,476,1303,1,371,
+1167,1,1366,1734,16,
+0,401,1,375,1178,
+1,1010,1735,16,0,
+401,1,63,1053,1,
+1263,1736,16,0,401,
+1,283,1008,1,66,
+1063,1,67,1100,1,
+1158,1737,16,0,401,
+1,69,1073,1,70,
+1078,1,68,1068,1,
+73,1738,16,0,401,
+1,74,1095,1,494,
+1739,16,0,401,1,
+377,1183,1,172,1740,
+16,0,401,1,1713,
+1741,16,0,401,1,
+188,1742,16,0,401,
+1,82,1743,16,0,
+401,1,262,975,1,
+504,956,1,305,1046,
+1,1527,1744,16,0,
+401,1,1565,1745,16,
+0,401,1,403,1746,
+16,0,401,1,827,
+1747,16,0,401,1,
+1046,1748,16,0,401,
+1,93,1749,16,0,
+401,1,1402,1750,16,
+0,401,1,205,1751,
+16,0,401,1,2207,
+1752,16,0,401,1,
+1298,1753,16,0,401,
+1,1002,1058,1,942,
+1754,16,0,401,1,
+1193,1755,16,0,401,
+1,379,1247,1,478,
+1325,1,107,1756,16,
+0,401,1,19,1757,
+19,240,1,19,1758,
+5,151,1,2009,716,
+1,1257,1759,16,0,
+238,1,1760,688,1,
+256,1760,16,0,238,
+1,1763,1761,16,0,
+238,1,1011,1089,1,
+1263,1762,16,0,387,
+1,494,1763,16,0,
+387,1,262,975,1,
+1769,1764,16,0,387,
+1,2207,1765,16,0,
+387,1,504,1766,16,
+0,238,1,1527,1767,
+16,0,387,1,477,
+988,1,277,1768,16,
+0,238,1,1001,994,
+1,1788,1769,16,0,
+238,1,32,1770,16,
+0,238,1,1292,1771,
+16,0,238,1,1010,
+1772,16,0,387,1,
+40,1002,1,41,1773,
+16,0,238,1,42,
+1774,16,0,387,1,
+43,1775,16,0,238,
+1,44,1018,1,47,
+1019,1,48,1025,1,
+49,1031,1,50,1036,
+1,51,1041,1,52,
+1776,16,0,238,1,
+1559,1777,16,0,238,
+1,305,1046,1,1514,
+1778,16,0,238,1,
+299,1779,16,0,238,
+1,1817,760,1,1818,
+1780,16,0,238,1,
+283,1008,1,63,1053,
+1,1002,1058,1,66,
+1063,1,67,1100,1,
+68,1068,1,69,1073,
+1,70,1078,1,573,
+1083,1,1327,1781,16,
+0,238,1,73,1782,
+16,0,387,1,74,
+1095,1,71,1783,16,
+0,238,1,76,1784,
+16,0,238,1,328,
+1110,1,1333,1785,16,
+0,387,1,79,1786,
+16,0,238,1,82,
+1787,16,0,387,1,
+322,1788,16,0,238,
+1,85,1789,16,0,
+238,1,89,1790,16,
+0,238,1,1847,794,
+1,93,1791,16,0,
+387,1,1852,806,1,
+1853,649,1,1854,655,
+1,1855,660,1,1856,
+748,1,1858,667,1,
+97,1792,16,0,238,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+102,1793,16,0,238,
+1,1112,1145,1,1565,
+1794,16,0,387,1,
+1046,1795,16,0,387,
+1,1115,1796,16,0,
+238,1,112,1797,16,
+0,238,1,352,1152,
+1,1121,1798,16,0,
+387,1,118,1799,16,
+0,387,1,346,1800,
+16,0,238,1,371,
+1167,1,107,1801,16,
+0,387,1,124,1802,
+16,0,238,1,377,
+1183,1,1298,1803,16,
+0,387,1,827,1804,
+16,0,387,1,380,
+1193,1,130,1805,16,
+0,387,1,2011,723,
+1,384,1806,16,0,
+238,1,373,1173,1,
+137,1807,16,0,238,
+1,1396,1808,16,0,
+238,1,143,1809,16,
+0,387,1,397,1810,
+16,0,238,1,1402,
+1811,16,0,387,1,
+1152,1812,16,0,238,
+1,375,1178,1,151,
+1813,16,0,238,1,
+403,1814,16,0,387,
+1,1158,1815,16,0,
+387,1,1366,1816,16,
+0,387,1,381,1817,
+16,0,238,1,157,
+1818,16,0,387,1,
+883,1819,16,0,387,
+1,1668,1820,16,0,
+238,1,166,1821,16,
+0,238,1,379,1247,
+1,1674,1822,16,0,
+387,1,422,1823,16,
+0,238,1,172,1824,
+16,0,387,1,1385,
+769,1,1432,1825,16,
+0,238,1,1584,1826,
+16,0,238,1,182,
+1827,16,0,238,1,
+1187,1828,16,0,238,
+1,1637,710,1,1639,
+1829,16,0,238,1,
+1694,740,1,1193,1830,
+16,0,387,1,428,
+1831,16,0,387,1,
+2201,1832,16,0,238,
+1,188,1833,16,0,
+387,1,447,1834,16,
+0,238,1,1094,1241,
+1,199,1835,16,0,
+238,1,1707,1836,16,
+0,238,1,453,1837,
+16,0,387,1,205,
+1838,16,0,387,1,
+1713,1839,16,0,387,
+1,1965,1840,16,0,
+238,1,1611,1841,16,
+0,238,1,1467,729,
+1,1469,1842,16,0,
+238,1,217,1843,16,
+0,238,1,1222,1844,
+16,0,238,1,942,
+1845,16,0,387,1,
+223,1846,16,0,387,
+1,1228,1847,16,0,
+387,1,476,1303,1,
+1732,1848,16,0,238,
+1,1482,1849,16,0,
+387,1,463,1850,16,
+0,238,1,1438,1851,
+16,0,387,1,236,
+1852,16,0,238,1,
+488,1853,16,0,238,
+1,242,1854,16,0,
+387,1,478,1325,1,
+479,1330,1,2005,801,
+1,2006,777,1,20,
+1855,19,383,1,20,
+1856,5,77,1,328,
+1857,16,0,381,1,
+1333,1858,16,0,381,
+1,1094,1241,1,1438,
+1859,16,0,381,1,
+223,1860,16,0,381,
+1,428,1861,16,0,
+381,1,118,1862,16,
+0,381,1,883,1863,
+16,0,381,1,453,
+1864,16,0,381,1,
+1001,994,1,130,1865,
+16,0,381,1,1112,
+1145,1,242,1866,16,
+0,381,1,1769,1867,
+16,0,381,1,463,
+1314,1,573,1083,1,
+1228,1868,16,0,381,
+1,1011,1089,1,1121,
+1869,16,0,381,1,
+143,1870,16,0,381,
+1,352,1871,16,0,
+381,1,1674,1872,16,
+0,381,1,40,1002,
+1,477,988,1,42,
+1873,16,0,381,1,
+479,1330,1,44,1018,
+1,373,1173,1,47,
+1019,1,48,1025,1,
+49,1031,1,50,1036,
+1,51,1041,1,1482,
+1874,16,0,381,1,
+380,1193,1,157,1875,
+16,0,381,1,476,
+1303,1,371,1167,1,
+1366,1876,16,0,381,
+1,375,1178,1,1010,
+1877,16,0,381,1,
+63,1053,1,1263,1878,
+16,0,381,1,283,
+1008,1,66,1063,1,
+67,1100,1,1158,1879,
+16,0,381,1,69,
+1073,1,70,1078,1,
+68,1068,1,73,1880,
+16,0,381,1,74,
+1095,1,494,1881,16,
+0,381,1,377,1183,
+1,172,1882,16,0,
+381,1,1713,1883,16,
+0,381,1,188,1884,
+16,0,381,1,82,
+1885,16,0,381,1,
+262,975,1,504,956,
+1,305,1046,1,1527,
+1886,16,0,381,1,
+1565,1887,16,0,381,
+1,403,1888,16,0,
+381,1,827,1889,16,
+0,381,1,1046,1890,
+16,0,381,1,93,
+1891,16,0,381,1,
+1402,1892,16,0,381,
+1,205,1893,16,0,
+381,1,2207,1894,16,
+0,381,1,1298,1895,
+16,0,381,1,1002,
+1058,1,942,1896,16,
+0,381,1,1193,1897,
+16,0,381,1,379,
+1247,1,478,1325,1,
+107,1898,16,0,381,
+1,21,1899,19,372,
+1,21,1900,5,77,
+1,328,1901,16,0,
+370,1,1333,1902,16,
+0,370,1,1094,1241,
+1,1438,1903,16,0,
+370,1,223,1904,16,
+0,370,1,428,1905,
+16,0,370,1,118,
+1906,16,0,370,1,
+883,1907,16,0,370,
+1,453,1908,16,0,
+370,1,1001,994,1,
+130,1909,16,0,370,
+1,1112,1145,1,242,
+1910,16,0,370,1,
+1769,1911,16,0,370,
+1,463,1314,1,573,
+1083,1,1228,1912,16,
+0,370,1,1011,1089,
+1,1121,1913,16,0,
+370,1,143,1914,16,
+0,370,1,352,1915,
+16,0,370,1,1674,
+1916,16,0,370,1,
+40,1002,1,477,988,
+1,42,1917,16,0,
+370,1,479,1330,1,
+44,1018,1,373,1173,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,1482,1918,16,0,
+370,1,380,1193,1,
+157,1919,16,0,370,
+1,476,1303,1,371,
+1167,1,1366,1920,16,
+0,370,1,375,1178,
+1,1010,1921,16,0,
+370,1,63,1053,1,
+1263,1922,16,0,370,
+1,283,1008,1,66,
+1063,1,67,1100,1,
+1158,1923,16,0,370,
+1,69,1073,1,70,
+1078,1,68,1068,1,
+73,1924,16,0,370,
+1,74,1095,1,494,
+1925,16,0,370,1,
+377,1183,1,172,1926,
+16,0,370,1,1713,
+1927,16,0,370,1,
+188,1928,16,0,370,
+1,82,1929,16,0,
+370,1,262,975,1,
+504,956,1,305,1046,
+1,1527,1930,16,0,
+370,1,1565,1931,16,
+0,370,1,403,1932,
+16,0,370,1,827,
+1933,16,0,370,1,
+1046,1934,16,0,370,
+1,93,1935,16,0,
+370,1,1402,1936,16,
+0,370,1,205,1937,
+16,0,370,1,2207,
+1938,16,0,370,1,
+1298,1939,16,0,370,
+1,1002,1058,1,942,
+1940,16,0,370,1,
+1193,1941,16,0,370,
+1,379,1247,1,478,
+1325,1,107,1942,16,
+0,370,1,22,1943,
+19,365,1,22,1944,
+5,77,1,328,1945,
+16,0,363,1,1333,
+1946,16,0,363,1,
+1094,1241,1,1438,1947,
+16,0,363,1,223,
+1948,16,0,363,1,
+428,1949,16,0,363,
+1,118,1950,16,0,
+363,1,883,1951,16,
+0,363,1,453,1952,
+16,0,363,1,1001,
+994,1,130,1953,16,
+0,363,1,1112,1145,
+1,242,1954,16,0,
+363,1,1769,1955,16,
+0,363,1,463,1314,
+1,573,1083,1,1228,
+1956,16,0,363,1,
+1011,1089,1,1121,1957,
+16,0,363,1,143,
+1958,16,0,363,1,
+352,1959,16,0,363,
+1,1674,1960,16,0,
+363,1,40,1002,1,
+477,988,1,42,1961,
+16,0,363,1,479,
+1330,1,44,1018,1,
+373,1173,1,47,1019,
+1,48,1025,1,49,
+1031,1,50,1036,1,
+51,1041,1,1482,1962,
+16,0,363,1,380,
+1193,1,157,1963,16,
+0,363,1,476,1303,
+1,371,1167,1,1366,
+1964,16,0,363,1,
+375,1178,1,1010,1965,
+16,0,363,1,63,
+1053,1,1263,1966,16,
+0,363,1,283,1008,
+1,66,1063,1,67,
+1100,1,1158,1967,16,
+0,363,1,69,1073,
+1,70,1078,1,68,
+1068,1,73,1968,16,
+0,363,1,74,1095,
+1,494,1969,16,0,
+363,1,377,1183,1,
+172,1970,16,0,363,
+1,1713,1971,16,0,
+363,1,188,1972,16,
+0,363,1,82,1973,
+16,0,363,1,262,
+975,1,504,956,1,
+305,1046,1,1527,1974,
+16,0,363,1,1565,
+1975,16,0,363,1,
+403,1976,16,0,363,
+1,827,1977,16,0,
+363,1,1046,1978,16,
+0,363,1,93,1979,
+16,0,363,1,1402,
+1980,16,0,363,1,
+205,1981,16,0,363,
+1,2207,1982,16,0,
+363,1,1298,1983,16,
+0,363,1,1002,1058,
+1,942,1984,16,0,
+363,1,1193,1985,16,
+0,363,1,379,1247,
+1,478,1325,1,107,
+1986,16,0,363,1,
+24,1987,19,198,1,
+24,1988,5,5,1,
+44,1989,16,0,196,
+1,377,1990,16,0,
+477,1,40,1991,16,
+0,608,1,63,1992,
+16,0,213,1,373,
+1993,16,0,473,1,
+25,1994,19,296,1,
+25,1995,5,152,1,
+2009,716,1,1257,1996,
+16,0,504,1,1760,
+688,1,256,1997,16,
+0,504,1,1763,1998,
+16,0,504,1,1011,
+1089,1,1263,1999,16,
+0,294,1,494,2000,
+16,0,294,1,262,
+975,1,1769,2001,16,
+0,294,1,2207,2002,
+16,0,294,1,504,
+2003,16,0,504,1,
+1527,2004,16,0,294,
+1,477,988,1,277,
+2005,16,0,504,1,
+1001,994,1,1788,2006,
+16,0,504,1,32,
+2007,16,0,504,1,
+1292,2008,16,0,504,
+1,1010,2009,16,0,
+294,1,40,1002,1,
+41,2010,16,0,504,
+1,42,2011,16,0,
+294,1,43,2012,16,
+0,504,1,44,1018,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,52,2013,16,0,
+504,1,1559,2014,16,
+0,504,1,305,1046,
+1,1514,2015,16,0,
+504,1,299,2016,16,
+0,504,1,1817,760,
+1,1818,2017,16,0,
+504,1,62,2018,16,
+0,504,1,63,1053,
+1,1002,1058,1,66,
+1063,1,67,1100,1,
+68,1068,1,69,1073,
+1,70,1078,1,573,
+1083,1,1327,2019,16,
+0,504,1,73,2020,
+16,0,294,1,74,
+1095,1,71,2021,16,
+0,504,1,76,2022,
+16,0,504,1,328,
+1110,1,1333,2023,16,
+0,294,1,79,2024,
+16,0,504,1,82,
+2025,16,0,294,1,
+322,2026,16,0,504,
+1,85,2027,16,0,
+504,1,89,2028,16,
+0,504,1,1847,794,
+1,283,1008,1,93,
+2029,16,0,294,1,
+1852,806,1,1853,649,
+1,1854,655,1,1855,
+660,1,1856,748,1,
+1858,667,1,97,2030,
+16,0,504,1,1860,
+672,1,1862,677,1,
+1863,682,1,102,2031,
+16,0,504,1,1112,
+1145,1,1565,2032,16,
+0,294,1,1046,1105,
+1,1115,2033,16,0,
+504,1,112,2034,16,
+0,504,1,352,1152,
+1,1121,2035,16,0,
+294,1,118,1162,1,
+346,2036,16,0,504,
+1,371,1167,1,107,
+2037,16,0,294,1,
+124,2038,16,0,504,
+1,377,1183,1,1298,
+2039,16,0,294,1,
+827,2040,16,0,294,
+1,380,1193,1,130,
+1205,1,2011,723,1,
+384,2041,16,0,504,
+1,373,1173,1,137,
+2042,16,0,504,1,
+1396,2043,16,0,504,
+1,143,2044,16,0,
+294,1,397,2045,16,
+0,504,1,1402,2046,
+16,0,294,1,1152,
+2047,16,0,504,1,
+375,1178,1,151,2048,
+16,0,504,1,403,
+2049,16,0,294,1,
+1158,2050,16,0,294,
+1,1366,2051,16,0,
+294,1,381,2052,16,
+0,504,1,157,2053,
+16,0,294,1,883,
+2054,16,0,294,1,
+1668,2055,16,0,504,
+1,166,2056,16,0,
+504,1,379,1247,1,
+1674,2057,16,0,294,
+1,422,2058,16,0,
+504,1,172,1252,1,
+1385,769,1,1432,2059,
+16,0,504,1,1584,
+2060,16,0,504,1,
+182,2061,16,0,504,
+1,1187,2062,16,0,
+504,1,1637,710,1,
+1639,2063,16,0,504,
+1,1694,740,1,1193,
+2064,16,0,294,1,
+428,2065,16,0,294,
+1,2201,2066,16,0,
+504,1,188,1275,1,
+447,2067,16,0,504,
+1,1094,1241,1,199,
+2068,16,0,504,1,
+1707,2069,16,0,504,
+1,453,2070,16,0,
+294,1,205,2071,16,
+0,294,1,1713,2072,
+16,0,294,1,1965,
+2073,16,0,504,1,
+1611,2074,16,0,504,
+1,1467,729,1,1469,
+2075,16,0,504,1,
+217,2076,16,0,504,
+1,1222,2077,16,0,
+504,1,942,1288,1,
+223,2078,16,0,294,
+1,1228,2079,16,0,
+294,1,476,1303,1,
+1732,2080,16,0,504,
+1,1482,2081,16,0,
+294,1,463,2082,16,
+0,504,1,1438,2083,
+16,0,294,1,236,
+2084,16,0,504,1,
+488,2085,16,0,504,
+1,242,2086,16,0,
+294,1,478,1325,1,
+479,1330,1,2005,801,
+1,2006,777,1,26,
+2087,19,335,1,26,
+2088,5,77,1,328,
+1110,1,1333,2089,16,
+0,333,1,1094,1241,
+1,1438,2090,16,0,
+333,1,223,2091,16,
+0,333,1,428,2092,
+16,0,333,1,118,
+1162,1,883,2093,16,
+0,333,1,453,2094,
+16,0,557,1,1001,
+994,1,130,1205,1,
+1112,1145,1,242,2095,
+16,0,333,1,1769,
+2096,16,0,333,1,
+463,1314,1,573,1083,
+1,1228,2097,16,0,
+333,1,1011,1089,1,
+1121,2098,16,0,333,
+1,143,2099,16,0,
+333,1,352,1152,1,
+1674,2100,16,0,333,
+1,40,1002,1,477,
+988,1,42,2101,16,
+0,333,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,1482,2102,16,
+0,333,1,380,1193,
+1,157,2103,16,0,
+333,1,476,1303,1,
+371,1167,1,1366,2104,
+16,0,333,1,375,
+1178,1,1010,2105,16,
+0,333,1,63,1053,
+1,1263,2106,16,0,
+333,1,283,1008,1,
+66,1063,1,67,1100,
+1,1158,2107,16,0,
+333,1,69,1073,1,
+70,1078,1,68,1068,
+1,73,2108,16,0,
+333,1,74,1095,1,
+494,2109,16,0,578,
+1,377,1183,1,172,
+1252,1,1713,2110,16,
+0,333,1,188,1275,
+1,82,2111,16,0,
+333,1,262,975,1,
+504,956,1,305,1046,
+1,1527,2112,16,0,
+333,1,1565,2113,16,
+0,333,1,403,2114,
+16,0,333,1,827,
+2115,16,0,333,1,
+1046,1105,1,93,2116,
+16,0,333,1,1402,
+2117,16,0,333,1,
+205,2118,16,0,333,
+1,2207,2119,16,0,
+333,1,1298,2120,16,
+0,333,1,1002,1058,
+1,942,1288,1,1193,
+2121,16,0,333,1,
+379,1247,1,478,1325,
+1,107,2122,16,0,
+333,1,27,2123,19,
+484,1,27,2124,5,
+77,1,1853,649,1,
+1854,655,1,1855,660,
+1,112,2125,16,0,
+482,1,384,2126,16,
+0,482,1,1858,667,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+447,2127,16,0,482,
+1,1611,2128,16,0,
+482,1,124,2129,16,
+0,482,1,1760,688,
+1,236,2130,16,0,
+482,1,1763,2131,16,
+0,482,1,2201,2132,
+16,0,482,1,1222,
+2133,16,0,482,1,
+1115,2134,16,0,482,
+1,1187,2135,16,0,
+482,1,137,2136,16,
+0,482,1,217,2137,
+16,0,482,1,32,
+2138,16,0,482,1,
+1668,2139,16,0,482,
+1,1514,2140,16,0,
+482,1,256,2141,16,
+0,482,1,41,2142,
+16,0,482,1,151,
+2143,16,0,482,1,
+43,2144,16,0,482,
+1,1732,2145,16,0,
+482,1,1637,710,1,
+2009,716,1,1639,2146,
+16,0,482,1,2011,
+723,1,1467,729,1,
+1584,2147,16,0,482,
+1,52,2148,16,0,
+482,1,381,2149,16,
+0,482,1,346,2150,
+16,0,482,1,166,
+2151,16,0,482,1,
+1257,2152,16,0,482,
+1,1694,740,1,1432,
+2153,16,0,482,1,
+1152,2154,16,0,482,
+1,1856,748,1,62,
+2155,16,0,482,1,
+1965,2156,16,0,482,
+1,504,2157,16,0,
+482,1,277,2158,16,
+0,482,1,397,2159,
+16,0,482,1,71,
+2160,16,0,482,1,
+1707,2161,16,0,482,
+1,1817,760,1,1818,
+2162,16,0,482,1,
+463,2163,16,0,482,
+1,76,2164,16,0,
+482,1,1385,769,1,
+79,2165,16,0,482,
+1,182,2166,16,0,
+482,1,299,2167,16,
+0,482,1,2006,777,
+1,1559,2168,16,0,
+482,1,85,2169,16,
+0,482,1,488,2170,
+16,0,482,1,1396,
+2171,16,0,482,1,
+89,2172,16,0,482,
+1,199,2173,16,0,
+482,1,1292,2174,16,
+0,482,1,422,2175,
+16,0,482,1,97,
+2176,16,0,482,1,
+1469,2177,16,0,482,
+1,1788,2178,16,0,
+482,1,102,2179,16,
+0,482,1,1847,794,
+1,322,2180,16,0,
+482,1,1327,2181,16,
+0,482,1,2005,801,
+1,1852,806,1,28,
+2182,19,139,1,28,
+2183,5,59,1,328,
+1110,1,1094,1241,1,
+223,1293,1,118,1162,
+1,883,1199,1,1001,
+994,1,130,1205,1,
+1112,1145,1,242,1320,
+1,352,1152,1,463,
+1314,1,573,1083,1,
+574,1401,1,1011,1089,
+1,143,1216,1,40,
+1002,1,41,1390,1,
+42,1394,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+157,1236,1,49,1031,
+1,50,1036,1,48,
+1025,1,379,1247,1,
+380,1193,1,51,1041,
+1,383,2184,16,0,
+137,1,371,1167,1,
+478,1325,1,386,1411,
+1,375,1178,1,172,
+1252,1,262,975,1,
+283,1008,1,63,1053,
+1,67,1100,1,68,
+1068,1,69,1073,1,
+66,1063,1,476,1303,
+1,477,988,1,74,
+1095,1,377,1183,1,
+1002,1058,1,70,1078,
+1,188,1275,1,381,
+1417,1,82,1120,1,
+504,956,1,305,1046,
+1,827,1188,1,93,
+1146,1,205,1281,1,
+1046,1105,1,942,1288,
+1,107,1140,1,29,
+2185,19,287,1,29,
+2186,5,77,1,328,
+1110,1,1333,2187,16,
+0,285,1,1094,1241,
+1,1438,2188,16,0,
+285,1,223,2189,16,
+0,285,1,428,2190,
+16,0,285,1,118,
+1162,1,883,2191,16,
+0,285,1,453,2192,
+16,0,285,1,1001,
+994,1,130,1205,1,
+1112,1145,1,242,2193,
+16,0,285,1,1769,
+2194,16,0,285,1,
+463,1314,1,573,1083,
+1,1228,2195,16,0,
+285,1,1011,1089,1,
+1121,2196,16,0,285,
+1,143,1216,1,352,
+1152,1,1674,2197,16,
+0,285,1,40,1002,
+1,477,988,1,42,
+2198,16,0,285,1,
+479,1330,1,44,1018,
+1,373,1173,1,47,
+1019,1,48,1025,1,
+49,1031,1,50,1036,
+1,51,1041,1,1482,
+2199,16,0,285,1,
+380,1193,1,157,1236,
+1,476,1303,1,371,
+1167,1,1366,2200,16,
+0,285,1,375,1178,
+1,1010,2201,16,0,
+285,1,63,1053,1,
+1263,2202,16,0,285,
+1,283,1008,1,66,
+1063,1,67,1100,1,
+1158,2203,16,0,285,
+1,69,1073,1,70,
+1078,1,68,1068,1,
+73,2204,16,0,285,
+1,74,1095,1,494,
+2205,16,0,285,1,
+377,1183,1,172,1252,
+1,1713,2206,16,0,
+285,1,188,1275,1,
+82,2207,16,0,285,
+1,262,975,1,504,
+956,1,305,1046,1,
+1527,2208,16,0,285,
+1,1565,2209,16,0,
+285,1,403,2210,16,
+0,285,1,827,2211,
+16,0,285,1,1046,
+1105,1,93,2212,16,
+0,285,1,1402,2213,
+16,0,285,1,205,
+2214,16,0,285,1,
+2207,2215,16,0,285,
+1,1298,2216,16,0,
+285,1,1002,1058,1,
+942,1288,1,1193,2217,
+16,0,285,1,379,
+1247,1,478,1325,1,
+107,2218,16,0,285,
+1,30,2219,19,273,
+1,30,2220,5,77,
+1,328,1110,1,1333,
+2221,16,0,271,1,
+1094,1241,1,1438,2222,
+16,0,271,1,223,
+2223,16,0,271,1,
+428,2224,16,0,271,
+1,118,1162,1,883,
+2225,16,0,271,1,
+453,2226,16,0,271,
+1,1001,994,1,130,
+1205,1,1112,1145,1,
+242,2227,16,0,271,
+1,1769,2228,16,0,
+271,1,463,1314,1,
+573,1083,1,1228,2229,
+16,0,271,1,1011,
+1089,1,1121,2230,16,
+0,271,1,143,1216,
+1,352,1152,1,1674,
+2231,16,0,271,1,
+40,1002,1,477,988,
+1,42,2232,16,0,
+271,1,479,1330,1,
+44,1018,1,373,1173,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,1482,2233,16,0,
+271,1,380,1193,1,
+157,1236,1,476,1303,
+1,371,1167,1,1366,
+2234,16,0,271,1,
+375,1178,1,1010,2235,
+16,0,271,1,63,
+1053,1,1263,2236,16,
+0,271,1,283,1008,
+1,66,1063,1,67,
+1100,1,1158,2237,16,
+0,271,1,69,1073,
+1,70,1078,1,68,
+1068,1,73,2238,16,
+0,271,1,74,1095,
+1,494,2239,16,0,
+271,1,377,1183,1,
+172,1252,1,1713,2240,
+16,0,271,1,188,
+1275,1,82,2241,16,
+0,271,1,262,975,
+1,504,956,1,305,
+1046,1,1527,2242,16,
+0,271,1,1565,2243,
+16,0,271,1,403,
+2244,16,0,271,1,
+827,2245,16,0,271,
+1,1046,1105,1,93,
+2246,16,0,271,1,
+1402,2247,16,0,271,
+1,205,2248,16,0,
+271,1,2207,2249,16,
+0,271,1,1298,2250,
+16,0,271,1,1002,
+1058,1,942,1288,1,
+1193,2251,16,0,271,
+1,379,1247,1,478,
+1325,1,107,2252,16,
+0,271,1,31,2253,
+19,269,1,31,2254,
+5,77,1,328,1110,
+1,1333,2255,16,0,
+267,1,1094,1241,1,
+1438,2256,16,0,267,
+1,223,2257,16,0,
+267,1,428,2258,16,
+0,267,1,118,1162,
+1,883,2259,16,0,
+267,1,453,2260,16,
+0,267,1,1001,994,
+1,130,1205,1,1112,
+1145,1,242,2261,16,
+0,267,1,1769,2262,
+16,0,267,1,463,
+1314,1,573,1083,1,
+1228,2263,16,0,267,
+1,1011,1089,1,1121,
+2264,16,0,267,1,
+143,2265,16,0,267,
+1,352,1152,1,1674,
+2266,16,0,267,1,
+40,1002,1,477,988,
+1,42,2267,16,0,
+267,1,479,1330,1,
+44,1018,1,373,1173,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,1482,2268,16,0,
+267,1,380,1193,1,
+157,2269,16,0,267,
+1,476,1303,1,371,
+1167,1,1366,2270,16,
+0,267,1,375,1178,
+1,1010,2271,16,0,
+267,1,63,1053,1,
+1263,2272,16,0,267,
+1,283,1008,1,66,
+1063,1,67,1100,1,
+1158,2273,16,0,267,
+1,69,1073,1,70,
+1078,1,68,1068,1,
+73,2274,16,0,267,
+1,74,1095,1,494,
+2275,16,0,267,1,
+377,1183,1,172,1252,
+1,1713,2276,16,0,
+267,1,188,1275,1,
+82,2277,16,0,267,
+1,262,975,1,504,
+956,1,305,1046,1,
+1527,2278,16,0,267,
+1,1565,2279,16,0,
+267,1,403,2280,16,
+0,267,1,827,2281,
+16,0,267,1,1046,
+1105,1,93,2282,16,
+0,267,1,1402,2283,
+16,0,267,1,205,
+2284,16,0,267,1,
+2207,2285,16,0,267,
+1,1298,2286,16,0,
+267,1,1002,1058,1,
+942,1288,1,1193,2287,
+16,0,267,1,379,
+1247,1,478,1325,1,
+107,2288,16,0,267,
+1,32,2289,19,262,
+1,32,2290,5,77,
+1,328,1110,1,1333,
+2291,16,0,260,1,
+1094,1241,1,1438,2292,
+16,0,260,1,223,
+2293,16,0,260,1,
+428,2294,16,0,260,
+1,118,1162,1,883,
+2295,16,0,260,1,
+453,2296,16,0,260,
+1,1001,994,1,130,
+1205,1,1112,1145,1,
+242,2297,16,0,260,
+1,1769,2298,16,0,
+260,1,463,1314,1,
+573,1083,1,1228,2299,
+16,0,260,1,1011,
+1089,1,1121,2300,16,
+0,260,1,143,2301,
+16,0,260,1,352,
+1152,1,1674,2302,16,
+0,260,1,40,1002,
+1,477,988,1,42,
+2303,16,0,260,1,
+479,1330,1,44,1018,
+1,373,1173,1,47,
+1019,1,48,1025,1,
+49,1031,1,50,1036,
+1,51,1041,1,1482,
+2304,16,0,260,1,
+380,1193,1,157,2305,
+16,0,260,1,476,
+1303,1,371,1167,1,
+1366,2306,16,0,260,
+1,375,1178,1,1010,
+2307,16,0,260,1,
+63,1053,1,1263,2308,
+16,0,260,1,283,
+1008,1,66,1063,1,
+67,1100,1,1158,2309,
+16,0,260,1,69,
+1073,1,70,1078,1,
+68,1068,1,73,2310,
+16,0,260,1,74,
+1095,1,494,2311,16,
+0,260,1,377,1183,
+1,172,1252,1,1713,
+2312,16,0,260,1,
+188,1275,1,82,2313,
+16,0,260,1,262,
+975,1,504,956,1,
+305,1046,1,1527,2314,
+16,0,260,1,1565,
+2315,16,0,260,1,
+403,2316,16,0,260,
+1,827,2317,16,0,
+260,1,1046,1105,1,
+93,2318,16,0,260,
+1,1402,2319,16,0,
+260,1,205,2320,16,
+0,260,1,2207,2321,
+16,0,260,1,1298,
+2322,16,0,260,1,
+1002,1058,1,942,1288,
+1,1193,2323,16,0,
+260,1,379,1247,1,
+478,1325,1,107,2324,
+16,0,260,1,33,
+2325,19,350,1,33,
+2326,5,77,1,328,
+1110,1,1333,2327,16,
+0,348,1,1094,1241,
+1,1438,2328,16,0,
+348,1,223,2329,16,
+0,348,1,428,2330,
+16,0,348,1,118,
+1162,1,883,2331,16,
+0,348,1,453,2332,
+16,0,348,1,1001,
+994,1,130,1205,1,
+1112,1145,1,242,1320,
+1,1769,2333,16,0,
+348,1,463,1314,1,
+573,1083,1,1228,2334,
+16,0,348,1,1011,
+1089,1,1121,2335,16,
+0,348,1,143,1216,
+1,352,1152,1,1674,
+2336,16,0,348,1,
+40,1002,1,477,988,
+1,42,2337,16,0,
+348,1,479,1330,1,
+44,1018,1,373,1173,
+1,47,1019,1,48,
+1025,1,49,1031,1,
+50,1036,1,51,1041,
+1,1482,2338,16,0,
+348,1,380,1193,1,
+157,1236,1,476,1303,
+1,371,1167,1,1366,
+2339,16,0,348,1,
+375,1178,1,1010,2340,
+16,0,348,1,63,
+1053,1,1263,2341,16,
+0,348,1,283,1008,
+1,66,1063,1,67,
+1100,1,1158,2342,16,
+0,348,1,69,1073,
+1,70,1078,1,68,
+1068,1,73,2343,16,
+0,348,1,74,1095,
+1,494,2344,16,0,
+348,1,377,1183,1,
+172,1252,1,1713,2345,
+16,0,348,1,188,
+1275,1,82,2346,16,
+0,348,1,262,975,
+1,504,956,1,305,
+1046,1,1527,2347,16,
+0,348,1,1565,2348,
+16,0,348,1,403,
+2349,16,0,348,1,
+827,2350,16,0,348,
+1,1046,1105,1,93,
+2351,16,0,348,1,
+1402,2352,16,0,348,
+1,205,2353,16,0,
+348,1,2207,2354,16,
+0,348,1,1298,2355,
+16,0,348,1,1002,
+1058,1,942,1288,1,
+1193,2356,16,0,348,
+1,379,1247,1,478,
+1325,1,107,2357,16,
+0,348,1,34,2358,
+19,344,1,34,2359,
+5,77,1,328,1110,
+1,1333,2360,16,0,
+342,1,1094,1241,1,
+1438,2361,16,0,342,
+1,223,1293,1,428,
+2362,16,0,342,1,
+118,1162,1,883,2363,
+16,0,342,1,453,
+2364,16,0,342,1,
+1001,994,1,130,1205,
+1,1112,1145,1,242,
+1320,1,1769,2365,16,
+0,342,1,463,1314,
+1,573,1083,1,1228,
+2366,16,0,342,1,
+1011,1089,1,1121,2367,
+16,0,342,1,143,
+1216,1,352,1152,1,
+1674,2368,16,0,342,
+1,40,1002,1,477,
+988,1,42,2369,16,
+0,342,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,1482,2370,16,
+0,342,1,380,1193,
+1,157,1236,1,476,
+1303,1,371,1167,1,
+1366,2371,16,0,342,
+1,375,1178,1,1010,
+2372,16,0,342,1,
+63,1053,1,1263,2373,
+16,0,342,1,283,
+1008,1,66,1063,1,
+67,1100,1,1158,2374,
+16,0,342,1,69,
+1073,1,70,1078,1,
+68,1068,1,73,2375,
+16,0,342,1,74,
+1095,1,494,2376,16,
+0,342,1,377,1183,
+1,172,1252,1,1713,
+2377,16,0,342,1,
+188,1275,1,82,2378,
+16,0,342,1,262,
+975,1,504,956,1,
+305,1046,1,1527,2379,
+16,0,342,1,1565,
+2380,16,0,342,1,
+403,2381,16,0,342,
+1,827,2382,16,0,
+342,1,1046,1105,1,
+93,2383,16,0,342,
+1,1402,2384,16,0,
+342,1,205,1281,1,
+2207,2385,16,0,342,
+1,1298,2386,16,0,
+342,1,1002,1058,1,
+942,1288,1,1193,2387,
+16,0,342,1,379,
+1247,1,478,1325,1,
+107,2388,16,0,342,
+1,35,2389,19,338,
+1,35,2390,5,77,
+1,328,1110,1,1333,
+2391,16,0,336,1,
+1094,1241,1,1438,2392,
+16,0,336,1,223,
+2393,16,0,336,1,
+428,2394,16,0,336,
+1,118,1162,1,883,
+2395,16,0,336,1,
+453,2396,16,0,336,
+1,1001,994,1,130,
+1205,1,1112,1145,1,
+242,1320,1,1769,2397,
+16,0,336,1,463,
+1314,1,573,1083,1,
+1228,2398,16,0,336,
+1,1011,1089,1,1121,
+2399,16,0,336,1,
+143,1216,1,352,1152,
+1,1674,2400,16,0,
+336,1,40,1002,1,
+477,988,1,42,2401,
+16,0,336,1,479,
+1330,1,44,1018,1,
+373,1173,1,47,1019,
+1,48,1025,1,49,
+1031,1,50,1036,1,
+51,1041,1,1482,2402,
+16,0,336,1,380,
+1193,1,157,1236,1,
+476,1303,1,371,1167,
+1,1366,2403,16,0,
+336,1,375,1178,1,
+1010,2404,16,0,336,
+1,63,1053,1,1263,
+2405,16,0,336,1,
+283,1008,1,66,1063,
+1,67,1100,1,1158,
+2406,16,0,336,1,
+69,1073,1,70,1078,
+1,68,1068,1,73,
+2407,16,0,336,1,
+74,1095,1,494,2408,
+16,0,336,1,377,
+1183,1,172,1252,1,
+1713,2409,16,0,336,
+1,188,1275,1,82,
+2410,16,0,336,1,
+262,975,1,504,956,
+1,305,1046,1,1527,
+2411,16,0,336,1,
+1565,2412,16,0,336,
+1,403,2413,16,0,
+336,1,827,2414,16,
+0,336,1,1046,1105,
+1,93,2415,16,0,
+336,1,1402,2416,16,
+0,336,1,205,1281,
+1,2207,2417,16,0,
+336,1,1298,2418,16,
+0,336,1,1002,1058,
+1,942,1288,1,1193,
+2419,16,0,336,1,
+379,1247,1,478,1325,
+1,107,2420,16,0,
+336,1,36,2421,19,
+231,1,36,2422,5,
+76,1,1853,649,1,
+1854,655,1,1855,660,
+1,112,2423,16,0,
+229,1,384,2424,16,
+0,229,1,1858,667,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+447,2425,16,0,229,
+1,1611,2426,16,0,
+229,1,124,2427,16,
+0,229,1,1760,688,
+1,236,2428,16,0,
+229,1,1763,2429,16,
+0,229,1,2201,2430,
+16,0,229,1,1222,
+2431,16,0,229,1,
+1115,2432,16,0,229,
+1,1187,2433,16,0,
+229,1,137,2434,16,
+0,229,1,217,2435,
+16,0,229,1,32,
+2436,16,0,229,1,
+1668,2437,16,0,229,
+1,1514,2438,16,0,
+229,1,256,2439,16,
+0,229,1,41,2440,
+16,0,229,1,151,
+2441,16,0,229,1,
+43,2442,16,0,229,
+1,1732,2443,16,0,
+229,1,1637,710,1,
+2009,716,1,1639,2444,
+16,0,229,1,2011,
+723,1,1467,729,1,
+1584,2445,16,0,229,
+1,52,2446,16,0,
+229,1,381,2447,16,
+0,229,1,346,2448,
+16,0,229,1,166,
+2449,16,0,229,1,
+1257,2450,16,0,229,
+1,1694,740,1,1432,
+2451,16,0,229,1,
+1152,2452,16,0,229,
+1,1856,748,1,1965,
+2453,16,0,229,1,
+504,2454,16,0,229,
+1,277,2455,16,0,
+229,1,397,2456,16,
+0,229,1,71,2457,
+16,0,229,1,1707,
+2458,16,0,229,1,
+1817,760,1,1818,2459,
+16,0,229,1,463,
+2460,16,0,229,1,
+76,2461,16,0,229,
+1,1385,769,1,79,
+2462,16,0,229,1,
+182,2463,16,0,229,
+1,299,2464,16,0,
+229,1,2006,777,1,
+1559,2465,16,0,229,
+1,85,2466,16,0,
+229,1,488,2467,16,
+0,229,1,1396,2468,
+16,0,229,1,89,
+2469,16,0,229,1,
+199,2470,16,0,229,
+1,1292,2471,16,0,
+229,1,422,2472,16,
+0,229,1,97,2473,
+16,0,229,1,1469,
+2474,16,0,229,1,
+1788,2475,16,0,229,
+1,102,2476,16,0,
+229,1,1847,794,1,
+322,2477,16,0,229,
+1,1327,2478,16,0,
+229,1,2005,801,1,
+1852,806,1,37,2479,
+19,252,1,37,2480,
+5,76,1,1853,649,
+1,1854,655,1,1855,
+660,1,112,2481,16,
+0,250,1,384,2482,
+16,0,250,1,1858,
+667,1,1860,672,1,
+1862,677,1,1863,682,
+1,447,2483,16,0,
+250,1,1611,2484,16,
+0,250,1,124,2485,
+16,0,250,1,1760,
+688,1,236,2486,16,
+0,250,1,1763,2487,
+16,0,250,1,2201,
+2488,16,0,250,1,
+1222,2489,16,0,250,
+1,1115,2490,16,0,
+250,1,1187,2491,16,
+0,250,1,137,2492,
+16,0,250,1,217,
+2493,16,0,250,1,
+32,2494,16,0,250,
+1,1668,2495,16,0,
+250,1,1514,2496,16,
+0,250,1,256,2497,
+16,0,250,1,41,
+2498,16,0,250,1,
+151,2499,16,0,250,
+1,43,2500,16,0,
+250,1,1732,2501,16,
+0,250,1,1637,710,
+1,2009,716,1,1639,
+2502,16,0,250,1,
+2011,723,1,1467,729,
+1,1584,2503,16,0,
+250,1,52,2504,16,
+0,250,1,381,2505,
+16,0,250,1,346,
+2506,16,0,250,1,
+166,2507,16,0,250,
+1,1257,2508,16,0,
+250,1,1694,740,1,
+1432,2509,16,0,250,
+1,1152,2510,16,0,
+250,1,1856,748,1,
+1965,2511,16,0,250,
+1,504,2512,16,0,
+250,1,277,2513,16,
+0,250,1,397,2514,
+16,0,250,1,71,
+2515,16,0,250,1,
+1707,2516,16,0,250,
+1,1817,760,1,1818,
+2517,16,0,250,1,
+463,2518,16,0,250,
+1,76,2519,16,0,
+250,1,1385,769,1,
+79,2520,16,0,250,
+1,182,2521,16,0,
+250,1,299,2522,16,
+0,250,1,2006,777,
+1,1559,2523,16,0,
+250,1,85,2524,16,
+0,250,1,488,2525,
+16,0,250,1,1396,
+2526,16,0,250,1,
+89,2527,16,0,250,
+1,199,2528,16,0,
+250,1,1292,2529,16,
+0,250,1,422,2530,
+16,0,250,1,97,
+2531,16,0,250,1,
+1469,2532,16,0,250,
+1,1788,2533,16,0,
+250,1,102,2534,16,
+0,250,1,1847,794,
+1,322,2535,16,0,
+250,1,1327,2536,16,
+0,250,1,2005,801,
+1,1852,806,1,38,
+2537,19,248,1,38,
+2538,5,77,1,328,
+1110,1,1333,2539,16,
+0,246,1,1094,1241,
+1,1438,2540,16,0,
+246,1,223,1293,1,
+428,2541,16,0,246,
+1,118,1162,1,883,
+1199,1,453,2542,16,
+0,246,1,1001,994,
+1,130,1205,1,1112,
+1145,1,242,1320,1,
+1769,2543,16,0,246,
+1,463,1314,1,573,
+1083,1,1228,2544,16,
+0,246,1,1011,1089,
+1,1121,2545,16,0,
+246,1,143,1216,1,
+352,1152,1,1674,2546,
+16,0,246,1,40,
+1002,1,477,988,1,
+42,2547,16,0,246,
+1,479,1330,1,44,
+1018,1,373,1173,1,
+47,1019,1,48,1025,
+1,49,1031,1,50,
+1036,1,51,1041,1,
+1482,2548,16,0,246,
+1,380,1193,1,157,
+1236,1,476,1303,1,
+371,1167,1,1366,2549,
+16,0,246,1,375,
+1178,1,1010,2550,16,
+0,246,1,63,1053,
+1,1263,2551,16,0,
+246,1,283,1008,1,
+66,1063,1,67,1100,
+1,1158,2552,16,0,
+246,1,69,1073,1,
+70,1078,1,68,1068,
+1,73,2553,16,0,
+246,1,74,1095,1,
+494,2554,16,0,246,
+1,377,1183,1,172,
+1252,1,1713,2555,16,
+0,246,1,188,1275,
+1,82,2556,16,0,
+246,1,262,975,1,
+504,956,1,305,1046,
+1,1527,2557,16,0,
+246,1,1565,2558,16,
+0,246,1,403,2559,
+16,0,246,1,827,
+1188,1,1046,1105,1,
+93,2560,16,0,246,
+1,1402,2561,16,0,
+246,1,205,1281,1,
+2207,2562,16,0,246,
+1,1298,2563,16,0,
+246,1,1002,1058,1,
+942,1288,1,1193,2564,
+16,0,246,1,379,
+1247,1,478,1325,1,
+107,2565,16,0,246,
+1,39,2566,19,234,
+1,39,2567,5,77,
+1,328,1110,1,1333,
+2568,16,0,232,1,
+1094,1241,1,1438,2569,
+16,0,232,1,223,
+1293,1,428,2570,16,
+0,232,1,118,1162,
+1,883,1199,1,453,
+2571,16,0,232,1,
+1001,994,1,130,1205,
+1,1112,1145,1,242,
+1320,1,1769,2572,16,
+0,232,1,463,1314,
+1,573,1083,1,1228,
+2573,16,0,232,1,
+1011,1089,1,1121,2574,
+16,0,232,1,143,
+1216,1,352,1152,1,
+1674,2575,16,0,232,
+1,40,1002,1,477,
+988,1,42,2576,16,
+0,232,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,1482,2577,16,
+0,232,1,380,1193,
+1,157,1236,1,476,
+1303,1,371,1167,1,
+1366,2578,16,0,232,
+1,375,1178,1,1010,
+2579,16,0,232,1,
+63,1053,1,1263,2580,
+16,0,232,1,283,
+1008,1,66,1063,1,
+67,1100,1,1158,2581,
+16,0,232,1,69,
+1073,1,70,1078,1,
+68,1068,1,73,2582,
+16,0,232,1,74,
+1095,1,494,2583,16,
+0,232,1,377,1183,
+1,172,1252,1,1713,
+2584,16,0,232,1,
+188,1275,1,82,2585,
+16,0,232,1,262,
+975,1,504,956,1,
+305,1046,1,1527,2586,
+16,0,232,1,1565,
+2587,16,0,232,1,
+403,2588,16,0,232,
+1,827,1188,1,1046,
+1105,1,93,2589,16,
+0,232,1,1402,2590,
+16,0,232,1,205,
+1281,1,2207,2591,16,
+0,232,1,1298,2592,
+16,0,232,1,1002,
+1058,1,942,1288,1,
+1193,2593,16,0,232,
+1,379,1247,1,478,
+1325,1,107,2594,16,
+0,232,1,40,2595,
+19,224,1,40,2596,
+5,77,1,328,1110,
+1,1333,2597,16,0,
+222,1,1094,1241,1,
+1438,2598,16,0,222,
+1,223,2599,16,0,
+222,1,428,2600,16,
+0,222,1,118,2601,
+16,0,222,1,883,
+2602,16,0,222,1,
+453,2603,16,0,222,
+1,1001,994,1,130,
+2604,16,0,222,1,
+1112,1145,1,242,2605,
+16,0,222,1,1769,
+2606,16,0,222,1,
+463,1314,1,573,1083,
+1,1228,2607,16,0,
+222,1,1011,1089,1,
+1121,2608,16,0,222,
+1,143,2609,16,0,
+222,1,352,1152,1,
+1674,2610,16,0,222,
+1,40,1002,1,477,
+988,1,42,2611,16,
+0,222,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,1482,2612,16,
+0,222,1,380,1193,
+1,157,2613,16,0,
+222,1,476,1303,1,
+371,1167,1,1366,2614,
+16,0,222,1,375,
+1178,1,1010,2615,16,
+0,222,1,63,1053,
+1,1263,2616,16,0,
+222,1,283,1008,1,
+66,1063,1,67,1100,
+1,1158,2617,16,0,
+222,1,69,1073,1,
+70,1078,1,68,1068,
+1,73,2618,16,0,
+222,1,74,1095,1,
+494,2619,16,0,222,
+1,377,1183,1,172,
+2620,16,0,222,1,
+1713,2621,16,0,222,
+1,188,2622,16,0,
+222,1,82,2623,16,
+0,222,1,262,975,
+1,504,956,1,305,
+1046,1,1527,2624,16,
+0,222,1,1565,2625,
+16,0,222,1,403,
+2626,16,0,222,1,
+827,2627,16,0,222,
+1,1046,1105,1,93,
+2628,16,0,222,1,
+1402,2629,16,0,222,
+1,205,2630,16,0,
+222,1,2207,2631,16,
+0,222,1,1298,2632,
+16,0,222,1,1002,
+1058,1,942,1288,1,
+1193,2633,16,0,222,
+1,379,1247,1,478,
+1325,1,107,2634,16,
+0,222,1,41,2635,
+19,194,1,41,2636,
+5,77,1,328,1110,
+1,1333,2637,16,0,
+192,1,1094,1241,1,
+1438,2638,16,0,192,
+1,223,2639,16,0,
+192,1,428,2640,16,
+0,192,1,118,2641,
+16,0,192,1,883,
+2642,16,0,192,1,
+453,2643,16,0,192,
+1,1001,994,1,130,
+2644,16,0,192,1,
+1112,1145,1,242,2645,
+16,0,192,1,1769,
+2646,16,0,192,1,
+463,1314,1,573,1083,
+1,1228,2647,16,0,
+192,1,1011,1089,1,
+1121,2648,16,0,192,
+1,143,2649,16,0,
+192,1,352,1152,1,
+1674,2650,16,0,192,
+1,40,1002,1,477,
+988,1,42,2651,16,
+0,192,1,479,1330,
+1,44,1018,1,373,
+1173,1,47,1019,1,
+48,1025,1,49,1031,
+1,50,1036,1,51,
+1041,1,1482,2652,16,
+0,192,1,380,1193,
+1,157,2653,16,0,
+192,1,476,1303,1,
+371,1167,1,1366,2654,
+16,0,192,1,375,
+1178,1,1010,2655,16,
+0,192,1,63,1053,
+1,1263,2656,16,0,
+192,1,283,1008,1,
+66,1063,1,67,1100,
+1,1158,2657,16,0,
+192,1,69,1073,1,
+70,1078,1,68,1068,
+1,73,2658,16,0,
+192,1,74,1095,1,
+494,2659,16,0,192,
+1,377,1183,1,172,
+2660,16,0,192,1,
+1713,2661,16,0,192,
+1,188,2662,16,0,
+192,1,82,2663,16,
+0,192,1,262,975,
+1,504,956,1,305,
+1046,1,1527,2664,16,
+0,192,1,1565,2665,
+16,0,192,1,403,
+2666,16,0,192,1,
+827,2667,16,0,192,
+1,1046,1105,1,93,
+2668,16,0,192,1,
+1402,2669,16,0,192,
+1,205,2670,16,0,
+192,1,2207,2671,16,
+0,192,1,1298,2672,
+16,0,192,1,1002,
+1058,1,942,1288,1,
+1193,2673,16,0,192,
+1,379,1247,1,478,
+1325,1,107,2674,16,
+0,192,1,42,2675,
+19,243,1,42,2676,
+5,27,1,1852,806,
+1,1853,649,1,1817,
+760,1,1818,2677,16,
+0,241,1,1856,748,
+1,2005,801,1,1858,
+667,1,1637,710,1,
+1860,672,1,2009,716,
+1,1788,2678,16,0,
+241,1,1863,682,1,
+1385,769,1,2006,777,
+1,1611,2679,16,0,
+241,1,1760,688,1,
+2011,723,1,1467,729,
+1,1639,2680,16,0,
+241,1,1854,655,1,
+1855,660,1,1694,740,
+1,1732,2681,16,0,
+241,1,1965,2682,16,
+0,241,1,32,2683,
+16,0,241,1,1847,
+794,1,1862,677,1,
+43,2684,19,283,1,
+43,2685,5,18,1,
+1852,806,1,1853,649,
+1,1817,2686,16,0,
+281,1,1855,660,1,
+1856,748,1,1858,667,
+1,1637,710,1,1860,
+672,1,1862,677,1,
+1863,682,1,1385,769,
+1,1760,688,1,1467,
+729,1,1854,655,1,
+1694,740,1,2011,723,
+1,1847,794,1,2006,
+777,1,44,2687,19,
+597,1,44,2688,5,
+27,1,1852,806,1,
+1853,649,1,1817,760,
+1,1818,2689,16,0,
+595,1,1856,748,1,
+2005,801,1,1858,667,
+1,1637,710,1,1860,
+672,1,2009,716,1,
+1788,2690,16,0,595,
+1,1863,682,1,1385,
+769,1,2006,777,1,
+1611,2691,16,0,595,
+1,1760,688,1,2011,
+723,1,1467,729,1,
+1639,2692,16,0,595,
+1,1854,655,1,1855,
+660,1,1694,740,1,
+1732,2693,16,0,595,
+1,1965,2694,16,0,
+595,1,32,2695,16,
+0,595,1,1847,794,
+1,1862,677,1,45,
+2696,19,179,1,45,
+2697,5,28,1,1853,
+649,1,1854,655,1,
+1637,710,1,1856,748,
+1,1639,2698,16,0,
+177,1,1858,667,1,
+1860,672,1,1862,677,
+1,1863,682,1,1760,
+688,1,1666,2699,16,
+0,607,1,32,2700,
+16,0,177,1,2005,
+801,1,1788,2701,16,
+0,177,1,2009,716,
+1,2011,723,1,1467,
+729,1,1694,740,1,
+1855,660,1,2006,777,
+1,1965,2702,16,0,
+177,1,1817,760,1,
+1818,2703,16,0,177,
+1,1385,769,1,1611,
+2704,16,0,177,1,
+1732,2705,16,0,177,
+1,1847,794,1,1852,
+806,1,46,2706,19,
+423,1,46,2707,5,
+27,1,1852,806,1,
+1853,649,1,1817,760,
+1,1818,2708,16,0,
+421,1,1856,748,1,
+2005,801,1,1858,667,
+1,1637,710,1,1860,
+672,1,2009,716,1,
+1788,2709,16,0,421,
+1,1863,682,1,1385,
+769,1,2006,777,1,
+1611,2710,16,0,421,
+1,1760,688,1,2011,
+723,1,1467,729,1,
+1639,2711,16,0,421,
+1,1854,655,1,1855,
+660,1,1694,740,1,
+1732,2712,16,0,421,
+1,1965,2713,16,0,
+421,1,32,2714,16,
+0,421,1,1847,794,
+1,1862,677,1,47,
+2715,19,305,1,47,
+2716,5,19,1,0,
+2717,16,0,527,1,
+2258,2718,17,2719,15,
+2720,4,36,37,0,
+71,0,108,0,111,
+0,98,0,97,0,
+108,0,68,0,101,
+0,102,0,105,0,
+110,0,105,0,116,
+0,105,0,111,0,
+110,0,115,0,1,
+-1,1,5,2721,20,
+2722,4,38,71,0,
+108,0,111,0,98,
+0,97,0,108,0,
+68,0,101,0,102,
+0,105,0,110,0,
+105,0,116,0,105,
+0,111,0,110,0,
+115,0,95,0,51,
+0,1,141,1,3,
+1,2,1,1,2723,
+22,1,5,1,2259,
+2724,17,2725,15,2720,
+1,-1,1,5,2726,
+20,2727,4,38,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,68,0,101,0,
+102,0,105,0,110,
+0,105,0,116,0,
+105,0,111,0,110,
+0,115,0,95,0,
+49,0,1,139,1,
+3,1,2,1,1,
+2728,22,1,3,1,
+2226,2729,17,2730,15,
+2731,4,52,37,0,
+71,0,108,0,111,
+0,98,0,97,0,
+108,0,86,0,97,
+0,114,0,105,0,
+97,0,98,0,108,
+0,101,0,68,0,
+101,0,99,0,108,
+0,97,0,114,0,
+97,0,116,0,105,
+0,111,0,110,0,
+1,-1,1,5,2732,
+20,2733,4,54,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,86,0,97,0,
+114,0,105,0,97,
+0,98,0,108,0,
+101,0,68,0,101,
+0,99,0,108,0,
+97,0,114,0,97,
+0,116,0,105,0,
+111,0,110,0,95,
+0,50,0,1,144,
+1,3,1,5,1,
+4,2734,22,1,8,
+1,2006,777,1,2198,
+2735,17,2736,15,2737,
+4,50,37,0,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,68,0,101,
+0,102,0,105,0,
+110,0,105,0,116,
+0,105,0,111,0,
+110,0,1,-1,1,
+5,2738,20,2739,4,
+52,71,0,108,0,
+111,0,98,0,97,
+0,108,0,70,0,
+117,0,110,0,99,
+0,116,0,105,0,
+111,0,110,0,68,
+0,101,0,102,0,
+105,0,110,0,105,
+0,116,0,105,0,
+111,0,110,0,95,
+0,49,0,1,145,
+1,3,1,6,1,
+5,2740,22,1,9,
+1,2011,723,1,2013,
+2741,17,2742,15,2737,
+1,-1,1,5,2743,
+20,2744,4,52,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,68,0,101,
+0,102,0,105,0,
+110,0,105,0,116,
+0,105,0,111,0,
+110,0,95,0,50,
+0,1,146,1,3,
+1,7,1,6,2745,
+22,1,10,1,2237,
+2746,17,2747,15,2731,
+1,-1,1,5,2748,
+20,2749,4,54,71,
+0,108,0,111,0,
+98,0,97,0,108,
+0,86,0,97,0,
+114,0,105,0,97,
+0,98,0,108,0,
+101,0,68,0,101,
+0,99,0,108,0,
+97,0,114,0,97,
+0,116,0,105,0,
+111,0,110,0,95,
+0,49,0,1,143,
+1,3,1,3,1,
+2,2750,22,1,7,
+1,2238,2751,16,0,
+527,1,1849,2752,16,
+0,303,1,2177,642,
+1,2249,2753,16,0,
+527,1,2179,2754,16,
+0,527,1,2103,620,
+1,2182,632,1,2183,
+626,1,2257,2755,17,
+2756,15,2720,1,-1,
+1,5,2757,20,2758,
+4,38,71,0,108,
+0,111,0,98,0,
+97,0,108,0,68,
+0,101,0,102,0,
+105,0,110,0,105,
+0,116,0,105,0,
+111,0,110,0,115,
+0,95,0,50,0,
+1,140,1,3,1,
+3,1,2,2759,22,
+1,4,1,2256,2760,
+17,2761,15,2720,1,
+-1,1,5,2762,20,
+2763,4,38,71,0,
+108,0,111,0,98,
+0,97,0,108,0,
+68,0,101,0,102,
+0,105,0,110,0,
+105,0,116,0,105,
+0,111,0,110,0,
+115,0,95,0,52,
+0,1,142,1,3,
+1,3,1,2,2764,
+22,1,6,1,48,
+2765,19,353,1,48,
+2766,5,43,1,0,
+2767,16,0,399,1,
+1854,655,1,1855,660,
+1,1856,748,1,1694,
+740,1,1858,667,1,
+1860,672,1,1862,677,
+1,1863,682,1,1760,
+688,1,2198,2735,1,
+2179,2768,16,0,399,
+1,32,2769,16,0,
+351,1,2183,626,1,
+2257,2755,1,2005,801,
+1,1788,2770,16,0,
+351,1,2226,2729,1,
+2009,716,1,2011,723,
+1,1467,729,1,2013,
+2741,1,1639,2771,16,
+0,351,1,1637,710,
+1,2237,2746,1,2238,
+2772,16,0,399,1,
+1853,649,1,2006,777,
+1,1965,2773,16,0,
+351,1,2249,2774,16,
+0,399,1,2182,632,
+1,1817,760,1,1818,
+2775,16,0,351,1,
+2256,2760,1,1385,769,
+1,2258,2718,1,2259,
+2724,1,1611,2776,16,
+0,351,1,1732,2777,
+16,0,351,1,2103,
+620,1,1847,794,1,
+2177,642,1,1852,806,
+1,50,2778,19,375,
+1,50,2779,5,27,
+1,1852,806,1,1853,
+649,1,1817,760,1,
+1818,2780,16,0,373,
+1,1856,748,1,2005,
+801,1,1858,667,1,
+1637,710,1,1860,672,
+1,2009,716,1,1788,
+2781,16,0,373,1,
+1863,682,1,1385,769,
+1,2006,777,1,1611,
+2782,16,0,373,1,
+1760,688,1,2011,723,
+1,1467,729,1,1639,
+2783,16,0,373,1,
+1854,655,1,1855,660,
+1,1694,740,1,1732,
+2784,16,0,373,1,
+1965,2785,16,0,373,
+1,32,2786,16,0,
+373,1,1847,794,1,
+1862,677,1,51,2787,
+19,127,1,51,2788,
+5,45,1,0,2789,
+16,0,125,1,1854,
+655,1,1855,660,1,
+1856,748,1,1694,740,
+1,1858,667,1,1860,
+672,1,1862,677,1,
+10,2790,16,0,125,
+1,1385,769,1,1760,
+688,1,2198,2735,1,
+2238,2791,16,0,125,
+1,21,2792,16,0,
+125,1,32,2793,16,
+0,125,1,1514,2794,
+16,0,125,1,2005,
+801,1,1788,2795,16,
+0,125,1,2226,2729,
+1,2009,716,1,2011,
+723,1,1467,729,1,
+2013,2741,1,52,2796,
+16,0,125,1,1639,
+2797,16,0,125,1,
+1637,710,1,2237,2746,
+1,1584,2798,16,0,
+125,1,1853,649,1,
+2006,777,1,1965,2799,
+16,0,125,1,1863,
+682,1,1817,760,1,
+1818,2800,16,0,125,
+1,2185,2801,16,0,
+125,1,2256,2760,1,
+2257,2755,1,2258,2718,
+1,2259,2724,1,1611,
+2802,16,0,125,1,
+2052,2803,16,0,125,
+1,1732,2804,16,0,
+125,1,1469,2805,16,
+0,125,1,1847,794,
+1,1852,806,1,52,
+2806,19,124,1,52,
+2807,5,45,1,0,
+2808,16,0,122,1,
+1854,655,1,1855,660,
+1,1856,748,1,1694,
+740,1,1858,667,1,
+1860,672,1,1862,677,
+1,10,2809,16,0,
+122,1,1385,769,1,
+1760,688,1,2198,2735,
+1,2238,2810,16,0,
+122,1,21,2811,16,
+0,122,1,32,2812,
+16,0,122,1,1514,
+2813,16,0,122,1,
+2005,801,1,1788,2814,
+16,0,122,1,2226,
+2729,1,2009,716,1,
+2011,723,1,1467,729,
+1,2013,2741,1,52,
+2815,16,0,122,1,
+1639,2816,16,0,122,
+1,1637,710,1,2237,
+2746,1,1584,2817,16,
+0,122,1,1853,649,
+1,2006,777,1,1965,
+2818,16,0,122,1,
+1863,682,1,1817,760,
+1,1818,2819,16,0,
+122,1,2185,2820,16,
+0,122,1,2256,2760,
+1,2257,2755,1,2258,
+2718,1,2259,2724,1,
+1611,2821,16,0,122,
+1,2052,2822,16,0,
+122,1,1732,2823,16,
+0,122,1,1469,2824,
+16,0,122,1,1847,
+794,1,1852,806,1,
+53,2825,19,121,1,
+53,2826,5,45,1,
+0,2827,16,0,119,
+1,1854,655,1,1855,
+660,1,1856,748,1,
+1694,740,1,1858,667,
+1,1860,672,1,1862,
+677,1,10,2828,16,
+0,119,1,1385,769,
+1,1760,688,1,2198,
+2735,1,2238,2829,16,
+0,119,1,21,2830,
+16,0,119,1,32,
+2831,16,0,119,1,
+1514,2832,16,0,119,
+1,2005,801,1,1788,
+2833,16,0,119,1,
+2226,2729,1,2009,716,
+1,2011,723,1,1467,
+729,1,2013,2741,1,
+52,2834,16,0,119,
+1,1639,2835,16,0,
+119,1,1637,710,1,
+2237,2746,1,1584,2836,
+16,0,119,1,1853,
+649,1,2006,777,1,
+1965,2837,16,0,119,
+1,1863,682,1,1817,
+760,1,1818,2838,16,
+0,119,1,2185,2839,
+16,0,119,1,2256,
+2760,1,2257,2755,1,
+2258,2718,1,2259,2724,
+1,1611,2840,16,0,
+119,1,2052,2841,16,
+0,119,1,1732,2842,
+16,0,119,1,1469,
+2843,16,0,119,1,
+1847,794,1,1852,806,
+1,54,2844,19,118,
+1,54,2845,5,45,
+1,0,2846,16,0,
+116,1,1854,655,1,
+1855,660,1,1856,748,
+1,1694,740,1,1858,
+667,1,1860,672,1,
+1862,677,1,10,2847,
+16,0,116,1,1385,
+769,1,1760,688,1,
+2198,2735,1,2238,2848,
+16,0,116,1,21,
+2849,16,0,116,1,
+32,2850,16,0,116,
+1,1514,2851,16,0,
+116,1,2005,801,1,
+1788,2852,16,0,116,
+1,2226,2729,1,2009,
+716,1,2011,723,1,
+1467,729,1,2013,2741,
+1,52,2853,16,0,
+116,1,1639,2854,16,
+0,116,1,1637,710,
+1,2237,2746,1,1584,
+2855,16,0,116,1,
+1853,649,1,2006,777,
+1,1965,2856,16,0,
+116,1,1863,682,1,
+1817,760,1,1818,2857,
+16,0,116,1,2185,
+2858,16,0,116,1,
+2256,2760,1,2257,2755,
+1,2258,2718,1,2259,
+2724,1,1611,2859,16,
+0,116,1,2052,2860,
+16,0,116,1,1732,
+2861,16,0,116,1,
+1469,2862,16,0,116,
+1,1847,794,1,1852,
+806,1,55,2863,19,
+115,1,55,2864,5,
+45,1,0,2865,16,
+0,113,1,1854,655,
+1,1855,660,1,1856,
+748,1,1694,740,1,
+1858,667,1,1860,672,
+1,1862,677,1,10,
+2866,16,0,113,1,
+1385,769,1,1760,688,
+1,2198,2735,1,2238,
+2867,16,0,113,1,
+21,2868,16,0,113,
+1,32,2869,16,0,
+113,1,1514,2870,16,
+0,113,1,2005,801,
+1,1788,2871,16,0,
+113,1,2226,2729,1,
+2009,716,1,2011,723,
+1,1467,729,1,2013,
+2741,1,52,2872,16,
+0,113,1,1639,2873,
+16,0,113,1,1637,
+710,1,2237,2746,1,
+1584,2874,16,0,113,
+1,1853,649,1,2006,
+777,1,1965,2875,16,
+0,113,1,1863,682,
+1,1817,760,1,1818,
+2876,16,0,113,1,
+2185,2877,16,0,113,
+1,2256,2760,1,2257,
+2755,1,2258,2718,1,
+2259,2724,1,1611,2878,
+16,0,113,1,2052,
+2879,16,0,113,1,
+1732,2880,16,0,113,
+1,1469,2881,16,0,
+113,1,1847,794,1,
+1852,806,1,56,2882,
+19,112,1,56,2883,
+5,45,1,0,2884,
+16,0,110,1,1854,
+655,1,1855,660,1,
+1856,748,1,1694,740,
+1,1858,667,1,1860,
+672,1,1862,677,1,
+10,2885,16,0,110,
+1,1385,769,1,1760,
+688,1,2198,2735,1,
+2238,2886,16,0,110,
+1,21,2887,16,0,
+110,1,32,2888,16,
+0,110,1,1514,2889,
+16,0,110,1,2005,
+801,1,1788,2890,16,
+0,110,1,2226,2729,
+1,2009,716,1,2011,
+723,1,1467,729,1,
+2013,2741,1,52,2891,
+16,0,110,1,1639,
+2892,16,0,110,1,
+1637,710,1,2237,2746,
+1,1584,2893,16,0,
+110,1,1853,649,1,
+2006,777,1,1965,2894,
+16,0,110,1,1863,
+682,1,1817,760,1,
+1818,2895,16,0,110,
+1,2185,2896,16,0,
+110,1,2256,2760,1,
+2257,2755,1,2258,2718,
+1,2259,2724,1,1611,
+2897,16,0,110,1,
+2052,2898,16,0,110,
+1,1732,2899,16,0,
+110,1,1469,2900,16,
+0,110,1,1847,794,
+1,1852,806,1,57,
+2901,19,109,1,57,
+2902,5,45,1,0,
+2903,16,0,107,1,
+1854,655,1,1855,660,
+1,1856,748,1,1694,
+740,1,1858,667,1,
+1860,672,1,1862,677,
+1,10,2904,16,0,
+107,1,1385,769,1,
+1760,688,1,2198,2735,
+1,2238,2905,16,0,
+107,1,21,2906,16,
+0,107,1,32,2907,
+16,0,107,1,1514,
+2908,16,0,107,1,
+2005,801,1,1788,2909,
+16,0,107,1,2226,
+2729,1,2009,716,1,
+2011,723,1,1467,729,
+1,2013,2741,1,52,
+2910,16,0,107,1,
+1639,2911,16,0,107,
+1,1637,710,1,2237,
+2746,1,1584,2912,16,
+0,107,1,1853,649,
+1,2006,777,1,1965,
+2913,16,0,107,1,
+1863,682,1,1817,760,
+1,1818,2914,16,0,
+107,1,2185,2915,16,
+0,107,1,2256,2760,
+1,2257,2755,1,2258,
+2718,1,2259,2724,1,
+1611,2916,16,0,107,
+1,2052,2917,16,0,
+107,1,1732,2918,16,
+0,107,1,1469,2919,
+16,0,107,1,1847,
+794,1,1852,806,1,
+58,2920,19,237,1,
+58,2921,5,9,1,
+2006,777,1,2011,723,
+1,2017,2922,16,0,
+235,1,2065,1364,1,
+2067,2923,16,0,235,
+1,2141,2924,16,0,
+235,1,2102,1351,1,
+2104,1359,1,2106,2925,
+16,0,235,1,59,
+2926,19,589,1,59,
+2927,5,9,1,2006,
+777,1,2011,723,1,
+2017,2928,16,0,587,
+1,2065,1364,1,2067,
+2929,16,0,587,1,
+2141,2930,16,0,587,
+1,2102,1351,1,2104,
+1359,1,2106,2931,16,
+0,587,1,60,2932,
+19,586,1,60,2933,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+2934,16,0,584,1,
+2065,1364,1,2067,2935,
+16,0,584,1,2141,
+2936,16,0,584,1,
+2102,1351,1,2104,1359,
+1,2106,2937,16,0,
+584,1,61,2938,19,
+546,1,61,2939,5,
+9,1,2006,777,1,
+2011,723,1,2017,2940,
+16,0,544,1,2065,
+1364,1,2067,2941,16,
+0,544,1,2141,2942,
+16,0,544,1,2102,
+1351,1,2104,1359,1,
+2106,2943,16,0,544,
+1,62,2944,19,543,
+1,62,2945,5,9,
+1,2006,777,1,2011,
+723,1,2017,2946,16,
+0,541,1,2065,1364,
+1,2067,2947,16,0,
+541,1,2141,2948,16,
+0,541,1,2102,1351,
+1,2104,1359,1,2106,
+2949,16,0,541,1,
+63,2950,19,540,1,
+63,2951,5,9,1,
+2006,777,1,2011,723,
+1,2017,2952,16,0,
+538,1,2065,1364,1,
+2067,2953,16,0,538,
+1,2141,2954,16,0,
+538,1,2102,1351,1,
+2104,1359,1,2106,2955,
+16,0,538,1,64,
+2956,19,537,1,64,
+2957,5,9,1,2006,
+777,1,2011,723,1,
+2017,2958,16,0,535,
+1,2065,1364,1,2067,
+2959,16,0,535,1,
+2141,2960,16,0,535,
+1,2102,1351,1,2104,
+1359,1,2106,2961,16,
+0,535,1,65,2962,
+19,534,1,65,2963,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+2964,16,0,532,1,
+2065,1364,1,2067,2965,
+16,0,532,1,2141,
+2966,16,0,532,1,
+2102,1351,1,2104,1359,
+1,2106,2967,16,0,
+532,1,66,2968,19,
+531,1,66,2969,5,
+9,1,2006,777,1,
+2011,723,1,2017,2970,
+16,0,529,1,2065,
+1364,1,2067,2971,16,
+0,529,1,2141,2972,
+16,0,529,1,2102,
+1351,1,2104,1359,1,
+2106,2973,16,0,529,
+1,67,2974,19,467,
+1,67,2975,5,9,
+1,2006,777,1,2011,
+723,1,2017,2976,16,
+0,465,1,2065,1364,
+1,2067,2977,16,0,
+465,1,2141,2978,16,
+0,465,1,2102,1351,
+1,2104,1359,1,2106,
+2979,16,0,465,1,
+68,2980,19,464,1,
+68,2981,5,9,1,
+2006,777,1,2011,723,
+1,2017,2982,16,0,
+462,1,2065,1364,1,
+2067,2983,16,0,462,
+1,2141,2984,16,0,
+462,1,2102,1351,1,
+2104,1359,1,2106,2985,
+16,0,462,1,69,
+2986,19,526,1,69,
+2987,5,9,1,2006,
+777,1,2011,723,1,
+2017,2988,16,0,524,
+1,2065,1364,1,2067,
+2989,16,0,524,1,
+2141,2990,16,0,524,
+1,2102,1351,1,2104,
+1359,1,2106,2991,16,
+0,524,1,70,2992,
+19,460,1,70,2993,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+2994,16,0,458,1,
+2065,1364,1,2067,2995,
+16,0,458,1,2141,
+2996,16,0,458,1,
+2102,1351,1,2104,1359,
+1,2106,2997,16,0,
+458,1,71,2998,19,
+457,1,71,2999,5,
+9,1,2006,777,1,
+2011,723,1,2017,3000,
+16,0,455,1,2065,
+1364,1,2067,3001,16,
+0,455,1,2141,3002,
+16,0,455,1,2102,
+1351,1,2104,1359,1,
+2106,3003,16,0,455,
+1,72,3004,19,454,
+1,72,3005,5,9,
+1,2006,777,1,2011,
+723,1,2017,3006,16,
+0,452,1,2065,1364,
+1,2067,3007,16,0,
+452,1,2141,3008,16,
+0,452,1,2102,1351,
+1,2104,1359,1,2106,
+3009,16,0,452,1,
+73,3010,19,451,1,
+73,3011,5,9,1,
+2006,777,1,2011,723,
+1,2017,3012,16,0,
+449,1,2065,1364,1,
+2067,3013,16,0,449,
+1,2141,3014,16,0,
+449,1,2102,1351,1,
+2104,1359,1,2106,3015,
+16,0,449,1,74,
+3016,19,448,1,74,
+3017,5,9,1,2006,
+777,1,2011,723,1,
+2017,3018,16,0,446,
+1,2065,1364,1,2067,
+3019,16,0,446,1,
+2141,3020,16,0,446,
+1,2102,1351,1,2104,
+1359,1,2106,3021,16,
+0,446,1,75,3022,
+19,445,1,75,3023,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+3024,16,0,443,1,
+2065,1364,1,2067,3025,
+16,0,443,1,2141,
+3026,16,0,443,1,
+2102,1351,1,2104,1359,
+1,2106,3027,16,0,
+443,1,76,3028,19,
+442,1,76,3029,5,
+9,1,2006,777,1,
+2011,723,1,2017,3030,
+16,0,440,1,2065,
+1364,1,2067,3031,16,
+0,440,1,2141,3032,
+16,0,440,1,2102,
+1351,1,2104,1359,1,
+2106,3033,16,0,440,
+1,77,3034,19,439,
+1,77,3035,5,9,
+1,2006,777,1,2011,
+723,1,2017,3036,16,
+0,437,1,2065,1364,
+1,2067,3037,16,0,
+437,1,2141,3038,16,
+0,437,1,2102,1351,
+1,2104,1359,1,2106,
+3039,16,0,437,1,
+78,3040,19,436,1,
+78,3041,5,9,1,
+2006,777,1,2011,723,
+1,2017,3042,16,0,
+434,1,2065,1364,1,
+2067,3043,16,0,434,
+1,2141,3044,16,0,
+434,1,2102,1351,1,
+2104,1359,1,2106,3045,
+16,0,434,1,79,
+3046,19,433,1,79,
+3047,5,9,1,2006,
+777,1,2011,723,1,
+2017,3048,16,0,431,
+1,2065,1364,1,2067,
+3049,16,0,431,1,
+2141,3050,16,0,431,
+1,2102,1351,1,2104,
+1359,1,2106,3051,16,
+0,431,1,80,3052,
+19,430,1,80,3053,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+3054,16,0,428,1,
+2065,1364,1,2067,3055,
+16,0,428,1,2141,
+3056,16,0,428,1,
+2102,1351,1,2104,1359,
+1,2106,3057,16,0,
+428,1,81,3058,19,
+427,1,81,3059,5,
+9,1,2006,777,1,
+2011,723,1,2017,3060,
+16,0,425,1,2065,
+1364,1,2067,3061,16,
+0,425,1,2141,3062,
+16,0,425,1,2102,
+1351,1,2104,1359,1,
+2106,3063,16,0,425,
+1,82,3064,19,517,
+1,82,3065,5,9,
+1,2006,777,1,2011,
+723,1,2017,3066,16,
+0,515,1,2065,1364,
+1,2067,3067,16,0,
+515,1,2141,3068,16,
+0,515,1,2102,1351,
+1,2104,1359,1,2106,
+3069,16,0,515,1,
+83,3070,19,514,1,
+83,3071,5,9,1,
+2006,777,1,2011,723,
+1,2017,3072,16,0,
+512,1,2065,1364,1,
+2067,3073,16,0,512,
+1,2141,3074,16,0,
+512,1,2102,1351,1,
+2104,1359,1,2106,3075,
+16,0,512,1,84,
+3076,19,511,1,84,
+3077,5,9,1,2006,
+777,1,2011,723,1,
+2017,3078,16,0,509,
+1,2065,1364,1,2067,
+3079,16,0,509,1,
+2141,3080,16,0,509,
+1,2102,1351,1,2104,
+1359,1,2106,3081,16,
+0,509,1,85,3082,
+19,508,1,85,3083,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+3084,16,0,506,1,
+2065,1364,1,2067,3085,
+16,0,506,1,2141,
+3086,16,0,506,1,
+2102,1351,1,2104,1359,
+1,2106,3087,16,0,
+506,1,86,3088,19,
+418,1,86,3089,5,
+9,1,2006,777,1,
+2011,723,1,2017,3090,
+16,0,416,1,2065,
+1364,1,2067,3091,16,
+0,416,1,2141,3092,
+16,0,416,1,2102,
+1351,1,2104,1359,1,
+2106,3093,16,0,416,
+1,87,3094,19,415,
+1,87,3095,5,9,
+1,2006,777,1,2011,
+723,1,2017,3096,16,
+0,413,1,2065,1364,
+1,2067,3097,16,0,
+413,1,2141,3098,16,
+0,413,1,2102,1351,
+1,2104,1359,1,2106,
+3099,16,0,413,1,
+88,3100,19,412,1,
+88,3101,5,9,1,
+2006,777,1,2011,723,
+1,2017,3102,16,0,
+410,1,2065,1364,1,
+2067,3103,16,0,410,
+1,2141,3104,16,0,
+410,1,2102,1351,1,
+2104,1359,1,2106,3105,
+16,0,410,1,89,
+3106,19,406,1,89,
+3107,5,9,1,2006,
+777,1,2011,723,1,
+2017,3108,16,0,404,
+1,2065,1364,1,2067,
+3109,16,0,404,1,
+2141,3110,16,0,404,
+1,2102,1351,1,2104,
+1359,1,2106,3111,16,
+0,404,1,90,3112,
+19,409,1,90,3113,
+5,9,1,2006,777,
+1,2011,723,1,2017,
+3114,16,0,407,1,
+2065,1364,1,2067,3115,
+16,0,407,1,2141,
+3116,16,0,407,1,
+2102,1351,1,2104,1359,
+1,2106,3117,16,0,
+407,1,91,3118,19,
+133,1,91,3119,5,
+105,1,0,3120,16,
+0,160,1,1,1668,
+1,2,1674,1,3,
+1679,1,4,1684,1,
+5,1689,1,6,1694,
+1,7,1699,1,8,
+3121,16,0,131,1,
+256,3122,16,0,195,
+1,18,3123,16,0,
+144,1,504,3124,16,
+0,195,1,277,3125,
+16,0,195,1,1788,
+3126,16,0,187,1,
+32,3127,16,0,187,
+1,1292,3128,16,0,
+195,1,2226,2729,1,
+41,3129,16,0,195,
+1,43,3130,16,0,
+195,1,46,3131,16,
+0,199,1,299,3132,
+16,0,195,1,52,
+3133,16,0,195,1,
+1559,3134,16,0,195,
+1,1514,3135,16,0,
+187,1,1760,688,1,
+1818,3136,16,0,187,
+1,62,3137,16,0,
+212,1,1763,3138,16,
+0,195,1,2009,716,
+1,2011,723,1,2256,
+2760,1,2015,3139,16,
+0,400,1,2259,2724,
+1,65,3140,16,0,
+214,1,71,3141,16,
+0,195,1,76,3142,
+16,0,195,1,1584,
+3143,16,0,187,1,
+79,3144,16,0,195,
+1,322,3145,16,0,
+195,1,1257,3146,16,
+0,195,1,85,3147,
+16,0,195,1,89,
+3148,16,0,195,1,
+1847,794,1,1849,3149,
+16,0,306,1,346,
+3150,16,0,195,1,
+1853,649,1,1854,655,
+1,1855,660,1,1856,
+748,1,1858,667,1,
+97,3151,16,0,195,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+102,3152,16,0,195,
+1,1115,3153,16,0,
+195,1,112,3154,16,
+0,195,1,1327,3155,
+16,0,195,1,1817,
+760,1,372,3156,16,
+0,472,1,374,3157,
+16,0,474,1,124,
+3158,16,0,195,1,
+376,3159,16,0,476,
+1,2006,777,1,378,
+3160,16,0,478,1,
+1385,769,1,1637,710,
+1,2013,2741,1,137,
+3161,16,0,195,1,
+1396,3162,16,0,195,
+1,381,3163,16,0,
+195,1,397,3164,16,
+0,195,1,384,3165,
+16,0,195,1,1152,
+3166,16,0,195,1,
+151,3167,16,0,195,
+1,1852,806,1,1611,
+3168,16,0,187,1,
+1668,3169,16,0,195,
+1,166,3170,16,0,
+195,1,422,3171,16,
+0,195,1,1432,3172,
+16,0,195,1,1111,
+3173,16,0,609,1,
+182,3174,16,0,195,
+1,1187,3175,16,0,
+195,1,1639,3176,16,
+0,187,1,1694,740,
+1,2198,2735,1,2201,
+3177,16,0,195,1,
+447,3178,16,0,195,
+1,199,3179,16,0,
+195,1,1707,3180,16,
+0,195,1,1965,3181,
+16,0,187,1,1467,
+729,1,1469,3182,16,
+0,187,1,217,3183,
+16,0,195,1,1222,
+3184,16,0,195,1,
+1732,3185,16,0,187,
+1,463,3186,16,0,
+195,1,2237,2746,1,
+2238,3187,16,0,160,
+1,236,3188,16,0,
+195,1,488,3189,16,
+0,195,1,2005,801,
+1,2257,2755,1,2258,
+2718,1,92,3190,19,
+571,1,92,3191,5,
+77,1,1853,649,1,
+1854,655,1,1855,660,
+1,112,3192,16,0,
+569,1,384,3193,16,
+0,569,1,1858,667,
+1,1860,672,1,1862,
+677,1,1863,682,1,
+447,3194,16,0,569,
+1,1611,3195,16,0,
+569,1,124,3196,16,
+0,569,1,1760,688,
+1,236,3197,16,0,
+569,1,1763,3198,16,
+0,569,1,2201,3199,
+16,0,569,1,1222,
+3200,16,0,569,1,
+1115,3201,16,0,569,
+1,1187,3202,16,0,
+569,1,137,3203,16,
+0,569,1,217,3204,
+16,0,569,1,32,
+3205,16,0,569,1,
+1668,3206,16,0,569,
+1,1514,3207,16,0,
+569,1,256,3208,16,
+0,569,1,41,3209,
+16,0,569,1,151,
+3210,16,0,569,1,
+43,3211,16,0,569,
+1,1732,3212,16,0,
+569,1,1637,710,1,
+2009,716,1,1639,3213,
+16,0,569,1,2011,
+723,1,1467,729,1,
+1584,3214,16,0,569,
+1,52,3215,16,0,
+569,1,381,3216,16,
+0,569,1,346,3217,
+16,0,569,1,166,
+3218,16,0,569,1,
+1257,3219,16,0,569,
+1,1694,740,1,1432,
+3220,16,0,569,1,
+1152,3221,16,0,569,
+1,1856,748,1,62,
+3222,16,0,569,1,
+1965,3223,16,0,569,
+1,504,3224,16,0,
+569,1,277,3225,16,
+0,569,1,397,3226,
+16,0,569,1,71,
+3227,16,0,569,1,
+1707,3228,16,0,569,
+1,1817,760,1,1818,
+3229,16,0,569,1,
+463,3230,16,0,569,
+1,76,3231,16,0,
+569,1,1385,769,1,
+79,3232,16,0,569,
+1,182,3233,16,0,
+569,1,299,3234,16,
+0,569,1,2006,777,
+1,1559,3235,16,0,
+569,1,85,3236,16,
+0,569,1,488,3237,
+16,0,569,1,1396,
+3238,16,0,569,1,
+89,3239,16,0,569,
+1,199,3240,16,0,
+569,1,1292,3241,16,
+0,569,1,422,3242,
+16,0,569,1,97,
+3243,16,0,569,1,
+1469,3244,16,0,569,
+1,1788,3245,16,0,
+569,1,102,3246,16,
+0,569,1,1847,794,
+1,322,3247,16,0,
+569,1,1327,3248,16,
+0,569,1,2005,801,
+1,1852,806,1,93,
+3249,19,568,1,93,
+3250,5,77,1,1853,
+649,1,1854,655,1,
+1855,660,1,112,3251,
+16,0,566,1,384,
+3252,16,0,566,1,
+1858,667,1,1860,672,
+1,1862,677,1,1863,
+682,1,447,3253,16,
+0,566,1,1611,3254,
+16,0,566,1,124,
+3255,16,0,566,1,
+1760,688,1,236,3256,
+16,0,566,1,1763,
+3257,16,0,566,1,
+2201,3258,16,0,566,
+1,1222,3259,16,0,
+566,1,1115,3260,16,
+0,566,1,1187,3261,
+16,0,566,1,137,
+3262,16,0,566,1,
+217,3263,16,0,566,
+1,32,3264,16,0,
+566,1,1668,3265,16,
+0,566,1,1514,3266,
+16,0,566,1,256,
+3267,16,0,566,1,
+41,3268,16,0,566,
+1,151,3269,16,0,
+566,1,43,3270,16,
+0,566,1,1732,3271,
+16,0,566,1,1637,
+710,1,2009,716,1,
+1639,3272,16,0,566,
+1,2011,723,1,1467,
+729,1,1584,3273,16,
+0,566,1,52,3274,
+16,0,566,1,381,
+3275,16,0,566,1,
+346,3276,16,0,566,
+1,166,3277,16,0,
+566,1,1257,3278,16,
+0,566,1,1694,740,
+1,1432,3279,16,0,
+566,1,1152,3280,16,
+0,566,1,1856,748,
+1,62,3281,16,0,
+566,1,1965,3282,16,
+0,566,1,504,3283,
+16,0,566,1,277,
+3284,16,0,566,1,
+397,3285,16,0,566,
+1,71,3286,16,0,
+566,1,1707,3287,16,
+0,566,1,1817,760,
+1,1818,3288,16,0,
+566,1,463,3289,16,
+0,566,1,76,3290,
+16,0,566,1,1385,
+769,1,79,3291,16,
+0,566,1,182,3292,
+16,0,566,1,299,
+3293,16,0,566,1,
+2006,777,1,1559,3294,
+16,0,566,1,85,
+3295,16,0,566,1,
+488,3296,16,0,566,
+1,1396,3297,16,0,
+566,1,89,3298,16,
+0,566,1,199,3299,
+16,0,566,1,1292,
+3300,16,0,566,1,
+422,3301,16,0,566,
+1,97,3302,16,0,
+566,1,1469,3303,16,
+0,566,1,1788,3304,
+16,0,566,1,102,
+3305,16,0,566,1,
+1847,794,1,322,3306,
+16,0,566,1,1327,
+3307,16,0,566,1,
+2005,801,1,1852,806,
+1,94,3308,19,565,
+1,94,3309,5,77,
+1,1853,649,1,1854,
+655,1,1855,660,1,
+112,3310,16,0,563,
+1,384,3311,16,0,
+563,1,1858,667,1,
+1860,672,1,1862,677,
+1,1863,682,1,447,
+3312,16,0,563,1,
+1611,3313,16,0,563,
+1,124,3314,16,0,
+563,1,1760,688,1,
+236,3315,16,0,563,
+1,1763,3316,16,0,
+563,1,2201,3317,16,
+0,563,1,1222,3318,
+16,0,563,1,1115,
+3319,16,0,563,1,
+1187,3320,16,0,563,
+1,137,3321,16,0,
+563,1,217,3322,16,
+0,563,1,32,3323,
+16,0,563,1,1668,
+3324,16,0,563,1,
+1514,3325,16,0,563,
+1,256,3326,16,0,
+563,1,41,3327,16,
+0,563,1,151,3328,
+16,0,563,1,43,
+3329,16,0,563,1,
+1732,3330,16,0,563,
+1,1637,710,1,2009,
+716,1,1639,3331,16,
+0,563,1,2011,723,
+1,1467,729,1,1584,
+3332,16,0,563,1,
+52,3333,16,0,563,
+1,381,3334,16,0,
+563,1,346,3335,16,
+0,563,1,166,3336,
+16,0,563,1,1257,
+3337,16,0,563,1,
+1694,740,1,1432,3338,
+16,0,563,1,1152,
+3339,16,0,563,1,
+1856,748,1,62,3340,
+16,0,563,1,1965,
+3341,16,0,563,1,
+504,3342,16,0,563,
+1,277,3343,16,0,
+563,1,397,3344,16,
+0,563,1,71,3345,
+16,0,563,1,1707,
+3346,16,0,563,1,
+1817,760,1,1818,3347,
+16,0,563,1,463,
+3348,16,0,563,1,
+76,3349,16,0,563,
+1,1385,769,1,79,
+3350,16,0,563,1,
+182,3351,16,0,563,
+1,299,3352,16,0,
+563,1,2006,777,1,
+1559,3353,16,0,563,
+1,85,3354,16,0,
+563,1,488,3355,16,
+0,563,1,1396,3356,
+16,0,563,1,89,
+3357,16,0,563,1,
+199,3358,16,0,563,
+1,1292,3359,16,0,
+563,1,422,3360,16,
+0,563,1,97,3361,
+16,0,563,1,1469,
+3362,16,0,563,1,
+1788,3363,16,0,563,
+1,102,3364,16,0,
+563,1,1847,794,1,
+322,3365,16,0,563,
+1,1327,3366,16,0,
+563,1,2005,801,1,
+1852,806,1,95,3367,
+19,103,1,95,3368,
+5,1,1,0,3369,
+16,0,104,1,96,
+3370,19,582,1,96,
+3371,5,1,1,0,
+3372,16,0,580,1,
+97,3373,19,166,1,
+97,3374,5,2,1,
+0,3375,16,0,253,
+1,2238,3376,16,0,
+164,1,98,3377,19,
+163,1,98,3378,5,
+2,1,0,3379,16,
+0,355,1,2238,3380,
+16,0,161,1,99,
+3381,19,293,1,99,
+3382,5,2,1,0,
+3383,16,0,583,1,
+2238,3384,16,0,291,
+1,100,3385,19,159,
+1,100,3386,5,4,
+1,0,3387,16,0,
+591,1,2179,3388,16,
+0,157,1,2249,3389,
+16,0,157,1,2238,
+3390,16,0,591,1,
+101,3391,19,497,1,
+101,3392,5,2,1,
+2017,3393,16,0,495,
+1,2106,3394,16,0,
+604,1,102,3395,19,
+522,1,102,3396,5,
+4,1,2017,3397,16,
+0,577,1,2106,3398,
+16,0,577,1,2141,
+3399,16,0,520,1,
+2067,3400,16,0,520,
+1,103,3401,19,147,
+1,103,3402,5,3,
+1,2052,3403,16,0,
+492,1,2185,3404,16,
+0,255,1,10,3405,
+16,0,145,1,104,
+3406,19,169,1,104,
+3407,5,16,1,0,
+3408,16,0,599,1,
+2185,3409,16,0,398,
+1,1965,3410,16,0,
+385,1,1818,3411,16,
+0,385,1,1584,3412,
+16,0,498,1,10,
+3413,16,0,398,1,
+1639,3414,16,0,385,
+1,1788,3415,16,0,
+385,1,2052,3416,16,
+0,398,1,2238,3417,
+16,0,599,1,1611,
+3418,16,0,385,1,
+21,3419,16,0,167,
+1,1469,3420,16,0,
+498,1,1732,3421,16,
+0,385,1,32,3422,
+16,0,385,1,1514,
+3423,16,0,498,1,
+105,3424,19,130,1,
+105,3425,5,17,1,
+0,3426,16,0,128,
+1,2185,3427,16,0,
+143,1,1965,3428,16,
+0,143,1,1818,3429,
+16,0,143,1,1584,
+3430,16,0,143,1,
+10,3431,16,0,143,
+1,1639,3432,16,0,
+143,1,1788,3433,16,
+0,143,1,52,3434,
+16,0,210,1,2052,
+3435,16,0,143,1,
+2238,3436,16,0,128,
+1,1611,3437,16,0,
+143,1,21,3438,16,
+0,143,1,1469,3439,
+16,0,143,1,1732,
+3440,16,0,143,1,
+32,3441,16,0,143,
+1,1514,3442,16,0,
+143,1,106,3443,19,
+552,1,106,3444,5,
+4,1,2017,3445,16,
+0,550,1,2106,3446,
+16,0,550,1,2141,
+3447,16,0,550,1,
+2067,3448,16,0,550,
+1,107,3449,19,309,
+1,107,3450,5,10,
+1,1965,3451,16,0,
+307,1,1818,3452,16,
+0,307,1,1639,3453,
+16,0,307,1,1788,
+3454,16,0,307,1,
+2196,3455,16,0,598,
+1,1611,3456,16,0,
+307,1,2063,3457,16,
+0,494,1,1732,3458,
+16,0,307,1,31,
+3459,16,0,397,1,
+32,3460,16,0,307,
+1,108,3461,19,380,
+1,108,3462,5,1,
+1,32,3463,16,0,
+378,1,109,3464,19,
+280,1,109,3465,5,
+7,1,1639,3466,16,
+0,606,1,1818,3467,
+16,0,299,1,1732,
+3468,16,0,339,1,
+1788,3469,16,0,278,
+1,1965,3470,16,0,
+391,1,1611,3471,16,
+0,594,1,32,3472,
+16,0,395,1,110,
+3473,19,361,1,110,
+3474,5,10,1,1965,
+3475,16,0,359,1,
+1818,3476,16,0,359,
+1,1639,3477,16,0,
+359,1,1788,3478,16,
+0,359,1,1732,3479,
+16,0,359,1,1611,
+3480,16,0,359,1,
+1469,3481,16,0,367,
+1,1584,3482,16,0,
+367,1,32,3483,16,
+0,359,1,1514,3484,
+16,0,547,1,111,
+3485,19,358,1,111,
+3486,5,7,1,1639,
+3487,16,0,356,1,
+1818,3488,16,0,356,
+1,1732,3489,16,0,
+356,1,1788,3490,16,
+0,356,1,1965,3491,
+16,0,356,1,1611,
+3492,16,0,356,1,
+32,3493,16,0,356,
+1,112,3494,19,324,
+1,112,3495,5,7,
+1,1639,3496,16,0,
+322,1,1818,3497,16,
+0,322,1,1732,3498,
+16,0,322,1,1788,
+3499,16,0,322,1,
+1965,3500,16,0,322,
+1,1611,3501,16,0,
+322,1,32,3502,16,
+0,322,1,113,3503,
+19,321,1,113,3504,
+5,7,1,1639,3505,
+16,0,319,1,1818,
+3506,16,0,319,1,
+1732,3507,16,0,319,
+1,1788,3508,16,0,
+319,1,1965,3509,16,
+0,319,1,1611,3510,
+16,0,319,1,32,
+3511,16,0,319,1,
+114,3512,19,318,1,
+114,3513,5,7,1,
+1639,3514,16,0,316,
+1,1818,3515,16,0,
+316,1,1732,3516,16,
+0,316,1,1788,3517,
+16,0,316,1,1965,
+3518,16,0,316,1,
+1611,3519,16,0,316,
+1,32,3520,16,0,
+316,1,115,3521,19,
+315,1,115,3522,5,
+7,1,1639,3523,16,
+0,313,1,1818,3524,
+16,0,313,1,1732,
+3525,16,0,313,1,
+1788,3526,16,0,313,
+1,1965,3527,16,0,
+313,1,1611,3528,16,
+0,313,1,32,3529,
+16,0,313,1,116,
+3530,19,312,1,116,
+3531,5,7,1,1639,
+3532,16,0,310,1,
+1818,3533,16,0,310,
+1,1732,3534,16,0,
+310,1,1788,3535,16,
+0,310,1,1965,3536,
+16,0,310,1,1611,
+3537,16,0,310,1,
+32,3538,16,0,310,
+1,117,3539,19,501,
+1,117,3540,5,2,
+1,1584,3541,16,0,
+575,1,1469,3542,16,
+0,499,1,118,3543,
+19,470,1,118,3544,
+5,57,1,1584,3545,
+16,0,468,1,1639,
+3546,16,0,468,1,
+112,3547,16,0,468,
+1,384,3548,16,0,
+468,1,447,3549,16,
+0,468,1,124,3550,
+16,0,468,1,236,
+3551,16,0,468,1,
+1763,3552,16,0,468,
+1,2201,3553,16,0,
+468,1,1222,3554,16,
+0,468,1,1115,3555,
+16,0,468,1,1187,
+3556,16,0,468,1,
+137,3557,16,0,468,
+1,346,3558,16,0,
+468,1,32,3559,16,
+0,468,1,1668,3560,
+16,0,468,1,1514,
+3561,16,0,468,1,
+256,3562,16,0,468,
+1,41,3563,16,0,
+468,1,151,3564,16,
+0,468,1,43,3565,
+16,0,468,1,1788,
+3566,16,0,468,1,
+52,3567,16,0,468,
+1,381,3568,16,0,
+468,1,166,3569,16,
+0,468,1,1257,3570,
+16,0,468,1,277,
+3571,16,0,468,1,
+1432,3572,16,0,468,
+1,1152,3573,16,0,
+468,1,62,3574,16,
+0,548,1,1965,3575,
+16,0,468,1,504,
+3576,16,0,468,1,
+488,3577,16,0,468,
+1,397,3578,16,0,
+468,1,71,3579,16,
+0,468,1,1707,3580,
+16,0,468,1,182,
+3581,16,0,468,1,
+1818,3582,16,0,468,
+1,463,3583,16,0,
+468,1,76,3584,16,
+0,468,1,79,3585,
+16,0,468,1,1611,
+3586,16,0,468,1,
+299,3587,16,0,468,
+1,1559,3588,16,0,
+468,1,85,3589,16,
+0,468,1,1396,3590,
+16,0,468,1,89,
+3591,16,0,468,1,
+199,3592,16,0,468,
+1,1292,3593,16,0,
+468,1,422,3594,16,
+0,468,1,97,3595,
+16,0,468,1,1469,
+3596,16,0,468,1,
+1732,3597,16,0,468,
+1,102,3598,16,0,
+468,1,322,3599,16,
+0,468,1,1327,3600,
+16,0,468,1,217,
+3601,16,0,468,1,
+119,3602,19,487,1,
+119,3603,5,2,1,
+381,3604,16,0,485,
+1,41,3605,16,0,
+601,1,120,3606,19,
+142,1,120,3607,5,
+3,1,381,3608,16,
+0,140,1,41,3609,
+16,0,140,1,384,
+3610,16,0,490,1,
+121,3611,19,3612,4,
+36,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,65,0,114,0,
+103,0,117,0,109,
+0,101,0,110,0,
+116,0,1,121,3607,
+1,122,3613,19,481,
+1,122,3614,5,57,
+1,1584,3615,16,0,
+479,1,1639,3616,16,
+0,479,1,112,3617,
+16,0,479,1,384,
+3618,16,0,479,1,
+447,3619,16,0,479,
+1,124,3620,16,0,
+479,1,236,3621,16,
+0,479,1,1763,3622,
+16,0,479,1,2201,
+3623,16,0,479,1,
+1222,3624,16,0,479,
+1,1115,3625,16,0,
+479,1,1187,3626,16,
+0,479,1,137,3627,
+16,0,479,1,346,
+3628,16,0,479,1,
+32,3629,16,0,479,
+1,1668,3630,16,0,
+479,1,1514,3631,16,
+0,479,1,256,3632,
+16,0,479,1,41,
+3633,16,0,479,1,
+151,3634,16,0,479,
+1,43,3635,16,0,
+479,1,1788,3636,16,
+0,479,1,52,3637,
+16,0,479,1,381,
+3638,16,0,479,1,
+166,3639,16,0,479,
+1,1257,3640,16,0,
+479,1,277,3641,16,
+0,479,1,1432,3642,
+16,0,479,1,1152,
+3643,16,0,479,1,
+62,3644,16,0,590,
+1,1965,3645,16,0,
+479,1,504,3646,16,
+0,479,1,488,3647,
+16,0,479,1,397,
+3648,16,0,479,1,
+71,3649,16,0,479,
+1,1707,3650,16,0,
+479,1,182,3651,16,
+0,479,1,1818,3652,
+16,0,479,1,463,
+3653,16,0,479,1,
+76,3654,16,0,479,
+1,79,3655,16,0,
+479,1,1611,3656,16,
+0,479,1,299,3657,
+16,0,479,1,1559,
+3658,16,0,479,1,
+85,3659,16,0,479,
+1,1396,3660,16,0,
+479,1,89,3661,16,
+0,479,1,199,3662,
+16,0,479,1,1292,
+3663,16,0,479,1,
+422,3664,16,0,479,
+1,97,3665,16,0,
+479,1,1469,3666,16,
+0,479,1,1732,3667,
+16,0,479,1,102,
+3668,16,0,479,1,
+322,3669,16,0,479,
+1,1327,3670,16,0,
+479,1,217,3671,16,
+0,479,1,123,3672,
+19,3673,4,28,86,
+0,101,0,99,0,
+116,0,111,0,114,
+0,67,0,111,0,
+110,0,115,0,116,
+0,97,0,110,0,
+116,0,1,123,3614,
+1,124,3674,19,3675,
+4,32,82,0,111,
+0,116,0,97,0,
+116,0,105,0,111,
+0,110,0,67,0,
+111,0,110,0,115,
+0,116,0,97,0,
+110,0,116,0,1,
+124,3614,1,125,3676,
+19,3677,4,24,76,
+0,105,0,115,0,
+116,0,67,0,111,
+0,110,0,115,0,
+116,0,97,0,110,
+0,116,0,1,125,
+3614,1,126,3678,19,
+191,1,126,3679,5,
+56,1,1584,3680,16,
+0,461,1,1639,3681,
+16,0,362,1,112,
+3682,16,0,265,1,
+384,3683,16,0,189,
+1,447,3684,16,0,
+558,1,124,3685,16,
+0,270,1,236,3686,
+16,0,354,1,1763,
+3687,16,0,249,1,
+2201,3688,16,0,602,
+1,1222,3689,16,0,
+263,1,1115,3690,16,
+0,227,1,1187,3691,
+16,0,225,1,137,
+3692,16,0,289,1,
+346,3693,16,0,419,
+1,32,3694,16,0,
+362,1,1668,3695,16,
+0,209,1,1514,3696,
+16,0,505,1,256,
+3697,16,0,366,1,
+41,3698,16,0,189,
+1,151,3699,16,0,
+290,1,43,3700,16,
+0,573,1,1788,3701,
+16,0,362,1,52,
+3702,16,0,555,1,
+381,3703,16,0,189,
+1,166,3704,16,0,
+297,1,1257,3705,16,
+0,284,1,277,3706,
+16,0,376,1,1432,
+3707,16,0,388,1,
+1152,3708,16,0,266,
+1,1965,3709,16,0,
+362,1,504,3710,16,
+0,326,1,488,3711,
+16,0,574,1,397,
+3712,16,0,503,1,
+71,3713,16,0,220,
+1,1707,3714,16,0,
+288,1,182,3715,16,
+0,326,1,1818,3716,
+16,0,362,1,463,
+3717,16,0,326,1,
+76,3718,16,0,489,
+1,79,3719,16,0,
+228,1,1611,3720,16,
+0,362,1,299,3721,
+16,0,384,1,1559,
+3722,16,0,554,1,
+85,3723,16,0,389,
+1,1396,3724,16,0,
+377,1,89,3725,16,
+0,245,1,199,3726,
+16,0,340,1,1292,
+3727,16,0,347,1,
+422,3728,16,0,519,
+1,97,3729,16,0,
+368,1,1469,3730,16,
+0,461,1,1732,3731,
+16,0,362,1,102,
+3732,16,0,256,1,
+322,3733,16,0,390,
+1,1327,3734,16,0,
+345,1,217,3735,16,
+0,346,1,127,3736,
+19,3737,4,36,67,
+0,111,0,110,0,
+115,0,116,0,97,
+0,110,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+1,127,3679,1,128,
+3738,19,3739,4,30,
+73,0,100,0,101,
+0,110,0,116,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+1,128,3679,1,129,
+3740,19,3741,4,36,
+73,0,100,0,101,
+0,110,0,116,0,
+68,0,111,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,1,129,3679,1,
+130,3742,19,3743,4,
+44,70,0,117,0,
+110,0,99,0,116,
+0,105,0,111,0,
+110,0,67,0,97,
+0,108,0,108,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+1,130,3679,1,131,
+3744,19,3745,4,32,
+66,0,105,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,1,131,3679,
+1,132,3746,19,3747,
+4,30,85,0,110,
+0,97,0,114,0,
+121,0,69,0,120,
+0,112,0,114,0,
+101,0,115,0,115,
+0,105,0,111,0,
+110,0,1,132,3679,
+1,133,3748,19,3749,
+4,36,84,0,121,
+0,112,0,101,0,
+99,0,97,0,115,
+0,116,0,69,0,
+120,0,112,0,114,
+0,101,0,115,0,
+115,0,105,0,111,
+0,110,0,1,133,
+3679,1,134,3750,19,
+3751,4,42,80,0,
+97,0,114,0,101,
+0,110,0,116,0,
+104,0,101,0,115,
+0,105,0,115,0,
+69,0,120,0,112,
+0,114,0,101,0,
+115,0,115,0,105,
+0,111,0,110,0,
+1,134,3679,1,135,
+3752,19,3753,4,56,
+73,0,110,0,99,
+0,114,0,101,0,
+109,0,101,0,110,
+0,116,0,68,0,
+101,0,99,0,114,
+0,101,0,109,0,
+101,0,110,0,116,
+0,69,0,120,0,
+112,0,114,0,101,
+0,115,0,115,0,
+105,0,111,0,110,
+0,1,135,3679,1,
+137,3754,19,640,1,
+137,3368,1,138,3755,
+19,618,1,138,3368,
+1,139,3756,19,2727,
+1,139,3371,1,140,
+3757,19,2758,1,140,
+3371,1,141,3758,19,
+2722,1,141,3371,1,
+142,3759,19,2763,1,
+142,3371,1,143,3760,
+19,2749,1,143,3374,
+1,144,3761,19,2733,
+1,144,3374,1,145,
+3762,19,2739,1,145,
+3378,1,146,3763,19,
+2744,1,146,3378,1,
+147,3764,19,630,1,
+147,3382,1,148,3765,
+19,635,1,148,3382,
+1,149,3766,19,645,
+1,149,3386,1,150,
+3767,19,624,1,150,
+3386,1,151,3768,19,
+1362,1,151,3392,1,
+152,3769,19,1355,1,
+152,3392,1,153,3770,
+19,1368,1,153,3396,
+1,154,3771,19,1378,
+1,154,3402,1,155,
+3772,19,1388,1,155,
+3402,1,156,3773,19,
+973,1,156,3407,1,
+157,3774,19,727,1,
+157,3450,1,158,3775,
+19,780,1,158,3450,
+1,159,3776,19,720,
+1,159,3462,1,160,
+3777,19,804,1,160,
+3462,1,161,3778,19,
+732,1,161,3465,1,
+162,3779,19,680,1,
+162,3465,1,163,3780,
+19,772,1,163,3465,
+1,164,3781,19,675,
+1,164,3465,1,165,
+3782,19,670,1,165,
+3465,1,166,3783,19,
+751,1,166,3465,1,
+167,3784,19,663,1,
+167,3465,1,168,3785,
+19,658,1,168,3465,
+1,169,3786,19,653,
+1,169,3465,1,170,
+3787,19,809,1,170,
+3465,1,171,3788,19,
+1135,1,171,3495,1,
+172,3789,19,1130,1,
+172,3495,1,173,3790,
+19,764,1,173,3504,
+1,174,3791,19,797,
+1,174,3504,1,175,
+3792,19,692,1,175,
+3513,1,176,3793,19,
+744,1,176,3522,1,
+177,3794,19,714,1,
+177,3531,1,178,3795,
+19,1312,1,178,3540,
+1,179,3796,19,1261,
+1,179,3540,1,180,
+3797,19,986,1,180,
+3540,1,181,3798,19,
+1229,1,181,3540,1,
+182,3799,19,1266,1,
+182,3474,1,183,3800,
+19,1118,1,183,3474,
+1,184,3801,19,1016,
+1,184,3474,1,185,
+3802,19,967,1,185,
+3474,1,186,3803,19,
+1301,1,186,3474,1,
+187,3804,19,1272,1,
+187,3474,1,188,3805,
+19,1234,1,188,3474,
+1,189,3806,19,1160,
+1,189,3474,1,190,
+3807,19,1224,1,190,
+3486,1,191,3808,19,
+1214,1,191,3486,1,
+192,3809,19,1333,1,
+192,3614,1,193,3810,
+19,1328,1,193,3614,
+1,194,3811,19,992,
+1,194,3614,1,195,
+3812,19,1306,1,195,
+3614,1,196,3813,19,
+1318,1,196,3614,1,
+197,3814,19,960,1,
+197,3614,1,198,3815,
+19,1087,1,198,3614,
+1,199,3816,19,1197,
+1,199,3679,1,200,
+3817,19,1006,1,200,
+3679,1,201,3818,19,
+1023,1,201,3679,1,
+202,3819,19,1044,1,
+202,3679,1,203,3820,
+19,1039,1,203,3679,
+1,204,3821,19,1034,
+1,204,3679,1,205,
+3822,19,1029,1,205,
+3679,1,206,3823,19,
+1186,1,206,3679,1,
+207,3824,19,1176,1,
+207,3679,1,208,3825,
+19,1250,1,208,3679,
+1,209,3826,19,1181,
+1,209,3679,1,210,
+3827,19,1171,1,210,
+3679,1,211,3828,19,
+1155,1,211,3679,1,
+212,3829,19,1113,1,
+212,3679,1,213,3830,
+19,1049,1,213,3679,
+1,214,3831,19,1011,
+1,214,3679,1,215,
+3832,19,979,1,215,
+3679,1,216,3833,19,
+1323,1,216,3679,1,
+217,3834,19,1296,1,
+217,3679,1,218,3835,
+19,1284,1,218,3679,
+1,219,3836,19,1278,
+1,219,3679,1,220,
+3837,19,1255,1,220,
+3679,1,221,3838,19,
+1239,1,221,3679,1,
+222,3839,19,1219,1,
+222,3679,1,223,3840,
+19,1208,1,223,3679,
+1,224,3841,19,1165,
+1,224,3679,1,225,
+3842,19,1191,1,225,
+3679,1,226,3843,19,
+1202,1,226,3679,1,
+227,3844,19,1291,1,
+227,3679,1,228,3845,
+19,1108,1,228,3679,
+1,229,3846,19,1143,
+1,229,3679,1,230,
+3847,19,1149,1,230,
+3679,1,231,3848,19,
+1124,1,231,3679,1,
+232,3849,19,1093,1,
+232,3679,1,233,3850,
+19,1061,1,233,3679,
+1,234,3851,19,1056,
+1,234,3679,1,235,
+3852,19,1066,1,235,
+3679,1,236,3853,19,
+1081,1,236,3679,1,
+237,3854,19,1071,1,
+237,3679,1,238,3855,
+19,1076,1,238,3679,
+1,239,3856,19,1103,
+1,239,3679,1,240,
+3857,19,998,1,240,
+3679,1,241,3858,19,
+1098,1,241,3679,1,
+242,3859,19,1245,1,
+242,3544,1,243,3860,
+19,1404,1,243,3603,
+1,244,3861,19,1414,
+1,244,3603,1,245,
+3862,19,1398,1,245,
+3607,1,246,3863,19,
+1702,1,246,3425,1,
+247,3864,19,1697,1,
+247,3425,1,248,3865,
+19,1692,1,248,3425,
+1,249,3866,19,1687,
+1,249,3425,1,250,
+3867,19,1682,1,250,
+3425,1,251,3868,19,
+1677,1,251,3425,1,
+252,3869,19,1672,1,
+252,3425,1,253,3870,
+19,1574,1,253,3444,
+1,254,3871,19,1639,
+1,254,3444,1,255,
+3872,19,1634,1,255,
+3444,1,256,3873,19,
+1567,1,256,3444,1,
+257,3874,19,1562,1,
+257,3444,1,258,3875,
+19,1628,1,258,3444,
+1,259,3876,19,1556,
+1,259,3444,1,260,
+3877,19,1551,1,260,
+3444,1,261,3878,19,
+1546,1,261,3444,1,
+262,3879,19,1541,1,
+262,3444,1,263,3880,
+19,1661,1,263,3444,
+1,264,3881,19,1621,
+1,264,3444,1,265,
+3882,19,1534,1,265,
+3444,1,266,3883,19,
+1529,1,266,3444,1,
+267,3884,19,1524,1,
+267,3444,1,268,3885,
+19,1519,1,268,3444,
+1,269,3886,19,1601,
+1,269,3444,1,270,
+3887,19,1513,1,270,
+3444,1,271,3888,19,
+1508,1,271,3444,1,
+272,3889,19,1503,1,
+272,3444,1,273,3890,
+19,1498,1,273,3444,
+1,274,3891,19,1493,
+1,274,3444,1,275,
+3892,19,1488,1,275,
+3444,1,276,3893,19,
+1483,1,276,3444,1,
+277,3894,19,1478,1,
+277,3444,1,278,3895,
+19,1473,1,278,3444,
+1,279,3896,19,1468,
+1,279,3444,1,280,
+3897,19,1593,1,280,
+3444,1,281,3898,19,
+1462,1,281,3444,1,
+282,3899,19,1457,1,
+282,3444,1,283,3900,
+19,1452,1,283,3444,
+1,284,3901,19,1447,
+1,284,3444,1,285,
+3902,19,1442,1,285,
+3444,1,286,3903,19,
+3904,4,50,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,68,
+0,101,0,99,0,
+108,0,97,0,114,
+0,97,0,116,0,
+105,0,111,0,110,
+0,76,0,105,0,
+115,0,116,0,95,
+0,51,0,1,286,
+3402,1,287,3905,19,
+3906,4,28,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,76,
+0,105,0,115,0,
+116,0,95,0,51,
+0,1,287,3603,1,
+288,3907,19,3908,4,
+24,83,0,116,0,
+97,0,116,0,101,
+0,109,0,101,0,
+110,0,116,0,95,
+0,49,0,49,0,
+1,288,3465,1,289,
+3909,19,3910,4,28,
+65,0,114,0,103,
+0,117,0,109,0,
+101,0,110,0,116,
+0,76,0,105,0,
+115,0,116,0,95,
+0,52,0,1,289,
+3603,1,290,3911,19,
+3912,4,50,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,68,
+0,101,0,99,0,
+108,0,97,0,114,
+0,97,0,116,0,
+105,0,111,0,110,
+0,76,0,105,0,
+115,0,116,0,95,
+0,52,0,1,290,
+3402,1,291,3913,19,
+3914,4,50,65,0,
+114,0,103,0,117,
+0,109,0,101,0,
+110,0,116,0,68,
+0,101,0,99,0,
+108,0,97,0,114,
+0,97,0,116,0,
+105,0,111,0,110,
+0,76,0,105,0,
+115,0,116,0,95,
+0,53,0,1,291,
+3402,2,0,0};
+new Sfactory(this,"ExpressionArgument_1",new SCreator(ExpressionArgument_1_factory));
+new Sfactory(this,"StatementList_1",new SCreator(StatementList_1_factory));
+new Sfactory(this,"StateChange_1",new SCreator(StateChange_1_factory));
+new Sfactory(this,"StateChange_2",new SCreator(StateChange_2_factory));
+new Sfactory(this,"Declaration",new SCreator(Declaration_factory));
+new Sfactory(this,"IdentExpression",new SCreator(IdentExpression_factory));
+new Sfactory(this,"error",new SCreator(error_factory));
+new Sfactory(this,"BinaryExpression_2",new SCreator(BinaryExpression_2_factory));
+new Sfactory(this,"BinaryExpression_3",new SCreator(BinaryExpression_3_factory));
+new Sfactory(this,"BinaryExpression_4",new SCreator(BinaryExpression_4_factory));
+new Sfactory(this,"BinaryExpression_5",new SCreator(BinaryExpression_5_factory));
+new Sfactory(this,"ReturnStatement_2",new SCreator(ReturnStatement_2_factory));
+new Sfactory(this,"BinaryExpression_8",new SCreator(BinaryExpression_8_factory));
+new Sfactory(this,"BinaryExpression_9",new SCreator(BinaryExpression_9_factory));
+new Sfactory(this,"VectorConstant_1",new SCreator(VectorConstant_1_factory));
+new Sfactory(this,"ParenthesisExpression",new SCreator(ParenthesisExpression_factory));
+new Sfactory(this,"UnaryExpression",new SCreator(UnaryExpression_factory));
+new Sfactory(this,"IdentDotExpression_1",new SCreator(IdentDotExpression_1_factory));
+new Sfactory(this,"Typename",new SCreator(Typename_factory));
+new Sfactory(this,"IfStatement_1",new SCreator(IfStatement_1_factory));
+new Sfactory(this,"Assignment",new SCreator(Assignment_factory));
+new Sfactory(this,"CompoundStatement_1",new SCreator(CompoundStatement_1_factory));
+new Sfactory(this,"CompoundStatement_2",new SCreator(CompoundStatement_2_factory));
+new Sfactory(this,"ReturnStatement_1",new SCreator(ReturnStatement_1_factory));
+new Sfactory(this,"IdentDotExpression",new SCreator(IdentDotExpression_factory));
+new Sfactory(this,"Argument",new SCreator(Argument_factory));
+new Sfactory(this,"State_2",new SCreator(State_2_factory));
+new Sfactory(this,"WhileStatement_1",new SCreator(WhileStatement_1_factory));
+new Sfactory(this,"GlobalDefinitions_3",new SCreator(GlobalDefinitions_3_factory));
+new Sfactory(this,"GlobalDefinitions_4",new SCreator(GlobalDefinitions_4_factory));
+new Sfactory(this,"Event_1",new SCreator(Event_1_factory));
+new Sfactory(this,"ListConstant",new SCreator(ListConstant_factory));
+new Sfactory(this,"Event_3",new SCreator(Event_3_factory));
+new Sfactory(this,"Event_4",new SCreator(Event_4_factory));
+new Sfactory(this,"Event_6",new SCreator(Event_6_factory));
+new Sfactory(this,"Typename_1",new SCreator(Typename_1_factory));
+new Sfactory(this,"Typename_2",new SCreator(Typename_2_factory));
+new Sfactory(this,"Typename_3",new SCreator(Typename_3_factory));
+new Sfactory(this,"Typename_4",new SCreator(Typename_4_factory));
+new Sfactory(this,"Typename_5",new SCreator(Typename_5_factory));
+new Sfactory(this,"Typename_6",new SCreator(Typename_6_factory));
+new Sfactory(this,"Typename_7",new SCreator(Typename_7_factory));
+new Sfactory(this,"ArgumentDeclarationList",new SCreator(ArgumentDeclarationList_factory));
+new Sfactory(this,"ConstantExpression",new SCreator(ConstantExpression_factory));
+new Sfactory(this,"LSLProgramRoot_1",new SCreator(LSLProgramRoot_1_factory));
+new Sfactory(this,"LSLProgramRoot_2",new SCreator(LSLProgramRoot_2_factory));
+new Sfactory(this,"States_1",new SCreator(States_1_factory));
+new Sfactory(this,"States_2",new SCreator(States_2_factory));
+new Sfactory(this,"FunctionCallExpression_1",new SCreator(FunctionCallExpression_1_factory));
+new Sfactory(this,"ForLoopStatement",new SCreator(ForLoopStatement_factory));
+new Sfactory(this,"DoWhileStatement_1",new SCreator(DoWhileStatement_1_factory));
+new Sfactory(this,"GlobalDefinitions",new SCreator(GlobalDefinitions_factory));
+new Sfactory(this,"FunctionCall_1",new SCreator(FunctionCall_1_factory));
+new Sfactory(this,"Assignment_4",new SCreator(Assignment_4_factory));
+new Sfactory(this,"Assignment_6",new SCreator(Assignment_6_factory));
+new Sfactory(this,"TypecastExpression_1",new SCreator(TypecastExpression_1_factory));
+new Sfactory(this,"TypecastExpression_4",new SCreator(TypecastExpression_4_factory));
+new Sfactory(this,"TypecastExpression_5",new SCreator(TypecastExpression_5_factory));
+new Sfactory(this,"TypecastExpression_6",new SCreator(TypecastExpression_6_factory));
+new Sfactory(this,"TypecastExpression_9",new SCreator(TypecastExpression_9_factory));
+new Sfactory(this,"ArgumentDeclarationList_1",new SCreator(ArgumentDeclarationList_1_factory));
+new Sfactory(this,"ArgumentDeclarationList_2",new SCreator(ArgumentDeclarationList_2_factory));
+new Sfactory(this,"ArgumentDeclarationList_3",new SCreator(ArgumentDeclarationList_3_factory));
+new Sfactory(this,"GlobalDefinitions_1",new SCreator(GlobalDefinitions_1_factory));
+new Sfactory(this,"GlobalDefinitions_2",new SCreator(GlobalDefinitions_2_factory));
+new Sfactory(this,"IncrementDecrementExpression",new SCreator(IncrementDecrementExpression_factory));
+new Sfactory(this,"GlobalVariableDeclaration",new SCreator(GlobalVariableDeclaration_factory));
+new Sfactory(this,"Event_11",new SCreator(Event_11_factory));
+new Sfactory(this,"TypecastExpression_2",new SCreator(TypecastExpression_2_factory));
+new Sfactory(this,"TypecastExpression_3",new SCreator(TypecastExpression_3_factory));
+new Sfactory(this,"TypecastExpression_8",new SCreator(TypecastExpression_8_factory));
+new Sfactory(this,"Constant_1",new SCreator(Constant_1_factory));
+new Sfactory(this,"Expression",new SCreator(Expression_factory));
+new Sfactory(this,"Constant_3",new SCreator(Constant_3_factory));
+new Sfactory(this,"Constant_4",new SCreator(Constant_4_factory));
+new Sfactory(this,"BinaryExpression_1",new SCreator(BinaryExpression_1_factory));
+new Sfactory(this,"IfStatement_2",new SCreator(IfStatement_2_factory));
+new Sfactory(this,"ReturnStatement",new SCreator(ReturnStatement_factory));
+new Sfactory(this,"Event_2",new SCreator(Event_2_factory));
+new Sfactory(this,"RotationConstant",new SCreator(RotationConstant_factory));
+new Sfactory(this,"UnaryExpression_1",new SCreator(UnaryExpression_1_factory));
+new Sfactory(this,"UnaryExpression_2",new SCreator(UnaryExpression_2_factory));
+new Sfactory(this,"UnaryExpression_3",new SCreator(UnaryExpression_3_factory));
+new Sfactory(this,"ArgumentList_1",new SCreator(ArgumentList_1_factory));
+new Sfactory(this,"ArgumentList_2",new SCreator(ArgumentList_2_factory));
+new Sfactory(this,"ArgumentList_3",new SCreator(ArgumentList_3_factory));
+new Sfactory(this,"Constant",new SCreator(Constant_factory));
+new Sfactory(this,"State",new SCreator(State_factory));
+new Sfactory(this,"LSLProgramRoot",new SCreator(LSLProgramRoot_factory));
+new Sfactory(this,"StateChange",new SCreator(StateChange_factory));
+new Sfactory(this,"IncrementDecrementExpression_2",new SCreator(IncrementDecrementExpression_2_factory));
+new Sfactory(this,"GlobalVariableDeclaration_1",new SCreator(GlobalVariableDeclaration_1_factory));
+new Sfactory(this,"GlobalVariableDeclaration_2",new SCreator(GlobalVariableDeclaration_2_factory));
+new Sfactory(this,"IncrementDecrementExpression_5",new SCreator(IncrementDecrementExpression_5_factory));
+new Sfactory(this,"GlobalFunctionDefinition_2",new SCreator(GlobalFunctionDefinition_2_factory));
+new Sfactory(this,"IncrementDecrementExpression_7",new SCreator(IncrementDecrementExpression_7_factory));
+new Sfactory(this,"IncrementDecrementExpression_8",new SCreator(IncrementDecrementExpression_8_factory));
+new Sfactory(this,"Assignment_1",new SCreator(Assignment_1_factory));
+new Sfactory(this,"Assignment_2",new SCreator(Assignment_2_factory));
+new Sfactory(this,"Assignment_3",new SCreator(Assignment_3_factory));
+new Sfactory(this,"Assignment_5",new SCreator(Assignment_5_factory));
+new Sfactory(this,"Assignment_7",new SCreator(Assignment_7_factory));
+new Sfactory(this,"Assignment_8",new SCreator(Assignment_8_factory));
+new Sfactory(this,"Event_22",new SCreator(Event_22_factory));
+new Sfactory(this,"CompoundStatement",new SCreator(CompoundStatement_factory));
+new Sfactory(this,"RotationConstant_1",new SCreator(RotationConstant_1_factory));
+new Sfactory(this,"Statement_1",new SCreator(Statement_1_factory));
+new Sfactory(this,"Statement_2",new SCreator(Statement_2_factory));
+new Sfactory(this,"Statement_3",new SCreator(Statement_3_factory));
+new Sfactory(this,"Statement_4",new SCreator(Statement_4_factory));
+new Sfactory(this,"Statement_5",new SCreator(Statement_5_factory));
+new Sfactory(this,"Statement_6",new SCreator(Statement_6_factory));
+new Sfactory(this,"Statement_7",new SCreator(Statement_7_factory));
+new Sfactory(this,"Statement_8",new SCreator(Statement_8_factory));
+new Sfactory(this,"Statement_9",new SCreator(Statement_9_factory));
+new Sfactory(this,"ExpressionArgument",new SCreator(ExpressionArgument_factory));
+new Sfactory(this,"GlobalFunctionDefinition",new SCreator(GlobalFunctionDefinition_factory));
+new Sfactory(this,"State_1",new SCreator(State_1_factory));
+new Sfactory(this,"DoWhileStatement",new SCreator(DoWhileStatement_factory));
+new Sfactory(this,"ParenthesisExpression_1",new SCreator(ParenthesisExpression_1_factory));
+new Sfactory(this,"Event_5",new SCreator(Event_5_factory));
+new Sfactory(this,"StateBody",new SCreator(StateBody_factory));
+new Sfactory(this,"Event_7",new SCreator(Event_7_factory));
+new Sfactory(this,"Event_8",new SCreator(Event_8_factory));
+new Sfactory(this,"IncrementDecrementExpression_1",new SCreator(IncrementDecrementExpression_1_factory));
+new Sfactory(this,"IncrementDecrementExpression_3",new SCreator(IncrementDecrementExpression_3_factory));
+new Sfactory(this,"IncrementDecrementExpression_4",new SCreator(IncrementDecrementExpression_4_factory));
+new Sfactory(this,"IncrementDecrementExpression_6",new SCreator(IncrementDecrementExpression_6_factory));
+new Sfactory(this,"StateEvent",new SCreator(StateEvent_factory));
+new Sfactory(this,"Event_20",new SCreator(Event_20_factory));
+new Sfactory(this,"Event_24",new SCreator(Event_24_factory));
+new Sfactory(this,"Event_26",new SCreator(Event_26_factory));
+new Sfactory(this,"Event",new SCreator(Event_factory));
+new Sfactory(this,"Statement_10",new SCreator(Statement_10_factory));
+new Sfactory(this,"Statement_11",new SCreator(Statement_11_factory));
+new Sfactory(this,"Event_13",new SCreator(Event_13_factory));
+new Sfactory(this,"TypecastExpression",new SCreator(TypecastExpression_factory));
+new Sfactory(this,"Event_15",new SCreator(Event_15_factory));
+new Sfactory(this,"Event_16",new SCreator(Event_16_factory));
+new Sfactory(this,"Event_32",new SCreator(Event_32_factory));
+new Sfactory(this,"BinaryExpression",new SCreator(BinaryExpression_factory));
+new Sfactory(this,"FunctionCallExpression",new SCreator(FunctionCallExpression_factory));
+new Sfactory(this,"BinaryExpression_11",new SCreator(BinaryExpression_11_factory));
+new Sfactory(this,"StateBody_1",new SCreator(StateBody_1_factory));
+new Sfactory(this,"StatementList_2",new SCreator(StatementList_2_factory));
+new Sfactory(this,"BinaryExpression_14",new SCreator(BinaryExpression_14_factory));
+new Sfactory(this,"BinaryExpression_15",new SCreator(BinaryExpression_15_factory));
+new Sfactory(this,"BinaryExpression_16",new SCreator(BinaryExpression_16_factory));
+new Sfactory(this,"BinaryExpression_17",new SCreator(BinaryExpression_17_factory));
+new Sfactory(this,"BinaryExpression_18",new SCreator(BinaryExpression_18_factory));
+new Sfactory(this,"Event_25",new SCreator(Event_25_factory));
+new Sfactory(this,"Event_9",new SCreator(Event_9_factory));
+new Sfactory(this,"Statement",new SCreator(Statement_factory));
+new Sfactory(this,"BinaryExpression_10",new SCreator(BinaryExpression_10_factory));
+new Sfactory(this,"BinaryExpression_12",new SCreator(BinaryExpression_12_factory));
+new Sfactory(this,"BinaryExpression_13",new SCreator(BinaryExpression_13_factory));
+new Sfactory(this,"BinaryExpression_6",new SCreator(BinaryExpression_6_factory));
+new Sfactory(this,"BinaryExpression_7",new SCreator(BinaryExpression_7_factory));
+new Sfactory(this,"ArgumentList",new SCreator(ArgumentList_factory));
+new Sfactory(this,"Event_10",new SCreator(Event_10_factory));
+new Sfactory(this,"ConstantExpression_1",new SCreator(ConstantExpression_1_factory));
+new Sfactory(this,"Event_12",new SCreator(Event_12_factory));
+new Sfactory(this,"Event_14",new SCreator(Event_14_factory));
+new Sfactory(this,"Event_17",new SCreator(Event_17_factory));
+new Sfactory(this,"Event_18",new SCreator(Event_18_factory));
+new Sfactory(this,"Event_19",new SCreator(Event_19_factory));
+new Sfactory(this,"StateEvent_1",new SCreator(StateEvent_1_factory));
+new Sfactory(this,"VectorConstant",new SCreator(VectorConstant_factory));
+new Sfactory(this,"Event_21",new SCreator(Event_21_factory));
+new Sfactory(this,"Event_23",new SCreator(Event_23_factory));
+new Sfactory(this,"TypecastExpression_7",new SCreator(TypecastExpression_7_factory));
+new Sfactory(this,"FunctionCall",new SCreator(FunctionCall_factory));
+new Sfactory(this,"Event_27",new SCreator(Event_27_factory));
+new Sfactory(this,"Event_28",new SCreator(Event_28_factory));
+new Sfactory(this,"Event_29",new SCreator(Event_29_factory));
+new Sfactory(this,"ListConstant_1",new SCreator(ListConstant_1_factory));
+new Sfactory(this,"Declaration_1",new SCreator(Declaration_1_factory));
+new Sfactory(this,"ForLoop",new SCreator(ForLoop_factory));
+new Sfactory(this,"Event_30",new SCreator(Event_30_factory));
+new Sfactory(this,"Event_31",new SCreator(Event_31_factory));
+new Sfactory(this,"Event_33",new SCreator(Event_33_factory));
+new Sfactory(this,"GlobalFunctionDefinition_1",new SCreator(GlobalFunctionDefinition_1_factory));
+new Sfactory(this,"ArgumentList_4",new SCreator(ArgumentList_4_factory));
+new Sfactory(this,"IfStatement",new SCreator(IfStatement_factory));
+new Sfactory(this,"ForLoopStatement_1",new SCreator(ForLoopStatement_1_factory));
+new Sfactory(this,"ForLoopStatement_2",new SCreator(ForLoopStatement_2_factory));
+new Sfactory(this,"ForLoopStatement_3",new SCreator(ForLoopStatement_3_factory));
+new Sfactory(this,"ForLoopStatement_4",new SCreator(ForLoopStatement_4_factory));
+new Sfactory(this,"ArgumentDeclarationList_4",new SCreator(ArgumentDeclarationList_4_factory));
+new Sfactory(this,"ArgumentDeclarationList_5",new SCreator(ArgumentDeclarationList_5_factory));
+new Sfactory(this,"WhileStatement",new SCreator(WhileStatement_factory));
+new Sfactory(this,"ForLoop_1",new SCreator(ForLoop_1_factory));
+new Sfactory(this,"Constant_2",new SCreator(Constant_2_factory));
+new Sfactory(this,"StatementList",new SCreator(StatementList_factory));
+new Sfactory(this,"StateBody_2",new SCreator(StateBody_2_factory));
+new Sfactory(this,"IdentExpression_1",new SCreator(IdentExpression_1_factory));
+new Sfactory(this,"States",new SCreator(States_factory));
+}
+public static object ExpressionArgument_1_factory(Parser yyp) { return new ExpressionArgument_1(yyp); }
+public static object StatementList_1_factory(Parser yyp) { return new StatementList_1(yyp); }
+public static object StateChange_1_factory(Parser yyp) { return new StateChange_1(yyp); }
+public static object StateChange_2_factory(Parser yyp) { return new StateChange_2(yyp); }
+public static object Declaration_factory(Parser yyp) { return new Declaration(yyp); }
+public static object IdentExpression_factory(Parser yyp) { return new IdentExpression(yyp); }
+public static object error_factory(Parser yyp) { return new error(yyp); }
+public static object BinaryExpression_2_factory(Parser yyp) { return new BinaryExpression_2(yyp); }
+public static object BinaryExpression_3_factory(Parser yyp) { return new BinaryExpression_3(yyp); }
+public static object BinaryExpression_4_factory(Parser yyp) { return new BinaryExpression_4(yyp); }
+public static object BinaryExpression_5_factory(Parser yyp) { return new BinaryExpression_5(yyp); }
+public static object ReturnStatement_2_factory(Parser yyp) { return new ReturnStatement_2(yyp); }
+public static object BinaryExpression_8_factory(Parser yyp) { return new BinaryExpression_8(yyp); }
+public static object BinaryExpression_9_factory(Parser yyp) { return new BinaryExpression_9(yyp); }
+public static object VectorConstant_1_factory(Parser yyp) { return new VectorConstant_1(yyp); }
+public static object ParenthesisExpression_factory(Parser yyp) { return new ParenthesisExpression(yyp); }
+public static object UnaryExpression_factory(Parser yyp) { return new UnaryExpression(yyp); }
+public static object IdentDotExpression_1_factory(Parser yyp) { return new IdentDotExpression_1(yyp); }
+public static object Typename_factory(Parser yyp) { return new Typename(yyp); }
+public static object IfStatement_1_factory(Parser yyp) { return new IfStatement_1(yyp); }
+public static object Assignment_factory(Parser yyp) { return new Assignment(yyp); }
+public static object CompoundStatement_1_factory(Parser yyp) { return new CompoundStatement_1(yyp); }
+public static object CompoundStatement_2_factory(Parser yyp) { return new CompoundStatement_2(yyp); }
+public static object ReturnStatement_1_factory(Parser yyp) { return new ReturnStatement_1(yyp); }
+public static object IdentDotExpression_factory(Parser yyp) { return new IdentDotExpression(yyp); }
+public static object Argument_factory(Parser yyp) { return new Argument(yyp); }
+public static object State_2_factory(Parser yyp) { return new State_2(yyp); }
+public static object WhileStatement_1_factory(Parser yyp) { return new WhileStatement_1(yyp); }
+public static object GlobalDefinitions_3_factory(Parser yyp) { return new GlobalDefinitions_3(yyp); }
+public static object GlobalDefinitions_4_factory(Parser yyp) { return new GlobalDefinitions_4(yyp); }
+public static object Event_1_factory(Parser yyp) { return new Event_1(yyp); }
+public static object ListConstant_factory(Parser yyp) { return new ListConstant(yyp); }
+public static object Event_3_factory(Parser yyp) { return new Event_3(yyp); }
+public static object Event_4_factory(Parser yyp) { return new Event_4(yyp); }
+public static object Event_6_factory(Parser yyp) { return new Event_6(yyp); }
+public static object Typename_1_factory(Parser yyp) { return new Typename_1(yyp); }
+public static object Typename_2_factory(Parser yyp) { return new Typename_2(yyp); }
+public static object Typename_3_factory(Parser yyp) { return new Typename_3(yyp); }
+public static object Typename_4_factory(Parser yyp) { return new Typename_4(yyp); }
+public static object Typename_5_factory(Parser yyp) { return new Typename_5(yyp); }
+public static object Typename_6_factory(Parser yyp) { return new Typename_6(yyp); }
+public static object Typename_7_factory(Parser yyp) { return new Typename_7(yyp); }
+public static object ArgumentDeclarationList_factory(Parser yyp) { return new ArgumentDeclarationList(yyp); }
+public static object ConstantExpression_factory(Parser yyp) { return new ConstantExpression(yyp); }
+public static object LSLProgramRoot_1_factory(Parser yyp) { return new LSLProgramRoot_1(yyp); }
+public static object LSLProgramRoot_2_factory(Parser yyp) { return new LSLProgramRoot_2(yyp); }
+public static object States_1_factory(Parser yyp) { return new States_1(yyp); }
+public static object States_2_factory(Parser yyp) { return new States_2(yyp); }
+public static object FunctionCallExpression_1_factory(Parser yyp) { return new FunctionCallExpression_1(yyp); }
+public static object ForLoopStatement_factory(Parser yyp) { return new ForLoopStatement(yyp); }
+public static object DoWhileStatement_1_factory(Parser yyp) { return new DoWhileStatement_1(yyp); }
+public static object GlobalDefinitions_factory(Parser yyp) { return new GlobalDefinitions(yyp); }
+public static object FunctionCall_1_factory(Parser yyp) { return new FunctionCall_1(yyp); }
+public static object Assignment_4_factory(Parser yyp) { return new Assignment_4(yyp); }
+public static object Assignment_6_factory(Parser yyp) { return new Assignment_6(yyp); }
+public static object TypecastExpression_1_factory(Parser yyp) { return new TypecastExpression_1(yyp); }
+public static object TypecastExpression_4_factory(Parser yyp) { return new TypecastExpression_4(yyp); }
+public static object TypecastExpression_5_factory(Parser yyp) { return new TypecastExpression_5(yyp); }
+public static object TypecastExpression_6_factory(Parser yyp) { return new TypecastExpression_6(yyp); }
+public static object TypecastExpression_9_factory(Parser yyp) { return new TypecastExpression_9(yyp); }
+public static object ArgumentDeclarationList_1_factory(Parser yyp) { return new ArgumentDeclarationList_1(yyp); }
+public static object ArgumentDeclarationList_2_factory(Parser yyp) { return new ArgumentDeclarationList_2(yyp); }
+public static object ArgumentDeclarationList_3_factory(Parser yyp) { return new ArgumentDeclarationList_3(yyp); }
+public static object GlobalDefinitions_1_factory(Parser yyp) { return new GlobalDefinitions_1(yyp); }
+public static object GlobalDefinitions_2_factory(Parser yyp) { return new GlobalDefinitions_2(yyp); }
+public static object IncrementDecrementExpression_factory(Parser yyp) { return new IncrementDecrementExpression(yyp); }
+public static object GlobalVariableDeclaration_factory(Parser yyp) { return new GlobalVariableDeclaration(yyp); }
+public static object Event_11_factory(Parser yyp) { return new Event_11(yyp); }
+public static object TypecastExpression_2_factory(Parser yyp) { return new TypecastExpression_2(yyp); }
+public static object TypecastExpression_3_factory(Parser yyp) { return new TypecastExpression_3(yyp); }
+public static object TypecastExpression_8_factory(Parser yyp) { return new TypecastExpression_8(yyp); }
+public static object Constant_1_factory(Parser yyp) { return new Constant_1(yyp); }
+public static object Expression_factory(Parser yyp) { return new Expression(yyp); }
+public static object Constant_3_factory(Parser yyp) { return new Constant_3(yyp); }
+public static object Constant_4_factory(Parser yyp) { return new Constant_4(yyp); }
+public static object BinaryExpression_1_factory(Parser yyp) { return new BinaryExpression_1(yyp); }
+public static object IfStatement_2_factory(Parser yyp) { return new IfStatement_2(yyp); }
+public static object ReturnStatement_factory(Parser yyp) { return new ReturnStatement(yyp); }
+public static object Event_2_factory(Parser yyp) { return new Event_2(yyp); }
+public static object RotationConstant_factory(Parser yyp) { return new RotationConstant(yyp); }
+public static object UnaryExpression_1_factory(Parser yyp) { return new UnaryExpression_1(yyp); }
+public static object UnaryExpression_2_factory(Parser yyp) { return new UnaryExpression_2(yyp); }
+public static object UnaryExpression_3_factory(Parser yyp) { return new UnaryExpression_3(yyp); }
+public static object ArgumentList_1_factory(Parser yyp) { return new ArgumentList_1(yyp); }
+public static object ArgumentList_2_factory(Parser yyp) { return new ArgumentList_2(yyp); }
+public static object ArgumentList_3_factory(Parser yyp) { return new ArgumentList_3(yyp); }
+public static object Constant_factory(Parser yyp) { return new Constant(yyp); }
+public static object State_factory(Parser yyp) { return new State(yyp); }
+public static object LSLProgramRoot_factory(Parser yyp) { return new LSLProgramRoot(yyp); }
+public static object StateChange_factory(Parser yyp) { return new StateChange(yyp); }
+public static object IncrementDecrementExpression_2_factory(Parser yyp) { return new IncrementDecrementExpression_2(yyp); }
+public static object GlobalVariableDeclaration_1_factory(Parser yyp) { return new GlobalVariableDeclaration_1(yyp); }
+public static object GlobalVariableDeclaration_2_factory(Parser yyp) { return new GlobalVariableDeclaration_2(yyp); }
+public static object IncrementDecrementExpression_5_factory(Parser yyp) { return new IncrementDecrementExpression_5(yyp); }
+public static object GlobalFunctionDefinition_2_factory(Parser yyp) { return new GlobalFunctionDefinition_2(yyp); }
+public static object IncrementDecrementExpression_7_factory(Parser yyp) { return new IncrementDecrementExpression_7(yyp); }
+public static object IncrementDecrementExpression_8_factory(Parser yyp) { return new IncrementDecrementExpression_8(yyp); }
+public static object Assignment_1_factory(Parser yyp) { return new Assignment_1(yyp); }
+public static object Assignment_2_factory(Parser yyp) { return new Assignment_2(yyp); }
+public static object Assignment_3_factory(Parser yyp) { return new Assignment_3(yyp); }
+public static object Assignment_5_factory(Parser yyp) { return new Assignment_5(yyp); }
+public static object Assignment_7_factory(Parser yyp) { return new Assignment_7(yyp); }
+public static object Assignment_8_factory(Parser yyp) { return new Assignment_8(yyp); }
+public static object Event_22_factory(Parser yyp) { return new Event_22(yyp); }
+public static object CompoundStatement_factory(Parser yyp) { return new CompoundStatement(yyp); }
+public static object RotationConstant_1_factory(Parser yyp) { return new RotationConstant_1(yyp); }
+public static object Statement_1_factory(Parser yyp) { return new Statement_1(yyp); }
+public static object Statement_2_factory(Parser yyp) { return new Statement_2(yyp); }
+public static object Statement_3_factory(Parser yyp) { return new Statement_3(yyp); }
+public static object Statement_4_factory(Parser yyp) { return new Statement_4(yyp); }
+public static object Statement_5_factory(Parser yyp) { return new Statement_5(yyp); }
+public static object Statement_6_factory(Parser yyp) { return new Statement_6(yyp); }
+public static object Statement_7_factory(Parser yyp) { return new Statement_7(yyp); }
+public static object Statement_8_factory(Parser yyp) { return new Statement_8(yyp); }
+public static object Statement_9_factory(Parser yyp) { return new Statement_9(yyp); }
+public static object ExpressionArgument_factory(Parser yyp) { return new ExpressionArgument(yyp); }
+public static object GlobalFunctionDefinition_factory(Parser yyp) { return new GlobalFunctionDefinition(yyp); }
+public static object State_1_factory(Parser yyp) { return new State_1(yyp); }
+public static object DoWhileStatement_factory(Parser yyp) { return new DoWhileStatement(yyp); }
+public static object ParenthesisExpression_1_factory(Parser yyp) { return new ParenthesisExpression_1(yyp); }
+public static object Event_5_factory(Parser yyp) { return new Event_5(yyp); }
+public static object StateBody_factory(Parser yyp) { return new StateBody(yyp); }
+public static object Event_7_factory(Parser yyp) { return new Event_7(yyp); }
+public static object Event_8_factory(Parser yyp) { return new Event_8(yyp); }
+public static object IncrementDecrementExpression_1_factory(Parser yyp) { return new IncrementDecrementExpression_1(yyp); }
+public static object IncrementDecrementExpression_3_factory(Parser yyp) { return new IncrementDecrementExpression_3(yyp); }
+public static object IncrementDecrementExpression_4_factory(Parser yyp) { return new IncrementDecrementExpression_4(yyp); }
+public static object IncrementDecrementExpression_6_factory(Parser yyp) { return new IncrementDecrementExpression_6(yyp); }
+public static object StateEvent_factory(Parser yyp) { return new StateEvent(yyp); }
+public static object Event_20_factory(Parser yyp) { return new Event_20(yyp); }
+public static object Event_24_factory(Parser yyp) { return new Event_24(yyp); }
+public static object Event_26_factory(Parser yyp) { return new Event_26(yyp); }
+public static object Event_factory(Parser yyp) { return new Event(yyp); }
+public static object Statement_10_factory(Parser yyp) { return new Statement_10(yyp); }
+public static object Statement_11_factory(Parser yyp) { return new Statement_11(yyp); }
+public static object Event_13_factory(Parser yyp) { return new Event_13(yyp); }
+public static object TypecastExpression_factory(Parser yyp) { return new TypecastExpression(yyp); }
+public static object Event_15_factory(Parser yyp) { return new Event_15(yyp); }
+public static object Event_16_factory(Parser yyp) { return new Event_16(yyp); }
+public static object Event_32_factory(Parser yyp) { return new Event_32(yyp); }
+public static object BinaryExpression_factory(Parser yyp) { return new BinaryExpression(yyp); }
+public static object FunctionCallExpression_factory(Parser yyp) { return new FunctionCallExpression(yyp); }
+public static object BinaryExpression_11_factory(Parser yyp) { return new BinaryExpression_11(yyp); }
+public static object StateBody_1_factory(Parser yyp) { return new StateBody_1(yyp); }
+public static object StatementList_2_factory(Parser yyp) { return new StatementList_2(yyp); }
+public static object BinaryExpression_14_factory(Parser yyp) { return new BinaryExpression_14(yyp); }
+public static object BinaryExpression_15_factory(Parser yyp) { return new BinaryExpression_15(yyp); }
+public static object BinaryExpression_16_factory(Parser yyp) { return new BinaryExpression_16(yyp); }
+public static object BinaryExpression_17_factory(Parser yyp) { return new BinaryExpression_17(yyp); }
+public static object BinaryExpression_18_factory(Parser yyp) { return new BinaryExpression_18(yyp); }
+public static object Event_25_factory(Parser yyp) { return new Event_25(yyp); }
+public static object Event_9_factory(Parser yyp) { return new Event_9(yyp); }
+public static object Statement_factory(Parser yyp) { return new Statement(yyp); }
+public static object BinaryExpression_10_factory(Parser yyp) { return new BinaryExpression_10(yyp); }
+public static object BinaryExpression_12_factory(Parser yyp) { return new BinaryExpression_12(yyp); }
+public static object BinaryExpression_13_factory(Parser yyp) { return new BinaryExpression_13(yyp); }
+public static object BinaryExpression_6_factory(Parser yyp) { return new BinaryExpression_6(yyp); }
+public static object BinaryExpression_7_factory(Parser yyp) { return new BinaryExpression_7(yyp); }
+public static object ArgumentList_factory(Parser yyp) { return new ArgumentList(yyp); }
+public static object Event_10_factory(Parser yyp) { return new Event_10(yyp); }
+public static object ConstantExpression_1_factory(Parser yyp) { return new ConstantExpression_1(yyp); }
+public static object Event_12_factory(Parser yyp) { return new Event_12(yyp); }
+public static object Event_14_factory(Parser yyp) { return new Event_14(yyp); }
+public static object Event_17_factory(Parser yyp) { return new Event_17(yyp); }
+public static object Event_18_factory(Parser yyp) { return new Event_18(yyp); }
+public static object Event_19_factory(Parser yyp) { return new Event_19(yyp); }
+public static object StateEvent_1_factory(Parser yyp) { return new StateEvent_1(yyp); }
+public static object VectorConstant_factory(Parser yyp) { return new VectorConstant(yyp); }
+public static object Event_21_factory(Parser yyp) { return new Event_21(yyp); }
+public static object Event_23_factory(Parser yyp) { return new Event_23(yyp); }
+public static object TypecastExpression_7_factory(Parser yyp) { return new TypecastExpression_7(yyp); }
+public static object FunctionCall_factory(Parser yyp) { return new FunctionCall(yyp); }
+public static object Event_27_factory(Parser yyp) { return new Event_27(yyp); }
+public static object Event_28_factory(Parser yyp) { return new Event_28(yyp); }
+public static object Event_29_factory(Parser yyp) { return new Event_29(yyp); }
+public static object ListConstant_1_factory(Parser yyp) { return new ListConstant_1(yyp); }
+public static object Declaration_1_factory(Parser yyp) { return new Declaration_1(yyp); }
+public static object ForLoop_factory(Parser yyp) { return new ForLoop(yyp); }
+public static object Event_30_factory(Parser yyp) { return new Event_30(yyp); }
+public static object Event_31_factory(Parser yyp) { return new Event_31(yyp); }
+public static object Event_33_factory(Parser yyp) { return new Event_33(yyp); }
+public static object GlobalFunctionDefinition_1_factory(Parser yyp) { return new GlobalFunctionDefinition_1(yyp); }
+public static object ArgumentList_4_factory(Parser yyp) { return new ArgumentList_4(yyp); }
+public static object IfStatement_factory(Parser yyp) { return new IfStatement(yyp); }
+public static object ForLoopStatement_1_factory(Parser yyp) { return new ForLoopStatement_1(yyp); }
+public static object ForLoopStatement_2_factory(Parser yyp) { return new ForLoopStatement_2(yyp); }
+public static object ForLoopStatement_3_factory(Parser yyp) { return new ForLoopStatement_3(yyp); }
+public static object ForLoopStatement_4_factory(Parser yyp) { return new ForLoopStatement_4(yyp); }
+public static object ArgumentDeclarationList_4_factory(Parser yyp) { return new ArgumentDeclarationList_4(yyp); }
+public static object ArgumentDeclarationList_5_factory(Parser yyp) { return new ArgumentDeclarationList_5(yyp); }
+public static object WhileStatement_factory(Parser yyp) { return new WhileStatement(yyp); }
+public static object ForLoop_1_factory(Parser yyp) { return new ForLoop_1(yyp); }
+public static object Constant_2_factory(Parser yyp) { return new Constant_2(yyp); }
+public static object StatementList_factory(Parser yyp) { return new StatementList(yyp); }
+public static object StateBody_2_factory(Parser yyp) { return new StateBody_2(yyp); }
+public static object IdentExpression_1_factory(Parser yyp) { return new IdentExpression_1(yyp); }
+public static object States_factory(Parser yyp) { return new States(yyp); }
+}
+public class LSLSyntax
+: Parser {
+public LSLSyntax
+():base(new yyLSLSyntax
+(),new LSLTokens()) {}
+public LSLSyntax
+(YyParser syms):base(syms,new LSLTokens()) {}
+public LSLSyntax
+(YyParser syms,ErrorHandler erh):base(syms,new LSLTokens(erh)) {}
+
+ }
--
cgit v1.1