diff --git a/CMakeLists.txt b/CMakeLists.txt index c5460e4b64c8b48fab4411759514a0e08c3a84cd..d5e2ea2bd7176dcabf4fdb1154ab87d402e4f627 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -235,6 +235,9 @@ if(ENABLE_OPENMP) endif(OPENMP_FOUND) endif(ENABLE_OPENMP) +# in more recent cmake, we could do e.g. set(CMAKE_CXX_STANDARD 11) +# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + macro(append_gmsh_src DIRNAME FILES) foreach(FILE ${FILES}) list(APPEND LIST ${DIRNAME}/${FILE}) diff --git a/Common/avl.cpp b/Common/avl.cpp index d50deb428a927ef06db0a7b24714dc396b3e8028..64678336c88257ffe8aee44ba02280b018e17279 100644 --- a/Common/avl.cpp +++ b/Common/avl.cpp @@ -8,18 +8,18 @@ * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of the University of California not - * be used in advertising or publicity pertaining to distribution of + * be used in advertising or publicity pertaining to distribution of * the software without specific, written prior permission. The University * of California makes no representations about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. * - * THE UNIVERSITY OF CALIFORNIA DISCLAIMS ALL WARRANTIES WITH REGARD TO - * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + * THE UNIVERSITY OF CALIFORNIA DISCLAIMS ALL WARRANTIES WITH REGARD TO + * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND * FITNESS, IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE FOR * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ @@ -57,7 +57,7 @@ static avl_node *find_rightmost(avl_node **node_p); static void do_rebalance(avl_node ***stack_nodep, int stack_n); static void rotate_left(avl_node **node_p); static void rotate_right(avl_node **node_p); -static void free_entry(avl_node *node, void (*key_free)(void *key), +static void free_entry(avl_node *node, void (*key_free)(void *key), void (*value_free)(void *value)); static avl_node *new_node(void *key, void *value); static int do_check_tree(avl_node *node, int (*compar)(const void *key1, const void *key2), @@ -77,8 +77,8 @@ avl_tree *avl_init_table(int (*compar)(const void *key1, const void *key2)) int avl_lookup(avl_tree *tree, void *key, void **value_p) { - register avl_node *node; - register int (*compare)(const void*, const void *) = tree->compar, diff; + avl_node *node; + int (*compare)(const void*, const void *) = tree->compar, diff; node = tree->root; while (node != NIL(avl_node)) { @@ -95,9 +95,9 @@ int avl_lookup(avl_tree *tree, void *key, void **value_p) int avl_insert(avl_tree *tree, void *key, void *value) { - register avl_node **node_p, *node; - register int stack_n = 0; - register int (*compare)(const void*, const void *) = tree->compar; + avl_node **node_p, *node; + int stack_n = 0; + int (*compare)(const void*, const void *) = tree->compar; avl_node **stack_nodep[32]; int diff, status; @@ -122,12 +122,12 @@ int avl_insert(avl_tree *tree, void *key, void *value) int avl_delete(avl_tree *tree, void **key_p, void **value_p) { - register avl_node **node_p, *node, *rightmost; - register int stack_n = 0; + avl_node **node_p, *node, *rightmost; + int stack_n = 0; void *key = *key_p; int (*compare)(const void*, const void*) = tree->compar, diff; avl_node **stack_nodep[32]; - + node_p = &tree->root; /* Walk down the tree saving the path; return if not found */ @@ -223,8 +223,8 @@ void avl_free_gen(avl_generator *gen) static avl_node *find_rightmost(avl_node **node_p) { - register avl_node *node; - register int stack_n = 0; + avl_node *node; + int stack_n = 0; avl_node **stack_nodep[32]; node = *node_p; @@ -241,8 +241,8 @@ static avl_node *find_rightmost(avl_node **node_p) static void do_rebalance(avl_node ***stack_nodep, int stack_n) { - register avl_node **node_p, *node; - register int hl, hr; + avl_node **node_p, *node; + int hl, hr; int height; /* work our way back up, re-balancing the tree */ @@ -265,7 +265,7 @@ static void do_rebalance(avl_node ***stack_nodep, int stack_n) static void rotate_left(avl_node **node_p) { - register avl_node *old_root = *node_p, *new_root, *new_right; + avl_node *old_root = *node_p, *new_root, *new_right; if (BALANCE(old_root->right) >= 0) { *node_p = new_root = old_root->right; @@ -286,7 +286,7 @@ static void rotate_left(avl_node **node_p) static void rotate_right(avl_node **node_p) { - register avl_node *old_root = *node_p, *new_root, *new_left; + avl_node *old_root = *node_p, *new_root, *new_left; if (BALANCE(old_root->left) <= 0) { *node_p = new_root = old_root->left; @@ -308,16 +308,16 @@ static void rotate_right(avl_node **node_p) int avl_extremum(avl_tree *tree, int side, void **value_p) { - register avl_node *node; + avl_node *node; node = tree->root; if (node == NIL(avl_node)) return 0; - if (side == AVL_MOST_LEFT) + if (side == AVL_MOST_LEFT) while (node->left != NIL(avl_node)) node = node->left; else while (node->right != NIL(avl_node)) node = node->right; - + if (value_p != NIL(void *)) { *value_p = node->value; return 1; @@ -335,7 +335,7 @@ static void free_entry(avl_node *node, void (*key_free)(void *key), void (*value FREE(node); } } - + void avl_free_table(avl_tree *tree, void (*key_free)(void *key), void (*value_free)(void *value)) { free_entry(tree->root, key_free, value_free); @@ -349,7 +349,7 @@ int avl_count(avl_tree *tree) static avl_node *new_node(void *key, void *value) { - register avl_node *newn; + avl_node *newn; newn = ALLOC(avl_node, 1); newn->key = key; @@ -371,11 +371,11 @@ int avl_check_tree(avl_tree *tree) return error; } -static int do_check_tree(avl_node *node, +static int do_check_tree(avl_node *node, int (*compar)(const void *key1, const void *key2), int *error) { int l_height, r_height, comp_height, bal; - + if (node == NIL(avl_node)) { return -1; } @@ -385,7 +385,7 @@ static int do_check_tree(avl_node *node, comp_height = XRNMAX(l_height, r_height) + 1; bal = r_height - l_height; - + if (comp_height != node->height) { (void) printf("Bad height for %p: computed=%d stored=%d\n", (void*)node, comp_height, node->height); @@ -393,21 +393,21 @@ static int do_check_tree(avl_node *node, } if (bal > 1 || bal < -1) { - (void) printf("Out of balance at node %p, balance = %d\n", + (void) printf("Out of balance at node %p, balance = %d\n", (void*)node, bal); ++*error; } - if (node->left != NIL(avl_node) && + if (node->left != NIL(avl_node) && (*compar)(node->left->key, node->key) > 0) { - (void) printf("Bad ordering between %p and %p", + (void) printf("Bad ordering between %p and %p", (void*)node, (void*)node->left); ++*error; } - - if (node->right != NIL(avl_node) && + + if (node->right != NIL(avl_node) && (*compar)(node->key, node->right->key) > 0) { - (void) printf("Bad ordering between %p and %p", + (void) printf("Bad ordering between %p and %p", (void*)node, (void*)node->right); ++*error; } diff --git a/Geo/GModelIO_OCC.cpp b/Geo/GModelIO_OCC.cpp index 59f7f057ea8798235ee24c4e260c3818e0694c9f..a658659758491d6afa8a512f9ebdd65211933149 100644 --- a/Geo/GModelIO_OCC.cpp +++ b/Geo/GModelIO_OCC.cpp @@ -14,6 +14,7 @@ #include "MElement.h" #include "MLine.h" #include "OpenFile.h" +#include "StringUtils.h" #include "OCC_Connect.h" #if defined(HAVE_OCC) @@ -314,6 +315,45 @@ void OCC_Internals::addThruSections(int tag, std::vector<int> wireTags) bind(result, tag); } +void OCC_Internals::importShape(const std::string &fileName, + std::vector<int> outTags[4]) +{ + std::vector<std::string> split = SplitFileName(fileName); + TopoDS_Shape result; + try{ + if(split[2] == ".brep" || split[2] == ".BREP"){ + BRep_Builder aBuilder; + BRepTools::Read(result, fileName.c_str(), aBuilder); + } + else if(split[2] == ".step" || split[2] == ".stp" || + split[2] == ".STEP" || split[2] == ".STP"){ + STEPControl_Reader reader; + reader.ReadFile(fileName.c_str()); + reader.NbRootsForTransfer(); + reader.TransferRoots(); + result = reader.OneShape(); + } + else{ + Msg::Error("Unknown file type '%s'", fileName.c_str()); + return; + } + BRepTools::Clean(result); + // FIXME: apply healing routine on result? + } + catch(Standard_Failure &err){ + Msg::Error("OpenCASCADE exception %s", err.GetMessageString()); + return; + } + + TopExp_Explorer exp0; + for(exp0.Init(result, TopAbs_SOLID); exp0.More(); exp0.Next()){ + int t = getMaxTag(3) + 1; + bind(TopoDS::Solid(exp0.Current()), t); + outTags[3].push_back(t); + } + // FIXME: if no solids, return faces, etc. +} + void OCC_Internals::applyBooleanOperator(int tag, BooleanOperator op, std::vector<int> objectTags[4], std::vector<int> toolTags[4], @@ -579,6 +619,18 @@ void OCC_Internals::getBoundary(std::vector<int> inTags[4], } } +/* +void OCC_Internals::translate(std::std::vector<double> dx, int addToTheModel) +{ + gp_Trsf transformation; + transformation.SetTranslation(gp_Pnt(0,0,0), gp_Pnt(dx[0],dx[1],dx[2])); + BRepBuilderAPI_Transform aTransformation(gm->_occ_internals->getShape(), + transformation, Standard_False); + TopoDS_Shape temp = aTransformation.Shape(); + +} +*/ + void OCC_Internals::_addShapeToMaps(TopoDS_Shape shape) { // Solids diff --git a/Geo/GModelIO_OCC.h b/Geo/GModelIO_OCC.h index 895c69ac7f91da5ee3fdc7bbea473e6bad87871d..072bb1b9d0060833882b880a4d1bf8154fbf4348 100644 --- a/Geo/GModelIO_OCC.h +++ b/Geo/GModelIO_OCC.h @@ -74,6 +74,9 @@ class OCC_Internals { double x2, double y2, double z2, double r); void addThruSections(int tag, std::vector<int> wireTags); + // import shape from file + void importShape(const std::string &fileName, std::vector<int> outTags[4]); + // apply boolean operation void applyBooleanOperator(int tag, BooleanOperator op, std::vector<int> shapeTags[4], @@ -206,7 +209,7 @@ public: void addCylinder(int tag, double x1, double y1, double z1, double x2, double y2, double z2, double r){} void addThruSections(int tag, std::vector<int> wireTags){} - void importOCCInternals(GModel *model){} + void importShape(const std::string &fileName, std::vector<int> outTags[4]){} void applyBooleanOperator(int tag, BooleanOperator op, std::vector<int> shapeTags[4], std::vector<int> toolTags[4], @@ -215,6 +218,7 @@ public: bool removeTool=true){} void getBoundary(std::vector<int> inTags[4], std::vector<int> outTags[4], bool combined=false){} + void importOCCInternals(GModel *model){} }; #endif diff --git a/Graphics/gl2gif.cpp b/Graphics/gl2gif.cpp index df677384e36c94b64bab579886dea0ccfc88e400..c241f3a739c3a988efc6839b4b000a1d443b48b4 100644 --- a/Graphics/gl2gif.cpp +++ b/Graphics/gl2gif.cpp @@ -127,8 +127,8 @@ static colorhash_table ppm_computecolorhash(pixel ** const pixels, static int ppm_addtocolorhash(colorhash_table cht, const pixel * const colorP, const int value) { - register int hash; - register colorhist_list chl; + int hash; + colorhist_list chl; chl = (colorhist_list) Malloc(sizeof(struct colorhist_list_item)); hash = ppm_hashpixel(*colorP); @@ -343,7 +343,7 @@ static colorhist_vector mediancut(colorhist_vector chv, int colors, { colorhist_vector colormap; box_vector bv; - register int bi, i; + int bi, i; int boxes; bv = (box_vector) malloc(sizeof(struct box) * newcolors); @@ -366,9 +366,9 @@ static colorhist_vector mediancut(colorhist_vector chv, int colors, * Main loop: split boxes until we have enough. */ while(boxes < newcolors) { - register int indx, clrs; + int indx, clrs; int sm; - register int minr, maxr, ming, maxg, minb, maxb, v; + int minr, maxr, ming, maxg, minb, maxb, v; int halfsum, lowersum; /* @@ -487,9 +487,9 @@ static colorhist_vector mediancut(colorhist_vector chv, int colors, for(bi = 0; bi < boxes; ++bi) { #ifdef REP_CENTER_BOX - register int indx = bv[bi].ind; - register int clrs = bv[bi].colors; - register int minr, maxr, ming, maxg, minb, maxb, v; + int indx = bv[bi].ind; + int clrs = bv[bi].colors; + int minr, maxr, ming, maxg, minb, maxb, v; minr = maxr = PPM_GETR(chv[indx].color); ming = maxg = PPM_GETG(chv[indx].color); @@ -510,9 +510,9 @@ static colorhist_vector mediancut(colorhist_vector chv, int colors, #endif #ifdef REP_AVERAGE_COLORS - register int indx = bv[bi].ind; - register int clrs = bv[bi].colors; - register long r = 0, g = 0, b = 0; + int indx = bv[bi].ind; + int clrs = bv[bi].colors; + long r = 0, g = 0, b = 0; for(i = 0; i < clrs; ++i) { r += PPM_GETR(chv[indx + i].color); @@ -526,9 +526,9 @@ static colorhist_vector mediancut(colorhist_vector chv, int colors, #endif #ifdef REP_AVERAGE_PIXELS - register int indx = bv[bi].ind; - register int clrs = bv[bi].colors; - register long r = 0, g = 0, b = 0, sum = 0; + int indx = bv[bi].ind; + int clrs = bv[bi].colors; + long r = 0, g = 0, b = 0, sum = 0; for(i = 0; i < clrs; ++i) { r += PPM_GETR(chv[indx + i].color) * chv[indx + i].value; @@ -835,12 +835,12 @@ static void output(code_int code) * questions about this implementation to ames!jaw. */ -static void cl_hash(register count_int hsize) +static void cl_hash(count_int hsize) { /* reset code table */ - register count_int *htab_p = htab + hsize; + count_int *htab_p = htab + hsize; - register long i; - register long m1 = -1; + long i; + long m1 = -1; i = hsize - 16; do { /* might use Sys V memset(3) here */ @@ -883,13 +883,13 @@ static void cl_block() static void compress(int init_bits, FILE * outfile, ifunptr ReadValue) { - register long fcode; - register code_int i /* = 0 */ ; - register int c; - register code_int ent; - register code_int disp; - register code_int hsize_reg; - register int hshift; + long fcode; + code_int i /* = 0 */ ; + int c; + code_int ent; + code_int disp; + code_int hsize_reg; + int hshift; /* * Set up the globals: g_init_bits - initial number of bits @@ -1157,12 +1157,12 @@ void create_gif(FILE * outfile, PixelBuffer *buffer, int BitsPerPixel, usehash; pixval maxval = MAXCOL2, newmaxval; colorhash_table cht; - register pixel *pP; - register int col, row, limitcol, ind; + pixel *pP; + int col, row, limitcol, ind; int newcolors = 256; long *thisrerr = NULL, *nextrerr = NULL, *thisgerr = NULL, *nextgerr = NULL; long *thisberr = NULL, *nextberr = NULL, *temperr = NULL; - register long sr = 0, sg = 0, sb = 0, err = 0; + long sr = 0, sg = 0, sb = 0, err = 0; int fs_direction = 0; int width = buffer->getWidth(); @@ -1290,8 +1290,8 @@ void create_gif(FILE * outfile, PixelBuffer *buffer, /* Check hash table to see if we have already matched this color. */ ind = ppm_lookupcolor(cht, pP); if(ind == -1) { /* No; search colormap for closest match. */ - register int i, r1, g1, b1, r2, g2, b2; - register long dist, newdist; + int i, r1, g1, b1, r2, g2, b2; + long dist, newdist; r1 = PPM_GETR(*pP); g1 = PPM_GETG(*pP); b1 = PPM_GETB(*pP); diff --git a/Graphics/gl2yuv.cpp b/Graphics/gl2yuv.cpp index b5b5934a0d89e6b16a517ce11a61b96f6abdba33..87b57f1d213c825fbd8101f34999c45bd9233fc5 100644 --- a/Graphics/gl2yuv.cpp +++ b/Graphics/gl2yuv.cpp @@ -8,7 +8,7 @@ * Software Encoder (Version 1.5; February 1, 1995), by Lawrence * A. Rowe, Kevin Gong, Eugene Hung, Ketan Patel, Steve Smoot and Dan * Wallach Computer Science Division-EECS, Univ. of Calif. at Berkeley - * + * * Copyright (c) 1995 The Regents of the University of California. * All rights reserved. * @@ -39,11 +39,11 @@ void create_yuv(FILE * outfile, PixelBuffer *buffer) return; } - register int x, y; - register unsigned char *dy0, *dy1; - register unsigned char *dcr, *dcb; - register unsigned char *src0, *src1; - register int cdivisor; + int x, y; + unsigned char *dy0, *dy1; + unsigned char *dcr, *dcb; + unsigned char *src0, *src1; + int cdivisor; static int first = 1; static float mult299[1024], mult587[1024], mult114[1024]; @@ -53,8 +53,8 @@ void create_yuv(FILE * outfile, PixelBuffer *buffer) unsigned char **orig_y, **orig_cr, **orig_cb; if(first) { - register int index; - register int maxValue; + int index; + int maxValue; maxValue = 255; @@ -75,7 +75,7 @@ void create_yuv(FILE * outfile, PixelBuffer *buffer) int width = buffer->getWidth(); int height = buffer->getHeight(); unsigned char *pixels = (unsigned char *)buffer->getPixels(); - + // yuv format assumes even number of rows and columns height -= height % 2; width -= width % 2; diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index a48b37fbca697a4ae2c65629390db2213209b7af..c3dea9e021cf9d03bb8b322f7374462298e426a7 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -267,6 +267,7 @@ Reverse return tReverse; ScaleLastLayer return tScaleLast; Smoother return tSmoother; +ShapeFromFile return tShapeFromFile; SetFactory return tSetFactory; SetNumber return tSetNumber; SetString return tSetString; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index ad0cab67913809545767da0d2bb1c79364804246..212d5105193f89be8fcdce1d5c5dfa9693569723 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -169,116 +169,117 @@ tCone = 350, tEllipsoid = 351, tQuadric = 352, - tCharacteristic = 353, - tLength = 354, - tParametric = 355, - tElliptic = 356, - tRefineMesh = 357, - tAdaptMesh = 358, - tRelocateMesh = 359, - tSetFactory = 360, - tThruSections = 361, - tPlane = 362, - tRuled = 363, - tTransfinite = 364, - tComplex = 365, - tPhysical = 366, - tCompound = 367, - tPeriodic = 368, - tUsing = 369, - tPlugin = 370, - tDegenerated = 371, - tRecursive = 372, - tRotate = 373, - tTranslate = 374, - tSymmetry = 375, - tDilate = 376, - tExtrude = 377, - tLevelset = 378, - tAffine = 379, - tBooleanUnion = 380, - tBooleanIntersection = 381, - tBooleanDifference = 382, - tBooleanSection = 383, - tBooleanFragments = 384, - tRecombine = 385, - tSmoother = 386, - tSplit = 387, - tDelete = 388, - tCoherence = 389, - tIntersect = 390, - tMeshAlgorithm = 391, - tReverse = 392, - tLayers = 393, - tScaleLast = 394, - tHole = 395, - tAlias = 396, - tAliasWithOptions = 397, - tCopyOptions = 398, - tQuadTriAddVerts = 399, - tQuadTriNoNewVerts = 400, - tQuadTriSngl = 401, - tQuadTriDbl = 402, - tRecombLaterals = 403, - tTransfQuadTri = 404, - tText2D = 405, - tText3D = 406, - tInterpolationScheme = 407, - tTime = 408, - tCombine = 409, - tBSpline = 410, - tBezier = 411, - tNurbs = 412, - tNurbsOrder = 413, - tNurbsKnots = 414, - tColor = 415, - tColorTable = 416, - tFor = 417, - tIn = 418, - tEndFor = 419, - tIf = 420, - tElseIf = 421, - tElse = 422, - tEndIf = 423, - tExit = 424, - tAbort = 425, - tField = 426, - tReturn = 427, - tCall = 428, - tSlide = 429, - tMacro = 430, - tShow = 431, - tHide = 432, - tGetValue = 433, - tGetStringValue = 434, - tGetEnv = 435, - tGetString = 436, - tGetNumber = 437, - tHomology = 438, - tCohomology = 439, - tBetti = 440, - tExists = 441, - tFileExists = 442, - tGMSH_MAJOR_VERSION = 443, - tGMSH_MINOR_VERSION = 444, - tGMSH_PATCH_VERSION = 445, - tGmshExecutableName = 446, - tSetPartition = 447, - tNameToString = 448, - tStringToName = 449, - tAFFECTDIVIDE = 450, - tAFFECTTIMES = 451, - tAFFECTMINUS = 452, - tAFFECTPLUS = 453, - tOR = 454, - tAND = 455, - tNOTEQUAL = 456, - tEQUAL = 457, - tGREATEROREQUAL = 458, - tLESSOREQUAL = 459, - UNARYPREC = 460, - tMINUSMINUS = 461, - tPLUSPLUS = 462 + tShapeFromFile = 353, + tCharacteristic = 354, + tLength = 355, + tParametric = 356, + tElliptic = 357, + tRefineMesh = 358, + tAdaptMesh = 359, + tRelocateMesh = 360, + tSetFactory = 361, + tThruSections = 362, + tPlane = 363, + tRuled = 364, + tTransfinite = 365, + tComplex = 366, + tPhysical = 367, + tCompound = 368, + tPeriodic = 369, + tUsing = 370, + tPlugin = 371, + tDegenerated = 372, + tRecursive = 373, + tRotate = 374, + tTranslate = 375, + tSymmetry = 376, + tDilate = 377, + tExtrude = 378, + tLevelset = 379, + tAffine = 380, + tBooleanUnion = 381, + tBooleanIntersection = 382, + tBooleanDifference = 383, + tBooleanSection = 384, + tBooleanFragments = 385, + tRecombine = 386, + tSmoother = 387, + tSplit = 388, + tDelete = 389, + tCoherence = 390, + tIntersect = 391, + tMeshAlgorithm = 392, + tReverse = 393, + tLayers = 394, + tScaleLast = 395, + tHole = 396, + tAlias = 397, + tAliasWithOptions = 398, + tCopyOptions = 399, + tQuadTriAddVerts = 400, + tQuadTriNoNewVerts = 401, + tQuadTriSngl = 402, + tQuadTriDbl = 403, + tRecombLaterals = 404, + tTransfQuadTri = 405, + tText2D = 406, + tText3D = 407, + tInterpolationScheme = 408, + tTime = 409, + tCombine = 410, + tBSpline = 411, + tBezier = 412, + tNurbs = 413, + tNurbsOrder = 414, + tNurbsKnots = 415, + tColor = 416, + tColorTable = 417, + tFor = 418, + tIn = 419, + tEndFor = 420, + tIf = 421, + tElseIf = 422, + tElse = 423, + tEndIf = 424, + tExit = 425, + tAbort = 426, + tField = 427, + tReturn = 428, + tCall = 429, + tSlide = 430, + tMacro = 431, + tShow = 432, + tHide = 433, + tGetValue = 434, + tGetStringValue = 435, + tGetEnv = 436, + tGetString = 437, + tGetNumber = 438, + tHomology = 439, + tCohomology = 440, + tBetti = 441, + tExists = 442, + tFileExists = 443, + tGMSH_MAJOR_VERSION = 444, + tGMSH_MINOR_VERSION = 445, + tGMSH_PATCH_VERSION = 446, + tGmshExecutableName = 447, + tSetPartition = 448, + tNameToString = 449, + tStringToName = 450, + tAFFECTDIVIDE = 451, + tAFFECTTIMES = 452, + tAFFECTMINUS = 453, + tAFFECTPLUS = 454, + tOR = 455, + tAND = 456, + tNOTEQUAL = 457, + tEQUAL = 458, + tGREATEROREQUAL = 459, + tLESSOREQUAL = 460, + UNARYPREC = 461, + tMINUSMINUS = 462, + tPLUSPLUS = 463 }; #endif /* Tokens. */ @@ -377,116 +378,117 @@ #define tCone 350 #define tEllipsoid 351 #define tQuadric 352 -#define tCharacteristic 353 -#define tLength 354 -#define tParametric 355 -#define tElliptic 356 -#define tRefineMesh 357 -#define tAdaptMesh 358 -#define tRelocateMesh 359 -#define tSetFactory 360 -#define tThruSections 361 -#define tPlane 362 -#define tRuled 363 -#define tTransfinite 364 -#define tComplex 365 -#define tPhysical 366 -#define tCompound 367 -#define tPeriodic 368 -#define tUsing 369 -#define tPlugin 370 -#define tDegenerated 371 -#define tRecursive 372 -#define tRotate 373 -#define tTranslate 374 -#define tSymmetry 375 -#define tDilate 376 -#define tExtrude 377 -#define tLevelset 378 -#define tAffine 379 -#define tBooleanUnion 380 -#define tBooleanIntersection 381 -#define tBooleanDifference 382 -#define tBooleanSection 383 -#define tBooleanFragments 384 -#define tRecombine 385 -#define tSmoother 386 -#define tSplit 387 -#define tDelete 388 -#define tCoherence 389 -#define tIntersect 390 -#define tMeshAlgorithm 391 -#define tReverse 392 -#define tLayers 393 -#define tScaleLast 394 -#define tHole 395 -#define tAlias 396 -#define tAliasWithOptions 397 -#define tCopyOptions 398 -#define tQuadTriAddVerts 399 -#define tQuadTriNoNewVerts 400 -#define tQuadTriSngl 401 -#define tQuadTriDbl 402 -#define tRecombLaterals 403 -#define tTransfQuadTri 404 -#define tText2D 405 -#define tText3D 406 -#define tInterpolationScheme 407 -#define tTime 408 -#define tCombine 409 -#define tBSpline 410 -#define tBezier 411 -#define tNurbs 412 -#define tNurbsOrder 413 -#define tNurbsKnots 414 -#define tColor 415 -#define tColorTable 416 -#define tFor 417 -#define tIn 418 -#define tEndFor 419 -#define tIf 420 -#define tElseIf 421 -#define tElse 422 -#define tEndIf 423 -#define tExit 424 -#define tAbort 425 -#define tField 426 -#define tReturn 427 -#define tCall 428 -#define tSlide 429 -#define tMacro 430 -#define tShow 431 -#define tHide 432 -#define tGetValue 433 -#define tGetStringValue 434 -#define tGetEnv 435 -#define tGetString 436 -#define tGetNumber 437 -#define tHomology 438 -#define tCohomology 439 -#define tBetti 440 -#define tExists 441 -#define tFileExists 442 -#define tGMSH_MAJOR_VERSION 443 -#define tGMSH_MINOR_VERSION 444 -#define tGMSH_PATCH_VERSION 445 -#define tGmshExecutableName 446 -#define tSetPartition 447 -#define tNameToString 448 -#define tStringToName 449 -#define tAFFECTDIVIDE 450 -#define tAFFECTTIMES 451 -#define tAFFECTMINUS 452 -#define tAFFECTPLUS 453 -#define tOR 454 -#define tAND 455 -#define tNOTEQUAL 456 -#define tEQUAL 457 -#define tGREATEROREQUAL 458 -#define tLESSOREQUAL 459 -#define UNARYPREC 460 -#define tMINUSMINUS 461 -#define tPLUSPLUS 462 +#define tShapeFromFile 353 +#define tCharacteristic 354 +#define tLength 355 +#define tParametric 356 +#define tElliptic 357 +#define tRefineMesh 358 +#define tAdaptMesh 359 +#define tRelocateMesh 360 +#define tSetFactory 361 +#define tThruSections 362 +#define tPlane 363 +#define tRuled 364 +#define tTransfinite 365 +#define tComplex 366 +#define tPhysical 367 +#define tCompound 368 +#define tPeriodic 369 +#define tUsing 370 +#define tPlugin 371 +#define tDegenerated 372 +#define tRecursive 373 +#define tRotate 374 +#define tTranslate 375 +#define tSymmetry 376 +#define tDilate 377 +#define tExtrude 378 +#define tLevelset 379 +#define tAffine 380 +#define tBooleanUnion 381 +#define tBooleanIntersection 382 +#define tBooleanDifference 383 +#define tBooleanSection 384 +#define tBooleanFragments 385 +#define tRecombine 386 +#define tSmoother 387 +#define tSplit 388 +#define tDelete 389 +#define tCoherence 390 +#define tIntersect 391 +#define tMeshAlgorithm 392 +#define tReverse 393 +#define tLayers 394 +#define tScaleLast 395 +#define tHole 396 +#define tAlias 397 +#define tAliasWithOptions 398 +#define tCopyOptions 399 +#define tQuadTriAddVerts 400 +#define tQuadTriNoNewVerts 401 +#define tQuadTriSngl 402 +#define tQuadTriDbl 403 +#define tRecombLaterals 404 +#define tTransfQuadTri 405 +#define tText2D 406 +#define tText3D 407 +#define tInterpolationScheme 408 +#define tTime 409 +#define tCombine 410 +#define tBSpline 411 +#define tBezier 412 +#define tNurbs 413 +#define tNurbsOrder 414 +#define tNurbsKnots 415 +#define tColor 416 +#define tColorTable 417 +#define tFor 418 +#define tIn 419 +#define tEndFor 420 +#define tIf 421 +#define tElseIf 422 +#define tElse 423 +#define tEndIf 424 +#define tExit 425 +#define tAbort 426 +#define tField 427 +#define tReturn 428 +#define tCall 429 +#define tSlide 430 +#define tMacro 431 +#define tShow 432 +#define tHide 433 +#define tGetValue 434 +#define tGetStringValue 435 +#define tGetEnv 436 +#define tGetString 437 +#define tGetNumber 438 +#define tHomology 439 +#define tCohomology 440 +#define tBetti 441 +#define tExists 442 +#define tFileExists 443 +#define tGMSH_MAJOR_VERSION 444 +#define tGMSH_MINOR_VERSION 445 +#define tGMSH_PATCH_VERSION 446 +#define tGmshExecutableName 447 +#define tSetPartition 448 +#define tNameToString 449 +#define tStringToName 450 +#define tAFFECTDIVIDE 451 +#define tAFFECTTIMES 452 +#define tAFFECTMINUS 453 +#define tAFFECTPLUS 454 +#define tOR 455 +#define tAND 456 +#define tNOTEQUAL 457 +#define tEQUAL 458 +#define tGREATEROREQUAL 459 +#define tLESSOREQUAL 460 +#define UNARYPREC 461 +#define tMINUSMINUS 462 +#define tPLUSPLUS 463 @@ -640,7 +642,7 @@ typedef union YYSTYPE List_T *l; } /* Line 193 of yacc.c. */ -#line 644 "Gmsh.tab.cpp" +#line 646 "Gmsh.tab.cpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -653,7 +655,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 657 "Gmsh.tab.cpp" +#line 659 "Gmsh.tab.cpp" #ifdef short # undef short @@ -868,20 +870,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 13262 +#define YYLAST 13561 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 228 +#define YYNTOKENS 229 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 105 /* YYNRULES -- Number of rules. */ -#define YYNRULES 584 +#define YYNRULES 585 /* YYNRULES -- Number of states. */ -#define YYNSTATES 2148 +#define YYNSTATES 2152 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 462 +#define YYMAXUTOK 463 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -892,16 +894,16 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 213, 2, 223, 2, 212, 2, 2, - 218, 219, 210, 208, 224, 209, 222, 211, 2, 2, + 2, 2, 2, 214, 2, 224, 2, 213, 2, 2, + 219, 220, 211, 209, 225, 210, 223, 212, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 204, 2, 205, 199, 2, 2, 2, 2, 2, 2, + 205, 2, 206, 200, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 220, 2, 221, 217, 2, 2, 2, 2, 2, + 2, 221, 2, 222, 218, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 225, 2, 226, 227, 2, 2, 2, + 2, 2, 2, 226, 2, 227, 228, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -934,8 +936,8 @@ static const yytype_uint8 yytranslate[] = 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 200, 201, 202, 203, 206, 207, - 214, 215, 216 + 195, 196, 197, 198, 199, 201, 202, 203, 204, 207, + 208, 215, 216, 217 }; #if YYDEBUG @@ -977,377 +979,378 @@ static const yytype_uint16 yyprhs[] = 1931, 1932, 1949, 1950, 1967, 1968, 1987, 1988, 2007, 2008, 2027, 2029, 2032, 2038, 2046, 2056, 2059, 2062, 2066, 2069, 2073, 2076, 2080, 2083, 2087, 2090, 2094, 2104, 2111, 2113, - 2115, 2117, 2119, 2121, 2122, 2125, 2129, 2139, 2154, 2155, - 2159, 2160, 2162, 2163, 2166, 2167, 2170, 2171, 2174, 2182, - 2189, 2198, 2204, 2208, 2217, 2223, 2228, 2235, 2247, 2259, - 2278, 2297, 2310, 2323, 2336, 2347, 2358, 2369, 2380, 2391, - 2396, 2401, 2406, 2411, 2416, 2419, 2423, 2430, 2432, 2434, - 2436, 2439, 2445, 2453, 2464, 2466, 2470, 2473, 2476, 2479, - 2483, 2487, 2491, 2495, 2499, 2503, 2507, 2511, 2515, 2519, - 2523, 2527, 2531, 2535, 2541, 2546, 2551, 2556, 2561, 2566, - 2571, 2576, 2581, 2586, 2591, 2598, 2603, 2608, 2613, 2618, - 2623, 2628, 2633, 2640, 2647, 2654, 2659, 2661, 2663, 2665, - 2667, 2669, 2671, 2673, 2675, 2677, 2679, 2681, 2682, 2689, - 2694, 2701, 2703, 2708, 2713, 2718, 2723, 2728, 2733, 2738, - 2741, 2747, 2753, 2759, 2765, 2769, 2776, 2781, 2789, 2796, - 2803, 2810, 2815, 2822, 2827, 2829, 2832, 2835, 2839, 2843, - 2855, 2865, 2873, 2881, 2883, 2887, 2889, 2891, 2894, 2898, - 2903, 2909, 2911, 2913, 2916, 2920, 2924, 2930, 2935, 2938, - 2941, 2944, 2947, 2951, 2955, 2959, 2963, 2969, 2975, 2981, - 2987, 3004, 3021, 3038, 3055, 3057, 3059, 3061, 3065, 3069, - 3074, 3079, 3084, 3091, 3098, 3105, 3112, 3121, 3130, 3135, - 3150, 3152, 3154, 3158, 3162, 3172, 3180, 3182, 3188, 3192, - 3199, 3201, 3205, 3207, 3209, 3214, 3219, 3224, 3229, 3233, - 3240, 3242, 3247, 3249, 3251, 3253, 3258, 3265, 3270, 3277, - 3282, 3287, 3292, 3301, 3306, 3311, 3316, 3321, 3330, 3339, - 3346, 3351, 3358, 3363, 3365, 3370, 3375, 3376, 3383, 3385, - 3389, 3395, 3401, 3403, 3405 + 2115, 2117, 2119, 2121, 2122, 2125, 2129, 2139, 2144, 2159, + 2160, 2164, 2165, 2167, 2168, 2171, 2172, 2175, 2176, 2179, + 2187, 2194, 2203, 2209, 2213, 2222, 2228, 2233, 2240, 2252, + 2264, 2283, 2302, 2315, 2328, 2341, 2352, 2363, 2374, 2385, + 2396, 2401, 2406, 2411, 2416, 2421, 2424, 2428, 2435, 2437, + 2439, 2441, 2444, 2450, 2458, 2469, 2471, 2475, 2478, 2481, + 2484, 2488, 2492, 2496, 2500, 2504, 2508, 2512, 2516, 2520, + 2524, 2528, 2532, 2536, 2540, 2546, 2551, 2556, 2561, 2566, + 2571, 2576, 2581, 2586, 2591, 2596, 2603, 2608, 2613, 2618, + 2623, 2628, 2633, 2638, 2645, 2652, 2659, 2664, 2666, 2668, + 2670, 2672, 2674, 2676, 2678, 2680, 2682, 2684, 2686, 2687, + 2694, 2699, 2706, 2708, 2713, 2718, 2723, 2728, 2733, 2738, + 2743, 2746, 2752, 2758, 2764, 2770, 2774, 2781, 2786, 2794, + 2801, 2808, 2815, 2820, 2827, 2832, 2834, 2837, 2840, 2844, + 2848, 2860, 2870, 2878, 2886, 2888, 2892, 2894, 2896, 2899, + 2903, 2908, 2914, 2916, 2918, 2921, 2925, 2929, 2935, 2940, + 2943, 2946, 2949, 2952, 2956, 2960, 2964, 2968, 2974, 2980, + 2986, 2992, 3009, 3026, 3043, 3060, 3062, 3064, 3066, 3070, + 3074, 3079, 3084, 3089, 3096, 3103, 3110, 3117, 3126, 3135, + 3140, 3155, 3157, 3159, 3163, 3167, 3177, 3185, 3187, 3193, + 3197, 3204, 3206, 3210, 3212, 3214, 3219, 3224, 3229, 3234, + 3238, 3245, 3247, 3252, 3254, 3256, 3258, 3263, 3270, 3275, + 3282, 3287, 3292, 3297, 3306, 3311, 3316, 3321, 3326, 3335, + 3344, 3351, 3356, 3363, 3368, 3370, 3375, 3380, 3381, 3388, + 3390, 3394, 3400, 3406, 3408, 3410 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 229, 0, -1, 230, -1, 1, 6, -1, -1, 230, - 231, -1, 234, -1, 233, -1, 254, -1, 273, -1, - 274, -1, 278, -1, 279, -1, 280, -1, 281, -1, - 285, -1, 303, -1, 304, -1, 310, -1, 311, -1, - 284, -1, 283, -1, 282, -1, 277, -1, 313, -1, - 205, -1, 205, 205, -1, 42, 218, 327, 219, 6, - -1, 43, 218, 327, 219, 6, -1, 42, 218, 327, - 219, 232, 327, 6, -1, 42, 218, 327, 224, 323, - 219, 6, -1, 43, 218, 327, 224, 323, 219, 6, - -1, 42, 218, 327, 224, 323, 219, 232, 327, 6, - -1, 4, 327, 225, 235, 226, 6, -1, 141, 4, - 220, 314, 221, 6, -1, 142, 4, 220, 314, 221, - 6, -1, 143, 4, 220, 314, 224, 314, 221, 6, - -1, -1, 235, 238, -1, 235, 242, -1, 235, 245, - -1, 235, 247, -1, 235, 248, -1, 314, -1, 236, - 224, 314, -1, 314, -1, 237, 224, 314, -1, -1, - -1, 4, 239, 218, 236, 219, 240, 225, 237, 226, - 6, -1, 327, -1, 241, 224, 327, -1, -1, 150, - 218, 314, 224, 314, 224, 314, 219, 243, 225, 241, - 226, 6, -1, 327, -1, 244, 224, 327, -1, -1, - 151, 218, 314, 224, 314, 224, 314, 224, 314, 219, - 246, 225, 244, 226, 6, -1, 152, 225, 319, 226, - 225, 319, 226, 6, -1, 152, 225, 319, 226, 225, - 319, 226, 225, 319, 226, 225, 319, 226, 6, -1, - -1, 153, 249, 225, 237, 226, 6, -1, 7, -1, - 198, -1, 197, -1, 196, -1, 195, -1, 216, -1, - 215, -1, 218, -1, 220, -1, 219, -1, 221, -1, - 78, 220, 256, 221, 6, -1, 79, 220, 261, 221, - 6, -1, 82, 252, 328, 224, 314, 253, 6, -1, - 83, 252, 332, 224, 328, 253, 6, -1, 332, 250, - 320, 6, -1, 332, 251, 6, -1, 4, 220, 221, - 250, 320, 6, -1, 331, 220, 221, 250, 320, 6, - -1, 4, 220, 314, 221, 250, 314, 6, -1, 331, - 220, 314, 221, 250, 314, 6, -1, 4, 220, 314, - 221, 251, 6, -1, 331, 220, 314, 221, 251, 6, - -1, 4, 252, 225, 323, 226, 253, 250, 320, 6, - -1, 331, 252, 225, 323, 226, 253, 250, 320, 6, - -1, 4, 218, 219, 250, 320, 6, -1, 331, 218, - 219, 250, 320, 6, -1, 4, 218, 314, 219, 250, - 314, 6, -1, 331, 218, 314, 219, 250, 314, 6, - -1, 4, 218, 314, 219, 251, 6, -1, 331, 218, - 314, 219, 251, 6, -1, 332, 7, 328, 6, -1, - 4, 220, 221, 7, 44, 252, 253, 6, -1, 331, - 220, 221, 7, 44, 252, 253, 6, -1, 4, 220, - 221, 7, 44, 252, 330, 253, 6, -1, 331, 220, - 221, 7, 44, 252, 330, 253, 6, -1, 4, 220, - 221, 198, 44, 252, 330, 253, 6, -1, 331, 220, - 221, 198, 44, 252, 330, 253, 6, -1, 4, 218, - 219, 7, 44, 252, 253, 6, -1, 331, 218, 219, - 7, 44, 252, 253, 6, -1, 4, 218, 219, 7, - 44, 252, 330, 253, 6, -1, 331, 218, 219, 7, - 44, 252, 330, 253, 6, -1, 4, 218, 219, 198, - 44, 252, 330, 253, 6, -1, 331, 218, 219, 198, - 44, 252, 330, 253, 6, -1, 4, 222, 4, 7, - 328, 6, -1, 4, 220, 314, 221, 222, 4, 7, - 328, 6, -1, 4, 222, 4, 250, 314, 6, -1, - 4, 220, 314, 221, 222, 4, 250, 314, 6, -1, - 4, 222, 4, 251, 6, -1, 4, 220, 314, 221, - 222, 4, 251, 6, -1, 4, 222, 160, 222, 4, - 7, 324, 6, -1, 4, 220, 314, 221, 222, 160, - 222, 4, 7, 324, 6, -1, 4, 222, 161, 7, - 325, 6, -1, 4, 220, 314, 221, 222, 161, 7, - 325, 6, -1, 4, 171, 7, 314, 6, -1, 171, - 220, 314, 221, 7, 4, 6, -1, 171, 220, 314, - 221, 222, 4, 7, 314, 6, -1, 171, 220, 314, - 221, 222, 4, 7, 328, 6, -1, 171, 220, 314, - 221, 222, 4, 7, 225, 323, 226, 6, -1, 171, - 220, 314, 221, 222, 4, 6, -1, 115, 218, 4, - 219, 222, 4, 7, 314, 6, -1, 115, 218, 4, - 219, 222, 4, 7, 328, 6, -1, -1, 224, -1, - -1, 256, 255, 332, -1, 256, 255, 332, 7, 314, - -1, -1, 256, 255, 332, 7, 225, 320, 257, 263, - 226, -1, -1, 256, 255, 332, 220, 221, 7, 225, - 320, 258, 263, 226, -1, -1, 256, 255, 332, 218, - 219, 7, 225, 320, 259, 263, 226, -1, 256, 255, - 332, 7, 328, -1, -1, 256, 255, 332, 7, 225, - 328, 260, 265, 226, -1, -1, 261, 255, 327, -1, - 314, 7, 328, -1, 262, 224, 314, 7, 328, -1, - 322, 7, 332, 218, 219, -1, -1, 263, 264, -1, - 224, 4, 320, -1, 224, 4, 225, 262, 226, -1, - 224, 4, 328, -1, -1, 265, 266, -1, 224, 4, - 314, -1, 224, 4, 328, -1, 224, 175, 328, -1, - 224, 4, 225, 330, 226, -1, 314, -1, 328, -1, - 328, 224, 314, -1, 314, -1, 328, -1, 328, 224, - 314, -1, 314, -1, 328, -1, 328, 224, 314, -1, - 314, -1, 328, -1, 328, 224, 314, -1, -1, 163, - 88, 225, 314, 226, -1, -1, 107, 317, -1, 105, - 218, 327, 219, 6, -1, 84, 218, 314, 219, 7, - 317, 6, -1, 111, 84, 218, 267, 219, 250, 320, - 6, -1, 98, 99, 320, 7, 314, 6, -1, 87, - 218, 314, 219, 7, 320, 6, -1, 116, 87, 320, - 6, -1, 91, 218, 314, 219, 7, 320, 6, -1, - 85, 218, 314, 219, 7, 320, 272, 6, -1, 86, - 218, 314, 219, 7, 320, 272, 6, -1, 155, 218, - 314, 219, 7, 320, 6, -1, 156, 218, 314, 219, - 7, 320, 6, -1, 157, 218, 314, 219, 7, 320, - 159, 320, 158, 314, 6, -1, 87, 4, 218, 314, - 219, 7, 320, 6, -1, 112, 87, 320, 6, -1, - 112, 87, 218, 314, 219, 7, 320, 6, -1, 111, - 87, 218, 268, 219, 250, 320, 6, -1, 107, 90, - 218, 314, 219, 7, 320, 6, -1, 108, 90, 218, - 314, 219, 7, 320, 271, 6, -1, 12, 13, 6, - -1, 13, 90, 314, 6, -1, 100, 90, 218, 314, - 219, 7, 5, 5, 5, 6, -1, 88, 218, 314, - 219, 7, 320, 6, -1, 89, 218, 314, 219, 7, - 320, 6, -1, 93, 218, 314, 219, 7, 320, 6, - -1, 94, 218, 314, 219, 7, 320, 6, -1, 90, - 4, 218, 314, 219, 7, 320, 6, -1, 112, 90, - 320, 6, -1, 112, 90, 218, 314, 219, 7, 320, - 6, -1, 112, 90, 218, 314, 219, 7, 320, 4, - 225, 319, 226, 6, -1, 111, 90, 218, 269, 219, - 250, 320, 6, -1, 110, 92, 218, 314, 219, 7, - 320, 6, -1, 92, 218, 314, 219, 7, 320, 6, - -1, 106, 218, 314, 219, 7, 320, 6, -1, 112, - 92, 320, 6, -1, 112, 92, 218, 314, 219, 7, - 320, 6, -1, 111, 92, 218, 270, 219, 250, 320, - 6, -1, 119, 317, 225, 275, 226, -1, 118, 225, - 317, 224, 317, 224, 314, 226, 225, 275, 226, -1, - 120, 317, 225, 275, 226, -1, 121, 225, 317, 224, - 314, 226, 225, 275, 226, -1, 121, 225, 317, 224, - 317, 226, 225, 275, 226, -1, 4, 225, 275, 226, - -1, 135, 87, 225, 323, 226, 90, 225, 314, 226, - -1, 132, 87, 218, 314, 219, 225, 323, 226, 6, - -1, 276, -1, 274, -1, -1, 276, 273, -1, 276, - 84, 225, 323, 226, 6, -1, 276, 87, 225, 323, - 226, 6, -1, 276, 90, 225, 323, 226, 6, -1, - 276, 92, 225, 323, 226, 6, -1, 123, 107, 218, - 314, 219, 7, 320, 6, -1, 123, 84, 218, 314, - 219, 7, 225, 319, 226, 6, -1, 123, 107, 218, - 314, 219, 7, 225, 317, 224, 317, 224, 323, 226, - 6, -1, 123, 107, 218, 314, 219, 7, 225, 317, - 224, 317, 224, 317, 224, 323, 226, 6, -1, 123, - 88, 218, 314, 219, 7, 225, 317, 224, 323, 226, - 6, -1, 123, 94, 218, 314, 219, 7, 225, 317, - 224, 317, 224, 323, 226, 6, -1, 123, 95, 218, - 314, 219, 7, 225, 317, 224, 317, 224, 323, 226, - 6, -1, 123, 96, 218, 314, 219, 7, 225, 317, - 224, 317, 224, 323, 226, 6, -1, 123, 97, 218, - 314, 219, 7, 225, 317, 224, 317, 224, 323, 226, - 6, -1, 123, 4, 218, 314, 219, 7, 320, 6, - -1, 123, 4, 218, 314, 219, 7, 5, 6, -1, - 123, 4, 225, 314, 226, 6, -1, 133, 225, 276, - 226, -1, 133, 171, 220, 314, 221, 6, -1, 133, - 4, 220, 314, 221, 6, -1, 133, 332, 6, -1, - 133, 4, 4, 6, -1, 160, 324, 225, 276, 226, - -1, 117, 160, 324, 225, 276, 226, -1, 192, 314, - 225, 276, 226, -1, 176, 5, 6, -1, 177, 5, - 6, -1, 176, 225, 276, 226, -1, 117, 176, 225, - 276, 226, -1, 177, 225, 276, 226, -1, 117, 177, - 225, 276, 226, -1, 4, 328, 6, -1, 71, 218, - 330, 219, 6, -1, 4, 4, 220, 314, 221, 327, - 6, -1, 4, 4, 4, 220, 314, 221, 6, -1, - 4, 314, 6, -1, 115, 218, 4, 219, 222, 4, - 6, -1, 154, 4, 6, -1, 169, 6, -1, 170, + 230, 0, -1, 231, -1, 1, 6, -1, -1, 231, + 232, -1, 235, -1, 234, -1, 255, -1, 274, -1, + 275, -1, 279, -1, 280, -1, 281, -1, 282, -1, + 286, -1, 304, -1, 305, -1, 311, -1, 312, -1, + 285, -1, 284, -1, 283, -1, 278, -1, 314, -1, + 206, -1, 206, 206, -1, 42, 219, 328, 220, 6, + -1, 43, 219, 328, 220, 6, -1, 42, 219, 328, + 220, 233, 328, 6, -1, 42, 219, 328, 225, 324, + 220, 6, -1, 43, 219, 328, 225, 324, 220, 6, + -1, 42, 219, 328, 225, 324, 220, 233, 328, 6, + -1, 4, 328, 226, 236, 227, 6, -1, 142, 4, + 221, 315, 222, 6, -1, 143, 4, 221, 315, 222, + 6, -1, 144, 4, 221, 315, 225, 315, 222, 6, + -1, -1, 236, 239, -1, 236, 243, -1, 236, 246, + -1, 236, 248, -1, 236, 249, -1, 315, -1, 237, + 225, 315, -1, 315, -1, 238, 225, 315, -1, -1, + -1, 4, 240, 219, 237, 220, 241, 226, 238, 227, + 6, -1, 328, -1, 242, 225, 328, -1, -1, 151, + 219, 315, 225, 315, 225, 315, 220, 244, 226, 242, + 227, 6, -1, 328, -1, 245, 225, 328, -1, -1, + 152, 219, 315, 225, 315, 225, 315, 225, 315, 220, + 247, 226, 245, 227, 6, -1, 153, 226, 320, 227, + 226, 320, 227, 6, -1, 153, 226, 320, 227, 226, + 320, 227, 226, 320, 227, 226, 320, 227, 6, -1, + -1, 154, 250, 226, 238, 227, 6, -1, 7, -1, + 199, -1, 198, -1, 197, -1, 196, -1, 217, -1, + 216, -1, 219, -1, 221, -1, 220, -1, 222, -1, + 78, 221, 257, 222, 6, -1, 79, 221, 262, 222, + 6, -1, 82, 253, 329, 225, 315, 254, 6, -1, + 83, 253, 333, 225, 329, 254, 6, -1, 333, 251, + 321, 6, -1, 333, 252, 6, -1, 4, 221, 222, + 251, 321, 6, -1, 332, 221, 222, 251, 321, 6, + -1, 4, 221, 315, 222, 251, 315, 6, -1, 332, + 221, 315, 222, 251, 315, 6, -1, 4, 221, 315, + 222, 252, 6, -1, 332, 221, 315, 222, 252, 6, + -1, 4, 253, 226, 324, 227, 254, 251, 321, 6, + -1, 332, 253, 226, 324, 227, 254, 251, 321, 6, + -1, 4, 219, 220, 251, 321, 6, -1, 332, 219, + 220, 251, 321, 6, -1, 4, 219, 315, 220, 251, + 315, 6, -1, 332, 219, 315, 220, 251, 315, 6, + -1, 4, 219, 315, 220, 252, 6, -1, 332, 219, + 315, 220, 252, 6, -1, 333, 7, 329, 6, -1, + 4, 221, 222, 7, 44, 253, 254, 6, -1, 332, + 221, 222, 7, 44, 253, 254, 6, -1, 4, 221, + 222, 7, 44, 253, 331, 254, 6, -1, 332, 221, + 222, 7, 44, 253, 331, 254, 6, -1, 4, 221, + 222, 199, 44, 253, 331, 254, 6, -1, 332, 221, + 222, 199, 44, 253, 331, 254, 6, -1, 4, 219, + 220, 7, 44, 253, 254, 6, -1, 332, 219, 220, + 7, 44, 253, 254, 6, -1, 4, 219, 220, 7, + 44, 253, 331, 254, 6, -1, 332, 219, 220, 7, + 44, 253, 331, 254, 6, -1, 4, 219, 220, 199, + 44, 253, 331, 254, 6, -1, 332, 219, 220, 199, + 44, 253, 331, 254, 6, -1, 4, 223, 4, 7, + 329, 6, -1, 4, 221, 315, 222, 223, 4, 7, + 329, 6, -1, 4, 223, 4, 251, 315, 6, -1, + 4, 221, 315, 222, 223, 4, 251, 315, 6, -1, + 4, 223, 4, 252, 6, -1, 4, 221, 315, 222, + 223, 4, 252, 6, -1, 4, 223, 161, 223, 4, + 7, 325, 6, -1, 4, 221, 315, 222, 223, 161, + 223, 4, 7, 325, 6, -1, 4, 223, 162, 7, + 326, 6, -1, 4, 221, 315, 222, 223, 162, 7, + 326, 6, -1, 4, 172, 7, 315, 6, -1, 172, + 221, 315, 222, 7, 4, 6, -1, 172, 221, 315, + 222, 223, 4, 7, 315, 6, -1, 172, 221, 315, + 222, 223, 4, 7, 329, 6, -1, 172, 221, 315, + 222, 223, 4, 7, 226, 324, 227, 6, -1, 172, + 221, 315, 222, 223, 4, 6, -1, 116, 219, 4, + 220, 223, 4, 7, 315, 6, -1, 116, 219, 4, + 220, 223, 4, 7, 329, 6, -1, -1, 225, -1, + -1, 257, 256, 333, -1, 257, 256, 333, 7, 315, + -1, -1, 257, 256, 333, 7, 226, 321, 258, 264, + 227, -1, -1, 257, 256, 333, 221, 222, 7, 226, + 321, 259, 264, 227, -1, -1, 257, 256, 333, 219, + 220, 7, 226, 321, 260, 264, 227, -1, 257, 256, + 333, 7, 329, -1, -1, 257, 256, 333, 7, 226, + 329, 261, 266, 227, -1, -1, 262, 256, 328, -1, + 315, 7, 329, -1, 263, 225, 315, 7, 329, -1, + 323, 7, 333, 219, 220, -1, -1, 264, 265, -1, + 225, 4, 321, -1, 225, 4, 226, 263, 227, -1, + 225, 4, 329, -1, -1, 266, 267, -1, 225, 4, + 315, -1, 225, 4, 329, -1, 225, 176, 329, -1, + 225, 4, 226, 331, 227, -1, 315, -1, 329, -1, + 329, 225, 315, -1, 315, -1, 329, -1, 329, 225, + 315, -1, 315, -1, 329, -1, 329, 225, 315, -1, + 315, -1, 329, -1, 329, 225, 315, -1, -1, 164, + 88, 226, 315, 227, -1, -1, 108, 318, -1, 106, + 219, 328, 220, 6, -1, 84, 219, 315, 220, 7, + 318, 6, -1, 112, 84, 219, 268, 220, 251, 321, + 6, -1, 99, 100, 321, 7, 315, 6, -1, 87, + 219, 315, 220, 7, 321, 6, -1, 117, 87, 321, + 6, -1, 91, 219, 315, 220, 7, 321, 6, -1, + 85, 219, 315, 220, 7, 321, 273, 6, -1, 86, + 219, 315, 220, 7, 321, 273, 6, -1, 156, 219, + 315, 220, 7, 321, 6, -1, 157, 219, 315, 220, + 7, 321, 6, -1, 158, 219, 315, 220, 7, 321, + 160, 321, 159, 315, 6, -1, 87, 4, 219, 315, + 220, 7, 321, 6, -1, 113, 87, 321, 6, -1, + 113, 87, 219, 315, 220, 7, 321, 6, -1, 112, + 87, 219, 269, 220, 251, 321, 6, -1, 108, 90, + 219, 315, 220, 7, 321, 6, -1, 109, 90, 219, + 315, 220, 7, 321, 272, 6, -1, 12, 13, 6, + -1, 13, 90, 315, 6, -1, 101, 90, 219, 315, + 220, 7, 5, 5, 5, 6, -1, 88, 219, 315, + 220, 7, 321, 6, -1, 89, 219, 315, 220, 7, + 321, 6, -1, 93, 219, 315, 220, 7, 321, 6, + -1, 94, 219, 315, 220, 7, 321, 6, -1, 90, + 4, 219, 315, 220, 7, 321, 6, -1, 113, 90, + 321, 6, -1, 113, 90, 219, 315, 220, 7, 321, + 6, -1, 113, 90, 219, 315, 220, 7, 321, 4, + 226, 320, 227, 6, -1, 112, 90, 219, 270, 220, + 251, 321, 6, -1, 111, 92, 219, 315, 220, 7, + 321, 6, -1, 92, 219, 315, 220, 7, 321, 6, + -1, 107, 219, 315, 220, 7, 321, 6, -1, 113, + 92, 321, 6, -1, 113, 92, 219, 315, 220, 7, + 321, 6, -1, 112, 92, 219, 271, 220, 251, 321, + 6, -1, 120, 318, 226, 276, 227, -1, 119, 226, + 318, 225, 318, 225, 315, 227, 226, 276, 227, -1, + 121, 318, 226, 276, 227, -1, 122, 226, 318, 225, + 315, 227, 226, 276, 227, -1, 122, 226, 318, 225, + 318, 227, 226, 276, 227, -1, 4, 226, 276, 227, + -1, 136, 87, 226, 324, 227, 90, 226, 315, 227, + -1, 133, 87, 219, 315, 220, 226, 324, 227, 6, + -1, 277, -1, 275, -1, -1, 277, 274, -1, 277, + 84, 226, 324, 227, 6, -1, 277, 87, 226, 324, + 227, 6, -1, 277, 90, 226, 324, 227, 6, -1, + 277, 92, 226, 324, 227, 6, -1, 124, 108, 219, + 315, 220, 7, 321, 6, -1, 124, 84, 219, 315, + 220, 7, 226, 320, 227, 6, -1, 124, 108, 219, + 315, 220, 7, 226, 318, 225, 318, 225, 324, 227, + 6, -1, 124, 108, 219, 315, 220, 7, 226, 318, + 225, 318, 225, 318, 225, 324, 227, 6, -1, 124, + 88, 219, 315, 220, 7, 226, 318, 225, 324, 227, + 6, -1, 124, 94, 219, 315, 220, 7, 226, 318, + 225, 318, 225, 324, 227, 6, -1, 124, 95, 219, + 315, 220, 7, 226, 318, 225, 318, 225, 324, 227, + 6, -1, 124, 96, 219, 315, 220, 7, 226, 318, + 225, 318, 225, 324, 227, 6, -1, 124, 97, 219, + 315, 220, 7, 226, 318, 225, 318, 225, 324, 227, + 6, -1, 124, 4, 219, 315, 220, 7, 321, 6, + -1, 124, 4, 219, 315, 220, 7, 5, 6, -1, + 124, 4, 226, 315, 227, 6, -1, 134, 226, 277, + 227, -1, 134, 172, 221, 315, 222, 6, -1, 134, + 4, 221, 315, 222, 6, -1, 134, 333, 6, -1, + 134, 4, 4, 6, -1, 161, 325, 226, 277, 227, + -1, 118, 161, 325, 226, 277, 227, -1, 193, 315, + 226, 277, 227, -1, 177, 5, 6, -1, 178, 5, + 6, -1, 177, 226, 277, 227, -1, 118, 177, 226, + 277, 227, -1, 178, 226, 277, 227, -1, 118, 178, + 226, 277, 227, -1, 4, 329, 6, -1, 71, 219, + 331, 220, 6, -1, 4, 4, 221, 315, 222, 328, + 6, -1, 4, 4, 4, 221, 315, 222, 6, -1, + 4, 315, 6, -1, 116, 219, 4, 220, 223, 4, + 6, -1, 155, 4, 6, -1, 170, 6, -1, 171, 6, -1, 68, 6, -1, 69, 6, -1, 62, 6, - -1, 62, 225, 314, 224, 314, 224, 314, 224, 314, - 224, 314, 224, 314, 226, 6, -1, 63, 6, -1, - 64, 6, -1, 75, 6, -1, 76, 6, -1, 102, - 6, -1, 103, 225, 323, 226, 225, 323, 226, 225, - 319, 226, 225, 314, 224, 314, 226, 6, -1, 174, - 218, 225, 323, 226, 224, 328, 224, 328, 219, 6, - -1, 162, 218, 314, 8, 314, 219, -1, 162, 218, - 314, 8, 314, 8, 314, 219, -1, 162, 4, 163, - 225, 314, 8, 314, 226, -1, 162, 4, 163, 225, - 314, 8, 314, 8, 314, 226, -1, 164, -1, 175, - 4, -1, 175, 328, -1, 172, -1, 173, 332, 6, - -1, 173, 328, 6, -1, 165, 218, 314, 219, -1, - 166, 218, 314, 219, -1, 167, -1, 168, -1, 122, - 317, 225, 276, 226, -1, 122, 225, 317, 224, 317, - 224, 314, 226, 225, 276, 226, -1, 122, 225, 317, - 224, 317, 224, 317, 224, 314, 226, 225, 276, 226, - -1, -1, 122, 317, 225, 276, 286, 299, 226, -1, - -1, 122, 225, 317, 224, 317, 224, 314, 226, 225, - 276, 287, 299, 226, -1, -1, 122, 225, 317, 224, - 317, 224, 317, 224, 314, 226, 225, 276, 288, 299, - 226, -1, -1, 122, 225, 276, 289, 299, 226, -1, - 122, 84, 225, 314, 224, 317, 226, 6, -1, 122, - 87, 225, 314, 224, 317, 226, 6, -1, 122, 90, - 225, 314, 224, 317, 226, 6, -1, 122, 84, 225, - 314, 224, 317, 224, 317, 224, 314, 226, 6, -1, - 122, 87, 225, 314, 224, 317, 224, 317, 224, 314, - 226, 6, -1, 122, 90, 225, 314, 224, 317, 224, - 317, 224, 314, 226, 6, -1, 122, 84, 225, 314, - 224, 317, 224, 317, 224, 317, 224, 314, 226, 6, - -1, 122, 87, 225, 314, 224, 317, 224, 317, 224, - 317, 224, 314, 226, 6, -1, 122, 90, 225, 314, - 224, 317, 224, 317, 224, 317, 224, 314, 226, 6, - -1, -1, 122, 84, 225, 314, 224, 317, 226, 290, - 225, 299, 226, 6, -1, -1, 122, 87, 225, 314, - 224, 317, 226, 291, 225, 299, 226, 6, -1, -1, - 122, 90, 225, 314, 224, 317, 226, 292, 225, 299, - 226, 6, -1, -1, 122, 84, 225, 314, 224, 317, - 224, 317, 224, 314, 226, 293, 225, 299, 226, 6, - -1, -1, 122, 87, 225, 314, 224, 317, 224, 317, - 224, 314, 226, 294, 225, 299, 226, 6, -1, -1, - 122, 90, 225, 314, 224, 317, 224, 317, 224, 314, - 226, 295, 225, 299, 226, 6, -1, -1, 122, 84, - 225, 314, 224, 317, 224, 317, 224, 317, 224, 314, - 226, 296, 225, 299, 226, 6, -1, -1, 122, 87, - 225, 314, 224, 317, 224, 317, 224, 317, 224, 314, - 226, 297, 225, 299, 226, 6, -1, -1, 122, 90, - 225, 314, 224, 317, 224, 317, 224, 317, 224, 314, - 226, 298, 225, 299, 226, 6, -1, 300, -1, 299, - 300, -1, 138, 225, 314, 226, 6, -1, 138, 225, - 320, 224, 320, 226, 6, -1, 138, 225, 320, 224, - 320, 224, 320, 226, 6, -1, 139, 6, -1, 130, - 6, -1, 130, 314, 6, -1, 146, 6, -1, 146, - 148, 6, -1, 147, 6, -1, 147, 148, 6, -1, - 144, 6, -1, 144, 148, 6, -1, 145, 6, -1, - 145, 148, 6, -1, 140, 218, 314, 219, 7, 320, - 114, 314, 6, -1, 114, 4, 220, 314, 221, 6, - -1, 125, -1, 126, -1, 127, -1, 128, -1, 129, - -1, -1, 133, 6, -1, 133, 314, 6, -1, 301, - 225, 276, 302, 226, 225, 276, 302, 226, -1, 301, - 218, 314, 219, 7, 225, 276, 302, 226, 225, 276, - 302, 226, 6, -1, -1, 114, 4, 314, -1, -1, - 4, -1, -1, 7, 320, -1, -1, 7, 314, -1, - -1, 124, 320, -1, 109, 87, 321, 7, 314, 305, - 6, -1, 109, 90, 321, 307, 306, 6, -1, 101, - 90, 225, 314, 226, 7, 320, 6, -1, 109, 92, - 321, 307, 6, -1, 149, 321, 6, -1, 136, 90, - 225, 323, 226, 7, 314, 6, -1, 130, 90, 321, - 308, 6, -1, 130, 92, 321, 6, -1, 131, 90, - 320, 7, 314, 6, -1, 113, 87, 225, 323, 226, - 7, 225, 323, 226, 309, 6, -1, 113, 90, 225, - 323, 226, 7, 225, 323, 226, 309, 6, -1, 113, - 87, 225, 323, 226, 7, 225, 323, 226, 118, 225, - 317, 224, 317, 224, 314, 226, 6, -1, 113, 90, - 225, 323, 226, 7, 225, 323, 226, 118, 225, 317, - 224, 317, 224, 314, 226, 6, -1, 113, 87, 225, - 323, 226, 7, 225, 323, 226, 119, 317, 6, -1, - 113, 90, 225, 323, 226, 7, 225, 323, 226, 119, - 317, 6, -1, 113, 90, 314, 225, 323, 226, 7, - 314, 225, 323, 226, 6, -1, 84, 225, 323, 226, - 163, 90, 225, 314, 226, 6, -1, 87, 225, 323, - 226, 163, 90, 225, 314, 226, 6, -1, 84, 225, - 323, 226, 163, 92, 225, 314, 226, 6, -1, 87, - 225, 323, 226, 163, 92, 225, 314, 226, 6, -1, - 90, 225, 323, 226, 163, 92, 225, 314, 226, 6, - -1, 137, 90, 321, 6, -1, 137, 87, 321, 6, - -1, 104, 84, 321, 6, -1, 104, 87, 321, 6, - -1, 104, 90, 321, 6, -1, 134, 6, -1, 134, - 4, 6, -1, 134, 84, 225, 323, 226, 6, -1, - 183, -1, 184, -1, 185, -1, 312, 6, -1, 312, - 225, 320, 226, 6, -1, 312, 225, 320, 224, 320, - 226, 6, -1, 312, 218, 320, 219, 225, 320, 224, - 320, 226, 6, -1, 315, -1, 218, 314, 219, -1, - 209, 314, -1, 208, 314, -1, 213, 314, -1, 314, - 209, 314, -1, 314, 208, 314, -1, 314, 210, 314, - -1, 314, 211, 314, -1, 314, 212, 314, -1, 314, - 217, 314, -1, 314, 204, 314, -1, 314, 205, 314, - -1, 314, 207, 314, -1, 314, 206, 314, -1, 314, - 203, 314, -1, 314, 202, 314, -1, 314, 201, 314, - -1, 314, 200, 314, -1, 314, 199, 314, 8, 314, - -1, 15, 252, 314, 253, -1, 16, 252, 314, 253, - -1, 17, 252, 314, 253, -1, 18, 252, 314, 253, - -1, 19, 252, 314, 253, -1, 20, 252, 314, 253, - -1, 21, 252, 314, 253, -1, 22, 252, 314, 253, - -1, 23, 252, 314, 253, -1, 25, 252, 314, 253, - -1, 26, 252, 314, 224, 314, 253, -1, 27, 252, - 314, 253, -1, 28, 252, 314, 253, -1, 29, 252, - 314, 253, -1, 30, 252, 314, 253, -1, 31, 252, - 314, 253, -1, 32, 252, 314, 253, -1, 33, 252, - 314, 253, -1, 34, 252, 314, 224, 314, 253, -1, - 35, 252, 314, 224, 314, 253, -1, 36, 252, 314, - 224, 314, 253, -1, 24, 252, 314, 253, -1, 3, - -1, 9, -1, 14, -1, 10, -1, 11, -1, 188, - -1, 189, -1, 190, -1, 72, -1, 73, -1, 74, - -1, -1, 80, 252, 314, 316, 263, 253, -1, 182, - 252, 327, 253, -1, 182, 252, 327, 224, 314, 253, - -1, 332, -1, 4, 220, 314, 221, -1, 4, 218, - 314, 219, -1, 331, 220, 314, 221, -1, 331, 218, - 314, 219, -1, 186, 218, 332, 219, -1, 187, 218, - 328, 219, -1, 223, 332, 252, 253, -1, 332, 251, - -1, 4, 220, 314, 221, 251, -1, 4, 218, 314, - 219, 251, -1, 331, 220, 314, 221, 251, -1, 331, - 218, 314, 219, 251, -1, 4, 222, 4, -1, 4, - 220, 314, 221, 222, 4, -1, 4, 222, 4, 251, - -1, 4, 220, 314, 221, 222, 4, 251, -1, 178, - 218, 327, 224, 314, 219, -1, 54, 218, 320, 224, - 320, 219, -1, 55, 252, 327, 224, 327, 253, -1, - 53, 252, 327, 253, -1, 56, 252, 327, 224, 327, - 253, -1, 61, 218, 330, 219, -1, 318, -1, 209, - 317, -1, 208, 317, -1, 317, 209, 317, -1, 317, - 208, 317, -1, 225, 314, 224, 314, 224, 314, 224, - 314, 224, 314, 226, -1, 225, 314, 224, 314, 224, - 314, 224, 314, 226, -1, 225, 314, 224, 314, 224, - 314, 226, -1, 218, 314, 224, 314, 224, 314, 219, - -1, 320, -1, 319, 224, 320, -1, 314, -1, 322, - -1, 225, 226, -1, 225, 323, 226, -1, 209, 225, - 323, 226, -1, 314, 210, 225, 323, 226, -1, 320, - -1, 5, -1, 209, 322, -1, 314, 210, 322, -1, - 314, 8, 314, -1, 314, 8, 314, 8, 314, -1, - 84, 225, 314, 226, -1, 84, 5, -1, 87, 5, - -1, 90, 5, -1, 92, 5, -1, 111, 84, 5, - -1, 111, 87, 5, -1, 111, 90, 5, -1, 111, - 92, 5, -1, 111, 84, 225, 323, 226, -1, 111, - 87, 225, 323, 226, -1, 111, 90, 225, 323, 226, - -1, 111, 92, 225, 323, 226, -1, 84, 163, 62, - 225, 314, 224, 314, 224, 314, 224, 314, 224, 314, - 224, 314, 226, -1, 87, 163, 62, 225, 314, 224, - 314, 224, 314, 224, 314, 224, 314, 224, 314, 226, - -1, 90, 163, 62, 225, 314, 224, 314, 224, 314, - 224, 314, 224, 314, 224, 314, 226, -1, 92, 163, - 62, 225, 314, 224, 314, 224, 314, 224, 314, 224, - 314, 224, 314, 226, -1, 274, -1, 285, -1, 303, - -1, 4, 252, 253, -1, 331, 252, 253, -1, 37, - 220, 332, 221, -1, 37, 220, 322, 221, -1, 37, - 218, 322, 219, -1, 37, 220, 225, 323, 226, 221, - -1, 37, 218, 225, 323, 226, 219, -1, 4, 252, - 225, 323, 226, 253, -1, 331, 252, 225, 323, 226, - 253, -1, 38, 252, 314, 224, 314, 224, 314, 253, - -1, 39, 252, 314, 224, 314, 224, 314, 253, -1, - 40, 252, 327, 253, -1, 41, 252, 314, 224, 314, - 224, 314, 224, 314, 224, 314, 224, 314, 253, -1, - 314, -1, 322, -1, 323, 224, 314, -1, 323, 224, - 322, -1, 225, 314, 224, 314, 224, 314, 224, 314, - 226, -1, 225, 314, 224, 314, 224, 314, 226, -1, - 332, -1, 4, 222, 160, 222, 4, -1, 225, 326, - 226, -1, 4, 220, 314, 221, 222, 161, -1, 324, - -1, 326, 224, 324, -1, 328, -1, 332, -1, 4, - 220, 314, 221, -1, 331, 220, 314, 221, -1, 4, - 218, 314, 219, -1, 331, 218, 314, 219, -1, 4, - 222, 4, -1, 4, 220, 314, 221, 222, 4, -1, - 5, -1, 193, 220, 332, 221, -1, 65, -1, 191, - -1, 70, -1, 180, 218, 327, 219, -1, 179, 218, - 327, 224, 327, 219, -1, 181, 252, 327, 253, -1, - 181, 252, 327, 224, 327, 253, -1, 46, 252, 330, - 253, -1, 47, 218, 327, 219, -1, 48, 218, 327, - 219, -1, 49, 218, 327, 224, 327, 224, 327, 219, - -1, 44, 252, 330, 253, -1, 58, 252, 327, 253, - -1, 59, 252, 327, 253, -1, 60, 252, 327, 253, - -1, 57, 252, 314, 224, 327, 224, 327, 253, -1, - 52, 252, 327, 224, 314, 224, 314, 253, -1, 52, - 252, 327, 224, 314, 253, -1, 45, 252, 327, 253, - -1, 45, 252, 327, 224, 323, 253, -1, 66, 252, - 327, 253, -1, 67, -1, 51, 252, 327, 253, -1, - 50, 252, 327, 253, -1, -1, 81, 252, 328, 329, - 265, 253, -1, 327, -1, 330, 224, 327, -1, 4, - 227, 225, 314, 226, -1, 331, 227, 225, 314, 226, - -1, 4, -1, 331, -1, 194, 220, 327, 221, -1 + -1, 62, 226, 315, 225, 315, 225, 315, 225, 315, + 225, 315, 225, 315, 227, 6, -1, 63, 6, -1, + 64, 6, -1, 75, 6, -1, 76, 6, -1, 103, + 6, -1, 104, 226, 324, 227, 226, 324, 227, 226, + 320, 227, 226, 315, 225, 315, 227, 6, -1, 175, + 219, 226, 324, 227, 225, 329, 225, 329, 220, 6, + -1, 163, 219, 315, 8, 315, 220, -1, 163, 219, + 315, 8, 315, 8, 315, 220, -1, 163, 4, 164, + 226, 315, 8, 315, 227, -1, 163, 4, 164, 226, + 315, 8, 315, 8, 315, 227, -1, 165, -1, 176, + 4, -1, 176, 329, -1, 173, -1, 174, 333, 6, + -1, 174, 329, 6, -1, 166, 219, 315, 220, -1, + 167, 219, 315, 220, -1, 168, -1, 169, -1, 123, + 318, 226, 277, 227, -1, 123, 226, 318, 225, 318, + 225, 315, 227, 226, 277, 227, -1, 123, 226, 318, + 225, 318, 225, 318, 225, 315, 227, 226, 277, 227, + -1, -1, 123, 318, 226, 277, 287, 300, 227, -1, + -1, 123, 226, 318, 225, 318, 225, 315, 227, 226, + 277, 288, 300, 227, -1, -1, 123, 226, 318, 225, + 318, 225, 318, 225, 315, 227, 226, 277, 289, 300, + 227, -1, -1, 123, 226, 277, 290, 300, 227, -1, + 123, 84, 226, 315, 225, 318, 227, 6, -1, 123, + 87, 226, 315, 225, 318, 227, 6, -1, 123, 90, + 226, 315, 225, 318, 227, 6, -1, 123, 84, 226, + 315, 225, 318, 225, 318, 225, 315, 227, 6, -1, + 123, 87, 226, 315, 225, 318, 225, 318, 225, 315, + 227, 6, -1, 123, 90, 226, 315, 225, 318, 225, + 318, 225, 315, 227, 6, -1, 123, 84, 226, 315, + 225, 318, 225, 318, 225, 318, 225, 315, 227, 6, + -1, 123, 87, 226, 315, 225, 318, 225, 318, 225, + 318, 225, 315, 227, 6, -1, 123, 90, 226, 315, + 225, 318, 225, 318, 225, 318, 225, 315, 227, 6, + -1, -1, 123, 84, 226, 315, 225, 318, 227, 291, + 226, 300, 227, 6, -1, -1, 123, 87, 226, 315, + 225, 318, 227, 292, 226, 300, 227, 6, -1, -1, + 123, 90, 226, 315, 225, 318, 227, 293, 226, 300, + 227, 6, -1, -1, 123, 84, 226, 315, 225, 318, + 225, 318, 225, 315, 227, 294, 226, 300, 227, 6, + -1, -1, 123, 87, 226, 315, 225, 318, 225, 318, + 225, 315, 227, 295, 226, 300, 227, 6, -1, -1, + 123, 90, 226, 315, 225, 318, 225, 318, 225, 315, + 227, 296, 226, 300, 227, 6, -1, -1, 123, 84, + 226, 315, 225, 318, 225, 318, 225, 318, 225, 315, + 227, 297, 226, 300, 227, 6, -1, -1, 123, 87, + 226, 315, 225, 318, 225, 318, 225, 318, 225, 315, + 227, 298, 226, 300, 227, 6, -1, -1, 123, 90, + 226, 315, 225, 318, 225, 318, 225, 318, 225, 315, + 227, 299, 226, 300, 227, 6, -1, 301, -1, 300, + 301, -1, 139, 226, 315, 227, 6, -1, 139, 226, + 321, 225, 321, 227, 6, -1, 139, 226, 321, 225, + 321, 225, 321, 227, 6, -1, 140, 6, -1, 131, + 6, -1, 131, 315, 6, -1, 147, 6, -1, 147, + 149, 6, -1, 148, 6, -1, 148, 149, 6, -1, + 145, 6, -1, 145, 149, 6, -1, 146, 6, -1, + 146, 149, 6, -1, 141, 219, 315, 220, 7, 321, + 115, 315, 6, -1, 115, 4, 221, 315, 222, 6, + -1, 126, -1, 127, -1, 128, -1, 129, -1, 130, + -1, -1, 134, 6, -1, 134, 315, 6, -1, 302, + 226, 277, 303, 227, 226, 277, 303, 227, -1, 98, + 219, 328, 220, -1, 302, 219, 315, 220, 7, 226, + 277, 303, 227, 226, 277, 303, 227, 6, -1, -1, + 115, 4, 315, -1, -1, 4, -1, -1, 7, 321, + -1, -1, 7, 315, -1, -1, 125, 321, -1, 110, + 87, 322, 7, 315, 306, 6, -1, 110, 90, 322, + 308, 307, 6, -1, 102, 90, 226, 315, 227, 7, + 321, 6, -1, 110, 92, 322, 308, 6, -1, 150, + 322, 6, -1, 137, 90, 226, 324, 227, 7, 315, + 6, -1, 131, 90, 322, 309, 6, -1, 131, 92, + 322, 6, -1, 132, 90, 321, 7, 315, 6, -1, + 114, 87, 226, 324, 227, 7, 226, 324, 227, 310, + 6, -1, 114, 90, 226, 324, 227, 7, 226, 324, + 227, 310, 6, -1, 114, 87, 226, 324, 227, 7, + 226, 324, 227, 119, 226, 318, 225, 318, 225, 315, + 227, 6, -1, 114, 90, 226, 324, 227, 7, 226, + 324, 227, 119, 226, 318, 225, 318, 225, 315, 227, + 6, -1, 114, 87, 226, 324, 227, 7, 226, 324, + 227, 120, 318, 6, -1, 114, 90, 226, 324, 227, + 7, 226, 324, 227, 120, 318, 6, -1, 114, 90, + 315, 226, 324, 227, 7, 315, 226, 324, 227, 6, + -1, 84, 226, 324, 227, 164, 90, 226, 315, 227, + 6, -1, 87, 226, 324, 227, 164, 90, 226, 315, + 227, 6, -1, 84, 226, 324, 227, 164, 92, 226, + 315, 227, 6, -1, 87, 226, 324, 227, 164, 92, + 226, 315, 227, 6, -1, 90, 226, 324, 227, 164, + 92, 226, 315, 227, 6, -1, 138, 90, 322, 6, + -1, 138, 87, 322, 6, -1, 105, 84, 322, 6, + -1, 105, 87, 322, 6, -1, 105, 90, 322, 6, + -1, 135, 6, -1, 135, 4, 6, -1, 135, 84, + 226, 324, 227, 6, -1, 184, -1, 185, -1, 186, + -1, 313, 6, -1, 313, 226, 321, 227, 6, -1, + 313, 226, 321, 225, 321, 227, 6, -1, 313, 219, + 321, 220, 226, 321, 225, 321, 227, 6, -1, 316, + -1, 219, 315, 220, -1, 210, 315, -1, 209, 315, + -1, 214, 315, -1, 315, 210, 315, -1, 315, 209, + 315, -1, 315, 211, 315, -1, 315, 212, 315, -1, + 315, 213, 315, -1, 315, 218, 315, -1, 315, 205, + 315, -1, 315, 206, 315, -1, 315, 208, 315, -1, + 315, 207, 315, -1, 315, 204, 315, -1, 315, 203, + 315, -1, 315, 202, 315, -1, 315, 201, 315, -1, + 315, 200, 315, 8, 315, -1, 15, 253, 315, 254, + -1, 16, 253, 315, 254, -1, 17, 253, 315, 254, + -1, 18, 253, 315, 254, -1, 19, 253, 315, 254, + -1, 20, 253, 315, 254, -1, 21, 253, 315, 254, + -1, 22, 253, 315, 254, -1, 23, 253, 315, 254, + -1, 25, 253, 315, 254, -1, 26, 253, 315, 225, + 315, 254, -1, 27, 253, 315, 254, -1, 28, 253, + 315, 254, -1, 29, 253, 315, 254, -1, 30, 253, + 315, 254, -1, 31, 253, 315, 254, -1, 32, 253, + 315, 254, -1, 33, 253, 315, 254, -1, 34, 253, + 315, 225, 315, 254, -1, 35, 253, 315, 225, 315, + 254, -1, 36, 253, 315, 225, 315, 254, -1, 24, + 253, 315, 254, -1, 3, -1, 9, -1, 14, -1, + 10, -1, 11, -1, 189, -1, 190, -1, 191, -1, + 72, -1, 73, -1, 74, -1, -1, 80, 253, 315, + 317, 264, 254, -1, 183, 253, 328, 254, -1, 183, + 253, 328, 225, 315, 254, -1, 333, -1, 4, 221, + 315, 222, -1, 4, 219, 315, 220, -1, 332, 221, + 315, 222, -1, 332, 219, 315, 220, -1, 187, 219, + 333, 220, -1, 188, 219, 329, 220, -1, 224, 333, + 253, 254, -1, 333, 252, -1, 4, 221, 315, 222, + 252, -1, 4, 219, 315, 220, 252, -1, 332, 221, + 315, 222, 252, -1, 332, 219, 315, 220, 252, -1, + 4, 223, 4, -1, 4, 221, 315, 222, 223, 4, + -1, 4, 223, 4, 252, -1, 4, 221, 315, 222, + 223, 4, 252, -1, 179, 219, 328, 225, 315, 220, + -1, 54, 219, 321, 225, 321, 220, -1, 55, 253, + 328, 225, 328, 254, -1, 53, 253, 328, 254, -1, + 56, 253, 328, 225, 328, 254, -1, 61, 219, 331, + 220, -1, 319, -1, 210, 318, -1, 209, 318, -1, + 318, 210, 318, -1, 318, 209, 318, -1, 226, 315, + 225, 315, 225, 315, 225, 315, 225, 315, 227, -1, + 226, 315, 225, 315, 225, 315, 225, 315, 227, -1, + 226, 315, 225, 315, 225, 315, 227, -1, 219, 315, + 225, 315, 225, 315, 220, -1, 321, -1, 320, 225, + 321, -1, 315, -1, 323, -1, 226, 227, -1, 226, + 324, 227, -1, 210, 226, 324, 227, -1, 315, 211, + 226, 324, 227, -1, 321, -1, 5, -1, 210, 323, + -1, 315, 211, 323, -1, 315, 8, 315, -1, 315, + 8, 315, 8, 315, -1, 84, 226, 315, 227, -1, + 84, 5, -1, 87, 5, -1, 90, 5, -1, 92, + 5, -1, 112, 84, 5, -1, 112, 87, 5, -1, + 112, 90, 5, -1, 112, 92, 5, -1, 112, 84, + 226, 324, 227, -1, 112, 87, 226, 324, 227, -1, + 112, 90, 226, 324, 227, -1, 112, 92, 226, 324, + 227, -1, 84, 164, 62, 226, 315, 225, 315, 225, + 315, 225, 315, 225, 315, 225, 315, 227, -1, 87, + 164, 62, 226, 315, 225, 315, 225, 315, 225, 315, + 225, 315, 225, 315, 227, -1, 90, 164, 62, 226, + 315, 225, 315, 225, 315, 225, 315, 225, 315, 225, + 315, 227, -1, 92, 164, 62, 226, 315, 225, 315, + 225, 315, 225, 315, 225, 315, 225, 315, 227, -1, + 275, -1, 286, -1, 304, -1, 4, 253, 254, -1, + 332, 253, 254, -1, 37, 221, 333, 222, -1, 37, + 221, 323, 222, -1, 37, 219, 323, 220, -1, 37, + 221, 226, 324, 227, 222, -1, 37, 219, 226, 324, + 227, 220, -1, 4, 253, 226, 324, 227, 254, -1, + 332, 253, 226, 324, 227, 254, -1, 38, 253, 315, + 225, 315, 225, 315, 254, -1, 39, 253, 315, 225, + 315, 225, 315, 254, -1, 40, 253, 328, 254, -1, + 41, 253, 315, 225, 315, 225, 315, 225, 315, 225, + 315, 225, 315, 254, -1, 315, -1, 323, -1, 324, + 225, 315, -1, 324, 225, 323, -1, 226, 315, 225, + 315, 225, 315, 225, 315, 227, -1, 226, 315, 225, + 315, 225, 315, 227, -1, 333, -1, 4, 223, 161, + 223, 4, -1, 226, 327, 227, -1, 4, 221, 315, + 222, 223, 162, -1, 325, -1, 327, 225, 325, -1, + 329, -1, 333, -1, 4, 221, 315, 222, -1, 332, + 221, 315, 222, -1, 4, 219, 315, 220, -1, 332, + 219, 315, 220, -1, 4, 223, 4, -1, 4, 221, + 315, 222, 223, 4, -1, 5, -1, 194, 221, 333, + 222, -1, 65, -1, 192, -1, 70, -1, 181, 219, + 328, 220, -1, 180, 219, 328, 225, 328, 220, -1, + 182, 253, 328, 254, -1, 182, 253, 328, 225, 328, + 254, -1, 46, 253, 331, 254, -1, 47, 219, 328, + 220, -1, 48, 219, 328, 220, -1, 49, 219, 328, + 225, 328, 225, 328, 220, -1, 44, 253, 331, 254, + -1, 58, 253, 328, 254, -1, 59, 253, 328, 254, + -1, 60, 253, 328, 254, -1, 57, 253, 315, 225, + 328, 225, 328, 254, -1, 52, 253, 328, 225, 315, + 225, 315, 254, -1, 52, 253, 328, 225, 315, 254, + -1, 45, 253, 328, 254, -1, 45, 253, 328, 225, + 324, 254, -1, 66, 253, 328, 254, -1, 67, -1, + 51, 253, 328, 254, -1, 50, 253, 328, 254, -1, + -1, 81, 253, 329, 330, 266, 254, -1, 328, -1, + 331, 225, 328, -1, 4, 228, 226, 315, 227, -1, + 332, 228, 226, 315, 227, -1, 4, -1, 332, -1, + 195, 221, 328, 222, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -1387,31 +1390,31 @@ static const yytype_uint16 yyrline[] = 4130, 4129, 4143, 4142, 4156, 4155, 4169, 4168, 4182, 4181, 4198, 4201, 4207, 4219, 4239, 4263, 4267, 4271, 4275, 4279, 4283, 4289, 4295, 4299, 4303, 4307, 4311, 4330, 4343, 4344, - 4345, 4346, 4347, 4351, 4352, 4353, 4356, 4384, 4406, 4409, - 4425, 4428, 4445, 4448, 4454, 4457, 4464, 4467, 4474, 4530, - 4600, 4605, 4672, 4708, 4716, 4759, 4798, 4818, 4850, 4877, - 4903, 4929, 4955, 4981, 5003, 5031, 5059, 5087, 5115, 5143, - 5182, 5221, 5242, 5263, 5290, 5294, 5304, 5339, 5340, 5341, - 5345, 5351, 5363, 5381, 5409, 5410, 5411, 5412, 5413, 5414, - 5415, 5416, 5417, 5424, 5425, 5426, 5427, 5428, 5429, 5430, - 5431, 5432, 5433, 5434, 5435, 5436, 5437, 5438, 5439, 5440, - 5441, 5442, 5443, 5444, 5445, 5446, 5447, 5448, 5449, 5450, - 5451, 5452, 5453, 5454, 5455, 5456, 5465, 5466, 5467, 5468, - 5469, 5470, 5471, 5472, 5473, 5474, 5475, 5480, 5479, 5487, - 5492, 5497, 5514, 5532, 5550, 5568, 5586, 5591, 5597, 5612, - 5631, 5651, 5671, 5691, 5714, 5719, 5724, 5734, 5744, 5749, - 5760, 5769, 5774, 5779, 5806, 5810, 5814, 5818, 5822, 5829, - 5833, 5837, 5841, 5848, 5853, 5860, 5865, 5869, 5874, 5878, - 5886, 5897, 5901, 5913, 5921, 5929, 5936, 5946, 5975, 5979, - 5983, 5987, 5991, 5995, 5999, 6003, 6007, 6036, 6065, 6094, - 6123, 6136, 6149, 6162, 6175, 6185, 6195, 6205, 6217, 6230, - 6242, 6246, 6250, 6254, 6258, 6276, 6294, 6302, 6310, 6339, - 6352, 6357, 6361, 6365, 6377, 6381, 6393, 6410, 6420, 6424, - 6439, 6444, 6451, 6455, 6468, 6482, 6496, 6510, 6524, 6532, - 6543, 6547, 6551, 6559, 6565, 6571, 6579, 6587, 6594, 6602, - 6617, 6631, 6645, 6657, 6673, 6682, 6691, 6701, 6712, 6720, - 6728, 6732, 6751, 6758, 6764, 6771, 6779, 6778, 6791, 6796, - 6802, 6811, 6824, 6827, 6831 + 4345, 4346, 4347, 4351, 4352, 4353, 4356, 4381, 4406, 4428, + 4431, 4447, 4450, 4467, 4470, 4476, 4479, 4486, 4489, 4496, + 4552, 4622, 4627, 4694, 4730, 4738, 4781, 4820, 4840, 4872, + 4899, 4925, 4951, 4977, 5003, 5025, 5053, 5081, 5109, 5137, + 5165, 5204, 5243, 5264, 5285, 5312, 5316, 5326, 5361, 5362, + 5363, 5367, 5373, 5385, 5403, 5431, 5432, 5433, 5434, 5435, + 5436, 5437, 5438, 5439, 5446, 5447, 5448, 5449, 5450, 5451, + 5452, 5453, 5454, 5455, 5456, 5457, 5458, 5459, 5460, 5461, + 5462, 5463, 5464, 5465, 5466, 5467, 5468, 5469, 5470, 5471, + 5472, 5473, 5474, 5475, 5476, 5477, 5478, 5487, 5488, 5489, + 5490, 5491, 5492, 5493, 5494, 5495, 5496, 5497, 5502, 5501, + 5509, 5514, 5519, 5536, 5554, 5572, 5590, 5608, 5613, 5619, + 5634, 5653, 5673, 5693, 5713, 5736, 5741, 5746, 5756, 5766, + 5771, 5782, 5791, 5796, 5801, 5828, 5832, 5836, 5840, 5844, + 5851, 5855, 5859, 5863, 5870, 5875, 5882, 5887, 5891, 5896, + 5900, 5908, 5919, 5923, 5935, 5943, 5951, 5958, 5968, 5997, + 6001, 6005, 6009, 6013, 6017, 6021, 6025, 6029, 6058, 6087, + 6116, 6145, 6158, 6171, 6184, 6197, 6207, 6217, 6227, 6239, + 6252, 6264, 6268, 6272, 6276, 6280, 6298, 6316, 6324, 6332, + 6361, 6374, 6379, 6383, 6387, 6399, 6403, 6415, 6432, 6442, + 6446, 6461, 6466, 6473, 6477, 6490, 6504, 6518, 6532, 6546, + 6554, 6565, 6569, 6573, 6581, 6587, 6593, 6601, 6609, 6616, + 6624, 6639, 6653, 6667, 6679, 6695, 6704, 6713, 6723, 6734, + 6742, 6750, 6754, 6773, 6780, 6786, 6793, 6801, 6800, 6813, + 6818, 6824, 6833, 6846, 6849, 6853 }; #endif @@ -1437,43 +1440,44 @@ static const char *const yytname[] = "tUndefineConstant", "tDefineNumber", "tDefineString", "tSetNumber", "tSetString", "tPoint", "tCircle", "tEllipse", "tLine", "tSphere", "tPolarSphere", "tSurface", "tSpline", "tVolume", "tBlock", "tCylinder", - "tCone", "tEllipsoid", "tQuadric", "tCharacteristic", "tLength", - "tParametric", "tElliptic", "tRefineMesh", "tAdaptMesh", "tRelocateMesh", - "tSetFactory", "tThruSections", "tPlane", "tRuled", "tTransfinite", - "tComplex", "tPhysical", "tCompound", "tPeriodic", "tUsing", "tPlugin", - "tDegenerated", "tRecursive", "tRotate", "tTranslate", "tSymmetry", - "tDilate", "tExtrude", "tLevelset", "tAffine", "tBooleanUnion", - "tBooleanIntersection", "tBooleanDifference", "tBooleanSection", - "tBooleanFragments", "tRecombine", "tSmoother", "tSplit", "tDelete", - "tCoherence", "tIntersect", "tMeshAlgorithm", "tReverse", "tLayers", - "tScaleLast", "tHole", "tAlias", "tAliasWithOptions", "tCopyOptions", - "tQuadTriAddVerts", "tQuadTriNoNewVerts", "tQuadTriSngl", "tQuadTriDbl", - "tRecombLaterals", "tTransfQuadTri", "tText2D", "tText3D", - "tInterpolationScheme", "tTime", "tCombine", "tBSpline", "tBezier", - "tNurbs", "tNurbsOrder", "tNurbsKnots", "tColor", "tColorTable", "tFor", - "tIn", "tEndFor", "tIf", "tElseIf", "tElse", "tEndIf", "tExit", "tAbort", - "tField", "tReturn", "tCall", "tSlide", "tMacro", "tShow", "tHide", - "tGetValue", "tGetStringValue", "tGetEnv", "tGetString", "tGetNumber", - "tHomology", "tCohomology", "tBetti", "tExists", "tFileExists", - "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", - "tGmshExecutableName", "tSetPartition", "tNameToString", "tStringToName", - "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", - "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "tGREATEROREQUAL", - "tLESSOREQUAL", "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "UNARYPREC", - "tMINUSMINUS", "tPLUSPLUS", "'^'", "'('", "')'", "'['", "']'", "'.'", - "'#'", "','", "'{'", "'}'", "'~'", "$accept", "All", "GeoFormatItems", - "GeoFormatItem", "SendToFile", "Printf", "View", "Views", - "ElementCoords", "ElementValues", "Element", "@1", "@2", "Text2DValues", - "Text2D", "@3", "Text3DValues", "Text3D", "@4", "InterpolationMatrix", - "Time", "@5", "NumericAffectation", "NumericIncrement", "LP", "RP", - "Affectation", "Comma", "DefineConstants", "@6", "@7", "@8", "@9", - "UndefineConstants", "Enumeration", "FloatParameterOptions", - "FloatParameterOption", "CharParameterOptions", "CharParameterOption", - "PhysicalId0", "PhysicalId1", "PhysicalId2", "PhysicalId3", - "InSphereCenter", "CircleOptions", "Shape", "Transform", "MultipleShape", - "ListOfShapes", "LevelSet", "Delete", "Colorify", "SetPartition", - "Visibility", "Command", "Slide", "Loop", "Extrude", "@10", "@11", "@12", - "@13", "@14", "@15", "@16", "@17", "@18", "@19", "@20", "@21", "@22", + "tCone", "tEllipsoid", "tQuadric", "tShapeFromFile", "tCharacteristic", + "tLength", "tParametric", "tElliptic", "tRefineMesh", "tAdaptMesh", + "tRelocateMesh", "tSetFactory", "tThruSections", "tPlane", "tRuled", + "tTransfinite", "tComplex", "tPhysical", "tCompound", "tPeriodic", + "tUsing", "tPlugin", "tDegenerated", "tRecursive", "tRotate", + "tTranslate", "tSymmetry", "tDilate", "tExtrude", "tLevelset", "tAffine", + "tBooleanUnion", "tBooleanIntersection", "tBooleanDifference", + "tBooleanSection", "tBooleanFragments", "tRecombine", "tSmoother", + "tSplit", "tDelete", "tCoherence", "tIntersect", "tMeshAlgorithm", + "tReverse", "tLayers", "tScaleLast", "tHole", "tAlias", + "tAliasWithOptions", "tCopyOptions", "tQuadTriAddVerts", + "tQuadTriNoNewVerts", "tQuadTriSngl", "tQuadTriDbl", "tRecombLaterals", + "tTransfQuadTri", "tText2D", "tText3D", "tInterpolationScheme", "tTime", + "tCombine", "tBSpline", "tBezier", "tNurbs", "tNurbsOrder", + "tNurbsKnots", "tColor", "tColorTable", "tFor", "tIn", "tEndFor", "tIf", + "tElseIf", "tElse", "tEndIf", "tExit", "tAbort", "tField", "tReturn", + "tCall", "tSlide", "tMacro", "tShow", "tHide", "tGetValue", + "tGetStringValue", "tGetEnv", "tGetString", "tGetNumber", "tHomology", + "tCohomology", "tBetti", "tExists", "tFileExists", "tGMSH_MAJOR_VERSION", + "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", "tGmshExecutableName", + "tSetPartition", "tNameToString", "tStringToName", "tAFFECTDIVIDE", + "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", "tOR", "tAND", + "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "tGREATEROREQUAL", "tLESSOREQUAL", + "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "UNARYPREC", "tMINUSMINUS", + "tPLUSPLUS", "'^'", "'('", "')'", "'['", "']'", "'.'", "'#'", "','", + "'{'", "'}'", "'~'", "$accept", "All", "GeoFormatItems", "GeoFormatItem", + "SendToFile", "Printf", "View", "Views", "ElementCoords", + "ElementValues", "Element", "@1", "@2", "Text2DValues", "Text2D", "@3", + "Text3DValues", "Text3D", "@4", "InterpolationMatrix", "Time", "@5", + "NumericAffectation", "NumericIncrement", "LP", "RP", "Affectation", + "Comma", "DefineConstants", "@6", "@7", "@8", "@9", "UndefineConstants", + "Enumeration", "FloatParameterOptions", "FloatParameterOption", + "CharParameterOptions", "CharParameterOption", "PhysicalId0", + "PhysicalId1", "PhysicalId2", "PhysicalId3", "InSphereCenter", + "CircleOptions", "Shape", "Transform", "MultipleShape", "ListOfShapes", + "LevelSet", "Delete", "Colorify", "SetPartition", "Visibility", + "Command", "Slide", "Loop", "Extrude", "@10", "@11", "@12", "@13", "@14", + "@15", "@16", "@17", "@18", "@19", "@20", "@21", "@22", "ExtrudeParameters", "ExtrudeParameter", "BooleanOperator", "BooleanOption", "Boolean", "BooleanShape", "TransfiniteType", "TransfiniteArrangement", "TransfiniteCorners", "RecombineAngle", @@ -1510,75 +1514,75 @@ static const yytype_uint16 yytoknum[] = 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 63, - 454, 455, 456, 457, 60, 62, 458, 459, 43, 45, - 42, 47, 37, 33, 460, 461, 462, 94, 40, 41, - 91, 93, 46, 35, 44, 123, 125, 126 + 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, + 63, 455, 456, 457, 458, 60, 62, 459, 460, 43, + 45, 42, 47, 37, 33, 461, 462, 463, 94, 40, + 41, 91, 93, 46, 35, 44, 123, 125, 126 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 228, 229, 229, 230, 230, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 232, 232, 233, 233, 233, - 233, 233, 233, 234, 234, 234, 234, 235, 235, 235, - 235, 235, 235, 236, 236, 237, 237, 239, 240, 238, - 241, 241, 243, 242, 244, 244, 246, 245, 247, 247, - 249, 248, 250, 250, 250, 250, 250, 251, 251, 252, - 252, 253, 253, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 255, 255, 256, 256, 256, 257, - 256, 258, 256, 259, 256, 256, 260, 256, 261, 261, - 262, 262, 262, 263, 263, 264, 264, 264, 265, 265, - 266, 266, 266, 266, 267, 267, 267, 268, 268, 268, - 269, 269, 269, 270, 270, 270, 271, 271, 272, 272, - 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, - 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, - 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, - 273, 273, 273, 273, 273, 273, 274, 274, 274, 274, - 274, 274, 274, 274, 275, 275, 276, 276, 276, 276, - 276, 276, 277, 277, 277, 277, 277, 277, 277, 277, - 277, 277, 277, 277, 278, 278, 278, 278, 278, 279, - 279, 280, 281, 281, 281, 281, 281, 281, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, - 282, 282, 282, 282, 282, 282, 282, 283, 284, 284, - 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, - 284, 284, 285, 285, 285, 286, 285, 287, 285, 288, - 285, 289, 285, 285, 285, 285, 285, 285, 285, 285, - 285, 285, 290, 285, 291, 285, 292, 285, 293, 285, - 294, 285, 295, 285, 296, 285, 297, 285, 298, 285, - 299, 299, 300, 300, 300, 300, 300, 300, 300, 300, - 300, 300, 300, 300, 300, 300, 300, 300, 301, 301, - 301, 301, 301, 302, 302, 302, 303, 304, 305, 305, - 306, 306, 307, 307, 308, 308, 309, 309, 310, 310, - 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, - 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, - 310, 310, 310, 310, 311, 311, 311, 312, 312, 312, - 313, 313, 313, 313, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 315, 315, 315, 315, - 315, 315, 315, 315, 315, 315, 315, 316, 315, 315, + 0, 229, 230, 230, 231, 231, 232, 232, 232, 232, + 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, + 232, 232, 232, 232, 232, 233, 233, 234, 234, 234, + 234, 234, 234, 235, 235, 235, 235, 236, 236, 236, + 236, 236, 236, 237, 237, 238, 238, 240, 241, 239, + 242, 242, 244, 243, 245, 245, 247, 246, 248, 248, + 250, 249, 251, 251, 251, 251, 251, 252, 252, 253, + 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 256, 256, 257, 257, 257, 258, + 257, 259, 257, 260, 257, 257, 261, 257, 262, 262, + 263, 263, 263, 264, 264, 265, 265, 265, 266, 266, + 267, 267, 267, 267, 268, 268, 268, 269, 269, 269, + 270, 270, 270, 271, 271, 271, 272, 272, 273, 273, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 275, 275, 275, 275, + 275, 275, 275, 275, 276, 276, 277, 277, 277, 277, + 277, 277, 278, 278, 278, 278, 278, 278, 278, 278, + 278, 278, 278, 278, 279, 279, 279, 279, 279, 280, + 280, 281, 282, 282, 282, 282, 282, 282, 283, 283, + 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, + 283, 283, 283, 283, 283, 283, 283, 284, 285, 285, + 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, + 285, 285, 286, 286, 286, 287, 286, 288, 286, 289, + 286, 290, 286, 286, 286, 286, 286, 286, 286, 286, + 286, 286, 291, 286, 292, 286, 293, 286, 294, 286, + 295, 286, 296, 286, 297, 286, 298, 286, 299, 286, + 300, 300, 301, 301, 301, 301, 301, 301, 301, 301, + 301, 301, 301, 301, 301, 301, 301, 301, 302, 302, + 302, 302, 302, 303, 303, 303, 304, 304, 305, 306, + 306, 307, 307, 308, 308, 309, 309, 310, 310, 311, + 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, + 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, + 311, 311, 311, 311, 311, 312, 312, 312, 313, 313, + 313, 314, 314, 314, 314, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, - 315, 315, 315, 315, 317, 317, 317, 317, 317, 318, - 318, 318, 318, 319, 319, 320, 320, 320, 320, 320, - 320, 321, 321, 322, 322, 322, 322, 322, 322, 322, - 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, - 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, - 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, - 323, 323, 323, 323, 324, 324, 324, 324, 325, 325, - 326, 326, 327, 327, 327, 327, 327, 327, 327, 327, - 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, - 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, - 328, 328, 328, 328, 328, 328, 329, 328, 330, 330, - 331, 331, 332, 332, 332 + 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, + 315, 315, 315, 315, 315, 315, 315, 316, 316, 316, + 316, 316, 316, 316, 316, 316, 316, 316, 317, 316, + 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, + 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, + 316, 316, 316, 316, 316, 318, 318, 318, 318, 318, + 319, 319, 319, 319, 320, 320, 321, 321, 321, 321, + 321, 321, 322, 322, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, + 323, 324, 324, 324, 324, 325, 325, 325, 325, 326, + 326, 327, 327, 328, 328, 328, 328, 328, 328, 328, + 328, 329, 329, 329, 329, 329, 329, 329, 329, 329, + 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, + 329, 329, 329, 329, 329, 329, 329, 330, 329, 331, + 331, 332, 332, 333, 333, 333 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1618,31 +1622,31 @@ static const yytype_uint8 yyr2[] = 0, 16, 0, 16, 0, 18, 0, 18, 0, 18, 1, 2, 5, 7, 9, 2, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 9, 6, 1, 1, - 1, 1, 1, 0, 2, 3, 9, 14, 0, 3, - 0, 1, 0, 2, 0, 2, 0, 2, 7, 6, - 8, 5, 3, 8, 5, 4, 6, 11, 11, 18, - 18, 12, 12, 12, 10, 10, 10, 10, 10, 4, - 4, 4, 4, 4, 2, 3, 6, 1, 1, 1, - 2, 5, 7, 10, 1, 3, 2, 2, 2, 3, + 1, 1, 1, 0, 2, 3, 9, 4, 14, 0, + 3, 0, 1, 0, 2, 0, 2, 0, 2, 7, + 6, 8, 5, 3, 8, 5, 4, 6, 11, 11, + 18, 18, 12, 12, 12, 10, 10, 10, 10, 10, + 4, 4, 4, 4, 4, 2, 3, 6, 1, 1, + 1, 2, 5, 7, 10, 1, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 5, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, - 4, 4, 6, 6, 6, 4, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 0, 6, 4, - 6, 1, 4, 4, 4, 4, 4, 4, 4, 2, - 5, 5, 5, 5, 3, 6, 4, 7, 6, 6, - 6, 4, 6, 4, 1, 2, 2, 3, 3, 11, - 9, 7, 7, 1, 3, 1, 1, 2, 3, 4, - 5, 1, 1, 2, 3, 3, 5, 4, 2, 2, - 2, 2, 3, 3, 3, 3, 5, 5, 5, 5, - 16, 16, 16, 16, 1, 1, 1, 3, 3, 4, - 4, 4, 6, 6, 6, 6, 8, 8, 4, 14, - 1, 1, 3, 3, 9, 7, 1, 5, 3, 6, - 1, 3, 1, 1, 4, 4, 4, 4, 3, 6, - 1, 4, 1, 1, 1, 4, 6, 4, 6, 4, - 4, 4, 8, 4, 4, 4, 4, 8, 8, 6, - 4, 6, 4, 1, 4, 4, 0, 6, 1, 3, - 5, 5, 1, 1, 4 + 3, 3, 3, 3, 5, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, + 4, 4, 4, 6, 6, 6, 4, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 0, 6, + 4, 6, 1, 4, 4, 4, 4, 4, 4, 4, + 2, 5, 5, 5, 5, 3, 6, 4, 7, 6, + 6, 6, 4, 6, 4, 1, 2, 2, 3, 3, + 11, 9, 7, 7, 1, 3, 1, 1, 2, 3, + 4, 5, 1, 1, 2, 3, 3, 5, 4, 2, + 2, 2, 2, 3, 3, 3, 3, 5, 5, 5, + 5, 16, 16, 16, 16, 1, 1, 1, 3, 3, + 4, 4, 4, 6, 6, 6, 6, 8, 8, 4, + 14, 1, 1, 3, 3, 9, 7, 1, 5, 3, + 6, 1, 3, 1, 1, 4, 4, 4, 4, 3, + 6, 1, 4, 1, 1, 1, 4, 6, 4, 6, + 4, 4, 4, 8, 4, 4, 4, 4, 8, 8, + 6, 4, 6, 4, 1, 4, 4, 0, 6, 1, + 3, 5, 5, 1, 1, 4 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1650,2587 +1654,2543 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 0, 0, 2, 3, 1, 582, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2, 3, 1, 583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 338, 339, - 340, 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 272, 0, 0, 280, 281, 0, 0, 0, 275, - 0, 0, 0, 0, 0, 387, 388, 389, 0, 0, - 5, 7, 6, 8, 9, 10, 23, 11, 12, 13, - 14, 22, 21, 20, 15, 0, 16, 17, 18, 19, - 0, 24, 583, 0, 436, 582, 550, 437, 439, 440, - 438, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 338, + 339, 340, 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 272, 0, 0, 280, 281, 0, 0, 0, + 275, 0, 0, 0, 0, 0, 388, 389, 390, 0, + 0, 5, 7, 6, 8, 9, 10, 23, 11, 12, + 13, 14, 22, 21, 20, 15, 0, 16, 17, 18, + 19, 0, 24, 584, 0, 437, 583, 551, 438, 440, + 441, 439, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 552, 0, 573, 554, 444, 445, 446, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 441, 442, - 443, 553, 0, 0, 0, 0, 69, 70, 0, 0, - 216, 0, 0, 0, 394, 0, 542, 583, 451, 0, - 0, 0, 0, 259, 0, 261, 262, 257, 258, 0, - 263, 264, 126, 138, 69, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 265, 0, 0, 0, + 0, 0, 553, 0, 574, 555, 445, 446, 447, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 442, + 443, 444, 554, 0, 0, 0, 0, 69, 70, 0, + 0, 216, 0, 0, 0, 395, 0, 543, 584, 452, + 0, 0, 0, 0, 259, 0, 261, 262, 257, 258, + 0, 263, 264, 126, 138, 69, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, - 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 582, - 0, 216, 583, 0, 0, 384, 0, 0, 0, 0, - 0, 0, 0, 0, 582, 492, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 514, - 515, 0, 516, 485, 491, 0, 486, 583, 451, 0, - 0, 0, 0, 582, 0, 0, 536, 0, 0, 0, - 0, 255, 256, 0, 582, 0, 0, 0, 273, 274, - 0, 216, 0, 216, 582, 0, 583, 0, 0, 216, - 390, 0, 0, 69, 70, 0, 0, 62, 66, 65, - 64, 63, 68, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 475, 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 583, 0, 216, 584, 0, 0, 385, 0, 0, + 0, 0, 0, 0, 0, 0, 583, 493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 515, 516, 0, 517, 486, 492, 0, 487, 584, + 452, 0, 0, 0, 0, 583, 0, 0, 537, 0, + 0, 0, 0, 255, 256, 0, 583, 0, 0, 0, + 273, 274, 0, 216, 0, 216, 583, 0, 584, 0, + 0, 216, 391, 0, 0, 69, 70, 0, 0, 62, + 66, 65, 64, 63, 68, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 397, 396, 398, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 215, 0, 214, 0, 0, 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 37, 248, 0, 0, 459, - 188, 0, 582, 0, 542, 583, 543, 0, 0, 578, - 0, 124, 124, 0, 0, 0, 0, 530, 531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 352, 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 216, 216, 0, 476, 475, 0, - 0, 0, 0, 216, 216, 0, 0, 0, 0, 0, - 0, 0, 291, 0, 216, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 354, 0, 0, 0, 0, 0, - 0, 0, 237, 385, 0, 0, 0, 0, 0, 0, - 0, 0, 69, 70, 0, 0, 0, 0, 0, 0, - 0, 0, 498, 0, 0, 499, 0, 500, 0, 501, - 0, 0, 0, 0, 0, 0, 396, 493, 0, 487, - 0, 0, 0, 362, 69, 70, 0, 254, 0, 0, - 0, 0, 0, 216, 0, 0, 0, 0, 0, 277, - 276, 0, 242, 0, 243, 0, 0, 0, 216, 0, - 0, 0, 0, 343, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 78, 0, 0, 0, 464, 0, + 0, 0, 0, 0, 398, 397, 399, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 215, 0, 214, 0, + 0, 252, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 37, 248, 0, + 0, 460, 188, 0, 583, 0, 543, 584, 544, 0, + 0, 579, 0, 124, 124, 0, 0, 0, 0, 531, + 532, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 353, 353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 216, 216, 0, + 477, 476, 0, 0, 0, 0, 216, 216, 0, 0, + 0, 0, 0, 0, 0, 291, 0, 216, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, + 0, 0, 0, 0, 0, 237, 386, 0, 0, 0, + 0, 0, 0, 0, 0, 69, 70, 0, 0, 0, + 0, 0, 0, 0, 0, 499, 0, 0, 500, 0, + 501, 0, 502, 0, 0, 0, 0, 0, 0, 397, + 494, 0, 488, 0, 0, 0, 363, 69, 70, 0, + 254, 0, 0, 0, 0, 0, 216, 0, 0, 0, + 0, 0, 277, 276, 0, 242, 0, 243, 0, 0, + 0, 216, 0, 0, 0, 0, 343, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, + 0, 465, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 447, 576, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 62, 63, 0, 395, 62, 63, 0, 0, 62, - 0, 0, 0, 0, 0, 211, 0, 0, 0, 0, - 217, 0, 0, 0, 412, 411, 410, 409, 405, 406, - 408, 407, 400, 399, 401, 402, 403, 404, 0, 0, - 0, 189, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 448, 577, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 62, 63, 0, 396, 62, 63, + 0, 0, 62, 0, 0, 0, 0, 0, 211, 0, + 0, 0, 0, 217, 0, 0, 0, 413, 412, 411, + 410, 406, 407, 409, 408, 401, 400, 402, 403, 404, + 405, 0, 0, 0, 189, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 381, 382, 383, 0, 0, 0, 0, 0, - 0, 350, 0, 0, 0, 154, 155, 0, 157, 158, - 0, 160, 161, 0, 163, 164, 0, 183, 0, 196, - 0, 203, 0, 0, 0, 0, 175, 216, 0, 0, - 0, 0, 0, 478, 477, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 285, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 365, 0, 0, 238, - 0, 0, 234, 0, 0, 0, 380, 379, 0, 0, - 0, 0, 0, 464, 71, 72, 0, 517, 0, 0, - 0, 0, 0, 451, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 502, 0, 503, 0, 504, 0, 505, - 0, 0, 395, 488, 495, 0, 401, 494, 0, 0, - 0, 518, 0, 0, 0, 0, 0, 0, 0, 0, - 278, 279, 0, 0, 244, 246, 0, 584, 0, 0, - 0, 0, 0, 0, 62, 63, 0, 0, 62, 63, - 0, 0, 0, 0, 93, 77, 0, 453, 452, 466, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 435, - 423, 0, 425, 426, 427, 428, 429, 430, 431, 0, - 0, 0, 563, 0, 570, 559, 560, 561, 0, 575, - 574, 0, 471, 0, 0, 0, 0, 564, 565, 566, - 473, 572, 143, 148, 116, 0, 0, 555, 0, 557, - 0, 449, 456, 457, 551, 0, 0, 0, 62, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, - 0, 0, 0, 0, 458, 0, 0, 0, 0, 580, - 0, 0, 47, 0, 0, 0, 60, 0, 38, 39, - 40, 41, 42, 455, 454, 0, 0, 548, 27, 25, - 0, 0, 0, 0, 28, 0, 0, 249, 579, 73, - 127, 74, 139, 0, 0, 0, 532, 533, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 170, 0, 0, 0, - 348, 353, 351, 0, 361, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 395, 395, 395, 0, 0, 0, - 0, 0, 245, 247, 0, 0, 0, 206, 208, 0, + 0, 347, 0, 0, 0, 0, 382, 383, 384, 0, + 0, 0, 0, 0, 0, 351, 0, 0, 0, 154, + 155, 0, 157, 158, 0, 160, 161, 0, 163, 164, + 0, 183, 0, 196, 0, 203, 0, 0, 0, 0, + 175, 216, 0, 0, 0, 0, 0, 479, 478, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 320, 0, 282, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 355, 364, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 453, - 452, 0, 0, 521, 0, 520, 519, 0, 0, 528, - 0, 0, 497, 0, 0, 0, 0, 0, 0, 0, - 489, 0, 0, 455, 454, 0, 0, 0, 0, 0, - 0, 239, 0, 0, 0, 0, 0, 241, 0, 344, - 0, 0, 0, 0, 391, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 581, 0, 0, 461, 0, - 460, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 366, 0, 0, 238, 0, 0, 234, 0, 0, 0, + 381, 380, 0, 0, 0, 0, 0, 465, 71, 72, + 0, 518, 0, 0, 0, 0, 0, 452, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 503, 0, 504, + 0, 505, 0, 506, 0, 0, 396, 489, 496, 0, + 402, 495, 0, 0, 0, 519, 0, 0, 0, 0, + 0, 0, 0, 0, 278, 279, 0, 0, 244, 246, + 0, 585, 0, 0, 0, 0, 0, 0, 62, 63, + 0, 0, 62, 63, 0, 0, 0, 0, 93, 77, + 0, 454, 453, 467, 415, 416, 417, 418, 419, 420, + 421, 422, 423, 436, 424, 0, 426, 427, 428, 429, + 430, 431, 432, 0, 0, 0, 564, 0, 571, 560, + 561, 562, 0, 576, 575, 0, 472, 0, 0, 0, + 0, 565, 566, 567, 474, 573, 143, 148, 116, 0, + 0, 556, 0, 558, 0, 450, 457, 458, 552, 0, + 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 110, 0, 0, 0, 0, 459, 0, + 0, 0, 0, 581, 0, 0, 47, 0, 0, 0, + 60, 0, 38, 39, 40, 41, 42, 456, 455, 0, + 0, 549, 27, 25, 0, 0, 0, 0, 28, 0, + 0, 249, 580, 73, 127, 74, 139, 0, 0, 0, + 533, 534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 87, 0, 91, 0, 0, 79, 0, 0, 0, - 0, 83, 106, 108, 0, 0, 540, 0, 114, 0, - 0, 0, 0, 0, 413, 0, 0, 0, 0, 0, - 33, 463, 462, 546, 544, 26, 0, 0, 547, 545, + 170, 0, 0, 0, 349, 354, 352, 0, 362, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 396, 396, + 396, 0, 0, 0, 0, 0, 245, 247, 0, 0, + 0, 206, 208, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 320, 0, + 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 356, 365, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 454, 453, 0, 0, 522, 0, 521, + 520, 0, 0, 529, 0, 0, 498, 0, 0, 0, + 0, 0, 0, 0, 490, 0, 0, 456, 455, 0, + 0, 0, 0, 0, 0, 239, 0, 0, 0, 0, + 0, 241, 0, 344, 0, 0, 0, 0, 392, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 582, + 0, 0, 462, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 168, 168, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 173, 0, 0, 0, 0, 0, - 0, 0, 0, 359, 0, 0, 156, 0, 159, 0, - 162, 0, 165, 0, 0, 0, 0, 0, 0, 0, - 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 326, 0, 0, 325, 0, 332, 0, 334, 0, 328, - 0, 330, 0, 292, 321, 0, 0, 0, 233, 0, - 0, 0, 0, 0, 0, 0, 366, 0, 236, 235, - 386, 0, 0, 34, 35, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 506, 507, 508, - 509, 496, 490, 0, 0, 0, 0, 537, 0, 0, - 0, 268, 0, 0, 0, 216, 345, 216, 0, 0, - 0, 0, 88, 0, 92, 0, 0, 80, 0, 84, - 0, 251, 465, 250, 424, 432, 433, 434, 571, 0, - 0, 569, 469, 470, 472, 0, 0, 448, 144, 0, - 577, 149, 468, 556, 558, 450, 0, 0, 0, 89, - 0, 0, 0, 62, 0, 0, 0, 0, 81, 0, - 0, 0, 538, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 483, 0, 0, 29, 30, 0, 31, 0, - 0, 128, 135, 0, 0, 75, 76, 171, 0, 0, - 0, 0, 0, 0, 174, 0, 0, 191, 192, 0, - 0, 176, 201, 193, 194, 0, 0, 0, 202, 0, - 166, 0, 358, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 253, 0, 0, 0, 0, 216, - 216, 0, 302, 0, 304, 0, 306, 0, 327, 485, - 0, 0, 333, 335, 329, 331, 0, 0, 286, 0, + 0, 0, 0, 0, 0, 87, 0, 91, 0, 0, + 79, 0, 0, 0, 0, 83, 106, 108, 0, 0, + 541, 0, 114, 0, 0, 0, 0, 0, 414, 0, + 0, 0, 0, 0, 33, 464, 463, 547, 545, 26, + 0, 0, 548, 546, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 168, 168, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 173, 0, + 0, 0, 0, 0, 0, 0, 0, 360, 0, 0, + 156, 0, 159, 0, 162, 0, 165, 0, 0, 0, + 0, 0, 0, 0, 240, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 326, 0, 0, 325, 0, 332, + 0, 334, 0, 328, 0, 330, 0, 292, 321, 0, + 0, 0, 233, 0, 0, 0, 0, 0, 0, 0, + 367, 0, 236, 235, 387, 0, 0, 34, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 465, 524, 523, 522, 0, 0, 0, - 0, 0, 0, 0, 525, 179, 180, 0, 0, 0, - 0, 117, 121, 0, 0, 343, 343, 0, 392, 0, - 0, 0, 90, 0, 0, 0, 82, 0, 467, 0, - 0, 0, 0, 0, 0, 100, 0, 0, 94, 0, - 0, 0, 0, 111, 0, 0, 112, 0, 541, 218, - 219, 220, 221, 0, 0, 43, 0, 0, 0, 0, - 0, 45, 549, 0, 0, 129, 136, 0, 0, 0, - 0, 169, 177, 178, 182, 0, 0, 195, 0, 0, - 360, 0, 186, 0, 0, 349, 200, 172, 185, 199, - 205, 184, 0, 197, 204, 0, 0, 0, 0, 0, - 0, 482, 0, 481, 0, 0, 0, 293, 0, 0, - 294, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 232, 231, 0, 0, 0, 0, 0, 0, 0, - 0, 222, 0, 0, 363, 36, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 535, 0, 270, 269, 0, - 0, 0, 0, 0, 0, 0, 101, 0, 0, 95, - 0, 0, 0, 562, 568, 567, 0, 145, 147, 0, - 150, 151, 152, 102, 104, 96, 98, 107, 109, 0, - 115, 0, 85, 48, 0, 0, 0, 484, 0, 0, - 0, 32, 0, 143, 148, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 187, 0, 356, 356, 0, - 122, 123, 216, 0, 209, 210, 0, 0, 0, 0, - 0, 0, 0, 322, 0, 0, 216, 0, 0, 0, - 0, 0, 0, 0, 0, 213, 212, 526, 527, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 0, 0, 346, 0, 103, 105, 97, 99, 86, 0, - 530, 531, 0, 0, 539, 0, 44, 0, 0, 0, - 46, 61, 0, 0, 0, 133, 131, 374, 376, 375, - 377, 378, 190, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 480, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 337, 0, 0, 0, - 287, 0, 223, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 534, 271, 0, 0, 216, - 393, 0, 146, 0, 0, 153, 113, 0, 0, 0, - 0, 0, 130, 137, 143, 143, 0, 0, 0, 0, - 0, 357, 367, 0, 0, 368, 0, 207, 0, 308, - 0, 0, 310, 0, 0, 312, 0, 0, 0, 323, - 0, 283, 0, 216, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 181, 120, 267, 343, 0, - 140, 0, 0, 52, 0, 58, 0, 0, 0, 0, - 0, 167, 198, 0, 371, 0, 372, 373, 479, 296, - 0, 0, 303, 297, 0, 0, 305, 298, 0, 0, - 307, 0, 0, 0, 289, 226, 0, 0, 0, 0, + 0, 507, 508, 509, 510, 497, 491, 0, 0, 0, + 0, 538, 0, 0, 0, 268, 0, 0, 0, 216, + 345, 216, 0, 0, 0, 0, 88, 0, 92, 0, + 0, 80, 0, 84, 0, 251, 466, 250, 425, 433, + 434, 435, 572, 0, 0, 570, 470, 471, 473, 0, + 0, 449, 144, 0, 578, 149, 469, 557, 559, 451, + 0, 0, 0, 89, 0, 0, 0, 62, 0, 0, + 0, 0, 81, 0, 0, 0, 539, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 484, 0, 0, 29, + 30, 0, 31, 0, 0, 128, 135, 0, 0, 75, + 76, 171, 0, 0, 0, 0, 0, 0, 174, 0, + 0, 191, 192, 0, 0, 176, 201, 193, 194, 0, + 0, 0, 202, 0, 166, 0, 359, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 253, 0, + 0, 0, 0, 216, 216, 0, 302, 0, 304, 0, + 306, 0, 327, 486, 0, 0, 333, 335, 329, 331, + 0, 0, 286, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 466, 525, 524, + 523, 0, 0, 0, 0, 0, 0, 0, 526, 179, + 180, 0, 0, 0, 0, 117, 121, 0, 0, 343, + 343, 0, 393, 0, 0, 0, 90, 0, 0, 0, + 82, 0, 468, 0, 0, 0, 0, 0, 0, 100, + 0, 0, 94, 0, 0, 0, 0, 111, 0, 0, + 112, 0, 542, 218, 219, 220, 221, 0, 0, 43, + 0, 0, 0, 0, 0, 45, 550, 0, 0, 129, + 136, 0, 0, 0, 0, 169, 177, 178, 182, 0, + 0, 195, 0, 0, 361, 0, 186, 0, 0, 350, + 200, 172, 185, 199, 205, 184, 0, 197, 204, 0, + 0, 0, 0, 0, 0, 483, 0, 482, 0, 0, + 0, 293, 0, 0, 294, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 232, 231, 0, 0, 0, + 0, 0, 0, 0, 0, 222, 0, 0, 364, 36, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 536, + 0, 270, 269, 0, 0, 0, 0, 0, 0, 0, + 101, 0, 0, 95, 0, 0, 0, 563, 569, 568, + 0, 145, 147, 0, 150, 151, 152, 102, 104, 96, + 98, 107, 109, 0, 115, 0, 85, 48, 0, 0, + 0, 485, 0, 0, 0, 32, 0, 143, 148, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 187, + 0, 357, 357, 0, 122, 123, 216, 0, 209, 210, + 0, 0, 0, 0, 0, 0, 0, 322, 0, 0, + 216, 0, 0, 0, 0, 0, 0, 0, 0, 213, + 212, 527, 528, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 0, 0, 346, 0, 103, 105, + 97, 99, 86, 0, 531, 532, 0, 0, 540, 0, + 44, 0, 0, 0, 46, 61, 0, 0, 0, 133, + 131, 375, 377, 376, 378, 379, 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 134, 132, 0, 0, 0, - 0, 314, 0, 316, 0, 318, 324, 336, 288, 284, + 481, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 337, 0, 0, 0, 287, 0, 223, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 535, + 271, 0, 0, 216, 394, 0, 146, 0, 0, 153, + 113, 0, 0, 0, 0, 0, 130, 137, 143, 143, + 0, 0, 0, 0, 0, 358, 368, 0, 0, 369, + 0, 207, 0, 308, 0, 0, 310, 0, 0, 312, + 0, 0, 0, 323, 0, 283, 0, 216, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, + 120, 267, 343, 0, 140, 0, 0, 52, 0, 58, + 0, 0, 0, 0, 0, 167, 198, 0, 372, 0, + 373, 374, 480, 296, 0, 0, 303, 297, 0, 0, + 305, 298, 0, 0, 307, 0, 0, 0, 289, 226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 141, 142, 49, 0, 56, 0, 0, - 0, 0, 0, 0, 299, 0, 0, 300, 0, 0, - 301, 0, 0, 227, 228, 229, 230, 0, 224, 0, - 0, 0, 0, 0, 347, 0, 50, 0, 0, 260, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 290, - 0, 529, 0, 0, 0, 0, 0, 0, 0, 0, - 266, 0, 0, 309, 0, 311, 0, 313, 0, 225, - 0, 0, 0, 0, 51, 53, 0, 54, 0, 0, - 0, 0, 0, 0, 510, 511, 512, 513, 0, 0, - 59, 369, 370, 315, 317, 319, 55, 57 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, + 132, 0, 0, 0, 0, 314, 0, 316, 0, 318, + 324, 336, 288, 284, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 141, 142, 49, + 0, 56, 0, 0, 0, 0, 0, 0, 299, 0, + 0, 300, 0, 0, 301, 0, 0, 227, 228, 229, + 230, 0, 224, 0, 0, 0, 0, 0, 348, 0, + 50, 0, 0, 260, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 290, 0, 530, 0, 0, 0, 0, + 0, 0, 0, 0, 266, 0, 0, 309, 0, 311, + 0, 313, 0, 225, 0, 0, 0, 0, 51, 53, + 0, 54, 0, 0, 0, 0, 0, 0, 511, 512, + 513, 514, 0, 0, 59, 370, 371, 315, 317, 319, + 55, 57 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 100, 1060, 101, 102, 758, 1634, 1640, - 1048, 1275, 1845, 2085, 1049, 2021, 2126, 1050, 2087, 1051, - 1052, 1279, 384, 479, 202, 887, 103, 776, 491, 1773, - 1925, 1924, 1774, 492, 1839, 1243, 1448, 1244, 1451, 814, - 817, 820, 823, 1664, 1501, 740, 329, 455, 456, 106, - 107, 108, 109, 110, 111, 112, 113, 330, 1147, 1952, - 2040, 852, 1688, 1691, 1694, 1990, 1994, 1998, 2065, 2068, - 2071, 1143, 1144, 331, 940, 332, 117, 1322, 1103, 811, - 865, 1869, 118, 119, 120, 121, 333, 204, 1002, 548, - 279, 1481, 334, 335, 336, 620, 345, 1033, 1267, 489, - 484, 1003, 490, 366, 338 + -1, 2, 3, 101, 1064, 102, 103, 761, 1638, 1644, + 1052, 1279, 1849, 2089, 1053, 2025, 2130, 1054, 2091, 1055, + 1056, 1283, 386, 481, 203, 891, 104, 779, 493, 1777, + 1929, 1928, 1778, 494, 1843, 1247, 1452, 1248, 1455, 818, + 821, 824, 827, 1668, 1505, 743, 331, 457, 458, 107, + 108, 109, 110, 111, 112, 113, 114, 332, 1151, 1956, + 2044, 856, 1692, 1695, 1698, 1994, 1998, 2002, 2069, 2072, + 2075, 1147, 1148, 333, 944, 334, 118, 1326, 1107, 815, + 869, 1873, 119, 120, 121, 122, 335, 205, 1006, 551, + 281, 1485, 336, 337, 338, 623, 347, 1037, 1271, 491, + 486, 1007, 492, 368, 340 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1758 +#define YYPACT_NINF -1742 static const yytype_int16 yypact[] = { - 10437, 75, 45, 10583, -1758, -1758, 4680, 108, -59, -169, - -118, 55, 160, 177, 250, 346, 117, 370, 416, -33, - 220, -181, -181, -165, 234, 278, 46, 290, 303, 34, - 311, 324, 342, 359, 198, 407, 430, 578, 362, 215, - 378, 424, 564, 570, 453, 591, 536, 691, 132, 477, - 625, -65, 490, -82, -82, 494, 505, 44, -1758, -1758, - -1758, -1758, -1758, 83, 636, 648, 9, 40, 652, 655, - 239, 738, 761, 778, 6409, 807, 553, 573, 624, 18, - 15, -1758, 641, 681, -1758, -1758, 833, 850, 682, -1758, - 4774, 690, 3418, 49, 50, -1758, -1758, -1758, 10284, 694, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, - -1758, -1758, -1758, -1758, -1758, -7, -1758, -1758, -1758, -1758, - -5, -1758, -148, 164, -1758, 5, -1758, -1758, -1758, -1758, - -1758, -181, -181, -181, -181, -181, -181, -181, -181, -181, - -181, -181, -181, -181, -181, -181, -181, -181, -181, -181, - -181, -181, -181, -181, -181, -181, 697, 720, 727, -181, - -181, -181, -181, 733, -181, -181, -181, -181, -181, -181, - 734, -1758, -181, -1758, -1758, -1758, -1758, -1758, -181, -181, - 954, 746, 750, 777, -181, -181, 795, 798, -1758, -1758, - -1758, -1758, 774, 10284, 10284, 10284, 9435, 9502, 37, 20, - 678, 802, 806, 464, -1758, 818, 1011, 210, -147, 1016, - 10284, 6945, 6945, -1758, 10284, -1758, -1758, -1758, -1758, 6945, - -1758, -1758, -1758, -1758, -1758, -1758, 7155, 20, 10284, 9224, - 10284, 10284, 822, 10284, 9224, 10284, 10284, 837, 9224, 10284, - 10284, 10284, 10284, 6843, 845, 839, -1758, 9224, 6409, 6409, - 6409, 6945, 10284, 860, 865, 6409, 6409, 6409, 866, 873, - 878, 902, 903, 7060, 7277, 7494, 916, 2488, 1166, 6843, - 18, 963, 979, -82, -82, -82, 10284, 10284, -79, -1758, - -75, -82, 982, 983, 1010, 4130, -56, 123, 961, 1031, - 1036, 1044, 1045, 1049, 1059, 6409, 6409, 6843, 1060, 31, - 981, -1758, 1041, 1276, 1301, -1758, 1086, 1090, 1098, 6409, - 6409, 1099, 1105, 1107, 715, -1758, 126, -181, -181, -181, - -181, 25, 16, 23, 27, 773, 7711, 10284, 5244, -1758, - -1758, 1104, -1758, 2427, -1758, 1327, -1758, 435, -68, 1328, - 10284, 10284, 10284, 306, 10284, 1110, -1758, 1173, 10284, 10284, - 10284, -1758, -1758, 10284, 1111, 1331, 1334, 1116, -1758, -1758, - 1336, -1758, 1338, -1758, 312, 9122, 467, 6945, 10284, -1758, - -1758, 6843, 6843, 9718, 9785, 1120, 1125, 7155, -1758, -1758, - -1758, -1758, -1758, -1758, 6843, 1345, 1133, 10284, 10284, 1351, - 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, - 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, - 10284, 10284, 6945, 6945, 6945, 6945, 6945, 6945, 6945, 6945, - 6945, 6945, 6843, 6945, 6945, 10284, 6945, 6945, 6945, 6945, - 6945, 10284, 7155, 10284, 6945, 6945, 6945, 6945, 6945, 20, - 7155, 20, 1139, 1139, 1139, 142, 4469, 158, 6103, 279, - 1135, 1352, -181, 1137, -1758, 1140, 5299, 10284, 9224, -1758, - 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, 10284, - 10284, 10284, 10284, 10284, 10284, -1758, -1758, 10284, 10284, -1758, - -1758, 499, 358, 367, -1758, 514, -1758, 413, 9461, -1758, - 460, -144, -111, 1141, 1143, 12016, 9224, 2557, -1758, 398, - 12037, 12058, 10284, 12079, 548, 12100, 12121, 10284, 612, 12142, - 12163, 12184, 12205, 1356, 10284, 10284, 642, 1362, 1363, 1365, - 1154, 12226, 10284, 10284, 1368, 1369, 1369, 10284, 9013, 9013, - 9013, 9013, 10284, 1371, 10284, 1375, 10284, 1382, 9224, 9224, - 9161, 1171, 1385, 1168, -1758, -1758, -93, -1758, -1758, 9558, - 9625, -82, -82, 678, 678, -64, 10284, 10284, 10284, 4130, - 4130, 10284, 5299, -54, -1758, 10284, 10284, 10284, 10284, 10284, - 10284, 10284, 10284, 10284, 1387, 1389, 1392, 10284, 1390, 10284, - 10284, 1812, -1758, -1758, 9224, 9224, 9224, 1394, 1395, 10284, - 10284, 10284, 10284, 10284, 1398, 181, 7928, 8145, 10284, 10284, - 6945, 10284, -1758, 1341, 10284, -1758, 1342, -1758, 1344, -1758, - 1348, 51, 52, 53, 54, 9224, 1139, -1758, 12247, -1758, - 708, 10284, 8362, -1758, 10284, 10284, 431, -1758, 12268, 12289, - 12310, 1247, 9667, -1758, 1186, 2819, 12331, 12352, 9188, -1758, - -1758, 9224, -1758, 2856, -1758, 2958, 10284, 10284, -1758, 10284, - 10284, 1191, 12373, 9041, 1194, 736, 317, 12394, 321, 11671, - 10284, 9224, 1408, 1409, -1758, 10284, 12415, 11694, -34, 2401, - 2401, 2401, 2401, 2401, 2401, 2401, 2401, 2401, 2401, 2401, - 9744, 2401, 2401, 2401, 2401, 2401, 2401, 2401, 9841, 9913, - 9956, 472, 665, 472, 1197, 1200, 1196, 82, 82, 1201, - 82, 1203, 1204, 1205, 10026, 82, 82, 82, 519, 82, - 13045, -1758, 615, 1206, 1207, 1202, 672, 725, 1216, 1218, - 1222, 1402, 1403, 6843, 284, 1404, 1405, 6843, 135, 7155, - 10284, 1446, 1449, 43, 82, -1758, 145, 47, 48, 149, - -1758, 3493, 757, 2918, 1609, 1969, 863, 863, 767, 767, - 767, 767, 292, 292, 1139, 1139, 1139, 1139, 11, 12436, - 11717, -1758, 10284, 10284, 1450, 77, 9224, 10284, 10284, 1452, - 9224, 10284, 1453, 6945, 1454, -1758, 20, 1455, 6945, 10284, - 7155, 1456, 9224, 9224, 1299, 1457, 1458, 12457, 1460, 1307, - 1464, 1465, 12478, 1310, 1469, 1470, 1471, 1472, 10284, 12499, - 3787, 1232, -1758, -1758, -1758, 1474, 1475, 12520, 12541, 10284, - 6843, 1477, 1479, 12562, 1264, 13045, 1262, 1269, 13045, 1265, - 1271, 13045, 1268, 1274, 13045, 1270, 12583, -1758, 12604, -1758, - 12625, -1758, 763, 776, 9224, 1273, -1758, -1758, 3421, 3728, - -82, 10284, 10284, -1758, -1758, 1272, 1290, 4130, 10124, 10166, - 10192, 9342, 1294, -82, 4274, 12646, 4355, 12667, 12688, 12709, - 12730, 12751, 12772, 12793, 10284, 1490, -1758, 10284, 12814, -1758, - 11740, 11763, -1758, 797, 804, 815, -1758, -1758, 11786, 11809, - 10218, 12835, 11832, -68, -1758, -1758, 9224, -1758, 9224, 2557, - 1278, 9224, 1279, 269, 10579, 10605, 82, 10631, 1293, 4590, - 1296, 1297, 1298, -1758, 9224, -1758, 9224, -1758, 9224, -1758, - 9224, 820, -1758, -1758, 3000, 9224, 1139, -1758, 12856, 11855, - 9224, -1758, 1492, 1512, 1517, 1304, 10284, 4437, 10284, 10284, - -1758, -1758, 33, 823, -1758, -1758, 4824, -1758, 1518, 10001, - 1320, 1302, 6843, 1524, 1504, 1507, 6843, 284, 1508, 1509, - 6843, 284, 4905, 826, -1758, -1758, 11878, -10, 1167, -1758, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, - -1758, 10284, -1758, -1758, -1758, -1758, -1758, -1758, -1758, 10284, - 10284, 10284, -1758, 9224, -1758, -1758, -1758, -1758, 6945, -1758, - -1758, 10284, -1758, 6843, 6945, 6945, 6945, -1758, -1758, -1758, - -1758, -1758, -1758, -1758, -1758, 10284, 6945, -1758, 6945, -1758, - 10284, -1758, -1758, -1758, -1758, -181, -181, 1548, -1758, 10284, - 1549, -181, -181, 1553, 39, 10284, 1554, 1555, 719, -1758, - 1559, 1347, 18, 1556, -1758, 9224, 9224, 9224, 9224, -1758, - 82, 10284, -1758, 1350, 1357, 1349, -1758, 1563, -1758, -1758, - -1758, -1758, -1758, 150, 183, 12877, 11901, -1758, -1758, 1377, - 6945, 585, 12898, 11924, -1758, 609, 10657, -1758, -1758, -1758, - 10, -1758, -1758, 2401, 82, -82, 2557, -1758, 349, 6843, - 6843, 1576, 6843, 964, 6843, 6843, 1579, 1495, 6843, 6843, - 6843, 6843, 900, 1581, 1585, 9224, -1758, 6843, 1586, 1592, - 3450, -1758, -1758, 1594, -1758, 1595, 327, 10284, 327, 10284, - 327, 10284, 327, 10284, 1596, 1598, 1599, 1600, 1601, 834, - 1597, 6242, -1758, -1758, -52, 10683, 10709, -1758, -1758, 4946, - -142, -82, -82, -82, 1606, 10073, 1386, 1607, 1396, 28, - 36, 56, 59, -41, -1758, -50, -1758, 1294, 1605, 1610, - 1608, 1626, 1645, 1646, 1647, 1648, 1650, 13045, -1758, 944, - 1435, 1611, 1655, 1656, 1573, 1657, 1660, 1661, 10284, -68, - 156, 835, 889, -1758, 892, -1758, -1758, 10284, 10284, -1758, - 10284, 10284, -1758, 10284, 10284, 10284, 908, 909, 912, 933, - -1758, 10284, 934, -68, -68, 938, 6843, 6843, 6843, 1666, - 10735, -1758, 3165, 184, 1668, 1669, 1461, -1758, 1459, -1758, - 1303, 1462, 6843, 1448, -1758, -181, -181, 1673, 10284, 1674, - -181, -181, 1676, 10284, 1680, -1758, 82, 1682, -1758, 1688, - -1758, 1687, 2401, 2401, 2401, 2401, 780, 1476, 9384, 1480, - 82, 82, 1478, 787, 788, 12919, 1482, 82, 2401, 1664, - 6945, -1758, 1333, -1758, 1664, 6945, -1758, 291, 1481, 1697, - 1420, -1758, -1758, -1758, 18, 10284, -1758, 939, -1758, 942, - 943, 949, 950, 327, 13045, 1487, 10284, 10284, 6843, 1493, - -1758, -1758, -1758, -1758, 1485, -1758, 1711, 85, -1758, -1758, - 1713, 10284, 5902, 1506, 1511, 1721, 1722, 76, 1510, 1513, - 1632, 1632, 6843, 1727, 1515, 1516, 1736, 1738, 6843, 1523, - 1743, 1744, 1745, 1746, -1758, 1749, 6843, 959, 1751, 6843, - 6843, 1754, 1753, -1758, 6843, 6843, 13045, 6843, 13045, 6843, - 13045, 6843, 13045, 6843, 6843, 6843, 1530, 1535, 1757, 195, - -1758, 10284, 10284, 10284, 1541, 1546, -134, -107, -101, 1558, - -1758, 1439, 6843, -1758, 10284, -1758, 1768, -1758, 1769, -1758, - 1770, -1758, 1774, -1758, -1758, 4130, 501, 6626, -1758, 1557, - 1560, 1562, 1565, 1566, 1568, 8579, -1758, 9224, -1758, -1758, - -1758, 1569, 10284, -1758, -1758, 11947, 1777, 82, 1577, 1567, - 10761, 10787, 10813, 10839, 10865, 10891, 10917, -1758, -1758, -1758, - -1758, 13045, -1758, 82, 1778, 1789, 1639, -1758, 10284, 10284, - 10284, -1758, 1793, 466, 7155, -1758, -1758, -1758, 1580, 1794, - 1664, 6945, -1758, 1630, -1758, 1664, 6945, -1758, 1730, -1758, - 327, -1758, 276, -1758, -1758, -1758, -1758, -1758, -1758, 6945, - 10284, -1758, -1758, -1758, -1758, 6945, 1797, -1758, -1758, 14, - -1758, -1758, -1758, -1758, -1758, -1758, 1799, 472, 472, -1758, - 1801, 472, 472, 7155, 10284, 1802, 1819, 43, -1758, 1821, - 11970, 18, -1758, 1822, 1840, 1845, 1846, 6843, 10284, 10943, - 10969, 960, -1758, 10284, 1849, -1758, -1758, 6945, -1758, 10995, - 5468, 13045, -1758, 1796, 1847, -1758, -1758, -1758, 10284, 10284, - -82, 1850, 1853, 1854, -1758, 10284, 10284, -1758, -1758, 1855, - 10284, -1758, -1758, -1758, -1758, 1857, 1860, 1638, -1758, 1861, - 1705, 10284, -1758, 1869, 1871, 1876, 1880, 1881, 1882, 1183, - 1883, 9224, 9224, 10284, -1758, 9013, 5365, 12940, 3688, 678, - 678, -82, 1884, -82, 1885, -82, 1886, 10284, -1758, 110, - 1670, 12961, -1758, -1758, -1758, -1758, 5405, -31, -1758, 1887, - 1889, 6843, -82, -82, -82, -82, -82, 5008, 1901, 966, - 10284, 1791, 1902, -68, -1758, -1758, -1758, 10284, 10284, 10284, - 10284, 10284, 10284, 10284, -1758, -1758, -1758, 6843, 3827, 399, - 12982, -1758, -1758, 5975, 1685, 9041, 9041, 6843, -1758, 1909, - 472, 472, -1758, 1910, 472, 472, -1758, 6843, -1758, 1702, - 2401, 82, 5685, 6192, 7155, -1758, 1919, 1920, -1758, 1921, - 1937, 1939, 1870, -1758, 1941, 1940, -1758, 1729, -1758, -1758, - -1758, -1758, -1758, 1943, 729, 13045, 10284, 10284, 6843, 1732, - 972, 13045, -1758, 1952, 10284, -1758, -1758, 1737, 1740, 5582, - 5622, 196, -1758, -1758, -1758, 5859, 5932, -1758, 6075, 1954, - -1758, 6843, -1758, 1873, 1957, 13045, -1758, -1758, -1758, -1758, - -1758, -1758, 1747, -1758, -1758, 973, 976, 9275, 1907, 1964, - 1759, -1758, 10284, -1758, 1752, 1760, -14, -1758, 1762, 254, - -1758, 1763, 302, -1758, 1779, 11993, 1973, 6843, 1978, 1780, - 10284, -1758, -1758, 996, 329, 355, 364, 366, 405, 8796, - 409, -1758, 2000, 6306, -1758, -1758, 2401, 2401, 11021, 11047, - 11073, 11099, 11125, 1856, 10284, -1758, 10284, -1758, -1758, 9224, - 2096, 2001, 7155, 1790, 1792, 1795, -1758, 2009, 2011, -1758, - 2013, 2014, 2016, -1758, -1758, -1758, 5244, -1758, -1758, 6945, - 13045, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, 18, - -1758, 1862, -1758, -1758, 10284, 11151, 11177, -1758, 6843, 10284, - 2018, -1758, 11203, -1758, -1758, 6843, 6843, 2019, 2021, 2022, - 2023, 2025, 2026, 997, 1808, -1758, 6843, 525, 792, 9224, - -1758, -1758, 678, 4052, -1758, -1758, 4130, 1294, 4130, 1294, - 4130, 1294, 2028, -1758, 1004, 6843, -1758, 6523, 2029, 9224, - -82, -82, -82, -82, -82, -1758, -1758, -1758, -1758, 10284, - 10284, 10284, 10284, 10284, 10284, 7174, 7214, 1005, -1758, -1758, - 1817, 1814, -1758, 2031, -1758, -1758, -1758, -1758, -1758, 1012, - 670, 2033, 1015, 2035, -1758, 1818, 13045, 10284, 10284, 1018, - 13045, -1758, 10284, 1019, 1029, -1758, -1758, -1758, -1758, -1758, - -1758, -1758, -1758, 1823, 10284, 1033, 1834, -82, 6843, 2054, - 1839, -82, 2055, 1034, 1841, 10284, -1758, 7391, 427, 827, - 7431, 509, 984, 7608, 513, 1126, -1758, 6843, 2059, 1970, - 6464, 1863, -1758, 1050, 520, 538, 560, 568, 581, 11229, - 11255, 11281, 11307, 11333, 2244, -1758, -1758, 2060, 2083, -1758, - -1758, 10284, -1758, 7155, 20, -1758, -1758, 10284, 13003, 11359, - 58, 11385, -1758, -1758, -1758, -1758, 10284, 7648, 2084, -82, - 79, -1758, -1758, -82, 87, -1758, 2085, -1758, 7825, 2088, - 10284, 2089, 2090, 10284, 2091, 2092, 10284, 2093, 1874, -1758, - 10284, -1758, 1294, -1758, 2098, 9224, 9224, 9224, 9224, 8796, - 10284, 10284, 10284, 10284, 10284, -1758, -1758, -1758, 9041, 549, - -1758, 1904, 1057, -1758, 10284, -1758, 6843, 10284, 1062, 1063, - 11411, -1758, -1758, 621, -1758, 626, -1758, -1758, -1758, -1758, - 1895, 7865, -1758, -1758, 1898, 8042, -1758, -1758, 1900, 8082, - -1758, 2120, 2328, 1240, 6681, -1758, 1066, 1067, 1071, 1072, - 638, 1076, 11437, 11463, 11489, 11515, 11541, 1903, 7155, 1908, - 2122, 1905, 13024, 1077, 8259, -1758, -1758, 10284, -82, -82, - 1294, 2125, 1294, 2126, 1294, 2127, -1758, -1758, -1758, -1758, - 1294, 2128, 2133, 2134, 2135, 9224, 2142, 10284, 10284, 10284, - 10284, 10284, 2143, -1758, -1758, -1758, 6945, -1758, 1925, 2149, - 8299, 643, 689, 1433, -1758, 1934, 1451, -1758, 1936, 1551, - -1758, 1938, 1623, -1758, -1758, -1758, -1758, 1080, -1758, 2401, - 11567, 11593, 11619, 11645, -1758, 1084, -1758, 1942, 6843, -1758, - 2156, 10284, 10284, 2176, 1294, 2177, 1294, 2179, 1294, -1758, - 2182, -1758, 10284, 10284, 10284, 10284, 6945, 2185, 6945, 1088, - -1758, 8476, 8516, -1758, 1734, -1758, 1836, -1758, 2007, -1758, - 8693, 8733, 8896, 8959, -1758, -1758, 1094, -1758, 2186, 2187, - 2188, 2189, 2190, 2191, -1758, -1758, -1758, -1758, 6945, 2192, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758 + 10410, 8, 22, 10557, -1742, -1742, 4286, 69, -42, -161, + -133, 49, 146, 157, 190, 223, -8, 237, 297, -1, + 67, -145, -145, -194, 20, 73, 19, 98, 110, 31, + 141, 167, 188, 191, 211, 278, 361, 364, 455, 267, + 366, 315, 337, 488, 497, 806, 467, 742, 852, -43, + 398, 533, -99, 399, -95, -95, 403, 236, 38, -1742, + -1742, -1742, -1742, -1742, 316, 553, 616, 26, 63, 624, + 651, 52, 745, 756, 763, 5570, 771, 527, 565, 570, + 27, 14, -1742, 571, 589, -1742, -1742, 803, 858, 623, + -1742, 4382, 646, 5048, 40, 41, -1742, -1742, -1742, 10256, + 662, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, + -1742, -1742, -1742, -1742, -1742, -1742, -106, -1742, -1742, -1742, + -1742, 55, -1742, 144, 270, -1742, 7, -1742, -1742, -1742, + -1742, -1742, -145, -145, -145, -145, -145, -145, -145, -145, + -145, -145, -145, -145, -145, -145, -145, -145, -145, -145, + -145, -145, -145, -145, -145, -145, -145, 650, 683, 684, + -145, -145, -145, -145, 696, -145, -145, -145, -145, -145, + -145, 714, -1742, -145, -1742, -1742, -1742, -1742, -1742, -145, + -145, 870, 722, 727, 738, -145, -145, 746, 749, -1742, + -1742, -1742, -1742, 772, 10256, 10256, 10256, 9404, 9471, 149, + 24, 632, 761, 780, 612, -1742, 784, 971, 416, 274, + 992, 10256, 4930, 4930, -1742, 10256, -1742, -1742, -1742, -1742, + 4930, -1742, -1742, -1742, -1742, -1742, -1742, 5447, 24, 10256, + 9192, 10256, 10256, 792, 10256, 9192, 10256, 10256, 795, 9192, + 10256, 10256, 10256, 10256, 4930, 6515, 796, 793, -1742, 9192, + 5570, 5570, 5570, 4930, 10256, 811, 812, 5570, 5570, 5570, + 825, 840, 841, 848, 860, 6733, 6951, 7169, 809, 8695, + 1046, 6515, 27, 828, 861, -95, -95, -95, 10256, 10256, + -156, -1742, -65, -95, 862, 867, 919, 8762, -31, -89, + 907, 927, 959, 962, 975, 981, 982, 5570, 5570, 6515, + 988, 23, 950, -1742, 983, 1184, 1206, -1742, 1027, 1028, + 1051, 5570, 5570, 1084, 1093, 1095, 691, -1742, -103, -145, + -145, -145, -145, 35, 16, 21, 28, 874, 7387, 10256, + 4742, -1742, -1742, 1078, -1742, 3431, -1742, 1242, -1742, 419, + 158, 1266, 10256, 10256, 10256, -189, 10256, 1092, -1742, 1155, + 10256, 10256, 10256, -1742, -1742, 10256, 1094, 1317, 1318, 1101, + -1742, -1742, 1323, -1742, 1325, -1742, 699, 8722, 676, 4930, + 10256, -1742, -1742, 6515, 6515, 9688, 9755, 1107, 1111, 5447, + -1742, -1742, -1742, -1742, -1742, -1742, 6515, 1332, 1118, 10256, + 10256, 1350, 10256, 10256, 10256, 10256, 10256, 10256, 10256, 10256, + 10256, 10256, 10256, 10256, 10256, 10256, 10256, 10256, 10256, 10256, + 10256, 10256, 10256, 10256, 4930, 4930, 4930, 4930, 4930, 4930, + 4930, 4930, 4930, 4930, 6515, 4930, 4930, 10256, 4930, 4930, + 4930, 4930, 4930, 10256, 5447, 10256, 4930, 4930, 4930, 4930, + 4930, 24, 5447, 24, 1137, 1137, 1137, 101, 12293, 197, + 11902, 282, 1133, 1351, -145, 1134, -1742, 1135, 5625, 10256, + 9192, -1742, 10256, 10256, 10256, 10256, 10256, 10256, 10256, 10256, + 10256, 10256, 10256, 10256, 10256, 10256, 10256, -1742, -1742, 10256, + 10256, -1742, -1742, 648, 717, -126, -1742, 704, -1742, 87, + 10095, -1742, 117, -118, -71, 1136, 1138, 12314, 9192, 3657, + -1742, 214, 12335, 12356, 10256, 12377, 246, 12398, 12419, 10256, + 247, 12440, 12461, 12482, 12503, 1152, 1366, 10256, 10256, 308, + 1368, 1371, 1373, 1160, 12524, 10256, 10256, 1388, 1389, 1389, + 10256, 8980, 8980, 8980, 8980, 10256, 1391, 10256, 1392, 10256, + 1394, 9192, 9192, 9811, 1198, 1395, 1193, -1742, -1742, -98, + -1742, -1742, 10137, 10163, -95, -95, 632, 632, 121, 10256, + 10256, 10256, 8762, 8762, 10256, 5625, 129, -1742, 10256, 10256, + 10256, 10256, 10256, 10256, 10256, 10256, 10256, 1413, 1417, 1418, + 10256, 1423, 10256, 10256, 1258, -1742, -1742, 9192, 9192, 9192, + 1424, 1425, 10256, 10256, 10256, 10256, 10256, 1420, 102, 7605, + 7823, 10256, 10256, 4930, 10256, -1742, 1370, 10256, -1742, 1372, + -1742, 1377, -1742, 1379, 44, 45, 46, 47, 9192, 1137, + -1742, 12545, -1742, 338, 10256, 8041, -1742, 10256, 10256, 498, + -1742, 12566, 12587, 12608, 1272, 10190, -1742, 1209, 3773, 12629, + 12650, 11925, -1742, -1742, 9192, -1742, 1913, -1742, 2171, 10256, + 10256, -1742, 10256, 10256, 1220, 12671, 5816, 1227, 425, 201, + 12692, 205, 11948, 10256, 9192, 1443, 1444, -1742, 10256, 12713, + 11971, 314, 11879, 11879, 11879, 11879, 11879, 11879, 11879, 11879, + 11879, 11879, 11879, 10553, 11879, 11879, 11879, 11879, 11879, 11879, + 11879, 10579, 10605, 10631, 272, 506, 272, 1246, 1247, 1243, + 446, 446, 1244, 446, 1248, 1250, 1251, 10657, 446, 446, + 446, 162, 446, 13343, -1742, 900, 1254, 1255, 1261, 750, + 760, 1262, 1267, 1249, 1442, 1445, 6515, 286, 1446, 1448, + 6515, 136, 5447, 10256, 1487, 1495, 33, 446, -1742, -33, + 39, 34, -19, -1742, 4815, 461, 3799, 592, 1199, 816, + 816, 627, 627, 627, 627, -63, -63, 1137, 1137, 1137, + 1137, 13, 12734, 11994, -1742, 10256, 10256, 1496, 9, 9192, + 10256, 10256, 1497, 9192, 10256, 1513, 4930, 1514, -1742, 24, + 1515, 4930, 10256, 5447, 1494, 9192, 9192, 1338, 1517, 1519, + 12755, 1520, 1358, 1521, 1524, 12776, 1361, 1529, 1530, 1531, + 1532, -1742, 10256, 12797, 4855, 1319, -1742, -1742, -1742, 1537, + 1539, 12818, 12839, 10256, 6515, 1543, 1542, 12860, 1330, 13343, + 1326, 1334, 13343, 1331, 1335, 13343, 1333, 1337, 13343, 1340, + 12881, -1742, 12902, -1742, 12923, -1742, 606, 744, 9192, 1336, + -1742, -1742, 2563, 2932, -95, 10256, 10256, -1742, -1742, 1339, + 1342, 8762, 10683, 10709, 10735, 9997, 517, -95, 3023, 12944, + 5091, 12965, 12986, 13007, 13028, 13049, 13070, 13091, 10256, 1557, + -1742, 10256, 13112, -1742, 12017, 12040, -1742, 751, 765, 777, + -1742, -1742, 12063, 12086, 10761, 13133, 12109, 158, -1742, -1742, + 9192, -1742, 9192, 3657, 1347, 9192, 1348, 377, 10787, 10813, + 446, 10839, 1346, 5670, 1353, 1354, 1356, -1742, 9192, -1742, + 9192, -1742, 9192, -1742, 9192, 818, -1742, -1742, 3823, 9192, + 1137, -1742, 13154, 12132, 9192, -1742, 1566, 1567, 1569, 1360, + 10256, 3084, 10256, 10256, -1742, -1742, 61, 837, -1742, -1742, + 3187, -1742, 1570, 9972, 1357, 1359, 6515, 1580, 1546, 1547, + 6515, 286, 1548, 1549, 6515, 286, 5734, 838, -1742, -1742, + 12155, 372, 124, -1742, -1742, -1742, -1742, -1742, -1742, -1742, + -1742, -1742, -1742, -1742, -1742, 10256, -1742, -1742, -1742, -1742, + -1742, -1742, -1742, 10256, 10256, 10256, -1742, 9192, -1742, -1742, + -1742, -1742, 4930, -1742, -1742, 10256, -1742, 6515, 4930, 4930, + 4930, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, 10256, + 4930, -1742, 4930, -1742, 10256, -1742, -1742, -1742, -1742, -145, + -145, 1581, -1742, 10256, 1588, -145, -145, 1589, 153, 10256, + 1590, 1593, 947, -1742, 1594, 1381, 27, 1597, -1742, 9192, + 9192, 9192, 9192, -1742, 446, 10256, -1742, 1385, 1387, 1374, + -1742, 1604, -1742, -1742, -1742, -1742, -1742, 654, 656, 13175, + 12178, -1742, -1742, 1405, 4930, 245, 13196, 12201, -1742, 299, + 10865, -1742, -1742, -1742, 59, -1742, -1742, 11879, 446, -95, + 3657, -1742, 834, 6515, 6515, 1605, 6515, 976, 6515, 6515, + 1607, 1523, 6515, 6515, 6515, 6515, 1014, 1609, 1611, 9192, + -1742, 6515, 1612, 1613, 2591, -1742, -1742, 1616, -1742, 1618, + 384, 10256, 384, 10256, 384, 10256, 384, 10256, 1625, 1627, + 1633, 1636, 1638, 846, 1620, 3309, -1742, -1742, 139, 10891, + 10917, -1742, -1742, 5943, -117, -95, -95, -95, 1640, 10044, + 1421, 1642, 1427, 53, 54, 57, 74, -50, -1742, 148, + -1742, 517, 1644, 1647, 1648, 1649, 1654, 1661, 1662, 1663, + 1670, 13343, -1742, 1089, 1434, 1672, 1673, 1674, 1600, 1684, + 1686, 1687, 10256, 158, 658, 847, 850, -1742, 851, -1742, + -1742, 10256, 10256, -1742, 10256, 10256, -1742, 10256, 10256, 10256, + 857, 872, 889, 890, -1742, 10256, 894, 158, 158, 895, + 6515, 6515, 6515, 1695, 10943, -1742, 3947, 469, 1704, 1705, + 1488, -1742, 1486, -1742, 1181, 1489, 6515, 1493, -1742, -145, + -145, 1708, 10256, 1710, -145, -145, 1715, 10256, 1717, -1742, + 446, 1718, -1742, 1723, -1742, 1722, 11879, 11879, 11879, 11879, + 766, 1504, 9925, 1511, 446, 446, 1508, 783, 831, 13217, + 1516, 446, 11879, 1637, 4930, -1742, 1252, -1742, 1637, 4930, + -1742, 329, 1512, 1727, 1305, -1742, -1742, -1742, 27, 10256, + -1742, 898, -1742, 902, 908, 909, 912, 384, 13343, 1522, + 10256, 10256, 6515, 1526, -1742, -1742, -1742, -1742, 1536, -1742, + 1731, 18, -1742, -1742, 1734, 10256, 5788, 1533, 1527, 1736, + 1737, 4, 1528, 1535, 1658, 1658, 6515, 1738, 1544, 1545, + 1749, 1766, 6515, 1552, 1767, 1768, 1769, 1773, -1742, 1775, + 6515, 913, 1776, 6515, 6515, 1777, 1779, -1742, 6515, 6515, + 13343, 6515, 13343, 6515, 13343, 6515, 13343, 6515, 6515, 6515, + 1560, 1562, 1782, 560, -1742, 10256, 10256, 10256, 1571, 1576, + -125, -104, -69, 1574, -1742, 1872, 6515, -1742, 10256, -1742, + 1790, -1742, 1797, -1742, 1798, -1742, 1799, -1742, -1742, 8762, + 640, 6006, -1742, 1582, 1583, 1585, 1586, 1595, 1596, 8259, + -1742, 9192, -1742, -1742, -1742, 1598, 10256, -1742, -1742, 12224, + 1803, 446, 1563, 1592, 10969, 10995, 11021, 11047, 11073, 11099, + 11125, -1742, -1742, -1742, -1742, 13343, -1742, 446, 1809, 1810, + 1660, -1742, 10256, 10256, 10256, -1742, 1817, 584, 5447, -1742, + -1742, -1742, 1601, 1819, 1637, 4930, -1742, 1892, -1742, 1637, + 4930, -1742, 1911, -1742, 384, -1742, 674, -1742, -1742, -1742, + -1742, -1742, -1742, 4930, 10256, -1742, -1742, -1742, -1742, 4930, + 1823, -1742, -1742, 25, -1742, -1742, -1742, -1742, -1742, -1742, + 1824, 272, 272, -1742, 1827, 272, 272, 5447, 10256, 1828, + 1831, 33, -1742, 1830, 12247, 27, -1742, 1832, 1833, 1834, + 1835, 6515, 10256, 11151, 11177, 916, -1742, 10256, 1838, -1742, + -1742, 4930, -1742, 11203, 5134, 13343, -1742, 1821, 1839, -1742, + -1742, -1742, 10256, 10256, -95, 1841, 1843, 1844, -1742, 10256, + 10256, -1742, -1742, 1845, 10256, -1742, -1742, -1742, -1742, 1847, + 1848, 1629, -1742, 1850, 1689, 10256, -1742, 1852, 1856, 1858, + 1860, 1862, 1864, 1157, 1867, 9192, 9192, 10256, -1742, 8980, + 6181, 13238, 2248, 632, 632, -95, 1868, -95, 1869, -95, + 1873, 10256, -1742, 305, 1656, 13259, -1742, -1742, -1742, -1742, + 6254, 152, -1742, 1876, 1877, 6515, -95, -95, -95, -95, + -95, 4517, 1883, 937, 10256, 1941, 1888, 158, -1742, -1742, + -1742, 10256, 10256, 10256, 10256, 10256, 10256, 10256, -1742, -1742, + -1742, 6515, 3543, 401, 13280, -1742, -1742, 6224, 1675, 5816, + 5816, 6515, -1742, 1893, 272, 272, -1742, 1900, 272, 272, + -1742, 6515, -1742, 1688, 11879, 446, 5352, 6297, 5447, -1742, + 1904, 1905, -1742, 1906, 1907, 1908, 2022, -1742, 1909, 1912, + -1742, 1614, -1742, -1742, -1742, -1742, -1742, 1918, 396, 13343, + 10256, 10256, 6515, 1702, 941, 13343, -1742, 1923, 10256, -1742, + -1742, 1706, 1707, 6452, 6670, 554, -1742, -1742, -1742, 6888, + 7106, -1742, 7324, 1925, -1742, 6515, -1742, 1846, 1929, 13343, + -1742, -1742, -1742, -1742, -1742, -1742, 1712, -1742, -1742, 942, + 945, 9883, 2397, 1930, 1713, -1742, 10256, -1742, 1714, 1716, + 159, -1742, 1719, 222, -1742, 1720, 233, -1742, 1724, 12270, + 1936, 6515, 1924, 1725, 10256, -1742, -1742, 949, 239, 250, + 312, 367, 414, 8477, 417, -1742, 1938, 7542, -1742, -1742, + 11879, 11879, 11229, 11255, 11281, 11307, 11333, 1789, 10256, -1742, + 10256, -1742, -1742, 9192, 2619, 1943, 5447, 1728, 1739, 1744, + -1742, 1946, 1948, -1742, 1958, 1959, 1968, -1742, -1742, -1742, + 4742, -1742, -1742, 4930, 13343, -1742, -1742, -1742, -1742, -1742, + -1742, -1742, -1742, 27, -1742, 1813, -1742, -1742, 10256, 11359, + 11385, -1742, 6515, 10256, 1972, -1742, 11411, -1742, -1742, 6515, + 6515, 1973, 1975, 1976, 1978, 1979, 1980, 952, 1761, -1742, + 6515, 810, 835, 9192, -1742, -1742, 632, 4693, -1742, -1742, + 8762, 517, 8762, 517, 8762, 517, 1982, -1742, 955, 6515, + -1742, 7760, 1983, 9192, -95, -95, -95, -95, -95, -1742, + -1742, -1742, -1742, 10256, 10256, 10256, 10256, 10256, 10256, 7978, + 8196, 964, -1742, -1742, 1770, 1765, -1742, 1990, -1742, -1742, + -1742, -1742, -1742, 968, 2204, 2001, 978, 2003, -1742, 1784, + 13343, 10256, 10256, 979, 13343, -1742, 10256, 1003, 1004, -1742, + -1742, -1742, -1742, -1742, -1742, -1742, -1742, 1785, 10256, 1008, + 1787, -95, 6515, 2009, 1791, -95, 2010, 1009, 1796, 10256, + -1742, 8414, 421, 901, 8534, 424, 1490, 8601, 475, 1518, + -1742, 6515, 2012, 1916, 3510, 1801, -1742, 1012, 500, 512, + 520, 523, 547, 11437, 11463, 11489, 11515, 11541, 2720, -1742, + -1742, 2027, 2028, -1742, -1742, 10256, -1742, 5447, 24, -1742, + -1742, 10256, 13301, 11567, 50, 11593, -1742, -1742, -1742, -1742, + 10256, 8643, 2029, -95, 77, -1742, -1742, -95, 81, -1742, + 2030, -1742, 8862, 2031, 10256, 2034, 2035, 10256, 2037, 2038, + 10256, 2039, 1820, -1742, 10256, -1742, 517, -1742, 2042, 9192, + 9192, 9192, 9192, 8477, 10256, 10256, 10256, 10256, 10256, -1742, + -1742, -1742, 5816, 3008, -1742, 1836, 1018, -1742, 10256, -1742, + 6515, 10256, 1019, 1022, 11619, -1742, -1742, 549, -1742, 552, + -1742, -1742, -1742, -1742, 1825, 8890, -1742, -1742, 1837, 8918, + -1742, -1742, 1861, 9129, -1742, 2044, 2850, 1617, 3617, -1742, + 1032, 1035, 1036, 1039, 582, 1042, 11645, 11671, 11697, 11723, + 11749, 1826, 5447, 1840, 2048, 1865, 13322, 1053, 9243, -1742, + -1742, 10256, -95, -95, 517, 2050, 517, 2052, 517, 2053, + -1742, -1742, -1742, -1742, 517, 2055, 2056, 2058, 2059, 9192, + 2061, 10256, 10256, 10256, 10256, 10256, 2080, -1742, -1742, -1742, + 4930, -1742, 1880, 2082, 9310, 618, 653, 1653, -1742, 1882, + 1745, -1742, 1899, 1756, -1742, 1901, 1822, -1742, -1742, -1742, + -1742, 1057, -1742, 11879, 11775, 11801, 11827, 11853, -1742, 1060, + -1742, 1902, 6515, -1742, 2120, 10256, 10256, 2124, 517, 2125, + 517, 2126, 517, -1742, 2127, -1742, 10256, 10256, 10256, 10256, + 4930, 2128, 4930, 1083, -1742, 9352, 9429, -1742, 2040, -1742, + 2160, -1742, 2497, -1742, 9527, 9594, 9636, 9713, -1742, -1742, + 1088, -1742, 2129, 2130, 2150, 2151, 2152, 2154, -1742, -1742, + -1742, -1742, 4930, 2161, -1742, -1742, -1742, -1742, -1742, -1742, + -1742, -1742 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1758, -1758, -1758, -1758, 913, -1758, -1758, -1758, -1758, 285, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, - -1758, -1758, -420, 12, 4330, 3385, -1758, 1709, -1758, -1758, - -1758, -1758, -1758, -1758, -1758, -1757, -1758, 454, -1758, -1758, - -1758, -1758, -1758, -1758, 904, 2226, 17, -542, -275, -1758, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, 2227, -1758, -1758, - -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, -1758, - -1758, -1140, -1021, 2228, -1591, 2229, -1758, -1758, -1758, 1708, - -1758, 447, -1758, -1758, -1758, -1758, 1816, -1758, -1758, 1124, - -1758, -1547, 2633, 545, 2648, 3212, -268, 769, -1758, 131, - 257, -1758, -406, -3, 30 + -1742, -1742, -1742, -1742, 875, -1742, -1742, -1742, -1742, 248, + -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, + -1742, -1742, -376, 12, 4061, 3426, -1742, 1676, -1742, -1742, + -1742, -1742, -1742, -1742, -1742, -1741, -1742, 390, -1742, -1742, + -1742, -1742, -1742, -1742, 868, 2169, 17, -544, -246, -1742, + -1742, -1742, -1742, -1742, -1742, -1742, -1742, 2172, -1742, -1742, + -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, -1742, + -1742, -1150, -1139, 2173, -1593, 2174, -1742, -1742, -1742, 1645, + -1742, 397, -1742, -1742, -1742, -1742, 1967, -1742, -1742, 105, + -1742, -1556, 2477, 1186, 953, 2459, -267, 719, -1742, 132, + 10, -1742, -412, -3, 276 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -550 +#define YYTABLE_NINF -551 static const yytype_int16 yytable[] = { - 122, 370, 543, 207, 1733, 1734, 691, 1366, 693, 386, - 562, 845, 846, 299, 1703, 1042, 1853, 1292, 1613, 347, - 105, 605, 343, 708, 354, 723, 581, 727, 607, 730, - 602, 210, 609, 123, 1355, 578, 208, 224, 237, 225, - 1204, 449, 1357, 1257, 304, 5, 305, 1031, 287, 211, - 232, 232, 237, 228, 360, 362, 903, 905, 907, 909, - 229, 213, 1359, 302, 1975, 1361, 551, 552, 382, 383, - 373, 337, 374, 1134, 551, 552, 302, 774, -543, 375, - 775, 4, 1497, 1058, 1345, 1984, 643, 302, 645, 1135, - 1541, 1486, 1542, 1986, 653, 270, 303, 1136, 1137, 1138, - 212, 551, 552, 1139, 1140, 1141, 1142, 551, 552, 346, - 777, 271, 272, 775, 1783, 551, 552, 1543, 621, 1544, - 356, 209, 1364, 1545, 306, 1546, 274, 275, 288, 551, - 552, 840, 289, 551, 552, 385, 276, 205, 290, 291, - 292, 293, 1018, 277, 551, 552, 553, 382, 383, 721, - 554, 294, 551, 552, 551, 552, 551, 552, 551, 552, - 847, 1043, 1044, 1045, 1046, 725, 215, 1978, 1979, 564, - 853, 377, 1341, 295, 1365, 296, 1356, 551, 552, 606, - 300, 382, 383, 216, 1358, 1363, 608, 222, 603, 1614, - 610, -548, 1410, 1700, 551, 552, 302, 450, 451, 1258, - 1259, 1534, 1535, 99, 1360, 382, 383, 1362, 485, 485, - 1796, 368, 99, 371, 99, -546, 485, 454, 369, 266, - 372, 1849, 267, 387, 302, 388, 337, 389, 1293, 452, - 1294, 337, 201, 348, 301, 337, 946, 1047, 950, 1865, - 337, 486, 486, 344, 337, 337, 337, 337, 485, 486, - 604, 579, 337, 337, 337, 1205, 217, 494, 201, 238, - 337, 337, 337, 206, 233, 233, 337, 302, 1032, 838, - 839, 234, 1036, 1037, 361, 363, 904, 906, 908, 910, - 214, 486, 1059, 1976, 551, 552, 729, 551, 552, 854, - 1059, 1018, 337, 337, 337, 551, 552, 243, 1463, 248, - 346, 884, 249, 885, 1019, 250, 337, 337, 1025, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 622, 472, 473, 337, 944, 337, 309, 474, 948, 310, - 378, 379, 380, 381, 1018, 219, 1696, 378, 379, 380, - 722, 565, 483, 487, 596, 1364, 597, 355, 566, 359, - 382, 383, 218, 378, 379, 380, 726, 1024, 927, 378, - 379, 380, 381, 228, 485, 382, 383, 240, 337, 337, - 1035, 382, 383, 936, 1038, -547, 220, 2017, 1386, 382, - 383, 337, 520, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 486, 382, 383, - 884, 474, 885, 1411, 551, 552, 886, 1726, -545, 485, - 485, 485, 485, 485, 485, 485, 485, 485, 485, 337, - 485, 485, 221, 485, 485, 485, 485, 485, 477, 2023, - 478, 485, 485, 485, 485, 485, 302, 375, 302, 1298, - 223, 1299, 486, 486, 486, 486, 486, 486, 486, 486, - 486, 486, 230, 486, 486, 337, 486, 486, 486, 486, - 486, 731, 551, 552, 486, 486, 486, 486, 486, 718, - 459, 720, 1592, 1593, 378, 379, 380, 381, 1798, 378, - 379, 380, 381, 493, 382, 383, 378, 379, 380, 381, - 1176, 382, 383, 337, 382, 383, 231, 244, 651, 382, - 383, -549, 471, 472, 473, 761, 382, 383, 235, 474, - 551, 552, 378, 379, 380, 945, 378, 379, 380, 949, - 245, 236, 378, 379, 380, 381, 1800, 1218, 631, 239, - 646, 1223, 647, 201, 594, 337, 337, 551, 552, 201, - 255, 2109, 240, 256, 692, 257, 694, 695, 696, 697, - 698, 699, 700, 1809, 702, 703, 2018, 705, 706, 707, - 241, 709, 1121, 551, 552, 713, 714, 715, 716, 717, - 454, 454, 551, 552, 551, 552, 762, 242, 763, 1810, - 764, 337, 337, 337, 246, 201, 765, 247, 1811, 282, - 1812, 766, 283, 337, 337, 284, 251, 485, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 337, 551, 552, 1134, 474, 551, 552, 337, - 259, 1004, 783, 260, 784, 1727, 261, 893, 262, 1813, - 486, 1135, 769, 1814, 662, 551, 552, 770, 337, 1136, - 1137, 1138, 252, 1866, 1867, 1139, 1140, 1141, 1142, 1868, - 884, 1940, 885, 624, 253, 625, 920, 1879, 337, 1882, - 254, 1885, 375, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 1913, 621, 772, - 959, 474, 453, 258, 773, 649, 1325, 650, 1327, 711, - 1329, 884, 1331, 885, 375, 268, 773, 719, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 269, 274, 275, 273, 474, 551, 552, 281, - 337, 551, 552, 276, 337, 1263, 297, 1558, 551, 552, - 285, 896, 767, 1943, 768, 298, 1020, 1946, 1000, 307, - 1026, 375, 311, 773, 1955, 308, 551, 552, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 1956, 337, 1266, 312, 474, 337, 551, 552, - 485, 340, 783, 302, 789, 485, 551, 552, 263, 337, - 337, 264, 313, 265, 1957, 816, 819, 822, 825, 551, - 552, 341, 1958, 517, 518, 519, 52, 53, 54, 55, - 524, 525, 526, 486, 1287, 1959, 1070, 337, 486, 783, - 65, 339, 2003, 68, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 1290, 551, - 552, 337, 474, 783, 551, 552, 783, 1464, 793, 351, - 574, 575, 342, 1457, 1458, 2028, 551, 552, 1461, 1462, - 2029, 551, 552, 1477, 587, 588, 352, 611, 1364, 349, - 612, 1364, 2045, 613, 1364, 614, 783, 2091, 801, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 782, 472, 473, 337, 884, 337, 885, 474, 337, 983, - 2063, 884, 2066, 885, 2069, 959, 1008, 551, 552, 350, - 2072, 337, 353, 337, 1068, 337, 1314, 337, 357, 1072, - 1870, 1871, 337, 2092, 367, 415, 1868, 337, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 783, 592, 913, 593, 474, 594, 416, 337, - 200, 1134, 201, 337, 884, 417, 885, 337, 1763, 1010, - 1376, 422, 429, 1764, 2114, 485, 2116, 1135, 2118, 1219, - 942, 433, 943, 1224, 434, 1136, 1137, 1138, 435, 1228, - 1230, 1139, 1140, 1141, 1142, 469, 470, 471, 472, 473, - 337, 783, 1364, 1040, 474, 485, 1027, 783, 486, 1117, - 337, 485, 485, 485, 441, 436, 1469, 1684, 1685, 884, - 783, 885, 1118, 485, 783, 485, 884, 884, 885, 885, - 1607, 1446, 1449, 439, 1600, 1601, 440, 476, 486, 1604, - 1605, 783, 480, 1163, 486, 486, 486, 457, 783, 302, - 1164, 458, 337, 337, 337, 337, 486, 1074, 486, 783, - 502, 1165, 1364, 475, 783, 1364, 1190, 783, 1364, 1206, - 783, 1364, 1226, 1941, 1304, 507, 1305, 485, 783, 783, - 1338, 1387, 346, 514, 515, 1281, 1282, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 337, 337, 522, 337, - 474, 337, 337, 523, 527, 337, 337, 337, 337, 1231, - 486, 528, 337, 1364, 337, 1364, 529, 1364, 1134, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 783, 1135, 1388, 783, 474, 1389, 1237, - 530, 531, 1136, 1137, 1138, 1240, 1241, 1242, 1139, 1140, - 1141, 1142, 783, 783, 1397, 1398, 783, 1246, 1399, 1247, - 1595, 538, 1596, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 783, 783, 1400, - 1402, 474, 783, 1471, 1403, 1472, 783, 783, 1473, 1474, - 541, 482, 126, 783, 783, 1475, 1476, 278, 280, 567, - 286, 1228, 1230, 783, 1638, 1517, 1639, 1672, 544, 1673, - 783, 1286, 1712, 337, 337, 337, 1769, 783, 1770, 1787, - 783, 580, 1788, 1628, 545, 1281, 1282, 556, 557, 337, - 1944, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 1638, 1638, 1808, 1863, 166, 167, 168, 169, 1887, 783, - 1888, 1907, 171, 172, 173, 558, 1911, 174, 1912, 773, - 1134, 1915, 1638, 1446, 1920, 1922, 485, 485, 179, 568, - 1874, 485, 485, 1449, 569, 1923, 1135, 1638, 783, 1928, - 1936, 302, 570, 571, 1136, 1137, 1138, 572, 375, 1465, - 1139, 1140, 1141, 1142, 783, 337, 1954, 573, 577, 486, - 486, 1769, 582, 2020, 486, 486, 1446, 1446, 2025, 2026, - 783, 783, 2041, 2042, 346, 783, 783, 2043, 2044, 337, - 783, 1638, 2046, 2058, 783, 337, 2100, 583, 2106, 1416, - 2107, 584, 1638, 337, 2128, 585, 337, 337, 2138, 589, - 2139, 337, 337, 586, 337, 590, 337, 591, 337, 369, - 337, 337, 337, 623, 627, 633, 634, 639, 201, 1459, - 640, 641, 642, 1842, 644, 660, 182, 183, 184, 337, - 661, 664, 1947, 665, 1134, 668, 474, 732, 191, 733, - 192, 99, 200, 798, 337, 779, 735, 780, 802, 803, - 1135, 804, 337, 805, 337, 809, 810, 827, 1136, 1137, - 1138, 829, 382, 383, 1139, 1140, 1141, 1142, 831, 1229, - 835, 836, -544, 837, 864, 866, 869, 546, 547, 867, - 876, 877, 883, 898, 900, 555, 901, 925, 1134, 563, - 902, 928, 937, 941, 954, 955, 986, 485, 485, 987, - 988, 1007, 485, 485, 1135, 991, 1468, 993, 994, 995, - 1005, 1006, 1136, 1137, 1138, 1012, 485, 1013, 1139, 1140, - 1141, 1142, 485, 1014, 1608, 1548, 1015, 1016, 1021, 1022, - 486, 486, 1029, 1030, 1057, 486, 486, 1095, 1064, 1067, - 1069, 1071, 1078, 1075, 1079, 1080, 2038, 1082, 302, 486, - 1083, 1084, 1085, 1087, 337, 486, 1088, 1089, 1090, 1091, - 1096, 1102, 1097, 1106, 485, 1104, 1107, 337, 1108, 1109, - 1110, 1843, 1111, 1112, 1113, 1120, 1158, 1173, 1127, 1196, - 1175, 346, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 1128, 486, 1181, 1197, - 474, 1183, 1184, 1185, 1198, 1208, 1199, 1212, 337, 337, - 1214, 1890, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 1211, 1134, 1215, 1492, - 474, 1216, 1220, 1221, 1251, 1253, 454, 454, 337, 1256, - 1261, 1262, 1268, 1135, 337, 1134, 1264, 1265, 1276, 1280, - 1609, 1136, 1137, 1138, 1278, 1277, 1611, 1139, 1140, 1141, - 1142, 1135, 1285, 1302, 337, 1608, 1308, 1309, 1315, 1136, - 1137, 1138, 1316, 1319, 337, 1139, 1140, 1141, 1142, 1320, - 1323, 1339, 1324, 1333, 337, 1334, 1335, 1336, 1337, 337, - 1349, 1352, 1367, 1353, 1354, 1369, 1368, 1378, 1643, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 1370, 1968, 337, 1602, 474, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 1371, 1372, 1373, 1374, 474, 1375, 337, 2093, - 1377, 1379, 1380, 1381, 1382, 1134, 1383, 1384, 482, 126, - 1407, 1594, 1412, 1413, 1419, 843, 844, 2095, 2004, 1422, - 1424, 1135, 1427, 547, 1415, 1414, 1429, 1417, 1431, 1136, - 1137, 1138, 1432, 1433, 337, 1139, 1140, 1141, 1142, 1442, - 1439, 1453, 1445, 1466, 1467, 1478, 337, 1484, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 1485, 1483, 1488, - 1621, 166, 167, 168, 169, 1493, 337, 1495, 1496, 171, - 172, 173, 1494, 1504, 174, 1498, 1606, 1134, 1499, 1500, - 1505, 1506, 1507, 337, 1508, 179, 485, 1646, 1510, 1511, - 1512, 1513, 1514, 1135, 1515, 1531, 302, 1518, 1521, 1522, - 1532, 1136, 1137, 1138, 1533, 337, 1539, 1139, 1140, 1141, - 1142, 1540, 337, 337, 1552, 1553, 1554, 2097, 1547, 486, - 1555, 1573, 1561, 337, 1585, 1562, 337, 1563, 1576, 346, - 1564, 1565, 1679, 1566, 1570, 1586, 1575, 1714, 1587, 1591, - 1598, 1612, 337, 1647, 1597, 1615, 337, 1618, 1623, 454, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 203, 1624, 7, 8, 474, 1626, 1629, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 182, 183, 184, 1630, 474, 1134, 2099, - 1731, 1631, 1632, 1642, 1648, 191, 1652, 192, 99, 1653, - 1654, 1657, 1659, 1661, 1135, 337, 1660, 1662, 1663, 1748, - 1751, 1752, 1136, 1137, 1138, 1666, 1758, 1667, 1139, 1140, - 1141, 1142, 1668, 884, 337, 885, 1669, 1670, 1671, 1674, - 1687, 1690, 1693, 1701, 1697, 1702, 736, 24, 25, 737, - 27, 28, 738, 30, 739, 32, 33, 1711, 1715, 1732, - 34, 302, 35, 1790, 365, 1736, 1739, 40, 41, 42, - 43, 1743, 45, 46, 47, 1753, 1754, 1755, 50, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 1756, 1971, 1757, 1760, 474, 1759, 1762, - 1134, 1761, 337, 337, 337, 337, 337, 1768, 1771, 1782, - 2131, 1784, 1775, 1785, 1124, 1776, 1135, 76, 77, 78, - 1791, 1130, 1786, 337, 1136, 1137, 1138, 1145, 1794, 1803, - 1139, 1140, 1141, 1142, 1792, 1805, 1795, 1797, 1799, 1830, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 1801, 1806, 1815, 1829, 474, 442, - 443, 444, 446, 448, 1824, 1834, 1831, 1835, 1832, 1836, - 1837, 1833, 1838, 1844, 1851, 1857, 481, 1858, 1859, 1860, - 488, 1861, 1862, 1864, 1886, 1892, 1908, 1910, 872, 1909, - 1914, 1916, 337, 1917, 495, 497, 500, 501, 1926, 503, - 497, 505, 506, 485, 497, 509, 510, 511, 512, 1929, - 1932, 1935, 2132, 497, 1933, 1949, 1966, 1937, 521, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 540, 1950, 337, 486, 474, 1953, 1967, - 1982, 1987, 549, 550, 1989, 1992, 1993, 1996, 1997, 2000, - 2001, 550, 1828, 485, 2005, 485, 460, 461, 462, 463, + 123, 1370, 694, 208, 696, 546, 1737, 1738, 1368, 1707, + 1501, 388, 849, 850, 4, 1062, 207, 1046, 349, 711, + 106, 608, 5, 233, 1490, 229, 610, 581, 356, 1617, + 301, 345, 230, 612, 634, 238, 1857, 1035, 238, 202, + 605, 565, 289, 233, 268, 362, 364, 269, 211, 907, + 909, 911, 913, 554, 555, 214, 1979, 584, 212, 1359, + 1361, 372, 272, 1363, 304, 1138, 1296, 306, 1208, 307, + 556, 726, 339, 730, 225, 733, 226, 304, 273, 274, + 1365, 1139, 210, 1988, 554, 555, 213, 1990, 304, 1140, + 1141, 1142, 554, 555, 768, 1143, 1144, 1145, 1146, 769, + 1545, 357, 1546, 361, 777, 554, 555, 778, 724, 1787, + 1349, 554, 555, 370, 276, 277, 599, 646, 600, 648, + 371, 1547, 290, 1548, 278, 656, 291, 844, 484, 127, + 568, 279, 292, 293, 294, 295, 387, 569, 206, 311, + 554, 555, 312, 1022, 554, 555, 296, 308, 473, 474, + 475, 780, 216, 451, 778, 476, 1549, 1261, 1550, 280, + 282, 557, 288, 217, 1047, 1048, 1049, 1050, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 1367, 554, 555, + 609, 167, 168, 169, 170, 611, 229, 1982, 1983, 172, + 173, 174, 613, 1039, 175, 567, 218, 304, 302, 606, + 241, 1618, 1360, 1362, 728, 180, 1364, 1042, 948, 487, + 487, 220, 952, 554, 555, 1063, 1853, 487, 456, 100, + 223, 100, 100, 1366, 1063, 304, 389, 339, 390, 219, + 391, 1368, 339, 350, 1869, 202, 339, 495, 234, 231, + 1051, 487, 339, 221, 582, 235, 339, 339, 339, 339, + 487, 202, 303, 346, 339, 339, 339, 239, 234, 1036, + 1041, 607, 339, 339, 339, 1040, 363, 365, 339, 304, + 908, 910, 912, 914, 373, 215, 1980, 379, 1297, 124, + 1298, 374, 209, 950, 1209, 954, 554, 555, 224, 732, + 554, 555, 232, 1022, 339, 339, 339, 380, 381, 382, + 725, 842, 843, 222, 183, 184, 185, 772, 339, 339, + 452, 453, 773, 624, 1262, 1263, 192, 236, 193, 100, + 284, 858, 888, 285, 889, 339, 286, 339, 890, 237, + 554, 555, 380, 381, 382, 383, 1467, 775, 554, 555, + 384, 385, 776, 305, 485, 489, 851, 1233, 554, 555, + -545, 1023, 384, 385, 857, 1029, 348, 554, 555, 1028, + 240, 554, 555, 375, 1345, 376, 487, 358, 554, 555, + 339, 339, 377, 1369, 384, 385, 515, 1704, 245, 2021, + 549, 550, 1004, 339, 1800, 523, 241, 776, 558, 665, + 931, 1022, 566, 380, 381, 382, 729, 380, 381, 382, + 949, 380, 381, 382, 953, 940, 297, 242, 298, 1730, + 243, 487, 487, 487, 487, 487, 487, 487, 487, 487, + 487, 339, 487, 487, 2027, 487, 487, 487, 487, 487, + 244, 554, 555, 487, 487, 487, 487, 487, 304, 786, + 304, 787, 554, 555, 714, 276, 277, 1802, 554, 555, + 250, 246, 722, 251, 247, 278, 252, 339, 1804, 554, + 555, 248, 287, 734, 1813, 1291, 380, 381, 382, 383, + 786, 786, 786, 792, 796, 1814, 454, 1414, 380, 381, + 382, 383, 380, 381, 382, 383, 384, 385, 488, 488, + 384, 385, 888, 249, 889, 339, 488, 776, 384, 385, + -544, 654, 384, 385, 496, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 625, 474, 475, 1294, + 488, 554, 555, 476, 786, 380, 381, 382, 383, 488, + 384, 385, 1700, 786, 253, 805, 2113, 1815, 339, 339, + -549, 820, 823, 826, 829, 384, 385, 695, 348, 697, + 698, 699, 700, 701, 702, 703, 254, 705, 706, 260, + 708, 709, 710, 786, 712, 917, 1538, 1539, 716, 717, + 718, 719, 720, 456, 456, 1222, 554, 555, 255, 1227, + 380, 381, 382, 383, 339, 339, 339, 256, 384, 385, + 1596, 1597, 1816, 384, 385, 1125, 339, 339, -547, 1180, + 487, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 339, 1767, 270, 461, 476, + 271, 1768, 339, 554, 555, 275, 554, 555, 1731, 283, + 554, 555, 1138, 554, 555, 479, 455, 480, 627, 1817, + 628, 339, 1818, 299, 377, 488, 1944, 377, 1139, 1947, + 946, 1883, 947, 1886, 764, 1889, 1140, 1141, 1142, 847, + 848, 339, 1143, 1144, 1145, 1146, 888, 550, 889, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 963, 554, 555, 786, 476, 1044, 1415, + 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, + 1950, 488, 488, 300, 488, 488, 488, 488, 488, 554, + 555, 309, 488, 488, 488, 488, 488, 721, 888, 723, + 889, 554, 555, 339, 924, 1959, 888, 339, 889, 554, + 555, 987, 554, 555, 1329, 900, 1331, 1960, 1333, 1024, + 1335, 310, 1031, 1030, 1368, 1961, 342, 1368, 1962, 313, + 1368, 53, 54, 55, 56, 1138, 554, 555, 554, 555, + 314, 554, 555, 554, 555, 66, 339, 315, 69, 1270, + 339, 1139, 1963, 487, 2032, 341, 304, 2033, 487, 1140, + 1141, 1142, 339, 339, 343, 1143, 1144, 1145, 1146, 344, + 351, 554, 555, 1078, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 2007, 2049, 352, 353, + 476, 339, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 261, 554, 555, 262, + 476, 786, 263, 1121, 264, 339, 471, 472, 473, 474, + 475, 1461, 1462, 2095, 355, 476, 1465, 1466, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 2030, 1134, 2019, 2032, 474, 2034, 2036, 2054, 2055, 2052, - 2056, 2064, 2067, 2070, 2073, 485, 486, 1135, 486, 2074, - 2075, 2076, 616, 618, 497, 1136, 1137, 1138, 2078, 2084, - 2088, 1139, 1140, 1141, 1142, 2089, 628, 629, 630, 2094, - 632, 2096, 2110, 2098, 635, 636, 637, 2108, 486, 638, - 1970, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 2113, 2115, 652, 2117, 474, 2086, 2119, 657, - 659, 2125, 2140, 2141, 2142, 2143, 2144, 2145, 2147, 1297, - 1487, 778, 1972, 666, 667, 1502, 669, 670, 671, 672, + 474, 475, 554, 555, 354, 359, 476, 1562, 1368, 417, + 384, 385, 384, 385, 384, 385, 897, 435, 2096, 488, + -548, 1390, -546, 369, 2067, 1468, 2070, 339, 2073, 339, + 384, 385, 339, 257, 2076, 652, 258, 653, 259, 963, + -550, 1481, 418, 419, 377, 339, 1008, 339, 1072, 339, + 595, 339, 596, 1076, 597, 424, 339, 201, 649, 202, + 650, 339, 597, 770, 1302, 771, 1303, 202, 1368, 1870, + 1871, 1368, 377, 431, 1368, 1872, 765, 1368, 766, 265, + 767, 436, 266, 339, 267, 202, 437, 339, 2118, 1128, + 2120, 339, 2122, 1267, 1874, 1875, 1134, 438, 614, 487, + 1872, 615, 1149, 1223, 616, 441, 617, 1228, 442, 786, + 888, 1122, 889, 1232, 1234, 1012, 786, 478, 1167, 1368, + 888, 1368, 889, 1368, 339, 1014, 888, 459, 889, 487, + 786, 786, 1168, 443, 339, 487, 487, 487, 482, 1688, + 1689, 1473, 786, 888, 1169, 889, 460, 487, 1450, 487, + 477, 504, 1604, 1605, 509, 517, 1138, 1608, 1609, 518, + 1318, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 525, 526, 1139, 304, 476, 541, 339, 339, 339, 339, + 1140, 1141, 1142, 786, 530, 1194, 1143, 1144, 1145, 1146, + 544, 888, 488, 889, 547, 1074, 1453, 488, 1611, 531, + 532, 487, 786, 786, 1210, 1230, 1308, 533, 1309, 1285, + 1286, 786, 786, 1342, 1391, 786, 786, 1392, 1393, 534, + 339, 339, 786, 339, 1401, 339, 339, 548, 559, 339, + 339, 339, 339, 560, 1235, 1380, 339, 786, 339, 1402, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 786, 786, 1403, 1404, 476, 786, + 786, 1406, 1407, 1475, 1241, 1476, 570, 786, 1945, 1477, + 1244, 1245, 1246, 786, 786, 1478, 1479, 786, 786, 1480, + 1521, 1642, 1250, 1643, 1251, 561, 571, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 1676, 786, 1677, 1716, 476, 1773, 786, 1774, 1791, + 786, 583, 1792, 1599, 1642, 1600, 1812, 1642, 572, 1867, + 1891, 573, 1892, 500, 1301, 1232, 1234, 1420, 500, 786, + 585, 1911, 500, 1915, 574, 1916, 1290, 339, 339, 339, + 575, 576, 500, 776, 1642, 1919, 1924, 580, 1632, 1285, + 1286, 377, 586, 339, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 1450, 1453, + 1926, 1927, 476, 1642, 786, 1932, 1940, 786, 488, 1958, + 1350, 1351, 1352, 1773, 1450, 2024, 2029, 1450, 626, 2030, + 487, 487, 1878, 587, 588, 487, 487, 786, 1463, 2045, + 786, 786, 2046, 2047, 786, 304, 2048, 786, 488, 2050, + 7, 8, 630, 1469, 488, 488, 488, 589, 1642, 339, + 2062, 620, 786, 500, 2104, 2110, 488, 2111, 488, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 339, 371, 592, 1496, 476, 1642, 339, + 2132, 1472, 348, 2142, 593, 2143, 594, 339, 636, 637, + 339, 339, 202, 642, 643, 339, 339, 644, 339, 645, + 339, 647, 339, 663, 339, 339, 339, 664, 667, 668, + 488, 1846, 739, 24, 25, 740, 27, 28, 741, 30, + 742, 32, 33, 339, 671, 476, 735, 35, 736, 36, + 201, 782, 738, 783, 41, 42, 43, 44, 339, 46, + 47, 48, 801, 802, 806, 51, 339, 807, 339, 808, + 809, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 813, 814, 831, 833, 476, + 835, 840, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 500, 77, 78, 79, 476, 839, 841, + 868, 487, 487, 870, 887, 871, 487, 487, 1598, 873, + 880, 881, 902, 929, 904, 932, 520, 521, 522, 905, + 487, 906, 941, 527, 528, 529, 487, 945, 1612, 958, + 959, 620, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 990, 991, 992, 995, + 476, 1018, 304, 997, 1561, 998, 999, 1625, 339, 1009, + 1010, 1011, 1016, 577, 578, 876, 1019, 1017, 487, 1020, + 1025, 339, 1026, 1033, 500, 500, 1847, 590, 591, 1034, + 1061, 1079, 1082, 1068, 1650, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 1071, + 1073, 1075, 1087, 476, 1083, 1091, 1084, 1086, 1088, 488, + 488, 1089, 339, 339, 488, 488, 1092, 1093, 1094, 1095, + 500, 500, 500, 1100, 348, 1099, 1101, 1106, 1108, 1683, + 1110, 1111, 894, 896, 1112, 1114, 1113, 1116, 1115, 1124, + 456, 456, 339, 1162, 1894, 1117, 1131, 1177, 339, 1132, + 1179, 500, 1185, 1200, 1201, 1613, 1202, 1212, 921, 1187, + 1188, 1615, 1189, 1203, 1215, 1216, 1218, 1255, 339, 1612, + 1219, 1220, 1224, 1225, 1257, 1260, 1265, 500, 339, 1266, + 1282, 1268, 1269, 1272, 1280, 1138, 1281, 1735, 339, 1655, + 1284, 1289, 1306, 339, 1312, 1313, 1319, 500, 1320, 1323, + 1324, 1139, 1327, 1647, 1343, 1328, 1752, 1755, 1756, 1140, + 1141, 1142, 1337, 1138, 1338, 1143, 1144, 1145, 1146, 339, + 1339, 484, 127, 1340, 1353, 1341, 1358, 1356, 1357, 1139, + 1690, 1371, 1693, 1372, 1696, 1373, 1374, 1140, 1141, 1142, + 1381, 1375, 339, 1143, 1144, 1145, 1146, 1972, 1376, 1377, + 1378, 1708, 1709, 1710, 1711, 1712, 1714, 1379, 1382, 1383, + 1384, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 1385, 1386, 1387, 1388, 167, 168, 169, 170, 339, 1411, + 488, 488, 172, 173, 174, 488, 488, 175, 1416, 1417, + 339, 2008, 1419, 1418, 1426, 1421, 1428, 1948, 180, 488, + 1423, 1431, 500, 1433, 1435, 488, 500, 1436, 1437, 1443, + 339, 1446, 1138, 1449, 1471, 1470, 1457, 1489, 921, 1081, + 1492, 1482, 1499, 1500, 1508, 1951, 1834, 339, 1139, 1498, + 487, 348, 1487, 1497, 1502, 1511, 1140, 1141, 1142, 1488, + 304, 1503, 1143, 1144, 1145, 1146, 1504, 488, 1138, 339, + 1509, 1510, 1512, 1515, 1516, 1517, 339, 339, 1514, 1518, + 1519, 1525, 1522, 1579, 1139, 1526, 1535, 339, 1536, 1537, + 339, 500, 1140, 1141, 1142, 1551, 1556, 1543, 1143, 1144, + 1145, 1146, 1544, 1557, 1558, 1559, 339, 1577, 1565, 1566, + 339, 1567, 1568, 456, 1580, 1589, 1590, 183, 184, 185, + 1591, 1569, 1570, 1595, 1574, 1602, 1601, 1616, 1651, 192, + 1619, 193, 100, 1622, 1627, 1628, 1630, 1765, 1633, 1634, + 1635, 1636, 1646, 500, 2042, 500, 1652, 1656, 500, 1657, + 1658, 1661, 1663, 1667, 1664, 1665, 1666, 888, 1670, 889, + 1138, 500, 1671, 500, 1672, 500, 1673, 500, 1674, 339, + 1675, 1138, 500, 1678, 1691, 1694, 1139, 500, 1552, 1697, + 2097, 1701, 1705, 1706, 1140, 1141, 1142, 1139, 339, 1715, + 1143, 1144, 1145, 1146, 1719, 1140, 1141, 1142, 1606, 1740, + 1736, 1143, 1144, 1145, 1146, 1882, 1743, 1885, 1747, 1888, + 1757, 1758, 1759, 1760, 1761, 304, 1763, 1610, 1764, 1898, + 1899, 1900, 1901, 1902, 1766, 7, 8, 1974, 1772, 1775, + 1786, 1809, 1779, 1780, 1788, 1789, 1795, 1138, 1790, 1796, + 500, 1798, 1807, 1799, 1819, 1801, 1803, 1718, 1828, 1833, + 1805, 1810, 1838, 1139, 1839, 1835, 339, 339, 339, 339, + 339, 1140, 1141, 1142, 1840, 1841, 1836, 1143, 1144, 1145, + 1146, 1837, 2099, 204, 1842, 1848, 1934, 339, 1855, 1861, + 1938, 1862, 1863, 2101, 1864, 1865, 1866, 1868, 1890, 1896, + 1912, 1913, 500, 500, 500, 500, 1914, 739, 24, 25, + 740, 27, 28, 741, 30, 742, 32, 33, 1918, 1920, + 1921, 1930, 35, 1933, 36, 1936, 1939, 1937, 1953, 41, + 42, 43, 44, 1941, 46, 47, 48, 1957, 1762, 488, + 51, 1954, 2057, 1970, 1971, 1986, 1991, 1993, 1987, 348, + 1996, 1997, 1989, 2000, 2001, 2004, 339, 2005, 2009, 2103, + 2040, 2034, 500, 2056, 2059, 2023, 2068, 487, 2071, 2074, + 2058, 2077, 2078, 2036, 2079, 2080, 367, 2082, 2014, 77, + 78, 79, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 2088, 2038, 2093, 339, + 476, 2060, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 2092, 487, 2098, 487, + 476, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 2100, 2114, 2102, 2112, 476, + 2117, 2119, 2121, 2123, 2129, 2144, 2145, 2065, 2066, 487, + 938, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 1138, 2146, 2147, 2148, 476, + 2149, 444, 445, 446, 448, 450, 1491, 2151, 1858, 1976, + 781, 1139, 105, 1506, 816, 115, 116, 117, 483, 1140, + 1141, 1142, 490, 7, 8, 1143, 1144, 1145, 1146, 1876, + 1629, 0, 2090, 0, 1975, 0, 497, 499, 502, 503, + 0, 505, 499, 507, 508, 0, 499, 511, 512, 513, + 514, 1917, 624, 0, 0, 0, 499, 0, 0, 0, + 0, 524, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 543, 0, 0, 0, + 476, 0, 2128, 0, 2131, 552, 553, 0, 0, 0, + 0, 0, 0, 0, 553, 739, 24, 25, 740, 27, + 28, 741, 30, 742, 32, 33, 0, 2135, 0, 0, + 35, 0, 36, 0, 2150, 1138, 0, 41, 42, 43, + 44, 0, 46, 47, 48, 0, 0, 0, 51, 0, + 0, 1139, 0, 0, 0, 619, 621, 499, 0, 1140, + 1141, 1142, 0, 0, 0, 1143, 1144, 1145, 1146, 631, + 632, 633, 0, 635, 0, 0, 0, 638, 639, 640, + 0, 0, 641, 0, 0, 0, 0, 77, 78, 79, + 0, 0, 0, 0, 500, 0, 488, 655, 0, 0, + 0, 0, 660, 662, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 669, 670, 0, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, - 683, 684, 685, 686, 687, 688, 689, 690, 1854, 104, - 114, 115, 116, 2133, 812, 1872, 1625, 2124, 0, 2127, - 0, 704, 0, 0, 0, 0, 0, 710, 0, 712, - 1965, 0, 0, 0, 0, 1346, 1347, 1348, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2146, - 0, 0, 0, 741, 497, 2053, 743, 744, 745, 746, + 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, + 693, 0, 0, 0, 0, 0, 488, 2136, 488, 0, + 0, 0, 0, 0, 707, 0, 0, 0, 939, 0, + 713, 0, 715, 1794, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 785, 474, 475, 488, 0, + 0, 0, 476, 0, 0, 0, 744, 499, 0, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, - 757, 0, 0, 759, 760, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 616, 474, 0, 0, 0, 0, 787, 0, - 0, 0, 0, 792, 0, 0, 0, 0, 0, 0, - 799, 800, 0, 0, 2037, 0, 0, 0, 807, 808, - 0, 0, 0, 813, 815, 818, 821, 824, 826, 0, - 828, 0, 830, 0, 497, 497, 0, 0, 0, 0, + 757, 758, 759, 760, 0, 0, 762, 763, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 0, 0, 0, 619, 476, 0, 0, 0, + 0, 790, 0, 1686, 0, 1687, 795, 0, 0, 0, + 0, 0, 0, 0, 803, 804, 0, 0, 500, 500, + 0, 0, 811, 812, 0, 0, 0, 817, 819, 822, + 825, 828, 830, 0, 832, 0, 834, 0, 499, 499, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 848, 849, 850, 442, 443, 851, 0, 0, - 0, 855, 856, 857, 858, 859, 860, 861, 862, 863, - 0, 0, 0, 868, 0, 870, 871, 0, 0, 0, - 497, 497, 497, 0, 0, 878, 879, 880, 881, 882, - 0, 0, 889, 889, 894, 895, 0, 897, 0, 0, - 899, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 497, 0, 0, 0, 621, 0, 914, 916, 0, - 918, 919, 0, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 497, 0, 0, - 0, 474, 881, 882, 0, 918, 919, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 952, 497, 0, 0, - 0, 956, 0, 0, 0, 0, 0, 0, 0, 1557, - 0, 124, 364, 0, 0, 0, 0, 127, 128, 129, - 0, 0, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 0, 0, 460, 461, 462, + 0, 0, 0, 0, 500, 0, 852, 853, 854, 444, + 445, 855, 0, 0, 0, 859, 860, 861, 862, 863, + 864, 865, 866, 867, 0, 0, 0, 872, 0, 874, + 875, 0, 0, 0, 499, 499, 499, 0, 0, 882, + 883, 884, 885, 886, 0, 0, 893, 893, 898, 899, + 0, 901, 0, 0, 903, 7, 8, 0, 0, 0, + 0, 0, 0, 0, 0, 499, 0, 0, 0, 0, + 0, 918, 920, 0, 922, 923, 0, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 499, 1138, 0, 0, 476, 885, 886, 0, 922, + 923, 0, 0, 0, 0, 1832, 0, 0, 1139, 0, + 956, 499, 0, 0, 0, 960, 1140, 1141, 1142, 0, + 0, 0, 1143, 1144, 1145, 1146, 0, 739, 24, 25, + 740, 27, 28, 741, 30, 742, 32, 33, 0, 0, + 0, 0, 35, 0, 36, 0, 620, 0, 0, 41, + 42, 43, 44, 0, 46, 47, 48, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 500, 0, 0, 501, + 0, 0, 0, 0, 506, 0, 0, 0, 510, 0, + 1032, 0, 0, 1845, 0, 0, 1325, 0, 519, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, + 78, 79, 516, 0, 2137, 0, 1969, 0, 0, 0, + 0, 0, 1059, 1060, 0, 0, 499, 1066, 1067, 0, + 499, 1070, 536, 538, 540, 0, 500, 0, 545, 1077, + 0, 0, 920, 1080, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 500, 0, 0, 1096, + 0, 0, 0, 0, 0, 0, 579, 0, 0, 0, + 1104, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1126, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 499, 0, 0, 0, 476, + 0, 0, 1129, 1130, 0, 0, 0, 0, 1133, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 162, 163, 164, 165, 474, 1028, 0, 0, 170, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 175, 176, 177, 0, 0, 621, 0, 0, 178, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1055, 1056, - 0, 0, 497, 1062, 1063, 0, 497, 1066, 0, 0, - 0, 0, 0, 0, 0, 1073, 0, 0, 916, 1076, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 1092, 0, 0, 0, 474, 0, - 884, 0, 885, 0, 1651, 1100, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 622, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 497, 0, 0, 0, 0, 0, 0, 1125, 1126, 0, - 0, 0, 0, 1129, 0, 1686, 181, 1689, 0, 1692, - 185, 0, 0, 0, 186, 187, 188, 189, 190, 0, - 1157, 0, 99, 1159, 0, 0, 1704, 1705, 1706, 1707, - 1708, 1710, 0, 0, 0, 0, 193, 194, 0, 0, - 0, 195, 497, 0, 497, 0, 327, 497, 0, 0, - 0, 199, 0, 539, 0, 0, 0, 0, 0, 0, - 497, 0, 497, 0, 497, 0, 497, 0, 0, 0, - 0, 497, 0, 0, 0, 0, 497, 0, 0, 0, - 0, 0, 1200, 0, 1202, 1203, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1210, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 782, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1232, 0, 0, - 0, 0, 0, 0, 0, 1233, 1234, 1235, 0, 497, - 0, 0, 0, 0, 0, 0, 0, 1238, 0, 0, + 473, 474, 475, 0, 0, 1161, 0, 476, 1163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1245, 0, 0, 0, 0, 1248, 929, 0, 0, - 0, 0, 0, 0, 0, 1252, 0, 0, 0, 0, - 0, 1260, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 497, 497, 497, 497, 0, 0, 1274, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, - 0, 0, 0, 0, 0, 0, 513, 498, 0, 0, - 0, 0, 498, 0, 0, 0, 498, 0, 0, 0, - 0, 0, 0, 0, 0, 498, 533, 535, 537, 0, - 0, 0, 542, 0, 0, 0, 0, 0, 0, 0, - 0, 497, 0, 0, 0, 0, 0, 0, 0, 0, - 1878, 0, 1881, 1326, 1884, 1328, 1041, 1330, 0, 1332, - 576, 0, 0, 0, 1894, 1895, 1896, 1897, 1898, 0, - 736, 24, 25, 737, 27, 28, 738, 30, 739, 32, - 33, 1351, 0, 0, 34, 0, 35, 0, 0, 0, - 0, 40, 41, 42, 43, 0, 45, 46, 47, 0, - 7, 8, 50, 0, 617, 0, 498, 0, 0, 0, - 0, 0, 0, 0, 1385, 0, 0, 0, 0, 0, - 0, 1930, 0, 1390, 1391, 1934, 1392, 1393, 0, 1394, - 1395, 1396, 0, 0, 654, 655, 0, 1401, 1191, 0, - 0, 76, 77, 78, 0, 0, 0, 663, 460, 461, + 657, 658, 0, 0, 0, 0, 2041, 499, 0, 499, + 0, 0, 499, 666, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 499, 0, 499, 0, 499, + 0, 499, 0, 0, 0, 0, 499, 0, 0, 0, + 0, 499, 0, 0, 0, 0, 0, 1204, 0, 1206, + 1207, 704, 0, 0, 0, 0, 0, 0, 0, 0, + 1214, 0, 500, 500, 500, 500, 500, 0, 0, 745, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 1423, 0, 474, 0, 0, 1428, - 0, 0, 736, 24, 25, 737, 27, 28, 738, 30, - 739, 32, 33, 1983, 0, 701, 34, 1985, 35, 0, - 0, 0, 0, 40, 41, 42, 43, 0, 45, 46, - 47, 0, 0, 0, 50, 0, 0, 0, 0, 0, - 0, 1470, 934, 2010, 0, 0, 0, 0, 0, 0, - 0, 0, 1479, 1480, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 498, 1489, 1491, 0, - 0, 0, 0, 76, 77, 78, 0, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 0, 0, 0, - 0, 0, 0, 0, 617, 0, 0, 0, 0, 0, - 0, 0, 2061, 2062, 0, 0, 0, 1536, 1537, 1538, - 0, 0, 0, 0, 0, 0, 0, 0, 1549, 0, - 1551, 0, 0, 1409, 0, 0, 0, 0, 0, 0, - 0, 1556, 0, 0, 935, 0, 498, 498, 0, 0, - 0, 0, 0, 497, 0, 0, 0, 0, 1571, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 0, - 0, 0, 0, 0, 1588, 1589, 1590, 0, 0, 0, - 0, 0, 498, 498, 498, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 890, 892, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1610, 0, 0, 0, - 0, 0, 0, 498, 0, 0, 0, 0, 0, 0, - 917, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1622, 0, 0, 0, 0, 0, 0, 0, 0, 498, - 0, 0, 0, 0, 1635, 0, 0, 0, 0, 1641, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 498, - 0, 0, 0, 0, 1649, 1650, 0, 0, 0, 0, - 0, 1655, 1656, 0, 0, 0, 1658, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1665, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 497, 497, 1677, - 0, 1678, 0, 0, 0, 0, 1017, 0, 0, 0, - 1023, 0, 0, 1695, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 497, 0, 0, 1713, 0, 0, 0, - 0, 0, 0, 1716, 1717, 1718, 1719, 1720, 1721, 1722, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1730, - 0, 0, 0, 0, 498, 0, 0, 0, 498, 0, - 0, 0, 358, 126, 0, 0, 0, 0, 0, 1750, - 917, 1077, 0, 7, 8, 0, 0, 0, 0, 0, - 0, 499, 0, 1101, 0, 0, 504, 0, 0, 0, - 508, 0, 1765, 1766, 0, 0, 0, 0, 0, 516, - 1772, 0, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 0, 0, 0, 0, 166, 167, 168, 169, 0, - 0, 0, 498, 171, 172, 173, 0, 0, 174, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1793, 179, - 0, 0, 0, 0, 0, 736, 24, 25, 737, 27, - 28, 738, 30, 739, 32, 33, 1807, 0, 0, 34, - 0, 35, 0, 0, 0, 616, 40, 41, 42, 43, - 0, 45, 46, 47, 498, 0, 498, 50, 0, 498, - 1825, 0, 1826, 0, 0, 497, 0, 0, 0, 0, - 0, 0, 498, 0, 498, 0, 498, 0, 498, 0, - 0, 0, 1840, 498, 1321, 0, 0, 0, 498, 0, - 0, 0, 0, 0, 0, 1213, 76, 77, 78, 1217, - 1846, 0, 0, 1222, 0, 1850, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 182, 183, 184, - 0, 0, 0, 0, 0, 497, 0, 0, 0, 191, - 0, 192, 1877, 0, 1880, 0, 1883, 0, 0, 0, - 0, 0, 0, 0, 0, 497, 1239, 0, 0, 0, - 0, 498, 0, 0, 0, 1899, 1900, 1901, 1902, 1903, - 1904, 0, 0, 0, 0, 0, 0, 1122, 0, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 1918, 1919, 0, 0, 474, 1921, 0, - 742, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1927, 0, 0, 498, 498, 498, 498, 0, 0, 0, - 0, 1938, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 1300, 1301, 0, 1303, 0, 1306, 1307, 1039, - 0, 1310, 1311, 1312, 1313, 0, 0, 1969, 0, 0, - 1318, 0, 0, 1641, 0, 0, 0, 0, 0, 0, - 7, 8, 1980, 498, 0, 0, 0, 0, 0, 0, - 832, 833, 0, 0, 0, 0, 1991, 0, 0, 1995, - 0, 0, 1999, 0, 0, 0, 2002, 0, 0, 0, - 0, 497, 497, 497, 497, 497, 2012, 2013, 2014, 2015, - 2016, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2022, 0, 0, 2024, 0, 0, 873, 874, 875, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 736, 24, 25, 737, 27, 28, 738, 30, - 739, 32, 33, 0, 0, 0, 34, 911, 35, 1404, - 1405, 1406, 0, 40, 41, 42, 43, 0, 45, 46, - 47, 0, 0, 2060, 50, 1418, 0, 0, 0, 0, - 0, 0, 0, 933, 0, 0, 0, 0, 0, 0, - 0, 497, 0, 2079, 2080, 2081, 2082, 2083, 0, 0, - 0, 0, 0, 953, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 76, 77, 78, 0, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 2111, 2112, 0, - 0, 1482, 1682, 0, 1683, 0, 0, 0, 2120, 2121, - 2122, 2123, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1503, 0, 0, 0, 0, - 0, 1509, 0, 0, 0, 0, 0, 0, 0, 1516, - 0, 0, 1519, 1520, 1123, 0, 0, 1523, 1524, 0, - 1525, 0, 1526, 0, 1527, 0, 1528, 1529, 1530, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1061, 0, - 0, 0, 1065, 0, 0, 1550, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 1560, 0, 0, 0, 474, 0, 0, 0, 1568, 0, - 0, 921, 0, 1094, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 498, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 1119, 0, 0, 0, - 0, 1724, 0, 1725, 960, 961, 962, 963, 964, 965, - 966, 967, 968, 969, 970, 0, 972, 973, 974, 975, - 976, 977, 978, 0, 0, 0, 982, 984, 985, 0, - 0, 0, 989, 990, 0, 992, 0, 0, 0, 0, - 997, 998, 999, 0, 1001, 0, 0, 0, 1171, 0, - 1172, 1009, 1011, 1174, 0, 0, 0, 0, 0, 0, - 1633, 0, 0, 0, 0, 0, 1186, 0, 1187, 1034, - 1188, 0, 1189, 1645, 0, 0, 0, 1192, 0, 0, - 0, 0, 1195, 124, 364, 0, 0, 0, 0, 127, - 128, 129, 0, 0, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 498, - 498, 0, 0, 162, 163, 164, 165, 0, 0, 0, - 0, 170, 0, 0, 1482, 1236, 0, 0, 0, 0, - 0, 0, 175, 176, 177, 0, 0, 0, 0, 0, - 178, 0, 0, 0, 0, 498, 0, 0, 0, 0, - 1723, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1735, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1742, 0, 0, 0, 0, 1747, 0, 1269, 1270, 1271, - 1272, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 1767, 0, 0, 0, 0, 1875, 0, 1876, 0, - 0, 1179, 0, 0, 0, 0, 7, 8, 0, 0, - 0, 0, 0, 0, 1482, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1317, 181, 0, - 0, 0, 185, 0, 0, 0, 186, 187, 188, 189, - 190, 0, 0, 0, 99, 0, 0, 0, 0, 0, - 1804, 0, 0, 0, 0, 0, 0, 0, 559, 560, - 0, 0, 0, 195, 0, 0, 0, 0, 561, 0, - 0, 226, 227, 199, 0, 277, 0, 617, 736, 24, - 25, 737, 27, 28, 738, 30, 739, 32, 33, 0, - 0, 0, 34, 0, 35, 0, 0, 498, 0, 40, - 41, 42, 43, 0, 45, 46, 47, 0, 0, 0, - 50, 0, 0, 0, 1841, 0, 0, 0, 0, 0, - 0, 1482, 0, 0, 0, 0, 0, 0, 1855, 1856, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1482, - 0, 0, 0, 0, 0, 1273, 0, 0, 0, 76, - 77, 78, 0, 0, 0, 0, 0, 498, 1889, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, - 8, 0, 376, 0, 0, 0, 0, 498, 1295, 1296, - 0, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 0, 0, 0, 418, - 419, 420, 421, 0, 423, 424, 425, 426, 427, 428, - 1146, 1931, 430, 0, 0, 0, 0, 0, 431, 432, - 0, 0, 0, 0, 437, 438, 0, 0, 0, 0, - 1948, 736, 24, 25, 737, 27, 28, 738, 30, 739, - 32, 33, 0, 0, 0, 34, 0, 35, 0, 0, - 0, 0, 40, 41, 42, 43, 0, 45, 46, 47, - 0, 0, 0, 50, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 1149, 0, 0, 0, 0, 0, 0, 0, 1569, - 0, 0, 76, 77, 78, 0, 0, 0, 0, 0, - 0, 0, 0, 498, 498, 498, 498, 498, 0, 1482, - 0, 1430, 0, 0, 0, 0, 0, 1434, 1435, 1436, - 1437, 1438, 0, 1441, 0, 1443, 1444, 0, 1447, 1450, - 0, 0, 1454, 1455, 1456, 0, 0, 0, 0, 1460, - 0, 0, 0, 0, 595, 0, 0, 598, 599, 600, - 601, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1201, 0, 0, 0, 626, 460, 461, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 1236, 0, 7, 8, 0, 0, 0, 0, + 1237, 1238, 1239, 0, 499, 0, 0, 0, 0, 0, + 0, 0, 1242, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1249, 0, 0, 0, + 0, 1252, 0, 0, 0, 0, 0, 0, 0, 0, + 1256, 0, 0, 0, 0, 0, 1264, 0, 0, 0, + 836, 837, 500, 0, 0, 0, 499, 499, 499, 499, + 0, 0, 1278, 0, 0, 2022, 739, 24, 25, 740, + 27, 28, 741, 30, 742, 32, 33, 0, 0, 0, + 0, 35, 0, 36, 0, 7, 8, 0, 41, 42, + 43, 44, 0, 46, 47, 48, 877, 878, 879, 51, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 124, 125, 126, 474, 0, 724, 127, - 128, 129, 0, 498, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 0, 0, 0, - 0, 1482, 0, 0, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 0, 1675, 1676, 171, 172, 173, 0, 0, - 174, 0, 175, 176, 177, 0, 0, 0, 0, 0, - 178, 179, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1574, 0, 0, 0, 0, 0, 354, 126, - 0, 0, 734, 0, 0, 0, 0, 0, 1584, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 1599, 0, 474, 0, 0, - 1603, 0, 0, 0, 0, 0, 1182, 0, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 0, 0, 0, - 0, 166, 167, 168, 169, 0, 7, 8, 0, 171, - 172, 173, 1616, 1617, 174, 0, 1619, 1620, 0, 0, - 0, 180, 0, 0, 0, 179, 0, 0, 181, 182, - 183, 184, 185, 0, 0, 0, 186, 187, 188, 189, - 190, 191, 0, 192, 99, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 193, 194, - 0, 0, 0, 195, 0, 0, 0, 0, 196, 0, - 197, 0, 198, 199, 0, 200, 0, 201, 736, 24, - 25, 737, 27, 28, 738, 30, 739, 32, 33, 0, - 0, 0, 34, 0, 35, 0, 0, 0, 0, 40, - 41, 42, 43, 0, 45, 46, 47, 0, 0, 0, - 50, 1827, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 182, 183, 184, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 191, 0, 192, 99, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, - 77, 78, 0, 0, 0, 1737, 1738, 0, 0, 1740, - 1741, 0, 0, 0, 0, 1744, 1745, 0, 0, 0, - 0, 1873, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 124, 314, 0, 0, 0, 0, 127, 128, 129, - 0, 1893, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 316, 317, 318, 319, 320, - 1207, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 162, 163, 164, 165, 0, 0, 0, 0, 170, + 472, 473, 474, 475, 0, 0, 499, 0, 476, 0, + 0, 0, 0, 0, 0, 0, 0, 915, 1330, 0, + 1332, 0, 1334, 0, 1336, 0, 0, 0, 77, 78, + 79, 0, 0, 0, 0, 0, 7, 8, 0, 0, + 0, 0, 0, 937, 0, 0, 1355, 739, 24, 25, + 740, 27, 28, 741, 30, 742, 32, 33, 0, 0, + 0, 0, 35, 957, 36, 0, 0, 0, 0, 41, + 42, 43, 44, 0, 46, 47, 48, 0, 0, 1389, + 51, 0, 0, 0, 0, 0, 0, 0, 1394, 1395, + 0, 1396, 1397, 0, 1398, 1399, 1400, 0, 0, 1127, + 0, 0, 1405, 0, 0, 0, 0, 0, 739, 24, + 25, 740, 27, 28, 741, 30, 742, 32, 33, 77, + 78, 79, 0, 35, 0, 36, 0, 0, 0, 1427, + 41, 42, 43, 44, 1432, 46, 47, 48, 0, 7, + 8, 51, 0, 1021, 0, 0, 0, 1027, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 0, 0, 0, 0, 476, 0, 1065, 0, + 0, 0, 1069, 0, 0, 0, 1474, 0, 0, 0, + 77, 78, 79, 0, 0, 0, 0, 1483, 1484, 0, + 1150, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1493, 1495, 0, 0, 0, 0, 0, 0, + 0, 739, 24, 25, 740, 27, 28, 741, 30, 742, + 32, 33, 0, 0, 0, 0, 35, 0, 36, 0, + 0, 1105, 0, 41, 42, 43, 44, 1123, 46, 47, + 48, 0, 0, 0, 51, 0, 0, 0, 0, 0, + 0, 1205, 1540, 1541, 1542, 0, 0, 0, 0, 0, + 0, 7, 8, 1553, 0, 1555, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1560, 0, 0, 0, + 0, 0, 0, 77, 78, 79, 0, 0, 499, 1175, + 0, 1176, 0, 1575, 1178, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1190, 0, 1191, + 0, 1192, 0, 1193, 0, 0, 0, 0, 1196, 1592, + 1593, 1594, 0, 1199, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 739, 24, 25, 740, 27, 28, 741, + 30, 742, 32, 33, 0, 0, 0, 0, 35, 0, + 36, 1614, 0, 0, 1211, 41, 42, 43, 44, 0, + 46, 47, 48, 1217, 0, 0, 51, 1221, 0, 0, + 0, 1226, 0, 0, 0, 1626, 0, 0, 0, 624, + 0, 0, 0, 0, 0, 0, 1240, 0, 0, 1639, + 0, 0, 0, 0, 1645, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 77, 78, 79, 0, 1653, + 1654, 0, 0, 0, 1243, 0, 1659, 1660, 0, 0, + 0, 1662, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1669, 0, 0, 0, 0, 0, 1273, 1274, + 1275, 1276, 499, 499, 1681, 0, 1682, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1699, 0, + 0, 0, 7, 8, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1344, 0, 499, 0, + 0, 1717, 0, 0, 0, 0, 0, 0, 1720, 1721, + 1722, 1723, 1724, 1725, 1726, 0, 0, 0, 1321, 0, + 1304, 1305, 0, 1307, 1734, 1310, 1311, 0, 0, 1314, + 1315, 1316, 1317, 0, 0, 0, 0, 0, 1322, 0, + 0, 0, 0, 0, 1754, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 739, 24, 25, 740, 27, 28, + 741, 30, 742, 32, 33, 0, 0, 1769, 1770, 35, + 0, 36, 0, 0, 0, 1776, 41, 42, 43, 44, + 0, 46, 47, 48, 0, 0, 0, 51, 0, 7, + 8, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 625, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 1797, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 624, 77, 78, 79, 0, + 0, 1811, 0, 0, 0, 0, 0, 1408, 1409, 1410, + 619, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1422, 0, 1829, 0, 1830, 0, 0, + 499, 739, 24, 25, 740, 27, 28, 741, 30, 742, + 32, 33, 0, 0, 0, 0, 35, 1844, 36, 0, + 0, 0, 0, 41, 42, 43, 44, 0, 46, 47, + 48, 0, 0, 0, 51, 1850, 0, 1955, 0, 0, + 1854, 0, 0, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 1486, + 499, 476, 0, 0, 0, 0, 0, 1881, 1728, 1884, + 1729, 1887, 0, 77, 78, 79, 0, 0, 0, 0, + 499, 933, 0, 1507, 0, 0, 0, 0, 0, 1513, + 1903, 1904, 1905, 1906, 1907, 1908, 0, 1520, 0, 0, + 1523, 1524, 0, 0, 0, 1527, 1528, 1045, 1529, 0, + 1530, 0, 1531, 0, 1532, 1533, 1534, 0, 1922, 1923, + 0, 0, 0, 1925, 0, 0, 0, 0, 0, 0, + 0, 1195, 0, 1554, 0, 1931, 0, 0, 0, 0, + 1573, 0, 0, 0, 2043, 0, 1942, 0, 1564, 0, + 0, 0, 0, 0, 0, 0, 1572, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 785, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1973, 0, 0, 0, 0, 0, 1645, 0, + 0, 0, 0, 0, 0, 0, 0, 1984, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 175, 176, 177, 0, 0, 0, 0, 0, 178, 0, - 0, 0, 321, 0, 0, 322, 0, 0, 323, 0, - 324, 1817, 1818, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 325, - 0, 0, 474, 0, 0, 0, 52, 53, 54, 55, - 56, 1225, 0, 58, 59, 60, 61, 62, 0, 0, - 65, 0, 0, 68, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 2006, 2007, 2008, - 2009, 2011, 1344, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 181, 0, 0, 0, - 185, 0, 0, 0, 186, 187, 188, 189, 190, 0, - 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 559, 1709, 0, 0, - 0, 195, 0, 0, 0, 0, 561, 0, 0, 0, - 0, 199, 0, 277, 619, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 124, 314, 0, - 0, 0, 0, 127, 128, 129, 0, 2077, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 316, 317, 318, 319, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 162, 163, 164, - 165, 0, 0, 0, 0, 170, 0, 0, 0, 0, - 0, 7, 8, 0, 0, 0, 175, 176, 177, 0, - 0, 0, 0, 0, 178, 0, 0, 0, 321, 0, - 0, 322, 0, 0, 323, 0, 324, 0, 0, 0, - 0, 0, 0, 0, 0, 1249, 1250, 0, 0, 0, - 0, 1254, 1255, 0, 0, 325, 0, 0, 0, 0, - 0, 0, 52, 53, 54, 55, 56, 0, 0, 58, - 59, 60, 61, 62, 0, 0, 65, 0, 0, 68, - 0, 0, 0, 736, 24, 25, 737, 27, 28, 738, - 30, 739, 32, 33, 0, 0, 0, 34, 0, 35, - 0, 0, 0, 0, 40, 41, 42, 43, 0, 45, - 46, 47, 0, 0, 0, 50, 0, 0, 0, 0, - 0, 0, 181, 0, 0, 0, 185, 0, 0, 0, - 186, 187, 188, 189, 190, 0, 0, 0, 99, 0, + 0, 1995, 0, 0, 1999, 0, 0, 2003, 0, 0, + 0, 2006, 0, 0, 0, 0, 499, 499, 499, 499, + 499, 2016, 2017, 2018, 2019, 2020, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2026, 0, 0, 2028, 0, + 0, 0, 0, 0, 0, 1413, 0, 0, 1637, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 193, 496, 76, 77, 78, 195, 0, 0, - 0, 0, 327, 0, 2101, 0, 0, 199, 0, 0, - 619, 124, 314, 126, 0, 0, 0, 127, 128, 129, - 0, 0, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 316, 317, 318, 319, 320, - 0, 0, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 0, 0, 0, 171, 172, 173, 0, 0, 174, 0, - 175, 176, 177, 0, 0, 1420, 1421, 0, 178, 179, - 1425, 1426, 321, 0, 0, 322, 0, 0, 323, 0, - 324, 0, 0, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 325, - 0, 0, 474, 0, 0, 0, 52, 53, 54, 55, - 56, 1680, 0, 58, 59, 60, 61, 62, 0, 0, - 65, 0, 0, 68, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 1699, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 181, 182, 183, 184, - 185, 0, 0, 0, 186, 187, 188, 189, 190, 191, - 0, 192, 99, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 193, 326, 0, 0, - 0, 195, 0, 0, 0, 0, 327, 0, 124, 314, - 126, 199, 0, 328, 127, 128, 129, 0, 0, 130, + 0, 1649, 0, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 1679, 1680, 0, 0, 2064, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 499, 476, 2083, 2084, + 2085, 2086, 2087, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 1486, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 925, 0, 0, 0, 0, + 0, 0, 2115, 2116, 0, 0, 0, 0, 1727, 0, + 0, 0, 0, 2124, 2125, 2126, 2127, 0, 1739, 0, + 0, 0, 227, 228, 0, 0, 0, 0, 1746, 0, + 0, 0, 0, 1751, 0, 0, 0, 0, 964, 965, + 966, 967, 968, 969, 970, 971, 972, 973, 974, 0, + 976, 977, 978, 979, 980, 981, 982, 0, 0, 1771, + 986, 988, 989, 0, 0, 0, 993, 994, 0, 996, + 0, 0, 0, 0, 1001, 1002, 1003, 0, 1005, 0, + 0, 0, 1486, 0, 0, 1013, 1015, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 1038, 0, 476, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1808, 0, + 0, 0, 0, 0, 378, 0, 0, 0, 0, 0, + 0, 0, 1831, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 0, 0, + 0, 420, 421, 422, 423, 0, 425, 426, 427, 428, + 429, 430, 0, 0, 432, 0, 0, 0, 0, 0, + 433, 434, 0, 0, 0, 0, 439, 440, 0, 1486, + 0, 0, 1877, 0, 0, 0, 1859, 1860, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1486, 0, 0, + 0, 0, 1897, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1893, 0, 0, 125, + 126, 127, 0, 0, 0, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 316, 317, 318, 319, 320, 0, 0, 153, + 151, 152, 153, 0, 0, 0, 1183, 0, 0, 0, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 0, 0, 0, - 171, 172, 173, 0, 0, 174, 0, 175, 176, 177, - 0, 0, 0, 0, 0, 178, 179, 0, 0, 321, - 0, 0, 322, 0, 0, 323, 0, 324, 0, 0, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 325, 0, 0, 474, - 0, 0, 0, 52, 53, 54, 55, 56, 1777, 0, - 58, 59, 60, 61, 62, 0, 0, 65, 0, 0, - 68, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 0, 0, 0, 0, 0, 0, 0, 1778, 0, + 164, 165, 166, 167, 168, 169, 170, 171, 0, 1935, + 0, 172, 173, 174, 0, 0, 175, 0, 176, 177, + 178, 0, 0, 0, 0, 0, 179, 180, 1952, 0, + 0, 0, 0, 0, 0, 0, 0, 598, 0, 0, + 601, 602, 603, 604, 0, 0, 356, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 181, 182, 183, 184, 185, 0, 0, - 0, 186, 187, 188, 189, 190, 191, 0, 192, 99, + 629, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2010, 2011, + 2012, 2013, 2015, 0, 0, 0, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 0, 0, 0, 0, 167, + 168, 169, 170, 0, 0, 0, 0, 172, 173, 174, + 0, 0, 175, 0, 0, 0, 0, 1486, 181, 0, + 0, 0, 0, 180, 0, 182, 183, 184, 185, 186, + 1277, 0, 0, 187, 188, 189, 190, 191, 192, 0, + 193, 100, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 194, 195, 0, 0, 0, + 196, 0, 0, 1299, 1300, 197, 0, 198, 2081, 199, + 200, 0, 201, 0, 202, 737, 0, 0, 0, 0, + 125, 316, 0, 0, 0, 0, 128, 129, 130, 0, + 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 318, 319, 320, 321, 322, 0, + 0, 0, 183, 184, 185, 0, 0, 0, 0, 1486, + 163, 164, 165, 166, 192, 0, 193, 100, 171, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 176, + 177, 178, 0, 0, 0, 0, 0, 179, 0, 0, + 0, 323, 0, 0, 324, 0, 0, 325, 0, 326, + 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 327, + 0, 0, 0, 0, 0, 0, 53, 54, 55, 56, + 57, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 66, 0, 0, 69, 0, 0, 1434, 0, 0, 0, + 0, 0, 1438, 1439, 1440, 1441, 1442, 0, 1445, 0, + 1447, 1448, 0, 1451, 1454, 0, 0, 1458, 1459, 1460, + 0, 0, 0, 0, 1464, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 182, 0, 0, 0, + 186, 0, 0, 0, 187, 188, 189, 190, 191, 0, + 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 562, 1713, 0, 0, + 0, 196, 0, 0, 0, 0, 564, 0, 0, 0, + 0, 200, 0, 279, 622, 125, 316, 0, 0, 0, + 0, 128, 129, 130, 0, 0, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 318, + 319, 320, 321, 322, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 163, 164, 165, 166, 0, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 176, 177, 178, 1578, 0, 0, + 0, 0, 179, 0, 0, 0, 323, 0, 0, 324, + 0, 0, 325, 1588, 326, 0, 0, 0, 0, 0, + 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1603, 0, 0, 0, 327, 1607, 0, 0, 0, 0, + 0, 53, 54, 55, 56, 57, 0, 0, 59, 60, + 61, 62, 63, 0, 0, 66, 0, 0, 69, 0, + 0, 0, 0, 0, 0, 0, 0, 1620, 1621, 0, + 0, 1623, 1624, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1879, 0, + 1880, 182, 0, 0, 0, 186, 0, 0, 0, 187, + 188, 189, 190, 191, 484, 127, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 193, 326, 0, 0, 0, 195, 0, - 0, 0, 0, 327, 0, 124, 364, 126, 199, 0, - 1746, 127, 128, 129, 0, 0, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 0, - 0, 0, 0, 0, 0, 0, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 0, 0, 0, 171, 172, 173, - 0, 0, 174, 0, 175, 176, 177, 0, 124, 364, - 126, 0, 178, 179, 127, 128, 129, 0, 0, 130, + 0, 194, 498, 0, 0, 0, 196, 0, 0, 0, + 0, 329, 0, 0, 0, 0, 200, 0, 0, 622, + 0, 0, 0, 0, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 0, 0, 0, 0, 167, 168, 169, + 170, 0, 0, 0, 0, 172, 173, 174, 0, 0, + 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 180, 0, 0, 0, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 1741, 1742, 0, 476, 1744, 1745, 0, 0, 0, 0, + 1748, 1749, 1043, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 360, 127, 0, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1253, 1254, 1098, 0, 0, 0, 1258, 1259, 0, 0, + 0, 0, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 0, 0, 0, 0, 167, 168, 169, 170, 0, + 183, 184, 185, 172, 173, 174, 0, 0, 175, 0, + 0, 0, 192, 0, 193, 100, 0, 0, 0, 180, + 0, 0, 0, 0, 0, 0, 0, 125, 316, 127, + 0, 0, 0, 128, 129, 130, 1821, 1822, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 318, 319, 320, 321, 322, 0, 0, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 0, 0, 0, 172, + 173, 174, 0, 0, 175, 0, 176, 177, 178, 0, + 0, 0, 0, 0, 179, 180, 0, 0, 323, 0, + 0, 324, 0, 0, 325, 0, 326, 0, 183, 184, + 185, 0, 34, 0, 0, 0, 0, 0, 0, 0, + 192, 0, 193, 0, 0, 0, 327, 0, 0, 0, + 0, 0, 0, 53, 54, 55, 56, 57, 0, 0, + 59, 60, 61, 62, 63, 0, 0, 66, 0, 0, + 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1424, 1425, 0, 0, 0, 1429, 1430, 0, 0, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 182, 183, 184, 185, 186, 1153, 0, + 0, 187, 188, 189, 190, 191, 192, 0, 193, 100, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 194, 328, 0, 0, 0, 196, 0, + 0, 0, 0, 329, 0, 125, 316, 127, 200, 0, + 330, 128, 129, 130, 0, 0, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 318, + 319, 320, 321, 322, 0, 0, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, 169, 170, 171, 0, 0, 0, 172, 173, 174, + 0, 0, 175, 0, 176, 177, 178, 0, 0, 0, + 0, 0, 179, 180, 0, 0, 323, 0, 0, 324, + 0, 0, 325, 0, 326, 0, 0, 0, 0, 0, + 34, 0, 127, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 327, 0, 0, 0, 0, 0, + 0, 53, 54, 55, 56, 57, 0, 0, 59, 60, + 61, 62, 63, 0, 0, 66, 0, 0, 69, 0, + 0, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 0, 0, 0, 0, 167, 168, 169, 170, 0, 2105, + 0, 0, 172, 173, 174, 0, 0, 175, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 180, 0, + 0, 182, 183, 184, 185, 186, 0, 0, 0, 187, + 188, 189, 190, 191, 192, 0, 193, 100, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 194, 328, 0, 0, 0, 196, 0, 0, 0, + 0, 329, 0, 125, 316, 317, 200, 0, 1750, 128, + 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 318, 319, 320, + 321, 322, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 163, 164, 165, 166, 183, 184, 185, + 0, 171, 0, 0, 0, 0, 0, 7, 8, 192, + 0, 193, 176, 177, 178, 0, 0, 0, 0, 0, + 179, 0, 0, 0, 323, 0, 0, 324, 0, 0, + 325, 0, 326, 0, 0, 0, 0, 0, 34, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 327, 0, 0, 0, 0, 0, 0, 53, + 54, 55, 56, 57, 0, 0, 59, 60, 61, 62, + 63, 0, 0, 66, 0, 0, 69, 0, 0, 739, + 24, 25, 740, 27, 28, 741, 30, 742, 32, 33, + 0, 0, 0, 0, 35, 0, 36, 0, 0, 0, + 0, 41, 42, 43, 44, 0, 46, 47, 48, 0, + 0, 0, 51, 0, 0, 0, 0, 0, 0, 182, + 0, 0, 0, 186, 0, 0, 0, 187, 188, 189, + 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 194, + 328, 77, 78, 79, 196, 0, 0, 0, 0, 329, + 0, 125, 366, 127, 200, 0, 330, 128, 129, 130, + 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 0, 0, 0, 7, 8, + 0, 0, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 0, 0, 0, 172, 173, 174, 0, 0, 175, 0, + 176, 177, 178, 0, 0, 0, 0, 0, 179, 180, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 0, 0, 0, 0, 0, 1186, 0, 0, + 739, 24, 25, 740, 27, 28, 741, 30, 742, 32, + 33, 0, 0, 0, 0, 35, 0, 36, 0, 0, + 0, 0, 41, 42, 43, 44, 0, 46, 47, 48, + 0, 0, 0, 51, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 943, 0, 476, 0, 0, 0, 0, 0, 0, 0, + 0, 1229, 0, 0, 0, 0, 0, 182, 183, 184, + 185, 186, 77, 78, 79, 187, 188, 189, 190, 191, + 192, 0, 193, 100, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 194, 195, 0, + 0, 0, 196, 0, 0, 0, 0, 329, 0, 125, + 316, 1563, 200, 0, 1494, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 0, 0, 0, 0, 0, 0, 0, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 0, 0, 0, - 171, 172, 173, 0, 0, 174, 0, 175, 176, 177, - 0, 0, 0, 0, 0, 178, 179, 0, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 181, 182, 183, 184, 185, 1779, 0, 0, 186, 187, - 188, 189, 190, 191, 0, 192, 99, 0, 0, 0, + 151, 152, 153, 318, 319, 320, 321, 322, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, + 164, 165, 166, 0, 0, 0, 0, 171, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 176, 177, + 178, 0, 0, 0, 0, 0, 179, 0, 0, 0, + 323, 0, 0, 324, 0, 0, 325, 0, 326, 0, + 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 327, 0, + 0, 0, 0, 0, 0, 53, 54, 55, 56, 57, + 0, 0, 59, 60, 61, 62, 63, 0, 0, 66, + 0, 0, 69, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 0, 0, + 1348, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 182, 0, 0, 0, 186, + 0, 0, 0, 187, 188, 189, 190, 191, 0, 0, + 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 194, 328, 0, 0, 0, + 196, 0, 0, 0, 0, 329, 0, 125, 366, 127, + 200, 0, 330, 128, 129, 130, 0, 0, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 0, 0, 0, 0, 0, 0, 0, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 0, 0, 0, 172, + 173, 174, 0, 0, 175, 0, 176, 177, 178, 0, + 125, 366, 127, 0, 179, 180, 128, 129, 130, 0, + 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 0, 0, 0, 0, 0, 0, + 0, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 169, 170, 171, 0, + 0, 0, 172, 173, 174, 0, 0, 175, 0, 176, + 177, 178, 0, 0, 0, 0, 0, 179, 180, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 182, 183, 184, 185, 186, 1684, 0, + 0, 187, 188, 189, 190, 191, 192, 0, 193, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 193, 194, 0, 0, 0, 195, 0, 0, 0, 0, - 327, 0, 0, 0, 0, 199, 0, 1490, 0, 0, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 0, 0, 181, 182, 183, 184, 185, 1780, 0, - 0, 186, 187, 188, 189, 190, 191, 0, 192, 99, + 0, 0, 0, 194, 195, 0, 0, 0, 196, 0, + 0, 0, 0, 329, 0, 0, 0, 0, 200, 0, + 1733, 0, 0, 0, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 0, 0, 182, 183, 184, 185, + 186, 1703, 0, 0, 187, 188, 189, 190, 191, 192, + 0, 193, 100, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 194, 195, 0, 0, + 0, 196, 0, 0, 0, 0, 329, 0, 125, 316, + 0, 200, 0, 1753, 128, 129, 130, 0, 0, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 318, 319, 320, 321, 322, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 163, 164, + 165, 166, 0, 0, 0, 0, 171, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 176, 177, 178, + 0, 0, 0, 0, 0, 179, 0, 0, 0, 323, + 0, 0, 324, 0, 0, 325, 0, 326, 0, 0, + 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 327, 0, 0, + 0, 0, 0, 0, 53, 54, 55, 56, 57, 0, + 0, 59, 60, 61, 62, 63, 0, 0, 66, 0, + 0, 69, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 0, 0, 0, 0, 0, 1781, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 193, 194, 0, 0, 0, 195, 0, - 0, 0, 0, 327, 0, 124, 364, 126, 199, 0, - 1729, 127, 128, 129, 0, 0, 130, 131, 132, 133, + 0, 0, 0, 0, 182, 0, 0, 0, 186, 0, + 0, 0, 187, 188, 189, 190, 191, 0, 0, 0, + 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 194, 328, 0, 0, 0, 196, + 0, 0, 0, 0, 329, 0, 125, 316, 0, 200, + 0, 330, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 0, - 0, 0, 0, 0, 0, 0, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 7, 8, 0, 171, 172, 173, - 0, 0, 174, 0, 175, 176, 177, 0, 0, 0, - 0, 0, 178, 179, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 1781, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 728, 0, 736, 24, 25, 737, - 27, 28, 738, 30, 739, 32, 33, 0, 0, 0, - 34, 0, 35, 0, 0, 0, 0, 40, 41, 42, - 43, 0, 45, 46, 47, 0, 0, 0, 50, 0, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 318, 319, 320, 321, 322, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 163, 164, 165, 166, + 0, 0, 0, 0, 171, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 176, 177, 178, 0, 0, + 0, 0, 0, 179, 0, 0, 0, 323, 0, 0, + 324, 0, 0, 325, 0, 326, 0, 0, 0, 0, + 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 327, 0, 0, 0, 0, + 0, 0, 53, 54, 55, 56, 57, 0, 0, 59, + 60, 61, 62, 63, 0, 0, 66, 0, 0, 69, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 0, 0, 0, 0, 0, 1782, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 181, 182, 183, 184, 185, 0, 0, 0, 186, 187, - 188, 189, 190, 191, 0, 192, 99, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 76, 77, 78, - 193, 194, 0, 0, 0, 195, 0, 0, 0, 0, - 327, 0, 124, 314, 315, 199, 0, 1749, 127, 128, - 129, 0, 0, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 316, 317, 318, 319, - 320, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 162, 163, 164, 165, 0, 0, 1340, 0, - 170, 0, 0, 0, 0, 0, 7, 8, 0, 0, - 0, 175, 176, 177, 0, 0, 0, 0, 0, 178, - 0, 0, 0, 321, 0, 0, 322, 0, 0, 323, - 0, 324, 0, 0, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 325, 0, 0, 474, 0, 0, 0, 52, 53, 54, - 55, 56, 1816, 0, 58, 59, 60, 61, 62, 0, - 0, 65, 0, 0, 68, 0, 0, 0, 736, 24, - 25, 737, 27, 28, 738, 30, 739, 32, 33, 0, - 0, 0, 34, 0, 35, 0, 0, 0, 0, 40, - 41, 42, 43, 0, 45, 46, 47, 0, 0, 0, - 50, 0, 0, 0, 0, 0, 0, 181, 0, 0, - 0, 185, 0, 0, 0, 186, 187, 188, 189, 190, - 0, 0, 0, 99, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 193, 326, 76, - 77, 78, 195, 0, 0, 0, 0, 327, 0, 124, - 314, 1559, 199, 0, 328, 127, 128, 129, 0, 0, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 316, 317, 318, 319, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, - 163, 164, 165, 0, 0, 0, 0, 170, 0, 0, - 1951, 0, 0, 7, 8, 0, 0, 0, 175, 176, - 177, 0, 0, 0, 0, 0, 178, 0, 0, 0, - 321, 0, 0, 322, 0, 0, 323, 0, 324, 0, - 0, 0, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 325, 0, 0, - 474, 0, 0, 0, 52, 53, 54, 55, 56, 1891, - 0, 58, 59, 60, 61, 62, 0, 0, 65, 0, - 0, 68, 0, 0, 0, 736, 24, 25, 737, 27, - 28, 738, 30, 739, 32, 33, 0, 0, 0, 34, - 0, 35, 0, 0, 0, 0, 40, 41, 42, 43, - 0, 45, 46, 47, 0, 0, 0, 50, 0, 0, - 0, 0, 0, 0, 181, 0, 0, 0, 185, 0, - 0, 0, 186, 187, 188, 189, 190, 0, 0, 0, - 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 193, 326, 76, 77, 78, 195, - 0, 0, 0, 0, 327, 0, 124, 314, 0, 199, - 0, 328, 127, 128, 129, 0, 0, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 316, 317, 318, 319, 320, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 162, 163, 164, 165, - 0, 0, 0, 0, 170, 0, 0, 2039, 0, 0, - 0, 0, 0, 0, 0, 175, 176, 177, 0, 0, - 0, 0, 0, 178, 0, 0, 0, 321, 0, 0, - 322, 0, 0, 323, 0, 324, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 482, - 126, 0, 0, 0, 325, 0, 0, 0, 0, 0, - 0, 52, 53, 54, 55, 56, 0, 0, 58, 59, - 60, 61, 62, 0, 0, 65, 0, 0, 68, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 0, 0, - 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, - 171, 172, 173, 0, 0, 174, 0, 0, 0, 0, - 0, 181, 0, 0, 0, 185, 179, 0, 0, 186, - 187, 188, 189, 190, 0, 0, 0, 99, 0, 0, + 0, 0, 182, 0, 0, 0, 186, 0, 0, 0, + 187, 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 193, 326, 0, 0, 0, 195, 0, 0, 0, - 0, 327, 0, 124, 314, 0, 199, 0, 328, 127, - 128, 129, 0, 0, 130, 131, 132, 133, 134, 135, + 0, 0, 194, 328, 0, 0, 0, 196, 0, 0, + 0, 0, 535, 0, 125, 316, 0, 200, 0, 330, + 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 316, 317, 318, - 319, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 162, 163, 164, 165, 0, 0, 0, - 0, 170, 0, 0, 182, 183, 184, 0, 0, 0, - 0, 0, 175, 176, 177, 0, 191, 0, 192, 99, - 178, 0, 0, 0, 321, 0, 0, 322, 0, 0, - 323, 0, 324, 0, 0, 0, 0, 0, 0, 0, - 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 325, 0, 0, 0, 0, 0, 0, 52, 53, - 54, 55, 56, 0, 0, 58, 59, 60, 61, 62, - 0, 0, 65, 0, 0, 68, 0, 0, 0, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 0, 0, - 0, 0, 166, 167, 168, 169, 0, 0, 0, 0, - 171, 172, 173, 0, 0, 174, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 179, 0, 181, 0, - 0, 0, 185, 0, 0, 0, 186, 187, 188, 189, - 190, 0, 0, 0, 99, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 193, 326, - 0, 0, 0, 195, 0, 0, 0, 0, 532, 0, - 124, 314, 0, 199, 0, 328, 127, 128, 129, 0, - 0, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 316, 317, 318, 319, 320, 0, + 146, 147, 148, 149, 150, 151, 152, 153, 318, 319, + 320, 321, 322, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, + 0, 0, 171, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 176, 177, 178, 0, 0, 0, 0, + 0, 179, 0, 0, 0, 323, 0, 0, 324, 0, + 0, 325, 0, 326, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 162, 163, 164, 165, 182, 183, 184, 0, 170, 0, - 0, 0, 0, 0, 0, 0, 191, 0, 192, 175, - 176, 177, 0, 0, 0, 0, 0, 178, 0, 0, - 0, 321, 0, 0, 322, 0, 0, 323, 0, 324, - 0, 0, 0, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 325, 0, - 0, 474, 0, 0, 0, 52, 53, 54, 55, 56, - 1905, 0, 58, 59, 60, 61, 62, 0, 0, 65, - 0, 0, 68, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, - 1906, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 181, 0, 0, 0, 185, - 0, 0, 0, 186, 187, 188, 189, 190, 0, 0, - 0, 99, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 193, 326, 0, 0, 0, - 195, 0, 0, 0, 0, 534, 0, 124, 314, 0, - 199, 0, 328, 127, 128, 129, 0, 0, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 316, 317, 318, 319, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 162, 163, 164, - 165, 0, 0, 0, 0, 170, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 175, 176, 177, 0, - 0, 0, 0, 0, 178, 0, 0, 0, 321, 0, - 0, 322, 0, 0, 323, 0, 324, 0, 0, 0, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 325, 0, 0, 474, 0, - 0, 0, 52, 53, 54, 55, 56, 1939, 0, 58, - 59, 60, 61, 62, 0, 0, 65, 0, 0, 68, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 0, 0, 1942, 0, 0, + 0, 0, 0, 327, 0, 0, 0, 0, 0, 0, + 53, 54, 55, 56, 57, 0, 0, 59, 60, 61, + 62, 63, 0, 0, 66, 0, 0, 69, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 0, 0, 0, 0, 476, 0, 0, 0, + 0, 0, 0, 0, 0, 1783, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 181, 0, 0, 0, 185, 0, 0, 0, - 186, 187, 188, 189, 190, 0, 0, 0, 99, 0, + 182, 0, 0, 0, 186, 0, 0, 0, 187, 188, + 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 193, 326, 0, 0, 0, 195, 0, 0, - 0, 0, 536, 0, 124, 314, 0, 199, 0, 328, - 127, 128, 129, 0, 0, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 316, 317, - 318, 319, 320, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 162, 163, 164, 165, 0, 0, - 0, 0, 170, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 175, 176, 177, 0, 0, 0, 0, - 0, 178, 0, 0, 0, 321, 0, 0, 322, 0, - 0, 323, 0, 324, 0, 0, 0, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 325, 0, 0, 474, 0, 0, 0, 52, - 53, 54, 55, 56, 1945, 0, 58, 59, 60, 61, - 62, 0, 0, 65, 0, 0, 68, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 0, 0, 0, - 0, 0, 0, 0, 1981, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, - 0, 0, 0, 185, 0, 0, 0, 186, 187, 188, - 189, 190, 0, 0, 0, 99, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 193, - 496, 0, 0, 0, 195, 0, 0, 0, 0, 327, - 0, 124, 314, 0, 199, 0, 615, 127, 128, 129, - 0, 0, 130, 131, 132, 133, 134, 135, 136, 137, + 194, 328, 0, 0, 0, 196, 0, 0, 0, 0, + 537, 0, 125, 316, 0, 200, 0, 330, 128, 129, + 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 316, 317, 318, 319, 320, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 162, 163, 164, 165, 0, 0, 0, 0, 170, + 148, 149, 150, 151, 152, 153, 318, 319, 320, 321, + 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, + 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 176, 177, 178, 0, 0, 0, 0, 0, 179, + 0, 0, 0, 323, 0, 0, 324, 0, 0, 325, + 0, 326, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 175, 176, 177, 0, 0, 0, 0, 0, 178, 0, - 0, 0, 321, 0, 0, 322, 0, 0, 323, 0, - 324, 0, 0, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 325, - 0, 0, 474, 0, 0, 0, 52, 53, 54, 55, - 56, 1988, 0, 58, 59, 60, 61, 62, 0, 0, - 65, 0, 0, 68, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 2031, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 181, 0, 0, 0, - 185, 0, 0, 0, 186, 187, 188, 189, 190, 0, - 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 193, 496, 0, 0, - 0, 195, 0, 0, 0, 0, 327, 0, 124, 314, - 0, 199, 0, 888, 127, 128, 129, 0, 0, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 316, 317, 318, 319, 320, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, - 164, 165, 0, 0, 0, 0, 170, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 175, 176, 177, - 0, 0, 0, 0, 0, 178, 0, 0, 0, 321, - 0, 0, 322, 0, 0, 323, 0, 324, 0, 0, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 325, 0, 0, 474, - 0, 0, 0, 52, 53, 54, 55, 56, 2033, 0, - 58, 59, 60, 61, 62, 0, 0, 65, 0, 0, - 68, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 0, 0, 0, 0, 0, 0, 0, 2035, 0, + 0, 327, 0, 0, 0, 0, 0, 0, 53, 54, + 55, 56, 57, 0, 0, 59, 60, 61, 62, 63, + 0, 0, 66, 0, 0, 69, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 0, 0, 0, 0, + 0, 0, 0, 1784, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 182, 0, + 0, 0, 186, 0, 0, 0, 187, 188, 189, 190, + 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 194, 328, + 0, 0, 0, 196, 0, 0, 0, 0, 539, 0, + 125, 316, 0, 200, 0, 330, 128, 129, 130, 0, + 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 318, 319, 320, 321, 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 181, 0, 0, 0, 185, 0, 0, - 0, 186, 187, 188, 189, 190, 0, 0, 0, 99, + 163, 164, 165, 166, 0, 0, 0, 0, 171, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 176, + 177, 178, 0, 0, 0, 0, 0, 179, 0, 0, + 0, 323, 0, 0, 324, 0, 0, 325, 0, 326, + 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 327, + 0, 0, 0, 0, 0, 0, 53, 54, 55, 56, + 57, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 66, 0, 0, 69, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 0, 0, 0, 0, 0, 0, + 0, 1785, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 182, 0, 0, 0, + 186, 0, 0, 0, 187, 188, 189, 190, 191, 0, + 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 194, 498, 0, 0, + 0, 196, 0, 0, 0, 0, 329, 0, 125, 316, + 0, 200, 0, 618, 128, 129, 130, 0, 0, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 318, 319, 320, 321, 322, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 163, 164, + 165, 166, 0, 0, 0, 0, 171, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 176, 177, 178, + 0, 0, 0, 0, 0, 179, 0, 0, 0, 323, + 0, 0, 324, 0, 0, 325, 0, 326, 0, 0, + 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 327, 0, 0, + 0, 0, 0, 0, 53, 54, 55, 56, 57, 0, + 0, 59, 60, 61, 62, 63, 0, 0, 66, 0, + 0, 69, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 0, 0, 0, 0, 0, 1820, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 193, 496, 0, 0, 0, 195, 0, - 0, 0, 0, 327, 0, 124, 314, 0, 199, 0, - 891, 127, 128, 129, 0, 0, 130, 131, 132, 133, + 0, 0, 0, 0, 182, 0, 0, 0, 186, 0, + 0, 0, 187, 188, 189, 190, 191, 0, 0, 0, + 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 194, 498, 0, 0, 0, 196, + 0, 0, 0, 0, 329, 0, 125, 316, 0, 200, + 0, 892, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 316, - 317, 318, 319, 320, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 162, 163, 164, 165, 0, - 0, 0, 0, 170, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 175, 176, 177, 0, 0, 0, - 0, 0, 178, 0, 0, 0, 321, 0, 0, 322, - 0, 0, 323, 0, 324, 0, 0, 0, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 325, 0, 0, 474, 0, 0, 0, - 52, 53, 54, 55, 56, 2059, 0, 58, 59, 60, - 61, 62, 0, 0, 65, 0, 0, 68, 460, 461, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 318, 319, 320, 321, 322, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 163, 164, 165, 166, + 0, 0, 0, 0, 171, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 176, 177, 178, 0, 0, + 0, 0, 0, 179, 0, 0, 0, 323, 0, 0, + 324, 0, 0, 325, 0, 326, 0, 0, 0, 0, + 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 327, 0, 0, 0, 0, + 0, 0, 53, 54, 55, 56, 57, 0, 0, 59, + 60, 61, 62, 63, 0, 0, 66, 0, 0, 69, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 0, 0, 2090, 0, 0, 0, 0, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 0, 0, 0, 0, 0, 1895, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 181, 0, 0, 0, 185, 0, 0, 0, 186, 187, - 188, 189, 190, 0, 0, 0, 99, 0, 0, 0, + 0, 0, 182, 0, 0, 0, 186, 0, 0, 0, + 187, 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 193, 496, 0, 0, 0, 195, 0, 0, 0, 0, - 327, 0, 124, 314, 0, 199, 0, 915, 127, 128, - 129, 0, 0, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 316, 317, 318, 319, - 320, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 162, 163, 164, 165, 0, 0, 0, 0, - 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 175, 176, 177, 0, 0, 0, 0, 0, 178, - 0, 0, 0, 321, 0, 0, 322, 0, 0, 323, - 0, 324, 0, 0, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 325, 0, 0, 474, 0, 0, 0, 52, 53, 54, - 55, 56, 2129, 0, 58, 59, 60, 61, 62, 0, - 0, 65, 0, 0, 68, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, - 0, 0, 2130, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 181, 0, 0, - 0, 185, 0, 0, 0, 186, 187, 188, 189, 190, - 0, 0, 0, 99, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 193, 326, 0, - 0, 0, 195, 0, 0, 0, 0, 327, 0, 124, - 314, 0, 199, 0, 1567, 127, 128, 129, 0, 0, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 316, 317, 318, 319, 320, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, - 163, 164, 165, 0, 0, 0, 0, 170, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 175, 176, - 177, 0, 0, 0, 0, 0, 178, 0, 0, 0, - 321, 0, 0, 322, 0, 0, 323, 0, 324, 0, - 0, 0, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 325, 0, 0, - 474, 0, 0, 0, 52, 53, 54, 55, 56, 2134, - 0, 58, 59, 60, 61, 62, 0, 0, 65, 0, - 0, 68, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 0, 0, 2135, + 0, 0, 194, 498, 0, 0, 0, 196, 0, 0, + 0, 0, 329, 0, 125, 316, 0, 200, 0, 895, + 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 318, 319, + 320, 321, 322, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, + 0, 0, 171, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 176, 177, 178, 0, 0, 0, 0, + 0, 179, 0, 0, 0, 323, 0, 0, 324, 0, + 0, 325, 0, 326, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 181, 0, 0, 0, 185, 0, - 0, 0, 186, 187, 188, 189, 190, 0, 0, 0, - 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 559, 1709, 0, 0, 0, 195, - 0, 0, 0, 0, 561, 0, 124, 364, 126, 199, - 0, 277, 127, 128, 129, 0, 0, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 0, 0, 0, 7, 8, 0, 0, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 0, 0, 0, 171, 172, - 173, 0, 0, 174, 0, 175, 176, 177, 0, 0, - 0, 0, 0, 178, 179, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, - 0, 0, 2136, 0, 0, 736, 24, 25, 737, 27, - 28, 738, 30, 739, 32, 33, 0, 0, 0, 34, - 0, 35, 0, 0, 0, 0, 40, 41, 42, 43, - 0, 45, 46, 47, 0, 0, 0, 50, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 939, 0, 474, 0, 0, 0, - 0, 0, 0, 0, 0, 2137, 0, 0, 0, 0, - 0, 181, 182, 183, 184, 185, 76, 77, 78, 186, - 187, 188, 189, 190, 191, 0, 192, 99, 0, 0, + 0, 0, 0, 327, 0, 0, 0, 0, 0, 0, + 53, 54, 55, 56, 57, 0, 0, 59, 60, 61, + 62, 63, 0, 0, 66, 0, 0, 69, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 0, 0, 0, 0, 476, 0, 0, 0, + 0, 0, 0, 0, 0, 1909, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 182, 0, 0, 0, 186, 0, 0, 0, 187, 188, + 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 193, 194, 0, 0, 0, 195, 124, 314, 0, - 0, 327, 0, 127, 128, 129, 199, 0, 130, 131, + 194, 498, 0, 0, 0, 196, 0, 0, 0, 0, + 329, 0, 125, 316, 0, 200, 0, 919, 128, 129, + 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 318, 319, 320, 321, + 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, + 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 176, 177, 178, 0, 0, 0, 0, 0, 179, + 0, 0, 0, 323, 0, 0, 324, 0, 0, 325, + 0, 326, 0, 0, 0, 0, 0, 34, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 327, 0, 0, 0, 0, 0, 0, 53, 54, + 55, 56, 57, 0, 0, 59, 60, 61, 62, 63, + 0, 0, 66, 0, 0, 69, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 0, 0, 0, 0, + 0, 0, 0, 1910, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 182, 0, + 0, 0, 186, 0, 0, 0, 187, 188, 189, 190, + 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 194, 328, + 0, 0, 0, 196, 0, 0, 0, 0, 329, 0, + 125, 316, 0, 200, 0, 1571, 128, 129, 130, 0, + 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 318, 319, 320, 321, 322, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 163, 164, 165, 166, 0, 0, 0, 0, 171, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 176, + 177, 178, 0, 0, 0, 0, 0, 179, 0, 0, + 0, 323, 0, 0, 324, 0, 0, 325, 0, 326, + 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 327, + 0, 0, 0, 0, 0, 0, 53, 54, 55, 56, + 57, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 66, 0, 0, 69, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 0, 0, 0, 0, 0, 0, + 0, 1943, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 182, 0, 0, 0, + 186, 0, 0, 0, 187, 188, 189, 190, 191, 0, + 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 562, 1713, 0, 0, + 0, 196, 0, 0, 0, 0, 564, 0, 125, 366, + 0, 200, 0, 279, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 316, 317, 318, 319, 320, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 162, 163, 164, - 165, 0, 0, 0, 0, 170, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 175, 176, 177, 0, - 0, 0, 0, 0, 178, 0, 0, 0, 321, 0, - 0, 322, 0, 0, 323, 0, 324, 0, 0, 0, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 325, 0, 0, 0, 474, - 0, 0, 52, 53, 54, 55, 56, 648, 0, 58, - 59, 60, 61, 62, 0, 0, 65, 0, 0, 68, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 0, 834, 460, 461, 462, + 152, 153, 0, 0, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 163, 164, + 165, 166, 476, 0, 0, 0, 171, 0, 0, 0, + 0, 1946, 0, 0, 0, 125, 366, 176, 177, 178, + 0, 128, 129, 130, 0, 179, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 163, 164, 165, 166, 476, + 0, 0, 0, 171, 0, 0, 0, 0, 1949, 0, + 0, 0, 0, 0, 176, 177, 178, 0, 0, 0, + 0, 0, 179, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 0, 0, + 1985, 0, 0, 0, 182, 0, 0, 0, 186, 0, + 0, 0, 187, 188, 189, 190, 191, 0, 0, 0, + 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 194, 195, 0, 0, 0, 196, + 0, 0, 0, 0, 329, 0, 0, 0, 0, 200, + 0, 542, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 182, 0, 0, 0, 186, 0, 0, 651, 187, + 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 562, 563, 0, 0, 0, 196, 0, 0, 0, + 0, 564, 0, 125, 366, 127, 200, 0, 279, 128, + 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 0, 0, 0, + 0, 0, 0, 0, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, + 170, 171, 0, 0, 0, 172, 173, 174, 0, 0, + 175, 0, 176, 177, 178, 0, 0, 0, 0, 0, + 179, 180, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 0, 0, 0, 0, 0, 1992, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 0, 0, 0, 0, 0, 2035, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 0, 0, 0, 0, 476, 0, 0, 0, + 0, 0, 0, 0, 0, 2037, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, + 183, 184, 185, 186, 0, 0, 0, 187, 188, 189, + 190, 191, 192, 0, 193, 100, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 194, + 195, 0, 0, 0, 196, 125, 316, 0, 0, 329, + 0, 128, 129, 130, 200, 0, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 318, + 319, 320, 321, 322, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 163, 164, 165, 166, 0, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 176, 177, 178, 0, 0, 0, + 0, 0, 179, 0, 0, 0, 323, 0, 0, 324, + 0, 0, 325, 0, 326, 0, 0, 0, 0, 0, + 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 327, 0, 0, 0, 0, 0, + 0, 53, 54, 55, 56, 57, 0, 0, 59, 60, + 61, 62, 63, 0, 0, 66, 0, 0, 69, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 181, 0, 0, 474, 185, 0, 0, 932, - 186, 187, 188, 189, 190, 0, 0, 0, 99, 0, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 0, 0, 2039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 193, 496, 0, 0, 0, 195, 124, 364, - 0, 0, 327, 0, 127, 128, 129, 199, 0, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 0, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 162, 163, - 164, 165, 474, 0, 0, 0, 170, 0, 0, 0, - 1789, 0, 0, 0, 0, 124, 364, 175, 176, 177, - 0, 127, 128, 129, 0, 178, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 0, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 162, 163, 164, 165, 474, - 0, 912, 0, 170, 0, 0, 841, 0, 0, 0, - 0, 0, 0, 0, 175, 176, 177, 0, 0, 0, - 0, 0, 178, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 884, 0, 885, 0, 0, 1440, 0, - 0, 0, 0, 181, 0, 0, 0, 185, 0, 0, - 0, 186, 187, 188, 189, 190, 0, 0, 0, 99, + 0, 182, 0, 0, 0, 186, 0, 0, 0, 187, + 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 193, 194, 0, 0, 0, 195, 0, - 0, 0, 0, 327, 445, 0, 0, 0, 199, 0, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 181, 0, 0, 0, 185, 771, 0, 0, 186, 187, - 188, 189, 190, 0, 0, 0, 99, 0, 0, 0, + 0, 194, 498, 0, 0, 0, 196, 125, 366, 0, + 0, 329, 0, 128, 129, 130, 200, 0, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 0, 0, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 163, 164, 165, + 166, 476, 0, 0, 0, 171, 0, 0, 0, 0, + 2063, 0, 0, 0, 125, 366, 176, 177, 178, 0, + 128, 129, 130, 0, 179, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 0, 0, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 163, 164, 165, 166, 476, 0, + 0, 0, 171, 0, 0, 0, 0, 2094, 0, 0, + 0, 0, 0, 176, 177, 178, 0, 0, 0, 0, + 0, 179, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 0, 0, 0, 0, 0, 2133, + 0, 0, 0, 182, 0, 0, 0, 186, 0, 0, + 0, 187, 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 193, 194, 0, 0, 0, 195, 0, 0, 0, 0, - 327, 124, 364, 447, 0, 199, 0, 127, 128, 129, - 0, 0, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 0, 0, 460, 461, 462, + 0, 0, 0, 194, 195, 0, 0, 0, 196, 0, + 0, 0, 0, 329, 447, 0, 0, 0, 200, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 162, 163, 164, 165, 474, 0, 0, 0, 170, - 0, 0, 841, 0, 0, 0, 0, 0, 124, 364, - 175, 176, 177, 0, 127, 128, 129, 0, 178, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 0, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 162, 163, - 164, 165, 474, 0, 0, 0, 170, 0, 0, 842, - 0, 0, 0, 0, 0, 0, 0, 175, 176, 177, - 0, 0, 0, 0, 0, 178, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 926, 0, 0, 0, 0, 181, 0, 0, 0, - 185, 0, 0, 0, 186, 187, 188, 189, 190, 0, - 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 193, 194, 0, 0, - 0, 195, 0, 0, 0, 0, 327, 656, 0, 0, - 0, 199, 0, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 181, 0, 0, 0, 185, 971, 0, - 0, 186, 187, 188, 189, 190, 0, 0, 0, 99, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 182, 0, 0, 0, 186, 0, 2134, 0, 187, 188, + 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 193, 194, 0, 0, 0, 195, 0, - 0, 0, 0, 327, 124, 364, 658, 1209, 199, 0, - 127, 128, 129, 0, 0, 130, 131, 132, 133, 134, + 194, 195, 0, 0, 0, 196, 0, 0, 0, 0, + 329, 125, 366, 449, 0, 200, 0, 128, 129, 130, + 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 0, 0, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 163, 164, 165, 166, 476, 0, 0, 0, 171, + 0, 0, 0, 0, 2138, 0, 0, 0, 125, 366, + 176, 177, 178, 0, 128, 129, 130, 0, 179, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 0, 0, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 163, 164, + 165, 166, 476, 0, 0, 0, 171, 0, 0, 0, + 0, 2139, 0, 0, 0, 0, 0, 176, 177, 178, + 0, 0, 0, 0, 0, 179, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 0, 0, 0, 0, + 0, 0, 0, 2140, 0, 0, 0, 182, 0, 0, + 0, 186, 0, 0, 0, 187, 188, 189, 190, 191, + 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 194, 195, 0, + 0, 0, 196, 0, 0, 0, 0, 329, 659, 0, + 0, 0, 200, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 182, 0, 0, 0, 186, 0, + 2141, 0, 187, 188, 189, 190, 191, 0, 0, 0, + 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 194, 195, 0, 0, 0, 196, + 0, 0, 0, 0, 329, 125, 366, 661, 1213, 200, + 0, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 0, 0, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 162, 163, 164, 165, 474, 0, - 0, 0, 170, 0, 0, 979, 0, 0, 0, 0, - 0, 0, 0, 175, 176, 177, 124, 364, 0, 1350, - 0, 178, 127, 128, 129, 0, 0, 130, 131, 132, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 163, 164, 165, 166, 476, + 0, 0, 0, 171, 0, 0, 0, 838, 0, 0, + 0, 0, 0, 0, 176, 177, 178, 125, 366, 0, + 1354, 0, 179, 128, 129, 130, 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 0, 0, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 162, 163, 164, 165, - 474, 0, 0, 0, 170, 0, 0, 980, 0, 0, - 0, 0, 0, 0, 0, 175, 176, 177, 0, 0, - 0, 0, 0, 178, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 0, 0, 181, - 981, 0, 0, 185, 0, 0, 0, 186, 187, 188, - 189, 190, 0, 0, 0, 99, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 193, - 194, 0, 0, 0, 195, 0, 0, 0, 0, 327, - 0, 0, 0, 0, 199, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, - 996, 181, 0, 0, 0, 185, 0, 0, 0, 186, - 187, 188, 189, 190, 0, 0, 0, 99, 0, 0, + 153, 0, 0, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 163, 164, 165, + 166, 476, 0, 0, 0, 171, 0, 0, 0, 1793, + 0, 0, 0, 0, 0, 0, 176, 177, 178, 0, + 0, 0, 0, 0, 179, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 888, 0, 889, 0, 0, + 1444, 182, 0, 0, 0, 186, 0, 0, 0, 187, + 188, 189, 190, 191, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 193, 194, 0, 0, 0, 195, 124, 364, 0, - 0, 327, 0, 127, 128, 129, 199, 0, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 0, 0, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 162, 163, 164, - 165, 474, 0, 0, 0, 170, 0, 0, 1131, 0, - 0, 0, 0, 0, 0, 0, 175, 176, 177, 0, - 0, 0, 0, 0, 178, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, - 1132, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 0, 0, 0, 0, 0, 1133, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, -4, 1, 0, - 0, -4, 1168, 0, 0, 0, 0, 0, 0, -4, - -4, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 181, 0, 0, 0, 185, 0, 0, 0, - 186, 187, 188, 189, 190, 0, 0, 0, 99, -4, - -4, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 193, 194, 0, 0, 0, 195, 0, -4, - -4, -4, 327, 0, 0, -4, -4, 199, -4, 0, - 0, 0, -4, -4, 0, -4, -4, 0, 0, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, 0, 0, 0, -4, 0, -4, -4, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, - -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, + 0, 194, 195, 0, 0, 0, 196, 0, 0, 0, + 0, 329, 0, 0, 0, 0, 200, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 916, 0, 0, + 0, 0, 845, 182, 0, 0, 0, 186, 0, 0, + 0, 187, 188, 189, 190, 191, 0, 0, 0, 100, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 194, 195, 0, 0, 0, 196, 125, + 366, 0, 0, 329, 0, 128, 129, 130, 200, 0, + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 0, 0, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 163, + 164, 165, 166, 476, 0, 0, 0, 171, 0, 0, + 774, 0, 0, 0, 0, 0, 0, 0, 176, 177, + 178, 0, 0, 0, 0, 0, 179, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 845, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 846, 0, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + -4, 1, 0, 0, -4, 930, 0, 0, 0, 0, + 0, 0, -4, -4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 182, 0, 0, 0, 186, + 0, 0, 0, 187, 188, 189, 190, 191, 0, 0, + 0, 100, -4, -4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 194, 195, 0, 0, 0, + 196, 0, -4, -4, -4, 329, 0, 0, -4, -4, + 200, -4, 0, 0, 0, -4, -4, 0, -4, -4, + 0, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, -4, -4, - -4, 0, 0, 0, 0, 0, -4, 6, 0, 0, - 0, -4, -4, -4, -4, 7, 8, -4, 0, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, -4, -4, -4, 0, 0, 0, 0, 0, - -4, -4, -4, 0, 0, 9, 10, 0, 0, -4, - 0, -4, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 11, 12, 13, 0, 0, - 0, 14, 15, 0, 16, 0, 0, 0, 17, 18, - 0, 19, 20, 0, 0, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 0, 0, - 0, 34, 0, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 0, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 0, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 0, 0, 0, 71, 72, 73, 0, 0, 0, - 0, 0, 74, 0, 0, 0, 0, 75, 76, 77, - 78, 0, 0, 79, 0, 80, 0, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 0, 0, 0, 0, 0, 95, 96, 97, 0, - 0, 0, 0, 0, 0, 98, 0, 99, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1177, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1178, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1180, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1291, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1342, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1343, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1408, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1577, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1578, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1579, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1580, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1581, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1582, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1583, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1636, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1637, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1644, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1819, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1820, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1821, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1822, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1823, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1847, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1848, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1852, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1960, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1961, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 1962, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 1963, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 1964, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 1974, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 1977, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 2027, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 2047, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 2048, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 2049, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 2050, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 0, 0, 0, 2051, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 2102, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 0, 0, 0, 2103, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 0, 0, 0, 2104, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 2105, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 951, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 0, 0, 958, 460, 461, 462, 463, + -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, + -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, + 0, 0, -4, -4, -4, 0, 0, 0, 0, 0, + -4, 6, 0, 0, 0, -4, -4, -4, -4, 7, + 8, -4, 0, -4, 0, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, + 0, 0, 0, 0, -4, -4, -4, 0, 0, 9, + 10, 0, 0, -4, 0, -4, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, + 12, 13, 0, 0, 0, 14, 15, 0, 16, 0, + 0, 0, 17, 18, 0, 19, 20, 0, 0, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 0, 0, 0, 34, 35, 0, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 0, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 0, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 0, 0, 0, 72, + 73, 74, 0, 0, 0, 0, 0, 75, 0, 0, + 0, 0, 76, 77, 78, 79, 0, 0, 80, 0, + 81, 0, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 0, 0, 0, 0, + 0, 96, 97, 98, 0, 0, 0, 0, 0, 0, + 99, 0, 100, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 975, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 983, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 984, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 985, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1000, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1135, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1136, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1137, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1172, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1181, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1182, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1184, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1295, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1346, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1347, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1412, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1581, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1582, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1583, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1584, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1585, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1586, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1587, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1640, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1641, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1648, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1823, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1824, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1825, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1826, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1827, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1851, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1852, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1856, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1964, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1965, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 1966, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 1967, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 1968, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 1978, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 1981, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 2031, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 2051, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 2052, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 2053, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 2054, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 0, 0, 0, 2055, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 0, 0, 0, + 2106, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 0, 0, 0, 2107, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 0, + 0, 0, 2108, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 0, 0, 0, 2109, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 888, + 0, 889, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 731, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 936, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 1054, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 0, - 0, 1161, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 1162, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 0, 0, 1166, 460, 461, + 474, 475, 0, 0, 0, 0, 476, 0, 0, 0, + 955, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 962, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 0, 0, 1058, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 1165, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 0, 0, - 1167, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 0, 0, 1170, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 0, 0, 1194, 460, 461, 462, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 1166, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 0, 0, 1170, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 0, 0, 1171, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 0, 0, 1227, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 0, 0, 1284, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 0, 0, 1289, 460, 461, 462, 463, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 0, + 0, 1174, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 0, 0, 1198, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 0, 0, 1231, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 0, 0, 1572, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 0, - 0, 1627, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 0, 0, 1802, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 781, 460, 461, 462, 463, + 474, 475, 0, 0, 0, 0, 476, 0, 0, 0, + 1288, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 0, 0, 1293, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 0, 0, 1576, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 0, 0, 1631, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 0, 0, 1806, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 727, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 784, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 788, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 789, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 791, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 785, 460, 461, 462, + 474, 475, 0, 0, 0, 0, 476, 0, 793, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 786, 460, 461, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 794, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 788, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 790, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 791, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 794, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 795, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 796, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 797, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 806, 460, 461, 462, 463, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 797, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 798, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 799, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 800, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 810, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 916, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 926, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 927, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 912, 460, 461, 462, + 474, 475, 0, 0, 0, 0, 476, 0, 928, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 922, 460, 461, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 934, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 923, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 924, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 930, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 931, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 938, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 947, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 957, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 1053, 460, 461, 462, 463, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 935, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 942, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 951, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 961, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 1057, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 1085, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 1090, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 1097, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 1081, 460, 461, 462, + 474, 475, 0, 0, 0, 0, 476, 0, 1102, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 1086, 460, 461, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 1103, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 1093, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 1098, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 1099, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 1105, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 1114, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 1115, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 1116, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 1148, 460, 461, 462, 463, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 1109, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 1118, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 1119, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 1120, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 1152, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 1154, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 1155, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 1156, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 1150, 460, 461, 462, + 474, 475, 0, 0, 0, 0, 476, 0, 1157, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 1151, 460, 461, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 1158, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 1152, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 1153, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 1154, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 1155, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 1156, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 1160, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474, 0, 1169, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 0, - 0, 0, 0, 474, 0, 1193, 460, 461, 462, 463, + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 1159, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 1160, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 1164, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476, 0, 1173, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 0, 0, + 0, 0, 476, 0, 1197, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 0, + 0, 0, 0, 476, 0, 1287, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 0, 0, 0, 0, 476, 0, 1292, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 0, 0, 0, 0, 476, 0, 1456, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 0, 0, 0, 0, 474, 0, 1283, 460, 461, 462, + 474, 475, 0, 0, 0, 0, 476, 0, 1685, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 0, 0, 0, 0, 474, 0, 1288, 460, 461, + 473, 474, 475, 0, 0, 0, 0, 476, 0, 1702, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 0, 0, 0, 0, 474, 0, 1452, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 0, 0, 0, 0, 474, 0, 1681, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 0, 0, 0, 0, 474, 0, - 1698, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 0, 0, 0, 0, 474, - 0, 1728, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 0, 0, 0, 0, - 474, 0, 1973, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 0, 0, 0, - 0, 474, 0, 2057, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 0, 0, - 0, 0, 474 + 472, 473, 474, 475, 0, 0, 0, 0, 476, 0, + 1732, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 0, 0, 0, 0, 476, + 0, 1977, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 0, 0, 0, + 476, 0, 2061, 462, 463, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 0, 0, 0, + 0, 476 }; static const yytype_int16 yycheck[] = { - 3, 6, 270, 6, 1595, 1596, 412, 1147, 414, 4, - 285, 553, 554, 4, 1561, 4, 1773, 7, 4, 4, - 3, 5, 4, 429, 4, 445, 301, 447, 5, 449, - 5, 90, 5, 3, 6, 4, 6, 218, 4, 220, - 7, 4, 6, 4, 4, 0, 6, 4, 4, 218, - 4, 4, 4, 218, 5, 5, 5, 5, 5, 5, - 225, 6, 6, 66, 6, 6, 208, 209, 215, 216, - 218, 74, 220, 114, 208, 209, 79, 221, 225, 227, - 224, 6, 6, 6, 226, 6, 361, 90, 363, 130, - 224, 6, 226, 6, 369, 160, 66, 138, 139, 140, - 218, 208, 209, 144, 145, 146, 147, 208, 209, 79, - 221, 176, 177, 224, 1661, 208, 209, 224, 8, 226, - 90, 13, 1143, 224, 84, 226, 208, 209, 84, 208, - 209, 224, 88, 208, 209, 123, 218, 6, 94, 95, - 96, 97, 7, 225, 208, 209, 225, 215, 216, 7, - 225, 107, 208, 209, 208, 209, 208, 209, 208, 209, - 224, 150, 151, 152, 153, 7, 6, 1924, 1925, 225, - 224, 7, 224, 90, 224, 92, 148, 208, 209, 163, - 171, 215, 216, 6, 148, 226, 163, 220, 163, 175, - 163, 225, 8, 224, 208, 209, 199, 160, 161, 160, - 161, 6, 7, 194, 148, 215, 216, 148, 211, 212, - 224, 218, 194, 218, 194, 225, 219, 200, 225, 87, - 225, 1768, 90, 218, 227, 220, 229, 222, 218, 199, - 220, 234, 227, 218, 225, 238, 656, 226, 658, 1786, - 243, 211, 212, 225, 247, 248, 249, 250, 251, 219, - 225, 220, 255, 256, 257, 222, 6, 227, 227, 225, - 263, 264, 265, 6, 218, 218, 269, 270, 225, 544, - 545, 225, 225, 225, 225, 225, 225, 225, 225, 225, - 225, 251, 205, 225, 208, 209, 7, 208, 209, 564, - 205, 7, 295, 296, 297, 208, 209, 99, 7, 84, - 270, 219, 87, 221, 724, 90, 309, 310, 728, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 326, 7, 328, 87, 217, 7, 90, - 195, 196, 197, 198, 7, 218, 226, 195, 196, 197, - 198, 218, 211, 212, 218, 1366, 220, 90, 225, 92, - 215, 216, 6, 195, 196, 197, 198, 222, 633, 195, - 196, 197, 198, 218, 367, 215, 216, 218, 371, 372, - 225, 215, 216, 648, 225, 225, 6, 1968, 222, 215, - 216, 384, 251, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 367, 215, 216, - 219, 217, 221, 219, 208, 209, 225, 8, 225, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 6, 426, 427, 428, 429, 430, 218, 1976, - 220, 434, 435, 436, 437, 438, 439, 227, 441, 90, - 220, 92, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 218, 423, 424, 458, 426, 427, 428, 429, - 430, 449, 208, 209, 434, 435, 436, 437, 438, 439, - 6, 441, 6, 7, 195, 196, 197, 198, 224, 195, - 196, 197, 198, 226, 215, 216, 195, 196, 197, 198, - 221, 215, 216, 496, 215, 216, 218, 90, 367, 215, - 216, 225, 210, 211, 212, 6, 215, 216, 218, 217, - 208, 209, 195, 196, 197, 198, 195, 196, 197, 198, - 90, 218, 195, 196, 197, 198, 224, 947, 222, 218, - 218, 951, 220, 227, 222, 538, 539, 208, 209, 227, - 87, 2088, 218, 90, 413, 92, 415, 416, 417, 418, - 419, 420, 421, 224, 423, 424, 7, 426, 427, 428, - 218, 430, 837, 208, 209, 434, 435, 436, 437, 438, - 553, 554, 208, 209, 208, 209, 218, 218, 220, 224, - 222, 584, 585, 586, 6, 227, 219, 225, 224, 84, - 224, 224, 87, 596, 597, 90, 218, 600, 199, 200, + 3, 1151, 414, 6, 416, 272, 1599, 1600, 1147, 1565, + 6, 4, 556, 557, 6, 6, 6, 4, 4, 431, + 3, 5, 0, 4, 6, 219, 5, 4, 4, 4, + 4, 4, 226, 5, 223, 4, 1777, 4, 4, 228, + 5, 287, 4, 4, 87, 5, 5, 90, 90, 5, + 5, 5, 5, 209, 210, 6, 6, 303, 219, 6, + 6, 6, 161, 6, 67, 115, 7, 4, 7, 6, + 226, 447, 75, 449, 219, 451, 221, 80, 177, 178, + 6, 131, 13, 6, 209, 210, 219, 6, 91, 139, + 140, 141, 209, 210, 220, 145, 146, 147, 148, 225, + 225, 91, 227, 93, 222, 209, 210, 225, 7, 1665, + 227, 209, 210, 219, 209, 210, 219, 363, 221, 365, + 226, 225, 84, 227, 219, 371, 88, 225, 4, 5, + 219, 226, 94, 95, 96, 97, 124, 226, 6, 87, + 209, 210, 90, 7, 209, 210, 108, 84, 211, 212, + 213, 222, 6, 4, 225, 218, 225, 4, 227, 54, + 55, 226, 57, 6, 151, 152, 153, 154, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 227, 209, 210, + 164, 57, 58, 59, 60, 164, 219, 1928, 1929, 65, + 66, 67, 164, 226, 70, 226, 6, 200, 172, 164, + 219, 176, 149, 149, 7, 81, 149, 226, 7, 212, + 213, 219, 7, 209, 210, 206, 1772, 220, 201, 195, + 221, 195, 195, 149, 206, 228, 219, 230, 221, 6, + 223, 1370, 235, 219, 1790, 228, 239, 227, 219, 219, + 227, 244, 245, 6, 221, 226, 249, 250, 251, 252, + 253, 228, 226, 226, 257, 258, 259, 226, 219, 226, + 226, 226, 265, 266, 267, 226, 226, 226, 271, 272, + 226, 226, 226, 226, 219, 226, 226, 7, 219, 3, + 221, 226, 6, 659, 223, 661, 209, 210, 221, 7, + 209, 210, 219, 7, 297, 298, 299, 196, 197, 198, + 199, 547, 548, 6, 180, 181, 182, 220, 311, 312, + 161, 162, 225, 8, 161, 162, 192, 219, 194, 195, + 84, 567, 220, 87, 222, 328, 90, 330, 226, 219, + 209, 210, 196, 197, 198, 199, 7, 220, 209, 210, + 216, 217, 225, 67, 212, 213, 225, 223, 209, 210, + 226, 727, 216, 217, 225, 731, 80, 209, 210, 223, + 219, 209, 210, 219, 225, 221, 369, 91, 209, 210, + 373, 374, 228, 225, 216, 217, 244, 225, 100, 1972, + 275, 276, 220, 386, 225, 253, 219, 225, 283, 379, + 636, 7, 287, 196, 197, 198, 199, 196, 197, 198, + 199, 196, 197, 198, 199, 651, 90, 219, 92, 8, + 219, 414, 415, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 1980, 428, 429, 430, 431, 432, + 219, 209, 210, 436, 437, 438, 439, 440, 441, 225, + 443, 227, 209, 210, 434, 209, 210, 225, 209, 210, + 84, 90, 442, 87, 90, 219, 90, 460, 225, 209, + 210, 6, 226, 451, 225, 220, 196, 197, 198, 199, + 225, 225, 225, 227, 227, 225, 200, 8, 196, 197, + 198, 199, 196, 197, 198, 199, 216, 217, 212, 213, + 216, 217, 220, 226, 222, 498, 220, 225, 216, 217, + 226, 369, 216, 217, 228, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 220, + 244, 209, 210, 218, 225, 196, 197, 198, 199, 253, + 216, 217, 227, 225, 219, 227, 2092, 225, 541, 542, + 226, 531, 532, 533, 534, 216, 217, 415, 272, 417, + 418, 419, 420, 421, 422, 423, 219, 425, 426, 92, + 428, 429, 430, 225, 432, 227, 6, 7, 436, 437, + 438, 439, 440, 556, 557, 951, 209, 210, 90, 955, + 196, 197, 198, 199, 587, 588, 589, 90, 216, 217, + 6, 7, 225, 216, 217, 841, 599, 600, 226, 222, + 603, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 618, 220, 219, 6, 218, + 87, 225, 625, 209, 210, 226, 209, 210, 227, 226, + 209, 210, 115, 209, 210, 219, 4, 221, 219, 225, + 221, 644, 225, 90, 228, 369, 225, 228, 131, 225, + 225, 1801, 227, 1803, 6, 1805, 139, 140, 141, 554, + 555, 664, 145, 146, 147, 148, 220, 562, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 615, 208, 209, 114, 217, 208, 209, 622, - 84, 6, 224, 87, 226, 226, 90, 597, 92, 224, - 600, 130, 219, 224, 377, 208, 209, 224, 641, 138, - 139, 140, 218, 118, 119, 144, 145, 146, 147, 124, - 219, 224, 221, 218, 90, 220, 225, 1797, 661, 1799, - 90, 1801, 227, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 7, 8, 219, - 668, 217, 4, 92, 224, 218, 1106, 220, 1108, 432, - 1110, 219, 1112, 221, 227, 218, 224, 440, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 87, 208, 209, 225, 217, 208, 209, 225, - 723, 208, 209, 218, 727, 6, 90, 226, 208, 209, - 225, 600, 218, 224, 220, 87, 724, 224, 219, 87, - 728, 227, 4, 224, 224, 90, 208, 209, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 224, 766, 1032, 4, 217, 770, 208, 209, - 773, 218, 224, 776, 226, 778, 208, 209, 87, 782, - 783, 90, 4, 92, 224, 528, 529, 530, 531, 208, - 209, 218, 224, 248, 249, 250, 118, 119, 120, 121, - 255, 256, 257, 773, 219, 224, 776, 810, 778, 224, - 132, 4, 1952, 135, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 219, 208, - 209, 834, 217, 224, 208, 209, 224, 1257, 226, 6, - 295, 296, 218, 1249, 1250, 224, 208, 209, 1254, 1255, - 224, 208, 209, 1273, 309, 310, 6, 84, 1879, 218, - 87, 1882, 224, 90, 1885, 92, 224, 224, 226, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 886, 219, 888, 221, 217, 891, 224, - 2030, 219, 2032, 221, 2034, 883, 224, 208, 209, 218, - 2040, 904, 220, 906, 773, 908, 6, 910, 218, 778, - 118, 119, 915, 224, 220, 218, 124, 920, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 224, 218, 226, 220, 217, 222, 218, 942, - 225, 114, 227, 946, 219, 218, 221, 950, 219, 224, - 6, 218, 218, 224, 2094, 958, 2096, 130, 2098, 947, - 224, 7, 226, 951, 218, 138, 139, 140, 218, 957, - 958, 144, 145, 146, 147, 208, 209, 210, 211, 212, - 983, 224, 2003, 226, 217, 988, 729, 224, 958, 226, - 993, 994, 995, 996, 220, 218, 1264, 1539, 1540, 219, - 224, 221, 226, 1006, 224, 1008, 219, 219, 221, 221, - 1430, 224, 224, 218, 1420, 1421, 218, 6, 988, 1425, - 1426, 224, 6, 226, 994, 995, 996, 225, 224, 1032, - 226, 225, 1035, 1036, 1037, 1038, 1006, 780, 1008, 224, - 218, 226, 2063, 225, 224, 2066, 226, 224, 2069, 226, - 224, 2072, 226, 226, 90, 218, 92, 1060, 224, 224, - 226, 226, 1032, 218, 225, 1053, 1054, 204, 205, 206, - 207, 208, 209, 210, 211, 212, 1079, 1080, 218, 1082, - 217, 1084, 1085, 218, 218, 1088, 1089, 1090, 1091, 958, - 1060, 218, 1095, 2114, 1097, 2116, 218, 2118, 114, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 224, 130, 226, 224, 217, 226, 988, - 218, 218, 138, 139, 140, 994, 995, 996, 144, 145, - 146, 147, 224, 224, 226, 226, 224, 1006, 226, 1008, - 1415, 225, 1417, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 224, 224, 226, - 226, 217, 224, 224, 226, 226, 224, 224, 226, 226, - 4, 4, 5, 224, 224, 226, 226, 53, 54, 218, - 56, 1169, 1170, 224, 224, 226, 226, 4, 225, 6, - 224, 1060, 226, 1196, 1197, 1198, 224, 224, 226, 226, - 224, 220, 226, 1471, 225, 1193, 1194, 225, 225, 1212, - 226, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 224, 224, 226, 226, 57, 58, 59, 60, 224, 224, - 226, 226, 65, 66, 67, 225, 224, 70, 226, 224, - 114, 226, 224, 224, 226, 226, 1249, 1250, 81, 218, - 1792, 1254, 1255, 224, 218, 226, 130, 224, 224, 226, - 226, 1264, 218, 218, 138, 139, 140, 218, 227, 1257, - 144, 145, 146, 147, 224, 1278, 226, 218, 218, 1249, - 1250, 224, 6, 226, 1254, 1255, 224, 224, 226, 226, - 224, 224, 226, 226, 1264, 224, 224, 226, 226, 1302, - 224, 224, 226, 226, 224, 1308, 226, 6, 224, 6, - 226, 225, 224, 1316, 226, 225, 1319, 1320, 224, 220, - 226, 1324, 1325, 225, 1327, 220, 1329, 220, 1331, 225, - 1333, 1334, 1335, 6, 6, 225, 163, 6, 227, 6, - 6, 225, 6, 1749, 6, 225, 179, 180, 181, 1352, - 225, 6, 226, 220, 114, 4, 217, 222, 191, 7, - 193, 194, 225, 7, 1367, 224, 226, 224, 6, 6, - 130, 6, 1375, 219, 1377, 7, 7, 6, 138, 139, - 140, 6, 215, 216, 144, 145, 146, 147, 6, 222, - 219, 6, 225, 225, 7, 6, 6, 273, 274, 7, - 6, 6, 4, 62, 62, 281, 62, 160, 114, 285, - 62, 225, 221, 219, 6, 6, 219, 1420, 1421, 219, - 224, 219, 1425, 1426, 130, 224, 6, 224, 224, 224, - 224, 224, 138, 139, 140, 219, 1439, 219, 144, 145, - 146, 147, 1445, 221, 1432, 6, 44, 44, 44, 44, - 1420, 1421, 6, 4, 4, 1425, 1426, 225, 6, 6, - 6, 6, 163, 7, 7, 7, 226, 7, 1471, 1439, - 163, 7, 7, 163, 1477, 1445, 7, 7, 7, 7, - 6, 4, 7, 219, 1487, 6, 224, 1490, 219, 224, - 219, 1759, 224, 219, 224, 222, 6, 219, 226, 7, - 221, 1471, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, 226, 1487, 225, 7, - 217, 225, 225, 225, 7, 7, 222, 225, 1531, 1532, - 6, 1806, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, 226, 114, 44, 1292, - 217, 44, 44, 44, 6, 6, 1539, 1540, 1561, 6, - 6, 6, 6, 130, 1567, 114, 7, 220, 218, 6, - 1439, 138, 139, 140, 225, 218, 1445, 144, 145, 146, - 147, 130, 205, 7, 1587, 1573, 7, 92, 7, 138, - 139, 140, 7, 7, 1597, 144, 145, 146, 147, 7, - 6, 4, 7, 7, 1607, 7, 7, 7, 7, 1612, - 4, 225, 7, 6, 218, 7, 6, 6, 1487, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 7, 1909, 1638, 6, 217, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 7, 7, 7, 7, 217, 7, 1661, 226, - 225, 6, 6, 90, 7, 114, 6, 6, 4, 5, - 4, 1414, 4, 4, 226, 551, 552, 226, 1953, 6, - 6, 130, 6, 559, 225, 224, 6, 225, 6, 138, - 139, 140, 4, 6, 1697, 144, 145, 146, 147, 219, - 224, 219, 224, 222, 7, 218, 1709, 222, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 6, 225, 6, - 1463, 57, 58, 59, 60, 219, 1729, 6, 6, 65, - 66, 67, 221, 6, 70, 225, 6, 114, 225, 107, - 225, 225, 6, 1746, 6, 81, 1749, 1490, 225, 6, - 6, 6, 6, 130, 5, 225, 1759, 6, 4, 6, - 225, 138, 139, 140, 7, 1768, 225, 144, 145, 146, - 147, 225, 1775, 1776, 6, 6, 6, 226, 220, 1749, - 6, 4, 225, 1786, 6, 225, 1789, 225, 221, 1759, - 225, 225, 1535, 225, 225, 6, 219, 6, 159, 6, - 6, 4, 1805, 7, 224, 6, 1809, 6, 6, 1792, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 6, 4, 12, 13, 217, 6, 6, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 179, 180, 181, 6, 217, 114, 226, - 1593, 6, 6, 4, 7, 191, 6, 193, 194, 6, - 6, 6, 5, 225, 130, 1868, 6, 6, 163, 1612, - 1613, 1614, 138, 139, 140, 6, 6, 6, 144, 145, - 146, 147, 6, 219, 1887, 221, 6, 6, 6, 6, - 6, 6, 6, 6, 224, 6, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 6, 6, 224, - 98, 1914, 100, 6, 98, 6, 6, 105, 106, 107, - 108, 219, 110, 111, 112, 6, 6, 6, 116, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 6, 1914, 6, 6, 217, 7, 6, - 114, 222, 1955, 1956, 1957, 1958, 1959, 225, 6, 5, - 226, 88, 225, 6, 840, 225, 130, 155, 156, 157, - 6, 847, 225, 1976, 138, 139, 140, 853, 226, 6, - 144, 145, 146, 147, 225, 7, 226, 225, 225, 1732, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 225, 225, 6, 6, 217, 193, - 194, 195, 196, 197, 158, 6, 226, 6, 226, 6, - 6, 226, 6, 161, 6, 6, 210, 6, 6, 6, - 214, 6, 6, 225, 6, 6, 219, 6, 226, 225, - 7, 6, 2045, 225, 228, 229, 230, 231, 225, 233, - 234, 235, 236, 2056, 238, 239, 240, 241, 242, 225, - 6, 6, 226, 247, 225, 6, 6, 226, 252, 199, + 211, 212, 213, 671, 209, 210, 225, 218, 227, 220, + 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, + 225, 425, 426, 87, 428, 429, 430, 431, 432, 209, + 210, 87, 436, 437, 438, 439, 440, 441, 220, 443, + 222, 209, 210, 726, 226, 225, 220, 730, 222, 209, + 210, 225, 209, 210, 1110, 603, 1112, 225, 1114, 727, + 1116, 90, 732, 731, 1883, 225, 219, 1886, 225, 4, + 1889, 119, 120, 121, 122, 115, 209, 210, 209, 210, + 4, 209, 210, 209, 210, 133, 769, 4, 136, 1036, + 773, 131, 225, 776, 225, 4, 779, 225, 781, 139, + 140, 141, 785, 786, 219, 145, 146, 147, 148, 219, + 219, 209, 210, 783, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 1956, 225, 219, 6, + 218, 814, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 84, 209, 210, 87, + 218, 225, 90, 227, 92, 838, 209, 210, 211, 212, + 213, 1253, 1254, 225, 221, 218, 1258, 1259, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 209, 210, 6, 219, 218, 227, 2007, 219, + 216, 217, 216, 217, 216, 217, 600, 7, 225, 603, + 226, 223, 226, 221, 2034, 1261, 2036, 890, 2038, 892, + 216, 217, 895, 87, 2044, 219, 90, 221, 92, 887, + 226, 1277, 219, 219, 228, 908, 6, 910, 776, 912, + 219, 914, 221, 781, 223, 219, 919, 226, 219, 228, + 221, 924, 223, 219, 90, 221, 92, 228, 2067, 119, + 120, 2070, 228, 219, 2073, 125, 219, 2076, 221, 87, + 223, 219, 90, 946, 92, 228, 219, 950, 2098, 844, + 2100, 954, 2102, 6, 119, 120, 851, 219, 84, 962, + 125, 87, 857, 951, 90, 219, 92, 955, 219, 225, + 220, 227, 222, 961, 962, 225, 225, 6, 227, 2118, + 220, 2120, 222, 2122, 987, 225, 220, 226, 222, 992, + 225, 225, 227, 221, 997, 998, 999, 1000, 6, 1543, + 1544, 1268, 225, 220, 227, 222, 226, 1010, 225, 1012, + 226, 219, 1424, 1425, 219, 219, 115, 1429, 1430, 226, + 6, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 219, 219, 131, 1036, 218, 226, 1039, 1040, 1041, 1042, + 139, 140, 141, 225, 219, 227, 145, 146, 147, 148, + 4, 220, 776, 222, 226, 779, 225, 781, 1434, 219, + 219, 1064, 225, 225, 227, 227, 90, 219, 92, 1057, + 1058, 225, 225, 227, 227, 225, 225, 227, 227, 219, + 1083, 1084, 225, 1086, 227, 1088, 1089, 226, 226, 1092, + 1093, 1094, 1095, 226, 962, 6, 1099, 225, 1101, 227, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 267, 114, 2088, 2056, 217, 225, 6, - 6, 6, 276, 277, 6, 6, 6, 6, 6, 6, - 226, 285, 6, 2106, 6, 2108, 199, 200, 201, 202, + 210, 211, 212, 213, 225, 225, 227, 227, 218, 225, + 225, 227, 227, 225, 992, 227, 219, 225, 227, 227, + 998, 999, 1000, 225, 225, 227, 227, 225, 225, 227, + 227, 225, 1010, 227, 1012, 226, 219, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 225, 114, 218, 225, 217, 225, 6, 219, 6, 226, - 225, 6, 6, 6, 6, 2138, 2106, 130, 2108, 6, - 6, 6, 326, 327, 328, 138, 139, 140, 6, 6, - 225, 144, 145, 146, 147, 6, 340, 341, 342, 225, - 344, 225, 6, 225, 348, 349, 350, 225, 2138, 353, - 1913, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 6, 6, 368, 6, 217, 2056, 6, 373, - 374, 6, 6, 6, 6, 6, 6, 6, 6, 1075, - 1287, 492, 1917, 387, 388, 1301, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 1774, 3, - 3, 3, 3, 226, 526, 1788, 1467, 2106, -1, 2108, - -1, 425, -1, -1, -1, -1, -1, 431, -1, 433, - 6, -1, -1, -1, -1, 1131, 1132, 1133, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2138, - -1, -1, -1, 457, 458, 2018, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, -1, -1, 477, 478, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, 496, 217, -1, -1, -1, -1, 502, -1, - -1, -1, -1, 507, -1, -1, -1, -1, -1, -1, - 514, 515, -1, -1, 6, -1, -1, -1, 522, 523, - -1, -1, -1, 527, 528, 529, 530, 531, 532, -1, - 534, -1, 536, -1, 538, 539, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 556, 557, 558, 559, 560, 561, -1, -1, - -1, 565, 566, 567, 568, 569, 570, 571, 572, 573, - -1, -1, -1, 577, -1, 579, 580, -1, -1, -1, - 584, 585, 586, -1, -1, 589, 590, 591, 592, 593, - -1, -1, 596, 597, 598, 599, -1, 601, -1, -1, - 604, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 615, -1, -1, -1, 8, -1, 621, 622, -1, - 624, 625, -1, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 641, -1, -1, - -1, 217, 646, 647, -1, 649, 650, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 660, 661, -1, -1, - -1, 665, -1, -1, -1, -1, -1, -1, -1, 1365, - -1, 3, 4, -1, -1, -1, -1, 9, 10, 11, - -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, -1, -1, 199, 200, 201, + 213, 4, 225, 6, 227, 218, 225, 225, 227, 227, + 225, 221, 227, 1419, 225, 1421, 227, 225, 219, 227, + 225, 219, 227, 230, 1079, 1173, 1174, 6, 235, 225, + 6, 227, 239, 225, 219, 227, 1064, 1200, 1201, 1202, + 219, 219, 249, 225, 225, 227, 227, 219, 1475, 1197, + 1198, 228, 6, 1216, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 225, 225, + 227, 227, 218, 225, 225, 227, 227, 225, 962, 227, + 1135, 1136, 1137, 225, 225, 227, 227, 225, 6, 227, + 1253, 1254, 1796, 226, 226, 1258, 1259, 225, 6, 227, + 225, 225, 227, 227, 225, 1268, 227, 225, 992, 227, + 12, 13, 6, 1261, 998, 999, 1000, 226, 225, 1282, + 227, 328, 225, 330, 227, 225, 1010, 227, 1012, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 1306, 226, 221, 1296, 218, 225, 1312, + 227, 6, 1036, 225, 221, 227, 221, 1320, 226, 164, + 1323, 1324, 228, 6, 6, 1328, 1329, 226, 1331, 6, + 1333, 6, 1335, 226, 1337, 1338, 1339, 226, 6, 221, + 1064, 1753, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 1356, 4, 218, 223, 99, 7, 101, + 226, 225, 227, 225, 106, 107, 108, 109, 1371, 111, + 112, 113, 220, 7, 6, 117, 1379, 6, 1381, 6, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 7, 7, 6, 6, 218, + 6, 6, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 460, 156, 157, 158, 218, 220, 226, + 7, 1424, 1425, 6, 4, 7, 1429, 1430, 1418, 6, + 6, 6, 62, 161, 62, 226, 250, 251, 252, 62, + 1443, 62, 222, 257, 258, 259, 1449, 220, 1436, 6, + 6, 498, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 220, 220, 225, 225, + 218, 222, 1475, 225, 1369, 225, 225, 1467, 1481, 225, + 225, 220, 220, 297, 298, 227, 44, 220, 1491, 44, + 44, 1494, 44, 6, 541, 542, 1763, 311, 312, 4, + 4, 7, 164, 6, 1494, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 6, + 6, 6, 164, 218, 7, 164, 7, 7, 7, 1253, + 1254, 7, 1535, 1536, 1258, 1259, 7, 7, 7, 7, + 587, 588, 589, 6, 1268, 226, 7, 4, 6, 1539, + 220, 225, 599, 600, 220, 220, 225, 220, 225, 223, + 1543, 1544, 1565, 6, 1810, 225, 227, 220, 1571, 227, + 222, 618, 226, 7, 7, 1443, 7, 7, 625, 226, + 226, 1449, 226, 223, 227, 226, 6, 6, 1591, 1577, + 44, 44, 44, 44, 6, 6, 6, 644, 1601, 6, + 226, 7, 221, 6, 219, 115, 219, 1597, 1611, 1504, + 6, 206, 7, 1616, 7, 92, 7, 664, 7, 7, + 7, 131, 6, 1491, 4, 7, 1616, 1617, 1618, 139, + 140, 141, 7, 115, 7, 145, 146, 147, 148, 1642, + 7, 4, 5, 7, 4, 7, 219, 226, 6, 131, + 1545, 7, 1547, 6, 1549, 7, 7, 139, 140, 141, + 226, 7, 1665, 145, 146, 147, 148, 1913, 7, 7, + 7, 1566, 1567, 1568, 1569, 1570, 1571, 7, 6, 6, + 6, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 90, 7, 6, 6, 57, 58, 59, 60, 1701, 4, + 1424, 1425, 65, 66, 67, 1429, 1430, 70, 4, 4, + 1713, 1957, 226, 225, 6, 226, 6, 227, 81, 1443, + 227, 6, 769, 6, 6, 1449, 773, 4, 6, 225, + 1733, 220, 115, 225, 7, 223, 220, 6, 785, 786, + 6, 219, 6, 6, 6, 227, 1736, 1750, 131, 222, + 1753, 1475, 226, 220, 226, 6, 139, 140, 141, 223, + 1763, 226, 145, 146, 147, 148, 108, 1491, 115, 1772, + 226, 226, 6, 6, 6, 6, 1779, 1780, 226, 6, + 5, 4, 6, 220, 131, 6, 226, 1790, 226, 7, + 1793, 838, 139, 140, 141, 221, 6, 226, 145, 146, + 147, 148, 226, 6, 6, 6, 1809, 4, 226, 226, + 1813, 226, 226, 1796, 222, 6, 6, 180, 181, 182, + 160, 226, 226, 6, 226, 6, 225, 4, 7, 192, + 6, 194, 195, 6, 6, 4, 6, 223, 6, 6, + 6, 6, 4, 890, 227, 892, 7, 6, 895, 6, + 6, 6, 5, 164, 6, 226, 6, 220, 6, 222, + 115, 908, 6, 910, 6, 912, 6, 914, 6, 1872, + 6, 115, 919, 6, 6, 6, 131, 924, 6, 6, + 227, 225, 6, 6, 139, 140, 141, 131, 1891, 6, + 145, 146, 147, 148, 6, 139, 140, 141, 6, 6, + 225, 145, 146, 147, 148, 1800, 6, 1802, 220, 1804, + 6, 6, 6, 6, 6, 1918, 7, 6, 6, 1814, + 1815, 1816, 1817, 1818, 6, 12, 13, 1917, 226, 6, + 5, 7, 226, 226, 88, 6, 6, 115, 226, 226, + 987, 227, 6, 227, 6, 226, 226, 6, 159, 6, + 226, 226, 6, 131, 6, 227, 1959, 1960, 1961, 1962, + 1963, 139, 140, 141, 6, 6, 227, 145, 146, 147, + 148, 227, 227, 6, 6, 162, 1871, 1980, 6, 6, + 1875, 6, 6, 227, 6, 6, 6, 226, 6, 6, + 220, 226, 1039, 1040, 1041, 1042, 6, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 7, 6, + 226, 226, 99, 226, 101, 6, 6, 226, 6, 106, + 107, 108, 109, 227, 111, 112, 113, 226, 6, 1753, + 117, 115, 2022, 6, 6, 6, 6, 6, 1933, 1763, + 6, 6, 1937, 6, 6, 6, 2049, 227, 6, 227, + 6, 226, 1099, 227, 6, 219, 6, 2060, 6, 6, + 220, 6, 6, 226, 6, 6, 99, 6, 1963, 156, + 157, 158, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 6, 226, 6, 2092, + 218, 226, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 226, 2110, 226, 2112, + 218, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 226, 6, 226, 226, 218, + 6, 6, 6, 6, 6, 6, 6, 2032, 2033, 2142, + 227, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 115, 6, 6, 6, 218, + 6, 194, 195, 196, 197, 198, 1291, 6, 1778, 1921, + 494, 131, 3, 1305, 529, 3, 3, 3, 211, 139, + 140, 141, 215, 12, 13, 145, 146, 147, 148, 1792, + 1471, -1, 2060, -1, 1918, -1, 229, 230, 231, 232, + -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, + 243, 7, 8, -1, -1, -1, 249, -1, -1, -1, + -1, 254, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 269, -1, -1, -1, + 218, -1, 2110, -1, 2112, 278, 279, -1, -1, -1, + -1, -1, -1, -1, 287, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, -1, 227, -1, -1, + 99, -1, 101, -1, 2142, 115, -1, 106, 107, 108, + 109, -1, 111, 112, 113, -1, -1, -1, 117, -1, + -1, 131, -1, -1, -1, 328, 329, 330, -1, 139, + 140, 141, -1, -1, -1, 145, 146, 147, 148, 342, + 343, 344, -1, 346, -1, -1, -1, 350, 351, 352, + -1, -1, 355, -1, -1, -1, -1, 156, 157, 158, + -1, -1, -1, -1, 1381, -1, 2060, 370, -1, -1, + -1, -1, 375, 376, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 389, 390, -1, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, -1, -1, -1, -1, -1, 2110, 227, 2112, -1, + -1, -1, -1, -1, 427, -1, -1, -1, 227, -1, + 433, -1, 435, 6, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 2142, -1, + -1, -1, 218, -1, -1, -1, 459, 460, -1, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 476, -1, -1, 479, 480, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 53, 54, 55, 56, 217, 730, -1, -1, 61, + 212, 213, -1, -1, -1, 498, 218, -1, -1, -1, + -1, 504, -1, 225, -1, 227, 509, -1, -1, -1, + -1, -1, -1, -1, 517, 518, -1, -1, 1535, 1536, + -1, -1, 525, 526, -1, -1, -1, 530, 531, 532, + 533, 534, 535, -1, 537, -1, 539, -1, 541, 542, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 72, 73, 74, -1, -1, 8, -1, -1, 80, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 762, 763, - -1, -1, 766, 767, 768, -1, 770, 771, -1, -1, - -1, -1, -1, -1, -1, 779, -1, -1, 782, 783, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 798, -1, -1, -1, 217, -1, - 219, -1, 221, -1, 1500, 809, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - 834, -1, -1, -1, -1, -1, -1, 841, 842, -1, - -1, -1, -1, 847, -1, 1541, 178, 1543, -1, 1545, - 182, -1, -1, -1, 186, 187, 188, 189, 190, -1, - 864, -1, 194, 867, -1, -1, 1562, 1563, 1564, 1565, - 1566, 1567, -1, -1, -1, -1, 208, 209, -1, -1, - -1, 213, 886, -1, 888, -1, 218, 891, -1, -1, - -1, 223, -1, 225, -1, -1, -1, -1, -1, -1, - 904, -1, 906, -1, 908, -1, 910, -1, -1, -1, - -1, 915, -1, -1, -1, -1, 920, -1, -1, -1, - -1, -1, 926, -1, 928, 929, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 939, 199, 200, 201, 202, + -1, -1, -1, -1, 1571, -1, 559, 560, 561, 562, + 563, 564, -1, -1, -1, 568, 569, 570, 571, 572, + 573, 574, 575, 576, -1, -1, -1, 580, -1, 582, + 583, -1, -1, -1, 587, 588, 589, -1, -1, 592, + 593, 594, 595, 596, -1, -1, 599, 600, 601, 602, + -1, 604, -1, -1, 607, 12, 13, -1, -1, -1, + -1, -1, -1, -1, -1, 618, -1, -1, -1, -1, + -1, 624, 625, -1, 627, 628, -1, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 971, -1, -1, - -1, -1, -1, -1, -1, 979, 980, 981, -1, 983, - -1, -1, -1, -1, -1, -1, -1, 991, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1005, -1, -1, -1, -1, 1010, 8, -1, -1, - -1, -1, -1, -1, -1, 1019, -1, -1, -1, -1, - -1, 1025, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1035, 1036, 1037, 1038, -1, -1, 1041, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 12, 13, - -1, -1, -1, -1, -1, -1, 243, 229, -1, -1, - -1, -1, 234, -1, -1, -1, 238, -1, -1, -1, - -1, -1, -1, -1, -1, 247, 263, 264, 265, -1, - -1, -1, 269, -1, -1, -1, -1, -1, -1, -1, - -1, 1095, -1, -1, -1, -1, -1, -1, -1, -1, - 1796, -1, 1798, 1107, 1800, 1109, 8, 1111, -1, 1113, - 297, -1, -1, -1, 1810, 1811, 1812, 1813, 1814, -1, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 1135, -1, -1, 98, -1, 100, -1, -1, -1, - -1, 105, 106, 107, 108, -1, 110, 111, 112, -1, - 12, 13, 116, -1, 326, -1, 328, -1, -1, -1, - -1, -1, -1, -1, 1168, -1, -1, -1, -1, -1, - -1, 1867, -1, 1177, 1178, 1871, 1180, 1181, -1, 1183, - 1184, 1185, -1, -1, 371, 372, -1, 1191, 8, -1, - -1, 155, 156, 157, -1, -1, -1, 384, 199, 200, + 213, 644, 115, -1, -1, 218, 649, 650, -1, 652, + 653, -1, -1, -1, -1, 6, -1, -1, 131, -1, + 663, 664, -1, -1, -1, 668, 139, 140, 141, -1, + -1, -1, 145, 146, 147, 148, -1, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, -1, 99, -1, 101, -1, 1713, -1, -1, 106, + 107, 108, 109, -1, 111, 112, 113, -1, -1, -1, + 117, -1, -1, -1, -1, -1, 1733, -1, -1, 230, + -1, -1, -1, -1, 235, -1, -1, -1, 239, -1, + 733, -1, -1, 1750, -1, -1, 115, -1, 249, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 156, + 157, 158, 245, -1, 227, -1, 6, -1, -1, -1, + -1, -1, 765, 766, -1, -1, 769, 770, 771, -1, + 773, 774, 265, 266, 267, -1, 1793, -1, 271, 782, + -1, -1, 785, 786, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1813, -1, -1, 802, + -1, -1, -1, -1, -1, -1, 299, -1, -1, -1, + 813, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 227, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 838, -1, -1, -1, 218, + -1, -1, 845, 846, -1, -1, -1, -1, 851, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, 1218, -1, 217, -1, -1, 1223, - -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 1929, -1, 422, 98, 1933, 100, -1, - -1, -1, -1, 105, 106, 107, 108, -1, 110, 111, - 112, -1, -1, -1, 116, -1, -1, -1, -1, -1, - -1, 1265, 226, 1959, -1, -1, -1, -1, -1, -1, - -1, -1, 1276, 1277, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 458, 1291, 1292, -1, - -1, -1, -1, 155, 156, 157, -1, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, -1, -1, -1, - -1, -1, -1, -1, 496, -1, -1, -1, -1, -1, - -1, -1, 2028, 2029, -1, -1, -1, 1341, 1342, 1343, - -1, -1, -1, -1, -1, -1, -1, -1, 1352, -1, - 1354, -1, -1, 8, -1, -1, -1, -1, -1, -1, - -1, 1365, -1, -1, 226, -1, 538, 539, -1, -1, - -1, -1, -1, 1377, -1, -1, -1, -1, 1382, 199, + 211, 212, 213, -1, -1, 868, -1, 218, 871, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 373, 374, -1, -1, -1, -1, 6, 890, -1, 892, + -1, -1, 895, 386, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 908, -1, 910, -1, 912, + -1, 914, -1, -1, -1, -1, 919, -1, -1, -1, + -1, 924, -1, -1, -1, -1, -1, 930, -1, 932, + 933, 424, -1, -1, -1, -1, -1, -1, -1, -1, + 943, -1, 1959, 1960, 1961, 1962, 1963, -1, -1, 460, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, -1, - -1, -1, -1, -1, 1408, 1409, 1410, -1, -1, -1, - -1, -1, 584, 585, 586, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 596, 597, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1440, -1, -1, -1, - -1, -1, -1, 615, -1, -1, -1, -1, -1, -1, - 622, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1464, -1, -1, -1, -1, -1, -1, -1, -1, 641, - -1, -1, -1, -1, 1478, -1, -1, -1, -1, 1483, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 661, - -1, -1, -1, -1, 1498, 1499, -1, -1, -1, -1, - -1, 1505, 1506, -1, -1, -1, 1510, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1521, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1531, 1532, 1533, - -1, 1535, -1, -1, -1, -1, 723, -1, -1, -1, - 727, -1, -1, 1547, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, 1567, -1, -1, 1570, -1, -1, -1, - -1, -1, -1, 1577, 1578, 1579, 1580, 1581, 1582, 1583, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1593, - -1, -1, -1, -1, 766, -1, -1, -1, 770, -1, - -1, -1, 4, 5, -1, -1, -1, -1, -1, 1613, - 782, 783, -1, 12, 13, -1, -1, -1, -1, -1, - -1, 229, -1, 810, -1, -1, 234, -1, -1, -1, - 238, -1, 1636, 1637, -1, -1, -1, -1, -1, 247, - 1644, -1, 44, 45, 46, 47, 48, 49, 50, 51, - 52, -1, -1, -1, -1, 57, 58, 59, 60, -1, - -1, -1, 834, 65, 66, 67, -1, -1, 70, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1682, 81, - -1, -1, -1, -1, -1, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 1700, -1, -1, 98, - -1, 100, -1, -1, -1, 1709, 105, 106, 107, 108, - -1, 110, 111, 112, 886, -1, 888, 116, -1, 891, - 1724, -1, 1726, -1, -1, 1729, -1, -1, -1, -1, - -1, -1, 904, -1, 906, -1, 908, -1, 910, -1, - -1, -1, 1746, 915, 114, -1, -1, -1, 920, -1, - -1, -1, -1, -1, -1, 942, 155, 156, 157, 946, - 1764, -1, -1, 950, -1, 1769, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 179, 180, 181, - -1, -1, -1, -1, -1, 1789, -1, -1, -1, 191, - -1, 193, 1796, -1, 1798, -1, 1800, -1, -1, -1, - -1, -1, -1, -1, -1, 1809, 993, -1, -1, -1, - -1, 983, -1, -1, -1, 1819, 1820, 1821, 1822, 1823, - 1824, -1, -1, -1, -1, -1, -1, 226, -1, 199, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, 975, -1, 12, 13, -1, -1, -1, -1, + 983, 984, 985, -1, 987, -1, -1, -1, -1, -1, + -1, -1, 995, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1009, -1, -1, -1, + -1, 1014, -1, -1, -1, -1, -1, -1, -1, -1, + 1023, -1, -1, -1, -1, -1, 1029, -1, -1, -1, + 541, 542, 2049, -1, -1, -1, 1039, 1040, 1041, 1042, + -1, -1, 1045, -1, -1, 7, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, + -1, 99, -1, 101, -1, 12, 13, -1, 106, 107, + 108, 109, -1, 111, 112, 113, 587, 588, 589, 117, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 1847, 1848, -1, -1, 217, 1852, -1, - 458, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1864, -1, -1, 1035, 1036, 1037, 1038, -1, -1, -1, - -1, 1875, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 1079, 1080, -1, 1082, -1, 1084, 1085, 226, - -1, 1088, 1089, 1090, 1091, -1, -1, 1911, -1, -1, - 1097, -1, -1, 1917, -1, -1, -1, -1, -1, -1, - 12, 13, 1926, 1095, -1, -1, -1, -1, -1, -1, - 538, 539, -1, -1, -1, -1, 1940, -1, -1, 1943, - -1, -1, 1946, -1, -1, -1, 1950, -1, -1, -1, - -1, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, - 1964, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1974, -1, -1, 1977, -1, -1, 584, 585, 586, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, -1, -1, -1, 98, 615, 100, 1196, - 1197, 1198, -1, 105, 106, 107, 108, -1, 110, 111, - 112, -1, -1, 2027, 116, 1212, -1, -1, -1, -1, - -1, -1, -1, 641, -1, -1, -1, -1, -1, -1, - -1, 2045, -1, 2047, 2048, 2049, 2050, 2051, -1, -1, - -1, -1, -1, 661, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 155, 156, 157, -1, 199, 200, 201, + 210, 211, 212, 213, -1, -1, 1099, -1, 218, -1, + -1, -1, -1, -1, -1, -1, -1, 618, 1111, -1, + 1113, -1, 1115, -1, 1117, -1, -1, -1, 156, 157, + 158, -1, -1, -1, -1, -1, 12, 13, -1, -1, + -1, -1, -1, 644, -1, -1, 1139, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, -1, 99, 664, 101, -1, -1, -1, -1, 106, + 107, 108, 109, -1, 111, 112, 113, -1, -1, 1172, + 117, -1, -1, -1, -1, -1, -1, -1, 1181, 1182, + -1, 1184, 1185, -1, 1187, 1188, 1189, -1, -1, 227, + -1, -1, 1195, -1, -1, -1, -1, -1, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 156, + 157, 158, -1, 99, -1, 101, -1, -1, -1, 1222, + 106, 107, 108, 109, 1227, 111, 112, 113, -1, 12, + 13, 117, -1, 726, -1, -1, -1, 730, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 2091, 2092, -1, - -1, 1278, 224, -1, 226, -1, -1, -1, 2102, 2103, - 2104, 2105, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1302, -1, -1, -1, -1, - -1, 1308, -1, -1, -1, -1, -1, -1, -1, 1316, - -1, -1, 1319, 1320, 226, -1, -1, 1324, 1325, -1, - 1327, -1, 1329, -1, 1331, -1, 1333, 1334, 1335, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 766, -1, - -1, -1, 770, -1, -1, 1352, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 1367, -1, -1, -1, 217, -1, -1, -1, 1375, -1, - -1, 626, -1, 226, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1377, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 834, -1, -1, -1, - -1, 224, -1, 226, 669, 670, 671, 672, 673, 674, - 675, 676, 677, 678, 679, -1, 681, 682, 683, 684, - 685, 686, 687, -1, -1, -1, 691, 692, 693, -1, - -1, -1, 697, 698, -1, 700, -1, -1, -1, -1, - 705, 706, 707, -1, 709, -1, -1, -1, 886, -1, - 888, 716, 717, 891, -1, -1, -1, -1, -1, -1, - 1477, -1, -1, -1, -1, -1, 904, -1, 906, 734, - 908, -1, 910, 1490, -1, -1, -1, 915, -1, -1, - -1, -1, 920, 3, 4, -1, -1, -1, -1, 9, - 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1531, - 1532, -1, -1, 53, 54, 55, 56, -1, -1, -1, - -1, 61, -1, -1, 1561, 983, -1, -1, -1, -1, - -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, - 80, -1, -1, -1, -1, 1567, -1, -1, -1, -1, - 1587, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1597, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1607, -1, -1, -1, -1, 1612, -1, 1035, 1036, 1037, - 1038, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 1638, -1, -1, -1, -1, 224, -1, 226, -1, - -1, 896, -1, -1, -1, -1, 12, 13, -1, -1, - -1, -1, -1, -1, 1661, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1095, 178, -1, - -1, -1, 182, -1, -1, -1, 186, 187, 188, 189, - 190, -1, -1, -1, 194, -1, -1, -1, -1, -1, - 1697, -1, -1, -1, -1, -1, -1, -1, 208, 209, - -1, -1, -1, 213, -1, -1, -1, -1, 218, -1, - -1, 21, 22, 223, -1, 225, -1, 1709, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, 98, -1, 100, -1, -1, 1729, -1, 105, - 106, 107, 108, -1, 110, 111, 112, -1, -1, -1, - 116, -1, -1, -1, 1746, -1, -1, -1, -1, -1, - -1, 1768, -1, -1, -1, -1, -1, -1, 1775, 1776, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1786, - -1, -1, -1, -1, -1, 1040, -1, -1, -1, 155, - 156, 157, -1, -1, -1, -1, -1, 1789, 1805, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 12, - 13, -1, 122, -1, -1, -1, -1, 1809, 1073, 1074, - -1, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, -1, -1, -1, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 226, 1868, 172, -1, -1, -1, -1, -1, 178, 179, - -1, -1, -1, -1, 184, 185, -1, -1, -1, -1, - 1887, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, -1, -1, -1, 98, -1, 100, -1, -1, - -1, -1, 105, 106, 107, 108, -1, 110, 111, 112, - -1, -1, -1, 116, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, -1, - -1, 226, -1, -1, -1, -1, -1, -1, -1, 1377, - -1, -1, 155, 156, 157, -1, -1, -1, -1, -1, - -1, -1, -1, 1955, 1956, 1957, 1958, 1959, -1, 1976, - -1, 1226, -1, -1, -1, -1, -1, 1232, 1233, 1234, - 1235, 1236, -1, 1238, -1, 1240, 1241, -1, 1243, 1244, - -1, -1, 1247, 1248, 1249, -1, -1, -1, -1, 1254, - -1, -1, -1, -1, 314, -1, -1, 317, 318, 319, - 320, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 226, -1, -1, -1, 337, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, 3, 4, 5, 217, -1, 219, 9, - 10, 11, -1, 2045, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, -1, -1, -1, - -1, 2088, -1, -1, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, -1, 1531, 1532, 65, 66, 67, -1, -1, - 70, -1, 72, 73, 74, -1, -1, -1, -1, -1, - 80, 81, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1387, -1, -1, -1, -1, -1, 4, 5, - -1, -1, 452, -1, -1, -1, -1, -1, 1403, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, 1420, -1, 217, -1, -1, - 1425, -1, -1, -1, -1, -1, 226, -1, 44, 45, - 46, 47, 48, 49, 50, 51, 52, -1, -1, -1, - -1, 57, 58, 59, 60, -1, 12, 13, -1, 65, - 66, 67, 1457, 1458, 70, -1, 1461, 1462, -1, -1, - -1, 171, -1, -1, -1, 81, -1, -1, 178, 179, - 180, 181, 182, -1, -1, -1, 186, 187, 188, 189, - 190, 191, -1, 193, 194, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 208, 209, - -1, -1, -1, 213, -1, -1, -1, -1, 218, -1, - 220, -1, 222, 223, -1, 225, -1, 227, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, 98, -1, 100, -1, -1, -1, -1, 105, - 106, 107, 108, -1, 110, 111, 112, -1, -1, -1, - 116, 1729, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 179, 180, 181, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 191, -1, 193, 194, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 155, - 156, 157, -1, -1, -1, 1600, 1601, -1, -1, 1604, - 1605, -1, -1, -1, -1, 1610, 1611, -1, -1, -1, - -1, 1789, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3, 4, -1, -1, -1, -1, 9, 10, 11, - -1, 1809, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 226, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 53, 54, 55, 56, -1, -1, -1, -1, 61, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, - -1, -1, 84, -1, -1, 87, -1, -1, 90, -1, - 92, 1716, 1717, -1, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, 111, - -1, -1, 217, -1, -1, -1, 118, 119, 120, 121, - 122, 226, -1, 125, 126, 127, 128, 129, -1, -1, - 132, -1, -1, 135, -1, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, 1955, 1956, 1957, - 1958, 1959, 226, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, - 182, -1, -1, -1, 186, 187, 188, 189, 190, -1, - -1, -1, 194, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 208, 209, -1, -1, - -1, 213, -1, -1, -1, -1, 218, -1, -1, -1, - -1, 223, -1, 225, 226, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3, 4, -1, - -1, -1, -1, 9, 10, 11, -1, 2045, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 53, 54, 55, - 56, -1, -1, -1, -1, 61, -1, -1, -1, -1, - -1, 12, 13, -1, -1, -1, 72, 73, 74, -1, - -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, - -1, 87, -1, -1, 90, -1, 92, -1, -1, -1, - -1, -1, -1, -1, -1, 1015, 1016, -1, -1, -1, - -1, 1021, 1022, -1, -1, 111, -1, -1, -1, -1, - -1, -1, 118, 119, 120, 121, 122, -1, -1, 125, - 126, 127, 128, 129, -1, -1, 132, -1, -1, 135, + 212, 213, -1, -1, -1, -1, 218, -1, 769, -1, + -1, -1, 773, -1, -1, -1, 1269, -1, -1, -1, + 156, 157, 158, -1, -1, -1, -1, 1280, 1281, -1, + 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1295, 1296, -1, -1, -1, -1, -1, -1, + -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, -1, 99, -1, 101, -1, + -1, 814, -1, 106, 107, 108, 109, 838, 111, 112, + 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, + -1, 227, 1345, 1346, 1347, -1, -1, -1, -1, -1, + -1, 12, 13, 1356, -1, 1358, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1369, -1, -1, -1, + -1, -1, -1, 156, 157, 158, -1, -1, 1381, 890, + -1, 892, -1, 1386, 895, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 908, -1, 910, + -1, 912, -1, 914, -1, -1, -1, -1, 919, 1412, + 1413, 1414, -1, 924, -1, -1, -1, -1, -1, -1, -1, -1, -1, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, -1, -1, -1, 98, -1, 100, - -1, -1, -1, -1, 105, 106, 107, 108, -1, 110, - 111, 112, -1, -1, -1, 116, -1, -1, -1, -1, - -1, -1, 178, -1, -1, -1, 182, -1, -1, -1, - 186, 187, 188, 189, 190, -1, -1, -1, 194, -1, + 91, 92, 93, 94, -1, -1, -1, -1, 99, -1, + 101, 1444, -1, -1, 227, 106, 107, 108, 109, -1, + 111, 112, 113, 946, -1, -1, 117, 950, -1, -1, + -1, 954, -1, -1, -1, 1468, -1, -1, -1, 8, + -1, -1, -1, -1, -1, -1, 987, -1, -1, 1482, + -1, -1, -1, -1, 1487, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 156, 157, 158, -1, 1502, + 1503, -1, -1, -1, 997, -1, 1509, 1510, -1, -1, + -1, 1514, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1525, -1, -1, -1, -1, -1, 1039, 1040, + 1041, 1042, 1535, 1536, 1537, -1, 1539, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1551, -1, + -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 227, -1, 1571, -1, + -1, 1574, -1, -1, -1, -1, -1, -1, 1581, 1582, + 1583, 1584, 1585, 1586, 1587, -1, -1, -1, 1099, -1, + 1083, 1084, -1, 1086, 1597, 1088, 1089, -1, -1, 1092, + 1093, 1094, 1095, -1, -1, -1, -1, -1, 1101, -1, + -1, -1, -1, -1, 1617, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, -1, -1, 1640, 1641, 99, + -1, 101, -1, -1, -1, 1648, 106, 107, 108, 109, + -1, 111, 112, 113, -1, -1, -1, 117, -1, 12, + 13, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, 1686, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 8, 156, 157, 158, -1, + -1, 1704, -1, -1, -1, -1, -1, 1200, 1201, 1202, + 1713, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1216, -1, 1728, -1, 1730, -1, -1, + 1733, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, -1, 99, 1750, 101, -1, + -1, -1, -1, 106, 107, 108, 109, -1, 111, 112, + 113, -1, -1, -1, 117, 1768, -1, 227, -1, -1, + 1773, -1, -1, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, 1282, + 1793, 218, -1, -1, -1, -1, -1, 1800, 225, 1802, + 227, 1804, -1, 156, 157, 158, -1, -1, -1, -1, + 1813, 8, -1, 1306, -1, -1, -1, -1, -1, 1312, + 1823, 1824, 1825, 1826, 1827, 1828, -1, 1320, -1, -1, + 1323, 1324, -1, -1, -1, 1328, 1329, 8, 1331, -1, + 1333, -1, 1335, -1, 1337, 1338, 1339, -1, 1851, 1852, + -1, -1, -1, 1856, -1, -1, -1, -1, -1, -1, + -1, 8, -1, 1356, -1, 1868, -1, -1, -1, -1, + 1381, -1, -1, -1, 227, -1, 1879, -1, 1371, -1, + -1, -1, -1, -1, -1, -1, 1379, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 1915, -1, -1, -1, -1, -1, 1921, -1, + -1, -1, -1, -1, -1, -1, -1, 1930, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 208, 209, 155, 156, 157, 213, -1, -1, - -1, -1, 218, -1, 2079, -1, -1, 223, -1, -1, - 226, 3, 4, 5, -1, -1, -1, 9, 10, 11, - -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - -1, -1, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - -1, -1, -1, 65, 66, 67, -1, -1, 70, -1, - 72, 73, 74, -1, -1, 1215, 1216, -1, 80, 81, - 1220, 1221, 84, -1, -1, 87, -1, -1, 90, -1, - 92, -1, -1, -1, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, 111, - -1, -1, 217, -1, -1, -1, 118, 119, 120, 121, - 122, 226, -1, 125, 126, 127, 128, 129, -1, -1, - 132, -1, -1, 135, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, -1, - -1, 226, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 178, 179, 180, 181, - 182, -1, -1, -1, 186, 187, 188, 189, 190, 191, - -1, 193, 194, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 208, 209, -1, -1, - -1, 213, -1, -1, -1, -1, 218, -1, 3, 4, - 5, 223, -1, 225, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, -1, -1, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, - 65, 66, 67, -1, -1, 70, -1, 72, 73, 74, - -1, -1, -1, -1, -1, 80, 81, -1, -1, 84, - -1, -1, 87, -1, -1, 90, -1, 92, -1, -1, - -1, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, 111, -1, -1, 217, - -1, -1, -1, 118, 119, 120, 121, 122, 226, -1, - 125, 126, 127, 128, 129, -1, -1, 132, -1, -1, - 135, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, -1, -1, -1, -1, -1, -1, -1, 226, -1, + -1, 1944, -1, -1, 1947, -1, -1, 1950, -1, -1, + -1, 1954, -1, -1, -1, -1, 1959, 1960, 1961, 1962, + 1963, 1964, 1965, 1966, 1967, 1968, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1978, -1, -1, 1981, -1, + -1, -1, -1, -1, -1, 8, -1, -1, 1481, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 178, 179, 180, 181, 182, -1, -1, - -1, 186, 187, 188, 189, 190, 191, -1, 193, 194, + -1, 1494, -1, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, 1535, 1536, -1, -1, 2031, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, -1, -1, -1, 2049, 218, 2051, 2052, + 2053, 2054, 2055, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, 1565, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 629, -1, -1, -1, -1, + -1, -1, 2095, 2096, -1, -1, -1, -1, 1591, -1, + -1, -1, -1, 2106, 2107, 2108, 2109, -1, 1601, -1, + -1, -1, 21, 22, -1, -1, -1, -1, 1611, -1, + -1, -1, -1, 1616, -1, -1, -1, -1, 672, 673, + 674, 675, 676, 677, 678, 679, 680, 681, 682, -1, + 684, 685, 686, 687, 688, 689, 690, -1, -1, 1642, + 694, 695, 696, -1, -1, -1, 700, 701, -1, 703, + -1, -1, -1, -1, 708, 709, 710, -1, 712, -1, + -1, -1, 1665, -1, -1, 719, 720, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, 737, -1, 218, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1701, -1, + -1, -1, -1, -1, 123, -1, -1, -1, -1, -1, + -1, -1, 1733, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, 156, -1, -1, + -1, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, -1, -1, 173, -1, -1, -1, -1, -1, + 179, 180, -1, -1, -1, -1, 185, 186, -1, 1772, + -1, -1, 1793, -1, -1, -1, 1779, 1780, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1790, -1, -1, + -1, -1, 1813, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1809, -1, -1, 3, + 4, 5, -1, -1, -1, 9, 10, 11, -1, -1, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, -1, -1, -1, 900, -1, -1, -1, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, -1, 1872, + -1, 65, 66, 67, -1, -1, 70, -1, 72, 73, + 74, -1, -1, -1, -1, -1, 80, 81, 1891, -1, + -1, -1, -1, -1, -1, -1, -1, 316, -1, -1, + 319, 320, 321, 322, -1, -1, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 208, 209, -1, -1, -1, 213, -1, - -1, -1, -1, 218, -1, 3, 4, 5, 223, -1, - 225, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 339, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1959, 1960, + 1961, 1962, 1963, -1, -1, -1, 44, 45, 46, 47, + 48, 49, 50, 51, 52, -1, -1, -1, -1, 57, + 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, + -1, -1, 70, -1, -1, -1, -1, 1980, 172, -1, + -1, -1, -1, 81, -1, 179, 180, 181, 182, 183, + 1044, -1, -1, 187, 188, 189, 190, 191, 192, -1, + 194, 195, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + 214, -1, -1, 1077, 1078, 219, -1, 221, 2049, 223, + 224, -1, 226, -1, 228, 454, -1, -1, -1, -1, + 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, + -1, -1, 180, 181, 182, -1, -1, -1, -1, 2092, + 53, 54, 55, 56, 192, -1, 194, 195, 61, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, + 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, + -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, + -1, -1, -1, -1, -1, 98, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 112, + -1, -1, -1, -1, -1, -1, 119, 120, 121, 122, + 123, -1, -1, 126, 127, 128, 129, 130, -1, -1, + 133, -1, -1, 136, -1, -1, 1230, -1, -1, -1, + -1, -1, 1236, 1237, 1238, 1239, 1240, -1, 1242, -1, + 1244, 1245, -1, 1247, 1248, -1, -1, 1251, 1252, 1253, + -1, -1, -1, -1, 1258, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 179, -1, -1, -1, + 183, -1, -1, -1, 187, 188, 189, 190, 191, -1, + -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, 214, -1, -1, -1, -1, 219, -1, -1, -1, + -1, 224, -1, 226, 227, 3, 4, -1, -1, -1, + -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, - -1, -1, -1, -1, -1, -1, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, -1, -1, -1, 65, 66, 67, - -1, -1, 70, -1, 72, 73, 74, -1, 3, 4, - 5, -1, 80, 81, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, -1, -1, -1, -1, -1, -1, -1, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, - 65, 66, 67, -1, -1, 70, -1, 72, 73, 74, - -1, -1, -1, -1, -1, 80, 81, -1, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - 178, 179, 180, 181, 182, 226, -1, -1, 186, 187, - 188, 189, 190, 191, -1, 193, 194, -1, -1, -1, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 53, 54, 55, 56, -1, + -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 72, 73, 74, 1391, -1, -1, + -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, + -1, -1, 90, 1407, 92, -1, -1, -1, -1, -1, + 98, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1424, -1, -1, -1, 112, 1429, -1, -1, -1, -1, + -1, 119, 120, 121, 122, 123, -1, -1, 126, 127, + 128, 129, 130, -1, -1, 133, -1, -1, 136, -1, + -1, -1, -1, -1, -1, -1, -1, 1461, 1462, -1, + -1, 1465, 1466, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, -1, + 227, 179, -1, -1, -1, 183, -1, -1, -1, 187, + 188, 189, 190, 191, 4, 5, -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 208, 209, -1, -1, -1, 213, -1, -1, -1, -1, - 218, -1, -1, -1, -1, 223, -1, 225, -1, -1, - -1, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, -1, -1, 178, 179, 180, 181, 182, 226, -1, - -1, 186, 187, 188, 189, 190, 191, -1, 193, 194, + -1, 209, 210, -1, -1, -1, 214, -1, -1, -1, + -1, 219, -1, -1, -1, -1, 224, -1, -1, 227, + -1, -1, -1, -1, 44, 45, 46, 47, 48, 49, + 50, 51, 52, -1, -1, -1, -1, 57, 58, 59, + 60, -1, -1, -1, -1, 65, 66, 67, -1, -1, + 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 81, -1, -1, -1, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + 1604, 1605, -1, 218, 1608, 1609, -1, -1, -1, -1, + 1614, 1615, 227, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4, 5, -1, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 1019, 1020, 227, -1, -1, -1, 1025, 1026, -1, -1, + -1, -1, 44, 45, 46, 47, 48, 49, 50, 51, + 52, -1, -1, -1, -1, 57, 58, 59, 60, -1, + 180, 181, 182, 65, 66, 67, -1, -1, 70, -1, + -1, -1, 192, -1, 194, 195, -1, -1, -1, 81, + -1, -1, -1, -1, -1, -1, -1, 3, 4, 5, + -1, -1, -1, 9, 10, 11, 1720, 1721, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, -1, -1, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, -1, -1, -1, 65, + 66, 67, -1, -1, 70, -1, 72, 73, 74, -1, + -1, -1, -1, -1, 80, 81, -1, -1, 84, -1, + -1, 87, -1, -1, 90, -1, 92, -1, 180, 181, + 182, -1, 98, -1, -1, -1, -1, -1, -1, -1, + 192, -1, 194, -1, -1, -1, 112, -1, -1, -1, + -1, -1, -1, 119, 120, 121, 122, 123, -1, -1, + 126, 127, 128, 129, 130, -1, -1, 133, -1, -1, + 136, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1219, 1220, -1, -1, -1, 1224, 1225, -1, -1, -1, + -1, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, 179, 180, 181, 182, 183, 227, -1, + -1, 187, 188, 189, 190, 191, 192, -1, 194, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 208, 209, -1, -1, -1, 213, -1, - -1, -1, -1, 218, -1, 3, 4, 5, 223, -1, - 225, 9, 10, 11, -1, -1, 14, 15, 16, 17, + -1, -1, -1, 209, 210, -1, -1, -1, 214, -1, + -1, -1, -1, 219, -1, 3, 4, 5, 224, -1, + 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, - -1, -1, -1, -1, -1, -1, 44, 45, 46, 47, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, -1, -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 12, 13, -1, 65, 66, 67, + 58, 59, 60, 61, -1, -1, -1, 65, 66, 67, -1, -1, 70, -1, 72, 73, 74, -1, -1, -1, - -1, -1, 80, 81, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, -1, - -1, 226, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, 221, -1, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, - 98, -1, 100, -1, -1, -1, -1, 105, 106, 107, - 108, -1, 110, 111, 112, -1, -1, -1, 116, -1, + -1, -1, 80, 81, -1, -1, 84, -1, -1, 87, + -1, -1, 90, -1, 92, -1, -1, -1, -1, -1, + 98, -1, 5, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 112, -1, -1, -1, -1, -1, + -1, 119, 120, 121, 122, 123, -1, -1, 126, 127, + 128, 129, 130, -1, -1, 133, -1, -1, 136, -1, + -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, + -1, -1, -1, -1, 57, 58, 59, 60, -1, 2083, + -1, -1, 65, 66, 67, -1, -1, 70, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 81, -1, + -1, 179, 180, 181, 182, 183, -1, -1, -1, 187, + 188, 189, 190, 191, 192, -1, 194, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 178, 179, 180, 181, 182, -1, -1, -1, 186, 187, - 188, 189, 190, 191, -1, 193, 194, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 155, 156, 157, - 208, 209, -1, -1, -1, 213, -1, -1, -1, -1, - 218, -1, 3, 4, 5, 223, -1, 225, 9, 10, - 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 53, 54, 55, 56, -1, -1, 226, -1, - 61, -1, -1, -1, -1, -1, 12, 13, -1, -1, - -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, - -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, - -1, 92, -1, -1, -1, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - 111, -1, -1, 217, -1, -1, -1, 118, 119, 120, - 121, 122, 226, -1, 125, 126, 127, 128, 129, -1, - -1, 132, -1, -1, 135, -1, -1, -1, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, 98, -1, 100, -1, -1, -1, -1, 105, - 106, 107, 108, -1, 110, 111, 112, -1, -1, -1, - 116, -1, -1, -1, -1, -1, -1, 178, -1, -1, - -1, 182, -1, -1, -1, 186, 187, 188, 189, 190, - -1, -1, -1, 194, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 208, 209, 155, - 156, 157, 213, -1, -1, -1, -1, 218, -1, 3, - 4, 5, 223, -1, 225, 9, 10, 11, -1, -1, + -1, 209, 210, -1, -1, -1, 214, -1, -1, -1, + -1, 219, -1, 3, 4, 5, 224, -1, 226, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 53, 54, 55, 56, 180, 181, 182, + -1, 61, -1, -1, -1, -1, -1, 12, 13, 192, + -1, 194, 72, 73, 74, -1, -1, -1, -1, -1, + 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, + 90, -1, 92, -1, -1, -1, -1, -1, 98, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 112, -1, -1, -1, -1, -1, -1, 119, + 120, 121, 122, 123, -1, -1, 126, 127, 128, 129, + 130, -1, -1, 133, -1, -1, 136, -1, -1, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + -1, -1, -1, -1, 99, -1, 101, -1, -1, -1, + -1, 106, 107, 108, 109, -1, 111, 112, 113, -1, + -1, -1, 117, -1, -1, -1, -1, -1, -1, 179, + -1, -1, -1, 183, -1, -1, -1, 187, 188, 189, + 190, 191, -1, -1, -1, 195, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, + 210, 156, 157, 158, 214, -1, -1, -1, -1, 219, + -1, 3, 4, 5, 224, -1, 226, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, -1, -1, -1, 12, 13, + -1, -1, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + -1, -1, -1, 65, 66, 67, -1, -1, 70, -1, + 72, 73, 74, -1, -1, -1, -1, -1, 80, 81, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, -1, -1, -1, -1, -1, 227, -1, -1, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, -1, -1, -1, -1, 99, -1, 101, -1, -1, + -1, -1, 106, 107, 108, 109, -1, 111, 112, 113, + -1, -1, -1, 117, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + 134, -1, 218, -1, -1, -1, -1, -1, -1, -1, + -1, 227, -1, -1, -1, -1, -1, 179, 180, 181, + 182, 183, 156, 157, 158, 187, 188, 189, 190, 191, + 192, -1, 194, 195, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + -1, -1, 214, -1, -1, -1, -1, 219, -1, 3, + 4, 5, 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, 54, 55, 56, -1, -1, -1, -1, 61, -1, -1, - 226, -1, -1, 12, 13, -1, -1, -1, 72, 73, + -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, -1, - -1, -1, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, 111, -1, -1, - 217, -1, -1, -1, 118, 119, 120, 121, 122, 226, - -1, 125, 126, 127, 128, 129, -1, -1, 132, -1, - -1, 135, -1, -1, -1, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, - -1, 100, -1, -1, -1, -1, 105, 106, 107, 108, - -1, 110, 111, 112, -1, -1, -1, 116, -1, -1, - -1, -1, -1, -1, 178, -1, -1, -1, 182, -1, - -1, -1, 186, 187, 188, 189, 190, -1, -1, -1, - 194, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 208, 209, 155, 156, 157, 213, - -1, -1, -1, -1, 218, -1, 3, 4, -1, 223, - -1, 225, 9, 10, 11, -1, -1, 14, 15, 16, + -1, -1, -1, -1, 98, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 112, -1, + -1, -1, -1, -1, -1, 119, 120, 121, 122, 123, + -1, -1, 126, 127, 128, 129, 130, -1, -1, 133, + -1, -1, 136, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, -1, -1, + 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 179, -1, -1, -1, 183, + -1, -1, -1, 187, 188, 189, 190, 191, -1, -1, + -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + 214, -1, -1, -1, -1, 219, -1, 3, 4, 5, + 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, -1, -1, -1, -1, -1, -1, -1, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, -1, -1, -1, 65, + 66, 67, -1, -1, 70, -1, 72, 73, 74, -1, + 3, 4, 5, -1, 80, 81, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, -1, + -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, + -1, -1, 65, 66, 67, -1, -1, 70, -1, 72, + 73, 74, -1, -1, -1, -1, -1, 80, 81, -1, + -1, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, 179, 180, 181, 182, 183, 227, -1, + -1, 187, 188, 189, 190, 191, 192, -1, 194, 195, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, -1, -1, -1, 214, -1, + -1, -1, -1, 219, -1, -1, -1, -1, 224, -1, + 226, -1, -1, -1, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, -1, -1, 179, 180, 181, 182, + 183, 227, -1, -1, 187, 188, 189, 190, 191, 192, + -1, 194, 195, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, 214, -1, -1, -1, -1, 219, -1, 3, 4, + -1, 224, -1, 226, 9, 10, 11, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 53, 54, + 55, 56, -1, -1, -1, -1, 61, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, + -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, + -1, -1, 87, -1, -1, 90, -1, 92, -1, -1, + -1, -1, -1, 98, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 112, -1, -1, + -1, -1, -1, -1, 119, 120, 121, 122, 123, -1, + -1, 126, 127, 128, 129, 130, -1, -1, 133, -1, + -1, 136, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, -1, -1, -1, -1, -1, 227, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 179, -1, -1, -1, 183, -1, + -1, -1, 187, 188, 189, 190, 191, -1, -1, -1, + 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, + -1, -1, -1, -1, 219, -1, 3, 4, -1, 224, + -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, 54, 55, 56, - -1, -1, -1, -1, 61, -1, -1, 226, -1, -1, + -1, -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, - 5, -1, -1, -1, 111, -1, -1, -1, -1, -1, - -1, 118, 119, 120, 121, 122, -1, -1, 125, 126, - 127, 128, 129, -1, -1, 132, -1, -1, 135, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 44, - 45, 46, 47, 48, 49, 50, 51, 52, -1, -1, - -1, -1, 57, 58, 59, 60, -1, -1, -1, -1, - 65, 66, 67, -1, -1, 70, -1, -1, -1, -1, - -1, 178, -1, -1, -1, 182, 81, -1, -1, 186, - 187, 188, 189, 190, -1, -1, -1, 194, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 208, 209, -1, -1, -1, 213, -1, -1, -1, - -1, 218, -1, 3, 4, -1, 223, -1, 225, 9, - 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 53, 54, 55, 56, -1, -1, -1, - -1, 61, -1, -1, 179, 180, 181, -1, -1, -1, - -1, -1, 72, 73, 74, -1, 191, -1, 193, 194, - 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, - 90, -1, 92, -1, -1, -1, -1, -1, -1, -1, - 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 111, -1, -1, -1, -1, -1, -1, 118, 119, - 120, 121, 122, -1, -1, 125, 126, 127, 128, 129, - -1, -1, 132, -1, -1, 135, -1, -1, -1, 44, - 45, 46, 47, 48, 49, 50, 51, 52, -1, -1, - -1, -1, 57, 58, 59, 60, -1, -1, -1, -1, - 65, 66, 67, -1, -1, 70, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 81, -1, 178, -1, - -1, -1, 182, -1, -1, -1, 186, 187, 188, 189, - 190, -1, -1, -1, 194, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 208, 209, - -1, -1, -1, 213, -1, -1, -1, -1, 218, -1, - 3, 4, -1, 223, -1, 225, 9, 10, 11, -1, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 53, 54, 55, 56, 179, 180, 181, -1, 61, -1, - -1, -1, -1, -1, -1, -1, 191, -1, 193, 72, - 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, - -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, - -1, -1, -1, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, 111, -1, - -1, 217, -1, -1, -1, 118, 119, 120, 121, 122, - 226, -1, 125, 126, 127, 128, 129, -1, -1, 132, - -1, -1, 135, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, -1, -1, -1, -1, -1, -1, -1, - 226, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 178, -1, -1, -1, 182, - -1, -1, -1, 186, 187, 188, 189, 190, -1, -1, - -1, 194, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 208, 209, -1, -1, -1, - 213, -1, -1, -1, -1, 218, -1, 3, 4, -1, - 223, -1, 225, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 53, 54, 55, - 56, -1, -1, -1, -1, 61, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, - -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, - -1, 87, -1, -1, 90, -1, 92, -1, -1, -1, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, 111, -1, -1, 217, -1, - -1, -1, 118, 119, 120, 121, 122, 226, -1, 125, - 126, 127, 128, 129, -1, -1, 132, -1, -1, 135, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, -1, -1, 226, -1, -1, + -1, 98, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 112, -1, -1, -1, -1, + -1, -1, 119, 120, 121, 122, 123, -1, -1, 126, + 127, 128, 129, 130, -1, -1, 133, -1, -1, 136, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 178, -1, -1, -1, 182, -1, -1, -1, - 186, 187, 188, 189, 190, -1, -1, -1, 194, -1, + -1, -1, 179, -1, -1, -1, 183, -1, -1, -1, + 187, 188, 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 208, 209, -1, -1, -1, 213, -1, -1, - -1, -1, 218, -1, 3, 4, -1, 223, -1, 225, + -1, -1, 209, 210, -1, -1, -1, 214, -1, -1, + -1, -1, 219, -1, 3, 4, -1, 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, @@ -4239,42 +4199,64 @@ static const yytype_int16 yycheck[] = -1, -1, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, - -1, 90, -1, 92, -1, -1, -1, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, 111, -1, -1, 217, -1, -1, -1, 118, - 119, 120, 121, 122, 226, -1, 125, 126, 127, 128, - 129, -1, -1, 132, -1, -1, 135, 199, 200, 201, + -1, 90, -1, 92, -1, -1, -1, -1, -1, 98, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 112, -1, -1, -1, -1, -1, -1, + 119, 120, 121, 122, 123, -1, -1, 126, 127, 128, + 129, 130, -1, -1, 133, -1, -1, 136, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, -1, -1, -1, - -1, -1, -1, -1, 226, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 178, - -1, -1, -1, 182, -1, -1, -1, 186, 187, 188, - 189, 190, -1, -1, -1, 194, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 208, - 209, -1, -1, -1, 213, -1, -1, -1, -1, 218, - -1, 3, 4, -1, 223, -1, 225, 9, 10, 11, - -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 212, 213, -1, -1, -1, -1, 218, -1, -1, -1, + -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 179, -1, -1, -1, 183, -1, -1, -1, 187, 188, + 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, -1, 214, -1, -1, -1, -1, + 219, -1, 3, 4, -1, 224, -1, 226, 9, 10, + 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 53, 54, 55, 56, -1, -1, -1, -1, + 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, + -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, + -1, 92, -1, -1, -1, -1, -1, 98, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 53, 54, 55, 56, -1, -1, -1, -1, 61, + -1, 112, -1, -1, -1, -1, -1, -1, 119, 120, + 121, 122, 123, -1, -1, 126, 127, 128, 129, 130, + -1, -1, 133, -1, -1, 136, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, -1, -1, -1, -1, + -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + -1, -1, 183, -1, -1, -1, 187, 188, 189, 190, + 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, + -1, -1, -1, 214, -1, -1, -1, -1, 219, -1, + 3, 4, -1, 224, -1, 226, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, - -1, -1, 84, -1, -1, 87, -1, -1, 90, -1, - 92, -1, -1, -1, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, 111, - -1, -1, 217, -1, -1, -1, 118, 119, 120, 121, - 122, 226, -1, 125, 126, 127, 128, 129, -1, -1, - 132, -1, -1, 135, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, -1, - -1, 226, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, - 182, -1, -1, -1, 186, 187, 188, 189, 190, -1, - -1, -1, 194, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 208, 209, -1, -1, - -1, 213, -1, -1, -1, -1, 218, -1, 3, 4, - -1, 223, -1, 225, 9, 10, 11, -1, -1, 14, + 53, 54, 55, 56, -1, -1, -1, -1, 61, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, + 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, + -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, + -1, -1, -1, -1, -1, 98, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 112, + -1, -1, -1, -1, -1, -1, 119, 120, 121, 122, + 123, -1, -1, 126, 127, 128, 129, 130, -1, -1, + 133, -1, -1, 136, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, -1, -1, -1, -1, -1, -1, + -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 179, -1, -1, -1, + 183, -1, -1, -1, 187, 188, 189, 190, 191, -1, + -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, 214, -1, -1, -1, -1, 219, -1, 3, 4, + -1, 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, @@ -4283,41 +4265,63 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, -1, -1, - -1, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, 111, -1, -1, 217, - -1, -1, -1, 118, 119, 120, 121, 122, 226, -1, - 125, 126, 127, 128, 129, -1, -1, 132, -1, -1, - 135, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, -1, -1, -1, -1, -1, -1, -1, 226, -1, + -1, -1, -1, 98, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 112, -1, -1, + -1, -1, -1, -1, 119, 120, 121, 122, 123, -1, + -1, 126, 127, 128, 129, 130, -1, -1, 133, -1, + -1, 136, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 178, -1, -1, -1, 182, -1, -1, - -1, 186, 187, 188, 189, 190, -1, -1, -1, 194, + -1, -1, -1, -1, 179, -1, -1, -1, 183, -1, + -1, -1, 187, 188, 189, 190, 191, -1, -1, -1, + 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, + -1, -1, -1, -1, 219, -1, 3, 4, -1, 224, + -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 53, 54, 55, 56, + -1, -1, -1, -1, 61, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, + -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, + 87, -1, -1, 90, -1, 92, -1, -1, -1, -1, + -1, 98, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 112, -1, -1, -1, -1, + -1, -1, 119, 120, 121, 122, 123, -1, -1, 126, + 127, 128, 129, 130, -1, -1, 133, -1, -1, 136, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 208, 209, -1, -1, -1, 213, -1, - -1, -1, -1, 218, -1, 3, 4, -1, 223, -1, - 225, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 53, 54, 55, 56, -1, - -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, - -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, - -1, -1, 90, -1, 92, -1, -1, -1, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, 111, -1, -1, 217, -1, -1, -1, - 118, 119, 120, 121, 122, 226, -1, 125, 126, 127, - 128, 129, -1, -1, 132, -1, -1, 135, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, -1, -1, 226, -1, -1, -1, -1, + -1, -1, 179, -1, -1, -1, 183, -1, -1, -1, + 187, 188, 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 178, -1, -1, -1, 182, -1, -1, -1, 186, 187, - 188, 189, 190, -1, -1, -1, 194, -1, -1, -1, + -1, -1, 209, 210, -1, -1, -1, 214, -1, -1, + -1, -1, 219, -1, 3, 4, -1, 224, -1, 226, + 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 53, 54, 55, 56, -1, -1, + -1, -1, 61, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, + -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, + -1, 90, -1, 92, -1, -1, -1, -1, -1, 98, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 112, -1, -1, -1, -1, -1, -1, + 119, 120, 121, 122, 123, -1, -1, 126, 127, 128, + 129, 130, -1, -1, 133, -1, -1, 136, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, -1, -1, -1, -1, 218, -1, -1, -1, + -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 208, 209, -1, -1, -1, 213, -1, -1, -1, -1, - 218, -1, 3, 4, -1, 223, -1, 225, 9, 10, + 179, -1, -1, -1, 183, -1, -1, -1, 187, 188, + 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 209, 210, -1, -1, -1, 214, -1, -1, -1, -1, + 219, -1, 3, 4, -1, 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, @@ -4326,687 +4330,750 @@ static const yytype_int16 yycheck[] = 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, -1, -1, 90, - -1, 92, -1, -1, -1, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - 111, -1, -1, 217, -1, -1, -1, 118, 119, 120, - 121, 122, 226, -1, 125, 126, 127, 128, 129, -1, - -1, 132, -1, -1, 135, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, -1, - -1, -1, 226, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 178, -1, -1, - -1, 182, -1, -1, -1, 186, 187, 188, 189, 190, - -1, -1, -1, 194, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 208, 209, -1, - -1, -1, 213, -1, -1, -1, -1, 218, -1, 3, - 4, -1, 223, -1, 225, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, - 54, 55, 56, -1, -1, -1, -1, 61, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, - 74, -1, -1, -1, -1, -1, 80, -1, -1, -1, - 84, -1, -1, 87, -1, -1, 90, -1, 92, -1, - -1, -1, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, 111, -1, -1, - 217, -1, -1, -1, 118, 119, 120, 121, 122, 226, - -1, 125, 126, 127, 128, 129, -1, -1, 132, -1, - -1, 135, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, -1, -1, 226, + -1, 92, -1, -1, -1, -1, -1, 98, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 178, -1, -1, -1, 182, -1, - -1, -1, 186, 187, 188, 189, 190, -1, -1, -1, - 194, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 208, 209, -1, -1, -1, 213, - -1, -1, -1, -1, 218, -1, 3, 4, 5, 223, - -1, 225, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - -1, -1, -1, 12, 13, -1, -1, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, -1, -1, -1, 65, 66, - 67, -1, -1, 70, -1, 72, 73, 74, -1, -1, - -1, -1, -1, 80, 81, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, -1, - -1, -1, 226, -1, -1, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, - -1, 100, -1, -1, -1, -1, 105, 106, 107, 108, - -1, 110, 111, 112, -1, -1, -1, 116, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, 133, -1, 217, -1, -1, -1, - -1, -1, -1, -1, -1, 226, -1, -1, -1, -1, - -1, 178, 179, 180, 181, 182, 155, 156, 157, 186, - 187, 188, 189, 190, 191, -1, 193, 194, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 208, 209, -1, -1, -1, 213, 3, 4, -1, - -1, 218, -1, 9, 10, 11, 223, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 53, 54, 55, - 56, -1, -1, -1, -1, 61, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, - -1, -1, -1, -1, 80, -1, -1, -1, 84, -1, - -1, 87, -1, -1, 90, -1, 92, -1, -1, -1, - -1, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 111, -1, -1, -1, 217, - -1, -1, 118, 119, 120, 121, 122, 225, -1, 125, - 126, 127, 128, 129, -1, -1, 132, -1, -1, 135, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, -1, 225, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, 178, -1, -1, 217, 182, -1, -1, 221, - 186, 187, 188, 189, 190, -1, -1, -1, 194, -1, + -1, 112, -1, -1, -1, -1, -1, -1, 119, 120, + 121, 122, 123, -1, -1, 126, 127, 128, 129, 130, + -1, -1, 133, -1, -1, 136, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, -1, -1, -1, -1, + -1, -1, -1, 227, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 179, -1, + -1, -1, 183, -1, -1, -1, 187, 188, 189, 190, + 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 209, 210, + -1, -1, -1, 214, -1, -1, -1, -1, 219, -1, + 3, 4, -1, 224, -1, 226, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 208, 209, -1, -1, -1, 213, 3, 4, - -1, -1, 218, -1, 9, 10, 11, 223, -1, 14, + 53, 54, 55, 56, -1, -1, -1, -1, 61, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, + 73, 74, -1, -1, -1, -1, -1, 80, -1, -1, + -1, 84, -1, -1, 87, -1, -1, 90, -1, 92, + -1, -1, -1, -1, -1, 98, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 112, + -1, -1, -1, -1, -1, -1, 119, 120, 121, 122, + 123, -1, -1, 126, 127, 128, 129, 130, -1, -1, + 133, -1, -1, 136, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, -1, -1, -1, -1, -1, -1, + -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 179, -1, -1, -1, + 183, -1, -1, -1, 187, 188, 189, 190, 191, -1, + -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 210, -1, -1, + -1, 214, -1, -1, -1, -1, 219, -1, 3, 4, + -1, 224, -1, 226, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, -1, -1, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 53, 54, - 55, 56, 217, -1, -1, -1, 61, -1, -1, -1, - 225, -1, -1, -1, -1, 3, 4, 72, 73, 74, + 35, 36, -1, -1, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 53, 54, + 55, 56, 218, -1, -1, -1, 61, -1, -1, -1, + -1, 227, -1, -1, -1, 3, 4, 72, 73, 74, -1, 9, 10, 11, -1, 80, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, - -1, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 53, 54, 55, 56, 217, - -1, 219, -1, 61, -1, -1, 224, -1, -1, -1, + -1, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 53, 54, 55, 56, 218, + -1, -1, -1, 61, -1, -1, -1, -1, 227, -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, - -1, -1, 80, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, -1, 221, -1, -1, 224, -1, - -1, -1, -1, 178, -1, -1, -1, 182, -1, -1, - -1, 186, 187, 188, 189, 190, -1, -1, -1, 194, + -1, -1, 80, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, -1, -1, + 227, -1, -1, -1, 179, -1, -1, -1, 183, -1, + -1, -1, 187, 188, 189, 190, 191, -1, -1, -1, + 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, + -1, -1, -1, -1, 219, -1, -1, -1, -1, 224, + -1, 226, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, 179, -1, -1, -1, 183, -1, -1, 226, 187, + 188, 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 208, 209, -1, -1, -1, 213, -1, - -1, -1, -1, 218, 219, -1, -1, -1, 223, -1, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 178, -1, -1, -1, 182, 224, -1, -1, 186, 187, - 188, 189, 190, -1, -1, -1, 194, -1, -1, -1, + -1, 209, 210, -1, -1, -1, 214, -1, -1, -1, + -1, 219, -1, 3, 4, 5, 224, -1, 226, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, -1, -1, -1, + -1, -1, -1, -1, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, -1, -1, -1, 65, 66, 67, -1, -1, + 70, -1, 72, 73, 74, -1, -1, -1, -1, -1, + 80, 81, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, -1, -1, -1, -1, -1, 227, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, -1, -1, -1, -1, -1, 227, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, -1, -1, -1, -1, 218, -1, -1, -1, + -1, -1, -1, -1, -1, 227, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 179, + 180, 181, 182, 183, -1, -1, -1, 187, 188, 189, + 190, 191, 192, -1, 194, 195, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, + 210, -1, -1, -1, 214, 3, 4, -1, -1, 219, + -1, 9, 10, 11, 224, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 53, 54, 55, 56, -1, + -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 72, 73, 74, -1, -1, -1, + -1, -1, 80, -1, -1, -1, 84, -1, -1, 87, + -1, -1, 90, -1, 92, -1, -1, -1, -1, -1, + 98, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 112, -1, -1, -1, -1, -1, + -1, 119, 120, 121, 122, 123, -1, -1, 126, 127, + 128, 129, 130, -1, -1, 133, -1, -1, 136, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, -1, -1, 227, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 179, -1, -1, -1, 183, -1, -1, -1, 187, + 188, 189, 190, 191, -1, -1, -1, 195, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, 214, 3, 4, -1, + -1, 219, -1, 9, 10, 11, 224, -1, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, -1, -1, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 53, 54, 55, + 56, 218, -1, -1, -1, 61, -1, -1, -1, -1, + 227, -1, -1, -1, 3, 4, 72, 73, 74, -1, + 9, 10, 11, -1, 80, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, -1, -1, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 53, 54, 55, 56, 218, -1, + -1, -1, 61, -1, -1, -1, -1, 227, -1, -1, + -1, -1, -1, 72, 73, 74, -1, -1, -1, -1, + -1, 80, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, -1, -1, -1, -1, -1, 227, + -1, -1, -1, 179, -1, -1, -1, 183, -1, -1, + -1, 187, 188, 189, 190, 191, -1, -1, -1, 195, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, -1, -1, -1, 214, -1, + -1, -1, -1, 219, 220, -1, -1, -1, 224, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + 179, -1, -1, -1, 183, -1, 227, -1, 187, 188, + 189, 190, 191, -1, -1, -1, 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 208, 209, -1, -1, -1, 213, -1, -1, -1, -1, - 218, 3, 4, 221, -1, 223, -1, 9, 10, 11, + 209, 210, -1, -1, -1, 214, -1, -1, -1, -1, + 219, 3, 4, 222, -1, 224, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, -1, -1, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 53, 54, 55, 56, 217, -1, -1, -1, 61, - -1, -1, 224, -1, -1, -1, -1, -1, 3, 4, + 32, 33, 34, 35, 36, -1, -1, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, 53, 54, 55, 56, 218, -1, -1, -1, 61, + -1, -1, -1, -1, 227, -1, -1, -1, 3, 4, 72, 73, 74, -1, 9, 10, 11, -1, 80, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, -1, -1, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 53, 54, - 55, 56, 217, -1, -1, -1, 61, -1, -1, 224, - -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, - -1, -1, -1, -1, -1, 80, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, -1, -1, -1, -1, 178, -1, -1, -1, - 182, -1, -1, -1, 186, 187, 188, 189, 190, -1, - -1, -1, 194, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 208, 209, -1, -1, - -1, 213, -1, -1, -1, -1, 218, 219, -1, -1, - -1, 223, -1, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 178, -1, -1, -1, 182, 224, -1, - -1, 186, 187, 188, 189, 190, -1, -1, -1, 194, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 208, 209, -1, -1, -1, 213, -1, - -1, -1, -1, 218, 3, 4, 221, 6, 223, -1, - 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, -1, -1, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 53, 54, 55, 56, 217, -1, - -1, -1, 61, -1, -1, 224, -1, -1, -1, -1, - -1, -1, -1, 72, 73, 74, 3, 4, -1, 6, - -1, 80, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - -1, -1, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, 53, 54, 55, 56, - 217, -1, -1, -1, 61, -1, -1, 224, -1, -1, - -1, -1, -1, -1, -1, 72, 73, 74, -1, -1, - -1, -1, -1, 80, -1, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, 178, - 224, -1, -1, 182, -1, -1, -1, 186, 187, 188, - 189, 190, -1, -1, -1, 194, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 208, - 209, -1, -1, -1, 213, -1, -1, -1, -1, 218, - -1, -1, -1, -1, 223, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, -1, - 224, 178, -1, -1, -1, 182, -1, -1, -1, 186, - 187, 188, 189, 190, -1, -1, -1, 194, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 208, 209, -1, -1, -1, 213, 3, 4, -1, - -1, 218, -1, 9, 10, 11, 223, -1, 14, 15, + 35, 36, -1, -1, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 53, 54, + 55, 56, 218, -1, -1, -1, 61, -1, -1, -1, + -1, 227, -1, -1, -1, -1, -1, 72, 73, 74, + -1, -1, -1, -1, -1, 80, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, -1, -1, -1, -1, + -1, -1, -1, 227, -1, -1, -1, 179, -1, -1, + -1, 183, -1, -1, -1, 187, 188, 189, 190, 191, + -1, -1, -1, 195, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 209, 210, -1, + -1, -1, 214, -1, -1, -1, -1, 219, 220, -1, + -1, -1, 224, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, 179, -1, -1, -1, 183, -1, + 227, -1, 187, 188, 189, 190, 191, -1, -1, -1, + 195, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 209, 210, -1, -1, -1, 214, + -1, -1, -1, -1, 219, 3, 4, 222, 6, 224, + -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, + -1, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 53, 54, 55, 56, 218, + -1, -1, -1, 61, -1, -1, -1, 226, -1, -1, + -1, -1, -1, -1, 72, 73, 74, 3, 4, -1, + 6, -1, 80, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, -1, -1, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 53, 54, 55, - 56, 217, -1, -1, -1, 61, -1, -1, 224, -1, + 36, -1, -1, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 53, 54, 55, + 56, 218, -1, -1, -1, 61, -1, -1, -1, 226, -1, -1, -1, -1, -1, -1, 72, 73, 74, -1, - -1, -1, -1, -1, 80, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, -1, - 224, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, -1, -1, -1, -1, -1, 224, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 0, 1, -1, - -1, 4, 224, -1, -1, -1, -1, -1, -1, 12, - 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 178, -1, -1, -1, 182, -1, -1, -1, - 186, 187, 188, 189, 190, -1, -1, -1, 194, 42, - 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 208, 209, -1, -1, -1, 213, -1, 62, - 63, 64, 218, -1, -1, 68, 69, 223, 71, -1, + -1, -1, -1, -1, 80, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, -1, 222, -1, -1, + 225, 179, -1, -1, -1, 183, -1, -1, -1, 187, + 188, 189, 190, 191, -1, -1, -1, 195, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 209, 210, -1, -1, -1, 214, -1, -1, -1, + -1, 219, -1, -1, -1, -1, 224, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, -1, -1, 218, -1, 220, -1, -1, + -1, -1, 225, 179, -1, -1, -1, 183, -1, -1, + -1, 187, 188, 189, 190, 191, -1, -1, -1, 195, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 209, 210, -1, -1, -1, 214, 3, + 4, -1, -1, 219, -1, 9, 10, 11, 224, -1, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, -1, -1, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 53, + 54, 55, 56, 218, -1, -1, -1, 61, -1, -1, + 225, -1, -1, -1, -1, -1, -1, -1, 72, 73, + 74, -1, -1, -1, -1, -1, 80, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, -1, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 0, 1, -1, -1, 4, 225, -1, -1, -1, -1, + -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 179, -1, -1, -1, 183, + -1, -1, -1, 187, 188, 189, 190, 191, -1, -1, + -1, 195, 42, 43, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, + 214, -1, 62, 63, 64, 219, -1, -1, 68, 69, + 224, 71, -1, -1, -1, 75, 76, -1, 78, 79, + -1, -1, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, -1, -1, -1, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, -1, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, -1, + -1, -1, 142, 143, 144, -1, -1, -1, -1, -1, + 150, 4, -1, -1, -1, 155, 156, 157, 158, 12, + 13, 161, -1, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, 174, 175, 176, 177, 178, -1, + -1, -1, -1, -1, 184, 185, 186, -1, -1, 42, + 43, -1, -1, 193, -1, 195, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, + 63, 64, -1, -1, -1, 68, 69, -1, 71, -1, -1, -1, 75, 76, -1, 78, 79, -1, -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, -1, -1, -1, 98, -1, 100, 101, 102, + 93, 94, -1, -1, -1, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, -1, 115, 116, 117, 118, 119, 120, 121, 122, - 123, -1, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, -1, -1, -1, 141, 142, - 143, -1, -1, -1, -1, -1, 149, 4, -1, -1, - -1, 154, 155, 156, 157, 12, 13, 160, -1, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, -1, -1, -1, -1, -1, - 183, 184, 185, -1, -1, 42, 43, -1, -1, 192, - -1, 194, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 62, 63, 64, -1, -1, - -1, 68, 69, -1, 71, -1, -1, -1, 75, 76, - -1, 78, 79, -1, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, - -1, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, -1, 115, 116, - 117, 118, 119, 120, 121, 122, 123, -1, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, -1, -1, -1, 141, 142, 143, -1, -1, -1, - -1, -1, 149, -1, -1, -1, -1, 154, 155, 156, - 157, -1, -1, 160, -1, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, -1, -1, -1, -1, -1, 183, 184, 185, -1, - -1, -1, -1, -1, -1, 192, -1, 194, 199, 200, + 113, 114, -1, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, -1, -1, -1, 142, + 143, 144, -1, -1, -1, -1, -1, 150, -1, -1, + -1, -1, 155, 156, 157, 158, -1, -1, 161, -1, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, 174, 175, 176, 177, 178, -1, -1, -1, -1, + -1, 184, 185, 186, -1, -1, -1, -1, -1, -1, + 193, -1, 195, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, -1, -1, -1, 224, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, - -1, 224, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, -1, -1, -1, 224, 199, 200, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - -1, -1, -1, 224, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, -1, -1, -1, 224, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, 221, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, -1, -1, 221, 199, 200, 201, 202, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, 221, 199, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, -1, -1, -1, 225, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, -1, -1, -1, + 225, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, -1, -1, -1, 225, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 225, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, 225, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, + -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, 222, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, -1, -1, -1, -1, 218, -1, -1, -1, + 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, -1, -1, -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, -1, - -1, 221, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, 221, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, -1, -1, 221, 199, 200, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, -1, -1, - 221, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, -1, -1, 221, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, -1, -1, 221, 199, 200, 201, + 211, 212, 213, -1, -1, -1, -1, 218, -1, -1, + -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, -1, -1, 221, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - -1, -1, 221, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, -1, -1, 221, 199, 200, 201, 202, + 212, 213, -1, -1, -1, -1, 218, -1, -1, -1, + 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, -1, -1, 221, 199, + 213, -1, -1, -1, -1, 218, -1, -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, -1, - -1, 221, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, -1, -1, 221, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, 219, 199, 200, 201, 202, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + -1, -1, 222, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 219, 199, 200, 201, + 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 219, 199, 200, + 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, 219, 199, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, 219, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 219, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 219, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 219, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, 219, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, 219, 199, 200, 201, 202, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 219, 199, 200, 201, + 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 219, 199, 200, + 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, 219, 199, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, 219, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 219, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 219, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 219, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, 219, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, 219, 199, 200, 201, 202, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 219, 199, 200, 201, + 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 219, 199, 200, + 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, 219, 199, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, 219, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 219, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 219, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 219, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, 219, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, 219, 199, 200, 201, 202, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 219, 199, 200, 201, + 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 219, 199, 200, + 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, 219, 199, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, 219, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 219, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 219, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 219, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217, -1, 219, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, -1, - -1, -1, -1, 217, -1, 219, 199, 200, 201, 202, + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, -1, -1, + -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, -1, + -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - -1, -1, -1, -1, 217, -1, 219, 199, 200, 201, + 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, -1, -1, -1, -1, 217, -1, 219, 199, 200, + 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, -1, -1, -1, -1, 217, -1, 219, 199, + 211, 212, 213, -1, -1, -1, -1, 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, -1, -1, -1, -1, 217, -1, 219, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, -1, -1, -1, -1, 217, -1, - 219, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, -1, -1, -1, -1, 217, - -1, 219, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 212, -1, -1, -1, -1, - 217, -1, 219, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, -1, -1, -1, - -1, 217, -1, 219, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, -1, -1, - -1, -1, 217 + 210, 211, 212, 213, -1, -1, -1, -1, 218, -1, + 220, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, -1, -1, -1, -1, 218, + -1, 220, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, -1, -1, -1, -1, + 218, -1, 220, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, -1, -1, -1, + -1, 218 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 1, 229, 230, 6, 0, 4, 12, 13, 42, + 0, 1, 230, 231, 6, 0, 4, 12, 13, 42, 43, 62, 63, 64, 68, 69, 71, 75, 76, 78, 79, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 98, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, + 91, 92, 93, 94, 98, 99, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 141, 142, 143, 149, 154, 155, 156, 157, 160, - 162, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 183, 184, 185, 192, 194, - 231, 233, 234, 254, 273, 274, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 301, 303, 304, 310, 311, - 312, 313, 331, 332, 3, 4, 5, 9, 10, 11, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 65, 66, 67, 70, 72, 73, 74, 80, 81, - 171, 178, 179, 180, 181, 182, 186, 187, 188, 189, - 190, 191, 193, 208, 209, 213, 218, 220, 222, 223, - 225, 227, 252, 314, 315, 327, 328, 331, 332, 13, - 90, 218, 218, 6, 225, 6, 6, 6, 6, 218, - 6, 6, 220, 220, 218, 220, 252, 252, 218, 225, - 218, 218, 4, 218, 225, 218, 218, 4, 225, 218, - 218, 218, 218, 99, 90, 90, 6, 225, 84, 87, - 90, 218, 218, 90, 90, 87, 90, 92, 92, 84, - 87, 90, 92, 87, 90, 92, 87, 90, 218, 87, - 160, 176, 177, 225, 208, 209, 218, 225, 317, 318, - 317, 225, 84, 87, 90, 225, 317, 4, 84, 88, - 94, 95, 96, 97, 107, 90, 92, 90, 87, 4, - 171, 225, 331, 332, 4, 6, 84, 87, 90, 87, - 90, 4, 4, 4, 4, 5, 37, 38, 39, 40, - 41, 84, 87, 90, 92, 111, 209, 218, 225, 274, - 285, 301, 303, 314, 320, 321, 322, 331, 332, 4, - 218, 218, 218, 4, 225, 324, 332, 4, 218, 218, - 218, 6, 6, 220, 4, 328, 332, 218, 4, 328, - 5, 225, 5, 225, 4, 314, 331, 220, 218, 225, - 6, 218, 225, 218, 220, 227, 252, 7, 195, 196, - 197, 198, 215, 216, 250, 251, 4, 218, 220, 222, - 252, 252, 252, 252, 252, 252, 252, 252, 252, 252, - 252, 252, 252, 252, 252, 252, 252, 252, 252, 252, - 252, 252, 252, 252, 252, 218, 218, 218, 252, 252, - 252, 252, 218, 252, 252, 252, 252, 252, 252, 218, - 252, 252, 252, 7, 218, 218, 218, 252, 252, 218, - 218, 220, 314, 314, 314, 219, 314, 221, 314, 4, - 160, 161, 332, 4, 274, 275, 276, 225, 225, 6, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 217, 225, 6, 218, 220, 251, - 6, 314, 4, 327, 328, 331, 332, 327, 314, 327, - 330, 256, 261, 328, 332, 314, 209, 314, 322, 323, - 314, 314, 218, 314, 323, 314, 314, 218, 323, 314, - 314, 314, 314, 320, 218, 225, 323, 321, 321, 321, - 327, 314, 218, 218, 321, 321, 321, 218, 218, 218, - 218, 218, 218, 320, 218, 320, 218, 320, 225, 225, - 314, 4, 320, 324, 225, 225, 317, 317, 317, 314, - 314, 208, 209, 225, 225, 317, 225, 225, 225, 208, - 209, 218, 276, 317, 225, 218, 225, 218, 218, 218, - 218, 218, 218, 218, 321, 321, 320, 218, 4, 220, - 220, 276, 6, 6, 225, 225, 225, 321, 321, 220, - 220, 220, 218, 220, 222, 252, 218, 220, 252, 252, - 252, 252, 5, 163, 225, 5, 163, 5, 163, 5, - 163, 84, 87, 90, 92, 225, 314, 322, 314, 226, - 323, 8, 210, 6, 218, 220, 252, 6, 314, 314, - 314, 222, 314, 225, 163, 314, 314, 314, 314, 6, - 6, 225, 6, 276, 6, 276, 218, 220, 225, 218, - 220, 327, 314, 276, 320, 320, 219, 314, 221, 314, - 225, 225, 328, 320, 6, 220, 314, 314, 4, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 330, 327, 330, 327, 327, 327, 327, 327, 327, - 327, 320, 327, 327, 314, 327, 327, 327, 330, 327, - 314, 328, 314, 327, 327, 327, 327, 327, 332, 328, - 332, 7, 198, 250, 219, 7, 198, 250, 221, 7, - 250, 251, 222, 7, 252, 226, 84, 87, 90, 92, - 273, 314, 323, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 235, 314, - 314, 6, 218, 220, 222, 219, 224, 218, 220, 219, - 224, 224, 219, 224, 221, 224, 255, 221, 255, 224, - 224, 219, 210, 224, 226, 219, 219, 314, 219, 226, - 219, 219, 314, 226, 219, 219, 219, 219, 7, 314, - 314, 226, 6, 6, 6, 219, 219, 314, 314, 7, - 7, 307, 307, 314, 267, 314, 328, 268, 314, 328, - 269, 314, 328, 270, 314, 328, 314, 6, 314, 6, - 314, 6, 323, 323, 225, 219, 6, 225, 276, 276, - 224, 224, 224, 317, 317, 275, 275, 224, 314, 314, - 314, 314, 289, 224, 276, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 7, 308, 6, 7, 314, 6, - 314, 314, 226, 323, 323, 323, 6, 6, 314, 314, - 314, 314, 314, 4, 219, 221, 225, 253, 225, 314, - 322, 225, 322, 332, 314, 314, 327, 314, 62, 314, - 62, 62, 62, 5, 225, 5, 225, 5, 225, 5, - 225, 323, 219, 226, 314, 225, 314, 322, 314, 314, - 225, 253, 219, 219, 219, 160, 224, 276, 225, 8, - 219, 219, 221, 323, 226, 226, 276, 221, 219, 133, - 302, 219, 224, 226, 7, 198, 250, 219, 7, 198, - 250, 221, 314, 323, 6, 6, 314, 219, 221, 251, + 137, 138, 142, 143, 144, 150, 155, 156, 157, 158, + 161, 163, 165, 166, 167, 168, 169, 170, 171, 172, + 173, 174, 175, 176, 177, 178, 184, 185, 186, 193, + 195, 232, 234, 235, 255, 274, 275, 278, 279, 280, + 281, 282, 283, 284, 285, 286, 302, 304, 305, 311, + 312, 313, 314, 332, 333, 3, 4, 5, 9, 10, + 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 65, 66, 67, 70, 72, 73, 74, 80, + 81, 172, 179, 180, 181, 182, 183, 187, 188, 189, + 190, 191, 192, 194, 209, 210, 214, 219, 221, 223, + 224, 226, 228, 253, 315, 316, 328, 329, 332, 333, + 13, 90, 219, 219, 6, 226, 6, 6, 6, 6, + 219, 6, 6, 221, 221, 219, 221, 253, 253, 219, + 226, 219, 219, 4, 219, 226, 219, 219, 4, 226, + 219, 219, 219, 219, 219, 100, 90, 90, 6, 226, + 84, 87, 90, 219, 219, 90, 90, 87, 90, 92, + 92, 84, 87, 90, 92, 87, 90, 92, 87, 90, + 219, 87, 161, 177, 178, 226, 209, 210, 219, 226, + 318, 319, 318, 226, 84, 87, 90, 226, 318, 4, + 84, 88, 94, 95, 96, 97, 108, 90, 92, 90, + 87, 4, 172, 226, 332, 333, 4, 6, 84, 87, + 90, 87, 90, 4, 4, 4, 4, 5, 37, 38, + 39, 40, 41, 84, 87, 90, 92, 112, 210, 219, + 226, 275, 286, 302, 304, 315, 321, 322, 323, 332, + 333, 4, 219, 219, 219, 4, 226, 325, 333, 4, + 219, 219, 219, 6, 6, 221, 4, 329, 333, 219, + 4, 329, 5, 226, 5, 226, 4, 315, 332, 221, + 219, 226, 6, 219, 226, 219, 221, 228, 253, 7, + 196, 197, 198, 199, 216, 217, 251, 252, 4, 219, + 221, 223, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, - 253, 224, 253, 253, 253, 253, 253, 253, 253, 224, - 224, 224, 253, 224, 253, 253, 219, 219, 224, 253, - 253, 224, 253, 224, 224, 224, 224, 253, 253, 253, - 219, 253, 316, 329, 6, 224, 224, 219, 224, 253, - 224, 253, 219, 219, 221, 44, 44, 320, 7, 250, - 251, 44, 44, 320, 222, 250, 251, 328, 314, 6, - 4, 4, 225, 325, 253, 225, 225, 225, 225, 226, - 226, 8, 4, 150, 151, 152, 153, 226, 238, 242, - 245, 247, 248, 219, 221, 314, 314, 4, 6, 205, - 232, 323, 314, 314, 6, 323, 314, 6, 327, 6, - 332, 6, 327, 314, 328, 7, 314, 322, 163, 7, - 7, 219, 7, 163, 7, 7, 219, 163, 7, 7, - 7, 7, 314, 219, 226, 225, 6, 7, 219, 219, - 314, 320, 4, 306, 6, 219, 219, 224, 219, 224, - 219, 224, 219, 224, 219, 219, 219, 226, 226, 323, - 222, 276, 226, 226, 317, 314, 314, 226, 226, 314, - 317, 224, 224, 224, 114, 130, 138, 139, 140, 144, - 145, 146, 147, 299, 300, 317, 226, 286, 219, 226, - 219, 219, 219, 219, 219, 219, 219, 314, 6, 314, - 219, 221, 221, 226, 226, 226, 221, 221, 224, 219, - 221, 323, 323, 219, 323, 221, 221, 224, 224, 253, - 224, 225, 226, 225, 225, 225, 323, 323, 323, 323, - 226, 8, 323, 219, 221, 323, 7, 7, 7, 222, - 314, 226, 314, 314, 7, 222, 226, 226, 7, 6, - 314, 226, 225, 320, 6, 44, 44, 320, 250, 251, - 44, 44, 320, 250, 251, 226, 226, 221, 251, 222, - 251, 327, 314, 314, 314, 314, 323, 327, 314, 320, - 327, 327, 327, 263, 265, 314, 327, 327, 314, 252, - 252, 6, 314, 6, 252, 252, 6, 4, 160, 161, - 314, 6, 6, 6, 7, 220, 324, 326, 6, 323, - 323, 323, 323, 253, 314, 239, 218, 218, 225, 249, - 6, 251, 251, 219, 221, 205, 327, 219, 219, 221, - 219, 224, 7, 218, 220, 253, 253, 317, 90, 92, - 320, 320, 7, 320, 90, 92, 320, 320, 7, 92, - 320, 320, 320, 320, 6, 7, 7, 323, 320, 7, - 7, 114, 305, 6, 7, 250, 314, 250, 314, 250, - 314, 250, 314, 7, 7, 7, 7, 7, 226, 4, - 226, 224, 224, 224, 226, 226, 317, 317, 317, 4, - 6, 314, 225, 6, 218, 6, 148, 6, 148, 6, - 148, 6, 148, 226, 300, 224, 299, 7, 6, 7, - 7, 7, 7, 7, 7, 7, 6, 225, 6, 6, - 6, 90, 7, 6, 6, 314, 222, 226, 226, 226, - 314, 314, 314, 314, 314, 314, 314, 226, 226, 226, - 226, 314, 226, 226, 320, 320, 320, 4, 224, 8, - 8, 219, 4, 4, 224, 225, 6, 225, 320, 226, - 252, 252, 6, 314, 6, 252, 252, 6, 314, 6, - 253, 6, 4, 6, 253, 253, 253, 253, 253, 224, - 224, 253, 219, 253, 253, 224, 224, 253, 264, 224, - 253, 266, 219, 219, 253, 253, 253, 330, 330, 6, - 253, 330, 330, 7, 250, 251, 222, 7, 6, 324, - 314, 224, 226, 226, 226, 226, 226, 250, 218, 314, - 314, 319, 320, 225, 222, 6, 6, 232, 6, 314, - 225, 314, 328, 219, 221, 6, 6, 6, 225, 225, - 107, 272, 272, 320, 6, 225, 225, 6, 6, 320, - 225, 6, 6, 6, 6, 5, 320, 226, 6, 320, - 320, 4, 6, 320, 320, 320, 320, 320, 320, 320, - 320, 225, 225, 7, 6, 7, 314, 314, 314, 225, - 225, 224, 226, 224, 226, 224, 226, 220, 6, 314, - 320, 314, 6, 6, 6, 6, 314, 317, 226, 5, - 320, 225, 225, 225, 225, 225, 225, 225, 320, 323, - 225, 314, 221, 4, 253, 219, 221, 224, 224, 224, - 224, 224, 224, 224, 253, 6, 6, 159, 314, 314, - 314, 6, 6, 7, 328, 276, 276, 224, 6, 253, - 330, 330, 6, 253, 330, 330, 6, 250, 251, 327, - 314, 327, 4, 4, 175, 6, 253, 253, 6, 253, - 253, 328, 314, 6, 4, 325, 6, 221, 324, 6, - 6, 6, 6, 320, 236, 314, 224, 224, 224, 226, - 237, 314, 4, 327, 224, 320, 328, 7, 7, 314, - 314, 317, 6, 6, 6, 314, 314, 6, 314, 5, - 6, 225, 6, 163, 271, 314, 6, 6, 6, 6, - 6, 6, 4, 6, 6, 323, 323, 314, 314, 328, - 226, 219, 224, 226, 275, 275, 317, 6, 290, 317, - 6, 291, 317, 6, 292, 314, 226, 224, 219, 226, - 224, 6, 6, 319, 317, 317, 317, 317, 317, 209, - 317, 6, 226, 314, 6, 6, 314, 314, 314, 314, - 314, 314, 314, 320, 224, 226, 8, 226, 219, 225, - 314, 328, 224, 302, 302, 320, 6, 253, 253, 6, - 253, 253, 320, 219, 253, 253, 225, 320, 328, 225, - 314, 328, 328, 6, 6, 6, 6, 6, 6, 7, - 6, 222, 6, 219, 224, 314, 314, 320, 225, 224, - 226, 6, 314, 257, 260, 225, 225, 226, 226, 226, - 226, 226, 5, 319, 88, 6, 225, 226, 226, 225, - 6, 6, 225, 314, 226, 226, 224, 225, 224, 225, - 224, 225, 221, 6, 320, 7, 225, 314, 226, 224, - 224, 224, 224, 224, 224, 6, 226, 253, 253, 224, - 224, 224, 224, 224, 158, 314, 314, 323, 6, 6, - 328, 226, 226, 226, 6, 6, 6, 6, 6, 262, - 314, 322, 330, 324, 161, 240, 314, 224, 224, 319, - 314, 6, 224, 263, 265, 320, 320, 6, 6, 6, - 6, 6, 6, 226, 225, 319, 118, 119, 124, 309, - 118, 119, 309, 323, 275, 224, 226, 314, 317, 299, - 314, 317, 299, 314, 317, 299, 6, 224, 226, 320, - 276, 226, 6, 323, 317, 317, 317, 317, 317, 314, - 314, 314, 314, 314, 314, 226, 226, 226, 219, 225, - 6, 224, 226, 7, 7, 226, 6, 225, 314, 314, - 226, 314, 226, 226, 259, 258, 225, 314, 226, 225, - 317, 320, 6, 225, 317, 6, 226, 226, 314, 226, - 224, 226, 226, 224, 226, 226, 224, 226, 320, 6, - 114, 226, 287, 225, 226, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 6, 6, 6, 276, 314, - 328, 332, 237, 219, 224, 6, 225, 224, 263, 263, - 314, 226, 6, 317, 6, 317, 6, 6, 226, 6, - 293, 314, 6, 6, 294, 314, 6, 6, 295, 314, - 6, 226, 314, 299, 276, 6, 323, 323, 323, 323, - 317, 323, 314, 314, 314, 314, 314, 302, 7, 218, - 226, 243, 314, 319, 314, 226, 226, 224, 224, 224, - 225, 226, 225, 226, 225, 226, 6, 6, 226, 226, - 288, 226, 226, 226, 226, 224, 226, 224, 224, 224, - 224, 224, 226, 328, 219, 6, 225, 219, 226, 226, - 314, 317, 317, 299, 6, 296, 299, 6, 297, 299, - 6, 298, 299, 6, 6, 6, 6, 323, 6, 314, - 314, 314, 314, 314, 6, 241, 327, 246, 225, 6, - 226, 224, 224, 226, 225, 226, 225, 226, 225, 226, - 226, 253, 224, 224, 224, 224, 224, 226, 225, 319, - 6, 314, 314, 6, 299, 6, 299, 6, 299, 6, - 314, 314, 314, 314, 327, 6, 244, 327, 226, 226, - 226, 226, 226, 226, 226, 226, 226, 226, 224, 226, - 6, 6, 6, 6, 6, 6, 327, 6 + 253, 253, 253, 253, 253, 253, 253, 219, 219, 219, + 253, 253, 253, 253, 219, 253, 253, 253, 253, 253, + 253, 219, 253, 253, 253, 7, 219, 219, 219, 253, + 253, 219, 219, 221, 315, 315, 315, 220, 315, 222, + 315, 4, 161, 162, 333, 4, 275, 276, 277, 226, + 226, 6, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 218, 226, 6, 219, + 221, 252, 6, 315, 4, 328, 329, 332, 333, 328, + 315, 328, 331, 257, 262, 329, 333, 315, 210, 315, + 323, 324, 315, 315, 219, 315, 324, 315, 315, 219, + 324, 315, 315, 315, 315, 328, 321, 219, 226, 324, + 322, 322, 322, 328, 315, 219, 219, 322, 322, 322, + 219, 219, 219, 219, 219, 219, 321, 219, 321, 219, + 321, 226, 226, 315, 4, 321, 325, 226, 226, 318, + 318, 318, 315, 315, 209, 210, 226, 226, 318, 226, + 226, 226, 209, 210, 219, 277, 318, 226, 219, 226, + 219, 219, 219, 219, 219, 219, 219, 322, 322, 321, + 219, 4, 221, 221, 277, 6, 6, 226, 226, 226, + 322, 322, 221, 221, 221, 219, 221, 223, 253, 219, + 221, 253, 253, 253, 253, 5, 164, 226, 5, 164, + 5, 164, 5, 164, 84, 87, 90, 92, 226, 315, + 323, 315, 227, 324, 8, 211, 6, 219, 221, 253, + 6, 315, 315, 315, 223, 315, 226, 164, 315, 315, + 315, 315, 6, 6, 226, 6, 277, 6, 277, 219, + 221, 226, 219, 221, 328, 315, 277, 321, 321, 220, + 315, 222, 315, 226, 226, 329, 321, 6, 221, 315, + 315, 4, 315, 315, 315, 315, 315, 315, 315, 315, + 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, + 315, 315, 315, 315, 331, 328, 331, 328, 328, 328, + 328, 328, 328, 328, 321, 328, 328, 315, 328, 328, + 328, 331, 328, 315, 329, 315, 328, 328, 328, 328, + 328, 333, 329, 333, 7, 199, 251, 220, 7, 199, + 251, 222, 7, 251, 252, 223, 7, 253, 227, 84, + 87, 90, 92, 274, 315, 324, 315, 315, 315, 315, + 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, + 315, 236, 315, 315, 6, 219, 221, 223, 220, 225, + 219, 221, 220, 225, 225, 220, 225, 222, 225, 256, + 222, 256, 225, 225, 220, 211, 225, 227, 220, 220, + 315, 220, 227, 220, 220, 315, 227, 220, 220, 220, + 220, 220, 7, 315, 315, 227, 6, 6, 6, 220, + 220, 315, 315, 7, 7, 308, 308, 315, 268, 315, + 329, 269, 315, 329, 270, 315, 329, 271, 315, 329, + 315, 6, 315, 6, 315, 6, 324, 324, 226, 220, + 6, 226, 277, 277, 225, 225, 225, 318, 318, 276, + 276, 225, 315, 315, 315, 315, 290, 225, 277, 315, + 315, 315, 315, 315, 315, 315, 315, 315, 7, 309, + 6, 7, 315, 6, 315, 315, 227, 324, 324, 324, + 6, 6, 315, 315, 315, 315, 315, 4, 220, 222, + 226, 254, 226, 315, 323, 226, 323, 333, 315, 315, + 328, 315, 62, 315, 62, 62, 62, 5, 226, 5, + 226, 5, 226, 5, 226, 324, 220, 227, 315, 226, + 315, 323, 315, 315, 226, 254, 220, 220, 220, 161, + 225, 277, 226, 8, 220, 220, 222, 324, 227, 227, + 277, 222, 220, 134, 303, 220, 225, 227, 7, 199, + 251, 220, 7, 199, 251, 222, 315, 324, 6, 6, + 315, 220, 222, 252, 254, 254, 254, 254, 254, 254, + 254, 254, 254, 254, 254, 225, 254, 254, 254, 254, + 254, 254, 254, 225, 225, 225, 254, 225, 254, 254, + 220, 220, 225, 254, 254, 225, 254, 225, 225, 225, + 225, 254, 254, 254, 220, 254, 317, 330, 6, 225, + 225, 220, 225, 254, 225, 254, 220, 220, 222, 44, + 44, 321, 7, 251, 252, 44, 44, 321, 223, 251, + 252, 329, 315, 6, 4, 4, 226, 326, 254, 226, + 226, 226, 226, 227, 227, 8, 4, 151, 152, 153, + 154, 227, 239, 243, 246, 248, 249, 220, 222, 315, + 315, 4, 6, 206, 233, 324, 315, 315, 6, 324, + 315, 6, 328, 6, 333, 6, 328, 315, 329, 7, + 315, 323, 164, 7, 7, 220, 7, 164, 7, 7, + 220, 164, 7, 7, 7, 7, 315, 220, 227, 226, + 6, 7, 220, 220, 315, 321, 4, 307, 6, 220, + 220, 225, 220, 225, 220, 225, 220, 225, 220, 220, + 220, 227, 227, 324, 223, 277, 227, 227, 318, 315, + 315, 227, 227, 315, 318, 225, 225, 225, 115, 131, + 139, 140, 141, 145, 146, 147, 148, 300, 301, 318, + 227, 287, 220, 227, 220, 220, 220, 220, 220, 220, + 220, 315, 6, 315, 220, 222, 222, 227, 227, 227, + 222, 222, 225, 220, 222, 324, 324, 220, 324, 222, + 222, 225, 225, 254, 225, 226, 227, 226, 226, 226, + 324, 324, 324, 324, 227, 8, 324, 220, 222, 324, + 7, 7, 7, 223, 315, 227, 315, 315, 7, 223, + 227, 227, 7, 6, 315, 227, 226, 321, 6, 44, + 44, 321, 251, 252, 44, 44, 321, 251, 252, 227, + 227, 222, 252, 223, 252, 328, 315, 315, 315, 315, + 324, 328, 315, 321, 328, 328, 328, 264, 266, 315, + 328, 328, 315, 253, 253, 6, 315, 6, 253, 253, + 6, 4, 161, 162, 315, 6, 6, 6, 7, 221, + 325, 327, 6, 324, 324, 324, 324, 254, 315, 240, + 219, 219, 226, 250, 6, 252, 252, 220, 222, 206, + 328, 220, 220, 222, 220, 225, 7, 219, 221, 254, + 254, 318, 90, 92, 321, 321, 7, 321, 90, 92, + 321, 321, 7, 92, 321, 321, 321, 321, 6, 7, + 7, 324, 321, 7, 7, 115, 306, 6, 7, 251, + 315, 251, 315, 251, 315, 251, 315, 7, 7, 7, + 7, 7, 227, 4, 227, 225, 225, 225, 227, 227, + 318, 318, 318, 4, 6, 315, 226, 6, 219, 6, + 149, 6, 149, 6, 149, 6, 149, 227, 301, 225, + 300, 7, 6, 7, 7, 7, 7, 7, 7, 7, + 6, 226, 6, 6, 6, 90, 7, 6, 6, 315, + 223, 227, 227, 227, 315, 315, 315, 315, 315, 315, + 315, 227, 227, 227, 227, 315, 227, 227, 321, 321, + 321, 4, 225, 8, 8, 220, 4, 4, 225, 226, + 6, 226, 321, 227, 253, 253, 6, 315, 6, 253, + 253, 6, 315, 6, 254, 6, 4, 6, 254, 254, + 254, 254, 254, 225, 225, 254, 220, 254, 254, 225, + 225, 254, 265, 225, 254, 267, 220, 220, 254, 254, + 254, 331, 331, 6, 254, 331, 331, 7, 251, 252, + 223, 7, 6, 325, 315, 225, 227, 227, 227, 227, + 227, 251, 219, 315, 315, 320, 321, 226, 223, 6, + 6, 233, 6, 315, 226, 315, 329, 220, 222, 6, + 6, 6, 226, 226, 108, 273, 273, 321, 6, 226, + 226, 6, 6, 321, 226, 6, 6, 6, 6, 5, + 321, 227, 6, 321, 321, 4, 6, 321, 321, 321, + 321, 321, 321, 321, 321, 226, 226, 7, 6, 7, + 315, 315, 315, 226, 226, 225, 227, 225, 227, 225, + 227, 221, 6, 315, 321, 315, 6, 6, 6, 6, + 315, 318, 227, 5, 321, 226, 226, 226, 226, 226, + 226, 226, 321, 324, 226, 315, 222, 4, 254, 220, + 222, 225, 225, 225, 225, 225, 225, 225, 254, 6, + 6, 160, 315, 315, 315, 6, 6, 7, 329, 277, + 277, 225, 6, 254, 331, 331, 6, 254, 331, 331, + 6, 251, 252, 328, 315, 328, 4, 4, 176, 6, + 254, 254, 6, 254, 254, 329, 315, 6, 4, 326, + 6, 222, 325, 6, 6, 6, 6, 321, 237, 315, + 225, 225, 225, 227, 238, 315, 4, 328, 225, 321, + 329, 7, 7, 315, 315, 318, 6, 6, 6, 315, + 315, 6, 315, 5, 6, 226, 6, 164, 272, 315, + 6, 6, 6, 6, 6, 6, 4, 6, 6, 324, + 324, 315, 315, 329, 227, 220, 225, 227, 276, 276, + 318, 6, 291, 318, 6, 292, 318, 6, 293, 315, + 227, 225, 220, 227, 225, 6, 6, 320, 318, 318, + 318, 318, 318, 210, 318, 6, 227, 315, 6, 6, + 315, 315, 315, 315, 315, 315, 315, 321, 225, 227, + 8, 227, 220, 226, 315, 329, 225, 303, 303, 321, + 6, 254, 254, 6, 254, 254, 321, 220, 254, 254, + 226, 321, 329, 226, 315, 329, 329, 6, 6, 6, + 6, 6, 6, 7, 6, 223, 6, 220, 225, 315, + 315, 321, 226, 225, 227, 6, 315, 258, 261, 226, + 226, 227, 227, 227, 227, 227, 5, 320, 88, 6, + 226, 227, 227, 226, 6, 6, 226, 315, 227, 227, + 225, 226, 225, 226, 225, 226, 222, 6, 321, 7, + 226, 315, 227, 225, 225, 225, 225, 225, 225, 6, + 227, 254, 254, 225, 225, 225, 225, 225, 159, 315, + 315, 324, 6, 6, 329, 227, 227, 227, 6, 6, + 6, 6, 6, 263, 315, 323, 331, 325, 162, 241, + 315, 225, 225, 320, 315, 6, 225, 264, 266, 321, + 321, 6, 6, 6, 6, 6, 6, 227, 226, 320, + 119, 120, 125, 310, 119, 120, 310, 324, 276, 225, + 227, 315, 318, 300, 315, 318, 300, 315, 318, 300, + 6, 225, 227, 321, 277, 227, 6, 324, 318, 318, + 318, 318, 318, 315, 315, 315, 315, 315, 315, 227, + 227, 227, 220, 226, 6, 225, 227, 7, 7, 227, + 6, 226, 315, 315, 227, 315, 227, 227, 260, 259, + 226, 315, 227, 226, 318, 321, 6, 226, 318, 6, + 227, 227, 315, 227, 225, 227, 227, 225, 227, 227, + 225, 227, 321, 6, 115, 227, 288, 226, 227, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 6, + 6, 6, 277, 315, 329, 333, 238, 220, 225, 6, + 226, 225, 264, 264, 315, 227, 6, 318, 6, 318, + 6, 6, 227, 6, 294, 315, 6, 6, 295, 315, + 6, 6, 296, 315, 6, 227, 315, 300, 277, 6, + 324, 324, 324, 324, 318, 324, 315, 315, 315, 315, + 315, 303, 7, 219, 227, 244, 315, 320, 315, 227, + 227, 225, 225, 225, 226, 227, 226, 227, 226, 227, + 6, 6, 227, 227, 289, 227, 227, 227, 227, 225, + 227, 225, 225, 225, 225, 225, 227, 329, 220, 6, + 226, 220, 227, 227, 315, 318, 318, 300, 6, 297, + 300, 6, 298, 300, 6, 299, 300, 6, 6, 6, + 6, 324, 6, 315, 315, 315, 315, 315, 6, 242, + 328, 247, 226, 6, 227, 225, 225, 227, 226, 227, + 226, 227, 226, 227, 227, 254, 225, 225, 225, 225, + 225, 227, 226, 320, 6, 315, 315, 6, 300, 6, + 300, 6, 300, 6, 315, 315, 315, 315, 328, 6, + 245, 328, 227, 227, 227, 227, 227, 227, 227, 227, + 227, 227, 225, 227, 6, 6, 6, 6, 6, 6, + 328, 6 }; #define yyerrok (yyerrstatus = 0) @@ -10740,7 +10807,32 @@ yyreduce: break; case 347: -#line 4386 "Gmsh.y" +#line 4382 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> out[4]; + GModel::current()->getOCCInternals()->importShape((yyvsp[(3) - (4)].c), out); + Shape s; + for(int dim = 0; dim < 4; dim++){ + s.Type = (dim == 3) ? MSH_VOLUME_FROM_GMODEL : + (dim == 2) ? MSH_SURF_FROM_GMODEL : + (dim == 1) ? MSH_SEGM_FROM_GMODEL : MSH_POINT_FROM_GMODEL; + for(unsigned int i = 0; i < out[dim].size(); i++){ + s.Num = out[dim][i]; + List_Add((yyval.l), &s); + } + } + } + else{ + yymsg(0, "ShapeFromFile only available with OpenCASCADE factory"); + } + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 348: +#line 4408 "Gmsh.y" { if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ std::vector<int> shape[4], tool[4]; @@ -10759,15 +10851,15 @@ yyreduce: ;} break; - case 348: -#line 4406 "Gmsh.y" + case 349: +#line 4428 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; ;} break; - case 349: -#line 4410 "Gmsh.y" + case 350: +#line 4432 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -10782,15 +10874,15 @@ yyreduce: ;} break; - case 350: -#line 4425 "Gmsh.y" + case 351: +#line 4447 "Gmsh.y" { (yyval.i) = -1; // left ;} break; - case 351: -#line 4429 "Gmsh.y" + case 352: +#line 4451 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -10806,50 +10898,50 @@ yyreduce: ;} break; - case 352: -#line 4445 "Gmsh.y" + case 353: +#line 4467 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; - case 353: -#line 4449 "Gmsh.y" + case 354: +#line 4471 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; - case 354: -#line 4454 "Gmsh.y" + case 355: +#line 4476 "Gmsh.y" { (yyval.i) = 45; ;} break; - case 355: -#line 4458 "Gmsh.y" + case 356: +#line 4480 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} break; - case 356: -#line 4464 "Gmsh.y" + case 357: +#line 4486 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; - case 357: -#line 4468 "Gmsh.y" + case 358: +#line 4490 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; - case 358: -#line 4475 "Gmsh.y" + case 359: +#line 4497 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; double coef = fabs((yyvsp[(6) - (7)].v)[1]); @@ -10907,8 +10999,8 @@ yyreduce: ;} break; - case 359: -#line 4531 "Gmsh.y" + case 360: +#line 4553 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); if(k != 0 && k != 3 && k != 4){ @@ -10980,16 +11072,16 @@ yyreduce: ;} break; - case 360: -#line 4601 "Gmsh.y" + case 361: +#line 4623 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); ;} break; - case 361: -#line 4606 "Gmsh.y" + case 362: +#line 4628 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); if(k != 0 && k != 6 && k != 8){ @@ -11058,8 +11150,8 @@ yyreduce: ;} break; - case 362: -#line 4673 "Gmsh.y" + case 363: +#line 4695 "Gmsh.y" { if(!(yyvsp[(2) - (3)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -11097,8 +11189,8 @@ yyreduce: ;} break; - case 363: -#line 4709 "Gmsh.y" + case 364: +#line 4731 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (8)].l)); i++){ double d; @@ -11108,8 +11200,8 @@ yyreduce: ;} break; - case 364: -#line 4717 "Gmsh.y" + case 365: +#line 4739 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -11154,8 +11246,8 @@ yyreduce: ;} break; - case 365: -#line 4760 "Gmsh.y" + case 366: +#line 4782 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -11196,8 +11288,8 @@ yyreduce: ;} break; - case 366: -#line 4799 "Gmsh.y" + case 367: +#line 4821 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -11219,8 +11311,8 @@ yyreduce: ;} break; - case 367: -#line 4820 "Gmsh.y" + case 368: +#line 4842 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ yymsg(0, "Number of master lines (%d) different from number of " @@ -11253,8 +11345,8 @@ yyreduce: ;} break; - case 368: -#line 4852 "Gmsh.y" + case 369: +#line 4874 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11282,8 +11374,8 @@ yyreduce: ;} break; - case 369: -#line 4879 "Gmsh.y" + case 370: +#line 4901 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ yymsg(0, "Number of master edges (%d) different from number of " @@ -11310,8 +11402,8 @@ yyreduce: ;} break; - case 370: -#line 4905 "Gmsh.y" + case 371: +#line 4927 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11338,8 +11430,8 @@ yyreduce: ;} break; - case 371: -#line 4931 "Gmsh.y" + case 372: +#line 4953 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ yymsg(0, "Number of master edges (%d) different from number of " @@ -11366,8 +11458,8 @@ yyreduce: ;} break; - case 372: -#line 4957 "Gmsh.y" + case 373: +#line 4979 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11394,8 +11486,8 @@ yyreduce: ;} break; - case 373: -#line 4983 "Gmsh.y" + case 374: +#line 5005 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ yymsg(0, "Number of master surface edges (%d) different from number of " @@ -11418,8 +11510,8 @@ yyreduce: ;} break; - case 374: -#line 5004 "Gmsh.y" + case 375: +#line 5026 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -11449,8 +11541,8 @@ yyreduce: ;} break; - case 375: -#line 5032 "Gmsh.y" + case 376: +#line 5054 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -11480,8 +11572,8 @@ yyreduce: ;} break; - case 376: -#line 5060 "Gmsh.y" + case 377: +#line 5082 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(8) - (10)].d)); if(v){ @@ -11511,8 +11603,8 @@ yyreduce: ;} break; - case 377: -#line 5088 "Gmsh.y" + case 378: +#line 5110 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(8) - (10)].d)); if(v){ @@ -11542,8 +11634,8 @@ yyreduce: ;} break; - case 378: -#line 5116 "Gmsh.y" + case 379: +#line 5138 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(8) - (10)].d)); if(v){ @@ -11573,8 +11665,8 @@ yyreduce: ;} break; - case 379: -#line 5144 "Gmsh.y" + case 380: +#line 5166 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -11615,8 +11707,8 @@ yyreduce: ;} break; - case 380: -#line 5183 "Gmsh.y" + case 381: +#line 5205 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Curves); @@ -11657,8 +11749,8 @@ yyreduce: ;} break; - case 381: -#line 5222 "Gmsh.y" + case 382: +#line 5244 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::viter it = GModel::current()->firstVertex(); @@ -11681,8 +11773,8 @@ yyreduce: ;} break; - case 382: -#line 5243 "Gmsh.y" + case 383: +#line 5265 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::eiter it = GModel::current()->firstEdge(); @@ -11705,8 +11797,8 @@ yyreduce: ;} break; - case 383: -#line 5264 "Gmsh.y" + case 384: +#line 5286 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::fiter it = GModel::current()->firstFace(); @@ -11729,15 +11821,15 @@ yyreduce: ;} break; - case 384: -#line 5291 "Gmsh.y" + case 385: +#line 5313 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; - case 385: -#line 5295 "Gmsh.y" + case 386: +#line 5317 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -11749,8 +11841,8 @@ yyreduce: ;} break; - case 386: -#line 5305 "Gmsh.y" + case 387: +#line 5327 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (6)].l)) >= 2){ double d; @@ -11782,23 +11874,23 @@ yyreduce: ;} break; - case 387: -#line 5339 "Gmsh.y" + case 388: +#line 5361 "Gmsh.y" { (yyval.c) = (char*)"Homology"; ;} break; - case 388: -#line 5340 "Gmsh.y" + case 389: +#line 5362 "Gmsh.y" { (yyval.c) = (char*)"Cohomology"; ;} break; - case 389: -#line 5341 "Gmsh.y" + case 390: +#line 5363 "Gmsh.y" { (yyval.c) = (char*)"Betti"; ;} break; - case 390: -#line 5346 "Gmsh.y" + case 391: +#line 5368 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < 4; i++) dim.push_back(i); @@ -11806,8 +11898,8 @@ yyreduce: ;} break; - case 391: -#line 5352 "Gmsh.y" + case 392: +#line 5374 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ @@ -11821,8 +11913,8 @@ yyreduce: ;} break; - case 392: -#line 5364 "Gmsh.y" + case 393: +#line 5386 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ @@ -11842,8 +11934,8 @@ yyreduce: ;} break; - case 393: -#line 5382 "Gmsh.y" + case 394: +#line 5404 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){ @@ -11868,48 +11960,48 @@ yyreduce: ;} break; - case 394: -#line 5409 "Gmsh.y" + case 395: +#line 5431 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 395: -#line 5410 "Gmsh.y" + case 396: +#line 5432 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; - case 396: -#line 5411 "Gmsh.y" + case 397: +#line 5433 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; - case 397: -#line 5412 "Gmsh.y" + case 398: +#line 5434 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; - case 398: -#line 5413 "Gmsh.y" + case 399: +#line 5435 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; - case 399: -#line 5414 "Gmsh.y" + case 400: +#line 5436 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; - case 400: -#line 5415 "Gmsh.y" + case 401: +#line 5437 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; - case 401: -#line 5416 "Gmsh.y" + case 402: +#line 5438 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; - case 402: -#line 5418 "Gmsh.y" + case 403: +#line 5440 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -11918,233 +12010,233 @@ yyreduce: ;} break; - case 403: -#line 5424 "Gmsh.y" + case 404: +#line 5446 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; - case 404: -#line 5425 "Gmsh.y" + case 405: +#line 5447 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; - case 405: -#line 5426 "Gmsh.y" + case 406: +#line 5448 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; - case 406: -#line 5427 "Gmsh.y" + case 407: +#line 5449 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; - case 407: -#line 5428 "Gmsh.y" + case 408: +#line 5450 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; - case 408: -#line 5429 "Gmsh.y" + case 409: +#line 5451 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; - case 409: -#line 5430 "Gmsh.y" + case 410: +#line 5452 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; - case 410: -#line 5431 "Gmsh.y" + case 411: +#line 5453 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; - case 411: -#line 5432 "Gmsh.y" + case 412: +#line 5454 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; - case 412: -#line 5433 "Gmsh.y" + case 413: +#line 5455 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; - case 413: -#line 5434 "Gmsh.y" + case 414: +#line 5456 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; - case 414: -#line 5435 "Gmsh.y" + case 415: +#line 5457 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; - case 415: -#line 5436 "Gmsh.y" + case 416: +#line 5458 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; - case 416: -#line 5437 "Gmsh.y" + case 417: +#line 5459 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; - case 417: -#line 5438 "Gmsh.y" + case 418: +#line 5460 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; - case 418: -#line 5439 "Gmsh.y" + case 419: +#line 5461 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; - case 419: -#line 5440 "Gmsh.y" + case 420: +#line 5462 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; - case 420: -#line 5441 "Gmsh.y" + case 421: +#line 5463 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; - case 421: -#line 5442 "Gmsh.y" + case 422: +#line 5464 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; - case 422: -#line 5443 "Gmsh.y" + case 423: +#line 5465 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; - case 423: -#line 5444 "Gmsh.y" + case 424: +#line 5466 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; - case 424: -#line 5445 "Gmsh.y" + case 425: +#line 5467 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; - case 425: -#line 5446 "Gmsh.y" + case 426: +#line 5468 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; - case 426: -#line 5447 "Gmsh.y" + case 427: +#line 5469 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; - case 427: -#line 5448 "Gmsh.y" + case 428: +#line 5470 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; - case 428: -#line 5449 "Gmsh.y" + case 429: +#line 5471 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; - case 429: -#line 5450 "Gmsh.y" + case 430: +#line 5472 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; - case 430: -#line 5451 "Gmsh.y" + case 431: +#line 5473 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; - case 431: -#line 5452 "Gmsh.y" + case 432: +#line 5474 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} break; - case 432: -#line 5453 "Gmsh.y" + case 433: +#line 5475 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 433: -#line 5454 "Gmsh.y" + case 434: +#line 5476 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; - case 434: -#line 5455 "Gmsh.y" + case 435: +#line 5477 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; - case 435: -#line 5456 "Gmsh.y" + case 436: +#line 5478 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; - case 436: -#line 5465 "Gmsh.y" + case 437: +#line 5487 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 437: -#line 5466 "Gmsh.y" + case 438: +#line 5488 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; - case 438: -#line 5467 "Gmsh.y" + case 439: +#line 5489 "Gmsh.y" { (yyval.d) = (double)ImbricatedTest; ;} break; - case 439: -#line 5468 "Gmsh.y" + case 440: +#line 5490 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; - case 440: -#line 5469 "Gmsh.y" + case 441: +#line 5491 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; - case 441: -#line 5470 "Gmsh.y" + case 442: +#line 5492 "Gmsh.y" { (yyval.d) = GetGmshMajorVersion(); ;} break; - case 442: -#line 5471 "Gmsh.y" + case 443: +#line 5493 "Gmsh.y" { (yyval.d) = GetGmshMinorVersion(); ;} break; - case 443: -#line 5472 "Gmsh.y" + case 444: +#line 5494 "Gmsh.y" { (yyval.d) = GetGmshPatchVersion(); ;} break; - case 444: -#line 5473 "Gmsh.y" + case 445: +#line 5495 "Gmsh.y" { (yyval.d) = Cpu(); ;} break; - case 445: -#line 5474 "Gmsh.y" + case 446: +#line 5496 "Gmsh.y" { (yyval.d) = GetMemoryUsage()/1024./1024.; ;} break; - case 446: -#line 5475 "Gmsh.y" + case 447: +#line 5497 "Gmsh.y" { (yyval.d) = TotalRam(); ;} break; - case 447: -#line 5480 "Gmsh.y" + case 448: +#line 5502 "Gmsh.y" { floatOptions.clear(); charOptions.clear(); ;} break; - case 448: -#line 5482 "Gmsh.y" + case 449: +#line 5504 "Gmsh.y" { std::vector<double> val(1, (yyvsp[(3) - (6)].d)); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); @@ -12152,24 +12244,24 @@ yyreduce: ;} break; - case 449: -#line 5488 "Gmsh.y" + case 450: +#line 5510 "Gmsh.y" { (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); ;} break; - case 450: -#line 5493 "Gmsh.y" + case 451: +#line 5515 "Gmsh.y" { (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 451: -#line 5498 "Gmsh.y" + case 452: +#line 5520 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -12188,8 +12280,8 @@ yyreduce: ;} break; - case 452: -#line 5515 "Gmsh.y" + case 453: +#line 5537 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -12209,8 +12301,8 @@ yyreduce: ;} break; - case 453: -#line 5533 "Gmsh.y" + case 454: +#line 5555 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -12230,8 +12322,8 @@ yyreduce: ;} break; - case 454: -#line 5551 "Gmsh.y" + case 455: +#line 5573 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -12251,8 +12343,8 @@ yyreduce: ;} break; - case 455: -#line 5569 "Gmsh.y" + case 456: +#line 5591 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -12272,16 +12364,16 @@ yyreduce: ;} break; - case 456: -#line 5587 "Gmsh.y" + case 457: +#line 5609 "Gmsh.y" { (yyval.d) = gmsh_yysymbols.count((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); ;} break; - case 457: -#line 5592 "Gmsh.y" + case 458: +#line 5614 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); (yyval.d) = !StatFile(tmp); @@ -12289,8 +12381,8 @@ yyreduce: ;} break; - case 458: -#line 5598 "Gmsh.y" + case 459: +#line 5620 "Gmsh.y" { if(gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (4)].c)]); @@ -12307,8 +12399,8 @@ yyreduce: ;} break; - case 459: -#line 5613 "Gmsh.y" + case 460: +#line 5635 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -12329,8 +12421,8 @@ yyreduce: ;} break; - case 460: -#line 5632 "Gmsh.y" + case 461: +#line 5654 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12352,8 +12444,8 @@ yyreduce: ;} break; - case 461: -#line 5652 "Gmsh.y" + case 462: +#line 5674 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12375,8 +12467,8 @@ yyreduce: ;} break; - case 462: -#line 5672 "Gmsh.y" + case 463: +#line 5694 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12398,8 +12490,8 @@ yyreduce: ;} break; - case 463: -#line 5692 "Gmsh.y" + case 464: +#line 5714 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12421,24 +12513,24 @@ yyreduce: ;} break; - case 464: -#line 5715 "Gmsh.y" + case 465: +#line 5737 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); ;} break; - case 465: -#line 5720 "Gmsh.y" + case 466: +#line 5742 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); ;} break; - case 466: -#line 5725 "Gmsh.y" + case 467: +#line 5747 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -12450,8 +12542,8 @@ yyreduce: ;} break; - case 467: -#line 5735 "Gmsh.y" + case 468: +#line 5757 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -12463,16 +12555,16 @@ yyreduce: ;} break; - case 468: -#line 5745 "Gmsh.y" + case 469: +#line 5767 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 469: -#line 5750 "Gmsh.y" + case 470: +#line 5772 "Gmsh.y" { int matches = 0; for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ @@ -12485,8 +12577,8 @@ yyreduce: ;} break; - case 470: -#line 5761 "Gmsh.y" + case 471: +#line 5783 "Gmsh.y" { std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); if(s.find(substr) != std::string::npos) @@ -12497,24 +12589,24 @@ yyreduce: ;} break; - case 471: -#line 5770 "Gmsh.y" + case 472: +#line 5792 "Gmsh.y" { (yyval.d) = strlen((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); ;} break; - case 472: -#line 5775 "Gmsh.y" + case 473: +#line 5797 "Gmsh.y" { (yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); ;} break; - case 473: -#line 5780 "Gmsh.y" + case 474: +#line 5802 "Gmsh.y" { int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){ @@ -12540,116 +12632,116 @@ yyreduce: ;} break; - case 474: -#line 5807 "Gmsh.y" + case 475: +#line 5829 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 475: -#line 5811 "Gmsh.y" + case 476: +#line 5833 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 476: -#line 5815 "Gmsh.y" + case 477: +#line 5837 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 477: -#line 5819 "Gmsh.y" + case 478: +#line 5841 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 478: -#line 5823 "Gmsh.y" + case 479: +#line 5845 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 479: -#line 5830 "Gmsh.y" + case 480: +#line 5852 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; - case 480: -#line 5834 "Gmsh.y" + case 481: +#line 5856 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; - case 481: -#line 5838 "Gmsh.y" + case 482: +#line 5860 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 482: -#line 5842 "Gmsh.y" + case 483: +#line 5864 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 483: -#line 5849 "Gmsh.y" + case 484: +#line 5871 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 484: -#line 5854 "Gmsh.y" + case 485: +#line 5876 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 485: -#line 5861 "Gmsh.y" + case 486: +#line 5883 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 486: -#line 5866 "Gmsh.y" + case 487: +#line 5888 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 487: -#line 5870 "Gmsh.y" + case 488: +#line 5892 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 488: -#line 5875 "Gmsh.y" + case 489: +#line 5897 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 489: -#line 5879 "Gmsh.y" + case 490: +#line 5901 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12659,8 +12751,8 @@ yyreduce: ;} break; - case 490: -#line 5887 "Gmsh.y" + case 491: +#line 5909 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12670,15 +12762,15 @@ yyreduce: ;} break; - case 491: -#line 5898 "Gmsh.y" + case 492: +#line 5920 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 492: -#line 5902 "Gmsh.y" + case 493: +#line 5924 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -12689,8 +12781,8 @@ yyreduce: ;} break; - case 493: -#line 5914 "Gmsh.y" + case 494: +#line 5936 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12700,8 +12792,8 @@ yyreduce: ;} break; - case 494: -#line 5922 "Gmsh.y" + case 495: +#line 5944 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12711,8 +12803,8 @@ yyreduce: ;} break; - case 495: -#line 5930 "Gmsh.y" + case 496: +#line 5952 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); @@ -12721,8 +12813,8 @@ yyreduce: ;} break; - case 496: -#line 5937 "Gmsh.y" + case 497: +#line 5959 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) @@ -12734,8 +12826,8 @@ yyreduce: ;} break; - case 497: -#line 5947 "Gmsh.y" + case 498: +#line 5969 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -12766,64 +12858,64 @@ yyreduce: ;} break; - case 498: -#line 5976 "Gmsh.y" + case 499: +#line 5998 "Gmsh.y" { (yyval.l) = GetAllElementaryEntityNumbers(0); ;} break; - case 499: -#line 5980 "Gmsh.y" + case 500: +#line 6002 "Gmsh.y" { (yyval.l) = GetAllElementaryEntityNumbers(1); ;} break; - case 500: -#line 5984 "Gmsh.y" + case 501: +#line 6006 "Gmsh.y" { (yyval.l) = GetAllElementaryEntityNumbers(2); ;} break; - case 501: -#line 5988 "Gmsh.y" + case 502: +#line 6010 "Gmsh.y" { (yyval.l) = GetAllElementaryEntityNumbers(3); ;} break; - case 502: -#line 5992 "Gmsh.y" + case 503: +#line 6014 "Gmsh.y" { (yyval.l) = GetAllPhysicalEntityNumbers(0); ;} break; - case 503: -#line 5996 "Gmsh.y" + case 504: +#line 6018 "Gmsh.y" { (yyval.l) = GetAllPhysicalEntityNumbers(1); ;} break; - case 504: -#line 6000 "Gmsh.y" + case 505: +#line 6022 "Gmsh.y" { (yyval.l) = GetAllPhysicalEntityNumbers(2); ;} break; - case 505: -#line 6004 "Gmsh.y" + case 506: +#line 6026 "Gmsh.y" { (yyval.l) = GetAllPhysicalEntityNumbers(3); ;} break; - case 506: -#line 6008 "Gmsh.y" + case 507: +#line 6030 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -12854,8 +12946,8 @@ yyreduce: ;} break; - case 507: -#line 6037 "Gmsh.y" + case 508: +#line 6059 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -12886,8 +12978,8 @@ yyreduce: ;} break; - case 508: -#line 6066 "Gmsh.y" + case 509: +#line 6088 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -12918,8 +13010,8 @@ yyreduce: ;} break; - case 509: -#line 6095 "Gmsh.y" + case 510: +#line 6117 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -12950,8 +13042,8 @@ yyreduce: ;} break; - case 510: -#line 6125 "Gmsh.y" + case 511: +#line 6147 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); GModel::current()->importGEOInternals(); @@ -12965,8 +13057,8 @@ yyreduce: ;} break; - case 511: -#line 6138 "Gmsh.y" + case 512: +#line 6160 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); GModel::current()->importGEOInternals(); @@ -12980,8 +13072,8 @@ yyreduce: ;} break; - case 512: -#line 6151 "Gmsh.y" + case 513: +#line 6173 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); GModel::current()->importGEOInternals(); @@ -12995,8 +13087,8 @@ yyreduce: ;} break; - case 513: -#line 6164 "Gmsh.y" + case 514: +#line 6186 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); GModel::current()->importGEOInternals(); @@ -13010,8 +13102,8 @@ yyreduce: ;} break; - case 514: -#line 6176 "Gmsh.y" + case 515: +#line 6198 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -13023,8 +13115,8 @@ yyreduce: ;} break; - case 515: -#line 6186 "Gmsh.y" + case 516: +#line 6208 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -13036,8 +13128,8 @@ yyreduce: ;} break; - case 516: -#line 6196 "Gmsh.y" + case 517: +#line 6218 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -13049,8 +13141,8 @@ yyreduce: ;} break; - case 517: -#line 6206 "Gmsh.y" + case 518: +#line 6228 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -13064,8 +13156,8 @@ yyreduce: ;} break; - case 518: -#line 6218 "Gmsh.y" + case 519: +#line 6240 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -13079,8 +13171,8 @@ yyreduce: ;} break; - case 519: -#line 6231 "Gmsh.y" + case 520: +#line 6253 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) @@ -13094,36 +13186,36 @@ yyreduce: ;} break; - case 520: -#line 6243 "Gmsh.y" + case 521: +#line 6265 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); ;} break; - case 521: -#line 6247 "Gmsh.y" + case 522: +#line 6269 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); ;} break; - case 522: -#line 6251 "Gmsh.y" + case 523: +#line 6273 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (6)].l); ;} break; - case 523: -#line 6255 "Gmsh.y" + case 524: +#line 6277 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (6)].l); ;} break; - case 524: -#line 6259 "Gmsh.y" + case 525: +#line 6281 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -13143,8 +13235,8 @@ yyreduce: ;} break; - case 525: -#line 6277 "Gmsh.y" + case 526: +#line 6299 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -13164,8 +13256,8 @@ yyreduce: ;} break; - case 526: -#line 6295 "Gmsh.y" + case 527: +#line 6317 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(double)); for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { @@ -13175,8 +13267,8 @@ yyreduce: ;} break; - case 527: -#line 6303 "Gmsh.y" + case 528: +#line 6325 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(double)); for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { @@ -13186,8 +13278,8 @@ yyreduce: ;} break; - case 528: -#line 6311 "Gmsh.y" + case 529: +#line 6333 "Gmsh.y" { Msg::Barrier(); FILE *File; @@ -13218,8 +13310,8 @@ yyreduce: ;} break; - case 529: -#line 6340 "Gmsh.y" + case 530: +#line 6362 "Gmsh.y" { double x0 = (yyvsp[(3) - (14)].d), x1 = (yyvsp[(5) - (14)].d), y0 = (yyvsp[(7) - (14)].d), y1 = (yyvsp[(9) - (14)].d), ys = (yyvsp[(11) - (14)].d); int N = (int)(yyvsp[(13) - (14)].d); @@ -13231,30 +13323,30 @@ yyreduce: ;} break; - case 530: -#line 6353 "Gmsh.y" + case 531: +#line 6375 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 531: -#line 6358 "Gmsh.y" + case 532: +#line 6380 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 532: -#line 6362 "Gmsh.y" + case 533: +#line 6384 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 533: -#line 6366 "Gmsh.y" + case 534: +#line 6388 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -13265,22 +13357,22 @@ yyreduce: ;} break; - case 534: -#line 6378 "Gmsh.y" + case 535: +#line 6400 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 535: -#line 6382 "Gmsh.y" + case 536: +#line 6404 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 536: -#line 6394 "Gmsh.y" + case 537: +#line 6416 "Gmsh.y" { int flag = 0; if(gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ @@ -13299,8 +13391,8 @@ yyreduce: ;} break; - case 537: -#line 6411 "Gmsh.y" + case 538: +#line 6433 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -13309,15 +13401,15 @@ yyreduce: ;} break; - case 538: -#line 6421 "Gmsh.y" + case 539: +#line 6443 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 539: -#line 6425 "Gmsh.y" + case 540: +#line 6447 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -13331,30 +13423,30 @@ yyreduce: ;} break; - case 540: -#line 6440 "Gmsh.y" + case 541: +#line 6462 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 541: -#line 6445 "Gmsh.y" + case 542: +#line 6467 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 542: -#line 6452 "Gmsh.y" + case 543: +#line 6474 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 543: -#line 6456 "Gmsh.y" + case 544: +#line 6478 "Gmsh.y" { std::string val; if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))) @@ -13369,8 +13461,8 @@ yyreduce: ;} break; - case 544: -#line 6469 "Gmsh.y" + case 545: +#line 6491 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -13386,8 +13478,8 @@ yyreduce: ;} break; - case 545: -#line 6483 "Gmsh.y" + case 546: +#line 6505 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -13403,8 +13495,8 @@ yyreduce: ;} break; - case 546: -#line 6497 "Gmsh.y" + case 547: +#line 6519 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -13420,8 +13512,8 @@ yyreduce: ;} break; - case 547: -#line 6511 "Gmsh.y" + case 548: +#line 6533 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -13437,8 +13529,8 @@ yyreduce: ;} break; - case 548: -#line 6525 "Gmsh.y" + case 549: +#line 6547 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); @@ -13448,8 +13540,8 @@ yyreduce: ;} break; - case 549: -#line 6533 "Gmsh.y" + case 550: +#line 6555 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); @@ -13459,22 +13551,22 @@ yyreduce: ;} break; - case 550: -#line 6544 "Gmsh.y" + case 551: +#line 6566 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 551: -#line 6548 "Gmsh.y" + case 552: +#line 6570 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 552: -#line 6552 "Gmsh.y" + case 553: +#line 6574 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -13484,8 +13576,8 @@ yyreduce: ;} break; - case 553: -#line 6560 "Gmsh.y" + case 554: +#line 6582 "Gmsh.y" { std::string exe = Msg::GetExecutableName(); (yyval.c) = (char *)Malloc(exe.size() + 1); @@ -13493,8 +13585,8 @@ yyreduce: ;} break; - case 554: -#line 6566 "Gmsh.y" + case 555: +#line 6588 "Gmsh.y" { std::string action = Msg::GetOnelabAction(); (yyval.c) = (char *)Malloc(action.size() + 1); @@ -13502,8 +13594,8 @@ yyreduce: ;} break; - case 555: -#line 6572 "Gmsh.y" + case 556: +#line 6594 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); if(!env) env = ""; @@ -13513,8 +13605,8 @@ yyreduce: ;} break; - case 556: -#line 6580 "Gmsh.y" + case 557: +#line 6602 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13524,8 +13616,8 @@ yyreduce: ;} break; - case 557: -#line 6588 "Gmsh.y" + case 558: +#line 6610 "Gmsh.y" { std::string s = Msg::GetOnelabString((yyvsp[(3) - (4)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13534,8 +13626,8 @@ yyreduce: ;} break; - case 558: -#line 6595 "Gmsh.y" + case 559: +#line 6617 "Gmsh.y" { std::string s = Msg::GetOnelabString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13545,8 +13637,8 @@ yyreduce: ;} break; - case 559: -#line 6603 "Gmsh.y" + case 560: +#line 6625 "Gmsh.y" { int size = 1; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -13563,8 +13655,8 @@ yyreduce: ;} break; - case 560: -#line 6618 "Gmsh.y" + case 561: +#line 6640 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -13580,8 +13672,8 @@ yyreduce: ;} break; - case 561: -#line 6632 "Gmsh.y" + case 562: +#line 6654 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -13597,8 +13689,8 @@ yyreduce: ;} break; - case 562: -#line 6646 "Gmsh.y" + case 563: +#line 6668 "Gmsh.y" { std::string input = (yyvsp[(3) - (8)].c); std::string substr_old = (yyvsp[(5) - (8)].c); @@ -13612,8 +13704,8 @@ yyreduce: ;} break; - case 563: -#line 6658 "Gmsh.y" + case 564: +#line 6680 "Gmsh.y" { int size = 1; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -13631,8 +13723,8 @@ yyreduce: ;} break; - case 564: -#line 6674 "Gmsh.y" + case 565: +#line 6696 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13643,8 +13735,8 @@ yyreduce: ;} break; - case 565: -#line 6683 "Gmsh.y" + case 566: +#line 6705 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13655,8 +13747,8 @@ yyreduce: ;} break; - case 566: -#line 6692 "Gmsh.y" + case 567: +#line 6714 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13668,8 +13760,8 @@ yyreduce: ;} break; - case 567: -#line 6702 "Gmsh.y" + case 568: +#line 6724 "Gmsh.y" { if((yyvsp[(3) - (8)].d)){ (yyval.c) = (yyvsp[(5) - (8)].c); @@ -13682,8 +13774,8 @@ yyreduce: ;} break; - case 568: -#line 6713 "Gmsh.y" + case 569: +#line 6735 "Gmsh.y" { std::string in = (yyvsp[(3) - (8)].c); std::string out = in.substr((int)(yyvsp[(5) - (8)].d), (int)(yyvsp[(7) - (8)].d)); @@ -13693,8 +13785,8 @@ yyreduce: ;} break; - case 569: -#line 6721 "Gmsh.y" + case 570: +#line 6743 "Gmsh.y" { std::string in = (yyvsp[(3) - (6)].c); std::string out = in.substr((int)(yyvsp[(5) - (6)].d), std::string::npos); @@ -13704,15 +13796,15 @@ yyreduce: ;} break; - case 570: -#line 6729 "Gmsh.y" + case 571: +#line 6751 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 571: -#line 6733 "Gmsh.y" + case 572: +#line 6755 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -13733,8 +13825,8 @@ yyreduce: ;} break; - case 572: -#line 6752 "Gmsh.y" + case 573: +#line 6774 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13743,8 +13835,8 @@ yyreduce: ;} break; - case 573: -#line 6759 "Gmsh.y" + case 574: +#line 6781 "Gmsh.y" { std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0]; (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13752,8 +13844,8 @@ yyreduce: ;} break; - case 574: -#line 6765 "Gmsh.y" + case 575: +#line 6787 "Gmsh.y" { std::string tmp = SplitFileName((yyvsp[(3) - (4)].c))[0]; (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13762,8 +13854,8 @@ yyreduce: ;} break; - case 575: -#line 6772 "Gmsh.y" + case 576: +#line 6794 "Gmsh.y" { std::string tmp = GetAbsolutePath((yyvsp[(3) - (4)].c)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13772,13 +13864,13 @@ yyreduce: ;} break; - case 576: -#line 6779 "Gmsh.y" + case 577: +#line 6801 "Gmsh.y" { floatOptions.clear(); charOptions.clear(); ;} break; - case 577: -#line 6781 "Gmsh.y" + case 578: +#line 6803 "Gmsh.y" { std::string val((yyvsp[(3) - (6)].c)); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); @@ -13788,21 +13880,21 @@ yyreduce: ;} break; - case 578: -#line 6792 "Gmsh.y" + case 579: +#line 6814 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(char*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); ;} break; - case 579: -#line 6797 "Gmsh.y" + case 580: +#line 6819 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;} break; - case 580: -#line 6803 "Gmsh.y" + case 581: +#line 6825 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -13812,8 +13904,8 @@ yyreduce: ;} break; - case 581: -#line 6812 "Gmsh.y" + case 582: +#line 6834 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -13823,24 +13915,24 @@ yyreduce: ;} break; - case 582: -#line 6825 "Gmsh.y" + case 583: +#line 6847 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 583: -#line 6828 "Gmsh.y" + case 584: +#line 6850 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 584: -#line 6832 "Gmsh.y" + case 585: +#line 6854 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; /* Line 1267 of yacc.c. */ -#line 13844 "Gmsh.tab.cpp" +#line 13936 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -14054,7 +14146,7 @@ yyreturn: } -#line 6835 "Gmsh.y" +#line 6857 "Gmsh.y" void assignVariable(const std::string &name, int index, int assignType, diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 5ced40150e1163b4909c83bd0ce45d0080576c5a..7758580a055436e0e3949f01b55453eb5bdbf926 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -134,116 +134,117 @@ tCone = 350, tEllipsoid = 351, tQuadric = 352, - tCharacteristic = 353, - tLength = 354, - tParametric = 355, - tElliptic = 356, - tRefineMesh = 357, - tAdaptMesh = 358, - tRelocateMesh = 359, - tSetFactory = 360, - tThruSections = 361, - tPlane = 362, - tRuled = 363, - tTransfinite = 364, - tComplex = 365, - tPhysical = 366, - tCompound = 367, - tPeriodic = 368, - tUsing = 369, - tPlugin = 370, - tDegenerated = 371, - tRecursive = 372, - tRotate = 373, - tTranslate = 374, - tSymmetry = 375, - tDilate = 376, - tExtrude = 377, - tLevelset = 378, - tAffine = 379, - tBooleanUnion = 380, - tBooleanIntersection = 381, - tBooleanDifference = 382, - tBooleanSection = 383, - tBooleanFragments = 384, - tRecombine = 385, - tSmoother = 386, - tSplit = 387, - tDelete = 388, - tCoherence = 389, - tIntersect = 390, - tMeshAlgorithm = 391, - tReverse = 392, - tLayers = 393, - tScaleLast = 394, - tHole = 395, - tAlias = 396, - tAliasWithOptions = 397, - tCopyOptions = 398, - tQuadTriAddVerts = 399, - tQuadTriNoNewVerts = 400, - tQuadTriSngl = 401, - tQuadTriDbl = 402, - tRecombLaterals = 403, - tTransfQuadTri = 404, - tText2D = 405, - tText3D = 406, - tInterpolationScheme = 407, - tTime = 408, - tCombine = 409, - tBSpline = 410, - tBezier = 411, - tNurbs = 412, - tNurbsOrder = 413, - tNurbsKnots = 414, - tColor = 415, - tColorTable = 416, - tFor = 417, - tIn = 418, - tEndFor = 419, - tIf = 420, - tElseIf = 421, - tElse = 422, - tEndIf = 423, - tExit = 424, - tAbort = 425, - tField = 426, - tReturn = 427, - tCall = 428, - tSlide = 429, - tMacro = 430, - tShow = 431, - tHide = 432, - tGetValue = 433, - tGetStringValue = 434, - tGetEnv = 435, - tGetString = 436, - tGetNumber = 437, - tHomology = 438, - tCohomology = 439, - tBetti = 440, - tExists = 441, - tFileExists = 442, - tGMSH_MAJOR_VERSION = 443, - tGMSH_MINOR_VERSION = 444, - tGMSH_PATCH_VERSION = 445, - tGmshExecutableName = 446, - tSetPartition = 447, - tNameToString = 448, - tStringToName = 449, - tAFFECTDIVIDE = 450, - tAFFECTTIMES = 451, - tAFFECTMINUS = 452, - tAFFECTPLUS = 453, - tOR = 454, - tAND = 455, - tNOTEQUAL = 456, - tEQUAL = 457, - tGREATEROREQUAL = 458, - tLESSOREQUAL = 459, - UNARYPREC = 460, - tMINUSMINUS = 461, - tPLUSPLUS = 462 + tShapeFromFile = 353, + tCharacteristic = 354, + tLength = 355, + tParametric = 356, + tElliptic = 357, + tRefineMesh = 358, + tAdaptMesh = 359, + tRelocateMesh = 360, + tSetFactory = 361, + tThruSections = 362, + tPlane = 363, + tRuled = 364, + tTransfinite = 365, + tComplex = 366, + tPhysical = 367, + tCompound = 368, + tPeriodic = 369, + tUsing = 370, + tPlugin = 371, + tDegenerated = 372, + tRecursive = 373, + tRotate = 374, + tTranslate = 375, + tSymmetry = 376, + tDilate = 377, + tExtrude = 378, + tLevelset = 379, + tAffine = 380, + tBooleanUnion = 381, + tBooleanIntersection = 382, + tBooleanDifference = 383, + tBooleanSection = 384, + tBooleanFragments = 385, + tRecombine = 386, + tSmoother = 387, + tSplit = 388, + tDelete = 389, + tCoherence = 390, + tIntersect = 391, + tMeshAlgorithm = 392, + tReverse = 393, + tLayers = 394, + tScaleLast = 395, + tHole = 396, + tAlias = 397, + tAliasWithOptions = 398, + tCopyOptions = 399, + tQuadTriAddVerts = 400, + tQuadTriNoNewVerts = 401, + tQuadTriSngl = 402, + tQuadTriDbl = 403, + tRecombLaterals = 404, + tTransfQuadTri = 405, + tText2D = 406, + tText3D = 407, + tInterpolationScheme = 408, + tTime = 409, + tCombine = 410, + tBSpline = 411, + tBezier = 412, + tNurbs = 413, + tNurbsOrder = 414, + tNurbsKnots = 415, + tColor = 416, + tColorTable = 417, + tFor = 418, + tIn = 419, + tEndFor = 420, + tIf = 421, + tElseIf = 422, + tElse = 423, + tEndIf = 424, + tExit = 425, + tAbort = 426, + tField = 427, + tReturn = 428, + tCall = 429, + tSlide = 430, + tMacro = 431, + tShow = 432, + tHide = 433, + tGetValue = 434, + tGetStringValue = 435, + tGetEnv = 436, + tGetString = 437, + tGetNumber = 438, + tHomology = 439, + tCohomology = 440, + tBetti = 441, + tExists = 442, + tFileExists = 443, + tGMSH_MAJOR_VERSION = 444, + tGMSH_MINOR_VERSION = 445, + tGMSH_PATCH_VERSION = 446, + tGmshExecutableName = 447, + tSetPartition = 448, + tNameToString = 449, + tStringToName = 450, + tAFFECTDIVIDE = 451, + tAFFECTTIMES = 452, + tAFFECTMINUS = 453, + tAFFECTPLUS = 454, + tOR = 455, + tAND = 456, + tNOTEQUAL = 457, + tEQUAL = 458, + tGREATEROREQUAL = 459, + tLESSOREQUAL = 460, + UNARYPREC = 461, + tMINUSMINUS = 462, + tPLUSPLUS = 463 }; #endif /* Tokens. */ @@ -342,116 +343,117 @@ #define tCone 350 #define tEllipsoid 351 #define tQuadric 352 -#define tCharacteristic 353 -#define tLength 354 -#define tParametric 355 -#define tElliptic 356 -#define tRefineMesh 357 -#define tAdaptMesh 358 -#define tRelocateMesh 359 -#define tSetFactory 360 -#define tThruSections 361 -#define tPlane 362 -#define tRuled 363 -#define tTransfinite 364 -#define tComplex 365 -#define tPhysical 366 -#define tCompound 367 -#define tPeriodic 368 -#define tUsing 369 -#define tPlugin 370 -#define tDegenerated 371 -#define tRecursive 372 -#define tRotate 373 -#define tTranslate 374 -#define tSymmetry 375 -#define tDilate 376 -#define tExtrude 377 -#define tLevelset 378 -#define tAffine 379 -#define tBooleanUnion 380 -#define tBooleanIntersection 381 -#define tBooleanDifference 382 -#define tBooleanSection 383 -#define tBooleanFragments 384 -#define tRecombine 385 -#define tSmoother 386 -#define tSplit 387 -#define tDelete 388 -#define tCoherence 389 -#define tIntersect 390 -#define tMeshAlgorithm 391 -#define tReverse 392 -#define tLayers 393 -#define tScaleLast 394 -#define tHole 395 -#define tAlias 396 -#define tAliasWithOptions 397 -#define tCopyOptions 398 -#define tQuadTriAddVerts 399 -#define tQuadTriNoNewVerts 400 -#define tQuadTriSngl 401 -#define tQuadTriDbl 402 -#define tRecombLaterals 403 -#define tTransfQuadTri 404 -#define tText2D 405 -#define tText3D 406 -#define tInterpolationScheme 407 -#define tTime 408 -#define tCombine 409 -#define tBSpline 410 -#define tBezier 411 -#define tNurbs 412 -#define tNurbsOrder 413 -#define tNurbsKnots 414 -#define tColor 415 -#define tColorTable 416 -#define tFor 417 -#define tIn 418 -#define tEndFor 419 -#define tIf 420 -#define tElseIf 421 -#define tElse 422 -#define tEndIf 423 -#define tExit 424 -#define tAbort 425 -#define tField 426 -#define tReturn 427 -#define tCall 428 -#define tSlide 429 -#define tMacro 430 -#define tShow 431 -#define tHide 432 -#define tGetValue 433 -#define tGetStringValue 434 -#define tGetEnv 435 -#define tGetString 436 -#define tGetNumber 437 -#define tHomology 438 -#define tCohomology 439 -#define tBetti 440 -#define tExists 441 -#define tFileExists 442 -#define tGMSH_MAJOR_VERSION 443 -#define tGMSH_MINOR_VERSION 444 -#define tGMSH_PATCH_VERSION 445 -#define tGmshExecutableName 446 -#define tSetPartition 447 -#define tNameToString 448 -#define tStringToName 449 -#define tAFFECTDIVIDE 450 -#define tAFFECTTIMES 451 -#define tAFFECTMINUS 452 -#define tAFFECTPLUS 453 -#define tOR 454 -#define tAND 455 -#define tNOTEQUAL 456 -#define tEQUAL 457 -#define tGREATEROREQUAL 458 -#define tLESSOREQUAL 459 -#define UNARYPREC 460 -#define tMINUSMINUS 461 -#define tPLUSPLUS 462 +#define tShapeFromFile 353 +#define tCharacteristic 354 +#define tLength 355 +#define tParametric 356 +#define tElliptic 357 +#define tRefineMesh 358 +#define tAdaptMesh 359 +#define tRelocateMesh 360 +#define tSetFactory 361 +#define tThruSections 362 +#define tPlane 363 +#define tRuled 364 +#define tTransfinite 365 +#define tComplex 366 +#define tPhysical 367 +#define tCompound 368 +#define tPeriodic 369 +#define tUsing 370 +#define tPlugin 371 +#define tDegenerated 372 +#define tRecursive 373 +#define tRotate 374 +#define tTranslate 375 +#define tSymmetry 376 +#define tDilate 377 +#define tExtrude 378 +#define tLevelset 379 +#define tAffine 380 +#define tBooleanUnion 381 +#define tBooleanIntersection 382 +#define tBooleanDifference 383 +#define tBooleanSection 384 +#define tBooleanFragments 385 +#define tRecombine 386 +#define tSmoother 387 +#define tSplit 388 +#define tDelete 389 +#define tCoherence 390 +#define tIntersect 391 +#define tMeshAlgorithm 392 +#define tReverse 393 +#define tLayers 394 +#define tScaleLast 395 +#define tHole 396 +#define tAlias 397 +#define tAliasWithOptions 398 +#define tCopyOptions 399 +#define tQuadTriAddVerts 400 +#define tQuadTriNoNewVerts 401 +#define tQuadTriSngl 402 +#define tQuadTriDbl 403 +#define tRecombLaterals 404 +#define tTransfQuadTri 405 +#define tText2D 406 +#define tText3D 407 +#define tInterpolationScheme 408 +#define tTime 409 +#define tCombine 410 +#define tBSpline 411 +#define tBezier 412 +#define tNurbs 413 +#define tNurbsOrder 414 +#define tNurbsKnots 415 +#define tColor 416 +#define tColorTable 417 +#define tFor 418 +#define tIn 419 +#define tEndFor 420 +#define tIf 421 +#define tElseIf 422 +#define tElse 423 +#define tEndIf 424 +#define tExit 425 +#define tAbort 426 +#define tField 427 +#define tReturn 428 +#define tCall 429 +#define tSlide 430 +#define tMacro 431 +#define tShow 432 +#define tHide 433 +#define tGetValue 434 +#define tGetStringValue 435 +#define tGetEnv 436 +#define tGetString 437 +#define tGetNumber 438 +#define tHomology 439 +#define tCohomology 440 +#define tBetti 441 +#define tExists 442 +#define tFileExists 443 +#define tGMSH_MAJOR_VERSION 444 +#define tGMSH_MINOR_VERSION 445 +#define tGMSH_PATCH_VERSION 446 +#define tGmshExecutableName 447 +#define tSetPartition 448 +#define tNameToString 449 +#define tStringToName 450 +#define tAFFECTDIVIDE 451 +#define tAFFECTTIMES 452 +#define tAFFECTMINUS 453 +#define tAFFECTPLUS 454 +#define tOR 455 +#define tAND 456 +#define tNOTEQUAL 457 +#define tEQUAL 458 +#define tGREATEROREQUAL 459 +#define tLESSOREQUAL 460 +#define UNARYPREC 461 +#define tMINUSMINUS 462 +#define tPLUSPLUS 463 @@ -469,7 +471,7 @@ typedef union YYSTYPE List_T *l; } /* Line 1529 of yacc.c. */ -#line 473 "Gmsh.tab.hpp" +#line 475 "Gmsh.tab.hpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index b65ab28b1914af2b435f8db394114bf5aef98050..e56f05ae50a0e14ea4e0c9aa3d135948f00dc729 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -143,7 +143,7 @@ struct doubleXstring{ %token tDistanceFunction tDefineConstant tUndefineConstant %token tDefineNumber tDefineString tSetNumber tSetString %token tPoint tCircle tEllipse tLine tSphere tPolarSphere tSurface tSpline tVolume -%token tBlock tCylinder tCone tEllipsoid tQuadric +%token tBlock tCylinder tCone tEllipsoid tQuadric tShapeFromFile %token tCharacteristic tLength tParametric tElliptic tRefineMesh tAdaptMesh %token tRelocateMesh tSetFactory tThruSections %token tPlane tRuled tTransfinite tComplex tPhysical tCompound tPeriodic @@ -4378,6 +4378,28 @@ Boolean : List_Delete($3); List_Delete($7); } + | tShapeFromFile '(' StringExprVar ')' + { + $$ = List_Create(2, 1, sizeof(Shape)); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> out[4]; + GModel::current()->getOCCInternals()->importShape($3, out); + Shape s; + for(int dim = 0; dim < 4; dim++){ + s.Type = (dim == 3) ? MSH_VOLUME_FROM_GMODEL : + (dim == 2) ? MSH_SURF_FROM_GMODEL : + (dim == 1) ? MSH_SEGM_FROM_GMODEL : MSH_POINT_FROM_GMODEL; + for(unsigned int i = 0; i < out[dim].size(); i++){ + s.Num = out[dim][i]; + List_Add($$, &s); + } + } + } + else{ + yymsg(0, "ShapeFromFile only available with OpenCASCADE factory"); + } + Free($3); + } ; BooleanShape : diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 405645f6ec2993ab3fea7112ec4c25ad6db4e6e0..a990fc80dc72dda639c41e94dd55d74b7186708e 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -380,8 +380,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 232 -#define YY_END_OF_BUFFER 233 +#define YY_NUM_RULES 233 +#define YY_END_OF_BUFFER 234 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -389,140 +389,141 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1192] = +static yyconst flex_int16_t yy_accept[1203] = { 0, - 0, 0, 233, 231, 1, 1, 231, 5, 231, 6, - 231, 231, 231, 231, 231, 226, 21, 2, 231, 16, - 231, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 231, 28, 24, 19, 25, 17, - 26, 18, 0, 228, 3, 4, 20, 227, 226, 0, - 29, 27, 30, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - - 230, 230, 230, 230, 230, 230, 125, 124, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 154, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 207, 208, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 23, 22, 0, 227, 0, 0, 229, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 64, 75, 230, 230, 230, 230, 230, - - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 88, 230, 230, 230, 230, 230, 230, 230, 230, 109, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 135, 230, 230, 230, - 230, 230, 230, 146, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 192, 230, 230, - 230, 184, 230, 230, 230, 230, 230, 230, 190, 230, - 230, 230, 230, 217, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 0, 228, 0, 0, 227, - - 230, 230, 33, 230, 230, 230, 230, 230, 230, 39, - 41, 230, 230, 230, 230, 230, 230, 72, 230, 230, - 56, 230, 230, 230, 230, 230, 230, 230, 62, 230, - 230, 63, 230, 230, 230, 230, 230, 230, 230, 230, - 86, 230, 92, 230, 230, 230, 230, 230, 100, 230, - 102, 230, 230, 104, 230, 230, 108, 230, 230, 230, - 230, 230, 230, 230, 120, 121, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 130, 131, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 172, - - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 203, 185, 230, 230, 230, - 230, 230, 183, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 212, 216, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 10, 15, 9, 8, 230, - 12, 14, 0, 227, 31, 230, 230, 230, 37, 230, - 230, 230, 43, 230, 45, 230, 47, 230, 230, 230, - 230, 230, 230, 230, 230, 67, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 97, 99, 230, 230, 230, 103, 230, 230, - - 107, 230, 230, 230, 230, 230, 230, 230, 230, 123, - 230, 230, 128, 230, 230, 230, 230, 230, 136, 230, - 230, 230, 230, 139, 230, 230, 230, 230, 230, 148, - 230, 151, 230, 230, 230, 155, 230, 156, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 170, - 171, 230, 230, 230, 230, 230, 230, 205, 230, 230, - 230, 188, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 218, 230, - 230, 230, 230, 224, 230, 11, 230, 13, 230, 230, - 35, 230, 36, 40, 42, 230, 46, 230, 230, 230, - - 230, 230, 57, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 82, 84, 230, 230, - 230, 93, 96, 230, 101, 230, 230, 230, 230, 230, - 230, 111, 230, 230, 230, 230, 230, 230, 230, 137, - 129, 230, 230, 230, 230, 230, 230, 230, 144, 230, - 141, 230, 230, 230, 230, 230, 230, 160, 230, 159, - 230, 230, 230, 230, 230, 230, 175, 230, 169, 230, - 230, 230, 230, 230, 230, 230, 186, 187, 230, 194, - 230, 199, 230, 201, 230, 230, 230, 202, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - - 225, 7, 230, 230, 230, 44, 48, 230, 230, 230, - 230, 230, 230, 230, 230, 61, 66, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 85, 90, 230, - 230, 230, 230, 94, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 161, 230, 230, 230, 230, 230, - 176, 230, 230, 230, 230, 230, 230, 230, 193, 230, - 198, 230, 230, 230, 230, 189, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - - 230, 230, 230, 230, 230, 230, 55, 230, 230, 230, - 230, 230, 69, 230, 230, 230, 230, 78, 230, 230, - 230, 230, 89, 230, 95, 230, 230, 230, 110, 230, - 230, 230, 230, 230, 114, 230, 122, 230, 230, 138, - 133, 230, 134, 230, 142, 143, 230, 230, 147, 230, - 230, 230, 152, 153, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 178, 230, 230, 230, 230, 230, 204, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 34, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 59, 230, - - 230, 230, 230, 230, 230, 230, 230, 230, 230, 91, - 98, 230, 230, 230, 230, 230, 113, 112, 230, 230, - 126, 230, 222, 230, 230, 230, 150, 230, 230, 230, - 230, 230, 230, 230, 166, 168, 230, 230, 230, 230, - 230, 180, 230, 181, 200, 196, 230, 230, 230, 206, - 209, 230, 230, 230, 230, 230, 215, 230, 221, 230, - 230, 230, 230, 230, 230, 230, 230, 71, 230, 60, - 68, 230, 230, 230, 77, 230, 230, 230, 230, 105, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 157, 230, 230, 164, 230, 230, 230, 173, - - 230, 230, 87, 179, 230, 230, 195, 230, 230, 230, - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 54, 230, 70, 58, 230, 230, 230, 230, 230, - 83, 230, 230, 230, 230, 230, 230, 230, 230, 223, - 230, 230, 230, 158, 230, 230, 165, 230, 230, 230, - 230, 197, 230, 230, 230, 219, 230, 213, 230, 32, - 230, 230, 230, 230, 230, 49, 230, 230, 230, 230, - 80, 81, 230, 230, 230, 230, 230, 230, 230, 132, - 230, 145, 149, 230, 230, 230, 174, 230, 182, 191, - 230, 211, 230, 230, 230, 230, 230, 230, 230, 230, - - 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 140, 230, 230, 230, 230, 230, 214, 230, 230, 230, - 230, 230, 52, 65, 73, 230, 79, 230, 230, 230, - 230, 115, 230, 230, 230, 230, 167, 177, 210, 230, - 230, 230, 230, 230, 230, 230, 106, 230, 230, 230, - 230, 230, 162, 230, 230, 38, 230, 53, 230, 230, - 76, 230, 230, 230, 230, 230, 230, 220, 51, 230, - 230, 230, 230, 230, 230, 230, 163, 230, 230, 116, - 117, 118, 119, 230, 50, 230, 230, 230, 127, 74, - 0 - + 0, 0, 234, 232, 1, 1, 232, 5, 232, 6, + 232, 232, 232, 232, 232, 227, 21, 2, 232, 16, + 232, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 232, 28, 24, 19, 25, 17, + 26, 18, 0, 229, 3, 4, 20, 228, 227, 0, + 29, 27, 30, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + + 231, 231, 231, 231, 231, 231, 125, 124, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 154, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 208, 209, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 23, 22, 0, 228, 0, 0, 230, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 64, 75, 231, 231, 231, 231, 231, + + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 88, 231, 231, 231, 231, 231, 231, 231, 231, 109, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 135, 231, 231, 231, + 231, 231, 231, 146, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 193, 231, 231, + 231, 231, 185, 231, 231, 231, 231, 231, 231, 191, + 231, 231, 231, 231, 218, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 0, 229, 0, 0, + + 228, 231, 231, 33, 231, 231, 231, 231, 231, 231, + 39, 41, 231, 231, 231, 231, 231, 231, 72, 231, + 231, 56, 231, 231, 231, 231, 231, 231, 231, 62, + 231, 231, 63, 231, 231, 231, 231, 231, 231, 231, + 231, 86, 231, 92, 231, 231, 231, 231, 231, 100, + 231, 102, 231, 231, 104, 231, 231, 108, 231, 231, + 231, 231, 231, 231, 231, 120, 121, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 130, 131, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + + 172, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 204, 186, 231, + 231, 231, 231, 231, 184, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 213, 217, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 10, 15, 9, + 8, 231, 12, 14, 0, 228, 31, 231, 231, 231, + 37, 231, 231, 231, 43, 231, 45, 231, 47, 231, + 231, 231, 231, 231, 231, 231, 231, 67, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 97, 99, 231, 231, 231, 103, + + 231, 231, 107, 231, 231, 231, 231, 231, 231, 231, + 231, 123, 231, 231, 128, 231, 231, 231, 231, 231, + 136, 231, 231, 231, 231, 139, 231, 231, 231, 231, + 231, 148, 231, 151, 231, 231, 231, 155, 231, 156, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 170, 171, 231, 231, 231, 231, 231, 231, 231, + 206, 231, 231, 231, 189, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 219, 231, 231, 231, 231, 225, 231, 11, 231, + 13, 231, 231, 35, 231, 36, 40, 42, 231, 46, + + 231, 231, 231, 231, 231, 57, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 82, + 84, 231, 231, 231, 93, 96, 231, 101, 231, 231, + 231, 231, 231, 231, 111, 231, 231, 231, 231, 231, + 231, 231, 137, 129, 231, 231, 231, 231, 231, 231, + 231, 144, 231, 141, 231, 231, 231, 231, 231, 231, + 160, 231, 159, 231, 231, 231, 231, 231, 231, 175, + 231, 169, 231, 231, 231, 231, 231, 231, 231, 231, + 187, 188, 231, 195, 231, 200, 231, 202, 231, 231, + 231, 203, 231, 231, 231, 231, 231, 231, 231, 231, + + 231, 231, 231, 231, 226, 7, 231, 231, 231, 44, + 48, 231, 231, 231, 231, 231, 231, 231, 231, 61, + 66, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 85, 90, 231, 231, 231, 231, 94, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 161, 231, + 231, 231, 231, 231, 176, 231, 231, 231, 231, 231, + 231, 231, 231, 194, 231, 199, 231, 231, 231, 231, + 190, 231, 231, 231, 231, 231, 231, 231, 231, 231, + + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 55, 231, 231, 231, 231, 231, 69, 231, 231, + 231, 231, 78, 231, 231, 231, 231, 89, 231, 95, + 231, 231, 231, 110, 231, 231, 231, 231, 231, 114, + 231, 122, 231, 231, 138, 133, 231, 134, 231, 142, + 143, 231, 231, 147, 231, 231, 231, 152, 153, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 178, 231, 231, 231, + 231, 231, 205, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 34, 231, 231, 231, 231, 231, + + 231, 231, 231, 231, 59, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 91, 98, 231, 231, 231, + 231, 231, 113, 112, 231, 231, 126, 231, 223, 231, + 231, 231, 150, 231, 231, 231, 231, 231, 231, 231, + 166, 168, 231, 231, 231, 231, 231, 181, 231, 182, + 231, 201, 197, 231, 231, 231, 207, 210, 231, 231, + 231, 231, 231, 216, 231, 222, 231, 231, 231, 231, + 231, 231, 231, 231, 71, 231, 60, 68, 231, 231, + 231, 77, 231, 231, 231, 231, 105, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 157, + + 231, 231, 164, 231, 231, 231, 173, 231, 231, 87, + 180, 231, 231, 231, 196, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 54, + 231, 70, 58, 231, 231, 231, 231, 231, 83, 231, + 231, 231, 231, 231, 231, 231, 231, 224, 231, 231, + 231, 158, 231, 231, 165, 231, 231, 231, 231, 231, + 198, 231, 231, 231, 220, 231, 214, 231, 32, 231, + 231, 231, 231, 231, 49, 231, 231, 231, 231, 80, + 81, 231, 231, 231, 231, 231, 231, 231, 132, 231, + 145, 149, 231, 231, 231, 174, 231, 183, 231, 192, + + 231, 212, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 140, 231, 231, 231, 231, 179, 231, 215, 231, 231, + 231, 231, 231, 52, 65, 73, 231, 79, 231, 231, + 231, 231, 115, 231, 231, 231, 231, 167, 177, 211, + 231, 231, 231, 231, 231, 231, 231, 106, 231, 231, + 231, 231, 231, 162, 231, 231, 38, 231, 53, 231, + 231, 76, 231, 231, 231, 231, 231, 231, 221, 51, + 231, 231, 231, 231, 231, 231, 231, 163, 231, 231, + 116, 117, 118, 119, 231, 50, 231, 231, 231, 127, + + 74, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -569,279 +570,281 @@ static yyconst flex_int32_t yy_meta[74] = 2, 2, 1 } ; -static yyconst flex_int16_t yy_base[1193] = +static yyconst flex_int16_t yy_base[1204] = { 0, - 0, 0, 1324, 1325, 1325, 1325, 1302, 1325, 1316, 1325, - 1300, 65, 66, 64, 76, 78, 1325, 1325, 1299, 1298, - 1297, 49, 60, 71, 52, 64, 88, 102, 87, 103, - 0, 1257, 112, 114, 105, 46, 122, 1249, 133, 186, - 173, 122, 1254, 1262, 1240, 1325, 1325, 1325, 1325, 1325, - 1325, 1325, 1301, 195, 1325, 1325, 1325, 202, 245, 182, - 1325, 1325, 1325, 0, 64, 1250, 1262, 1256, 1252, 1257, - 1250, 1257, 1242, 24, 1242, 42, 93, 1246, 1253, 1236, - 208, 1232, 1246, 1233, 1238, 87, 53, 1247, 111, 1243, - 1229, 1242, 158, 1242, 219, 1229, 1228, 1224, 1227, 1245, - - 1219, 1219, 1232, 24, 1220, 1239, 0, 1214, 1218, 1207, - 111, 142, 96, 1246, 1226, 167, 1224, 1233, 1214, 1203, - 1207, 1218, 1218, 1204, 1203, 1195, 0, 179, 147, 1209, - 1216, 1203, 225, 164, 1204, 1225, 1212, 1193, 1197, 1197, - 1200, 1194, 226, 1190, 1189, 1188, 180, 0, 0, 1216, - 1190, 185, 1185, 214, 1200, 1196, 1184, 1189, 1186, 1174, - 1325, 1325, 285, 290, 299, 305, 310, 1178, 1180, 1175, - 1177, 1182, 1189, 303, 1176, 1175, 1176, 1167, 1176, 1181, - 1172, 1169, 1170, 154, 1169, 1162, 1175, 224, 1163, 202, - 1171, 1158, 1150, 1165, 0, 1171, 1154, 1161, 1160, 1163, - - 1162, 1165, 1176, 1142, 1154, 1157, 162, 1147, 1149, 221, - 0, 1142, 1140, 1146, 1151, 1151, 1161, 1139, 1148, 0, - 1148, 1167, 302, 1141, 1143, 1142, 1132, 1131, 1164, 1138, - 1123, 1136, 1133, 1134, 289, 1119, 296, 1132, 1136, 1118, - 1120, 1125, 1112, 0, 1126, 1142, 1127, 1117, 1122, 1125, - 1116, 1106, 1110, 1115, 1108, 1119, 1106, 1114, 1113, 221, - 1107, 1101, 1094, 1108, 1111, 1098, 1105, 0, 1098, 311, - 1086, 1099, 1102, 1091, 1099, 1094, 1093, 1082, 323, 1094, - 1087, 1095, 1117, 1088, 1076, 1075, 1073, 1091, 1090, 1077, - 1084, 1083, 1074, 1066, 309, 318, 367, 376, 381, 386, - - 1066, 1073, 0, 1064, 1069, 1063, 1066, 1070, 1077, 0, - 1109, 1067, 1066, 1069, 1063, 1067, 1067, 0, 1057, 1049, - 0, 1067, 1056, 1049, 1053, 1047, 1054, 292, 0, 1058, - 1071, 0, 1041, 1054, 1045, 1044, 1043, 1036, 1035, 1052, - 0, 1037, 1067, 1036, 1043, 1031, 1038, 1027, 0, 1025, - 0, 1040, 1063, 0, 1037, 1024, 0, 1021, 1039, 1025, - 1017, 1017, 1034, 1054, 0, 0, 1022, 1013, 1038, 1013, - 1011, 1011, 1008, 1015, 1010, 0, 1043, 1057, 1007, 1004, - 314, 1006, 1002, 1042, 1006, 1021, 1001, 996, 1012, 995, - 999, 996, 1000, 1003, 998, 987, 988, 985, 345, 0, - - 991, 985, 988, 997, 982, 981, 978, 992, 991, 989, - 985, 991, 971, 989, 970, 0, 0, 983, 968, 969, - 300, 972, 0, 310, 975, 978, 965, 976, 960, 966, - 977, 972, 988, 0, 0, 988, 998, 979, 948, 960, - 952, 963, 951, 960, 954, 0, 0, 954, 0, 959, - 952, 0, 391, 399, 0, 942, 973, 955, 961, 940, - 944, 943, 0, 942, 0, 937, 0, 952, 943, 950, - 939, 946, 943, 942, 932, 950, 931, 938, 922, 932, - 925, 934, 925, 933, 931, 930, 929, 928, 920, 310, - 925, 913, 0, 0, 925, 910, 923, 0, 903, 914, - - 0, 915, 382, 902, 910, 904, 909, 896, 904, 0, - 926, 898, 0, 897, 906, 895, 911, 894, 0, 909, - 931, 907, 898, 0, 882, 894, 890, 889, 898, 0, - 899, 0, 895, 895, 895, 0, 884, 0, 902, 889, - 877, 884, 890, 873, 885, 888, 875, 869, 881, 0, - 0, 898, 883, 880, 870, 864, 863, 0, 871, 873, - 872, 0, 857, 856, 860, 858, 859, 858, 865, 234, - 867, 861, 864, 847, 851, 859, 844, 857, 0, 873, - 365, 851, 881, 0, 853, 0, 850, 0, 837, 850, - 0, 845, 0, 0, 885, 847, 0, 838, 837, 832, - - 837, 828, 0, 833, 834, 843, 838, 819, 828, 827, - 820, 843, 818, 831, 385, 818, 0, 0, 829, 372, - 824, 0, 0, 823, 0, 826, 821, 828, 814, 212, - 851, 0, 824, 816, 804, 818, 815, 831, 815, 0, - 0, 814, 815, 803, 813, 814, 801, 788, 0, 805, - 0, 817, 805, 396, 790, 799, 806, 0, 791, 0, - 796, 801, 388, 794, 814, 782, 0, 795, 0, 798, - 785, 778, 794, 776, 785, 788, 0, 0, 786, 0, - 782, 0, 786, 0, 783, 787, 776, 0, 791, 780, - 767, 779, 761, 762, 777, 774, 386, 37, 107, 175, - - 0, 0, 181, 209, 245, 0, 0, 404, 286, 285, - 328, 318, 322, 317, 339, 0, 0, 376, 381, 375, - 373, 411, 374, 378, 373, 375, 395, 0, 0, 383, - 394, 401, 404, 0, 388, 388, 395, 424, 421, 416, - 407, 400, 409, 412, 392, 430, 415, 400, 415, 409, - 417, 405, 414, 420, 412, 408, 417, 426, 410, 414, - 429, 422, 426, 459, 0, 435, 424, 418, 435, 436, - 0, 424, 436, 430, 440, 437, 434, 432, 0, 447, - 0, 442, 433, 453, 441, 0, 432, 452, 453, 442, - 442, 450, 444, 452, 447, 462, 450, 478, 462, 463, - - 464, 457, 462, 471, 465, 502, 0, 466, 464, 477, - 476, 473, 0, 466, 472, 472, 479, 0, 476, 478, - 474, 473, 0, 489, 0, 481, 476, 487, 0, 507, - 508, 521, 483, 494, 0, 482, 0, 527, 485, 0, - 0, 524, 0, 501, 0, 0, 490, 491, 0, 490, - 497, 502, 0, 0, 507, 509, 512, 501, 503, 498, - 513, 514, 502, 533, 503, 518, 507, 508, 507, 520, - 0, 523, 506, 521, 528, 543, 0, 522, 523, 526, - 527, 523, 537, 530, 535, 563, 537, 542, 0, 554, - 539, 545, 528, 545, 540, 536, 539, 543, 0, 529, - - 549, 550, 543, 543, 541, 541, 558, 552, 557, 0, - 0, 545, 543, 572, 573, 584, 0, 571, 550, 575, - 0, 562, 588, 564, 565, 566, 0, 573, 560, 574, - 568, 591, 574, 577, 0, 0, 575, 579, 598, 582, - 563, 0, 579, 0, 0, 0, 568, 585, 590, 0, - 0, 590, 579, 577, 591, 577, 0, 583, 0, 579, - 584, 594, 594, 597, 584, 591, 583, 0, 589, 0, - 0, 590, 591, 599, 606, 593, 608, 601, 611, 0, - 611, 617, 618, 619, 619, 620, 638, 612, 611, 606, - 613, 613, 0, 623, 632, 0, 625, 620, 615, 0, - - 615, 633, 0, 0, 621, 631, 0, 625, 618, 626, - 616, 646, 637, 630, 636, 626, 641, 635, 631, 640, - 637, 0, 632, 0, 0, 638, 651, 654, 639, 650, - 0, 667, 662, 663, 664, 651, 661, 674, 661, 0, - 659, 661, 656, 0, 665, 649, 0, 671, 665, 650, - 662, 0, 671, 658, 660, 0, 662, 0, 662, 0, - 672, 665, 678, 666, 671, 0, 677, 680, 669, 676, - 0, 0, 689, 711, 712, 713, 674, 684, 707, 0, - 685, 0, 0, 681, 702, 689, 0, 696, 0, 0, - 697, 0, 694, 685, 691, 701, 694, 703, 696, 707, - - 687, 698, 694, 695, 722, 723, 724, 713, 714, 720, - 0, 702, 717, 706, 708, 708, 0, 726, 715, 716, - 711, 728, 0, 0, 743, 716, 0, 726, 741, 742, - 743, 0, 749, 745, 722, 724, 0, 0, 0, 729, - 725, 741, 727, 727, 733, 724, 0, 765, 766, 767, - 751, 775, 0, 735, 736, 0, 751, 0, 748, 775, - 0, 769, 770, 771, 750, 780, 746, 0, 0, 751, - 752, 778, 779, 780, 765, 791, 0, 759, 762, 0, - 0, 0, 0, 786, 0, 770, 796, 759, 0, 0, - 1325, 823 - + 0, 0, 1335, 1336, 1336, 1336, 1313, 1336, 1327, 1336, + 1311, 65, 66, 64, 76, 78, 1336, 1336, 1310, 1309, + 1308, 49, 60, 71, 52, 64, 88, 102, 87, 103, + 0, 1268, 112, 114, 105, 46, 122, 1260, 133, 186, + 173, 122, 1265, 1273, 1251, 1336, 1336, 1336, 1336, 1336, + 1336, 1336, 1312, 195, 1336, 1336, 1336, 202, 245, 182, + 1336, 1336, 1336, 0, 64, 1261, 1273, 1267, 1263, 1268, + 1261, 1268, 1253, 24, 1253, 42, 93, 1257, 1264, 1247, + 208, 1243, 1257, 1244, 1249, 87, 53, 1258, 111, 1254, + 1240, 1253, 158, 1253, 219, 1240, 1239, 1235, 1238, 1256, + + 1230, 1230, 1243, 24, 1231, 1250, 0, 1225, 1229, 1218, + 111, 142, 96, 1257, 1237, 167, 1235, 1244, 1225, 1214, + 1218, 1229, 1229, 1215, 1214, 1206, 0, 179, 147, 1220, + 1227, 1214, 225, 164, 1215, 1236, 1223, 1204, 145, 1209, + 1212, 1206, 226, 1202, 1201, 1200, 180, 0, 0, 1228, + 1202, 185, 1197, 214, 1212, 1208, 1196, 1201, 1198, 1186, + 1336, 1336, 285, 290, 299, 305, 310, 1190, 1192, 1187, + 1189, 1194, 1201, 303, 1188, 1187, 1188, 1179, 1188, 1193, + 1184, 1181, 1182, 233, 1181, 1174, 1187, 235, 1175, 202, + 1183, 1170, 1162, 1177, 0, 1183, 1166, 1173, 1172, 1175, + + 1174, 1177, 1188, 1154, 1166, 1169, 301, 1159, 1161, 245, + 0, 1154, 1152, 1158, 1163, 1163, 1173, 1151, 1160, 0, + 1160, 1179, 307, 1153, 1155, 1154, 1144, 1143, 1176, 1150, + 1135, 1148, 1145, 1146, 289, 1131, 317, 1144, 1148, 1130, + 1132, 1137, 1124, 0, 1138, 1154, 1139, 1129, 1134, 1137, + 1128, 1118, 1122, 1127, 1120, 1131, 1118, 1126, 1125, 215, + 1119, 1113, 1106, 1120, 1123, 1110, 1117, 0, 1110, 311, + 1105, 1097, 1110, 1113, 1102, 1110, 1105, 1104, 1093, 325, + 1105, 1098, 1106, 1128, 1099, 1087, 1086, 1084, 1102, 1101, + 1088, 1095, 1094, 1085, 1077, 311, 369, 374, 383, 388, + + 393, 1077, 1084, 0, 1075, 1080, 1074, 1077, 1081, 1088, + 0, 1120, 1078, 1077, 1080, 1074, 1078, 1078, 0, 1068, + 1060, 0, 1078, 1067, 1060, 1064, 1058, 1065, 277, 0, + 1069, 1082, 0, 1052, 1065, 1056, 1055, 1054, 1047, 1046, + 1063, 0, 1048, 1078, 1047, 1054, 1042, 1049, 1038, 0, + 1036, 0, 1051, 1074, 0, 1048, 1035, 0, 1032, 1050, + 1036, 1028, 1028, 1045, 1065, 0, 0, 1033, 1024, 1049, + 1024, 1022, 1022, 1019, 1026, 1021, 0, 1054, 1068, 1018, + 1015, 314, 1017, 1013, 1053, 1017, 1032, 1012, 1007, 1023, + 1006, 1010, 1007, 1011, 1014, 1009, 998, 999, 996, 304, + + 0, 1002, 996, 999, 1008, 993, 992, 989, 1003, 1002, + 1000, 996, 1002, 982, 1000, 981, 994, 0, 0, 993, + 978, 979, 296, 982, 0, 312, 985, 988, 975, 986, + 970, 976, 987, 982, 998, 0, 0, 998, 1008, 989, + 958, 970, 962, 973, 961, 970, 964, 0, 0, 964, + 0, 969, 962, 0, 398, 403, 0, 952, 983, 965, + 971, 950, 954, 953, 0, 952, 0, 947, 0, 962, + 953, 960, 949, 956, 953, 952, 942, 960, 941, 948, + 932, 942, 935, 944, 935, 943, 941, 940, 939, 938, + 930, 312, 935, 923, 0, 0, 935, 920, 933, 0, + + 913, 924, 0, 925, 302, 912, 920, 914, 919, 906, + 914, 0, 936, 908, 0, 907, 916, 905, 921, 904, + 0, 919, 941, 917, 908, 0, 892, 904, 900, 899, + 908, 0, 909, 0, 905, 905, 905, 0, 894, 0, + 912, 899, 887, 894, 900, 883, 895, 898, 885, 879, + 891, 0, 0, 908, 893, 890, 880, 874, 873, 908, + 0, 880, 882, 881, 0, 866, 865, 869, 867, 868, + 867, 874, 363, 876, 870, 873, 856, 860, 868, 853, + 866, 0, 882, 369, 860, 890, 0, 862, 0, 859, + 0, 846, 859, 0, 854, 0, 0, 894, 856, 0, + + 847, 846, 841, 846, 837, 0, 842, 843, 852, 847, + 828, 837, 836, 829, 852, 827, 840, 398, 827, 0, + 0, 838, 372, 833, 0, 0, 832, 0, 835, 830, + 837, 823, 212, 860, 0, 833, 825, 813, 827, 824, + 840, 824, 0, 0, 823, 824, 812, 822, 823, 810, + 797, 0, 814, 0, 826, 814, 334, 799, 808, 815, + 0, 800, 0, 805, 810, 392, 803, 823, 791, 0, + 804, 0, 807, 794, 787, 803, 785, 794, 785, 796, + 0, 0, 794, 0, 790, 0, 794, 0, 791, 795, + 784, 0, 799, 788, 775, 787, 769, 19, 117, 138, + + 390, 165, 163, 185, 0, 0, 222, 221, 222, 0, + 0, 404, 279, 301, 340, 342, 345, 370, 387, 0, + 0, 386, 390, 384, 380, 416, 379, 383, 382, 385, + 404, 0, 0, 389, 399, 406, 409, 0, 393, 393, + 400, 429, 426, 421, 412, 405, 414, 417, 397, 435, + 420, 405, 420, 414, 422, 410, 419, 425, 417, 413, + 422, 431, 415, 419, 434, 427, 431, 464, 0, 440, + 429, 423, 440, 441, 0, 429, 441, 435, 445, 442, + 439, 440, 438, 0, 453, 0, 448, 440, 459, 447, + 0, 438, 458, 459, 449, 448, 457, 450, 458, 453, + + 468, 456, 484, 468, 470, 470, 463, 468, 478, 471, + 508, 0, 472, 470, 483, 482, 479, 0, 472, 478, + 478, 485, 0, 482, 484, 480, 479, 0, 495, 0, + 487, 482, 493, 0, 513, 514, 527, 489, 500, 0, + 488, 0, 533, 491, 0, 0, 530, 0, 507, 0, + 0, 496, 497, 0, 496, 503, 508, 0, 0, 513, + 515, 518, 507, 509, 504, 519, 520, 508, 539, 509, + 524, 513, 514, 513, 526, 522, 0, 530, 513, 528, + 535, 550, 0, 529, 530, 533, 534, 530, 544, 537, + 542, 570, 544, 549, 0, 561, 546, 552, 535, 552, + + 547, 543, 546, 550, 0, 536, 556, 557, 550, 550, + 548, 548, 565, 559, 564, 0, 0, 552, 550, 579, + 580, 591, 0, 578, 557, 582, 0, 569, 595, 571, + 572, 573, 0, 580, 567, 581, 575, 598, 581, 584, + 0, 0, 582, 586, 605, 589, 570, 0, 586, 0, + 615, 0, 0, 576, 593, 598, 0, 0, 598, 587, + 585, 599, 585, 0, 591, 0, 587, 592, 602, 602, + 605, 593, 599, 591, 0, 597, 0, 0, 598, 599, + 607, 614, 601, 616, 609, 619, 0, 619, 625, 626, + 627, 627, 628, 646, 620, 619, 614, 621, 621, 0, + + 631, 640, 0, 633, 628, 623, 0, 623, 641, 0, + 0, 629, 635, 640, 0, 634, 627, 635, 625, 655, + 646, 639, 645, 635, 650, 644, 640, 649, 646, 0, + 641, 0, 0, 648, 660, 663, 648, 659, 0, 676, + 671, 672, 673, 660, 670, 683, 670, 0, 668, 670, + 665, 0, 674, 658, 0, 680, 674, 659, 671, 674, + 0, 681, 668, 670, 0, 672, 0, 672, 0, 682, + 675, 688, 676, 681, 0, 687, 690, 679, 686, 0, + 0, 699, 721, 722, 723, 684, 694, 717, 0, 695, + 0, 0, 691, 712, 699, 0, 706, 0, 707, 0, + + 708, 0, 705, 696, 702, 712, 705, 714, 707, 718, + 698, 709, 705, 706, 733, 734, 735, 724, 725, 731, + 0, 713, 729, 717, 719, 0, 719, 0, 737, 726, + 727, 722, 739, 0, 0, 754, 727, 0, 737, 752, + 753, 754, 0, 760, 756, 733, 735, 0, 0, 0, + 740, 736, 752, 738, 738, 744, 735, 0, 776, 777, + 778, 762, 786, 0, 746, 747, 0, 762, 0, 759, + 786, 0, 780, 781, 782, 761, 791, 757, 0, 0, + 762, 763, 789, 790, 791, 776, 802, 0, 770, 773, + 0, 0, 0, 0, 797, 0, 781, 807, 770, 0, + + 0, 1336, 834 } ; -static yyconst flex_int16_t yy_def[1193] = +static yyconst flex_int16_t yy_def[1204] = { 0, - 1191, 1, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1191, 1191, 1191, 1191, 1191, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1191, 1191, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 0, 1191 - + 1202, 1, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1202, 1202, 1202, 1202, + + 1202, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1202, 1202, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + + 1203, 0, 1202 } ; -static yyconst flex_int16_t yy_nxt[1399] = +static yyconst flex_int16_t yy_nxt[1410] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 16, 16, 16, 17, 18, 19, @@ -862,45 +865,45 @@ static yyconst flex_int16_t yy_nxt[1399] = 183, 114, 119, 101, 99, 107, 120, 105, 184, 110, 102, 115, 108, 111, 238, 116, 796, 112, 205, 124, 233, 121, 113, 125, 117, 206, 126, 127, 234, 128, - 132, 156, 129, 157, 133, 130, 158, 148, 149, 344, - 166, 166, 345, 134, 167, 167, 167, 167, 167, 135, - - 136, 235, 255, 150, 256, 319, 236, 54, 54, 54, - 54, 54, 320, 210, 164, 164, 164, 164, 164, 211, - 151, 163, 797, 212, 152, 241, 253, 153, 165, 265, - 266, 242, 798, 154, 738, 137, 155, 138, 281, 282, - 139, 140, 739, 141, 142, 254, 163, 143, 144, 285, - 327, 145, 146, 165, 286, 58, 147, 59, 59, 59, - 59, 59, 188, 328, 288, 189, 190, 191, 192, 193, - 214, 60, 194, 799, 260, 324, 215, 261, 216, 289, - 275, 401, 262, 276, 325, 348, 349, 402, 217, 277, - 263, 686, 264, 296, 296, 687, 60, 297, 297, 297, - - 297, 297, 164, 164, 164, 164, 164, 299, 299, 378, - 800, 300, 300, 300, 300, 300, 298, 167, 167, 167, - 167, 167, 167, 167, 167, 167, 167, 307, 360, 375, - 297, 297, 297, 297, 297, 411, 379, 361, 412, 806, - 376, 298, 362, 308, 309, 363, 413, 424, 414, 478, - 425, 415, 479, 522, 523, 807, 426, 564, 446, 561, - 427, 447, 428, 429, 565, 562, 448, 808, 566, 809, - 449, 810, 450, 451, 620, 621, 452, 811, 430, 297, - 297, 297, 297, 297, 453, 453, 541, 812, 454, 454, - 454, 454, 454, 300, 300, 300, 300, 300, 300, 300, - - 300, 300, 300, 454, 454, 454, 454, 454, 542, 724, - 541, 454, 454, 454, 454, 454, 630, 697, 758, 631, - 725, 766, 698, 729, 793, 726, 813, 730, 814, 801, - 815, 802, 731, 816, 803, 759, 817, 818, 819, 820, - 821, 794, 822, 767, 804, 766, 805, 823, 793, 824, - 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, + 132, 156, 129, 157, 133, 130, 158, 148, 149, 797, + 166, 166, 271, 134, 167, 167, 167, 167, 167, 135, + + 136, 235, 255, 150, 256, 272, 236, 54, 54, 54, + 54, 54, 800, 210, 164, 164, 164, 164, 164, 211, + 151, 163, 801, 212, 152, 241, 253, 153, 165, 265, + 266, 242, 802, 154, 742, 137, 155, 138, 282, 283, + 139, 140, 743, 141, 142, 254, 163, 143, 144, 286, + 328, 145, 146, 165, 287, 58, 147, 59, 59, 59, + 59, 59, 188, 329, 289, 189, 190, 191, 192, 193, + 214, 60, 194, 803, 260, 402, 215, 261, 216, 290, + 276, 403, 262, 277, 320, 804, 325, 805, 217, 278, + 263, 321, 264, 297, 297, 326, 60, 298, 298, 298, + + 298, 298, 164, 164, 164, 164, 164, 300, 300, 349, + 350, 301, 301, 301, 301, 301, 299, 167, 167, 167, + 167, 167, 167, 167, 167, 167, 167, 308, 345, 376, + 379, 346, 811, 361, 480, 412, 633, 481, 413, 634, + 377, 299, 362, 309, 310, 543, 414, 363, 415, 426, + 364, 416, 427, 524, 525, 564, 762, 380, 428, 567, + 448, 565, 429, 449, 430, 431, 568, 544, 450, 543, + 569, 812, 451, 763, 452, 453, 623, 624, 454, 813, + 432, 298, 298, 298, 298, 298, 298, 298, 298, 298, + 298, 455, 455, 814, 815, 456, 456, 456, 456, 456, + + 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, + 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, + 690, 701, 728, 733, 691, 770, 702, 734, 798, 806, + 816, 807, 735, 729, 808, 817, 818, 819, 730, 820, + 821, 822, 823, 824, 809, 799, 810, 771, 825, 770, + 826, 827, 798, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, - 855, 856, 860, 861, 857, 862, 863, 864, 865, 866, - 867, 868, 869, 870, 858, 871, 872, 873, 874, 859, + 855, 856, 857, 858, 859, 860, 861, 865, 866, 862, + 867, 868, 869, 870, 871, 872, 873, 874, 875, 863, - 875, 876, 877, 878, 879, 880, 856, 881, 882, 857, - 883, 884, 885, 886, 887, 888, 889, 890, 858, 891, - 892, 893, 894, 859, 895, 896, 897, 898, 899, 900, + 876, 877, 878, 879, 864, 880, 881, 882, 883, 884, + 885, 861, 886, 887, 862, 888, 889, 890, 891, 892, + 893, 894, 895, 863, 896, 897, 898, 899, 864, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, @@ -914,92 +917,93 @@ static yyconst flex_int16_t yy_nxt[1399] = 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, - 997, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, + 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1004, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, - 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1045, + 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, - 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, - 1079, 1057, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, - 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, + 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1053, 1077, 1078, + 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, + 1066, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, - 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1113, - 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, + 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, + 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1123, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, - 1187, 1188, 1189, 1190, 64, 792, 791, 790, 789, 788, - 787, 786, 785, 784, 783, 782, 781, 780, 779, 778, - 777, 776, 775, 774, 773, 772, 771, 770, 769, 768, - 765, 764, 763, 762, 761, 760, 757, 756, 755, 754, - 753, 752, 751, 750, 749, 748, 747, 746, 745, 744, - 743, 742, 741, 740, 737, 736, 735, 734, 733, 732, - 728, 727, 723, 722, 721, 720, 719, 718, 717, 716, - 715, 714, 713, 712, 711, 710, 709, 708, 707, 706, - - 705, 704, 703, 702, 701, 700, 699, 696, 695, 694, - 693, 692, 691, 690, 689, 688, 685, 684, 683, 682, - 681, 680, 679, 678, 677, 676, 675, 674, 673, 672, - 671, 670, 669, 668, 667, 666, 665, 664, 663, 662, - 661, 660, 659, 658, 657, 656, 655, 654, 653, 652, - 651, 650, 649, 648, 647, 646, 645, 644, 643, 642, - 641, 640, 639, 638, 637, 636, 635, 634, 633, 632, - 629, 628, 627, 626, 625, 624, 623, 622, 619, 618, - 617, 616, 615, 614, 613, 612, 611, 610, 609, 608, - 607, 606, 605, 604, 603, 602, 601, 600, 599, 598, - - 597, 596, 595, 594, 593, 592, 591, 590, 589, 588, - 587, 586, 585, 584, 583, 582, 581, 580, 579, 578, - 577, 576, 575, 574, 573, 572, 571, 570, 569, 568, - 567, 563, 560, 559, 558, 557, 556, 555, 554, 553, - 552, 551, 550, 549, 548, 547, 546, 545, 544, 543, - 540, 539, 538, 537, 536, 535, 534, 533, 532, 531, - 530, 529, 528, 527, 526, 525, 524, 521, 520, 519, - 518, 517, 516, 515, 514, 513, 512, 511, 510, 509, - 508, 507, 506, 505, 504, 503, 502, 501, 500, 499, - 498, 497, 496, 495, 494, 493, 492, 491, 490, 489, - - 488, 487, 486, 485, 484, 483, 482, 481, 480, 477, - 476, 475, 474, 473, 472, 471, 470, 469, 468, 467, - 466, 465, 464, 463, 462, 461, 460, 459, 458, 457, - 456, 455, 445, 444, 443, 442, 441, 440, 439, 438, - 437, 436, 435, 434, 433, 432, 431, 423, 422, 421, - 420, 419, 418, 417, 416, 410, 409, 408, 407, 406, - 405, 404, 403, 400, 399, 398, 397, 396, 395, 394, - 393, 392, 391, 390, 389, 388, 387, 386, 385, 384, - 383, 382, 381, 380, 377, 374, 373, 372, 371, 370, - 369, 368, 367, 366, 365, 364, 359, 358, 357, 356, - - 355, 354, 353, 352, 351, 350, 347, 346, 343, 342, - 341, 340, 339, 338, 337, 336, 335, 334, 333, 332, - 331, 330, 329, 326, 323, 322, 321, 318, 317, 316, - 315, 314, 313, 312, 311, 310, 306, 305, 304, 303, - 302, 301, 295, 294, 293, 292, 291, 290, 287, 284, - 283, 280, 279, 278, 274, 273, 272, 271, 270, 269, - 268, 267, 259, 258, 257, 252, 251, 250, 249, 248, - 247, 246, 245, 244, 243, 240, 239, 232, 231, 230, - 229, 228, 225, 224, 223, 222, 221, 220, 219, 218, - 213, 209, 208, 207, 204, 198, 197, 196, 195, 187, - - 186, 185, 180, 177, 176, 175, 174, 173, 172, 171, - 170, 162, 161, 160, 159, 131, 109, 63, 62, 61, - 48, 47, 46, 1191, 3, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191 - + 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, + 1197, 1198, 1199, 1200, 1201, 64, 794, 793, 792, 791, + 790, 789, 788, 787, 786, 785, 784, 783, 782, 781, + 780, 779, 778, 777, 776, 775, 774, 773, 772, 769, + 768, 767, 766, 765, 764, 761, 760, 759, 758, 757, + 756, 755, 754, 753, 752, 751, 750, 749, 748, 747, + 746, 745, 744, 741, 740, 739, 738, 737, 736, 732, + 731, 727, 726, 725, 724, 723, 722, 721, 720, 719, + + 718, 717, 716, 715, 714, 713, 712, 711, 710, 709, + 708, 707, 706, 705, 704, 703, 700, 699, 698, 697, + 696, 695, 694, 693, 692, 689, 688, 687, 686, 685, + 684, 683, 682, 681, 680, 679, 678, 677, 676, 675, + 674, 673, 672, 671, 670, 669, 668, 667, 666, 665, + 664, 663, 662, 661, 660, 659, 658, 657, 656, 655, + 654, 653, 652, 651, 650, 649, 648, 647, 646, 645, + 644, 643, 642, 641, 640, 639, 638, 637, 636, 635, + 632, 631, 630, 629, 628, 627, 626, 625, 622, 621, + 620, 619, 618, 617, 616, 615, 614, 613, 612, 611, + + 610, 609, 608, 607, 606, 605, 604, 603, 602, 601, + 600, 599, 598, 597, 596, 595, 594, 593, 592, 591, + 590, 589, 588, 587, 586, 585, 584, 583, 582, 581, + 580, 579, 578, 577, 576, 575, 574, 573, 572, 571, + 570, 566, 563, 562, 561, 560, 559, 558, 557, 556, + 555, 554, 553, 552, 551, 550, 549, 548, 547, 546, + 545, 542, 541, 540, 539, 538, 537, 536, 535, 534, + 533, 532, 531, 530, 529, 528, 527, 526, 523, 522, + 521, 520, 519, 518, 517, 516, 515, 514, 513, 512, + 511, 510, 509, 508, 507, 506, 505, 504, 503, 502, + + 501, 500, 499, 498, 497, 496, 495, 494, 493, 492, + 491, 490, 489, 488, 487, 486, 485, 484, 483, 482, + 479, 478, 477, 476, 475, 474, 473, 472, 471, 470, + 469, 468, 467, 466, 465, 464, 463, 462, 461, 460, + 459, 458, 457, 447, 446, 445, 444, 443, 442, 441, + 440, 439, 438, 437, 436, 435, 434, 433, 425, 424, + 423, 422, 421, 420, 419, 418, 417, 411, 410, 409, + 408, 407, 406, 405, 404, 401, 400, 399, 398, 397, + 396, 395, 394, 393, 392, 391, 390, 389, 388, 387, + 386, 385, 384, 383, 382, 381, 378, 375, 374, 373, + + 372, 371, 370, 369, 368, 367, 366, 365, 360, 359, + 358, 357, 356, 355, 354, 353, 352, 351, 348, 347, + 344, 343, 342, 341, 340, 339, 338, 337, 336, 335, + 334, 333, 332, 331, 330, 327, 324, 323, 322, 319, + 318, 317, 316, 315, 314, 313, 312, 311, 307, 306, + 305, 304, 303, 302, 296, 295, 294, 293, 292, 291, + 288, 285, 284, 281, 280, 279, 275, 274, 273, 270, + 269, 268, 267, 259, 258, 257, 252, 251, 250, 249, + 248, 247, 246, 245, 244, 243, 240, 239, 232, 231, + 230, 229, 228, 225, 224, 223, 222, 221, 220, 219, + + 218, 213, 209, 208, 207, 204, 198, 197, 196, 195, + 187, 186, 185, 180, 177, 176, 175, 174, 173, 172, + 171, 170, 162, 161, 160, 159, 131, 109, 63, 62, + 61, 48, 47, 46, 1202, 3, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202 } ; -static yyconst flex_int16_t yy_chk[1399] = +static yyconst flex_int16_t yy_chk[1410] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1020,141 +1024,142 @@ static yyconst flex_int16_t yy_chk[1399] = 77, 34, 35, 28, 27, 30, 35, 29, 77, 33, 28, 34, 30, 33, 113, 34, 699, 33, 89, 37, 111, 35, 33, 37, 34, 89, 37, 37, 111, 37, - 39, 42, 37, 42, 39, 37, 42, 41, 41, 207, - 60, 60, 207, 39, 60, 60, 60, 60, 60, 39, - - 40, 112, 129, 41, 129, 184, 112, 54, 54, 54, - 54, 54, 184, 93, 58, 58, 58, 58, 58, 93, - 41, 54, 700, 93, 41, 116, 128, 41, 58, 134, - 134, 116, 703, 41, 630, 40, 41, 40, 147, 147, - 40, 40, 630, 40, 40, 128, 54, 40, 40, 152, + 39, 42, 37, 42, 39, 37, 42, 41, 41, 700, + 60, 60, 139, 39, 60, 60, 60, 60, 60, 39, + + 40, 112, 129, 41, 129, 139, 112, 54, 54, 54, + 54, 54, 702, 93, 58, 58, 58, 58, 58, 93, + 41, 54, 703, 93, 41, 116, 128, 41, 58, 134, + 134, 116, 704, 41, 633, 40, 41, 40, 147, 147, + 40, 40, 633, 40, 40, 128, 54, 40, 40, 152, 190, 40, 40, 58, 152, 59, 40, 59, 59, 59, 59, 59, 81, 190, 154, 81, 81, 81, 81, 81, - 95, 59, 81, 704, 133, 188, 95, 133, 95, 154, - 143, 260, 133, 143, 188, 210, 210, 260, 95, 143, - 133, 570, 133, 163, 163, 570, 59, 163, 163, 163, - - 163, 163, 164, 164, 164, 164, 164, 165, 165, 237, - 705, 165, 165, 165, 165, 165, 164, 166, 166, 166, - 166, 166, 167, 167, 167, 167, 167, 174, 223, 235, - 296, 296, 296, 296, 296, 270, 237, 223, 270, 709, - 235, 164, 223, 174, 174, 223, 270, 279, 270, 328, - 279, 270, 328, 381, 381, 710, 279, 424, 295, 421, - 279, 295, 279, 279, 424, 421, 295, 711, 424, 712, - 295, 713, 295, 295, 490, 490, 295, 714, 279, 297, - 297, 297, 297, 297, 298, 298, 399, 715, 298, 298, - 298, 298, 298, 299, 299, 299, 299, 299, 300, 300, - - 300, 300, 300, 453, 453, 453, 453, 453, 399, 615, - 399, 454, 454, 454, 454, 454, 503, 581, 654, 503, - 615, 663, 581, 620, 697, 615, 718, 620, 719, 708, - 720, 708, 620, 721, 708, 654, 722, 723, 724, 725, - 726, 697, 727, 663, 708, 663, 708, 730, 697, 731, - 732, 733, 735, 736, 737, 738, 739, 740, 741, 742, - 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, - 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, - 763, 764, 766, 767, 764, 768, 769, 770, 772, 773, - 774, 775, 776, 777, 764, 778, 780, 782, 783, 764, - - 784, 785, 787, 788, 789, 790, 764, 791, 792, 764, - 793, 794, 795, 796, 797, 798, 799, 800, 764, 801, - 802, 803, 804, 764, 805, 806, 808, 809, 810, 811, - 812, 814, 815, 816, 817, 819, 820, 821, 822, 824, - 826, 827, 828, 830, 831, 832, 833, 834, 836, 838, - 839, 842, 844, 847, 848, 850, 851, 852, 855, 856, - 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, - 867, 868, 869, 870, 872, 873, 874, 875, 876, 878, - 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, - 890, 891, 892, 893, 894, 895, 896, 897, 898, 900, - - 901, 902, 903, 904, 905, 906, 907, 908, 909, 912, - 913, 914, 915, 916, 918, 919, 920, 922, 923, 924, - 925, 926, 928, 929, 930, 931, 932, 933, 934, 937, - 938, 939, 940, 941, 943, 947, 948, 949, 952, 953, - 954, 955, 956, 958, 960, 961, 962, 963, 964, 965, - 932, 966, 967, 969, 972, 973, 974, 975, 976, 977, - 978, 979, 981, 982, 983, 984, 985, 986, 987, 988, - 989, 990, 991, 992, 994, 995, 997, 998, 999, 1001, - 1002, 1005, 1006, 1008, 1009, 1010, 1011, 1012, 1013, 1014, - 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1023, 1026, 995, - - 1027, 1028, 1029, 1030, 1032, 1033, 1034, 1035, 1036, 1037, - 1038, 1012, 1039, 1041, 1042, 1043, 1045, 1046, 1048, 1049, - 1050, 1051, 1053, 1054, 1055, 1057, 1059, 1061, 1062, 1063, - 1064, 1065, 1067, 1068, 1069, 1070, 1073, 1074, 1075, 1076, - 1077, 1078, 1079, 1081, 1084, 1085, 1086, 1088, 1091, 1093, - 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, - 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1112, 1113, 1085, - 1114, 1115, 1116, 1118, 1119, 1120, 1121, 1122, 1125, 1126, - 1128, 1129, 1130, 1131, 1133, 1134, 1135, 1136, 1140, 1141, - 1142, 1143, 1144, 1145, 1146, 1148, 1149, 1150, 1151, 1152, - - 1154, 1155, 1157, 1159, 1160, 1162, 1163, 1164, 1165, 1166, - 1167, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1178, 1179, - 1184, 1186, 1187, 1188, 1192, 696, 695, 694, 693, 692, - 691, 690, 689, 687, 686, 685, 683, 681, 679, 676, - 675, 674, 673, 672, 671, 670, 668, 666, 665, 664, - 662, 661, 659, 657, 656, 655, 653, 652, 650, 648, - 647, 646, 645, 644, 643, 642, 639, 638, 637, 636, - 635, 634, 633, 631, 629, 628, 627, 626, 624, 621, - 619, 616, 614, 613, 612, 611, 610, 609, 608, 607, - 606, 605, 604, 602, 601, 600, 599, 598, 596, 595, - - 592, 590, 589, 587, 585, 583, 582, 580, 578, 577, - 576, 575, 574, 573, 572, 571, 569, 568, 567, 566, - 565, 564, 563, 561, 560, 559, 557, 556, 555, 554, - 553, 552, 549, 548, 547, 546, 545, 544, 543, 542, - 541, 540, 539, 537, 535, 534, 533, 531, 529, 528, - 527, 526, 525, 523, 522, 521, 520, 518, 517, 516, - 515, 514, 512, 511, 509, 508, 507, 506, 505, 504, - 502, 500, 499, 497, 496, 495, 492, 491, 489, 488, - 487, 486, 485, 484, 483, 482, 481, 480, 479, 478, - 477, 476, 475, 474, 473, 472, 471, 470, 469, 468, - - 466, 464, 462, 461, 460, 459, 458, 457, 456, 451, - 450, 448, 445, 444, 443, 442, 441, 440, 439, 438, - 437, 436, 433, 432, 431, 430, 429, 428, 427, 426, - 425, 422, 420, 419, 418, 415, 414, 413, 412, 411, - 410, 409, 408, 407, 406, 405, 404, 403, 402, 401, - 398, 397, 396, 395, 394, 393, 392, 391, 390, 389, - 388, 387, 386, 385, 384, 383, 382, 380, 379, 378, - 377, 375, 374, 373, 372, 371, 370, 369, 368, 367, - 364, 363, 362, 361, 360, 359, 358, 356, 355, 353, - 352, 350, 348, 347, 346, 345, 344, 343, 342, 340, - - 339, 338, 337, 336, 335, 334, 333, 331, 330, 327, - 326, 325, 324, 323, 322, 320, 319, 317, 316, 315, - 314, 313, 312, 311, 309, 308, 307, 306, 305, 304, - 302, 301, 294, 293, 292, 291, 290, 289, 288, 287, - 286, 285, 284, 283, 282, 281, 280, 278, 277, 276, - 275, 274, 273, 272, 271, 269, 267, 266, 265, 264, - 263, 262, 261, 259, 258, 257, 256, 255, 254, 253, - 252, 251, 250, 249, 248, 247, 246, 245, 243, 242, - 241, 240, 239, 238, 236, 234, 233, 232, 231, 230, - 229, 228, 227, 226, 225, 224, 222, 221, 219, 218, - - 217, 216, 215, 214, 213, 212, 209, 208, 206, 205, - 204, 203, 202, 201, 200, 199, 198, 197, 196, 194, - 193, 192, 191, 189, 187, 186, 185, 183, 182, 181, - 180, 179, 178, 177, 176, 175, 173, 172, 171, 170, - 169, 168, 160, 159, 158, 157, 156, 155, 153, 151, - 150, 146, 145, 144, 142, 141, 140, 139, 138, 137, - 136, 135, 132, 131, 130, 126, 125, 124, 123, 122, - 121, 120, 119, 118, 117, 115, 114, 110, 109, 108, - 106, 105, 103, 102, 101, 100, 99, 98, 97, 96, - 94, 92, 91, 90, 88, 85, 84, 83, 82, 80, - - 79, 78, 75, 73, 72, 71, 70, 69, 68, 67, - 66, 53, 45, 44, 43, 38, 32, 21, 20, 19, - 11, 9, 7, 3, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191 - + 95, 59, 81, 707, 133, 260, 95, 133, 95, 154, + 143, 260, 133, 143, 184, 708, 188, 709, 95, 143, + 133, 184, 133, 163, 163, 188, 59, 163, 163, 163, + + 163, 163, 164, 164, 164, 164, 164, 165, 165, 210, + 210, 165, 165, 165, 165, 165, 164, 166, 166, 166, + 166, 166, 167, 167, 167, 167, 167, 174, 207, 235, + 237, 207, 713, 223, 329, 270, 505, 329, 270, 505, + 235, 164, 223, 174, 174, 400, 270, 223, 270, 280, + 223, 270, 280, 382, 382, 423, 657, 237, 280, 426, + 296, 423, 280, 296, 280, 280, 426, 400, 296, 400, + 426, 714, 296, 657, 296, 296, 492, 492, 296, 715, + 280, 297, 297, 297, 297, 297, 298, 298, 298, 298, + 298, 299, 299, 716, 717, 299, 299, 299, 299, 299, + + 300, 300, 300, 300, 300, 301, 301, 301, 301, 301, + 455, 455, 455, 455, 455, 456, 456, 456, 456, 456, + 573, 584, 618, 623, 573, 666, 584, 623, 701, 712, + 718, 712, 623, 618, 712, 719, 722, 723, 618, 724, + 725, 726, 727, 728, 712, 701, 712, 666, 729, 666, + 730, 731, 701, 734, 735, 736, 737, 739, 740, 741, + 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, + 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, + 762, 763, 764, 765, 766, 767, 768, 770, 771, 768, + 772, 773, 774, 776, 777, 778, 779, 780, 781, 768, + + 782, 783, 785, 787, 768, 788, 789, 790, 792, 793, + 794, 768, 795, 796, 768, 797, 798, 799, 800, 801, + 802, 803, 804, 768, 805, 806, 807, 808, 768, 809, + 810, 811, 813, 814, 815, 816, 817, 819, 820, 821, + 822, 824, 825, 826, 827, 829, 831, 832, 833, 835, + 836, 837, 838, 839, 841, 843, 844, 847, 849, 852, + 853, 855, 856, 857, 860, 861, 862, 863, 864, 865, + 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, + 876, 878, 879, 880, 881, 882, 884, 885, 886, 887, + 888, 889, 890, 891, 892, 893, 894, 896, 897, 898, + + 899, 900, 901, 902, 903, 904, 906, 907, 908, 909, + 910, 911, 912, 913, 914, 915, 918, 919, 920, 921, + 922, 924, 925, 926, 928, 929, 930, 931, 932, 934, + 935, 936, 937, 938, 939, 940, 943, 944, 945, 946, + 947, 949, 951, 954, 955, 956, 959, 960, 961, 962, + 963, 965, 967, 968, 969, 970, 971, 938, 972, 973, + 974, 976, 979, 980, 981, 982, 983, 984, 985, 986, + 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, + 998, 999, 1001, 1002, 1004, 1005, 1006, 1008, 1009, 1012, + 1013, 1014, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, + + 1024, 1025, 1026, 1027, 1028, 1029, 1031, 1002, 1034, 1035, + 1036, 1037, 1038, 1040, 1041, 1042, 1043, 1044, 1045, 1046, + 1020, 1047, 1049, 1050, 1051, 1053, 1054, 1056, 1057, 1058, + 1059, 1060, 1062, 1063, 1064, 1066, 1068, 1070, 1071, 1072, + 1073, 1074, 1076, 1077, 1078, 1079, 1082, 1083, 1084, 1085, + 1086, 1087, 1088, 1090, 1093, 1094, 1095, 1097, 1099, 1101, + 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, + 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1122, 1094, + 1123, 1124, 1125, 1127, 1129, 1130, 1131, 1132, 1133, 1136, + 1137, 1139, 1140, 1141, 1142, 1144, 1145, 1146, 1147, 1151, + + 1152, 1153, 1154, 1155, 1156, 1157, 1159, 1160, 1161, 1162, + 1163, 1165, 1166, 1168, 1170, 1171, 1173, 1174, 1175, 1176, + 1177, 1178, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1189, + 1190, 1195, 1197, 1198, 1199, 1203, 697, 696, 695, 694, + 693, 691, 690, 689, 687, 685, 683, 680, 679, 678, + 677, 676, 675, 674, 673, 671, 669, 668, 667, 665, + 664, 662, 660, 659, 658, 656, 655, 653, 651, 650, + 649, 648, 647, 646, 645, 642, 641, 640, 639, 638, + 637, 636, 634, 632, 631, 630, 629, 627, 624, 622, + 619, 617, 616, 615, 614, 613, 612, 611, 610, 609, + + 608, 607, 605, 604, 603, 602, 601, 599, 598, 595, + 593, 592, 590, 588, 586, 585, 583, 581, 580, 579, + 578, 577, 576, 575, 574, 572, 571, 570, 569, 568, + 567, 566, 564, 563, 562, 560, 559, 558, 557, 556, + 555, 554, 551, 550, 549, 548, 547, 546, 545, 544, + 543, 542, 541, 539, 537, 536, 535, 533, 531, 530, + 529, 528, 527, 525, 524, 523, 522, 520, 519, 518, + 517, 516, 514, 513, 511, 510, 509, 508, 507, 506, + 504, 502, 501, 499, 498, 497, 494, 493, 491, 490, + 489, 488, 487, 486, 485, 484, 483, 482, 481, 480, + + 479, 478, 477, 476, 475, 474, 473, 472, 471, 470, + 468, 466, 464, 463, 462, 461, 460, 459, 458, 453, + 452, 450, 447, 446, 445, 444, 443, 442, 441, 440, + 439, 438, 435, 434, 433, 432, 431, 430, 429, 428, + 427, 424, 422, 421, 420, 417, 416, 415, 414, 413, + 412, 411, 410, 409, 408, 407, 406, 405, 404, 403, + 402, 399, 398, 397, 396, 395, 394, 393, 392, 391, + 390, 389, 388, 387, 386, 385, 384, 383, 381, 380, + 379, 378, 376, 375, 374, 373, 372, 371, 370, 369, + 368, 365, 364, 363, 362, 361, 360, 359, 357, 356, + + 354, 353, 351, 349, 348, 347, 346, 345, 344, 343, + 341, 340, 339, 338, 337, 336, 335, 334, 332, 331, + 328, 327, 326, 325, 324, 323, 321, 320, 318, 317, + 316, 315, 314, 313, 312, 310, 309, 308, 307, 306, + 305, 303, 302, 295, 294, 293, 292, 291, 290, 289, + 288, 287, 286, 285, 284, 283, 282, 281, 279, 278, + 277, 276, 275, 274, 273, 272, 271, 269, 267, 266, + 265, 264, 263, 262, 261, 259, 258, 257, 256, 255, + 254, 253, 252, 251, 250, 249, 248, 247, 246, 245, + 243, 242, 241, 240, 239, 238, 236, 234, 233, 232, + + 231, 230, 229, 228, 227, 226, 225, 224, 222, 221, + 219, 218, 217, 216, 215, 214, 213, 212, 209, 208, + 206, 205, 204, 203, 202, 201, 200, 199, 198, 197, + 196, 194, 193, 192, 191, 189, 187, 186, 185, 183, + 182, 181, 180, 179, 178, 177, 176, 175, 173, 172, + 171, 170, 169, 168, 160, 159, 158, 157, 156, 155, + 153, 151, 150, 146, 145, 144, 142, 141, 140, 138, + 137, 136, 135, 132, 131, 130, 126, 125, 124, 123, + 122, 121, 120, 119, 118, 117, 115, 114, 110, 109, + 108, 106, 105, 103, 102, 101, 100, 99, 98, 97, + + 96, 94, 92, 91, 90, 88, 85, 84, 83, 82, + 80, 79, 78, 75, 73, 72, 71, 70, 69, 68, + 67, 66, 53, 45, 44, 43, 38, 32, 21, 20, + 19, 11, 9, 7, 3, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202 } ; static yy_state_type yy_last_accepting_state; @@ -1234,7 +1239,7 @@ void skipline(void); #define YY_NO_UNISTD_H #endif -#line 1238 "Gmsh.yy.cpp" +#line 1243 "Gmsh.yy.cpp" #define INITIAL 0 @@ -1419,7 +1424,7 @@ YY_DECL #line 72 "Gmsh.l" -#line 1423 "Gmsh.yy.cpp" +#line 1428 "Gmsh.yy.cpp" if ( !(yy_init) ) { @@ -1472,13 +1477,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1192 ) + if ( yy_current_state >= 1203 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 1325 ); + while ( yy_base[yy_current_state] != 1336 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -2396,67 +2401,67 @@ return tSmoother; case 179: YY_RULE_SETUP #line 270 "Gmsh.l" -return tSetFactory; +return tShapeFromFile; YY_BREAK case 180: YY_RULE_SETUP #line 271 "Gmsh.l" -return tSetNumber; +return tSetFactory; YY_BREAK case 181: YY_RULE_SETUP #line 272 "Gmsh.l" -return tSetString; +return tSetNumber; YY_BREAK case 182: YY_RULE_SETUP #line 273 "Gmsh.l" -return tSetPartition; +return tSetString; YY_BREAK case 183: YY_RULE_SETUP #line 274 "Gmsh.l" -return tSqrt; +return tSetPartition; YY_BREAK case 184: YY_RULE_SETUP #line 275 "Gmsh.l" -return tSin; +return tSqrt; YY_BREAK case 185: YY_RULE_SETUP #line 276 "Gmsh.l" -return tSinh; +return tSin; YY_BREAK case 186: YY_RULE_SETUP #line 277 "Gmsh.l" -return tSphere; +return tSinh; YY_BREAK case 187: YY_RULE_SETUP #line 278 "Gmsh.l" -return tSpline; +return tSphere; YY_BREAK case 188: YY_RULE_SETUP #line 279 "Gmsh.l" -return tSplit; +return tSpline; YY_BREAK case 189: YY_RULE_SETUP #line 280 "Gmsh.l" -return tSurface; +return tSplit; YY_BREAK case 190: YY_RULE_SETUP #line 281 "Gmsh.l" -return tStr; +return tSurface; YY_BREAK case 191: YY_RULE_SETUP #line 282 "Gmsh.l" -return tStringToName; +return tStr; YY_BREAK case 192: YY_RULE_SETUP @@ -2466,195 +2471,200 @@ return tStringToName; case 193: YY_RULE_SETUP #line 284 "Gmsh.l" -return tSprintf; +return tStringToName; YY_BREAK case 194: YY_RULE_SETUP #line 285 "Gmsh.l" -return tStrCat; +return tSprintf; YY_BREAK case 195: YY_RULE_SETUP #line 286 "Gmsh.l" -return tStrReplace; +return tStrCat; YY_BREAK case 196: YY_RULE_SETUP #line 287 "Gmsh.l" -return tStrPrefix; +return tStrReplace; YY_BREAK case 197: YY_RULE_SETUP #line 288 "Gmsh.l" -return tStrRelative; +return tStrPrefix; YY_BREAK case 198: YY_RULE_SETUP #line 289 "Gmsh.l" -return tStrFind; +return tStrRelative; YY_BREAK case 199: YY_RULE_SETUP #line 290 "Gmsh.l" -return tStrCmp; +return tStrFind; YY_BREAK case 200: YY_RULE_SETUP #line 291 "Gmsh.l" -return tStrChoice; +return tStrCmp; YY_BREAK case 201: YY_RULE_SETUP #line 292 "Gmsh.l" -return tStrLen; +return tStrChoice; YY_BREAK case 202: YY_RULE_SETUP #line 293 "Gmsh.l" -return tStrSub; +return tStrLen; YY_BREAK case 203: YY_RULE_SETUP #line 294 "Gmsh.l" -return tShow; +return tStrSub; YY_BREAK case 204: YY_RULE_SETUP #line 295 "Gmsh.l" -return tSymmetry; +return tShow; YY_BREAK case 205: YY_RULE_SETUP #line 296 "Gmsh.l" -return tSlide; +return tSymmetry; YY_BREAK case 206: YY_RULE_SETUP #line 297 "Gmsh.l" -return tSyncModel; +return tSlide; YY_BREAK case 207: YY_RULE_SETUP -#line 299 "Gmsh.l" -return tText2D; +#line 298 "Gmsh.l" +return tSyncModel; YY_BREAK case 208: YY_RULE_SETUP #line 300 "Gmsh.l" -return tText3D; +return tText2D; YY_BREAK case 209: YY_RULE_SETUP #line 301 "Gmsh.l" -return tTestLevel; +return tText3D; YY_BREAK case 210: YY_RULE_SETUP #line 302 "Gmsh.l" -return tTextAttributes; +return tTestLevel; YY_BREAK case 211: YY_RULE_SETUP #line 303 "Gmsh.l" -return tThruSections; +return tTextAttributes; YY_BREAK case 212: YY_RULE_SETUP #line 304 "Gmsh.l" -return tTime; +return tThruSections; YY_BREAK case 213: YY_RULE_SETUP #line 305 "Gmsh.l" -return tTransfinite; +return tTime; YY_BREAK case 214: YY_RULE_SETUP #line 306 "Gmsh.l" -return tTransfQuadTri; +return tTransfinite; YY_BREAK case 215: YY_RULE_SETUP #line 307 "Gmsh.l" -return tTranslate; +return tTransfQuadTri; YY_BREAK case 216: YY_RULE_SETUP #line 308 "Gmsh.l" -return tTanh; +return tTranslate; YY_BREAK case 217: YY_RULE_SETUP #line 309 "Gmsh.l" -return tTan; +return tTanh; YY_BREAK case 218: YY_RULE_SETUP #line 310 "Gmsh.l" -return tToday; +return tTan; YY_BREAK case 219: YY_RULE_SETUP #line 311 "Gmsh.l" -return tTotalMemory; +return tToday; YY_BREAK case 220: YY_RULE_SETUP -#line 313 "Gmsh.l" -return tUndefineConstant; +#line 312 "Gmsh.l" +return tTotalMemory; YY_BREAK case 221: YY_RULE_SETUP #line 314 "Gmsh.l" -return tUpperCase; +return tUndefineConstant; YY_BREAK case 222: YY_RULE_SETUP #line 315 "Gmsh.l" -return tLowerCase; +return tUpperCase; YY_BREAK case 223: YY_RULE_SETUP #line 316 "Gmsh.l" -return tLowerCaseIn; +return tLowerCase; YY_BREAK case 224: YY_RULE_SETUP #line 317 "Gmsh.l" -return tUsing; +return tLowerCaseIn; YY_BREAK case 225: YY_RULE_SETUP -#line 319 "Gmsh.l" -return tVolume; +#line 318 "Gmsh.l" +return tUsing; YY_BREAK case 226: -#line 322 "Gmsh.l" +YY_RULE_SETUP +#line 320 "Gmsh.l" +return tVolume; + YY_BREAK case 227: #line 323 "Gmsh.l" case 228: #line 324 "Gmsh.l" case 229: +#line 325 "Gmsh.l" +case 230: YY_RULE_SETUP -#line 324 "Gmsh.l" +#line 325 "Gmsh.l" { gmsh_yylval.d = atof((char *)gmsh_yytext); return tDOUBLE; } YY_BREAK -case 230: +case 231: YY_RULE_SETUP -#line 326 "Gmsh.l" +#line 327 "Gmsh.l" { gmsh_yylval.c = strsave((char*)gmsh_yytext); return tSTRING; } YY_BREAK -case 231: +case 232: YY_RULE_SETUP -#line 328 "Gmsh.l" +#line 329 "Gmsh.l" return gmsh_yytext[0]; YY_BREAK -case 232: +case 233: YY_RULE_SETUP -#line 330 "Gmsh.l" +#line 331 "Gmsh.l" ECHO; YY_BREAK -#line 2658 "Gmsh.yy.cpp" +#line 2668 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2946,7 +2956,7 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1192 ) + if ( yy_current_state >= 1203 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2974,11 +2984,11 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1192 ) + if ( yy_current_state >= 1203 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1191); + yy_is_jam = (yy_current_state == 1202); return yy_is_jam ? 0 : yy_current_state; } @@ -3651,7 +3661,7 @@ void gmsh_yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 330 "Gmsh.l" +#line 331 "Gmsh.l" diff --git a/benchmarks/boolean/component8.step b/benchmarks/boolean/component8.step new file mode 100644 index 0000000000000000000000000000000000000000..6ed504923fbdb1afb4e8d0f3ce265c6b5d395d91 --- /dev/null +++ b/benchmarks/boolean/component8.step @@ -0,0 +1,1241 @@ +ISO-10303-21; +HEADER; +/* Generated by software containing ST-Developer + * from STEP Tools, Inc. (www.steptools.com) + */ +/* OPTION: using custom schema-name function */ + +FILE_DESCRIPTION( +/* description */ (''), +/* implementation_level */ '2;1'); + +FILE_NAME( +/* name */ 'component8', +/* time_stamp */ '2006-02-17T14:13:38+01:00', +/* author */ (''), +/* organization */ (''), +/* preprocessor_version */ 'ST-DEVELOPER v8', +/* originating_system */ '', +/* authorisation */ ''); + +FILE_SCHEMA (('CONFIG_CONTROL_DESIGN')); +ENDSEC; + +DATA; +#10=DESIGN_CONTEXT('3D Mechanical Parts',#83,'design'); +#11=PRODUCT_DEFINITION('A','First version',#53,#10); +#12=DATE_TIME_ROLE('classification_date'); +#13=DATE_TIME_ROLE('creation_date'); +#14=CC_DESIGN_DATE_AND_TIME_ASSIGNMENT(#38,#12,(#17)); +#15=CC_DESIGN_DATE_AND_TIME_ASSIGNMENT(#40,#13,(#11)); +#16=SECURITY_CLASSIFICATION_LEVEL('unclassified'); +#17=SECURITY_CLASSIFICATION('A','Security for version',#16); +#18=CC_DESIGN_SECURITY_CLASSIFICATION(#17,(#53)); +#19=APPROVAL_ROLE('Version approval'); +#20=APPROVAL_ROLE('Version Security approval'); +#21=APPROVAL_ROLE('Definition approval'); +#22=APPROVAL_PERSON_ORGANIZATION(#71,#47,#19); +#23=APPROVAL_PERSON_ORGANIZATION(#72,#48,#20); +#24=APPROVAL_PERSON_ORGANIZATION(#75,#49,#21); +#25=COORDINATED_UNIVERSAL_TIME_OFFSET(5,0,.BEHIND.); +#26=LOCAL_TIME(0,0,0.,#25); +#27=LOCAL_TIME(0,0,0.,#25); +#28=LOCAL_TIME(0,0,0.,#25); +#29=LOCAL_TIME(0,0,0.,#25); +#30=LOCAL_TIME(0,0,0.,#25); +#31=CALENDAR_DATE(1999,1,1); +#32=CALENDAR_DATE(1999,1,1); +#33=CALENDAR_DATE(1999,1,1); +#34=CALENDAR_DATE(1999,1,1); +#35=CALENDAR_DATE(1999,1,1); +#36=DATE_AND_TIME(#31,#26); +#37=DATE_AND_TIME(#32,#27); +#38=DATE_AND_TIME(#33,#28); +#39=DATE_AND_TIME(#34,#29); +#40=DATE_AND_TIME(#35,#30); +#41=APPROVAL_DATE_TIME(#36,#47); +#42=APPROVAL_DATE_TIME(#37,#48); +#43=APPROVAL_DATE_TIME(#39,#49); +#44=APPROVAL_STATUS('not_yet_approved'); +#45=APPROVAL_STATUS('not_yet_approved'); +#46=APPROVAL_STATUS('not_yet_approved'); +#47=APPROVAL(#44,'Version approval'); +#48=APPROVAL(#45,'Version Security approval'); +#49=APPROVAL(#46,'Definition approval'); +#50=CC_DESIGN_APPROVAL(#47,(#53)); +#51=CC_DESIGN_APPROVAL(#48,(#17)); +#52=CC_DESIGN_APPROVAL(#49,(#11)); +#53=PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('A', +'First version',#85,.MADE.); +#54=PERSON_AND_ORGANIZATION_ROLE('design_owner'); +#55=PERSON_AND_ORGANIZATION_ROLE('creator'); +#56=PERSON_AND_ORGANIZATION_ROLE('design_supplier'); +#57=PERSON_AND_ORGANIZATION_ROLE('classification_officer'); +#58=PERSON_AND_ORGANIZATION_ROLE('creator'); +#59=ORGANIZATION('STI','lab','lab'); +#60=ORGANIZATION('STI','unknown','unknown'); +#61=ORGANIZATION('STI','unknown','unknown'); +#62=ORGANIZATION('STI','unknown','unknown'); +#63=ORGANIZATION('STI','unknown','unknown'); +#64=ORGANIZATION('STI','unknown','unknown'); +#65=ORGANIZATION('STI','unknown','unknown'); +#66=PERSON('1','Box','vc60',$,$,$); +#67=PERSON('2','last','first',$,$,$); +#68=PERSON('3','President','Mr.',$,$,$); +#69=PERSON_AND_ORGANIZATION(#66,#59); +#70=PERSON_AND_ORGANIZATION(#67,#60); +#71=PERSON_AND_ORGANIZATION(#68,#61); +#72=PERSON_AND_ORGANIZATION(#68,#62); +#73=PERSON_AND_ORGANIZATION(#68,#63); +#74=PERSON_AND_ORGANIZATION(#67,#64); +#75=PERSON_AND_ORGANIZATION(#68,#65); +#76=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#69,#54,(#85)); +#77=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#70,#55,(#53)); +#78=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#70,#56,(#53)); +#79=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#73,#57,(#17)); +#80=CC_DESIGN_PERSON_AND_ORGANIZATION_ASSIGNMENT(#74,#58,(#11)); +#81=PRODUCT_RELATED_PRODUCT_CATEGORY('detail','detail',(#85)); +#82=APPLICATION_PROTOCOL_DEFINITION('International Standard', +'config_control_design',1994,#83); +#83=APPLICATION_CONTEXT( +'configuration controlled 3d designs of mechanical parts and assemblies +'); +#84=MECHANICAL_CONTEXT('3D Mechanical Parts',#83,'mechanical'); +#85=PRODUCT('8','Rhino Product','Rhino converted to STEP',(#84)); +#86=PRODUCT_DEFINITION_SHAPE('A','First version',#11); +#87=SHAPE_DEFINITION_REPRESENTATION(#86,#97); +#88=MANIFOLD_SOLID_BREP('Default_brep\X\01',#98); +#89=( +LENGTH_UNIT() +NAMED_UNIT(*) +SI_UNIT(.MILLI.,.METRE.) +); +#90=( +NAMED_UNIT(*) +PLANE_ANGLE_UNIT() +SI_UNIT($,.RADIAN.) +); +#91=DIMENSIONAL_EXPONENTS(0.,0.,0.,0.,0.,0.,0.); +#92=PLANE_ANGLE_MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(0.01745329252),#90); +#93=( +CONVERSION_BASED_UNIT('DEGREES',#92) +NAMED_UNIT(#91) +PLANE_ANGLE_UNIT() +); +#94=( +NAMED_UNIT(*) +SI_UNIT($,.STERADIAN.) +SOLID_ANGLE_UNIT() +); +#95=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(0.0741808824497),#89, +'DISTANCE_ACCURACY_VALUE', +'Maximum model space distance between geometric entities at asserted co +nnectivities'); +#96=( +GEOMETRIC_REPRESENTATION_CONTEXT(3) +GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#95)) +GLOBAL_UNIT_ASSIGNED_CONTEXT((#94,#93,#89)) +REPRESENTATION_CONTEXT('ID1','3D') +); +#97=ADVANCED_BREP_SHAPE_REPRESENTATION('brep_rep',(#88),#96); +#98=CLOSED_SHELL('',(#99,#100,#101,#102,#103,#104,#105,#106,#107,#108,#109, +#110,#111,#112,#113,#114,#115,#116,#117,#118,#119)); +#99=ADVANCED_FACE('',(#121,#120),#350,.T.); +#100=ADVANCED_FACE('',(#122),#336,.T.); +#101=ADVANCED_FACE('',(#123),#351,.T.); +#102=ADVANCED_FACE('',(#124),#337,.T.); +#103=ADVANCED_FACE('',(#125),#352,.T.); +#104=ADVANCED_FACE('',(#126),#353,.T.); +#105=ADVANCED_FACE('',(#127),#354,.T.); +#106=ADVANCED_FACE('',(#128),#355,.T.); +#107=ADVANCED_FACE('',(#129),#356,.T.); +#108=ADVANCED_FACE('',(#130),#338,.T.); +#109=ADVANCED_FACE('',(#131),#339,.T.); +#110=ADVANCED_FACE('',(#132),#340,.T.); +#111=ADVANCED_FACE('',(#133),#341,.T.); +#112=ADVANCED_FACE('',(#134),#342,.T.); +#113=ADVANCED_FACE('',(#135),#343,.T.); +#114=ADVANCED_FACE('',(#136),#344,.T.); +#115=ADVANCED_FACE('',(#137),#345,.T.); +#116=ADVANCED_FACE('',(#138),#346,.T.); +#117=ADVANCED_FACE('',(#139),#347,.T.); +#118=ADVANCED_FACE('',(#140),#348,.T.); +#119=ADVANCED_FACE('',(#141),#349,.T.); +#120=FACE_BOUND('',#143,.T.); +#121=FACE_OUTER_BOUND('',#142,.T.); +#122=FACE_OUTER_BOUND('',#144,.T.); +#123=FACE_OUTER_BOUND('',#145,.T.); +#124=FACE_OUTER_BOUND('',#146,.T.); +#125=FACE_OUTER_BOUND('',#147,.T.); +#126=FACE_OUTER_BOUND('',#148,.T.); +#127=FACE_OUTER_BOUND('',#149,.T.); +#128=FACE_OUTER_BOUND('',#150,.T.); +#129=FACE_OUTER_BOUND('',#151,.T.); +#130=FACE_OUTER_BOUND('',#152,.T.); +#131=FACE_OUTER_BOUND('',#153,.T.); +#132=FACE_OUTER_BOUND('',#154,.T.); +#133=FACE_OUTER_BOUND('',#155,.T.); +#134=FACE_OUTER_BOUND('',#156,.T.); +#135=FACE_OUTER_BOUND('',#157,.T.); +#136=FACE_OUTER_BOUND('',#158,.T.); +#137=FACE_OUTER_BOUND('',#159,.T.); +#138=FACE_OUTER_BOUND('',#160,.T.); +#139=FACE_OUTER_BOUND('',#161,.T.); +#140=FACE_OUTER_BOUND('',#162,.T.); +#141=FACE_OUTER_BOUND('',#163,.T.); +#142=EDGE_LOOP('',(#164,#165,#166,#167,#168,#169)); +#143=EDGE_LOOP('',(#170,#171)); +#144=EDGE_LOOP('',(#172,#173,#174)); +#145=EDGE_LOOP('',(#175,#176,#177,#178,#179)); +#146=EDGE_LOOP('',(#180,#181,#182,#183,#184,#185,#186)); +#147=EDGE_LOOP('',(#187,#188,#189,#190,#191,#192)); +#148=EDGE_LOOP('',(#193,#194,#195,#196,#197)); +#149=EDGE_LOOP('',(#198,#199,#200,#201,#202)); +#150=EDGE_LOOP('',(#203,#204,#205,#206,#207,#208)); +#151=EDGE_LOOP('',(#209,#210,#211,#212,#213)); +#152=EDGE_LOOP('',(#214,#215,#216)); +#153=EDGE_LOOP('',(#217,#218,#219)); +#154=EDGE_LOOP('',(#220,#221,#222)); +#155=EDGE_LOOP('',(#223,#224,#225)); +#156=EDGE_LOOP('',(#226,#227,#228)); +#157=EDGE_LOOP('',(#229,#230,#231,#232)); +#158=EDGE_LOOP('',(#233,#234,#235,#236)); +#159=EDGE_LOOP('',(#237,#238,#239,#240)); +#160=EDGE_LOOP('',(#241,#242,#243,#244)); +#161=EDGE_LOOP('',(#245,#246,#247,#248)); +#162=EDGE_LOOP('',(#249,#250,#251,#252)); +#163=EDGE_LOOP('',(#253,#254,#255,#256,#257,#258,#259)); +#164=ORIENTED_EDGE('',*,*,#260,.T.); +#165=ORIENTED_EDGE('',*,*,#265,.T.); +#166=ORIENTED_EDGE('',*,*,#264,.T.); +#167=ORIENTED_EDGE('',*,*,#263,.T.); +#168=ORIENTED_EDGE('',*,*,#262,.T.); +#169=ORIENTED_EDGE('',*,*,#261,.T.); +#170=ORIENTED_EDGE('',*,*,#267,.T.); +#171=ORIENTED_EDGE('',*,*,#266,.T.); +#172=ORIENTED_EDGE('',*,*,#268,.T.); +#173=ORIENTED_EDGE('',*,*,#260,.F.); +#174=ORIENTED_EDGE('',*,*,#269,.T.); +#175=ORIENTED_EDGE('',*,*,#270,.T.); +#176=ORIENTED_EDGE('',*,*,#273,.T.); +#177=ORIENTED_EDGE('',*,*,#272,.T.); +#178=ORIENTED_EDGE('',*,*,#268,.F.); +#179=ORIENTED_EDGE('',*,*,#271,.T.); +#180=ORIENTED_EDGE('',*,*,#307,.T.); +#181=ORIENTED_EDGE('',*,*,#277,.T.); +#182=ORIENTED_EDGE('',*,*,#276,.T.); +#183=ORIENTED_EDGE('',*,*,#270,.F.); +#184=ORIENTED_EDGE('',*,*,#275,.T.); +#185=ORIENTED_EDGE('',*,*,#283,.F.); +#186=ORIENTED_EDGE('',*,*,#282,.T.); +#187=ORIENTED_EDGE('',*,*,#275,.F.); +#188=ORIENTED_EDGE('',*,*,#271,.F.); +#189=ORIENTED_EDGE('',*,*,#269,.F.); +#190=ORIENTED_EDGE('',*,*,#285,.T.); +#191=ORIENTED_EDGE('',*,*,#284,.T.); +#192=ORIENTED_EDGE('',*,*,#274,.F.); +#193=ORIENTED_EDGE('',*,*,#280,.F.); +#194=ORIENTED_EDGE('',*,*,#284,.F.); +#195=ORIENTED_EDGE('',*,*,#288,.T.); +#196=ORIENTED_EDGE('',*,*,#287,.T.); +#197=ORIENTED_EDGE('',*,*,#286,.T.); +#198=ORIENTED_EDGE('',*,*,#279,.F.); +#199=ORIENTED_EDGE('',*,*,#286,.F.); +#200=ORIENTED_EDGE('',*,*,#291,.T.); +#201=ORIENTED_EDGE('',*,*,#290,.T.); +#202=ORIENTED_EDGE('',*,*,#289,.T.); +#203=ORIENTED_EDGE('',*,*,#278,.F.); +#204=ORIENTED_EDGE('',*,*,#289,.F.); +#205=ORIENTED_EDGE('',*,*,#294,.T.); +#206=ORIENTED_EDGE('',*,*,#293,.T.); +#207=ORIENTED_EDGE('',*,*,#292,.T.); +#208=ORIENTED_EDGE('',*,*,#277,.F.); +#209=ORIENTED_EDGE('',*,*,#276,.F.); +#210=ORIENTED_EDGE('',*,*,#292,.F.); +#211=ORIENTED_EDGE('',*,*,#296,.T.); +#212=ORIENTED_EDGE('',*,*,#295,.T.); +#213=ORIENTED_EDGE('',*,*,#273,.F.); +#214=ORIENTED_EDGE('',*,*,#295,.F.); +#215=ORIENTED_EDGE('',*,*,#265,.F.); +#216=ORIENTED_EDGE('',*,*,#272,.F.); +#217=ORIENTED_EDGE('',*,*,#293,.F.); +#218=ORIENTED_EDGE('',*,*,#264,.F.); +#219=ORIENTED_EDGE('',*,*,#296,.F.); +#220=ORIENTED_EDGE('',*,*,#290,.F.); +#221=ORIENTED_EDGE('',*,*,#263,.F.); +#222=ORIENTED_EDGE('',*,*,#294,.F.); +#223=ORIENTED_EDGE('',*,*,#287,.F.); +#224=ORIENTED_EDGE('',*,*,#262,.F.); +#225=ORIENTED_EDGE('',*,*,#291,.F.); +#226=ORIENTED_EDGE('',*,*,#285,.F.); +#227=ORIENTED_EDGE('',*,*,#261,.F.); +#228=ORIENTED_EDGE('',*,*,#288,.F.); +#229=ORIENTED_EDGE('',*,*,#299,.F.); +#230=ORIENTED_EDGE('',*,*,#298,.F.); +#231=ORIENTED_EDGE('',*,*,#297,.F.); +#232=ORIENTED_EDGE('',*,*,#281,.F.); +#233=ORIENTED_EDGE('',*,*,#297,.T.); +#234=ORIENTED_EDGE('',*,*,#300,.F.); +#235=ORIENTED_EDGE('',*,*,#299,.T.); +#236=ORIENTED_EDGE('',*,*,#282,.F.); +#237=ORIENTED_EDGE('',*,*,#303,.T.); +#238=ORIENTED_EDGE('',*,*,#302,.F.); +#239=ORIENTED_EDGE('',*,*,#301,.F.); +#240=ORIENTED_EDGE('',*,*,#300,.T.); +#241=ORIENTED_EDGE('',*,*,#303,.F.); +#242=ORIENTED_EDGE('',*,*,#298,.T.); +#243=ORIENTED_EDGE('',*,*,#301,.T.); +#244=ORIENTED_EDGE('',*,*,#304,.F.); +#245=ORIENTED_EDGE('',*,*,#306,.F.); +#246=ORIENTED_EDGE('',*,*,#304,.T.); +#247=ORIENTED_EDGE('',*,*,#305,.F.); +#248=ORIENTED_EDGE('',*,*,#267,.F.); +#249=ORIENTED_EDGE('',*,*,#305,.T.); +#250=ORIENTED_EDGE('',*,*,#302,.T.); +#251=ORIENTED_EDGE('',*,*,#306,.T.); +#252=ORIENTED_EDGE('',*,*,#266,.F.); +#253=ORIENTED_EDGE('',*,*,#281,.T.); +#254=ORIENTED_EDGE('',*,*,#283,.T.); +#255=ORIENTED_EDGE('',*,*,#274,.T.); +#256=ORIENTED_EDGE('',*,*,#280,.T.); +#257=ORIENTED_EDGE('',*,*,#279,.T.); +#258=ORIENTED_EDGE('',*,*,#278,.T.); +#259=ORIENTED_EDGE('',*,*,#307,.F.); +#260=EDGE_CURVE('',#308,#309,#823,.T.); +#261=EDGE_CURVE('',#310,#308,#824,.T.); +#262=EDGE_CURVE('',#311,#310,#825,.T.); +#263=EDGE_CURVE('',#312,#311,#826,.T.); +#264=EDGE_CURVE('',#313,#312,#827,.T.); +#265=EDGE_CURVE('',#309,#313,#828,.T.); +#266=EDGE_CURVE('',#314,#315,#829,.T.); +#267=EDGE_CURVE('',#315,#314,#830,.T.); +#268=EDGE_CURVE('',#316,#309,#357,.T.); +#269=EDGE_CURVE('',#308,#316,#358,.T.); +#270=EDGE_CURVE('',#317,#318,#831,.T.); +#271=EDGE_CURVE('',#316,#317,#359,.T.); +#272=EDGE_CURVE('',#319,#309,#360,.T.); +#273=EDGE_CURVE('',#318,#319,#361,.T.); +#274=EDGE_CURVE('',#320,#321,#362,.T.); +#275=EDGE_CURVE('',#317,#320,#363,.T.); +#276=EDGE_CURVE('',#322,#318,#364,.T.); +#277=EDGE_CURVE('',#323,#322,#365,.T.); +#278=EDGE_CURVE('',#324,#323,#366,.T.); +#279=EDGE_CURVE('',#325,#324,#367,.T.); +#280=EDGE_CURVE('',#321,#325,#368,.T.); +#281=EDGE_CURVE('',#326,#327,#832,.T.); +#282=EDGE_CURVE('',#327,#326,#833,.T.); +#283=EDGE_CURVE('',#327,#320,#834,.T.); +#284=EDGE_CURVE('',#328,#321,#369,.T.); +#285=EDGE_CURVE('',#308,#328,#370,.T.); +#286=EDGE_CURVE('',#329,#325,#371,.T.); +#287=EDGE_CURVE('',#310,#329,#372,.T.); +#288=EDGE_CURVE('',#328,#310,#373,.T.); +#289=EDGE_CURVE('',#330,#324,#374,.T.); +#290=EDGE_CURVE('',#311,#330,#375,.T.); +#291=EDGE_CURVE('',#329,#311,#376,.T.); +#292=EDGE_CURVE('',#331,#322,#377,.T.); +#293=EDGE_CURVE('',#312,#331,#378,.T.); +#294=EDGE_CURVE('',#330,#312,#379,.T.); +#295=EDGE_CURVE('',#313,#319,#380,.T.); +#296=EDGE_CURVE('',#331,#313,#381,.T.); +#297=EDGE_CURVE('',#327,#332,#382,.T.); +#298=EDGE_CURVE('',#332,#333,#835,.T.); +#299=EDGE_CURVE('',#333,#326,#383,.T.); +#300=EDGE_CURVE('',#333,#332,#836,.T.); +#301=EDGE_CURVE('',#333,#334,#384,.T.); +#302=EDGE_CURVE('',#334,#335,#837,.T.); +#303=EDGE_CURVE('',#332,#335,#385,.T.); +#304=EDGE_CURVE('',#335,#334,#838,.T.); +#305=EDGE_CURVE('',#314,#334,#386,.T.); +#306=EDGE_CURVE('',#335,#315,#387,.T.); +#307=EDGE_CURVE('',#326,#323,#839,.T.); +#308=VERTEX_POINT('',#795); +#309=VERTEX_POINT('',#796); +#310=VERTEX_POINT('',#797); +#311=VERTEX_POINT('',#798); +#312=VERTEX_POINT('',#799); +#313=VERTEX_POINT('',#800); +#314=VERTEX_POINT('',#801); +#315=VERTEX_POINT('',#802); +#316=VERTEX_POINT('',#803); +#317=VERTEX_POINT('',#804); +#318=VERTEX_POINT('',#805); +#319=VERTEX_POINT('',#806); +#320=VERTEX_POINT('',#807); +#321=VERTEX_POINT('',#808); +#322=VERTEX_POINT('',#809); +#323=VERTEX_POINT('',#810); +#324=VERTEX_POINT('',#811); +#325=VERTEX_POINT('',#812); +#326=VERTEX_POINT('',#813); +#327=VERTEX_POINT('',#814); +#328=VERTEX_POINT('',#815); +#329=VERTEX_POINT('',#816); +#330=VERTEX_POINT('',#817); +#331=VERTEX_POINT('',#818); +#332=VERTEX_POINT('',#819); +#333=VERTEX_POINT('',#820); +#334=VERTEX_POINT('',#821); +#335=VERTEX_POINT('',#822); +#336=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#645,#646),(#647,#648),(#649,#650)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(2.09439510241284,3.14159264302763), +(18.4752086140631,21.3619145805212),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025406429892,0.866025406429892), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#337=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,2,((#655,#656,#657),(#658,#659,#660),(#661,#662,#663), +(#664,#665,#666),(#667,#668,#669)),.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,2,3),(3,3),(0.,1.5707963267949,3.14159265358979), +(-1.1954143478557,-0.876944115348796),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.987348854483275,1.),(0.707106781186548, +0.698161070401894,0.707106781186548),(1.,0.987348854483275,1.),(0.707106781186548, +0.698161070401894,0.707106781186548),(1.,0.987348854483275,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#338=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#690,#691),(#692,#693),(#694,#695)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(1.04719756076893,2.09439510241292), +(18.4752086140631,21.3619145805234),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025406172591,0.866025406172591), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#339=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#696,#697),(#698,#699),(#700,#701)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(0.,1.04719756076893),(18.475208614065, +21.3619145805216),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025401391356,0.866025401391356), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#340=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#702,#703),(#704,#705),(#706,#707)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(5.23598775599053,6.28318530717959), +(18.4752086140647,21.3619145805212),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025403786323,0.866025403786323), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#341=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#708,#709),(#710,#711),(#712,#713)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(4.18879021424446,5.23598775599054), +(18.4752086140623,21.3619145805234),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025406147067,0.866025406147067), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#342=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,1,((#714,#715),(#716,#717),(#718,#719)),.UNSPECIFIED., +.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,3),(2,2),(3.14159264302763,4.18879021424457), +(18.4752086140623,21.3619145805217),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,1.),(0.866025398779352,0.866025398779352), +(1.,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#343=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#720,#721,#722,#723,#724),(#725,#726,#727,#728,#729)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(13.6427414595216,15.0362158111564), +(3.14159265358979,4.71238898038469,6.28318530717959),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#344=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#730,#731,#732,#733,#734),(#735,#736,#737,#738,#739)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(13.6427414595216,15.0362158111564), +(0.,1.5707963267949,3.14159265358979),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#345=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#740,#741,#742,#743,#744),(#745,#746,#747,#748,#749)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(3.0293749999999,33.3231249999989), +(0.,1.5707963267949,3.14159265358979),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#346=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#750,#751,#752,#753,#754),(#755,#756,#757,#758,#759)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(3.0293749999999,33.3231249999989), +(3.14159265358979,4.71238898038469,6.28318530717959),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#347=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#760,#761,#762,#763,#764),(#765,#766,#767,#768,#769)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(13.642741459518,15.556349186104), +(3.14159265358979,4.71238898038469,6.28318530717959),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#348=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(1,2,((#770,#771,#772,#773,#774),(#775,#776,#777,#778,#779)), +.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((2,2),(3,2,3),(13.642741459518,15.556349186104), +(0.,1.5707963267949,3.14159265358979),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.707106781186548,1.,0.707106781186548,1.), +(1.,0.707106781186548,1.,0.707106781186548,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#349=( +BOUNDED_SURFACE() +B_SPLINE_SURFACE(2,2,((#780,#781,#782),(#783,#784,#785),(#786,#787,#788), +(#789,#790,#791),(#792,#793,#794)),.UNSPECIFIED.,.F.,.F.,.F.) +B_SPLINE_SURFACE_WITH_KNOTS((3,2,3),(3,3),(3.14159265358979,4.71238898038469, +6.28318530717959),(-1.1954143478557,-0.876944115348777),.UNSPECIFIED.) +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_SURFACE(((1.,0.987348854483273,1.),(0.707106781186548, +0.698161070401892,0.707106781186548),(1.,0.987348854483273,1.),(0.707106781186548, +0.698161070401892,0.707106781186548),(1.,0.987348854483273,1.))) +REPRESENTATION_ITEM('') +SURFACE() +); +#350=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#641,#642),(#643,#644)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(-16.32,16.32),(-16.32,16.32),.UNSPECIFIED.); +#351=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#651,#652),(#653,#654)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(-2.38902752675769E-012,18.4752086140692),(2.86329509834288, +33.2983832168481),.UNSPECIFIED.); +#352=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#670,#671),(#672,#673)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(-4.2819081613743E-012,18.4752086140697),(2.8632950983419, +33.2983832168481),.UNSPECIFIED.); +#353=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#674,#675),(#676,#677)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(1.99747916609408E-013,18.475208614069),(2.86329509835079, +33.298383216848),.UNSPECIFIED.); +#354=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#678,#679),(#680,#681)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(-3.51828368147731E-012,18.4752086140692),(2.86329509834281, +33.2983832168481),.UNSPECIFIED.); +#355=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#682,#683),(#684,#685)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(-6.28119778411929E-012,18.475208614067),(2.8632950983419, +33.2983832168481),.UNSPECIFIED.); +#356=B_SPLINE_SURFACE_WITH_KNOTS('',1,1,((#686,#687),(#688,#689)),.UNSPECIFIED., +.F.,.F.,.F.,(2,2),(2,2),(1.97237940780014E-013,18.475208614069),(2.86329509835088, +33.298383216848),.UNSPECIFIED.); +#357=B_SPLINE_CURVE_WITH_KNOTS('',3,(#416,#417,#418,#419,#420,#421,#422, +#423,#424,#425,#426,#427,#428,#429),.UNSPECIFIED.,.F.,.F.,(4,2,2,2,2,2,4), +(-1.,-0.500198856225791,-0.250416226749761,-0.125448063373225,-0.0627240316866126, +-0.0313620158433063,0.),.UNSPECIFIED.); +#358=B_SPLINE_CURVE_WITH_KNOTS('',3,(#430,#431,#432,#433,#434,#435,#436, +#437,#438,#439,#440,#441,#442,#443),.UNSPECIFIED.,.F.,.F.,(4,2,2,2,2,2,4), +(-0.999999992071867,-0.96862313067443,-0.937246269276993,-0.874492546482118, +-0.749715402946071,-0.499775239848227,0.),.UNSPECIFIED.); +#359=B_SPLINE_CURVE_WITH_KNOTS('',1,(#447,#448),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,26.575711052679),.UNSPECIFIED.); +#360=B_SPLINE_CURVE_WITH_KNOTS('',3,(#449,#450,#451,#452,#453,#454,#455, +#456),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.200000000000708,0.400000000001416, +0.600000000002124,0.800000000002832,0.999999995332692),.UNSPECIFIED.); +#361=B_SPLINE_CURVE_WITH_KNOTS('',1,(#457,#458),.UNSPECIFIED.,.F.,.F.,(2, +2),(-26.575711052679,0.),.UNSPECIFIED.); +#362=B_SPLINE_CURVE_WITH_KNOTS('',3,(#459,#460,#461,#462,#463,#464),.UNSPECIFIED., +.F.,.F.,(4,2,4),(0.,4.72231211571594,9.47834833217417),.UNSPECIFIED.); +#363=B_SPLINE_CURVE_WITH_KNOTS('',3,(#465,#466,#467,#468,#469,#470),.UNSPECIFIED., +.F.,.F.,(4,2,4),(0.,4.75565606535215,9.47834833217497),.UNSPECIFIED.); +#364=B_SPLINE_CURVE_WITH_KNOTS('',3,(#471,#472,#473,#474,#475,#476,#477, +#478,#479,#480),.UNSPECIFIED.,.F.,.F.,(4,2,2,2,4),(0.,4.754965254404,9.47834833215305, +14.2006604478573,18.9566966643144),.UNSPECIFIED.); +#365=B_SPLINE_CURVE_WITH_KNOTS('',3,(#481,#482,#483,#484,#485,#486),.UNSPECIFIED., +.F.,.F.,(4,2,4),(0.,4.72231211571582,9.47834833217417),.UNSPECIFIED.); +#366=B_SPLINE_CURVE_WITH_KNOTS('',3,(#487,#488,#489,#490,#491,#492),.UNSPECIFIED., +.F.,.F.,(4,2,4),(0.,4.75565606535142,9.47834833217218),.UNSPECIFIED.); +#367=B_SPLINE_CURVE_WITH_KNOTS('',3,(#493,#494,#495,#496,#497,#498,#499, +#500,#501,#502),.UNSPECIFIED.,.F.,.F.,(4,2,2,2,4),(0.,4.75496525441116,9.47834833216791, +14.2006604478793,18.9566966643339),.UNSPECIFIED.); +#368=B_SPLINE_CURVE_WITH_KNOTS('',3,(#503,#504,#505,#506,#507,#508,#509, +#510,#511,#512),.UNSPECIFIED.,.F.,.F.,(4,2,2,2,4),(0.,4.75496525440376,9.47834833215352, +14.2006604478586,18.9566966643163),.UNSPECIFIED.); +#369=B_SPLINE_CURVE_WITH_KNOTS('',1,(#526,#527),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,26.575711052679),.UNSPECIFIED.); +#370=B_SPLINE_CURVE_WITH_KNOTS('',3,(#528,#529,#530,#531,#532,#533,#534, +#535),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.2,0.4,0.6,0.8,1.),.UNSPECIFIED.); +#371=B_SPLINE_CURVE_WITH_KNOTS('',1,(#536,#537),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,26.575711052679),.UNSPECIFIED.); +#372=B_SPLINE_CURVE_WITH_KNOTS('',3,(#538,#539,#540,#541,#542,#543,#544, +#545),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.2,0.4,0.6,0.8,1.),.UNSPECIFIED.); +#373=B_SPLINE_CURVE_WITH_KNOTS('',3,(#546,#547,#548,#549,#550,#551,#552, +#553),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.200000000000573,0.400000000001146, +0.60000000000172,0.800000000002293,0.999999997488464),.UNSPECIFIED.); +#374=B_SPLINE_CURVE_WITH_KNOTS('',1,(#554,#555),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,26.575711052679),.UNSPECIFIED.); +#375=B_SPLINE_CURVE_WITH_KNOTS('',3,(#556,#557,#558,#559,#560,#561,#562, +#563),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.2,0.4,0.6,0.8,1.),.UNSPECIFIED.); +#376=B_SPLINE_CURVE_WITH_KNOTS('',3,(#564,#565,#566,#567,#568,#569,#570, +#571),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.200000000000607,0.400000000001214, +0.600000000001821,0.800000000002428,0.999999995951374),.UNSPECIFIED.); +#377=B_SPLINE_CURVE_WITH_KNOTS('',1,(#572,#573),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,26.575711052679),.UNSPECIFIED.); +#378=B_SPLINE_CURVE_WITH_KNOTS('',3,(#574,#575,#576,#577,#578,#579,#580, +#581),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(6.148701248843E-009,0.199999999993261, +0.399999999994946,0.59999999999663,0.799999999998315,1.),.UNSPECIFIED.); +#379=B_SPLINE_CURVE_WITH_KNOTS('',3,(#582,#583,#584,#585,#586,#587,#588, +#589),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.2,0.4,0.6,0.8,1.),.UNSPECIFIED.); +#380=B_SPLINE_CURVE_WITH_KNOTS('',3,(#590,#591,#592,#593,#594,#595,#596, +#597),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(9.51828212105803E-009,0.2,0.4, +0.6,0.8,1.),.UNSPECIFIED.); +#381=B_SPLINE_CURVE_WITH_KNOTS('',3,(#598,#599,#600,#601,#602,#603,#604, +#605),.UNSPECIFIED.,.F.,.F.,(4,1,1,1,1,4),(0.,0.2,0.4,0.6,0.8,1.),.UNSPECIFIED.); +#382=B_SPLINE_CURVE_WITH_KNOTS('',1,(#606,#607),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,1.39347435163474),.UNSPECIFIED.); +#383=B_SPLINE_CURVE_WITH_KNOTS('',1,(#613,#614),.UNSPECIFIED.,.F.,.F.,(2, +2),(13.6427414595216,15.0362158111564),.UNSPECIFIED.); +#384=B_SPLINE_CURVE_WITH_KNOTS('',1,(#620,#621),.UNSPECIFIED.,.F.,.F.,(2, +2),(0.,30.293749999999),.UNSPECIFIED.); +#385=B_SPLINE_CURVE_WITH_KNOTS('',1,(#627,#628),.UNSPECIFIED.,.F.,.F.,(2, +2),(3.0293749999999,33.3231249999989),.UNSPECIFIED.); +#386=B_SPLINE_CURVE_WITH_KNOTS('',1,(#634,#635),.UNSPECIFIED.,.F.,.F.,(2, +2),(-1.91360772658609,0.),.UNSPECIFIED.); +#387=B_SPLINE_CURVE_WITH_KNOTS('',1,(#636,#637),.UNSPECIFIED.,.F.,.F.,(2, +2),(13.642741459518,15.556349186104),.UNSPECIFIED.); +#388=CARTESIAN_POINT('',(-1.68994742731324E-007,188.5,-16.)); +#389=CARTESIAN_POINT('',(-9.23760436315522,188.5,-15.9999999024309)); +#390=CARTESIAN_POINT('',(-13.8564064603933,188.5,-8.00000000027335)); +#391=CARTESIAN_POINT('',(13.8564065362164,188.5,-7.99999986894361)); +#392=CARTESIAN_POINT('',(9.23760435158966,188.5,-16.0000000975691)); +#393=CARTESIAN_POINT('',(-1.68994742731324E-007,188.5,-16.)); +#394=CARTESIAN_POINT('',(13.8564064604906,188.5,8.00000000010462)); +#395=CARTESIAN_POINT('',(18.4752085636647,188.5,8.74408117831211E-008)); +#396=CARTESIAN_POINT('',(13.8564065362164,188.5,-7.99999986894361)); +#397=CARTESIAN_POINT('',(-8.74990178961606E-008,188.5,16.)); +#398=CARTESIAN_POINT('',(9.23760427778725,188.5,16.0000000505175)); +#399=CARTESIAN_POINT('',(13.8564064604906,188.5,8.00000000010462)); +#400=CARTESIAN_POINT('',(-13.8564065371297,188.5,7.9999998673619)); +#401=CARTESIAN_POINT('',(-9.23760443830517,188.5,15.9999999494824)); +#402=CARTESIAN_POINT('',(-8.74990178961606E-008,188.5,16.)); +#403=CARTESIAN_POINT('',(-13.8564064603933,188.5,-8.00000000027335)); +#404=CARTESIAN_POINT('',(-18.4752085631208,188.5,-8.86076821103369E-008)); +#405=CARTESIAN_POINT('',(-13.8564065371297,188.5,7.9999998673619)); +#406=CARTESIAN_POINT('',(-5.84922662553323E-014,188.5,11.)); +#407=CARTESIAN_POINT('',(-11.0000000000001,188.5,11.)); +#408=CARTESIAN_POINT('',(-11.0000000000001,188.5,-1.35760917691323E-014)); +#409=CARTESIAN_POINT('',(-11.0000000000001,188.5,-11.)); +#410=CARTESIAN_POINT('',(-5.71451992661277E-014,188.5,-11.)); +#411=CARTESIAN_POINT('',(-5.71451992661277E-014,188.5,-11.)); +#412=CARTESIAN_POINT('',(10.9999999999999,188.5,-11.)); +#413=CARTESIAN_POINT('',(10.9999999999999,188.5,-1.22290247799277E-014)); +#414=CARTESIAN_POINT('',(10.9999999999999,188.5,11.)); +#415=CARTESIAN_POINT('',(-5.84922662553323E-014,188.5,11.)); +#416=CARTESIAN_POINT('',(-9.23760430703125,187.070937640364,-15.9999999999969)); +#417=CARTESIAN_POINT('',(-9.66193489308507,187.315925018211,-15.2650378662195)); +#418=CARTESIAN_POINT('',(-10.1196470402852,187.56074961539,-14.4719995549902)); +#419=CARTESIAN_POINT('',(-10.9809122890529,187.926375478549,-12.9801832722312)); +#420=CARTESIAN_POINT('',(-11.2954657850888,188.048070611898,-12.4365330331587)); +#421=CARTESIAN_POINT('',(-11.8936109880142,188.228955023242,-11.3988535329474)); +#422=CARTESIAN_POINT('',(-12.1141594978959,188.289061367233,-11.017608949138)); +#423=CARTESIAN_POINT('',(-12.5431168789052,188.377703306205,-10.274871558727)); +#424=CARTESIAN_POINT('',(-12.7004700156042,188.407126508322,-10.001979931619)); +#425=CARTESIAN_POINT('',(-13.0101794053312,188.449223801943,-9.46569027547136)); +#426=CARTESIAN_POINT('',(-13.1234536838651,188.462946955902,-9.26932302367545)); +#427=CARTESIAN_POINT('',(-13.4202871667809,188.487839494213,-8.75545079397449)); +#428=CARTESIAN_POINT('',(-13.5966863851631,188.499999998417,-8.44984837175837)); +#429=CARTESIAN_POINT('',(-13.8564064603902,188.499999999996,-8.0000000002701)); +#430=CARTESIAN_POINT('',(-1.68994740602384E-007,188.499999999996,-15.9999999999974)); +#431=CARTESIAN_POINT('',(-0.519616250850604,188.499999996942,-15.9999999997974)); +#432=CARTESIAN_POINT('',(-0.872704506581719,188.487822145271,-16.0000437496836)); +#433=CARTESIAN_POINT('',(-1.46622992412083,188.462920145803,-15.9999084906373)); +#434=CARTESIAN_POINT('',(-1.69304054355934,188.44918732612,-15.9999914520301)); +#435=CARTESIAN_POINT('',(-2.3124806341035,188.407069988168,-15.9999130059247)); +#436=CARTESIAN_POINT('',(-2.62762017754957,188.377629421637,-16.0000797577476)); +#437=CARTESIAN_POINT('',(-3.48432444390869,188.289063591604,-15.9999611792704)); +#438=CARTESIAN_POINT('',(-3.92412709811084,188.22904963396,-15.9996029279992)); +#439=CARTESIAN_POINT('',(-5.1220306830116,188.048182255654,-16.0004456656311)); +#440=CARTESIAN_POINT('',(-5.75055530492582,187.926411819033,-15.9998406549093)); +#441=CARTESIAN_POINT('',(-7.47337392994487,187.560722982366,-15.9998786118199)); +#442=CARTESIAN_POINT('',(-8.38898952522787,187.315911626813,-15.9999999998106)); +#443=CARTESIAN_POINT('',(-9.23760430703125,187.070937640364,-15.9999999999969)); +#444=CARTESIAN_POINT('',(-9.23760430703274,160.49522658769,-16.0000000000023)); +#445=CARTESIAN_POINT('',(-13.8564064605508,156.677731195469,-8.00000000000089)); +#446=CARTESIAN_POINT('',(-18.475208614069,160.495226587689,8.93039429819598E-013)); +#447=CARTESIAN_POINT('',(-9.23760430703393,187.07093764037,-16.0000000000002)); +#448=CARTESIAN_POINT('',(-9.23760430703274,160.49522658769,-16.0000000000023)); +#449=CARTESIAN_POINT('',(-18.4752086140689,187.07093764037,6.55007613339964E-013)); +#450=CARTESIAN_POINT('',(-18.1446105243676,187.261808536435,-0.572612688247159)); +#451=CARTESIAN_POINT('',(-17.4973367723952,187.604109408756,-1.69372371306908)); +#452=CARTESIAN_POINT('',(-16.5915506447553,187.991479449405,-3.26259130693238)); +#453=CARTESIAN_POINT('',(-15.6816261846692,188.281649903215,-4.83862670285109)); +#454=CARTESIAN_POINT('',(-14.7561739075697,188.461657262363,-6.4415570667677)); +#455=CARTESIAN_POINT('',(-14.1551342564819,188.500000000192,-7.48258827981517)); +#456=CARTESIAN_POINT('',(-13.8564064603941,188.5,-8.00000000027232)); +#457=CARTESIAN_POINT('',(-18.475208614069,160.495226587689,8.93039429819598E-013)); +#458=CARTESIAN_POINT('',(-18.4752086140689,187.07093764037,6.55007613339964E-013)); +#459=CARTESIAN_POINT('',(-5.38999924284989E-014,158.661678315193,-15.999999999998)); +#460=CARTESIAN_POINT('',(1.43926056654374,158.661678315193,-15.999999999998)); +#461=CARTESIAN_POINT('',(2.87143629889494,158.782934636122,-15.9996513329272)); +#462=CARTESIAN_POINT('',(5.91838746813942,159.345660719525,-16.000273918568)); +#463=CARTESIAN_POINT('',(7.48664809650155,159.771633430469,-15.999999999998)); +#464=CARTESIAN_POINT('',(9.23760430703945,160.495226587693,-15.9999999999996)); +#465=CARTESIAN_POINT('',(-9.23760430703239,160.495226587691,-16.0000000000001)); +#466=CARTESIAN_POINT('',(-7.48678805084267,159.77169126744,-15.999999999998)); +#467=CARTESIAN_POINT('',(-5.91864721855774,159.345732945038,-16.0002737969211)); +#468=CARTESIAN_POINT('',(-2.87166547859463,158.782952882561,-15.9996515532247)); +#469=CARTESIAN_POINT('',(-1.43937642853664,158.661678315193,-15.9999999999978)); +#470=CARTESIAN_POINT('',(-5.781873276073E-014,158.661678315193,-15.999999999998)); +#471=CARTESIAN_POINT('',(-9.23760430703999,160.495226587693,15.9999999999988)); +#472=CARTESIAN_POINT('',(-10.112885272549,159.771796368843,14.4839688968343)); +#473=CARTESIAN_POINT('',(-10.8970837605399,159.345864201546,13.1262444220978)); +#474=CARTESIAN_POINT('',(-12.4200640732166,158.782986042877,10.4871219009313)); +#475=CARTESIAN_POINT('',(-13.1366129740235,158.661678315196,9.24671888962739)); +#476=CARTESIAN_POINT('',(-14.5760367438228,158.661678315196,6.75356378671291)); +#477=CARTESIAN_POINT('',(-15.2918226554567,158.782934636125,5.51308888627951)); +#478=CARTESIAN_POINT('',(-16.8158374150592,159.345660719526,2.87466306244484)); +#479=CARTESIAN_POINT('',(-17.5997305087977,159.771633430467,1.51637255924146)); +#480=CARTESIAN_POINT('',(-18.4752086140669,160.49522658769,-1.4033801167379E-014)); +#481=CARTESIAN_POINT('',(-5.97781029268456E-014,158.661678315193,15.999999999998)); +#482=CARTESIAN_POINT('',(-1.43926056654384,158.661678315193,15.999999999998)); +#483=CARTESIAN_POINT('',(-2.87143629889508,158.782934636122,15.9996513329272)); +#484=CARTESIAN_POINT('',(-5.91838746813961,159.345660719525,16.0002739185679)); +#485=CARTESIAN_POINT('',(-7.48664809650182,159.771633430469,15.999999999998)); +#486=CARTESIAN_POINT('',(-9.23760430703999,160.495226587693,15.9999999999988)); +#487=CARTESIAN_POINT('',(9.2376043070308,160.49522658769,16.0000000000005)); +#488=CARTESIAN_POINT('',(7.48678805084121,159.77169126744,15.999999999998)); +#489=CARTESIAN_POINT('',(5.91864721855632,159.345732945038,16.000273796921)); +#490=CARTESIAN_POINT('',(2.87166547859373,158.782952882561,15.9996515532247)); +#491=CARTESIAN_POINT('',(1.43937642853613,158.661678315193,15.9999999999977)); +#492=CARTESIAN_POINT('',(-5.97781029268456E-014,158.661678315193,15.999999999998)); +#493=CARTESIAN_POINT('',(18.4752086140668,160.49522658769,-9.50882959598297E-015)); +#494=CARTESIAN_POINT('',(17.5999276485539,159.771796368841,1.51603110316515)); +#495=CARTESIAN_POINT('',(16.8162030060862,159.345864201543,2.87402915274349)); +#496=CARTESIAN_POINT('',(15.2921460153934,158.782986042874,5.51253005357021)); +#497=CARTESIAN_POINT('',(14.5761999470764,158.661678315193,6.75328111037558)); +#498=CARTESIAN_POINT('',(13.1367761772761,158.661678315193,9.24643621329184)); +#499=CARTESIAN_POINT('',(12.4203863565602,158.782934636122,10.4865624466553)); +#500=CARTESIAN_POINT('',(10.8974499469199,159.345660719524,13.1256108561303)); +#501=CARTESIAN_POINT('',(10.1130824122991,159.771633430467,14.4836274407611)); +#502=CARTESIAN_POINT('',(9.2376043070308,160.49522658769,16.0000000000005)); +#503=CARTESIAN_POINT('',(9.23760430703945,160.495226587693,-15.9999999999996)); +#504=CARTESIAN_POINT('',(10.1128852725483,159.771796368844,-14.4839688968352)); +#505=CARTESIAN_POINT('',(10.8970837605392,159.345864201546,-13.1262444220989)); +#506=CARTESIAN_POINT('',(12.4200640732159,158.782986042878,-10.4871219009323)); +#507=CARTESIAN_POINT('',(13.1366129740229,158.661678315196,-9.24671888962832)); +#508=CARTESIAN_POINT('',(14.5760367438223,158.661678315196,-6.75356378671363)); +#509=CARTESIAN_POINT('',(15.2918226554563,158.782934636124,-5.51308888628009)); +#510=CARTESIAN_POINT('',(16.8158374150589,159.345660719526,-2.87466306244516)); +#511=CARTESIAN_POINT('',(17.5997305087975,159.771633430467,-1.51637255924165)); +#512=CARTESIAN_POINT('',(18.4752086140668,160.49522658769,-9.50882959598297E-015)); +#513=CARTESIAN_POINT('',(-5.91207599728636E-014,155.867789836548,10.6322101634505)); +#514=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,10.6322101634505)); +#515=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,-1.09495174563295E-014)); +#516=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,-10.6322101634505)); +#517=CARTESIAN_POINT('',(-5.52146783364627E-014,155.867789836548,-10.6322101634506)); +#518=CARTESIAN_POINT('',(-5.781873276073E-014,155.867789836548,-10.6322101634506)); +#519=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,-10.6322101634506)); +#520=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,-1.35535718805968E-014)); +#521=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,10.6322101634505)); +#522=CARTESIAN_POINT('',(-5.91207599728636E-014,155.867789836548,10.6322101634505)); +#523=CARTESIAN_POINT('',(-5.52146783364627E-014,155.867789836548,-10.6322101634506)); +#524=CARTESIAN_POINT('',(-5.45214425747451E-014,156.983176404012,-13.4626534301941)); +#525=CARTESIAN_POINT('',(-5.38999924284989E-014,158.661678315193,-15.999999999998)); +#526=CARTESIAN_POINT('',(9.23760430703344,187.07093764037,-16.)); +#527=CARTESIAN_POINT('',(9.23760430703872,160.495226587691,-16.)); +#528=CARTESIAN_POINT('',(-1.6899474095498E-007,188.5,-16.)); +#529=CARTESIAN_POINT('',(0.59780778711641,188.499999991877,-16.)); +#530=CARTESIAN_POINT('',(1.8004791214957,188.46155325645,-16.)); +#531=CARTESIAN_POINT('',(3.64851238590559,188.281890136025,-16.)); +#532=CARTESIAN_POINT('',(5.4719945932921,187.991271840652,-16.)); +#533=CARTESIAN_POINT('',(7.28797637824103,187.602641353627,-16.)); +#534=CARTESIAN_POINT('',(8.57908539354299,187.261035675493,-16.)); +#535=CARTESIAN_POINT('',(9.23760430703344,187.07093764037,-16.)); +#536=CARTESIAN_POINT('',(18.4752086140699,187.07093764037,2.11624833928497E-014)); +#537=CARTESIAN_POINT('',(18.4752086140678,160.495226587693,-3.64778263193949E-012)); +#538=CARTESIAN_POINT('',(13.8564065362168,188.5,-7.99999986894597)); +#539=CARTESIAN_POINT('',(14.1554723634967,188.499999993119,-7.48200266128962)); +#540=CARTESIAN_POINT('',(14.7570472356487,188.461572301835,-6.44004441816566)); +#541=CARTESIAN_POINT('',(15.6829506079087,188.281313309164,-4.83633273451195)); +#542=CARTESIAN_POINT('',(16.5927619715385,187.991016483117,-3.26049322740183)); +#543=CARTESIAN_POINT('',(17.498255268063,187.603650021332,-1.69213283190831)); +#544=CARTESIAN_POINT('',(18.1449622007016,187.26160549575,-0.572003566971307)); +#545=CARTESIAN_POINT('',(18.4752086140699,187.07093764037,2.11624833928497E-014)); +#546=CARTESIAN_POINT('',(9.23760430703499,187.07093764037,-16.0000000000009)); +#547=CARTESIAN_POINT('',(9.56820242851523,187.261808554788,-15.4273872567103)); +#548=CARTESIAN_POINT('',(10.215476233213,187.604109451194,-14.3062761405654)); +#549=CARTESIAN_POINT('',(11.1212623995694,187.991479497141,-12.7374084796432)); +#550=CARTESIAN_POINT('',(12.0311868768658,188.281649938009,-11.1613730539153)); +#551=CARTESIAN_POINT('',(12.9566390861603,188.461657269651,-9.55844280744038)); +#552=CARTESIAN_POINT('',(13.5576787384657,188.500000003642,-8.51741159228403)); +#553=CARTESIAN_POINT('',(13.8564065362168,188.5,-7.99999986894597)); +#554=CARTESIAN_POINT('',(9.23760430703363,187.07093764037,16.0000000000005)); +#555=CARTESIAN_POINT('',(9.23760430703224,160.49522658769,16.0000000000029)); +#556=CARTESIAN_POINT('',(13.8564064604908,188.5,8.00000000010449)); +#557=CARTESIAN_POINT('',(13.5573406720288,188.49999999371,8.51799714052632)); +#558=CARTESIAN_POINT('',(12.9557658638655,188.461572321203,9.5599552728187)); +#559=CARTESIAN_POINT('',(12.0298625094145,188.281313359068,11.1636669256261)); +#560=CARTESIAN_POINT('',(11.1200511173904,187.991016546653,12.7395064819167)); +#561=CARTESIAN_POINT('',(10.2145577708277,187.603650080082,14.3078669640789)); +#562=CARTESIAN_POINT('',(9.56785076467022,187.261605521157,15.4279963563543)); +#563=CARTESIAN_POINT('',(9.23760430703363,187.07093764037,16.0000000000005)); +#564=CARTESIAN_POINT('',(18.4752086140687,187.07093764037,-6.66601875173822E-013)); +#565=CARTESIAN_POINT('',(18.1446105201121,187.261808538897,0.572612695617705)); +#566=CARTESIAN_POINT('',(17.4973367613044,187.604109414312,1.69372373227857)); +#567=CARTESIAN_POINT('',(16.5915506301578,187.991479454977,3.26259133221572)); +#568=CARTESIAN_POINT('',(15.6816261689037,188.281649907273,4.83862673015753)); +#569=CARTESIAN_POINT('',(14.7561738950145,188.461657263762,6.44155708851363)); +#570=CARTESIAN_POINT('',(14.1551342512471,188.500000000159,7.48258828888177)); +#571=CARTESIAN_POINT('',(13.8564064604908,188.5,8.00000000010449)); +#572=CARTESIAN_POINT('',(-9.23760430703456,187.07093764037,16.)); +#573=CARTESIAN_POINT('',(-9.23760430703984,160.495226587691,16.)); +#574=CARTESIAN_POINT('',(-8.74990187843368E-008,188.5,16.)); +#575=CARTESIAN_POINT('',(-0.597807944735581,188.499999999519,16.)); +#576=CARTESIAN_POINT('',(-1.80047923605423,188.461553259081,16.)); +#577=CARTESIAN_POINT('',(-3.64851266917192,188.281890108752,16.)); +#578=CARTESIAN_POINT('',(-5.47199484885885,187.991271795688,16.)); +#579=CARTESIAN_POINT('',(-7.28797655705883,187.602641311235,16.)); +#580=CARTESIAN_POINT('',(-8.57908546122756,187.261035656774,16.)); +#581=CARTESIAN_POINT('',(-9.23760430703456,187.07093764037,16.)); +#582=CARTESIAN_POINT('',(9.23760430703269,187.07093764037,16.)); +#583=CARTESIAN_POINT('',(8.57941432274677,187.260940721999,16.)); +#584=CARTESIAN_POINT('',(7.28842077615595,187.602561944746,16.)); +#585=CARTESIAN_POINT('',(5.4694096032429,187.991821035004,16.)); +#586=CARTESIAN_POINT('',(3.64405958759015,188.28245186897,16.)); +#587=CARTESIAN_POINT('',(1.79850532534396,188.461624407804,16.)); +#588=CARTESIAN_POINT('',(0.597038706718117,188.499999992898,16.)); +#589=CARTESIAN_POINT('',(-8.74990187843368E-008,188.5,16.)); +#590=CARTESIAN_POINT('',(-13.8564065371311,188.5,7.99999986736258)); +#591=CARTESIAN_POINT('',(-14.1554723070353,188.499999997641,7.48200275908386)); +#592=CARTESIAN_POINT('',(-14.7570471013037,188.46157232251,6.44004465085827)); +#593=CARTESIAN_POINT('',(-15.682950579454,188.2813133229,4.83633278379725)); +#594=CARTESIAN_POINT('',(-16.5927619608629,187.99101648823,3.26049324589263)); +#595=CARTESIAN_POINT('',(-17.4982552655981,187.60365002374,1.69213283617786)); +#596=CARTESIAN_POINT('',(-18.1449622005494,187.26160549611,0.572003567235192)); +#597=CARTESIAN_POINT('',(-18.4752086140701,187.07093764037,-2.93437956015047E-014)); +#598=CARTESIAN_POINT('',(-9.23760430703536,187.07093764037,16.0000000000005)); +#599=CARTESIAN_POINT('',(-9.56820243412439,187.261808557048,15.4273872469952)); +#600=CARTESIAN_POINT('',(-10.2154762467965,187.60410945497,14.3062761170383)); +#601=CARTESIAN_POINT('',(-11.1212624082046,187.991479494627,12.7374084646867)); +#602=CARTESIAN_POINT('',(-12.031186883258,188.281649932143,11.1613730428439)); +#603=CARTESIAN_POINT('',(-12.9566391120803,188.4616572632,9.55844276254593)); +#604=CARTESIAN_POINT('',(-13.5576787348445,188.499999989073,8.5174115985563)); +#605=CARTESIAN_POINT('',(-13.8564065371311,188.5,7.99999986736258)); +#606=CARTESIAN_POINT('',(-5.91207599728639E-014,155.867789836552,-10.6322101634531)); +#607=CARTESIAN_POINT('',(-5.90000952026833E-014,156.853125000003,-9.64687500000261)); +#608=CARTESIAN_POINT('',(-5.90000952026833E-014,156.853125000003,-9.64687500000261)); +#609=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,-9.64687500000261)); +#610=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,-1.467460193746E-014)); +#611=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,9.64687500000258)); +#612=CARTESIAN_POINT('',(-5.54560078768233E-014,156.853125000003,9.64687500000259)); +#613=CARTESIAN_POINT('',(-5.54560078768233E-014,156.853125000003,9.64687500000259)); +#614=CARTESIAN_POINT('',(-5.52146783364621E-014,155.867789836552,10.632210163453)); +#615=CARTESIAN_POINT('',(-5.781873276073E-014,156.853125000003,9.64687500000259)); +#616=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,9.64687500000259)); +#617=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,-1.23118770535533E-014)); +#618=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,-9.64687500000261)); +#619=CARTESIAN_POINT('',(-5.90000952026833E-014,156.853125000003,-9.64687500000261)); +#620=CARTESIAN_POINT('',(-5.9000095202683E-014,156.853125000001,9.64687499999999)); +#621=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#622=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#623=CARTESIAN_POINT('',(-9.64687500000006,187.146875,9.64687499999999)); +#624=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-1.34932394955065E-014)); +#625=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-9.64687500000001)); +#626=CARTESIAN_POINT('',(-5.781873276073E-014,187.146875,-9.64687500000001)); +#627=CARTESIAN_POINT('',(-5.54560078768239E-014,156.853125000001,-9.64687500000001)); +#628=CARTESIAN_POINT('',(-5.54560078768239E-014,187.146875,-9.64687500000001)); +#629=CARTESIAN_POINT('',(-5.54560078768239E-014,187.146875,-9.64687500000001)); +#630=CARTESIAN_POINT('',(9.64687499999994,187.146875,-9.64687500000001)); +#631=CARTESIAN_POINT('',(9.64687499999994,187.146875,-1.11305146116005E-014)); +#632=CARTESIAN_POINT('',(9.64687499999994,187.146875,9.64687499999999)); +#633=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#634=CARTESIAN_POINT('',(-5.91657997499346E-014,188.5,11.)); +#635=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#636=CARTESIAN_POINT('',(-5.54560078768239E-014,187.146875,-9.64687500000001)); +#637=CARTESIAN_POINT('',(-5.51245987823208E-014,188.5,-11.)); +#638=CARTESIAN_POINT('',(-5.91207599728636E-014,155.867789836548,10.6322101634505)); +#639=CARTESIAN_POINT('',(-5.781873276073E-014,156.983176404012,13.462653430194)); +#640=CARTESIAN_POINT('',(-5.97781029268456E-014,158.661678315193,15.999999999998)); +#641=CARTESIAN_POINT('',(16.32,188.5,16.32)); +#642=CARTESIAN_POINT('',(-16.32,188.5,16.32)); +#643=CARTESIAN_POINT('',(16.32,188.5,-16.32)); +#644=CARTESIAN_POINT('',(-16.32,188.5,-16.32)); +#645=CARTESIAN_POINT('',(-13.8564064603902,188.499999999996,-8.0000000002701)); +#646=CARTESIAN_POINT('',(-16.0214359352092,187.056647016767,-9.24998035041706)); +#647=CARTESIAN_POINT('',(-9.23760436315361,188.499999999996,-15.9999999024266)); +#648=CARTESIAN_POINT('',(-10.6809573551516,187.056647016767,-18.4999605873905)); +#649=CARTESIAN_POINT('',(-1.68994742731337E-007,188.499999999996,-15.9999999999957)); +#650=CARTESIAN_POINT('',(-1.95399745360186E-007,187.056647016767,-18.4999607002046)); +#651=CARTESIAN_POINT('',(-9.23760430703286,158.363295098343,-16.0000000000021)); +#652=CARTESIAN_POINT('',(-9.23760430703286,188.798383216848,-16.0000000000021)); +#653=CARTESIAN_POINT('',(-18.475208614069,158.363295098343,8.43301438316391E-013)); +#654=CARTESIAN_POINT('',(-18.475208614069,188.798383216848,8.43301438316391E-013)); +#655=CARTESIAN_POINT('',(-5.781873276073E-014,155.867789836548,-10.6322101634506)); +#656=CARTESIAN_POINT('',(-5.781873276073E-014,157.575267007727,-14.9651628842891)); +#657=CARTESIAN_POINT('',(-5.781873276073E-014,160.553593099348,-18.5456001848276)); +#658=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,-10.6322101634506)); +#659=CARTESIAN_POINT('',(-14.9651628842891,157.575267007727,-14.9651628842891)); +#660=CARTESIAN_POINT('',(-18.5456001848277,160.553593099348,-18.5456001848276)); +#661=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,-1.35535718805968E-014)); +#662=CARTESIAN_POINT('',(-14.9651628842892,157.575267007727,-1.38188799522344E-014)); +#663=CARTESIAN_POINT('',(-18.5456001848277,160.553593099348,-1.40381112656195E-014)); +#664=CARTESIAN_POINT('',(-10.6322101634506,155.867789836548,10.6322101634505)); +#665=CARTESIAN_POINT('',(-14.9651628842891,157.575267007727,14.9651628842891)); +#666=CARTESIAN_POINT('',(-18.5456001848277,160.553593099348,18.5456001848276)); +#667=CARTESIAN_POINT('',(-5.91207599728636E-014,155.867789836548,10.6322101634505)); +#668=CARTESIAN_POINT('',(-5.96513761161387E-014,157.575267007727,14.9651628842891)); +#669=CARTESIAN_POINT('',(-6.00898387429089E-014,160.553593099348,18.5456001848276)); +#670=CARTESIAN_POINT('',(9.23760430703822,158.363295098342,-16.)); +#671=CARTESIAN_POINT('',(9.23760430703822,188.798383216848,-16.)); +#672=CARTESIAN_POINT('',(-9.23760430703575,158.363295098342,-16.)); +#673=CARTESIAN_POINT('',(-9.23760430703575,188.798383216848,-16.)); +#674=CARTESIAN_POINT('',(18.4752086140698,158.363295098351,-1.66086318142271E-013)); +#675=CARTESIAN_POINT('',(18.4752086140698,188.798383216848,-1.66086318142271E-013)); +#676=CARTESIAN_POINT('',(9.23760430703511,158.363295098351,-16.0000000000007)); +#677=CARTESIAN_POINT('',(9.23760430703511,188.798383216848,-16.0000000000007)); +#678=CARTESIAN_POINT('',(9.23760430703218,158.363295098343,16.000000000003)); +#679=CARTESIAN_POINT('',(9.23760430703218,188.798383216848,16.000000000003)); +#680=CARTESIAN_POINT('',(18.4752086140689,158.363295098343,-8.51342986471448E-013)); +#681=CARTESIAN_POINT('',(18.4752086140689,188.798383216848,-8.51342986471448E-013)); +#682=CARTESIAN_POINT('',(-9.23760430704034,158.363295098342,16.)); +#683=CARTESIAN_POINT('',(-9.23760430704034,188.798383216848,16.)); +#684=CARTESIAN_POINT('',(9.23760430703294,158.363295098342,16.)); +#685=CARTESIAN_POINT('',(9.23760430703294,188.798383216848,16.)); +#686=CARTESIAN_POINT('',(-18.47520861407,158.363295098351,1.57910509031091E-013)); +#687=CARTESIAN_POINT('',(-18.47520861407,188.798383216848,1.57910509031091E-013)); +#688=CARTESIAN_POINT('',(-9.23760430703524,158.363295098351,16.0000000000007)); +#689=CARTESIAN_POINT('',(-9.23760430703524,188.798383216848,16.0000000000007)); +#690=CARTESIAN_POINT('',(-13.8564065371261,188.499999999996,7.99999986735968)); +#691=CARTESIAN_POINT('',(-16.0214360239365,187.056647016766,9.24998019674066)); +#692=CARTESIAN_POINT('',(-18.4752085631159,188.499999999996,-8.86076834367603E-008)); +#693=CARTESIAN_POINT('',(-21.3619145216158,187.056647016766,-1.0245241502015E-007)); +#694=CARTESIAN_POINT('',(-13.8564064603896,188.499999999996,-8.00000000027122)); +#695=CARTESIAN_POINT('',(-16.0214359352101,187.056647016766,-9.24998035041929)); +#696=CARTESIAN_POINT('',(-5.781873276073E-014,188.499999999996,15.9999999999974)); +#697=CARTESIAN_POINT('',(-5.781873276073E-014,187.056647016767,18.4999607002049)); +#698=CARTESIAN_POINT('',(-9.23760440913742,188.499999999996,15.9999999999974)); +#699=CARTESIAN_POINT('',(-10.6809574083194,187.056647016767,18.4999607002049)); +#700=CARTESIAN_POINT('',(-13.8564065371275,188.499999999996,7.9999998673606)); +#701=CARTESIAN_POINT('',(-16.0214360239351,187.056647016767,9.24998019674)); +#702=CARTESIAN_POINT('',(13.8564064604881,188.499999999996,8.00000000010296)); +#703=CARTESIAN_POINT('',(16.0214359353211,187.056647016767,9.24998035022301)); +#704=CARTESIAN_POINT('',(9.23760430695189,188.499999999996,15.9999999999971)); +#705=CARTESIAN_POINT('',(10.6809572901676,187.056647016767,18.4999607002046)); +#706=CARTESIAN_POINT('',(-5.42660190819295E-014,188.499999999996,15.9999999999971)); +#707=CARTESIAN_POINT('',(-5.42660190819295E-014,187.056647016767,18.4999607002046)); +#708=CARTESIAN_POINT('',(13.8564065362112,188.499999999997,-7.99999986894272)); +#709=CARTESIAN_POINT('',(16.0214360228794,187.056647016766,-9.24998019857146)); +#710=CARTESIAN_POINT('',(18.4752085636595,188.499999999997,8.74396070864688E-008)); +#711=CARTESIAN_POINT('',(21.3619145222453,187.056647016766,1.01101832215465E-007)); +#712=CARTESIAN_POINT('',(13.8564064604862,188.499999999997,8.00000000010213)); +#713=CARTESIAN_POINT('',(16.0214359353226,187.056647016766,9.2499803502242)); +#714=CARTESIAN_POINT('',(-1.68994741137941E-007,188.499999999997,-15.999999999995)); +#715=CARTESIAN_POINT('',(-1.95399745315602E-007,187.056647016767,-18.499960700205)); +#716=CARTESIAN_POINT('',(9.23760435158677,188.499999999997,-16.0000000975641)); +#717=CARTESIAN_POINT('',(10.6809573417782,187.056647016767,-18.499960813019)); +#718=CARTESIAN_POINT('',(13.8564065362121,188.499999999997,-7.99999986894112)); +#719=CARTESIAN_POINT('',(16.0214360228792,187.056647016767,-9.24998019856886)); +#720=CARTESIAN_POINT('',(-5.90000952026833E-014,156.853125000003,-9.64687500000261)); +#721=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,-9.64687500000261)); +#722=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,-1.467460193746E-014)); +#723=CARTESIAN_POINT('',(9.64687500000254,156.853125000003,9.64687500000258)); +#724=CARTESIAN_POINT('',(-5.54560078768233E-014,156.853125000003,9.64687500000259)); +#725=CARTESIAN_POINT('',(-5.91207599728639E-014,155.867789836552,-10.6322101634531)); +#726=CARTESIAN_POINT('',(10.632210163453,155.867789836552,-10.6322101634531)); +#727=CARTESIAN_POINT('',(10.632210163453,155.867789836552,-1.48555990927309E-014)); +#728=CARTESIAN_POINT('',(10.632210163453,155.867789836552,10.632210163453)); +#729=CARTESIAN_POINT('',(-5.52146783364621E-014,155.867789836552,10.632210163453)); +#730=CARTESIAN_POINT('',(-5.781873276073E-014,156.853125000003,9.64687500000259)); +#731=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,9.64687500000259)); +#732=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,-1.23118770535533E-014)); +#733=CARTESIAN_POINT('',(-9.64687500000266,156.853125000003,-9.64687500000261)); +#734=CARTESIAN_POINT('',(-5.90000952026833E-014,156.853125000003,-9.64687500000261)); +#735=CARTESIAN_POINT('',(-5.781873276073E-014,155.867789836552,10.632210163453)); +#736=CARTESIAN_POINT('',(-10.6322101634531,155.867789836552,10.632210163453)); +#737=CARTESIAN_POINT('',(-10.6322101634531,155.867789836552,-1.2251544668463E-014)); +#738=CARTESIAN_POINT('',(-10.6322101634531,155.867789836552,-10.6322101634531)); +#739=CARTESIAN_POINT('',(-5.91207599728639E-014,155.867789836552,-10.6322101634531)); +#740=CARTESIAN_POINT('',(-5.781873276073E-014,156.853125000001,-9.64687500000001)); +#741=CARTESIAN_POINT('',(-9.64687500000006,156.853125000001,-9.64687500000001)); +#742=CARTESIAN_POINT('',(-9.64687500000006,156.853125000001,-1.34932394955065E-014)); +#743=CARTESIAN_POINT('',(-9.64687500000006,156.853125000001,9.64687499999999)); +#744=CARTESIAN_POINT('',(-5.9000095202683E-014,156.853125000001,9.64687499999999)); +#745=CARTESIAN_POINT('',(-5.781873276073E-014,187.146875,-9.64687500000001)); +#746=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-9.64687500000001)); +#747=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-1.34932394955065E-014)); +#748=CARTESIAN_POINT('',(-9.64687500000006,187.146875,9.64687499999999)); +#749=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#750=CARTESIAN_POINT('',(-5.9000095202683E-014,156.853125000001,9.64687499999999)); +#751=CARTESIAN_POINT('',(9.64687499999994,156.853125000001,9.64687499999999)); +#752=CARTESIAN_POINT('',(9.64687499999994,156.853125000001,-1.11305146116005E-014)); +#753=CARTESIAN_POINT('',(9.64687499999994,156.853125000001,-9.64687500000001)); +#754=CARTESIAN_POINT('',(-5.54560078768239E-014,156.853125000001,-9.64687500000001)); +#755=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#756=CARTESIAN_POINT('',(9.64687499999994,187.146875,9.64687499999999)); +#757=CARTESIAN_POINT('',(9.64687499999994,187.146875,-1.11305146116005E-014)); +#758=CARTESIAN_POINT('',(9.64687499999994,187.146875,-9.64687500000001)); +#759=CARTESIAN_POINT('',(-5.54560078768239E-014,187.146875,-9.64687500000001)); +#760=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#761=CARTESIAN_POINT('',(9.64687499999994,187.146875,9.64687499999999)); +#762=CARTESIAN_POINT('',(9.64687499999994,187.146875,-1.11305146116005E-014)); +#763=CARTESIAN_POINT('',(9.64687499999994,187.146875,-9.64687500000001)); +#764=CARTESIAN_POINT('',(-5.54560078768239E-014,187.146875,-9.64687500000001)); +#765=CARTESIAN_POINT('',(-5.91657997499346E-014,188.5,11.)); +#766=CARTESIAN_POINT('',(10.9999999999999,188.5,11.)); +#767=CARTESIAN_POINT('',(10.9999999999999,188.5,-1.08819577907231E-014)); +#768=CARTESIAN_POINT('',(10.9999999999999,188.5,-11.)); +#769=CARTESIAN_POINT('',(-5.51245987823208E-014,188.5,-11.)); +#770=CARTESIAN_POINT('',(-5.781873276073E-014,187.146875,-9.64687500000001)); +#771=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-9.64687500000001)); +#772=CARTESIAN_POINT('',(-9.64687500000006,187.146875,-1.34932394955065E-014)); +#773=CARTESIAN_POINT('',(-9.64687500000006,187.146875,9.64687499999999)); +#774=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#775=CARTESIAN_POINT('',(-5.781873276073E-014,188.5,-11.)); +#776=CARTESIAN_POINT('',(-11.0000000000001,188.5,-11.)); +#777=CARTESIAN_POINT('',(-11.0000000000001,188.5,-1.35760917691323E-014)); +#778=CARTESIAN_POINT('',(-11.0000000000001,188.5,11.)); +#779=CARTESIAN_POINT('',(-5.91657997499346E-014,188.5,11.)); +#780=CARTESIAN_POINT('',(-5.91207599728636E-014,155.867789836548,10.6322101634505)); +#781=CARTESIAN_POINT('',(-5.96513761161387E-014,157.575267007727,14.9651628842893)); +#782=CARTESIAN_POINT('',(-6.0089838742909E-014,160.553593099348,18.545600184828)); +#783=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,10.6322101634505)); +#784=CARTESIAN_POINT('',(14.9651628842893,157.575267007727,14.9651628842893)); +#785=CARTESIAN_POINT('',(18.545600184828,160.553593099348,18.545600184828)); +#786=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,-1.09495174563295E-014)); +#787=CARTESIAN_POINT('',(14.9651628842893,157.575267007727,-1.01535932414169E-014)); +#788=CARTESIAN_POINT('',(18.545600184828,160.553593099348,-9.49589930126152E-015)); +#789=CARTESIAN_POINT('',(10.6322101634505,155.867789836548,-10.6322101634505)); +#790=CARTESIAN_POINT('',(14.9651628842893,157.575267007727,-14.9651628842894)); +#791=CARTESIAN_POINT('',(18.545600184828,160.553593099348,-18.545600184828)); +#792=CARTESIAN_POINT('',(-5.52146783364627E-014,155.867789836548,-10.6322101634506)); +#793=CARTESIAN_POINT('',(-5.41534460499125E-014,157.575267007727,-14.9651628842894)); +#794=CARTESIAN_POINT('',(-5.3276520796372E-014,160.553593099348,-18.545600184828)); +#795=CARTESIAN_POINT('',(-1.68994741490559E-007,188.499999999998,-15.9999999999987)); +#796=CARTESIAN_POINT('',(-13.8564064603918,188.499999999998,-8.00000000027175)); +#797=CARTESIAN_POINT('',(13.8564065362141,188.499999999998,-7.99999986894336)); +#798=CARTESIAN_POINT('',(13.8564064604894,188.499999999998,8.00000000010381)); +#799=CARTESIAN_POINT('',(-6.56242771191596E-008,188.499999999998,15.9999999999987)); +#800=CARTESIAN_POINT('',(-13.856406537129,188.499999999998,7.99999986736143)); +#801=CARTESIAN_POINT('',(-5.89412885850672E-014,188.5,11.)); +#802=CARTESIAN_POINT('',(-5.66961769363928E-014,188.5,-11.)); +#803=CARTESIAN_POINT('',(-9.2376043070327,187.070937640368,-15.9999999999991)); +#804=CARTESIAN_POINT('',(-9.23760430703367,160.49522658769,-16.0000000000007)); +#805=CARTESIAN_POINT('',(-18.475208614068,160.495226587691,1.38193580935176E-012)); +#806=CARTESIAN_POINT('',(-18.4752086140683,187.070937640368,4.05022751278259E-013)); +#807=CARTESIAN_POINT('',(1.87152441082E-012,158.661678315192,-15.9999999999988)); +#808=CARTESIAN_POINT('',(9.23760430703761,160.495226587693,-16.0000000000001)); +#809=CARTESIAN_POINT('',(-9.23760430703885,160.495226587692,15.9999999999993)); +#810=CARTESIAN_POINT('',(-2.46309739997203E-012,158.661678315192,15.999999999999)); +#811=CARTESIAN_POINT('',(9.23760430703195,160.49522658769,16.0000000000012)); +#812=CARTESIAN_POINT('',(18.4752086140678,160.495226587691,-1.39664508011873E-012)); +#813=CARTESIAN_POINT('',(-5.73847236900186E-014,155.867789836551,10.6322101634522)); +#814=CARTESIAN_POINT('',(-5.74467249858348E-014,155.86778983655,-10.632210163452)); +#815=CARTESIAN_POINT('',(9.23760430703371,187.070937640368,-15.9999999999992)); +#816=CARTESIAN_POINT('',(18.4752086140681,187.070937640368,-4.15682084080973E-013)); +#817=CARTESIAN_POINT('',(9.23760430703259,187.070937640368,15.9999999999991)); +#818=CARTESIAN_POINT('',(-9.23760430703383,187.070937640368,15.9999999999991)); +#819=CARTESIAN_POINT('',(-5.78187327607302E-014,156.853125000002,-9.64687500000131)); +#820=CARTESIAN_POINT('',(-5.78187327607298E-014,156.853125000002,9.64687500000129)); +#821=CARTESIAN_POINT('',(-5.9000095202683E-014,187.146875,9.64687499999999)); +#822=CARTESIAN_POINT('',(-5.6637370318777E-014,187.146875,-9.64687500000001)); +#823=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#388,#389,#390),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.7551606498365,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025406429912,1.)) +REPRESENTATION_ITEM('') +); +#824=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#391,#392,#393),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.755161139473,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025398779351,1.)) +REPRESENTATION_ITEM('') +); +#825=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#394,#395,#396),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.7551606679376,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025406147092,1.)) +REPRESENTATION_ITEM('') +); +#826=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#397,#398,#399),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.7551609065239,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025402419151,1.)) +REPRESENTATION_ITEM('') +); +#827=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#400,#401,#402),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.7551608848038,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025402758529,1.)) +REPRESENTATION_ITEM('') +); +#828=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#403,#404,#405),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-16.7551606663051,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.866025406172591,1.)) +REPRESENTATION_ITEM('') +); +#829=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#406,#407,#408,#409,#410),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-34.5575191894877,-17.2787595947439,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#830=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#411,#412,#413,#414,#415),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-34.5575191894877,-17.2787595947439,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#831=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#444,#445,#446),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-18.9566966643331,0.),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.924192108888095,1.)) +REPRESENTATION_ITEM('') +); +#832=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#513,#514,#515,#516,#517),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-33.4020733409173,-16.7010366704586,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#833=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#518,#519,#520,#521,#522),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-33.4020733409173,-16.7010366704586,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#834=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#523,#524,#525),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-1.1954143478557,-0.986366253453421),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.99454233337023,1.)) +REPRESENTATION_ITEM('') +); +#835=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#608,#609,#610,#611,#612),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(0.,15.1532758150511,30.3065516301022), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#836=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#615,#616,#617,#618,#619),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(0.,15.1532758150511,30.3065516301022), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#837=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#622,#623,#624,#625,#626),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-30.306551630099,-15.1532758150495,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#838=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#629,#630,#631,#632,#633),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,2,3),(-30.306551630099,-15.1532758150495,0.), +.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.707106781186548,1.,0.707106781186548,1.)) +REPRESENTATION_ITEM('') +); +#839=( +BOUNDED_CURVE() +B_SPLINE_CURVE(2,(#638,#639,#640),.UNSPECIFIED.,.F.,.F.) +B_SPLINE_CURVE_WITH_KNOTS((3,3),(-1.1954143478557,-0.986366253453421),.UNSPECIFIED.) +CURVE() +GEOMETRIC_REPRESENTATION_ITEM() +RATIONAL_B_SPLINE_CURVE((1.,0.99454233337023,1.)) +REPRESENTATION_ITEM('') +); +ENDSEC; +END-ISO-10303-21; diff --git a/benchmarks/boolean/import.geo b/benchmarks/boolean/import.geo new file mode 100644 index 0000000000000000000000000000000000000000..67c292280df926d6fdeb848960eb03e50d27856d --- /dev/null +++ b/benchmarks/boolean/import.geo @@ -0,0 +1,21 @@ +SetFactory("OpenCASCADE"); + +Mesh.CharacteristicLengthMin = 3; +Mesh.CharacteristicLengthMax = 3; + +DefineConstant[ + z = {16, Name "Parameters/z position of block"} + sph = {0, Choices{0,1}, Name "Parameters/Add sphere?"} +]; + +a() = ShapeFromFile("component8.step"); + +Block(2) = {0,156,z, 10,170,z+10}; +b() = 2; + +If(sph) + Sphere(3) = {0,150,0, 20}; + b() += 3; +EndIf + +BooleanFragments{ Volume{a(0)}; Delete; }{ Volume{b()}; Delete; } diff --git a/contrib/bamg/bamg-gmsh.cpp b/contrib/bamg/bamg-gmsh.cpp index 4fedb9ab8cda266d7ef113b15538d5b6ad5f8af1..5c0acf44270331927d9baed09a8b1d370fedcf71 100644 --- a/contrib/bamg/bamg-gmsh.cpp +++ b/contrib/bamg/bamg-gmsh.cpp @@ -1,26 +1,26 @@ // -*- Mode : c++ -*- // -// SUMMARY : -// USAGE : -// ORG : +// SUMMARY : +// USAGE : +// ORG : // AUTHOR : Frederic Hecht // E-MAIL : hecht@ann.jussieu.fr // /* - + This file is part of Freefem++ - + Freefem++ is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. - + Freefem++ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - + You should have received a copy of the GNU Lesser General Public License along with Freefem++; if not, write to the Free Software @@ -42,7 +42,7 @@ void ExecError(const char *s) { cout << s << endl;exit(1);} Mesh2 *bamg2msh( bamg::Triangles* tTh,bool renumbering) -{ +{ using bamg::Triangles; using bamg::Triangle; using bamg::Vertex; @@ -52,49 +52,49 @@ Mesh2 *bamg2msh( bamg::Triangles* tTh,bool renumbering) using bamg::VerticesOfTriangularEdge; bamg::Triangles & th (*tTh); - tTh->ReNumberingTheTriangleBySubDomain(!renumbering);// just compress + tTh->ReNumberingTheTriangleBySubDomain(!renumbering);// just compress //tTh->NbRef++; Int4 i,j,k=0; int nv = tTh->nbv; int nt = tTh->nbt - tTh->NbOutT; int neb = tTh->nbe; - + int nbcrakev = 0; tTh->ReMakeTriangleContainingTheVertex(); Triangle2 * t = new Triangle2[nt] ; Seg * b_e = new Seg[neb]; - - Vertex2 vbase; + + Vertex2 vbase; Vertex2 *vb(&vbase); if (verbosity>5) cout << " -- Before cracking mesh: Nb Triangles = " << nt << " Nb of Vertices " << nv << endl; - for (int iv=0;iv<th.nbv;iv++) // vertex + for (int iv=0;iv<th.nbv;iv++) // vertex { // cout << iv << " : " ; - const Vertex & v(th[iv]); + const Vertex & v(th[iv]); int kk=0; // nb cracked - int kc=0; - int kkk =0; // nb triangle with same number + int kc=0; + int kkk =0; // nb triangle with same number Triangle * tbegin = v.t; Vertex2 * vv = vb+iv; - int i = v.vint; + int i = v.vint; assert(tbegin && (i >= 0 ) && (i <3)); // turn around the vertex v TriangleAdjacent ta(tbegin,EdgesVertexTriangle[i][0]);// previous edge int k=0; do { int kv = VerticesOfTriangularEdge[ta][1]; - k++; + k++; Triangle * tt (ta); - assert( &v == & (* tt)[kv] ); - if ( ta.Cracked() ) - { // cout << " || " ; - if ( kk == 0) tbegin=ta,kkk=0; // begin by a cracked edge => restart - if ( kkk ) { kc =1;vv = vb + nv++; kkk = 0; } // new vertex if use + assert( &v == & (* tt)[kv] ); + if ( ta.Cracked() ) + { // cout << " || " ; + if ( kk == 0) tbegin=ta,kkk=0; // begin by a cracked edge => restart + if ( kkk ) { kc =1;vv = vb + nv++; kkk = 0; } // new vertex if use kk++; - // number of cracked edge view + // number of cracked edge view } - if ( tt->link ) { // if good triangles store the value + if ( tt->link ) { // if good triangles store the value int it = th.Number(tt); assert(it < nt); //int iiv=vv-vb; @@ -105,52 +105,52 @@ Mesh2 *bamg2msh( bamg::Triangles* tTh,bool renumbering) cout << it << " " << kv << " "<< iiv << " != " << th.Number(th(it)[kv]) << endl ; */ kkk++; - } else if (kk) { // crack + boundary - if ( kkk ) { kc =1;vv = vb + nv++; kkk = 0; } // new vertex if use + } else if (kk) { // crack + boundary + if ( kkk ) { kc =1;vv = vb + nv++; kkk = 0; } // new vertex if use } - - ta = Next(ta).Adj(); - } while ( (tbegin != ta)); + + ta = Next(ta).Adj(); + } while ( (tbegin != ta)); assert(k); if (kc) nbcrakev++; } Vertex2 * v = new Vertex2[nv]; // set the vertices -- for (i=0;i<nt;i++) - { + { for (j=0;j<3;j++) { - assert( t[i](j) ); + assert( t[i](j) ); int k = t[i](j) - vb; t[i](j) = v+ k; assert(k>=0 && k < nv); Vertex & thv(th(i)[j]); v[k].x = thv.r.x; v[k].y = thv.r.y; - v[k].lab = thv.ref(); - } + v[k].lab = thv.ref(); + } } - // warning in cracked edges + // warning in cracked edges // construction of the edges -- - + if (nbcrakev && verbosity>2) cout << " -- Nb of craked vertices = " << nbcrakev << " Nb of created vertices " << nv - th.nbv << endl; - - + + for (i=0;i<tTh->nbe;i++) { - int ii[]={tTh->Number(tTh->edges[i][0]),tTh->Number(tTh->edges[i][1])}; + int ii[]={(int)tTh->Number(tTh->edges[i][0]),(int)tTh->Number(tTh->edges[i][1])}; assert(ii[0]>=0 && ii[0] <nv); - assert(ii[1]>=0 && ii[1] <nv); + assert(ii[1]>=0 && ii[1] <nv); b_e[i].init(v,ii,tTh->edges[i].ref); - } + } Int4 *reft = new Int4[tTh->nbt]; //Int4 nbref = tTh->ConsRefTriangle(reft); for( i=0,k=0;i<tTh->nbt;i++) if(tTh->triangles[i].link) - { - + { + R2 A(t[k][0]),B(t[k][1]),C(t[k][2]); t[k].area = (( B-A)^(C-A))*0.5 ; t[k].lab = tTh->subdomains[reft[i]].ref; // a faire @@ -160,11 +160,11 @@ Mesh2 *bamg2msh( bamg::Triangles* tTh,bool renumbering) delete [] reft; assert ( nt == k); tTh->ReMakeTriangleContainingTheVertex(); - + if (verbosity) cout << " -- mesh: Nb of Triangles = " << setw(6) << nt << ", Nb of Vertices " << nv << endl; - - { + + { Mesh2 *m = new Mesh2(nv,nt,neb,v,t,b_e); // if (renumbering) m->renum(); //< m->MakeQuadTree(); @@ -189,7 +189,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian,long * reqedgesl // Tn->vertices = new Vertex [Tn->nbvx]; // Tn->ordre = new (Vertex* [Tn->nbvx]); Tn->edges = new Edge [Th.nbe]; - + Int4 i; Metric Mid(1.); for (i = 0; i < Th.nv; i++) @@ -199,7 +199,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian,long * reqedgesl Tn->vertices[i].m=Mid; Tn->vertices[i].ReferenceNumber = Th(i).lab; } - + // Int4 i1 [nbt],i2 [nbt],i3 [nbt]; for (i = 0; i < Th.nt; i++) { @@ -209,7 +209,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian,long * reqedgesl Tn->triangles[i]= Triangle( Tn,i1 ,i2 ,i3 ); Tn->triangles[i].color = Th[i].lab; } - // Real8 cutoffradian = -1; + // Real8 cutoffradian = -1; // add code un change boundary part ... frev 2009 JYU FH set<int> labreq; if(nreqedgeslab && verbosity) cout << " label of required edges " ; @@ -221,32 +221,32 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian,long * reqedgesl } bamg::GeometricalEdge paszero; // add JYU fevr 2009 for required edge .... if(nreqedgeslab && verbosity) cout << endl; - int k=0; + int k=0; for (i = 0; i < Th.nbe; i++) { Tn->edges[i].v[0] = Tn->vertices + Th(Th.be(i)[0]); Tn->edges[i].v[1] = Tn->vertices + Th(Th.be(i)[1]); Tn->edges[i].ref = Th.be(i).lab; - Tn->edges[i].on = 0; + Tn->edges[i].on = 0; if( labreq.find( Tn->edges[i].ref) != labreq.end()) { - k++; - Tn->edges[i].on = &paszero; + k++; + Tn->edges[i].on = &paszero; } - + } if(verbosity)cout << " number of required edges : "<< k << endl; - - - Tn->ConsGeometry(cutoffradian); - Tn->Gh.AfterRead(); + + + Tn->ConsGeometry(cutoffradian); + Tn->Gh.AfterRead(); Tn->SetIntCoor(); Tn->FillHoleInMesh(); return Tn; } -bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, +bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, int nbdfv, int * ndfv,int nbdfe, int * ndfe, long * reqedgeslab,int nreqedgeslab) { @@ -264,7 +264,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, int df=ndfe[i]; kk[df]++; if(kk[df]==1) kn[df]=i; - else { + else { int k=kn[df],sens=0; int di0=ndfv[Th(Th.be(i)[0])]; int di1=ndfv[Th(Th.be(i)[1])]; @@ -277,12 +277,12 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, ExecError("bug periodic mesh in ??? "); } equiedges[i]=2*k+sens; - + } } - - }; // a faire pour les maillages periodique - + + }; // a faire pour les maillages periodique + Tn->nbv = Th.nv; Tn->nbt = Th.nt; Tn->nbe = Th.nbe; @@ -293,9 +293,9 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, // Tn->vertices = new Vertex [Tn->nbvx]; // Tn->ordre = new (Vertex* [Tn->nbvx]); Tn->edges = new Edge [Th.nbe]; - + Int4 i; - Metric Mid(1.); + Metric Mid(1.); for (i = 0; i < Th.nv; i++) { Tn->vertices[i].r.x = Th(i).x; @@ -303,7 +303,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, Tn->vertices[i].ReferenceNumber = Th(i).lab; Tn->vertices[i].m=Mid; } - + // Int4 i1 [nbt],i2 [nbt],i3 [nbt]; for (i = 0; i < Th.nt; i++) { @@ -313,7 +313,7 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, Tn->triangles[i]= Triangle( Tn,i1 ,i2 ,i3 ); Tn->triangles[i].color = Th[i].lab; } - + // add code un change boundary part ... frev 2009 JYU FH set<int> labreq; if(nreqedgeslab && verbosity) cout << " label of required edges " ; @@ -325,23 +325,23 @@ bamg::Triangles * msh2bamg(const Mesh2 & Th,double cutoffradian, } bamg::GeometricalEdge paszero; // add JYU fevr 2009 for required edge .... if(nreqedgeslab && verbosity) cout << endl; - int k=0; - + int k=0; + for (i = 0; i < Th.nbe; i++) { Tn->edges[i].v[0] = Tn->vertices + Th(Th.be(i)[0]); Tn->edges[i].v[1] = Tn->vertices + Th(Th.be(i)[1]); Tn->edges[i].ref = Th.be(i).lab; - Tn->edges[i].on = 0; + Tn->edges[i].on = 0; if( labreq.find( Tn->edges[i].ref) != labreq.end()) { - k++; - Tn->edges[i].on = &paszero; + k++; + Tn->edges[i].on = &paszero; } } // Real8 cutoffradian = -1; Tn->ConsGeometry(cutoffradian,equiedges); - Tn->Gh.AfterRead(); + Tn->Gh.AfterRead(); Tn->SetIntCoor(); Tn->FillHoleInMesh(); return Tn; @@ -366,11 +366,11 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo long nbsmooth = arg(5,args,3L); long nbjacobi = arg(6,args,0L) ; // if increased will be more smooth const Real8 raison = arg(7,args,1.8); // 1.8 - const Real8 omega = arg(8,args,1.0) ; + const Real8 omega = arg(8,args,1.0) ; bool iso = arg(9,args,false); bool AbsError = arg(10,args,true); Real8 CutOff = arg(11,args, 1.0e-6); - verbosity = arg(12,args, (long) verbosity); + verbosity = arg(12,args, (long) verbosity); bool inq = arg(13,args,false); bool SplitEdgeWith2Boundary = arg(14,args,true); double maxsubdiv = Max(Min( arg(15,args,10.0),10.0),0.1); @@ -388,11 +388,11 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo // the 24th param is metrix and is store at compilation time // const E_Array * expmetrix = dynamic_cast<const E_Array *>(nargs[24]); // the 25th param is periodic and it store at compilation time - // in nbcperiodic,periodic variable + // in nbcperiodic,periodic variable // KN<long> reqedges0; - // list of label of required edges , for no adapattion on this part of the boundary. - // KN<long> reqedges ( nargs[26] ? GetAny< KN_<long> >( (*nargs[26])(stack) ): (KN_<long>)reqedges0); - + // list of label of required edges , for no adapattion on this part of the boundary. + // KN<long> reqedges ( nargs[26] ? GetAny< KN_<long> >( (*nargs[26])(stack) ): (KN_<long>)reqedges0); + KN<long> reqedges(Thh->nbe); for (int i=0;i<Thh->nbe;i++)reqedges[i]=Thh->be(i).lab; @@ -409,7 +409,7 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo if (nbcperiodic) { KN<int> ndfv(Thh->nv); KN<int> ndfe(Thh->nbe); - int nbdfv=0,nbdfe=0; + int nbdfv=0,nbdfe=0; BuildPeriodic(nbcperiodic,periodic,*Thh,stack,nbdfv,ndfv,nbdfe,ndfe); oTh = msh2bamg(*Thh,cutoffradian,nbdfv,ndfv,nbdfe,ndfe,reqedges,reqedges.N()); } @@ -419,27 +419,27 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo Triangles &Th(*oTh); // printf("COUCOUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU\n"); - //Th.Write("toto.mesh",bamg::Triangles::AutoMesh); + //Th.Write("toto.mesh",bamg::Triangles::AutoMesh); bool mtx=true; KN_<double> m11(mm11,Thh->nv); KN_<double> m12(mm12,Thh->nv); KN_<double> m22(mm22,Thh->nv); - - Real8 hmax = 0.3*Th.MaximalHmax(); // final largest edge + + Real8 hmax = 0.3*Th.MaximalHmax(); // final largest edge Real8 hmin = Th.MinimalHmin(); // final smallest edge - + Real8 coef =1; // a priori don't touch - // gestion des arguments + // gestion des arguments hmin = Max(hmin, arg(0,args,hmin)); hmax = Min(hmax,arg(1,args,hmax)); - + if (iso) anisomax=1; - if (verbosity>2) + if (verbosity>2) { - cout << endl << endl; + cout << endl << endl; cout << " \t\t ## adapt : nbsx = " << nbsx << ", err = " << err ; cout << ", hmin = " << hmin << ", hmax = " << hmax <<endl; cout << " \t\t ratio = " << raison << ", nbsmooth = " << nbsmooth ; @@ -448,63 +448,63 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo cout << " \t\t maxsubdiv = " << maxsubdiv << " splitpbedge = " << SplitEdgeWith2Boundary <<endl; cout << " \t\t anisomax = " << anisomax << ", rescaling = " << rescaling << ", power = " << powerM << ", KeepBackvertices = " << KeepBackVertices << " IsMetric = " << givenmetric - << endl << endl ; + << endl << endl ; } - - // + + // Th.ReMakeTriangleContainingTheVertex(); /* //MeshPoint* mp(MeshPointStack(stack)); - - Int4 i,iv; + + Int4 i,iv; int ksol =0; for (i=0;i<nbsol;i++) - ksol += typesol[i]+1; // marche en 2d - + ksol += typesol[i]+1; // marche en 2d + double * lessol = new double [Th.nbv*ksol]; double *ss = lessol; // be careful because renum -- - // the triangle was no renum - for ( iv=0;iv<Th.nbv;iv++) - Th[iv].color=1; // color + // the triangle was no renum + for ( iv=0;iv<Th.nbv;iv++) + Th[iv].color=1; // color for (Int4 it = 0; it < Thh->nt; it++) for (Int4 jt = 0; jt < 3; jt++) - { + { bamg::Vertex & v= Th(it)[jt]; // const Vertex & vf = (*Thh)[it][jt]; if (&v && v.color) { v.color =0; // uncolor mp->setP(Thh ,it,jt); - + ss = lessol + ksol* Th.Number(v); for (int j =0; j < ksol; j++) *ss++= GetAny<double>( (*sol[j])(stack) ); - + } } mp->unset(); */ - // computation of the metric --- - // better thing -> create keyword in the language + // computation of the metric --- + // better thing -> create keyword in the language // a faire F Hecht . Metric Mhmax(hmax); - for (int iv=0;iv<Th.nbv;iv++) + for (int iv=0;iv<Th.nbv;iv++) Th[iv].m = Mhmax; - - if (mtx) + + if (mtx) for (int iv=0;iv<Th.nbv;iv++) { - // if ( Max(m11[iv],m12[iv],m22[iv]) > hmax) + // if ( Max(m11[iv],m12[iv],m22[iv]) > hmax) Th[iv].m.IntersectWith(MetricAnIso(m11[iv],m12[iv],m22[iv])); } - /* + /* if ( givenmetric) - if (ksol == 1) + if (ksol == 1) { for (Int4 iv = 0,k=0; iv < Th.nbv ; iv++) Th[iv].m.IntersectWith(Metric(lessol[k++])); } - else if (ksol == 3) + else if (ksol == 3) { for (Int4 iv = 0,k=0; iv < Th.nbv ; iv++, k += 3) { @@ -518,7 +518,7 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo lgerror("Adapt mesh: ksol is wrong, IsMetric and ksol != 1 or 3"); else Th.IntersectConsMetric(lessol,nbsol,typesol,hmin,hmax,sqrt(err)*coef,anisomax,AbsError?0.0:CutOff,nbjacobi,rescaling,powerM,0); - + delete [] lessol; */ //Th.IntersectGeomMetric(errg,iso); @@ -526,57 +526,55 @@ Mesh2 *Bamg(Mesh2 *Thh, double * args,double *mm11,double *mm12,double *mm22, bo Th.SmoothMetric(raison); Th.MaxSubDivision(maxsubdiv); Th.BoundAnisotropy(anisomax); - // end of metric's computation - if (mtx) - for (int iv=0;iv<Th.nbv;iv++) + // end of metric's computation + if (mtx) + for (int iv=0;iv<Th.nbv;iv++) { m11[iv] = Th[iv].m.a11 ; - m22[iv] = Th[iv].m.a22 ; + m22[iv] = Th[iv].m.a22 ; m12[iv] = Th[iv].m.a21; } - + Triangles* nTh = 0; - + // Th.Write("toto.msh",bamg::Triangles::AutoMesh); if (initialMesh){ - nTh= new Triangles(nbsx,Th.Gh); + nTh= new Triangles(nbsx,Th.Gh); } else { nTh= new Triangles(nbsx,Th,KeepBackVertices); // Adaption is here } - //nTh->Write("tata.mesh",bamg::Triangles::AutoMesh); + //nTh->Write("tata.mesh",bamg::Triangles::AutoMesh); if (split) nTh->SplitElement(1); // modif FH mai 2009 (thank J-M Mirebeau) : Th ->nTh - + if(SplitEdgeWith2Boundary) nTh->SplitInternalEdgeWithBorderVertices(); - if(verbosity>3) + if(verbosity>3) nTh->ShowHistogram(); if (nbsmooth) nTh->SmoothingVertex(nbsmooth,omega); - if(verbosity>2 && nbsmooth) + if(verbosity>2 && nbsmooth) nTh->ShowHistogram(); - if(verbosity>0) + if(verbosity>0) nTh->ShowRegulaty() ; - + inq=0; Metric M(hmax); for (int iv=0;iv < Th.nbv;iv++) Th[iv].m = M; - //nTh->Write("bamg.mesh",bamg::Triangles::AutoMesh); + //nTh->Write("bamg.mesh",bamg::Triangles::AutoMesh); Mesh2 * g= bamg2msh(nTh,true); delete nTh; delete oTh; // Add2StackOfPtr2FreeRC(stack,g);// 07/2008 FH - - return g; -} + return g; - +}