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 0000000000..142e79129b --- /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 0d3c8c6e3a..022cae484b 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 0000000000..db40ace9fd --- /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 0000000000..dfd802a59f --- /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 0000000000..adcf90a290 --- /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)) {} + + } diff --git a/bin/Tools.dll b/bin/Tools.dll new file mode 100644 index 0000000000..073d04d2f8 Binary files /dev/null and b/bin/Tools.dll differ diff --git a/prebuild.xml b/prebuild.xml index 29c8a23a26..55f61a225c 100644 --- a/prebuild.xml +++ b/prebuild.xml @@ -1893,6 +1893,7 @@ +