diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2017-03-11 21:17:59 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2017-03-11 21:17:59 (GMT) |
commit | eef1b4e01cc3c5307188e1497e6b095081eef378 (patch) | |
tree | b27c812b352c9024fe4a5b9dbab6f6102a581156 /tksao/frame | |
parent | f7a9669c931c4da48dbc39d3f90b17ea2314ab9c (diff) | |
download | blt-eef1b4e01cc3c5307188e1497e6b095081eef378.zip blt-eef1b4e01cc3c5307188e1497e6b095081eef378.tar.gz blt-eef1b4e01cc3c5307188e1497e6b095081eef378.tar.bz2 |
add region fill
Diffstat (limited to 'tksao/frame')
44 files changed, 9871 insertions, 9429 deletions
diff --git a/tksao/frame/base.h b/tksao/frame/base.h index 9a5261a..76aa468 100644 --- a/tksao/frame/base.h +++ b/tksao/frame/base.h @@ -1043,28 +1043,28 @@ public: // Marker Commands // Basic Regions void createCircleCmd(const Vector&, - double, + double, int, const char*, int*, int, const char*, const char*, unsigned short, const char*, const List<Tag>&, const List<CallBack>& cb); void createEllipseCmd(const Vector&, const Vector&, - double, + double, int, const char*, int*, int, const char*, const char*, unsigned short, const char*, const List<Tag>&, const List<CallBack>& cb); void createBoxCmd(const Vector&, const Vector&, - double, + double, int, const char*, int*, int, const char*, const char*, unsigned short, const char*, const List<Tag>&, const List<CallBack>& cb); void createPolygonCmd(const Vector&, - const Vector&, + const Vector&, int, const char*, int*, int, const char*, const char*, unsigned short, const char*, const List<Tag>&, const List<CallBack>& cb); - void createPolygonCmd(const List<Vertex>&, + void createPolygonCmd(const List<Vertex>&, int, const char*, int*, int, const char*, const char*, unsigned short, const char*, const List<Tag>&, const List<CallBack>& cb); @@ -1248,6 +1248,7 @@ public: void getMarkerAngleCmd(int); void getMarkerAngleCmd(int, Coord::CoordSystem, Coord::SkyFrame); void getMarkerAnnulusRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); + void getMarkerBoxFillCmd(int); void getMarkerBoxAnnulusRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); void getMarkerBoxRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); void getMarkerBpandaAnglesCmd(int); @@ -1258,6 +1259,7 @@ public: void getMarkerCentroidRadiusCmd(); void getMarkerCentroidIterationCmd(); void getMarkerCentroidOptionCmd(); + void getMarkerCircleFillCmd(int); void getMarkerCircleRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); void getMarkerColorCmd(); void getMarkerColorCmd(const char*); @@ -1270,6 +1272,7 @@ public: void getMarkerCpandaAnglesCmd(int); void getMarkerCpandaAnglesCmd(int, Coord::CoordSystem, Coord::SkyFrame); void getMarkerCpandaRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); + void getMarkerEllipseFillCmd(int); void getMarkerEllipseRadiusCmd(int, Coord::CoordSystem, Coord::SkyDist); void getMarkerEllipseAnnulusRadiusCmd(int, Coord::CoordSystem,Coord::SkyDist); void getMarkerEpandaAnglesCmd(int); @@ -1291,6 +1294,7 @@ public: void getMarkerNumberCmd(); void getMarkerPointShapeCmd(int); void getMarkerPointSizeCmd(int); + void getMarkerPolygonFillCmd(int); void getMarkerPolygonSegmentCmd(const Vector&); void getMarkerPreserveCmd(); void getMarkerProjectionPointsCmd(int, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); @@ -1348,6 +1352,7 @@ public: void markerBackCmd(); void markerBackCmd(const char*); void markerBackCmd(int); + void markerBoxFillCmd(int, int); void markerBoxAnnulusRadiusCmd(int, const Vector&, const Vector&, int, Coord::InternalSystem); void markerBoxAnnulusRadiusCmd(int, const Vector&, const Vector&, int, @@ -1376,6 +1381,7 @@ public: void markerCentroidAutoCmd(int); void markerCentroidRadiusCmd(float); void markerCentroidIterationCmd(int); + void markerCircleFillCmd(int, int); void markerCircleRadiusCmd(int, double, Coord::InternalSystem); void markerCircleRadiusCmd(int, double, Coord::CoordSystem, Coord::SkyDist); void markerColorCmd(const char*); @@ -1417,6 +1423,7 @@ public: void markerEditBeginCmd(const Vector&, int); void markerEditMotionCmd(const Vector&, int); void markerEditEndCmd(); + void markerEllipseFillCmd(int, int); void markerEllipseRadiusCmd(int, const Vector&, Coord::InternalSystem); void markerEllipseRadiusCmd(int, const Vector&, Coord::CoordSystem, Coord::SkyDist); void markerEllipseAnnulusRadiusCmd(int, const Vector&, const Vector&, int, @@ -1492,6 +1499,7 @@ public: void markerPasteCmd(Coord::CoordSystem); void markerPointShapeCmd(int, Point::PointShape); void markerPointSizeCmd(int, int); + void markerPolygonFillCmd(int, int); void markerPolygonCreateVertexCmd(int, int, const Vector&); void markerPolygonDeleteVertexCmd(int, int); void markerPolygonResetCmd(int, const Vector&, Coord::InternalSystem); diff --git a/tksao/frame/baseellipse.C b/tksao/frame/baseellipse.C index 290bf38..6b9a2a5 100644 --- a/tksao/frame/baseellipse.C +++ b/tksao/frame/baseellipse.C @@ -78,12 +78,18 @@ void BaseEllipse::renderXCircle(Drawable drawable, Coord::InternalSystem sys, if (a2<=a1) a2 += 360*64; - XDrawArc(display, drawable, lgc, st[0], st[1], size[0], size[1], - a1, (a2-a1)); + renderXCircleDraw(drawable, lgc, st, size, a1, (a2-a1)); } } -void BaseEllipse::renderXEllipseCurve(Drawable drawable, Coord::InternalSystem sys, +void BaseEllipse::renderXCircleDraw(Drawable drawable, GC lgc, Vector& st, + Vector& size, int a1, int aa) +{ + XDrawArc(display, drawable, lgc, st[0], st[1], size[0], size[1], a1, aa); +} + +void BaseEllipse::renderXEllipseCurve(Drawable drawable, + Coord::InternalSystem sys, RenderMode mode) { double a1 = startAng_; @@ -226,6 +232,12 @@ void BaseEllipse::renderPSCircle(int mode) if (a2<=a1) a2 += 360; + renderPSCircleDraw(cc, l, a1, a2); + } +} + +void BaseEllipse::renderPSCircleDraw(Vector& cc, double l, float a1, float a2) +{ ostringstream str; str << "newpath " << cc.TkCanvasPs(parent->canvas) << ' ' @@ -234,7 +246,6 @@ void BaseEllipse::renderPSCircle(int mode) << "arc stroke" << endl << ends; Tcl_AppendResult(parent->interp, str.str().c_str(), NULL); - } } void BaseEllipse::renderPSEllipseCurve(int mode) diff --git a/tksao/frame/baseellipse.h b/tksao/frame/baseellipse.h index 85f0040..30a59d3 100644 --- a/tksao/frame/baseellipse.h +++ b/tksao/frame/baseellipse.h @@ -44,7 +44,10 @@ class BaseEllipse : public BaseMarker { protected: void renderX(Drawable, Coord::InternalSystem, RenderMode); + virtual void renderXCircleDraw(Drawable, GC, Vector&, Vector&, int, int); void renderPS(int); + virtual void renderPSCircleDraw(Vector& cc, double l, float a1, float a2); + #ifdef MAC_OSX_TK void renderMACOSX(); #endif diff --git a/tksao/frame/basefill.C b/tksao/frame/basefill.C new file mode 100644 index 0000000..458ea12 --- /dev/null +++ b/tksao/frame/basefill.C @@ -0,0 +1,22 @@ +// Copyright (C) 1999-2016 +// Smithsonian Astrophysical Observatory, Cambridge, MA, USA +// For conditions of distribution and use, see copyright notice in "copyright" + +#include <tk.h> + +#include "basefill.h" + +BaseFill::BaseFill(const BaseFill& a) +{ + fill_ = a.fill_; +} + +BaseFill::BaseFill() +{ + fill_ =0; +} + +BaseFill::BaseFill(int ff) +{ + fill_ =ff; +} diff --git a/tksao/frame/basefill.h b/tksao/frame/basefill.h new file mode 100644 index 0000000..4b586c1 --- /dev/null +++ b/tksao/frame/basefill.h @@ -0,0 +1,21 @@ +// Copyright (C) 1999-2016 +// Smithsonian Astrophysical Observatory, Cambridge, MA, USA +// For conditions of distribution and use, see copyright notice in "copyright" + +#ifndef __basefill_h__ +#define __basefill_h__ + +class BaseFill { + protected: + int fill_; + + public: + BaseFill(); + BaseFill(int); + BaseFill(const BaseFill& a); + + void fill(int ff) {fill_ = ff;} + int getFill() {return fill_;} +}; + +#endif diff --git a/tksao/frame/basepolygon.C b/tksao/frame/basepolygon.C index a9901c7..dbf6cb3 100644 --- a/tksao/frame/basepolygon.C +++ b/tksao/frame/basepolygon.C @@ -290,25 +290,3 @@ void BasePolygon::listBaseNonCel(FitsImage* ptr, ostream& str, Matrix& mm, str << ')'; } -void BasePolygon::listXML(ostream& str, Coord::CoordSystem sys, - Coord::SkyFrame sky, Coord::SkyFormat format) -{ - FitsImage* ptr = parent->findFits(sys,center); - Matrix mm = fwdMatrix(); - Vector* vv = new Vector[vertex.count()]; - - XMLRowInit(); - XMLRow(XMLSHAPE,type_); - - vertex.head(); - int cnt =0; - do - vv[cnt++] =vertex.current()->vector*mm; - while (vertex.next()); - XMLRowPoint(ptr,sys,sky,format,vv,vertex.count()); - delete [] vv; - - XMLRowProps(ptr,sys); - XMLRowEnd(str); -} - diff --git a/tksao/frame/basepolygon.h b/tksao/frame/basepolygon.h index c7a90f8..9712138 100644 --- a/tksao/frame/basepolygon.h +++ b/tksao/frame/basepolygon.h @@ -52,8 +52,6 @@ public: virtual void reset(const Vector&) =0; void rotate(const Vector&, int); void updateCoords(const Matrix&); - - void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); }; #endif diff --git a/tksao/frame/box.C b/tksao/frame/box.C index 4a97e48..e6362b7 100644 --- a/tksao/frame/box.C +++ b/tksao/frame/box.C @@ -7,8 +7,10 @@ #include "box.h" #include "fitsimage.h" -Box::Box(Base* p, const Vector& ctr, const Vector& seg, double ang) - : BaseBox(p, ctr, ang) +Box::Box(const Box& a) : BaseBox(a), BaseFill(a) {} + +Box::Box(Base* p, const Vector& ctr, const Vector& seg, double ang, int fill) + : BaseBox(p, ctr, ang), BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[1]; @@ -22,12 +24,13 @@ Box::Box(Base* p, const Vector& ctr, const Vector& seg, double ang) Box::Box(Base* p, const Vector& ctr, const Vector& seg, - double ang, + double ang, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb) - : BaseBox(p, ctr, ang, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb) + : BaseBox(p, ctr, ang, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb), + BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[1]; @@ -39,8 +42,6 @@ Box::Box(Base* p, const Vector& ctr, updateBBox(); } -Box::Box(const Box& a) : BaseBox(a) {} - void Box::editBegin(int h) { switch (h) { @@ -256,6 +257,26 @@ void Box::list(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, listPost(str, conj, strip); } +void Box::listPost(ostream& str, int conj, int strip) +{ + // no props for semicolons + if (!strip) { + if (conj) + str << " ||"; + + if (fill_) + str << " # fill=" << fill_; + + listProperties(str, !fill_); + } + else { + if (conj) + str << "||"; + else + str << ';'; + } +} + void Box::listNonCel(FitsImage* ptr, ostream& str, Coord::CoordSystem sys) { Vector vv = ptr->mapFromRef(center,sys); @@ -276,6 +297,8 @@ void Box::listXML(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, XMLRowCenter(ptr,sys,sky,format); XMLRowRadius(ptr,sys,annuli_[0]); XMLRowAng(sys,sky); + if (fill_) + XMLRow(XMLPARAM,fill_); XMLRowProps(ptr,sys); XMLRowEnd(str); diff --git a/tksao/frame/box.h b/tksao/frame/box.h index d7cd40e..1c9423f 100644 --- a/tksao/frame/box.h +++ b/tksao/frame/box.h @@ -6,16 +6,17 @@ #define __box_h__ #include "basebox.h" +#include "basefill.h" -class Box : public BaseBox { +class Box : public BaseBox, public BaseFill { protected: void listNonCel(FitsImage*, ostream&, Coord::CoordSystem); public: - Box(Base* p, const Vector& ctr, const Vector& seg, double ang); + Box(Base* p, const Vector& ctr, const Vector& seg, double ang, int fill); Box(Base* p, const Vector& ctr, const Vector& seg, - double ang, + double ang, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, @@ -33,6 +34,7 @@ public: void analysisStats(Coord::CoordSystem, Coord::SkyFrame sky); void list(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int, int); + virtual void listPost(ostream&, int, int); void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); virtual void listCiao(ostream&, Coord::CoordSystem, int); virtual void listSAOtng(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int); diff --git a/tksao/frame/ciaoparser.C b/tksao/frame/ciaoparser.C index 9004b49..0e04315 100644 --- a/tksao/frame/ciaoparser.C +++ b/tksao/frame/ciaoparser.C @@ -155,6 +155,7 @@ extern void ciaoerror(Base*, ciaoFlexLexer*, const char*); static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; static unsigned short props; @@ -186,7 +187,7 @@ static void setProps(unsigned short* props, unsigned short prop, int value); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 43 "frame/ciaoparser.Y" +#line 44 "frame/ciaoparser.Y" { #define CIAOBUFSIZE 2048 double real; @@ -195,7 +196,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 199 "frame/ciaoparser.C" +#line 200 "frame/ciaoparser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -208,7 +209,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 212 "frame/ciaoparser.C" +#line 213 "frame/ciaoparser.C" #ifdef short # undef short @@ -517,13 +518,13 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 93, 93, 94, 97, 98, 99, 100, 103, 104, - 105, 108, 109, 110, 111, 112, 113, 114, 115, 118, - 119, 122, 123, 126, 129, 132, 135, 146, 149, 150, - 151, 152, 155, 162, 169, 176, 185, 188, 191, 194, - 201, 208, 215, 224, 229, 234, 235, 240, 245, 246, - 251, 256, 256, 261, 268, 269, 270, 273, 280, 281, - 284 + 0, 94, 94, 95, 98, 99, 100, 101, 104, 105, + 106, 109, 110, 111, 112, 113, 114, 115, 116, 119, + 120, 123, 124, 127, 130, 133, 136, 147, 150, 151, + 152, 153, 156, 163, 170, 177, 186, 189, 192, 195, + 202, 209, 216, 225, 230, 235, 236, 241, 246, 247, + 252, 257, 257, 262, 269, 270, 271, 274, 281, 282, + 285 }; #endif @@ -1526,52 +1527,52 @@ yyreduce: switch (yyn) { case 6: -#line 99 "frame/ciaoparser.Y" +#line 100 "frame/ciaoparser.Y" {cerr << "CIAO Regions File 1.0" << endl;;} break; case 10: -#line 105 "frame/ciaoparser.Y" +#line 106 "frame/ciaoparser.Y" {YYACCEPT;;} break; case 16: -#line 113 "frame/ciaoparser.Y" +#line 114 "frame/ciaoparser.Y" {setProps(&props, Marker::INCLUDE, 0);;} break; case 17: -#line 114 "frame/ciaoparser.Y" +#line 115 "frame/ciaoparser.Y" {setProps(&props, Marker::INCLUDE, 0);;} break; case 18: -#line 115 "frame/ciaoparser.Y" +#line 116 "frame/ciaoparser.Y" {setProps(&props, Marker::INCLUDE, 0);;} break; case 19: -#line 118 "frame/ciaoparser.Y" +#line 119 "frame/ciaoparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 20: -#line 119 "frame/ciaoparser.Y" +#line 120 "frame/ciaoparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 21: -#line 122 "frame/ciaoparser.Y" +#line 123 "frame/ciaoparser.Y" {yydebug=1;;} break; case 22: -#line 123 "frame/ciaoparser.Y" +#line 124 "frame/ciaoparser.Y" {yydebug=0;;} break; case 26: -#line 135 "frame/ciaoparser.Y" +#line 136 "frame/ciaoparser.Y" { // reset maperr flag maperr =0; @@ -1584,32 +1585,32 @@ yyreduce: break; case 27: -#line 146 "frame/ciaoparser.Y" +#line 147 "frame/ciaoparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 28: -#line 149 "frame/ciaoparser.Y" +#line 150 "frame/ciaoparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::PHYSICAL);;} break; case 29: -#line 150 "frame/ciaoparser.Y" +#line 151 "frame/ciaoparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::WCS, Coord::DEGREE);;} break; case 30: -#line 151 "frame/ciaoparser.Y" +#line 152 "frame/ciaoparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::WCS, Coord::ARCMIN);;} break; case 31: -#line 152 "frame/ciaoparser.Y" +#line 153 "frame/ciaoparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::WCS, Coord::ARCSEC);;} break; case 32: -#line 156 "frame/ciaoparser.Y" +#line 157 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::PHYSICAL); (yyval.vector)[0] = rr[0]; @@ -1619,7 +1620,7 @@ yyreduce: break; case 33: -#line 163 "frame/ciaoparser.Y" +#line 164 "frame/ciaoparser.Y" { Vector rr= FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::WCS,Coord::DEGREE); (yyval.vector)[0] = rr[0]; @@ -1629,7 +1630,7 @@ yyreduce: break; case 34: -#line 170 "frame/ciaoparser.Y" +#line 171 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::WCS, Coord::ARCMIN); (yyval.vector)[0] = rr[0]; @@ -1639,7 +1640,7 @@ yyreduce: break; case 35: -#line 177 "frame/ciaoparser.Y" +#line 178 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::WCS, Coord::ARCSEC); (yyval.vector)[0] = rr[0]; @@ -1649,22 +1650,22 @@ yyreduce: break; case 36: -#line 185 "frame/ciaoparser.Y" +#line 186 "frame/ciaoparser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 37: -#line 188 "frame/ciaoparser.Y" +#line 189 "frame/ciaoparser.Y" {(yyval.real) = parseHMSStr((yyvsp[(1) - (1)].str));;} break; case 38: -#line 191 "frame/ciaoparser.Y" +#line 192 "frame/ciaoparser.Y" {(yyval.real) = parseDMSStr((yyvsp[(1) - (1)].str));;} break; case 39: -#line 195 "frame/ciaoparser.Y" +#line 196 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::PHYSICAL); (yyval.vector)[0] = rr[0]; @@ -1674,7 +1675,7 @@ yyreduce: break; case 40: -#line 202 "frame/ciaoparser.Y" +#line 203 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real)*360./24.,(yyvsp[(3) - (3)].real)), Coord::WCS,Coord::FK5); (yyval.vector)[0] = rr[0]; @@ -1684,7 +1685,7 @@ yyreduce: break; case 41: -#line 209 "frame/ciaoparser.Y" +#line 210 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::WCS, Coord::FK5); (yyval.vector)[0] = rr[0]; @@ -1694,7 +1695,7 @@ yyreduce: break; case 42: -#line 216 "frame/ciaoparser.Y" +#line 217 "frame/ciaoparser.Y" { Vector rr = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::WCS, Coord::FK5); (yyval.vector)[0] = rr[0]; @@ -1704,7 +1705,7 @@ yyreduce: break; case 43: -#line 225 "frame/ciaoparser.Y" +#line 226 "frame/ciaoparser.Y" { fr->createAnnulusCmd(Vector((yyvsp[(3) - (7)].vector)), (yyvsp[(5) - (7)].real), (yyvsp[(7) - (7)].real), 1, color,dash,1,font,text,props,NULL,taglist,cblist); @@ -1712,36 +1713,36 @@ yyreduce: break; case 44: -#line 230 "frame/ciaoparser.Y" +#line 231 "frame/ciaoparser.Y" { - fr->createBoxCmd(Vector((yyvsp[(3) - (5)].vector)), (yyvsp[(5) - (5)].vector), 0, + fr->createBoxCmd(Vector((yyvsp[(3) - (5)].vector)), (yyvsp[(5) - (5)].vector), 0, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 46: -#line 236 "frame/ciaoparser.Y" +#line 237 "frame/ciaoparser.Y" { - fr->createCircleCmd(Vector((yyvsp[(3) - (5)].vector)), (yyvsp[(5) - (5)].real), + fr->createCircleCmd(Vector((yyvsp[(3) - (5)].vector)), (yyvsp[(5) - (5)].real), fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 47: -#line 241 "frame/ciaoparser.Y" +#line 242 "frame/ciaoparser.Y" { - fr->createEllipseCmd(Vector((yyvsp[(3) - (7)].vector)), Vector((yyvsp[(5) - (7)].vector)), (yyvsp[(7) - (7)].real), + fr->createEllipseCmd(Vector((yyvsp[(3) - (7)].vector)), Vector((yyvsp[(5) - (7)].vector)), (yyvsp[(7) - (7)].real), fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 48: -#line 245 "frame/ciaoparser.Y" +#line 246 "frame/ciaoparser.Y" {/* not supported */;} break; case 49: -#line 247 "frame/ciaoparser.Y" +#line 248 "frame/ciaoparser.Y" { fr->createCpandaCmd(Vector((yyvsp[(3) - (11)].vector)), (yyvsp[(9) - (11)].real), (yyvsp[(11) - (11)].real), 1, (yyvsp[(5) - (11)].real), (yyvsp[(7) - (11)].real), 1, color,dash,1,font,text,props,NULL,taglist,cblist); @@ -1749,7 +1750,7 @@ yyreduce: break; case 50: -#line 252 "frame/ciaoparser.Y" +#line 253 "frame/ciaoparser.Y" { fr->createPointCmd(Vector((yyvsp[(3) - (3)].vector)), Point::BOXCIRCLE, POINTSIZE, color,dash,1,font,text,props,NULL,taglist,cblist); @@ -1757,54 +1758,54 @@ yyreduce: break; case 51: -#line 256 "frame/ciaoparser.Y" +#line 257 "frame/ciaoparser.Y" {polylist.deleteAll();;} break; case 52: -#line 257 "frame/ciaoparser.Y" +#line 258 "frame/ciaoparser.Y" { - fr->createPolygonCmd(polylist, + fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 53: -#line 262 "frame/ciaoparser.Y" +#line 263 "frame/ciaoparser.Y" { Vector cc = (Vector((yyvsp[(5) - (5)].vector))-Vector((yyvsp[(3) - (5)].vector)))/2.+Vector((yyvsp[(3) - (5)].vector)); Vector wh = Vector((yyvsp[(5) - (5)].vector))-Vector((yyvsp[(3) - (5)].vector)); - fr->createBoxCmd(cc, wh, 0, + fr->createBoxCmd(cc, wh, 0, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 54: -#line 268 "frame/ciaoparser.Y" +#line 269 "frame/ciaoparser.Y" {/* not supported */;} break; case 56: -#line 270 "frame/ciaoparser.Y" +#line 271 "frame/ciaoparser.Y" {/* not supported */;} break; case 57: -#line 274 "frame/ciaoparser.Y" +#line 275 "frame/ciaoparser.Y" { - fr->createBoxCmd(Vector((yyvsp[(2) - (6)].vector)), Vector((yyvsp[(4) - (6)].vector)), (yyvsp[(6) - (6)].real), + fr->createBoxCmd(Vector((yyvsp[(2) - (6)].vector)), Vector((yyvsp[(4) - (6)].vector)), (yyvsp[(6) - (6)].real), fill_, color,dash,1,font,text,props,NULL,taglist,cblist); ;} break; case 60: -#line 284 "frame/ciaoparser.Y" +#line 285 "frame/ciaoparser.Y" {polylist.append(new Vertex((yyvsp[(1) - (1)].vector)));;} break; /* Line 1267 of yacc.c. */ -#line 1808 "frame/ciaoparser.C" +#line 1809 "frame/ciaoparser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2018,7 +2019,7 @@ yyreturn: } -#line 287 "frame/ciaoparser.Y" +#line 288 "frame/ciaoparser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/ciaoparser.H b/tksao/frame/ciaoparser.H index 600c925..43b98f3 100644 --- a/tksao/frame/ciaoparser.H +++ b/tksao/frame/ciaoparser.H @@ -98,7 +98,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 43 "frame/ciaoparser.Y" +#line 44 "frame/ciaoparser.Y" { #define CIAOBUFSIZE 2048 double real; diff --git a/tksao/frame/ciaoparser.Y b/tksao/frame/ciaoparser.Y index 7c17fdc..e59fc77 100644 --- a/tksao/frame/ciaoparser.Y +++ b/tksao/frame/ciaoparser.Y @@ -29,6 +29,7 @@ extern void ciaoerror(Base*, ciaoFlexLexer*, const char*); static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; static unsigned short props; @@ -228,18 +229,18 @@ shape : ANNULUS_ bp coord sp value sp value } | BOX_ bp coord sp vvalue { - fr->createBoxCmd(Vector($3), $5, 0, + fr->createBoxCmd(Vector($3), $5, 0, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } | BOX_ rotbox | CIRCLE_ bp coord sp value { - fr->createCircleCmd(Vector($3), $5, + fr->createCircleCmd(Vector($3), $5, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } - | ELLIPSE_ bp coord sp vvalue sp angle + | ELLIPSE_ bp coord sp vvalue sp angle { - fr->createEllipseCmd(Vector($3), Vector($5), $7, + fr->createEllipseCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } | FIELD_ bp {/* not supported */} @@ -255,14 +256,14 @@ shape : ANNULUS_ bp coord sp value sp value } | POLYGON_ {polylist.deleteAll();} bp polyNodes { - fr->createPolygonCmd(polylist, + fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } | RECTANGLE_ bp coord sp coord { Vector cc = (Vector($5)-Vector($3))/2.+Vector($3); Vector wh = Vector($5)-Vector($3); - fr->createBoxCmd(cc, wh, 0, + fr->createBoxCmd(cc, wh, 0, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } | REGION_ bp {/* not supported */} @@ -272,7 +273,7 @@ shape : ANNULUS_ bp coord sp value sp value rotbox : bp coord sp vvalue sp angle { - fr->createBoxCmd(Vector($2), Vector($4), $6, + fr->createBoxCmd(Vector($2), Vector($4), $6, fill_, color,dash,1,font,text,props,NULL,taglist,cblist); } ; diff --git a/tksao/frame/circle.C b/tksao/frame/circle.C index aaebdcb..ddac80a 100644 --- a/tksao/frame/circle.C +++ b/tksao/frame/circle.C @@ -7,8 +7,10 @@ #include "circle.h" #include "fitsimage.h" -Circle::Circle(Base* p, const Vector& ctr, double r) - : BaseEllipse(p, ctr, 0) +Circle::Circle(const Circle& a) : BaseEllipse(a), BaseFill(a) {} + +Circle::Circle(Base* p, const Vector& ctr, double r, int fill) + : BaseEllipse(p, ctr, 0), BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[1]; @@ -21,12 +23,13 @@ Circle::Circle(Base* p, const Vector& ctr, double r) } Circle::Circle(Base* p, const Vector& ctr, - double r, + double r, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb) - : BaseEllipse(p, ctr, 0, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb) + : BaseEllipse(p, ctr, 0, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb), + BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[numAnnuli_]; @@ -38,8 +41,6 @@ Circle::Circle(Base* p, const Vector& ctr, updateBBox(); } -Circle::Circle(const Circle& a) : BaseEllipse(a) {} - void Circle::edit(const Vector& v, int h) { Matrix mm = bckMatrix(); @@ -53,6 +54,35 @@ void Circle::edit(const Vector& v, int h) doCallBack(CallBack::EDITCB); } +void Circle::renderXCircleDraw(Drawable drawable, GC lgc, + Vector& st, Vector& size, + int a1, int aa) +{ + if (fill_) + XFillArc(display, drawable, lgc, st[0], st[1], size[0], size[1], a1, aa); + else + XDrawArc(display, drawable, lgc, st[0], st[1], size[0], size[1], a1, aa); +} + +void Circle::renderPSCircleDraw(Vector& cc, double l, float a1, float a2) +{ + ostringstream str; + if (fill_) + str << "newpath " + << cc.TkCanvasPs(parent->canvas) << ' ' + << l << ' ' + << a1 << ' ' << a2 << ' ' + << "arc fill" << endl << ends; + else + str << "newpath " + << cc.TkCanvasPs(parent->canvas) << ' ' + << l << ' ' + << a1 << ' ' << a2 << ' ' + << "arc stroke" << endl << ends; + + Tcl_AppendResult(parent->interp, str.str().c_str(), NULL); +} + void Circle::analysis(AnalysisTask mm, int which) { switch (mm) { @@ -195,6 +225,26 @@ void Circle::list(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, listPost(str, conj, strip); } +void Circle::listPost(ostream& str, int conj, int strip) +{ + // no props for semicolons + if (!strip) { + if (conj) + str << " ||"; + + if (fill_) + str << " # fill=" << fill_; + + listProperties(str, !fill_); + } + else { + if (conj) + str << "||"; + else + str << ';'; + } +} + void Circle::listNonCel(FitsImage* ptr, ostream& str, Coord::CoordSystem sys) { Vector vv = ptr->mapFromRef(center,sys); @@ -212,6 +262,8 @@ void Circle::listXML(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, XMLRowCenter(ptr,sys,sky,format); XMLRowRadiusX(ptr,sys,annuli_[0]); + if (fill_) + XMLRow(XMLPARAM,fill_); XMLRowProps(ptr,sys); XMLRowEnd(str); diff --git a/tksao/frame/circle.h b/tksao/frame/circle.h index a8a3c28..cc58e85 100644 --- a/tksao/frame/circle.h +++ b/tksao/frame/circle.h @@ -6,15 +6,19 @@ #define __circle_h__ #include "baseellipse.h" +#include "basefill.h" -class Circle : public BaseEllipse { +class Circle : public BaseEllipse, public BaseFill { protected: + void renderXCircleDraw(Drawable, GC, Vector&, Vector&, int, int); + void renderPSCircleDraw(Vector& cc, double l, float a1, float a2); + void listNonCel(FitsImage*, ostream&, Coord::CoordSystem); public: - Circle(Base* p, const Vector& ctr, double r); + Circle(Base* p, const Vector& ctr, double r, int fill); Circle(Base* p, const Vector& ctr, - double r, + double r, int fill, const char* clr, int *dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, @@ -34,6 +38,7 @@ public: void analysisStats(Coord::CoordSystem, Coord::SkyFrame sky); void list(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int, int); + virtual void listPost(ostream&, int, int); void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); virtual void listCiao(ostream&, Coord::CoordSystem, int); virtual void listSAOtng(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int); diff --git a/tksao/frame/ds9lex.C b/tksao/frame/ds9lex.C index f856772..5a7f5d1 100644 --- a/tksao/frame/ds9lex.C +++ b/tksao/frame/ds9lex.C @@ -324,8 +324,8 @@ int yyFlexLexer::yywrap() { return 1; } *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 153 -#define YY_END_OF_BUFFER 154 +#define YY_NUM_RULES 154 +#define YY_END_OF_BUFFER 155 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -333,67 +333,68 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[540] = +static yyconst flex_int16_t yy_accept[542] = { 0, - 0, 0, 2, 2, 154, 152, 148, 151, 152, 152, - 152, 152, 152, 152, 116, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 54, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 113, 114, - 152, 152, 2, 1, 148, 149, 0, 144, 0, 0, - 145, 0, 116, 118, 131, 127, 117, 116, 0, 147, - 119, 147, 147, 125, 123, 121, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - - 147, 147, 147, 55, 147, 57, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 150, 0, 146, 2, - 0, 118, 133, 129, 117, 119, 0, 0, 125, 123, - 121, 132, 128, 120, 0, 126, 124, 122, 119, 0, - 147, 0, 117, 147, 147, 147, 147, 147, 147, 147, - 147, 11, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 33, 147, - 147, 147, 147, 37, 39, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 49, 147, 147, 56, 147, - - 147, 60, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 73, 147, 147, 147, 147, 147, 147, 147, - 147, 84, 147, 115, 141, 134, 130, 0, 117, 0, - 0, 118, 0, 147, 147, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 22, 147, 147, 147, 147, 147, 147, 29, 147, - 147, 147, 147, 147, 0, 40, 147, 147, 147, 147, - 45, 147, 147, 147, 147, 51, 53, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - 147, 74, 77, 78, 147, 147, 147, 147, 147, 111, - - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 147, 0, 0, 0, - 0, 135, 0, 147, 0, 147, 147, 147, 147, 147, - 7, 8, 147, 10, 147, 147, 147, 147, 17, 147, - 147, 147, 21, 147, 24, 147, 147, 147, 147, 147, - 147, 147, 34, 35, 36, 0, 147, 147, 147, 147, - 147, 48, 147, 50, 147, 58, 147, 147, 62, 147, - 147, 147, 147, 147, 68, 147, 147, 147, 147, 147, - 147, 147, 147, 147, 147, 147, 112, 0, 0, 0, - - 136, 135, 0, 0, 139, 0, 0, 137, 147, 147, - 5, 6, 147, 147, 13, 147, 15, 147, 147, 20, - 147, 147, 26, 147, 147, 147, 147, 32, 0, 147, - 42, 147, 147, 46, 147, 52, 147, 61, 147, 147, - 147, 66, 67, 147, 69, 71, 147, 147, 147, 147, - 147, 81, 79, 147, 142, 139, 137, 140, 138, 147, - 4, 147, 147, 147, 147, 18, 147, 147, 25, 147, - 28, 147, 30, 0, 147, 147, 147, 47, 147, 63, - 147, 147, 70, 147, 147, 147, 147, 147, 80, 0, - 147, 147, 147, 14, 16, 147, 23, 27, 31, 38, - - 41, 147, 44, 59, 147, 65, 147, 147, 147, 147, - 83, 0, 3, 147, 12, 19, 147, 147, 147, 75, - 147, 147, 0, 9, 147, 64, 147, 76, 82, 0, - 147, 147, 0, 147, 147, 143, 43, 72, 0 + 0, 0, 2, 2, 155, 153, 149, 152, 153, 153, + 153, 153, 153, 153, 117, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 55, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 114, 115, + 153, 153, 2, 1, 149, 150, 0, 145, 0, 0, + 146, 0, 117, 119, 132, 128, 118, 117, 0, 148, + 120, 148, 148, 126, 124, 122, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + + 148, 148, 148, 56, 148, 58, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 151, 0, 147, 2, + 0, 119, 134, 130, 118, 120, 0, 0, 126, 124, + 122, 133, 129, 121, 0, 127, 125, 123, 120, 0, + 148, 0, 118, 148, 148, 148, 148, 148, 148, 148, + 148, 11, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 33, 148, + 148, 148, 148, 148, 38, 40, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 50, 148, 148, 57, + + 148, 148, 61, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 74, 148, 148, 148, 148, 148, 148, + 148, 148, 85, 148, 116, 142, 135, 131, 0, 118, + 0, 0, 119, 0, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 22, 148, 148, 148, 148, 148, 148, 29, + 148, 148, 148, 148, 36, 148, 0, 41, 148, 148, + 148, 148, 46, 148, 148, 148, 148, 52, 54, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, + 148, 148, 148, 75, 78, 79, 148, 148, 148, 148, + + 148, 112, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 148, 0, + 0, 0, 0, 136, 0, 148, 0, 148, 148, 148, + 148, 148, 7, 8, 148, 10, 148, 148, 148, 148, + 17, 148, 148, 148, 21, 148, 24, 148, 148, 148, + 148, 148, 148, 148, 34, 35, 37, 0, 148, 148, + 148, 148, 148, 49, 148, 51, 148, 59, 148, 148, + 63, 148, 148, 148, 148, 148, 69, 148, 148, 148, + 148, 148, 148, 148, 148, 148, 148, 148, 113, 0, + + 0, 0, 137, 136, 0, 0, 140, 0, 0, 138, + 148, 148, 5, 6, 148, 148, 13, 148, 15, 148, + 148, 20, 148, 148, 26, 148, 148, 148, 148, 32, + 0, 148, 43, 148, 148, 47, 148, 53, 148, 62, + 148, 148, 148, 67, 68, 148, 70, 72, 148, 148, + 148, 148, 148, 82, 80, 148, 143, 140, 138, 141, + 139, 148, 4, 148, 148, 148, 148, 18, 148, 148, + 25, 148, 28, 148, 30, 0, 148, 148, 148, 48, + 148, 64, 148, 148, 71, 148, 148, 148, 148, 148, + 81, 0, 148, 148, 148, 14, 16, 148, 23, 27, + + 31, 39, 42, 148, 45, 60, 148, 66, 148, 148, + 148, 148, 84, 0, 3, 148, 12, 19, 148, 148, + 148, 76, 148, 148, 0, 9, 148, 65, 148, 77, + 83, 0, 148, 148, 0, 148, 148, 144, 44, 73, + 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -440,137 +441,137 @@ static yyconst flex_int32_t yy_meta[75] = 3, 3, 1, 1 } ; -static yyconst flex_int16_t yy_base[558] = +static yyconst flex_int16_t yy_base[560] = { 0, - 0, 0, 181, 180, 179, 4306, 176, 4306, 167, 160, + 0, 0, 181, 180, 179, 4292, 176, 4292, 167, 160, 0, 156, 65, 73, 87, 102, 162, 213, 140, 273, 331, 170, 211, 388, 113, 195, 201, 233, 266, 274, 429, 166, 305, 306, 489, 364, 372, 406, 244, 426, - 80, 84, 0, 4306, 155, 4306, 151, 4306, 0, 148, - 4306, 456, 549, 609, 4306, 4306, 669, 729, 489, 337, + 80, 84, 0, 4292, 155, 4292, 151, 4292, 0, 148, + 4292, 456, 549, 609, 4292, 4292, 669, 729, 489, 337, 789, 507, 516, 396, 425, 433, 536, 575, 804, 532, 629, 635, 586, 648, 691, 695, 758, 708, 805, 716, - 864, 766, 815, 823, 830, 857, 840, 865, 892, 899, - 872, 914, 921, 929, 937, 947, 960, 954, 970, 989, - - 978, 997, 1005, 582, 1016, 684, 1026, 1032, 1045, 1051, - 1055, 1073, 1080, 1088, 1103, 1113, 1121, 1144, 1145, 1152, - 1162, 1172, 1183, 1191, 1202, 1221, 4306, 80, 4306, 0, - 0, 1250, 4306, 4306, 1264, 1276, 1287, 1295, 4306, 4306, - 4306, 4306, 4306, 4306, 1306, 4306, 4306, 4306, 4306, 1314, - 84, 1323, 1337, 1345, 1239, 1359, 1360, 1366, 1229, 1376, - 1377, 1402, 1383, 1384, 1430, 1429, 1403, 1440, 1448, 1461, - 1465, 1482, 1488, 1492, 1499, 1516, 1515, 1523, 1531, 1542, - 1550, 1558, 1575, 1557, 1585, 1586, 1593, 1601, 1614, 1624, - 1625, 1631, 1648, 1649, 1665, 1672, 1676, 1689, 1699, 1705, - - 1712, 1716, 1727, 1734, 1738, 1751, 1755, 1774, 1778, 1782, - 1807, 1811, 1817, 1824, 1835, 1841, 1842, 1848, 1859, 1870, - 1877, 1932, 1912, 1888, 0, 4306, 4306, 1994, 2016, 2024, - 1912, 2047, 2033, 2056, 2074, 2088, 2089, 2095, 2105, 2099, - 2120, 2127, 2144, 2150, 2160, 2154, 2177, 2181, 2187, 2204, - 2212, 2232, 2233, 2248, 2255, 2259, 2263, 2282, 1895, 2288, - 2295, 2306, 2324, 2330, 84, 2341, 2349, 2356, 2360, 2376, - 2377, 2383, 2394, 2404, 2405, 2412, 2420, 2430, 2436, 2447, - 2446, 2453, 2463, 2476, 2483, 2489, 2506, 2510, 2514, 2525, - 2521, 2532, 2549, 2557, 2568, 2576, 2583, 2593, 2601, 2594, - - 2609, 2625, 2626, 2632, 2633, 2643, 2650, 2654, 2658, 2665, - 2669, 2673, 2680, 2684, 2688, 2695, 2699, 2703, 2710, 2714, - 2718, 2725, 2729, 2733, 2740, 2744, 2748, 0, 2766, 2775, - 2002, 2793, 2064, 2802, 2783, 2811, 2825, 2826, 2832, 2836, - 2755, 2849, 2864, 2865, 2881, 2889, 2897, 2905, 2915, 2916, - 2932, 2933, 2950, 2954, 2958, 2969, 2979, 2980, 2995, 3003, - 3016, 3024, 3031, 3042, 3046, 85, 3053, 3057, 3063, 3070, - 3086, 3090, 3094, 3101, 3111, 3117, 3121, 3128, 3144, 3145, - 3152, 3162, 3173, 3177, 3181, 3197, 3198, 3204, 3208, 3226, - 3233, 3239, 3246, 3264, 3268, 3272, 3285, 0, 3306, 3324, - - 3296, 3334, 3342, 3352, 3367, 3380, 3388, 3368, 3403, 3404, - 3414, 3420, 3427, 3433, 3444, 3452, 3465, 3471, 3484, 3488, - 3492, 3503, 3509, 3510, 3527, 3528, 3535, 3548, 144, 3556, - 3555, 3571, 3575, 3582, 3593, 3597, 3603, 3614, 3620, 3621, - 3627, 3638, 3642, 3649, 3657, 3664, 3665, 3672, 3685, 3689, - 3695, 3711, 3721, 3722, 0, 4306, 4306, 4306, 4306, 3729, - 3747, 3751, 3755, 3762, 3766, 3783, 3789, 3790, 3796, 3807, - 3815, 3826, 3830, 101, 3847, 3853, 3854, 3860, 3875, 3876, - 3882, 3883, 3893, 3909, 3910, 3916, 3937, 3938, 3945, 0, - 3964, 3965, 3971, 3975, 3981, 3992, 3998, 4002, 4008, 4306, - - 4019, 4025, 4026, 4032, 4042, 4049, 4050, 4067, 4068, 4074, - 4085, 0, 4089, 4104, 4105, 4112, 4123, 4131, 4138, 4142, - 4146, 4162, 0, 4161, 4169, 4185, 4191, 4195, 4202, 0, - 4210, 4217, 0, 4218, 4234, 4306, 4241, 4242, 4306, 4283, - 4287, 144, 4291, 4293, 4297, 4301, 132, 129, 127, 126, - 125, 124, 123, 104, 92, 91, 89 + 864, 766, 815, 823, 830, 857, 840, 865, 894, 895, + 887, 919, 929, 936, 946, 952, 963, 973, 969, 990, + + 998, 1005, 1020, 582, 1021, 684, 1038, 1045, 1044, 1065, + 1071, 1072, 1087, 1102, 1094, 1112, 1120, 872, 1144, 1143, + 1159, 1172, 1182, 1189, 1193, 1204, 4292, 80, 4292, 0, + 0, 1221, 4292, 4292, 1244, 1259, 1270, 1278, 4292, 4292, + 4292, 4292, 4292, 4292, 1289, 4292, 4292, 4292, 4292, 1297, + 84, 1306, 1320, 1328, 1210, 1342, 1343, 1349, 1360, 1359, + 1367, 1393, 1386, 1387, 1416, 1394, 1422, 1429, 1442, 1449, + 1453, 1459, 1476, 1480, 1487, 1505, 1472, 1511, 1530, 1537, + 1538, 1548, 1554, 1558, 1579, 1564, 1585, 1595, 1589, 1606, + 1612, 1616, 1622, 1633, 1639, 1657, 1650, 1668, 1672, 1683, + + 1693, 1694, 1701, 1717, 1721, 1728, 1732, 1743, 1750, 1739, + 1768, 1790, 1797, 1798, 1805, 1813, 1821, 1828, 1836, 1856, + 1860, 1875, 1930, 1883, 1879, 0, 4292, 4292, 1992, 1903, + 2000, 1916, 2022, 2031, 2050, 2059, 2073, 2074, 2080, 2090, + 2084, 1890, 2097, 2105, 2112, 2120, 2137, 2141, 2147, 2154, + 2170, 2171, 2187, 2193, 2197, 2203, 2218, 2219, 2225, 2242, + 2249, 2266, 2267, 2283, 2289, 2290, 84, 2300, 2307, 2315, + 2331, 2332, 2338, 2339, 2354, 2361, 2372, 2365, 2388, 2389, + 2406, 2410, 2414, 2425, 2433, 2440, 2453, 2460, 2464, 2480, + 2488, 2495, 2501, 2520, 2536, 2540, 2544, 2559, 2566, 2567, + + 2584, 2588, 2599, 2603, 2614, 2624, 2630, 2631, 2637, 2641, + 2647, 2648, 2654, 2658, 2664, 2665, 2671, 2675, 2681, 2682, + 2688, 2692, 2698, 2699, 2705, 2709, 2715, 2716, 2722, 0, + 2740, 2749, 2757, 2767, 2775, 2784, 2792, 2801, 2816, 2823, + 2824, 2840, 2726, 2841, 2848, 2864, 2868, 2872, 2888, 2892, + 2896, 2915, 2919, 2926, 2932, 2942, 2949, 2953, 2957, 2964, + 2980, 2981, 2988, 3004, 3012, 3022, 3029, 85, 3039, 3045, + 3049, 3055, 3056, 3062, 3072, 3079, 3080, 3087, 3104, 3108, + 3114, 3124, 3130, 3131, 3150, 3156, 3157, 3173, 3177, 3181, + 3202, 3203, 3210, 3220, 3230, 3241, 3251, 3257, 3268, 0, + + 3283, 3292, 3311, 3320, 3328, 3338, 3353, 3366, 3374, 3354, + 3389, 3390, 3400, 3406, 3413, 3419, 3430, 3438, 3451, 3457, + 3470, 3474, 3478, 3489, 3495, 3496, 3513, 3514, 3521, 3534, + 144, 3542, 3541, 3557, 3561, 3568, 3579, 3583, 3589, 3600, + 3606, 3607, 3613, 3624, 3628, 3635, 3643, 3650, 3651, 3658, + 3671, 3675, 3681, 3697, 3707, 3708, 0, 4292, 4292, 4292, + 4292, 3715, 3733, 3737, 3741, 3748, 3752, 3769, 3775, 3776, + 3782, 3793, 3801, 3812, 3816, 101, 3833, 3839, 3840, 3846, + 3861, 3862, 3868, 3869, 3879, 3895, 3896, 3902, 3923, 3924, + 3931, 0, 3950, 3951, 3957, 3961, 3967, 3978, 3984, 3988, + + 3994, 4292, 4005, 4011, 4012, 4018, 4028, 4035, 4036, 4053, + 4054, 4060, 4071, 0, 4075, 4090, 4091, 4098, 4109, 4117, + 4124, 4128, 4132, 4148, 0, 4147, 4155, 4171, 4177, 4181, + 4188, 0, 4196, 4203, 0, 4204, 4220, 4292, 4227, 4228, + 4292, 4269, 4273, 144, 4277, 4279, 4283, 4287, 132, 129, + 127, 126, 125, 124, 123, 104, 92, 91, 89 } ; -static yyconst flex_int16_t yy_def[558] = +static yyconst flex_int16_t yy_def[560] = { 0, - 539, 1, 540, 540, 539, 539, 539, 539, 539, 541, - 542, 543, 539, 539, 544, 544, 544, 17, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 21, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 539, 545, 546, 539, 539, 539, 541, 539, 547, 543, - 539, 539, 539, 539, 539, 539, 539, 544, 539, 544, - 544, 61, 61, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 539, 545, 539, 546, - 548, 54, 539, 539, 57, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 61, 539, 61, 61, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 539, 544, 544, 549, 539, 539, 539, 539, 539, - 539, 539, 539, 61, 61, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 539, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 550, 539, 539, - 539, 539, 539, 61, 539, 61, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 539, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 551, 539, 539, - - 539, 539, 539, 539, 544, 539, 539, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 539, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 552, 539, 539, 539, 539, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 539, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 553, - 544, 544, 544, 544, 544, 544, 544, 544, 544, 539, - - 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 554, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 555, 544, 544, 544, 544, 544, 544, 556, - 544, 544, 557, 544, 544, 539, 544, 544, 0, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539 + 541, 1, 542, 542, 541, 541, 541, 541, 541, 543, + 544, 545, 541, 541, 546, 546, 546, 17, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 21, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 541, 547, 548, 541, 541, 541, 543, 541, 549, 545, + 541, 541, 541, 541, 541, 541, 541, 546, 541, 546, + 546, 61, 61, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 541, 547, 541, 548, + 550, 54, 541, 541, 57, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 61, 541, 61, 61, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 541, 546, 546, 551, 541, 541, 541, 541, + 541, 541, 541, 541, 61, 61, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 541, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 552, + 541, 541, 541, 541, 541, 61, 541, 61, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 541, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 553, + + 541, 541, 541, 541, 541, 541, 546, 541, 541, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 541, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 554, 541, 541, 541, + 541, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 541, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 555, 546, 546, 546, 546, 546, 546, 546, 546, + + 546, 541, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 556, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 557, 546, 546, 546, 546, 546, + 546, 558, 546, 546, 559, 546, 546, 541, 546, 546, + 0, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541 } ; -static yyconst flex_int16_t yy_nxt[4381] = +static yyconst flex_int16_t yy_nxt[4367] = { 0, 6, 7, 8, 9, 10, 11, 12, 13, 13, 14, 15, 15, 15, 15, 15, 15, 15, 15, 6, 16, @@ -581,481 +582,480 @@ static yyconst flex_int16_t yy_nxt[4381] = 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 32, 42, 6, 52, 53, 53, 53, 53, 53, 53, 53, 53, 54, 54, 54, 54, 54, 54, 54, - 54, 55, 536, 56, 533, 530, 57, 58, 58, 58, - - 58, 58, 58, 58, 58, 59, 539, 523, 539, 61, - 62, 539, 127, 63, 64, 234, 366, 539, 429, 539, - 539, 65, 539, 66, 500, 100, 512, 490, 455, 398, - 328, 539, 225, 67, 68, 131, 61, 62, 69, 127, - 63, 64, 234, 366, 539, 429, 539, 49, 65, 539, - 66, 500, 474, 129, 51, 48, 45, 129, 539, 80, - 67, 68, 51, 81, 48, 69, 539, 82, 539, 46, - 539, 539, 539, 70, 539, 539, 539, 45, 539, 539, - 539, 71, 44, 44, 539, 72, 80, 539, 539, 92, - 81, 539, 539, 539, 82, 73, 74, 539, 539, 539, - - 93, 539, 539, 539, 539, 539, 539, 539, 71, 539, - 539, 539, 72, 539, 539, 539, 92, 539, 101, 539, - 539, 539, 73, 74, 60, 539, 539, 93, 102, 539, - 539, 539, 75, 539, 94, 539, 60, 539, 95, 539, - 76, 539, 539, 539, 539, 101, 77, 78, 539, 79, - 539, 539, 539, 539, 539, 102, 539, 539, 539, 75, - 539, 94, 539, 60, 539, 95, 103, 76, 539, 539, - 539, 539, 539, 77, 78, 539, 79, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 103, 83, 84, 539, 539, 105, 104, - - 539, 539, 539, 85, 539, 86, 106, 87, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 83, 84, 539, 539, 105, 104, 539, 539, 114, - 85, 539, 86, 106, 87, 539, 539, 539, 112, 115, - 539, 539, 539, 539, 113, 116, 539, 539, 539, 539, - 88, 539, 539, 539, 539, 539, 114, 539, 89, 539, - 90, 539, 539, 539, 91, 112, 115, 539, 539, 539, - 539, 113, 116, 539, 539, 539, 539, 88, 539, 539, - 539, 539, 539, 539, 539, 89, 539, 90, 539, 539, - 539, 91, 539, 539, 539, 123, 121, 539, 122, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 96, - 539, 539, 539, 97, 539, 539, 539, 539, 539, 98, - 99, 539, 123, 121, 539, 122, 539, 124, 539, 539, - 539, 539, 539, 125, 539, 539, 96, 539, 539, 539, - 97, 539, 539, 539, 539, 539, 98, 99, 107, 126, - 539, 539, 539, 539, 124, 108, 109, 539, 60, 539, - 125, 539, 110, 539, 539, 111, 132, 132, 132, 132, - 132, 132, 132, 132, 539, 107, 126, 539, 539, 539, - 539, 539, 108, 109, 539, 60, 539, 539, 539, 110, - 539, 539, 111, 539, 539, 539, 539, 539, 539, 150, - - 150, 150, 150, 150, 150, 150, 150, 539, 117, 539, - 539, 539, 118, 539, 152, 152, 119, 153, 153, 153, + 54, 55, 538, 56, 535, 532, 57, 58, 58, 58, + + 58, 58, 58, 58, 58, 59, 541, 525, 541, 61, + 62, 541, 127, 63, 64, 235, 368, 541, 431, 541, + 541, 65, 541, 66, 502, 100, 514, 492, 457, 400, + 330, 541, 226, 67, 68, 131, 61, 62, 69, 127, + 63, 64, 235, 368, 541, 431, 541, 49, 65, 541, + 66, 502, 476, 129, 51, 48, 45, 129, 541, 80, + 67, 68, 51, 81, 48, 69, 541, 82, 541, 46, + 541, 541, 541, 70, 541, 541, 541, 45, 541, 541, + 541, 71, 44, 44, 541, 72, 80, 541, 541, 92, + 81, 541, 541, 541, 82, 73, 74, 541, 541, 541, + + 93, 541, 541, 541, 541, 541, 541, 541, 71, 541, + 541, 541, 72, 541, 541, 541, 92, 541, 101, 541, + 541, 541, 73, 74, 60, 541, 541, 93, 102, 541, + 541, 541, 75, 541, 94, 541, 60, 541, 95, 541, + 76, 541, 541, 541, 541, 101, 77, 78, 541, 79, + 541, 541, 541, 541, 541, 102, 541, 541, 541, 75, + 541, 94, 541, 60, 541, 95, 103, 76, 541, 541, + 541, 541, 541, 77, 78, 541, 79, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 103, 83, 84, 541, 541, 105, 104, + + 541, 541, 541, 85, 541, 86, 106, 87, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 83, 84, 541, 541, 105, 104, 541, 541, 114, + 85, 541, 86, 106, 87, 541, 541, 541, 112, 115, + 541, 541, 541, 541, 113, 116, 541, 541, 541, 541, + 88, 541, 541, 541, 541, 541, 114, 541, 89, 541, + 90, 541, 541, 541, 91, 112, 115, 541, 541, 541, + 541, 113, 116, 541, 541, 541, 541, 88, 541, 541, + 541, 541, 541, 541, 541, 89, 541, 90, 541, 541, + 541, 91, 541, 541, 541, 123, 121, 541, 122, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 96, + 541, 541, 541, 97, 541, 541, 541, 541, 541, 98, + 99, 541, 123, 121, 541, 122, 541, 124, 541, 541, + 541, 541, 541, 125, 541, 541, 96, 541, 541, 541, + 97, 541, 541, 541, 541, 541, 98, 99, 107, 126, + 541, 541, 541, 541, 124, 108, 109, 541, 60, 541, + 125, 541, 110, 541, 541, 111, 132, 132, 132, 132, + 132, 132, 132, 132, 541, 107, 126, 541, 541, 541, + 541, 541, 108, 109, 541, 60, 541, 541, 541, 110, + 541, 541, 111, 541, 541, 541, 541, 541, 541, 150, + + 150, 150, 150, 150, 150, 150, 150, 541, 117, 541, + 541, 541, 118, 541, 152, 152, 119, 153, 153, 153, 153, 153, 153, 153, 153, 120, 154, 154, 154, 154, - 154, 154, 154, 154, 539, 117, 539, 539, 539, 118, - 539, 539, 539, 119, 539, 539, 539, 539, 539, 159, - 539, 539, 120, 133, 539, 134, 539, 539, 135, 53, - 53, 53, 53, 53, 53, 53, 53, 59, 539, 539, - 155, 136, 137, 539, 539, 138, 139, 539, 539, 539, - 539, 539, 539, 140, 539, 141, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 155, 136, 137, - - 539, 539, 138, 139, 539, 539, 539, 156, 539, 539, - 140, 539, 141, 142, 539, 143, 539, 539, 539, 54, - 54, 54, 54, 54, 54, 54, 54, 539, 162, 539, - 539, 144, 145, 539, 156, 539, 146, 539, 539, 539, - 539, 539, 539, 147, 539, 148, 539, 539, 539, 539, - 160, 539, 539, 539, 539, 162, 539, 539, 144, 145, - 161, 539, 539, 146, 539, 539, 539, 163, 539, 539, - 147, 539, 148, 55, 539, 56, 539, 160, 539, 54, - 54, 54, 54, 54, 54, 54, 54, 161, 539, 539, - 539, 149, 137, 539, 163, 539, 139, 539, 539, 539, - - 539, 539, 539, 140, 539, 141, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 149, 137, - 539, 164, 539, 139, 539, 539, 539, 168, 539, 539, - 140, 165, 141, 55, 539, 56, 539, 539, 57, 58, - 58, 58, 58, 58, 58, 58, 58, 59, 164, 539, - 539, 61, 62, 170, 168, 63, 64, 539, 165, 539, - 539, 539, 539, 65, 539, 66, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 61, 62, - 170, 539, 63, 64, 539, 175, 539, 539, 166, 167, - 65, 539, 66, 539, 539, 539, 539, 539, 539, 151, - - 151, 151, 151, 151, 151, 151, 151, 539, 539, 539, - 539, 539, 175, 539, 539, 166, 167, 539, 539, 539, - 539, 539, 539, 539, 539, 157, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 169, 539, - 158, 539, 539, 539, 539, 176, 539, 539, 539, 539, - 177, 539, 157, 539, 539, 539, 539, 539, 539, 180, - 178, 539, 539, 539, 539, 169, 539, 158, 539, 539, - 539, 539, 176, 539, 539, 539, 539, 177, 539, 179, - 539, 539, 539, 539, 171, 539, 180, 178, 539, 172, - 539, 539, 539, 539, 173, 181, 539, 539, 539, 539, - - 539, 539, 174, 539, 186, 539, 179, 539, 539, 539, - 539, 171, 539, 184, 185, 182, 172, 539, 539, 539, - 539, 173, 181, 539, 539, 539, 539, 539, 539, 174, - 539, 186, 539, 539, 183, 539, 539, 539, 539, 539, - 539, 539, 182, 539, 187, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 188, 539, 539, 539, 539, 189, - 539, 183, 190, 539, 539, 539, 539, 539, 539, 539, - 539, 187, 539, 193, 539, 539, 539, 539, 539, 539, - 539, 188, 539, 191, 539, 539, 189, 539, 539, 190, - 539, 194, 192, 539, 539, 539, 539, 539, 539, 195, - - 193, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 191, 539, 539, 539, 539, 539, 539, 539, 194, 192, - 539, 196, 539, 539, 539, 539, 539, 539, 539, 197, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 199, 539, 539, 539, 539, 198, 539, 539, 196, 539, - 539, 539, 539, 539, 539, 539, 197, 539, 200, 539, - 539, 539, 539, 539, 539, 539, 539, 199, 202, 539, - 539, 539, 198, 539, 539, 201, 539, 539, 204, 539, - 539, 205, 539, 539, 539, 200, 539, 203, 206, 539, - 539, 539, 539, 539, 539, 202, 539, 539, 539, 539, - - 539, 539, 201, 539, 539, 204, 539, 539, 205, 539, - 208, 207, 539, 209, 203, 206, 539, 539, 210, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 208, 207, 539, - 209, 539, 211, 539, 539, 210, 213, 212, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 211, - 539, 539, 539, 213, 212, 215, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 214, 539, 217, 539, - 539, 216, 539, 539, 219, 539, 539, 539, 539, 218, - - 539, 539, 215, 539, 220, 539, 539, 539, 539, 539, - 539, 539, 539, 214, 539, 217, 539, 539, 216, 221, - 539, 219, 539, 539, 223, 539, 218, 539, 222, 539, - 539, 220, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 241, 539, 221, 539, 539, 539, - 539, 223, 539, 539, 226, 222, 227, 539, 224, 539, - 132, 132, 132, 132, 132, 132, 132, 132, 133, 236, - 134, 539, 539, 539, 132, 132, 132, 132, 132, 132, - 132, 132, 539, 539, 539, 224, 228, 228, 228, 228, - 228, 228, 228, 228, 152, 152, 236, 229, 229, 229, - - 229, 229, 229, 229, 229, 230, 230, 230, 230, 230, - 230, 230, 230, 231, 231, 539, 232, 232, 232, 232, - 232, 232, 232, 232, 150, 150, 150, 150, 150, 150, - 150, 150, 233, 229, 229, 229, 229, 229, 229, 229, - 229, 133, 539, 134, 539, 539, 539, 153, 153, 153, - 153, 153, 153, 153, 153, 154, 154, 154, 154, 154, - 154, 154, 154, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 235, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 238, 539, 539, 539, 539, 539, 239, 237, 240, - - 539, 539, 539, 235, 243, 242, 539, 539, 539, 539, - 539, 539, 539, 539, 246, 245, 539, 539, 238, 539, - 539, 539, 539, 244, 239, 237, 240, 539, 539, 539, - 539, 243, 242, 539, 539, 539, 539, 249, 539, 539, - 539, 246, 245, 539, 539, 539, 539, 539, 539, 539, - 244, 247, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 248, 539, 249, 539, 539, 539, 539, 539, - 539, 539, 250, 539, 539, 539, 539, 539, 247, 539, - 539, 539, 539, 539, 539, 251, 539, 252, 539, 248, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 250, - - 539, 539, 539, 539, 253, 539, 539, 539, 539, 539, - 539, 255, 251, 539, 252, 256, 539, 539, 254, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 257, 253, 539, 539, 539, 539, 539, 539, 255, 539, - 539, 539, 256, 258, 539, 254, 539, 539, 539, 539, - 260, 539, 539, 259, 539, 539, 539, 257, 539, 539, - 539, 539, 539, 539, 539, 265, 539, 539, 539, 539, - 258, 539, 539, 539, 261, 539, 539, 260, 539, 539, - 259, 539, 539, 539, 539, 539, 539, 262, 263, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 264, 539, - - 539, 261, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 267, 539, 262, 263, 539, 539, 539, 539, - 539, 268, 539, 539, 266, 264, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 267, - 539, 269, 539, 539, 539, 539, 539, 539, 268, 539, - 270, 266, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 271, 539, 272, 539, 539, 539, 269, 539, - 539, 539, 539, 273, 539, 275, 539, 270, 539, 274, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 271, - 539, 272, 539, 539, 539, 539, 539, 539, 539, 276, - - 273, 539, 539, 539, 539, 539, 274, 539, 539, 539, - 539, 539, 277, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 276, 278, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 277, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 279, - 280, 539, 539, 539, 278, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 281, 539, 539, 539, - 539, 539, 539, 539, 285, 286, 279, 280, 539, 283, - 539, 282, 539, 539, 539, 284, 539, 539, 539, 539, - 539, 539, 539, 281, 539, 539, 539, 287, 539, 539, - - 539, 285, 286, 539, 539, 289, 283, 539, 282, 288, - 539, 539, 284, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 287, 539, 539, 539, 539, 539, - 539, 539, 289, 539, 291, 539, 288, 539, 539, 539, - 539, 539, 539, 290, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 293, 539, - 539, 291, 292, 539, 294, 539, 539, 539, 539, 295, - 290, 296, 539, 539, 539, 539, 539, 539, 297, 539, - 539, 539, 539, 539, 539, 293, 539, 539, 539, 292, - 539, 294, 539, 539, 539, 539, 295, 539, 296, 539, - - 539, 539, 539, 539, 539, 297, 539, 539, 298, 539, - 539, 539, 539, 539, 299, 539, 539, 539, 539, 539, - 539, 539, 232, 232, 232, 232, 232, 232, 232, 232, - 539, 539, 539, 539, 539, 298, 539, 539, 539, 539, - 539, 299, 300, 60, 60, 60, 60, 60, 60, 60, - 327, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - - 323, 324, 325, 326, 228, 228, 228, 228, 228, 228, - 228, 228, 401, 401, 401, 401, 401, 401, 401, 401, - 133, 539, 134, 539, 539, 329, 229, 229, 229, 229, - 229, 229, 229, 229, 230, 230, 230, 230, 230, 230, - 230, 230, 331, 332, 332, 332, 332, 332, 332, 332, - 332, 226, 329, 227, 539, 330, 539, 232, 232, 232, - 232, 232, 232, 232, 232, 333, 334, 334, 334, 334, - 334, 334, 334, 334, 403, 403, 403, 403, 403, 403, - 403, 403, 330, 335, 336, 336, 336, 336, 336, 336, - 336, 336, 539, 539, 539, 539, 539, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 337, 539, 539, 539, 338, - 539, 539, 339, 539, 539, 539, 539, 539, 340, 539, - 342, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 341, 539, 337, 539, 539, 539, 338, 539, 539, 339, - 539, 539, 343, 539, 539, 340, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 341, 539, 539, - 539, 539, 539, 539, 347, 539, 344, 345, 539, 343, - 539, 539, 346, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - - 539, 347, 539, 344, 345, 539, 350, 348, 539, 346, - 539, 539, 539, 539, 539, 539, 539, 349, 539, 539, - 351, 539, 539, 539, 539, 539, 352, 539, 539, 539, - 539, 539, 539, 350, 348, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 349, 539, 539, 351, 539, 353, - 539, 539, 539, 352, 539, 539, 539, 539, 355, 539, - 539, 539, 354, 539, 539, 539, 539, 539, 539, 539, - 539, 356, 539, 539, 539, 539, 353, 539, 539, 539, - 358, 539, 539, 539, 539, 355, 539, 539, 539, 354, - 539, 539, 539, 357, 539, 539, 359, 539, 356, 539, - - 539, 539, 539, 539, 539, 539, 539, 358, 539, 539, - 539, 539, 539, 539, 539, 539, 360, 362, 539, 539, - 357, 539, 361, 359, 539, 539, 539, 539, 539, 363, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 360, 362, 539, 364, 539, 539, 361, - 539, 539, 365, 539, 539, 539, 363, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 367, 539, 539, 364, 539, 368, 539, 539, 539, 365, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 369, 539, 539, 539, 367, 539, 539, - - 539, 539, 368, 539, 539, 539, 370, 539, 539, 539, - 539, 539, 539, 539, 539, 374, 539, 372, 539, 371, - 369, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 375, 539, 370, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 373, 372, 539, 371, 539, 539, 376, - 539, 539, 539, 539, 539, 539, 539, 539, 375, 539, - 539, 539, 539, 377, 539, 539, 539, 539, 539, 539, - 373, 539, 539, 539, 539, 539, 376, 378, 380, 539, - 539, 539, 539, 539, 379, 539, 381, 539, 539, 539, - 377, 539, 539, 539, 539, 539, 539, 539, 539, 382, - - 539, 539, 539, 539, 378, 380, 539, 539, 539, 539, - 539, 379, 539, 381, 539, 539, 539, 539, 539, 539, - 539, 383, 384, 539, 539, 539, 382, 539, 539, 539, - 539, 539, 539, 386, 539, 387, 539, 539, 539, 539, - 539, 539, 385, 539, 539, 539, 388, 539, 383, 384, - 539, 390, 539, 539, 539, 539, 539, 389, 539, 539, - 386, 539, 387, 539, 539, 539, 539, 539, 391, 385, - 539, 539, 539, 388, 539, 539, 539, 539, 390, 539, - 539, 539, 539, 539, 389, 539, 539, 539, 539, 539, - 539, 539, 539, 392, 539, 391, 539, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 393, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 392, 394, 539, 539, 539, 539, 395, 539, 396, 539, - 539, 539, 539, 393, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 394, 539, - 539, 539, 539, 395, 539, 396, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 397, 333, 399, 399, 399, 399, - 399, 399, 399, 399, 335, 400, 400, 400, 400, 400, - 400, 400, 400, 406, 406, 406, 406, 406, 406, 406, - - 406, 397, 402, 332, 332, 332, 332, 332, 332, 332, - 332, 404, 334, 334, 334, 334, 334, 334, 334, 334, - 407, 336, 336, 336, 336, 336, 336, 336, 336, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 405, - 539, 539, 539, 539, 539, 539, 539, 539, 408, 409, - 539, 539, 539, 539, 539, 539, 539, 412, 539, 539, - 539, 539, 539, 539, 411, 410, 405, 539, 539, 539, - 539, 539, 539, 539, 539, 408, 409, 539, 539, 539, - 539, 539, 539, 539, 412, 539, 539, 539, 539, 539, - 539, 411, 410, 539, 539, 539, 539, 539, 539, 539, - - 413, 539, 539, 539, 539, 539, 539, 539, 415, 539, - 539, 539, 539, 539, 539, 539, 416, 414, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 413, 417, 539, - 539, 539, 539, 539, 539, 415, 539, 539, 539, 539, - 539, 539, 539, 416, 414, 539, 539, 539, 539, 539, - 539, 539, 420, 418, 539, 417, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 419, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 420, - 418, 421, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 422, 539, 539, 539, 419, 539, 539, 539, - - 539, 539, 423, 539, 539, 539, 539, 539, 421, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 424, 422, - 539, 539, 539, 539, 539, 539, 539, 425, 539, 423, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 426, 539, 428, 539, 424, 539, 539, 539, 539, - 539, 539, 539, 427, 425, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 426, 539, - 428, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 427, 539, 539, 539, 539, 539, 432, 431, 539, 539, - 539, 430, 539, 539, 539, 539, 539, 433, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 434, - 539, 539, 539, 432, 431, 539, 435, 539, 430, 539, - 539, 539, 539, 539, 433, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 434, 539, 539, 539, - 539, 539, 437, 435, 539, 539, 539, 436, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 438, 539, 539, 539, 437, - 539, 539, 539, 440, 436, 539, 539, 539, 439, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 438, 539, 539, 539, 442, 539, 441, 539, - - 440, 539, 539, 539, 539, 439, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 443, - 539, 539, 539, 442, 539, 441, 539, 446, 539, 444, - 539, 539, 539, 447, 539, 539, 445, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 443, 539, 539, 539, - 539, 539, 539, 539, 446, 539, 444, 539, 448, 539, - 447, 539, 539, 445, 539, 450, 449, 539, 539, 451, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 448, 539, 452, 539, 539, - 539, 539, 450, 449, 539, 539, 451, 539, 539, 539, - - 539, 539, 539, 539, 453, 454, 401, 401, 401, 401, - 401, 401, 401, 401, 452, 404, 399, 399, 399, 399, - 399, 399, 399, 399, 539, 539, 539, 539, 539, 539, - 539, 453, 454, 407, 400, 400, 400, 400, 400, 400, - 400, 400, 539, 456, 401, 401, 401, 401, 401, 401, - 401, 401, 403, 403, 403, 403, 403, 403, 403, 403, - 539, 457, 403, 403, 403, 403, 403, 403, 403, 403, - 456, 539, 539, 539, 539, 539, 539, 539, 539, 458, - 539, 539, 539, 539, 539, 539, 539, 539, 457, 456, - 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, - - 406, 406, 406, 406, 406, 406, 458, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 456, 459, 539, 539, - 539, 539, 539, 539, 539, 457, 539, 539, 539, 539, - 460, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 461, 539, 539, 459, 539, 539, 539, 539, 539, - 539, 539, 457, 539, 463, 539, 539, 460, 539, 539, - 462, 539, 539, 539, 539, 539, 539, 539, 461, 539, - 539, 539, 539, 464, 539, 539, 539, 539, 465, 539, - 539, 463, 539, 539, 539, 539, 539, 462, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - - 464, 539, 539, 539, 539, 539, 539, 539, 466, 539, - 539, 467, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 468, - 539, 539, 539, 539, 539, 466, 539, 539, 467, 539, - 469, 539, 539, 470, 539, 539, 539, 539, 539, 471, - 539, 539, 539, 539, 539, 472, 468, 539, 473, 539, - 539, 539, 539, 539, 539, 539, 539, 469, 539, 539, - 470, 539, 539, 539, 539, 539, 471, 539, 539, 539, - 539, 539, 472, 475, 539, 473, 539, 539, 539, 539, - 539, 539, 476, 539, 539, 539, 539, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 475, 539, 539, 477, 539, 539, 478, 539, 539, 476, - 539, 539, 479, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 477, 539, 539, 478, 539, 539, 539, 539, 539, 479, - 539, 539, 480, 539, 539, 539, 539, 539, 539, 481, - 539, 539, 539, 539, 539, 482, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 480, - 539, 539, 539, 539, 484, 539, 481, 483, 539, 539, - 539, 539, 482, 539, 539, 539, 539, 485, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 484, 539, 539, 483, 539, 488, 539, 539, 487, - 539, 539, 539, 486, 485, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 488, 539, 539, 487, 539, 539, 539, - 486, 539, 491, 539, 489, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 491, - 539, 489, 539, 539, 539, 493, 539, 539, 495, 539, - 492, 494, 539, 539, 539, 539, 539, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 493, 539, 539, 495, 539, 492, 494, 539, - 539, 539, 539, 539, 539, 539, 539, 496, 497, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 498, 539, 539, 539, 499, 539, 539, - 539, 539, 539, 539, 496, 497, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 501, 539, - 498, 539, 539, 539, 499, 539, 539, 503, 539, 539, - 539, 539, 539, 502, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 501, 539, 539, 539, 539, - - 539, 539, 539, 539, 503, 504, 539, 539, 539, 505, - 502, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 506, 539, 539, 539, - 539, 539, 504, 539, 539, 509, 505, 539, 539, 507, - 508, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 506, 539, 539, 539, 539, 539, 539, - 539, 539, 509, 539, 510, 539, 507, 508, 539, 539, - 539, 539, 539, 539, 539, 539, 511, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 510, 539, 539, 515, 539, 539, 514, 539, 539, - - 513, 539, 539, 511, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 516, 539, 539, 539, 539, - 539, 515, 539, 539, 514, 539, 539, 513, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 516, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 517, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 519, - 539, 539, 539, 539, 539, 518, 539, 539, 539, 517, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 520, 539, 539, 539, 539, 539, 519, 539, 539, 539, - - 539, 539, 518, 539, 539, 539, 521, 539, 539, 539, - 539, 539, 522, 539, 539, 539, 539, 520, 539, 539, - 539, 539, 539, 539, 539, 539, 524, 539, 539, 539, - 539, 539, 539, 521, 539, 539, 539, 539, 539, 522, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 524, 539, 539, 539, 525, 539, 527, - 539, 539, 539, 526, 539, 539, 539, 539, 539, 528, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 525, 529, 527, 539, 539, 539, - 526, 539, 539, 539, 539, 539, 528, 539, 539, 539, - - 539, 539, 539, 539, 539, 539, 539, 531, 539, 539, - 539, 539, 529, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 532, - 539, 539, 539, 539, 531, 539, 539, 534, 539, 537, - 539, 539, 539, 539, 535, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 538, 532, 539, 539, 539, - 539, 539, 539, 539, 534, 539, 537, 539, 539, 539, - 539, 535, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 538, 43, 43, 43, 43, 47, 539, 47, - 47, 50, 539, 50, 50, 60, 60, 128, 539, 128, - - 128, 130, 539, 130, 130, 5, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539 + 154, 154, 154, 154, 541, 117, 541, 541, 541, 118, + 541, 541, 541, 119, 541, 541, 541, 541, 541, 159, + 541, 541, 120, 133, 541, 134, 541, 541, 135, 53, + 53, 53, 53, 53, 53, 53, 53, 59, 541, 541, + 155, 136, 137, 541, 541, 138, 139, 541, 541, 541, + 541, 541, 541, 140, 541, 141, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 155, 136, 137, + + 541, 541, 138, 139, 541, 541, 541, 156, 541, 541, + 140, 541, 141, 142, 541, 143, 541, 541, 541, 54, + 54, 54, 54, 54, 54, 54, 54, 541, 162, 541, + 541, 144, 145, 541, 156, 541, 146, 541, 541, 541, + 541, 541, 541, 147, 541, 148, 541, 541, 541, 541, + 160, 541, 541, 541, 541, 162, 541, 541, 144, 145, + 161, 541, 541, 146, 541, 541, 541, 163, 541, 541, + 147, 541, 148, 55, 541, 56, 541, 160, 541, 54, + 54, 54, 54, 54, 54, 54, 54, 161, 541, 541, + 541, 149, 137, 541, 163, 541, 139, 541, 541, 541, + + 541, 541, 541, 140, 541, 141, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 149, 137, + 541, 164, 541, 139, 541, 541, 541, 168, 541, 541, + 140, 165, 141, 55, 541, 56, 541, 541, 57, 58, + 58, 58, 58, 58, 58, 58, 58, 59, 164, 541, + 541, 61, 62, 170, 168, 63, 64, 541, 165, 541, + 541, 541, 541, 65, 541, 66, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 61, 62, + 170, 541, 63, 64, 541, 175, 541, 541, 166, 167, + 65, 541, 66, 541, 541, 541, 541, 541, 541, 151, + + 151, 151, 151, 151, 151, 151, 151, 541, 541, 541, + 541, 541, 175, 541, 541, 166, 167, 541, 541, 541, + 541, 541, 541, 541, 541, 157, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 169, 541, + 158, 541, 541, 541, 541, 176, 541, 541, 541, 541, + 177, 541, 157, 541, 541, 541, 541, 541, 541, 180, + 178, 541, 541, 541, 541, 169, 541, 158, 541, 541, + 541, 541, 176, 541, 541, 541, 541, 177, 541, 179, + 541, 541, 541, 541, 171, 541, 180, 178, 541, 172, + 541, 541, 541, 541, 173, 181, 541, 541, 541, 541, + + 541, 541, 174, 541, 541, 541, 179, 541, 541, 185, + 186, 171, 541, 541, 215, 541, 172, 182, 541, 187, + 541, 173, 181, 541, 183, 541, 541, 541, 541, 174, + 541, 541, 541, 541, 541, 541, 184, 541, 541, 541, + 541, 215, 541, 541, 182, 541, 187, 541, 541, 188, + 541, 183, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 189, 184, 541, 541, 190, 541, 541, 541, + 541, 191, 541, 541, 541, 541, 188, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 192, 189, + 195, 541, 194, 190, 541, 193, 541, 541, 191, 541, + + 196, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 192, 541, 195, 541, 194, + 541, 541, 193, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 198, 541, 541, + 541, 197, 541, 541, 541, 200, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 199, 541, 541, 541, 198, 541, 541, 203, 197, 541, + 201, 541, 200, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 204, 199, 202, 541, + 541, 541, 205, 541, 203, 206, 541, 201, 541, 541, + + 541, 541, 541, 541, 207, 541, 541, 541, 541, 541, + 208, 541, 541, 204, 541, 202, 541, 209, 541, 205, + 541, 541, 206, 541, 541, 541, 541, 210, 541, 541, + 541, 207, 211, 212, 541, 541, 541, 208, 541, 541, + 541, 541, 541, 541, 209, 214, 213, 541, 541, 541, + 541, 541, 541, 541, 210, 541, 541, 541, 541, 211, + 212, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 214, 213, 216, 541, 541, 541, 541, 541, + 541, 541, 217, 541, 541, 218, 541, 541, 541, 541, + 541, 541, 541, 541, 220, 541, 219, 541, 541, 541, + + 541, 216, 541, 221, 541, 541, 541, 541, 541, 217, + 541, 541, 218, 541, 541, 224, 541, 541, 222, 541, + 541, 220, 541, 219, 541, 227, 223, 228, 541, 541, + 221, 132, 132, 132, 132, 132, 132, 132, 132, 541, + 237, 225, 224, 541, 541, 222, 541, 541, 133, 541, + 134, 541, 541, 223, 132, 132, 132, 132, 132, 132, + 132, 132, 541, 541, 541, 541, 541, 237, 225, 229, + 229, 229, 229, 229, 229, 229, 229, 152, 152, 541, + 230, 230, 230, 230, 230, 230, 230, 230, 231, 231, + 231, 231, 231, 231, 231, 231, 232, 232, 541, 233, + + 233, 233, 233, 233, 233, 233, 233, 150, 150, 150, + 150, 150, 150, 150, 150, 234, 230, 230, 230, 230, + 230, 230, 230, 230, 133, 541, 134, 541, 541, 541, + 153, 153, 153, 153, 153, 153, 153, 153, 154, 154, + 154, 154, 154, 154, 154, 154, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 236, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 239, 242, 541, 541, 541, 541, + 240, 238, 241, 541, 541, 541, 236, 541, 243, 541, + 541, 541, 541, 541, 244, 541, 541, 541, 541, 541, + + 541, 239, 541, 541, 541, 541, 541, 240, 238, 241, + 541, 541, 541, 541, 245, 243, 541, 247, 246, 541, + 541, 244, 541, 541, 541, 541, 541, 249, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 248, 541, 541, + 541, 245, 541, 541, 247, 246, 541, 541, 541, 541, + 541, 541, 541, 541, 249, 541, 250, 541, 541, 541, + 541, 251, 541, 541, 248, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 253, 541, 541, 541, 252, + 541, 541, 541, 250, 541, 541, 541, 541, 251, 541, + 541, 541, 254, 541, 541, 255, 541, 541, 541, 256, + + 541, 541, 253, 257, 541, 541, 252, 541, 541, 541, + 260, 541, 541, 541, 541, 541, 541, 541, 258, 254, + 541, 541, 255, 541, 541, 541, 256, 541, 541, 541, + 257, 541, 259, 541, 541, 541, 541, 260, 261, 541, + 541, 541, 541, 541, 541, 258, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 259, + 541, 541, 541, 541, 541, 261, 541, 541, 541, 262, + 541, 541, 541, 541, 541, 263, 541, 541, 264, 541, + 541, 266, 541, 541, 265, 541, 541, 267, 541, 541, + 541, 541, 541, 541, 541, 541, 262, 541, 541, 541, + + 541, 541, 263, 541, 541, 264, 541, 541, 266, 270, + 541, 265, 541, 541, 269, 541, 541, 541, 541, 541, + 541, 541, 541, 268, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 271, 541, 541, 270, 541, 272, 541, + 541, 269, 541, 541, 541, 541, 541, 541, 541, 541, + 268, 541, 541, 273, 541, 274, 541, 541, 275, 541, + 271, 541, 541, 541, 541, 272, 541, 277, 541, 276, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 273, 541, 274, 541, 541, 275, 541, 541, 541, 541, + 541, 278, 541, 541, 541, 279, 276, 541, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 280, 541, 541, 278, 541, + 541, 541, 279, 541, 541, 541, 541, 541, 541, 541, + 541, 281, 541, 541, 541, 541, 541, 541, 541, 541, + 282, 541, 280, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 283, 541, 541, 541, 541, 281, 541, + 285, 541, 287, 288, 541, 541, 286, 282, 541, 541, + 290, 284, 541, 289, 541, 541, 541, 541, 541, 541, + 283, 541, 541, 541, 541, 541, 541, 285, 541, 287, + 288, 291, 541, 286, 541, 541, 541, 290, 284, 541, + + 289, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 291, 541, + 293, 541, 541, 541, 541, 541, 292, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 295, 541, 541, 541, + 541, 541, 541, 294, 296, 541, 541, 293, 541, 541, + 541, 541, 541, 292, 541, 297, 541, 541, 541, 298, + 541, 541, 541, 295, 541, 541, 541, 541, 541, 541, + 294, 296, 541, 541, 541, 299, 541, 541, 541, 541, + 541, 541, 297, 541, 541, 541, 298, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 300, 541, + + 344, 541, 299, 541, 541, 541, 541, 133, 541, 134, + 541, 541, 301, 230, 230, 230, 230, 230, 230, 230, + 230, 329, 541, 541, 541, 300, 233, 233, 233, 233, + 233, 233, 233, 233, 541, 541, 541, 541, 541, 301, + 302, 60, 60, 60, 60, 60, 60, 60, 329, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 541, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + + 327, 328, 229, 229, 229, 229, 229, 229, 229, 229, + 231, 231, 231, 231, 231, 231, 231, 231, 541, 541, + 541, 541, 541, 331, 541, 541, 227, 541, 228, 541, + 541, 332, 233, 233, 233, 233, 233, 233, 233, 233, + 333, 334, 334, 334, 334, 334, 334, 334, 334, 541, + 331, 541, 541, 541, 541, 541, 541, 541, 332, 335, + 336, 336, 336, 336, 336, 336, 336, 336, 337, 338, + 338, 338, 338, 338, 338, 338, 338, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + + 339, 541, 541, 541, 340, 541, 541, 341, 541, 541, + 541, 541, 541, 342, 541, 541, 541, 541, 541, 541, + 541, 541, 345, 541, 541, 343, 541, 339, 541, 541, + 541, 340, 541, 541, 341, 541, 541, 346, 541, 347, + 342, 541, 348, 541, 541, 541, 541, 541, 541, 345, + 541, 541, 343, 541, 541, 541, 541, 349, 541, 541, + 541, 541, 541, 541, 346, 541, 347, 541, 541, 348, + 541, 350, 541, 352, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 351, 349, 541, 541, 353, 541, 541, + 541, 541, 354, 541, 541, 541, 541, 541, 350, 541, + + 352, 541, 541, 541, 541, 541, 541, 541, 355, 541, + 351, 541, 541, 541, 353, 541, 541, 356, 357, 354, + 358, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 355, 541, 541, 541, 360, + 541, 359, 541, 541, 356, 357, 541, 358, 541, 541, + 541, 541, 361, 541, 541, 541, 541, 541, 541, 362, + 541, 541, 541, 541, 541, 541, 360, 541, 359, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 361, + 541, 541, 541, 363, 541, 541, 362, 541, 364, 541, + 365, 541, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 541, 541, 541, 366, 541, 541, 541, 541, + 363, 541, 367, 541, 541, 364, 541, 365, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 369, 541, + 541, 541, 366, 541, 370, 541, 541, 541, 541, 367, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 369, 541, 541, 541, 541, + 541, 370, 372, 541, 371, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 373, 541, 374, 541, 541, + 541, 541, 376, 541, 377, 541, 541, 541, 541, 372, + 541, 371, 541, 541, 541, 541, 541, 541, 541, 541, + + 375, 541, 373, 541, 374, 541, 541, 541, 378, 541, + 541, 377, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 375, 541, 541, + 541, 541, 541, 379, 541, 378, 541, 541, 541, 541, + 380, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 382, 541, 381, 541, 541, 541, 383, 541, 541, 541, + 379, 541, 541, 384, 541, 541, 541, 380, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 382, 541, 381, + 541, 541, 541, 383, 541, 541, 541, 541, 541, 541, + 384, 385, 541, 386, 541, 541, 541, 541, 541, 541, + + 387, 541, 541, 388, 541, 541, 541, 541, 541, 389, + 541, 541, 541, 541, 541, 541, 390, 541, 385, 541, + 386, 541, 541, 541, 541, 541, 541, 387, 541, 541, + 388, 541, 541, 541, 541, 541, 389, 391, 541, 392, + 541, 541, 541, 390, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 393, 541, 541, 541, + 541, 541, 541, 541, 391, 541, 392, 541, 541, 394, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 393, 541, 541, 541, 541, 541, 395, + 541, 541, 541, 541, 541, 541, 394, 541, 541, 541, + + 397, 541, 541, 541, 396, 541, 541, 541, 541, 541, + 541, 398, 541, 541, 541, 541, 395, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 397, 541, 541, + 541, 396, 541, 541, 541, 541, 541, 541, 398, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 399, 335, + 401, 401, 401, 401, 401, 401, 401, 401, 337, 402, + 402, 402, 402, 402, 402, 402, 402, 403, 403, 403, + 403, 403, 403, 403, 403, 399, 404, 334, 334, 334, + 334, 334, 334, 334, 334, 405, 405, 405, 405, 405, + 405, 405, 405, 406, 336, 336, 336, 336, 336, 336, + + 336, 336, 408, 408, 408, 408, 408, 408, 408, 408, + 409, 338, 338, 338, 338, 338, 338, 338, 338, 541, + 541, 407, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 410, 541, + 411, 541, 541, 541, 541, 541, 541, 541, 407, 541, + 541, 541, 541, 541, 541, 541, 413, 541, 541, 541, + 541, 414, 412, 541, 541, 410, 541, 411, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 413, 415, 541, 541, 541, 414, 412, + 541, 417, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 541, 541, 416, 541, 541, 418, 541, 541, + 541, 415, 541, 541, 541, 419, 541, 541, 417, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 416, 541, 541, 418, 541, 541, 541, 541, 541, + 541, 541, 419, 541, 541, 422, 541, 541, 541, 541, + 541, 541, 420, 541, 541, 541, 421, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 423, + 541, 541, 422, 541, 541, 541, 424, 541, 541, 420, + 425, 541, 541, 421, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 423, 541, 541, 541, + + 541, 541, 426, 424, 541, 541, 541, 425, 541, 541, + 541, 541, 427, 541, 541, 541, 541, 541, 541, 428, + 541, 541, 541, 430, 541, 429, 541, 541, 541, 426, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 427, + 541, 541, 541, 541, 541, 541, 428, 541, 541, 541, + 430, 541, 429, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 434, 541, 541, 433, 541, 432, 541, 436, + 541, 541, 435, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 437, 541, 541, 541, 541, 434, + + 541, 541, 433, 541, 432, 541, 436, 541, 541, 435, + 541, 541, 541, 541, 541, 541, 438, 541, 541, 541, + 541, 437, 541, 541, 541, 439, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 438, 541, 440, 541, 541, 541, 541, + 541, 442, 439, 541, 541, 541, 541, 441, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 443, 541, 541, + 541, 541, 440, 444, 541, 541, 541, 541, 442, 541, + 541, 541, 541, 541, 441, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 443, 541, 541, 541, 445, 541, + + 444, 541, 541, 541, 448, 446, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 447, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 445, 541, 449, 541, 541, + 541, 448, 446, 541, 541, 450, 541, 541, 541, 541, + 541, 541, 447, 451, 541, 541, 452, 541, 541, 541, + 541, 541, 541, 453, 449, 541, 541, 541, 541, 541, + 541, 541, 450, 541, 454, 541, 541, 541, 541, 541, + 451, 541, 541, 452, 541, 541, 541, 541, 541, 541, + 453, 541, 541, 541, 541, 541, 541, 455, 541, 541, + 456, 454, 406, 401, 401, 401, 401, 401, 401, 401, + + 401, 409, 402, 402, 402, 402, 402, 402, 402, 402, + 541, 541, 541, 541, 455, 541, 541, 456, 541, 541, + 458, 403, 403, 403, 403, 403, 403, 403, 403, 459, + 403, 403, 403, 403, 403, 403, 403, 403, 405, 405, + 405, 405, 405, 405, 405, 405, 541, 458, 405, 405, + 405, 405, 405, 405, 405, 405, 459, 541, 541, 541, + 541, 541, 541, 541, 541, 460, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 458, 408, 408, 408, 408, + 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, + 408, 408, 460, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 458, 461, 541, 541, 541, 541, 541, 541, + 541, 459, 541, 541, 541, 541, 462, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 463, 541, 541, + 461, 541, 541, 541, 541, 541, 541, 541, 459, 541, + 465, 541, 541, 462, 541, 541, 464, 541, 541, 541, + 541, 541, 541, 541, 463, 541, 541, 541, 541, 466, + 541, 541, 541, 541, 467, 541, 541, 465, 541, 541, + 541, 541, 541, 464, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 466, 541, 541, 541, + 541, 541, 541, 541, 468, 541, 541, 469, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 470, 541, 541, 541, 541, + 541, 468, 541, 541, 469, 541, 471, 541, 541, 472, + 541, 541, 541, 541, 541, 473, 541, 541, 541, 541, + 541, 474, 470, 541, 475, 541, 541, 541, 541, 541, + 541, 541, 541, 471, 541, 541, 472, 541, 541, 541, + 541, 541, 473, 541, 541, 541, 541, 541, 474, 477, + 541, 475, 541, 541, 541, 541, 541, 541, 478, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 477, 541, 541, 479, + + 541, 541, 480, 541, 541, 478, 541, 541, 481, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 479, 541, 541, 480, + 541, 541, 541, 541, 541, 481, 541, 541, 482, 541, + 541, 541, 541, 541, 541, 483, 541, 541, 541, 541, + 541, 484, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 482, 541, 541, 541, 541, + 486, 541, 483, 485, 541, 541, 541, 541, 484, 541, + 541, 541, 541, 487, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 486, 541, 541, + + 485, 541, 490, 541, 541, 489, 541, 541, 541, 488, + 487, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 490, + 541, 541, 489, 541, 541, 541, 488, 541, 493, 541, + 491, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 493, 541, 491, 541, 541, + 541, 495, 541, 541, 497, 541, 494, 496, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 495, 541, + + 541, 497, 541, 494, 496, 541, 541, 541, 541, 541, + 541, 541, 541, 498, 499, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 500, + 541, 541, 541, 501, 541, 541, 541, 541, 541, 541, + 498, 499, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 503, 541, 500, 541, 541, 541, + 501, 541, 541, 505, 541, 541, 541, 541, 541, 504, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 503, 541, 541, 541, 541, 541, 541, 541, 541, + 505, 506, 541, 541, 541, 507, 504, 541, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 508, 541, 541, 541, 541, 541, 506, 541, + 541, 511, 507, 541, 541, 509, 510, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 508, + 541, 541, 541, 541, 541, 541, 541, 541, 511, 541, + 512, 541, 509, 510, 541, 541, 541, 541, 541, 541, + 541, 541, 513, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 512, 541, 541, + 517, 541, 541, 516, 541, 541, 515, 541, 541, 513, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 518, 541, 541, 541, 541, 541, 517, 541, 541, + 516, 541, 541, 515, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 518, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 519, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 521, 541, 541, 541, 541, + 541, 520, 541, 541, 541, 519, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 522, 541, 541, 541, + 541, 541, 521, 541, 541, 541, 541, 541, 520, 541, + 541, 541, 523, 541, 541, 541, 541, 541, 524, 541, + + 541, 541, 541, 522, 541, 541, 541, 541, 541, 541, + 541, 541, 526, 541, 541, 541, 541, 541, 541, 523, + 541, 541, 541, 541, 541, 524, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 526, + 541, 541, 541, 527, 541, 529, 541, 541, 541, 528, + 541, 541, 541, 541, 541, 530, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 527, 531, 529, 541, 541, 541, 528, 541, 541, 541, + 541, 541, 530, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 533, 541, 541, 541, 541, 531, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 534, 541, 541, 541, 541, + 533, 541, 541, 536, 541, 539, 541, 541, 541, 541, + 537, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 540, 534, 541, 541, 541, 541, 541, 541, 541, + 536, 541, 539, 541, 541, 541, 541, 537, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 540, 43, + 43, 43, 43, 47, 541, 47, 47, 50, 541, 50, + 50, 60, 60, 128, 541, 128, 128, 130, 541, 130, + 130, 5, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541 } ; -static yyconst flex_int16_t yy_chk[4381] = +static yyconst flex_int16_t yy_chk[4367] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1066,14 +1066,14 @@ static yyconst flex_int16_t yy_chk[4381] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, - 14, 15, 557, 15, 556, 555, 15, 15, 15, 15, - - 15, 15, 15, 15, 15, 15, 16, 554, 16, 15, - 15, 16, 41, 15, 15, 151, 265, 25, 366, 25, - 16, 15, 25, 15, 474, 25, 553, 552, 551, 550, - 549, 25, 548, 16, 16, 547, 15, 15, 16, 41, - 15, 15, 151, 265, 19, 366, 19, 542, 15, 19, - 15, 474, 429, 128, 50, 47, 45, 42, 19, 19, + 14, 15, 559, 15, 558, 557, 15, 15, 15, 15, + + 15, 15, 15, 15, 15, 15, 16, 556, 16, 15, + 15, 16, 41, 15, 15, 151, 267, 25, 368, 25, + 16, 15, 25, 15, 476, 25, 555, 554, 553, 552, + 551, 25, 550, 16, 16, 549, 15, 15, 16, 41, + 15, 15, 151, 267, 19, 368, 19, 544, 15, 19, + 15, 476, 431, 128, 50, 47, 45, 42, 19, 19, 16, 16, 12, 19, 10, 16, 17, 19, 17, 9, 32, 17, 32, 17, 22, 32, 22, 7, 5, 22, 17, 17, 4, 3, 32, 17, 19, 0, 22, 22, @@ -1152,392 +1152,391 @@ static yyconst flex_int16_t yy_chk[4381] = 69, 84, 0, 0, 87, 83, 87, 0, 85, 87, 84, 0, 69, 0, 0, 0, 0, 0, 87, 87, 85, 86, 0, 86, 0, 79, 86, 69, 81, 88, - 81, 88, 83, 81, 88, 86, 91, 84, 91, 86, - 0, 91, 81, 88, 81, 0, 87, 85, 0, 81, - 91, 0, 0, 0, 81, 88, 89, 0, 89, 0, - - 0, 89, 81, 90, 91, 90, 86, 0, 90, 0, - 89, 81, 0, 90, 90, 89, 81, 90, 92, 0, - 92, 81, 88, 92, 0, 93, 0, 93, 0, 81, - 93, 91, 92, 94, 89, 94, 0, 0, 94, 93, - 0, 95, 89, 95, 92, 0, 95, 94, 0, 0, - 0, 96, 0, 96, 93, 95, 96, 0, 98, 94, - 98, 89, 95, 98, 97, 96, 97, 0, 0, 97, - 0, 92, 98, 98, 99, 0, 99, 0, 97, 99, - 0, 93, 101, 96, 101, 0, 94, 101, 99, 95, - 0, 99, 97, 100, 0, 100, 101, 0, 100, 100, - - 98, 102, 0, 102, 0, 0, 102, 100, 0, 103, - 96, 103, 0, 0, 103, 102, 0, 0, 99, 97, - 105, 101, 105, 103, 0, 105, 0, 0, 0, 102, - 107, 0, 107, 0, 105, 107, 108, 0, 108, 0, - 105, 108, 0, 0, 107, 103, 0, 0, 101, 109, - 108, 109, 0, 0, 109, 110, 102, 110, 107, 111, - 110, 111, 0, 109, 111, 0, 0, 105, 109, 110, - 0, 0, 103, 111, 0, 108, 0, 112, 110, 112, - 0, 110, 112, 0, 113, 107, 113, 109, 111, 113, - 0, 112, 114, 0, 114, 109, 0, 114, 113, 0, - - 0, 0, 108, 0, 0, 110, 114, 115, 110, 115, - 113, 112, 115, 114, 109, 111, 0, 116, 114, 116, - 0, 115, 116, 0, 0, 117, 0, 117, 0, 0, - 117, 116, 0, 0, 0, 0, 0, 113, 112, 117, - 114, 0, 115, 0, 0, 114, 117, 116, 118, 119, - 118, 119, 0, 118, 119, 0, 120, 0, 120, 0, - 0, 120, 118, 119, 0, 0, 121, 0, 121, 115, - 120, 121, 0, 117, 116, 119, 122, 0, 122, 0, - 121, 122, 0, 0, 0, 0, 118, 123, 121, 123, - 122, 120, 123, 0, 122, 124, 0, 124, 0, 121, - - 124, 123, 119, 0, 123, 0, 125, 0, 125, 124, - 0, 125, 0, 118, 0, 121, 0, 0, 120, 123, - 125, 122, 0, 0, 125, 126, 121, 126, 124, 0, - 126, 123, 0, 159, 0, 159, 0, 0, 159, 126, - 0, 0, 0, 155, 159, 155, 123, 159, 155, 0, - 0, 125, 0, 0, 132, 124, 132, 155, 126, 0, - 132, 132, 132, 132, 132, 132, 132, 132, 135, 155, - 135, 0, 0, 0, 135, 135, 135, 135, 135, 135, - 135, 135, 0, 0, 0, 126, 136, 136, 136, 136, - 136, 136, 136, 136, 137, 137, 155, 137, 137, 137, - - 137, 137, 137, 137, 137, 138, 138, 138, 138, 138, - 138, 138, 138, 145, 145, 0, 145, 145, 145, 145, - 145, 145, 145, 145, 150, 150, 150, 150, 150, 150, - 150, 150, 150, 152, 152, 152, 152, 152, 152, 152, - 152, 153, 0, 153, 0, 0, 0, 153, 153, 153, - 153, 153, 153, 153, 153, 154, 154, 154, 154, 154, - 154, 154, 154, 156, 157, 156, 157, 0, 156, 157, - 158, 0, 158, 0, 0, 158, 154, 156, 157, 0, - 160, 161, 160, 161, 158, 160, 161, 163, 164, 163, - 164, 157, 163, 164, 160, 161, 0, 157, 156, 158, - - 0, 163, 164, 154, 161, 160, 162, 167, 162, 167, - 0, 162, 167, 0, 164, 163, 0, 0, 157, 0, - 162, 167, 0, 162, 157, 156, 158, 0, 0, 0, - 0, 161, 160, 166, 165, 166, 165, 167, 166, 165, - 0, 164, 163, 0, 168, 0, 168, 166, 165, 168, - 162, 165, 169, 0, 169, 0, 0, 169, 168, 0, - 0, 0, 166, 0, 167, 170, 169, 170, 0, 171, - 170, 171, 168, 0, 171, 0, 0, 0, 165, 170, - 0, 0, 0, 171, 0, 169, 172, 170, 172, 166, - 0, 172, 173, 0, 173, 0, 174, 173, 174, 168, - - 172, 174, 0, 175, 171, 175, 173, 0, 175, 0, - 174, 173, 169, 0, 170, 174, 0, 175, 172, 177, - 176, 177, 176, 0, 177, 176, 0, 178, 0, 178, - 175, 171, 178, 177, 176, 179, 0, 179, 173, 0, - 179, 178, 174, 176, 0, 172, 180, 0, 180, 179, - 178, 180, 0, 177, 181, 0, 181, 175, 0, 181, - 180, 184, 182, 184, 182, 184, 184, 182, 181, 0, - 176, 0, 0, 0, 180, 184, 182, 178, 0, 183, - 177, 183, 0, 0, 183, 0, 0, 181, 182, 185, - 186, 185, 186, 183, 185, 186, 0, 187, 183, 187, - - 0, 180, 187, 185, 186, 188, 0, 188, 0, 0, - 188, 187, 187, 0, 181, 182, 0, 0, 189, 188, - 189, 188, 0, 189, 186, 183, 0, 0, 190, 191, - 190, 191, 189, 190, 191, 192, 0, 192, 0, 187, - 192, 189, 190, 191, 0, 0, 0, 0, 188, 192, - 190, 186, 193, 194, 193, 194, 0, 193, 194, 0, - 0, 0, 191, 0, 192, 0, 193, 194, 189, 195, - 0, 195, 0, 193, 195, 195, 196, 190, 196, 194, - 197, 196, 197, 195, 0, 197, 0, 0, 0, 191, - 196, 192, 0, 198, 197, 198, 0, 0, 198, 197, - - 193, 0, 0, 199, 0, 199, 194, 198, 199, 200, - 0, 200, 198, 0, 200, 0, 201, 199, 201, 0, - 202, 201, 202, 200, 0, 202, 197, 200, 0, 0, - 201, 203, 0, 203, 202, 0, 203, 0, 204, 198, - 204, 0, 205, 204, 205, 203, 0, 205, 0, 201, - 203, 0, 204, 0, 200, 206, 205, 206, 0, 207, - 206, 207, 0, 0, 207, 0, 204, 0, 0, 206, - 0, 0, 0, 207, 207, 207, 201, 203, 208, 206, - 208, 205, 209, 208, 209, 206, 210, 209, 210, 0, - 0, 210, 208, 204, 0, 0, 209, 208, 0, 0, - - 210, 207, 207, 0, 0, 210, 206, 0, 205, 209, - 0, 211, 206, 211, 0, 212, 211, 212, 0, 0, - 212, 213, 0, 213, 208, 211, 213, 0, 214, 212, - 214, 0, 210, 214, 212, 213, 209, 0, 0, 215, - 0, 215, 214, 211, 215, 216, 217, 216, 217, 0, - 216, 217, 218, 215, 218, 0, 0, 218, 215, 216, - 217, 212, 214, 219, 216, 219, 218, 0, 219, 217, - 211, 218, 0, 0, 220, 0, 220, 219, 219, 220, - 0, 221, 0, 221, 0, 215, 221, 0, 220, 214, - 0, 216, 224, 0, 224, 221, 217, 224, 218, 259, - - 0, 259, 0, 0, 259, 219, 224, 0, 220, 0, - 0, 0, 0, 259, 221, 0, 223, 0, 223, 0, - 0, 223, 231, 231, 231, 231, 231, 231, 231, 231, - 223, 0, 0, 0, 0, 220, 0, 0, 0, 0, - 0, 221, 222, 222, 222, 222, 222, 222, 222, 222, - 223, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 223, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - - 222, 222, 222, 222, 228, 228, 228, 228, 228, 228, - 228, 228, 331, 331, 331, 331, 331, 331, 331, 331, - 229, 0, 229, 0, 0, 228, 229, 229, 229, 229, - 229, 229, 229, 229, 230, 230, 230, 230, 230, 230, - 230, 230, 233, 233, 233, 233, 233, 233, 233, 233, - 233, 232, 228, 232, 0, 230, 0, 232, 232, 232, - 232, 232, 232, 232, 232, 234, 234, 234, 234, 234, - 234, 234, 234, 234, 333, 333, 333, 333, 333, 333, - 333, 333, 230, 235, 235, 235, 235, 235, 235, 235, - 235, 235, 236, 237, 236, 237, 0, 236, 237, 238, - - 0, 238, 0, 240, 238, 240, 236, 237, 240, 239, - 0, 239, 0, 238, 239, 236, 0, 240, 0, 237, - 0, 0, 238, 239, 241, 0, 241, 0, 239, 241, - 241, 242, 0, 242, 0, 0, 242, 0, 241, 0, - 240, 0, 236, 0, 0, 242, 237, 0, 243, 238, - 243, 0, 242, 243, 244, 239, 244, 0, 246, 244, - 246, 0, 243, 246, 245, 0, 245, 240, 244, 245, - 0, 0, 246, 0, 246, 0, 243, 244, 245, 242, - 0, 247, 245, 247, 0, 248, 247, 248, 0, 0, - 248, 249, 0, 249, 0, 247, 249, 0, 0, 248, - - 0, 246, 0, 243, 244, 249, 249, 247, 250, 245, - 250, 0, 0, 250, 0, 0, 251, 248, 251, 0, - 249, 251, 250, 0, 0, 0, 250, 0, 0, 0, - 251, 0, 0, 249, 247, 0, 252, 253, 252, 253, - 0, 252, 253, 0, 248, 0, 0, 249, 0, 251, - 252, 253, 254, 250, 254, 0, 0, 254, 253, 255, - 0, 255, 252, 256, 255, 256, 254, 257, 256, 257, - 0, 254, 257, 255, 0, 0, 251, 256, 0, 0, - 256, 257, 0, 0, 0, 253, 258, 0, 258, 252, - 0, 258, 260, 255, 260, 0, 257, 260, 254, 261, - - 258, 261, 0, 0, 261, 0, 260, 256, 0, 0, - 262, 0, 262, 261, 0, 262, 258, 261, 0, 0, - 255, 0, 260, 257, 262, 0, 0, 0, 263, 262, - 263, 0, 0, 263, 264, 0, 264, 0, 0, 264, - 0, 0, 263, 258, 261, 266, 263, 266, 264, 260, - 266, 0, 264, 267, 0, 267, 262, 0, 267, 266, - 268, 0, 268, 0, 269, 268, 269, 267, 0, 269, - 267, 0, 0, 263, 268, 268, 0, 0, 269, 264, - 270, 271, 270, 271, 0, 270, 271, 272, 0, 272, - 0, 0, 272, 269, 270, 271, 0, 267, 273, 0, - - 273, 272, 268, 273, 0, 0, 270, 0, 274, 275, - 274, 275, 273, 274, 275, 275, 276, 273, 276, 272, - 269, 276, 274, 275, 277, 0, 277, 0, 0, 277, - 276, 276, 0, 270, 278, 0, 278, 0, 277, 278, - 279, 0, 279, 274, 273, 279, 272, 0, 278, 278, - 281, 280, 281, 280, 279, 281, 280, 282, 276, 282, - 0, 0, 282, 279, 281, 280, 0, 283, 0, 283, - 274, 282, 283, 0, 0, 0, 278, 280, 282, 0, - 284, 283, 284, 0, 281, 284, 283, 285, 0, 285, - 279, 0, 285, 286, 284, 286, 0, 0, 286, 284, - - 0, 285, 0, 0, 280, 282, 0, 286, 0, 0, - 287, 281, 287, 283, 288, 287, 288, 0, 289, 288, - 289, 285, 286, 289, 287, 291, 284, 291, 288, 290, - 291, 290, 289, 288, 290, 289, 292, 0, 292, 291, - 0, 292, 287, 290, 0, 0, 290, 0, 285, 286, - 292, 292, 0, 293, 0, 293, 0, 291, 293, 0, - 288, 294, 289, 294, 0, 0, 294, 293, 292, 287, - 0, 0, 295, 290, 295, 294, 0, 295, 292, 0, - 296, 0, 296, 0, 291, 296, 295, 297, 0, 297, - 0, 0, 297, 295, 296, 292, 0, 298, 300, 298, - - 300, 297, 298, 300, 0, 299, 296, 299, 0, 0, - 299, 298, 300, 301, 0, 301, 0, 0, 301, 299, - 295, 297, 0, 0, 0, 0, 298, 301, 299, 302, - 303, 302, 303, 296, 302, 303, 304, 305, 304, 305, - 0, 304, 305, 302, 303, 0, 0, 306, 297, 306, - 304, 305, 306, 298, 307, 299, 307, 0, 308, 307, - 308, 306, 309, 308, 309, 0, 0, 309, 307, 310, - 0, 310, 308, 311, 310, 311, 309, 312, 311, 312, - 0, 0, 312, 310, 313, 0, 313, 311, 314, 313, - 314, 312, 315, 314, 315, 0, 0, 315, 313, 316, - - 0, 316, 314, 317, 316, 317, 315, 318, 317, 318, - 0, 0, 318, 316, 319, 0, 319, 317, 320, 319, - 320, 318, 321, 320, 321, 0, 0, 321, 319, 322, - 0, 322, 320, 323, 322, 323, 321, 324, 323, 324, - 0, 0, 324, 322, 325, 0, 325, 323, 326, 325, - 326, 324, 327, 326, 327, 0, 0, 327, 325, 341, - 0, 341, 326, 0, 341, 0, 327, 0, 0, 0, - 0, 0, 0, 341, 327, 329, 329, 329, 329, 329, - 329, 329, 329, 329, 330, 330, 330, 330, 330, 330, - 330, 330, 330, 335, 335, 335, 335, 335, 335, 335, - - 335, 327, 332, 332, 332, 332, 332, 332, 332, 332, - 332, 334, 334, 334, 334, 334, 334, 334, 334, 334, - 336, 336, 336, 336, 336, 336, 336, 336, 336, 337, - 338, 337, 338, 0, 337, 338, 339, 0, 339, 334, - 340, 339, 340, 337, 338, 340, 0, 0, 336, 337, - 339, 0, 0, 342, 340, 342, 0, 340, 342, 0, - 0, 0, 0, 0, 339, 338, 334, 342, 343, 344, - 343, 344, 0, 343, 344, 336, 337, 0, 0, 0, - 0, 0, 343, 344, 340, 345, 0, 345, 0, 0, - 345, 339, 338, 346, 0, 346, 0, 0, 346, 345, - - 343, 347, 0, 347, 0, 0, 347, 346, 346, 348, - 0, 348, 0, 0, 348, 347, 347, 345, 0, 349, - 350, 349, 350, 348, 349, 350, 0, 343, 348, 0, - 0, 0, 0, 349, 350, 346, 351, 352, 351, 352, - 0, 351, 352, 347, 345, 0, 0, 0, 0, 0, - 351, 352, 352, 350, 353, 348, 353, 0, 354, 353, - 354, 0, 355, 354, 355, 0, 0, 355, 353, 351, - 0, 0, 354, 356, 0, 356, 355, 0, 356, 352, - 350, 354, 0, 357, 358, 357, 358, 356, 357, 358, - 0, 0, 356, 0, 0, 0, 351, 357, 358, 359, - - 0, 359, 357, 0, 359, 0, 0, 360, 354, 360, - 0, 0, 360, 359, 0, 0, 0, 0, 358, 356, - 361, 360, 361, 0, 0, 361, 0, 359, 362, 357, - 362, 0, 0, 362, 361, 363, 0, 363, 0, 0, - 363, 360, 362, 362, 0, 358, 364, 0, 364, 363, - 365, 364, 365, 361, 359, 365, 0, 367, 0, 367, - 364, 368, 367, 368, 365, 0, 368, 369, 360, 369, - 362, 367, 369, 0, 370, 368, 370, 0, 0, 370, - 361, 369, 0, 0, 0, 0, 369, 368, 370, 0, - 371, 367, 371, 0, 372, 371, 372, 370, 373, 372, - - 373, 0, 0, 373, 371, 374, 0, 374, 372, 371, - 374, 0, 373, 369, 368, 375, 373, 375, 367, 374, - 375, 376, 0, 376, 370, 377, 376, 377, 0, 375, - 377, 0, 378, 0, 378, 376, 371, 378, 0, 377, - 0, 0, 377, 373, 0, 0, 378, 375, 379, 380, - 379, 380, 0, 379, 380, 0, 381, 0, 381, 0, - 0, 381, 379, 380, 0, 378, 382, 0, 382, 377, - 381, 382, 0, 381, 375, 0, 0, 383, 380, 383, - 382, 384, 383, 384, 0, 385, 384, 385, 0, 0, - 385, 383, 378, 0, 0, 384, 383, 0, 382, 385, - - 381, 386, 387, 386, 387, 380, 386, 387, 388, 0, - 388, 0, 389, 388, 389, 386, 387, 389, 0, 384, - 0, 0, 388, 383, 0, 382, 389, 388, 0, 386, - 390, 0, 390, 389, 0, 390, 387, 391, 0, 391, - 0, 0, 391, 392, 390, 392, 384, 0, 392, 0, - 393, 391, 393, 0, 388, 393, 386, 392, 390, 0, - 389, 0, 0, 387, 393, 392, 391, 0, 394, 393, - 394, 0, 395, 394, 395, 0, 396, 395, 396, 0, - 0, 396, 394, 0, 0, 390, 395, 394, 0, 397, - 396, 397, 392, 391, 397, 0, 393, 0, 0, 0, - - 0, 0, 0, 397, 395, 396, 401, 401, 401, 401, - 401, 401, 401, 401, 394, 399, 399, 399, 399, 399, - 399, 399, 399, 399, 0, 0, 0, 0, 0, 0, - 0, 395, 396, 400, 400, 400, 400, 400, 400, 400, - 400, 400, 0, 399, 402, 402, 402, 402, 402, 402, - 402, 402, 403, 403, 403, 403, 403, 403, 403, 403, - 0, 400, 404, 404, 404, 404, 404, 404, 404, 404, - 399, 405, 408, 405, 408, 0, 405, 408, 0, 403, - 0, 0, 0, 0, 0, 405, 408, 0, 400, 404, - 406, 406, 406, 406, 406, 406, 406, 406, 407, 407, - - 407, 407, 407, 407, 407, 407, 403, 409, 410, 409, - 410, 0, 409, 410, 0, 0, 404, 406, 411, 0, - 411, 409, 410, 411, 412, 407, 412, 0, 0, 412, - 409, 413, 411, 413, 0, 0, 413, 414, 412, 414, - 0, 410, 414, 0, 406, 413, 0, 0, 415, 0, - 415, 414, 407, 415, 414, 0, 416, 409, 416, 0, - 413, 416, 415, 0, 0, 0, 0, 0, 410, 417, - 416, 417, 0, 416, 417, 418, 0, 418, 417, 0, - 418, 414, 0, 417, 0, 0, 0, 413, 419, 418, - 419, 0, 420, 419, 420, 0, 421, 420, 421, 0, - - 416, 421, 419, 0, 0, 0, 420, 422, 418, 422, - 421, 419, 422, 423, 424, 423, 424, 0, 423, 424, - 0, 422, 0, 0, 0, 0, 0, 423, 424, 421, - 0, 425, 426, 425, 426, 418, 425, 426, 419, 427, - 422, 427, 0, 424, 427, 425, 426, 0, 0, 425, - 0, 0, 428, 427, 428, 426, 421, 428, 427, 431, - 430, 431, 430, 0, 431, 430, 428, 422, 0, 0, - 424, 0, 0, 431, 430, 432, 425, 432, 0, 433, - 432, 433, 426, 430, 433, 427, 434, 0, 434, 432, - 0, 434, 432, 433, 0, 0, 0, 435, 0, 435, - - 434, 436, 435, 436, 0, 0, 436, 437, 0, 437, - 430, 435, 437, 433, 0, 436, 435, 0, 438, 432, - 438, 437, 437, 438, 439, 440, 439, 440, 0, 439, - 440, 441, 438, 441, 0, 0, 441, 0, 439, 440, - 433, 0, 442, 435, 442, 441, 443, 442, 443, 437, - 0, 443, 439, 444, 0, 444, 442, 0, 444, 440, - 443, 445, 0, 445, 0, 441, 445, 444, 446, 447, - 446, 447, 0, 446, 447, 445, 448, 0, 448, 439, - 0, 448, 446, 447, 447, 0, 440, 444, 0, 449, - 448, 449, 441, 450, 449, 450, 0, 448, 450, 451, - - 0, 451, 0, 449, 451, 0, 0, 450, 0, 0, - 0, 447, 0, 451, 444, 452, 451, 452, 0, 450, - 452, 0, 0, 449, 448, 453, 454, 453, 454, 452, - 453, 454, 0, 460, 0, 460, 0, 0, 460, 453, - 454, 0, 0, 451, 0, 0, 450, 460, 0, 0, - 449, 461, 460, 461, 454, 462, 461, 462, 0, 463, - 462, 463, 0, 0, 463, 461, 464, 0, 464, 462, - 465, 464, 465, 463, 0, 465, 0, 0, 0, 460, - 464, 454, 0, 0, 465, 463, 0, 466, 465, 466, - 462, 464, 466, 467, 468, 467, 468, 0, 467, 468, - - 469, 466, 469, 0, 0, 469, 0, 467, 468, 0, - 0, 470, 463, 470, 469, 465, 470, 462, 464, 471, - 0, 471, 0, 0, 471, 470, 0, 467, 468, 0, - 472, 0, 472, 471, 473, 472, 473, 0, 0, 473, - 0, 0, 0, 470, 472, 0, 0, 472, 473, 0, - 0, 475, 0, 475, 467, 468, 475, 476, 477, 476, - 477, 0, 476, 477, 478, 475, 478, 0, 475, 478, - 470, 476, 477, 0, 472, 0, 0, 477, 478, 479, - 480, 479, 480, 476, 479, 480, 481, 482, 481, 482, - 0, 481, 482, 479, 480, 475, 0, 483, 0, 483, - - 481, 482, 483, 0, 477, 479, 0, 0, 0, 481, - 476, 483, 0, 484, 485, 484, 485, 0, 484, 485, - 486, 0, 486, 0, 0, 486, 482, 484, 485, 0, - 0, 0, 479, 0, 486, 486, 481, 0, 0, 484, - 485, 487, 488, 487, 488, 0, 487, 488, 0, 489, - 0, 489, 0, 482, 489, 487, 488, 0, 0, 0, - 0, 0, 486, 489, 487, 0, 484, 485, 491, 492, - 491, 492, 0, 491, 492, 493, 488, 493, 0, 494, - 493, 494, 491, 492, 494, 495, 0, 495, 0, 493, - 495, 487, 0, 494, 493, 0, 496, 492, 496, 495, - - 491, 496, 497, 488, 497, 0, 498, 497, 498, 0, - 496, 498, 499, 0, 499, 496, 497, 499, 0, 0, - 498, 493, 0, 501, 492, 501, 499, 491, 501, 502, - 503, 502, 503, 0, 502, 503, 504, 501, 504, 0, - 0, 504, 496, 502, 503, 0, 505, 0, 505, 0, - 504, 505, 502, 506, 507, 506, 507, 0, 506, 507, - 505, 0, 0, 0, 0, 0, 0, 506, 507, 507, - 0, 508, 509, 508, 509, 505, 508, 509, 510, 502, - 510, 0, 0, 510, 0, 508, 509, 0, 0, 511, - 508, 511, 510, 513, 511, 513, 507, 0, 513, 0, - - 0, 0, 505, 511, 0, 0, 509, 513, 514, 515, - 514, 515, 510, 514, 515, 0, 516, 508, 516, 0, - 0, 516, 514, 515, 0, 0, 514, 517, 0, 517, - 516, 0, 517, 509, 0, 518, 0, 518, 0, 510, - 518, 517, 519, 0, 519, 0, 520, 519, 520, 518, - 521, 520, 521, 514, 0, 521, 519, 517, 0, 519, - 520, 0, 0, 518, 521, 524, 522, 524, 522, 521, - 524, 522, 0, 525, 0, 525, 0, 0, 525, 524, - 522, 0, 0, 0, 517, 522, 519, 525, 0, 526, - 518, 526, 0, 0, 526, 527, 521, 527, 0, 528, - - 527, 528, 0, 526, 528, 0, 529, 525, 529, 527, - 0, 529, 522, 528, 531, 0, 531, 0, 0, 531, - 529, 532, 534, 532, 534, 0, 532, 534, 531, 527, - 0, 0, 0, 0, 525, 532, 534, 531, 535, 534, - 535, 0, 0, 535, 532, 537, 538, 537, 538, 0, - 537, 538, 535, 0, 0, 535, 527, 0, 0, 537, - 538, 0, 0, 0, 531, 0, 534, 0, 0, 0, - 0, 532, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 535, 540, 540, 540, 540, 541, 0, 541, - 541, 543, 0, 543, 543, 544, 544, 545, 0, 545, - - 545, 546, 0, 546, 546, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539, - 539, 539, 539, 539, 539, 539, 539, 539, 539, 539 + 81, 88, 83, 81, 88, 86, 118, 84, 118, 86, + 0, 118, 81, 88, 81, 0, 87, 85, 0, 81, + 118, 91, 0, 91, 81, 88, 91, 0, 89, 90, + + 89, 90, 81, 89, 90, 91, 86, 0, 0, 90, + 90, 81, 89, 90, 118, 0, 81, 89, 0, 91, + 0, 81, 88, 92, 89, 92, 0, 0, 92, 81, + 0, 0, 0, 93, 0, 93, 89, 92, 93, 0, + 94, 118, 94, 0, 89, 94, 91, 93, 0, 92, + 95, 89, 95, 0, 94, 95, 96, 0, 96, 0, + 0, 96, 93, 89, 95, 0, 94, 97, 0, 97, + 96, 95, 97, 99, 0, 99, 92, 98, 99, 98, + 0, 97, 98, 0, 0, 0, 0, 99, 96, 93, + 99, 98, 98, 94, 100, 97, 100, 0, 95, 100, + + 100, 0, 101, 0, 101, 0, 0, 101, 100, 102, + 0, 102, 0, 0, 102, 96, 101, 99, 0, 98, + 0, 0, 97, 102, 103, 105, 103, 105, 0, 103, + 105, 0, 0, 0, 0, 0, 0, 102, 103, 105, + 0, 101, 107, 0, 107, 105, 0, 107, 109, 108, + 109, 108, 0, 109, 108, 0, 107, 0, 0, 0, + 103, 0, 109, 108, 102, 0, 0, 109, 101, 110, + 107, 110, 105, 0, 110, 111, 112, 111, 112, 0, + 111, 112, 0, 110, 0, 0, 109, 103, 108, 111, + 112, 113, 110, 113, 109, 110, 113, 107, 115, 0, + + 115, 0, 0, 115, 111, 113, 114, 0, 114, 0, + 112, 114, 115, 109, 0, 108, 116, 113, 116, 110, + 114, 116, 110, 0, 117, 0, 117, 114, 0, 117, + 116, 111, 114, 115, 0, 0, 0, 112, 117, 0, + 0, 0, 0, 0, 113, 117, 116, 120, 119, 120, + 119, 0, 120, 119, 114, 0, 0, 0, 0, 114, + 115, 120, 119, 121, 0, 121, 0, 0, 121, 0, + 0, 0, 117, 116, 119, 0, 122, 121, 122, 0, + 0, 122, 120, 0, 0, 121, 123, 0, 123, 0, + 122, 123, 0, 124, 122, 124, 121, 125, 124, 125, + + 123, 119, 125, 123, 0, 0, 0, 124, 126, 120, + 126, 125, 121, 126, 155, 125, 155, 0, 123, 155, + 0, 122, 126, 121, 0, 132, 124, 132, 155, 0, + 123, 132, 132, 132, 132, 132, 132, 132, 132, 0, + 155, 126, 125, 0, 0, 123, 0, 0, 135, 0, + 135, 0, 0, 124, 135, 135, 135, 135, 135, 135, + 135, 135, 0, 0, 0, 0, 0, 155, 126, 136, + 136, 136, 136, 136, 136, 136, 136, 137, 137, 0, + 137, 137, 137, 137, 137, 137, 137, 137, 138, 138, + 138, 138, 138, 138, 138, 138, 145, 145, 0, 145, + + 145, 145, 145, 145, 145, 145, 145, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 152, 152, 152, 152, + 152, 152, 152, 152, 153, 0, 153, 0, 0, 0, + 153, 153, 153, 153, 153, 153, 153, 153, 154, 154, + 154, 154, 154, 154, 154, 154, 156, 157, 156, 157, + 0, 156, 157, 158, 0, 158, 0, 0, 158, 154, + 156, 157, 0, 160, 159, 160, 159, 158, 160, 159, + 0, 161, 0, 161, 157, 159, 161, 160, 159, 0, + 157, 156, 158, 0, 0, 161, 154, 0, 160, 0, + 163, 164, 163, 164, 161, 163, 164, 162, 166, 162, + + 166, 157, 162, 166, 163, 164, 0, 157, 156, 158, + 0, 162, 166, 0, 162, 160, 0, 164, 163, 0, + 165, 161, 165, 0, 0, 165, 167, 166, 167, 0, + 0, 167, 0, 168, 165, 168, 0, 165, 168, 0, + 167, 162, 0, 0, 164, 163, 169, 168, 169, 0, + 0, 169, 0, 170, 166, 170, 167, 171, 170, 171, + 169, 168, 171, 172, 165, 172, 0, 170, 172, 0, + 0, 171, 0, 0, 0, 170, 177, 172, 177, 169, + 173, 177, 173, 167, 174, 173, 174, 0, 168, 174, + 177, 175, 171, 175, 173, 172, 175, 0, 174, 173, + + 0, 0, 170, 174, 0, 175, 169, 0, 0, 176, + 177, 176, 0, 0, 176, 178, 0, 178, 175, 171, + 178, 0, 172, 176, 0, 0, 173, 0, 0, 178, + 174, 0, 176, 0, 179, 0, 179, 177, 178, 179, + 0, 180, 181, 180, 181, 175, 180, 181, 179, 0, + 0, 0, 182, 0, 182, 180, 181, 182, 183, 176, + 183, 0, 184, 183, 184, 178, 182, 184, 186, 180, + 186, 0, 183, 186, 0, 181, 184, 0, 182, 0, + 0, 184, 186, 185, 183, 185, 0, 185, 185, 187, + 0, 187, 0, 189, 187, 189, 180, 185, 189, 188, + + 0, 188, 181, 187, 188, 182, 0, 189, 184, 189, + 190, 183, 190, 188, 188, 190, 191, 0, 191, 0, + 192, 191, 192, 187, 190, 192, 193, 0, 193, 0, + 191, 193, 0, 190, 192, 0, 189, 194, 191, 194, + 193, 188, 194, 195, 0, 195, 0, 0, 195, 0, + 187, 194, 0, 192, 197, 193, 197, 195, 194, 197, + 190, 196, 0, 196, 0, 191, 196, 196, 197, 195, + 0, 0, 198, 0, 198, 196, 199, 198, 199, 0, + 192, 199, 193, 0, 0, 194, 198, 200, 0, 200, + 199, 198, 200, 0, 0, 199, 195, 201, 202, 201, + + 202, 200, 201, 202, 0, 203, 0, 203, 0, 0, + 203, 201, 202, 0, 0, 201, 0, 0, 198, 203, + 0, 204, 199, 204, 0, 205, 204, 205, 0, 0, + 205, 202, 206, 0, 206, 204, 207, 206, 207, 205, + 204, 207, 201, 210, 0, 210, 206, 208, 210, 208, + 207, 0, 208, 205, 209, 0, 209, 210, 202, 209, + 207, 208, 208, 208, 0, 0, 207, 204, 209, 0, + 210, 206, 211, 209, 211, 0, 0, 211, 0, 0, + 205, 0, 0, 0, 0, 0, 211, 207, 0, 208, + 208, 211, 0, 207, 212, 0, 212, 210, 206, 212, + + 209, 213, 214, 213, 214, 0, 213, 214, 212, 215, + 0, 215, 0, 0, 215, 213, 214, 216, 211, 216, + 213, 0, 216, 215, 0, 217, 212, 217, 0, 0, + 217, 216, 218, 0, 218, 0, 216, 218, 0, 217, + 219, 0, 219, 215, 217, 219, 218, 213, 0, 0, + 0, 0, 0, 212, 219, 218, 0, 0, 0, 219, + 220, 0, 220, 216, 221, 220, 221, 0, 0, 221, + 215, 217, 0, 0, 220, 220, 0, 0, 221, 222, + 0, 222, 218, 225, 222, 225, 219, 224, 225, 224, + 0, 0, 224, 222, 242, 0, 242, 225, 221, 242, + + 242, 224, 220, 0, 0, 0, 0, 230, 242, 230, + 0, 0, 222, 230, 230, 230, 230, 230, 230, 230, + 230, 224, 0, 0, 0, 221, 232, 232, 232, 232, + 232, 232, 232, 232, 0, 0, 0, 0, 0, 222, + 223, 223, 223, 223, 223, 223, 223, 223, 224, 223, + 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, + 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, + 223, 223, 223, 223, 223, 0, 223, 223, 223, 223, + 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, + 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, + + 223, 223, 229, 229, 229, 229, 229, 229, 229, 229, + 231, 231, 231, 231, 231, 231, 231, 231, 0, 0, + 0, 0, 0, 229, 0, 0, 233, 0, 233, 0, + 0, 231, 233, 233, 233, 233, 233, 233, 233, 233, + 234, 234, 234, 234, 234, 234, 234, 234, 234, 0, + 229, 0, 0, 0, 0, 0, 0, 0, 231, 235, + 235, 235, 235, 235, 235, 235, 235, 235, 236, 236, + 236, 236, 236, 236, 236, 236, 236, 237, 238, 237, + 238, 0, 237, 238, 239, 0, 239, 0, 241, 239, + 241, 237, 238, 241, 240, 0, 240, 0, 239, 240, + + 237, 243, 241, 243, 238, 0, 243, 239, 240, 244, + 0, 244, 0, 240, 244, 243, 245, 0, 245, 0, + 0, 245, 243, 244, 246, 241, 246, 237, 0, 246, + 245, 238, 0, 0, 239, 0, 0, 244, 246, 245, + 240, 247, 246, 247, 0, 248, 247, 248, 0, 243, + 248, 249, 241, 249, 0, 247, 249, 247, 250, 248, + 250, 0, 0, 250, 244, 249, 245, 0, 0, 246, + 0, 248, 250, 250, 251, 252, 251, 252, 0, 251, + 252, 0, 0, 249, 247, 0, 0, 250, 251, 252, + 0, 253, 251, 253, 0, 0, 253, 254, 248, 254, + + 250, 255, 254, 255, 0, 253, 255, 256, 252, 256, + 249, 254, 256, 0, 250, 255, 0, 253, 254, 251, + 255, 256, 257, 258, 257, 258, 0, 257, 258, 259, + 0, 259, 0, 0, 259, 252, 257, 258, 0, 257, + 0, 256, 0, 259, 253, 254, 260, 255, 260, 0, + 0, 260, 258, 261, 0, 261, 0, 0, 261, 259, + 260, 0, 0, 0, 0, 0, 257, 261, 256, 0, + 262, 263, 262, 263, 0, 262, 263, 0, 0, 258, + 0, 0, 0, 261, 262, 263, 259, 264, 262, 264, + 263, 0, 264, 265, 266, 265, 266, 0, 265, 266, + + 0, 264, 0, 0, 268, 264, 268, 265, 266, 268, + 261, 269, 266, 269, 0, 262, 269, 263, 268, 270, + 0, 270, 0, 0, 270, 269, 0, 0, 269, 0, + 0, 0, 264, 270, 270, 271, 272, 271, 272, 266, + 271, 272, 273, 274, 273, 274, 0, 273, 274, 271, + 272, 0, 0, 0, 0, 269, 273, 274, 275, 0, + 275, 270, 272, 275, 271, 276, 0, 276, 0, 278, + 276, 278, 275, 0, 278, 274, 277, 275, 277, 276, + 0, 277, 277, 278, 278, 0, 0, 0, 0, 272, + 277, 271, 279, 280, 279, 280, 0, 279, 280, 0, + + 276, 0, 274, 0, 275, 0, 279, 280, 280, 0, + 281, 278, 281, 0, 282, 281, 282, 0, 283, 282, + 283, 0, 0, 283, 281, 0, 0, 276, 282, 284, + 0, 284, 283, 281, 284, 280, 0, 285, 0, 285, + 282, 0, 285, 284, 286, 0, 286, 0, 0, 286, + 284, 285, 283, 0, 0, 0, 285, 287, 286, 287, + 281, 0, 287, 286, 288, 0, 288, 282, 289, 288, + 289, 287, 0, 289, 0, 0, 0, 284, 288, 283, + 0, 0, 289, 285, 290, 0, 290, 0, 0, 290, + 286, 287, 291, 288, 291, 0, 0, 291, 290, 292, + + 289, 292, 0, 290, 292, 293, 291, 293, 0, 291, + 293, 0, 0, 292, 0, 0, 292, 0, 287, 293, + 288, 0, 0, 0, 294, 0, 294, 289, 0, 294, + 290, 0, 0, 0, 0, 0, 291, 293, 294, 294, + 295, 0, 295, 292, 296, 295, 296, 0, 297, 296, + 297, 0, 0, 297, 295, 0, 294, 0, 296, 0, + 0, 0, 297, 298, 293, 298, 294, 0, 298, 297, + 299, 300, 299, 300, 0, 299, 300, 298, 0, 0, + 0, 0, 0, 294, 299, 300, 0, 0, 301, 298, + 301, 0, 302, 301, 302, 0, 297, 302, 0, 0, + + 300, 0, 301, 303, 299, 303, 302, 304, 303, 304, + 0, 301, 304, 0, 0, 0, 298, 303, 305, 0, + 305, 304, 0, 305, 0, 0, 0, 300, 306, 0, + 306, 299, 305, 306, 307, 308, 307, 308, 301, 307, + 308, 309, 306, 309, 0, 310, 309, 310, 307, 308, + 310, 311, 312, 311, 312, 309, 311, 312, 313, 310, + 313, 0, 314, 313, 314, 311, 312, 314, 315, 316, + 315, 316, 313, 315, 316, 317, 314, 317, 0, 318, + 317, 318, 315, 316, 318, 319, 320, 319, 320, 317, + 319, 320, 321, 318, 321, 0, 322, 321, 322, 319, + + 320, 322, 323, 324, 323, 324, 321, 323, 324, 325, + 322, 325, 0, 326, 325, 326, 323, 324, 326, 327, + 328, 327, 328, 325, 327, 328, 329, 326, 329, 0, + 343, 329, 343, 327, 328, 343, 0, 0, 0, 0, + 329, 0, 0, 0, 343, 0, 0, 0, 329, 331, + 331, 331, 331, 331, 331, 331, 331, 331, 332, 332, + 332, 332, 332, 332, 332, 332, 332, 333, 333, 333, + 333, 333, 333, 333, 333, 329, 334, 334, 334, 334, + 334, 334, 334, 334, 334, 335, 335, 335, 335, 335, + 335, 335, 335, 336, 336, 336, 336, 336, 336, 336, + + 336, 336, 337, 337, 337, 337, 337, 337, 337, 337, + 338, 338, 338, 338, 338, 338, 338, 338, 338, 0, + 339, 336, 339, 0, 0, 339, 0, 340, 341, 340, + 341, 0, 340, 341, 339, 0, 0, 0, 338, 0, + 339, 340, 341, 0, 342, 344, 342, 344, 336, 342, + 344, 0, 345, 0, 345, 0, 341, 345, 342, 344, + 0, 342, 340, 0, 0, 338, 345, 339, 346, 0, + 346, 0, 347, 346, 347, 0, 348, 347, 348, 0, + 0, 348, 346, 341, 345, 0, 347, 0, 342, 340, + 348, 348, 349, 0, 349, 0, 350, 349, 350, 0, + + 351, 350, 351, 0, 347, 351, 349, 349, 0, 0, + 350, 345, 0, 0, 351, 350, 0, 0, 348, 352, + 0, 352, 0, 353, 352, 353, 0, 0, 353, 0, + 354, 347, 354, 352, 349, 354, 355, 353, 355, 0, + 0, 355, 350, 0, 354, 354, 356, 0, 356, 0, + 355, 356, 352, 357, 0, 357, 353, 358, 357, 358, + 356, 359, 358, 359, 0, 0, 359, 357, 360, 356, + 360, 358, 354, 360, 0, 359, 358, 0, 0, 352, + 359, 0, 360, 353, 361, 362, 361, 362, 0, 361, + 362, 0, 363, 0, 363, 0, 356, 363, 361, 362, + + 0, 0, 360, 358, 0, 0, 363, 359, 364, 0, + 364, 0, 361, 364, 0, 0, 365, 0, 365, 362, + 0, 365, 364, 364, 0, 363, 366, 0, 366, 360, + 365, 366, 0, 367, 0, 367, 0, 0, 367, 361, + 366, 0, 0, 369, 0, 369, 362, 367, 369, 370, + 364, 370, 363, 371, 370, 371, 0, 369, 371, 372, + 373, 372, 373, 370, 372, 373, 374, 371, 374, 0, + 0, 374, 371, 372, 373, 370, 375, 369, 375, 373, + 374, 375, 372, 376, 377, 376, 377, 0, 376, 377, + 375, 378, 0, 378, 375, 0, 378, 376, 377, 371, + + 0, 0, 370, 0, 369, 378, 373, 0, 379, 372, + 379, 0, 380, 379, 380, 0, 377, 380, 381, 0, + 381, 375, 379, 381, 0, 379, 380, 0, 382, 0, + 382, 0, 381, 382, 383, 384, 383, 384, 0, 383, + 384, 0, 382, 377, 0, 380, 0, 0, 383, 384, + 0, 383, 379, 0, 385, 0, 385, 382, 0, 385, + 386, 387, 386, 387, 0, 386, 387, 384, 385, 0, + 0, 0, 380, 385, 386, 387, 0, 388, 383, 388, + 0, 389, 388, 389, 382, 390, 389, 390, 0, 0, + 390, 388, 0, 0, 384, 389, 0, 0, 386, 390, + + 385, 0, 0, 0, 390, 388, 391, 392, 391, 392, + 0, 391, 392, 0, 393, 389, 393, 0, 0, 393, + 391, 392, 0, 0, 394, 386, 394, 391, 393, 394, + 0, 390, 388, 0, 395, 392, 395, 0, 394, 395, + 0, 0, 389, 393, 0, 396, 394, 396, 395, 0, + 396, 0, 0, 395, 391, 397, 0, 397, 0, 396, + 397, 398, 392, 398, 396, 0, 398, 0, 0, 397, + 393, 0, 399, 394, 399, 398, 0, 399, 0, 0, + 395, 0, 0, 0, 0, 0, 399, 397, 0, 0, + 398, 396, 401, 401, 401, 401, 401, 401, 401, 401, + + 401, 402, 402, 402, 402, 402, 402, 402, 402, 402, + 0, 0, 0, 0, 397, 0, 0, 398, 0, 0, + 401, 403, 403, 403, 403, 403, 403, 403, 403, 402, + 404, 404, 404, 404, 404, 404, 404, 404, 405, 405, + 405, 405, 405, 405, 405, 405, 0, 401, 406, 406, + 406, 406, 406, 406, 406, 406, 402, 407, 410, 407, + 410, 0, 407, 410, 0, 405, 0, 0, 0, 0, + 0, 407, 410, 0, 0, 406, 408, 408, 408, 408, + 408, 408, 408, 408, 409, 409, 409, 409, 409, 409, + 409, 409, 405, 411, 412, 411, 412, 0, 411, 412, + + 0, 0, 406, 408, 413, 0, 413, 411, 412, 413, + 414, 409, 414, 0, 0, 414, 411, 415, 413, 415, + 0, 0, 415, 416, 414, 416, 0, 412, 416, 0, + 408, 415, 0, 0, 417, 0, 417, 416, 409, 417, + 416, 0, 418, 411, 418, 0, 415, 418, 417, 0, + 0, 0, 0, 0, 412, 419, 418, 419, 0, 418, + 419, 420, 0, 420, 419, 0, 420, 416, 0, 419, + 0, 0, 0, 415, 421, 420, 421, 0, 422, 421, + 422, 0, 423, 422, 423, 0, 418, 423, 421, 0, + 0, 0, 422, 424, 420, 424, 423, 421, 424, 425, + + 426, 425, 426, 0, 425, 426, 0, 424, 0, 0, + 0, 0, 0, 425, 426, 423, 0, 427, 428, 427, + 428, 420, 427, 428, 421, 429, 424, 429, 0, 426, + 429, 427, 428, 0, 0, 427, 0, 0, 430, 429, + 430, 428, 423, 430, 429, 433, 432, 433, 432, 0, + 433, 432, 430, 424, 0, 0, 426, 0, 0, 433, + 432, 434, 427, 434, 0, 435, 434, 435, 428, 432, + 435, 429, 436, 0, 436, 434, 0, 436, 434, 435, + 0, 0, 0, 437, 0, 437, 436, 438, 437, 438, + 0, 0, 438, 439, 0, 439, 432, 437, 439, 435, + + 0, 438, 437, 0, 440, 434, 440, 439, 439, 440, + 441, 442, 441, 442, 0, 441, 442, 443, 440, 443, + 0, 0, 443, 0, 441, 442, 435, 0, 444, 437, + 444, 443, 445, 444, 445, 439, 0, 445, 441, 446, + 0, 446, 444, 0, 446, 442, 445, 447, 0, 447, + 0, 443, 447, 446, 448, 449, 448, 449, 0, 448, + 449, 447, 450, 0, 450, 441, 0, 450, 448, 449, + 449, 0, 442, 446, 0, 451, 450, 451, 443, 452, + 451, 452, 0, 450, 452, 453, 0, 453, 0, 451, + 453, 0, 0, 452, 0, 0, 0, 449, 0, 453, + + 446, 454, 453, 454, 0, 452, 454, 0, 0, 451, + 450, 455, 456, 455, 456, 454, 455, 456, 0, 462, + 0, 462, 0, 0, 462, 455, 456, 0, 0, 453, + 0, 0, 452, 462, 0, 0, 451, 463, 462, 463, + 456, 464, 463, 464, 0, 465, 464, 465, 0, 0, + 465, 463, 466, 0, 466, 464, 467, 466, 467, 465, + 0, 467, 0, 0, 0, 462, 466, 456, 0, 0, + 467, 465, 0, 468, 467, 468, 464, 466, 468, 469, + 470, 469, 470, 0, 469, 470, 471, 468, 471, 0, + 0, 471, 0, 469, 470, 0, 0, 472, 465, 472, + + 471, 467, 472, 464, 466, 473, 0, 473, 0, 0, + 473, 472, 0, 469, 470, 0, 474, 0, 474, 473, + 475, 474, 475, 0, 0, 475, 0, 0, 0, 472, + 474, 0, 0, 474, 475, 0, 0, 477, 0, 477, + 469, 470, 477, 478, 479, 478, 479, 0, 478, 479, + 480, 477, 480, 0, 477, 480, 472, 478, 479, 0, + 474, 0, 0, 479, 480, 481, 482, 481, 482, 478, + 481, 482, 483, 484, 483, 484, 0, 483, 484, 481, + 482, 477, 0, 485, 0, 485, 483, 484, 485, 0, + 479, 481, 0, 0, 0, 483, 478, 485, 0, 486, + + 487, 486, 487, 0, 486, 487, 488, 0, 488, 0, + 0, 488, 484, 486, 487, 0, 0, 0, 481, 0, + 488, 488, 483, 0, 0, 486, 487, 489, 490, 489, + 490, 0, 489, 490, 0, 491, 0, 491, 0, 484, + 491, 489, 490, 0, 0, 0, 0, 0, 488, 491, + 489, 0, 486, 487, 493, 494, 493, 494, 0, 493, + 494, 495, 490, 495, 0, 496, 495, 496, 493, 494, + 496, 497, 0, 497, 0, 495, 497, 489, 0, 496, + 495, 0, 498, 494, 498, 497, 493, 498, 499, 490, + 499, 0, 500, 499, 500, 0, 498, 500, 501, 0, + + 501, 498, 499, 501, 0, 0, 500, 495, 0, 503, + 494, 503, 501, 493, 503, 504, 505, 504, 505, 0, + 504, 505, 506, 503, 506, 0, 0, 506, 498, 504, + 505, 0, 507, 0, 507, 0, 506, 507, 504, 508, + 509, 508, 509, 0, 508, 509, 507, 0, 0, 0, + 0, 0, 0, 508, 509, 509, 0, 510, 511, 510, + 511, 507, 510, 511, 512, 504, 512, 0, 0, 512, + 0, 510, 511, 0, 0, 513, 510, 513, 512, 515, + 513, 515, 509, 0, 515, 0, 0, 0, 507, 513, + 0, 0, 511, 515, 516, 517, 516, 517, 512, 516, + + 517, 0, 518, 510, 518, 0, 0, 518, 516, 517, + 0, 0, 516, 519, 0, 519, 518, 0, 519, 511, + 0, 520, 0, 520, 0, 512, 520, 519, 521, 0, + 521, 0, 522, 521, 522, 520, 523, 522, 523, 516, + 0, 523, 521, 519, 0, 521, 522, 0, 0, 520, + 523, 526, 524, 526, 524, 523, 526, 524, 0, 527, + 0, 527, 0, 0, 527, 526, 524, 0, 0, 0, + 519, 524, 521, 527, 0, 528, 520, 528, 0, 0, + 528, 529, 523, 529, 0, 530, 529, 530, 0, 528, + 530, 0, 531, 527, 531, 529, 0, 531, 524, 530, + + 533, 0, 533, 0, 0, 533, 531, 534, 536, 534, + 536, 0, 534, 536, 533, 529, 0, 0, 0, 0, + 527, 534, 536, 533, 537, 536, 537, 0, 0, 537, + 534, 539, 540, 539, 540, 0, 539, 540, 537, 0, + 0, 537, 529, 0, 0, 539, 540, 0, 0, 0, + 533, 0, 536, 0, 0, 0, 0, 534, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 537, 542, + 542, 542, 542, 543, 0, 543, 543, 545, 0, 545, + 545, 546, 546, 547, 0, 547, 547, 548, 0, 548, + 548, 541, 541, 541, 541, 541, 541, 541, 541, 541, + + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541, 541, 541, 541, 541, + 541, 541, 541, 541, 541, 541 } ; /* The intent behind this definition is that it'll catch @@ -1564,7 +1563,7 @@ static yyconst flex_int16_t yy_chk[4381] = extern mkFlexLexer* mklexx; /* rules */ -#line 1568 "frame/ds9lex.C" +#line 1567 "frame/ds9lex.C" #define INITIAL 0 #define DISCARD 1 @@ -1668,7 +1667,7 @@ YY_DECL #line 31 "frame/ds9lex.L" -#line 1672 "frame/ds9lex.C" +#line 1671 "frame/ds9lex.C" if ( !(yy_init) ) { @@ -1721,13 +1720,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 >= 540 ) + if ( yy_current_state >= 542 ) 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_current_state != 539 ); + while ( yy_current_state != 541 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -1937,500 +1936,505 @@ YY_RULE_SETUP case 36: YY_RULE_SETUP #line 81 "frame/ds9lex.L" -{return FIXED_;} +{return FILL_;} YY_BREAK case 37: YY_RULE_SETUP #line 82 "frame/ds9lex.L" -{return FK4_;} +{return FIXED_;} YY_BREAK case 38: YY_RULE_SETUP #line 83 "frame/ds9lex.L" -{return FK4_NO_E_;} +{return FK4_;} YY_BREAK case 39: YY_RULE_SETUP #line 84 "frame/ds9lex.L" -{return FK5_;} +{return FK4_NO_E_;} YY_BREAK case 40: YY_RULE_SETUP #line 85 "frame/ds9lex.L" -{return FONT_;} +{return FK5_;} YY_BREAK case 41: YY_RULE_SETUP #line 86 "frame/ds9lex.L" -{return GALACTIC_;} +{return FONT_;} YY_BREAK case 42: YY_RULE_SETUP #line 87 "frame/ds9lex.L" -{return GLOBAL_;} +{return GALACTIC_;} YY_BREAK case 43: YY_RULE_SETUP #line 88 "frame/ds9lex.L" -{return HELIOECLIPTIC_;} +{return GLOBAL_;} YY_BREAK case 44: YY_RULE_SETUP #line 89 "frame/ds9lex.L" -{return HIGHLITE_;} +{return HELIOECLIPTIC_;} YY_BREAK case 45: YY_RULE_SETUP #line 90 "frame/ds9lex.L" -{return ICRS_;} +{return HIGHLITE_;} YY_BREAK case 46: YY_RULE_SETUP #line 91 "frame/ds9lex.L" -{return IGNORE_;} +{return ICRS_;} YY_BREAK case 47: YY_RULE_SETUP #line 92 "frame/ds9lex.L" -{return INCLUDE_;} +{return IGNORE_;} YY_BREAK case 48: YY_RULE_SETUP #line 93 "frame/ds9lex.L" -{return IMAGE_;} +{return INCLUDE_;} YY_BREAK case 49: YY_RULE_SETUP #line 94 "frame/ds9lex.L" -{return KEY_;} +{return IMAGE_;} YY_BREAK case 50: YY_RULE_SETUP #line 95 "frame/ds9lex.L" -{return J2000_;} +{return KEY_;} YY_BREAK case 51: YY_RULE_SETUP #line 96 "frame/ds9lex.L" -{return LINE_;} +{return J2000_;} YY_BREAK case 52: YY_RULE_SETUP #line 97 "frame/ds9lex.L" -{return LINEAR_;} +{return LINE_;} YY_BREAK case 53: YY_RULE_SETUP #line 98 "frame/ds9lex.L" -{return MOVE_;} +{return LINEAR_;} YY_BREAK case 54: YY_RULE_SETUP #line 99 "frame/ds9lex.L" -{return N_;} +{return MOVE_;} YY_BREAK case 55: YY_RULE_SETUP #line 100 "frame/ds9lex.L" -{return NO_;} +{return N_;} YY_BREAK case 56: YY_RULE_SETUP #line 101 "frame/ds9lex.L" -{return OFF_;} +{return NO_;} YY_BREAK case 57: YY_RULE_SETUP #line 102 "frame/ds9lex.L" -{return ON_;} +{return OFF_;} YY_BREAK case 58: YY_RULE_SETUP #line 103 "frame/ds9lex.L" -{return CPANDA_;} +{return ON_;} YY_BREAK case 59: YY_RULE_SETUP #line 104 "frame/ds9lex.L" -{return PHYSICAL_;} +{return CPANDA_;} YY_BREAK case 60: YY_RULE_SETUP #line 105 "frame/ds9lex.L" -{return PIE_;} +{return PHYSICAL_;} YY_BREAK case 61: YY_RULE_SETUP #line 106 "frame/ds9lex.L" -{return PIXELS_;} +{return PIE_;} YY_BREAK case 62: YY_RULE_SETUP #line 107 "frame/ds9lex.L" -{return POINT_;} +{return PIXELS_;} YY_BREAK case 63: YY_RULE_SETUP #line 108 "frame/ds9lex.L" -{return POLYGON_;} +{return POINT_;} YY_BREAK case 64: YY_RULE_SETUP #line 109 "frame/ds9lex.L" -{return PROJECTION_;} +{return POLYGON_;} YY_BREAK case 65: YY_RULE_SETUP #line 110 "frame/ds9lex.L" -{return PROPERTY_;} +{return PROJECTION_;} YY_BREAK case 66: YY_RULE_SETUP #line 111 "frame/ds9lex.L" -{return ROTATE_;} +{return PROPERTY_;} YY_BREAK case 67: YY_RULE_SETUP #line 112 "frame/ds9lex.L" -{return ROTBOX_;} +{return ROTATE_;} YY_BREAK case 68: YY_RULE_SETUP #line 113 "frame/ds9lex.L" -{return RULER_;} +{return ROTBOX_;} YY_BREAK case 69: YY_RULE_SETUP #line 114 "frame/ds9lex.L" -{return SELECT_;} +{return RULER_;} YY_BREAK case 70: YY_RULE_SETUP #line 115 "frame/ds9lex.L" -{return SEGMENT_;} +{return SELECT_;} YY_BREAK case 71: YY_RULE_SETUP #line 116 "frame/ds9lex.L" -{return SOURCE_;} +{return SEGMENT_;} YY_BREAK case 72: YY_RULE_SETUP #line 117 "frame/ds9lex.L" -{return SUPERGALACTIC_;} +{return SOURCE_;} YY_BREAK case 73: YY_RULE_SETUP #line 118 "frame/ds9lex.L" -{return TAG_;} +{return SUPERGALACTIC_;} YY_BREAK case 74: YY_RULE_SETUP #line 119 "frame/ds9lex.L" -{return TEXT_;} +{return TAG_;} YY_BREAK case 75: YY_RULE_SETUP #line 120 "frame/ds9lex.L" -{return TEXTANGLE_;} +{return TEXT_;} YY_BREAK case 76: YY_RULE_SETUP #line 121 "frame/ds9lex.L" -{return TEXTROTATE_;} +{return TEXTANGLE_;} YY_BREAK case 77: YY_RULE_SETUP #line 122 "frame/ds9lex.L" -{return TILE_;} +{return TEXTROTATE_;} YY_BREAK case 78: YY_RULE_SETUP #line 123 "frame/ds9lex.L" -{return TRUE_;} +{return TILE_;} YY_BREAK case 79: YY_RULE_SETUP #line 124 "frame/ds9lex.L" -{return VECTOR_;} +{return TRUE_;} YY_BREAK case 80: YY_RULE_SETUP #line 125 "frame/ds9lex.L" -{return VERSION_;} +{return VECTOR_;} YY_BREAK case 81: YY_RULE_SETUP #line 126 "frame/ds9lex.L" -{return UPDATE_;} +{return VERSION_;} YY_BREAK case 82: YY_RULE_SETUP #line 127 "frame/ds9lex.L" -{return UNHIGHLITE_;} +{return UPDATE_;} YY_BREAK case 83: YY_RULE_SETUP #line 128 "frame/ds9lex.L" -{return UNSELECT_;} +{return UNHIGHLITE_;} YY_BREAK case 84: YY_RULE_SETUP #line 129 "frame/ds9lex.L" -{return WCS_;} +{return UNSELECT_;} YY_BREAK case 85: YY_RULE_SETUP #line 130 "frame/ds9lex.L" -{return WCSA_;} +{return WCS_;} YY_BREAK case 86: YY_RULE_SETUP #line 131 "frame/ds9lex.L" -{return WCSB_;} +{return WCSA_;} YY_BREAK case 87: YY_RULE_SETUP #line 132 "frame/ds9lex.L" -{return WCSC_;} +{return WCSB_;} YY_BREAK case 88: YY_RULE_SETUP #line 133 "frame/ds9lex.L" -{return WCSD_;} +{return WCSC_;} YY_BREAK case 89: YY_RULE_SETUP #line 134 "frame/ds9lex.L" -{return WCSE_;} +{return WCSD_;} YY_BREAK case 90: YY_RULE_SETUP #line 135 "frame/ds9lex.L" -{return WCSF_;} +{return WCSE_;} YY_BREAK case 91: YY_RULE_SETUP #line 136 "frame/ds9lex.L" -{return WCSG_;} +{return WCSF_;} YY_BREAK case 92: YY_RULE_SETUP #line 137 "frame/ds9lex.L" -{return WCSH_;} +{return WCSG_;} YY_BREAK case 93: YY_RULE_SETUP #line 138 "frame/ds9lex.L" -{return WCSI_;} +{return WCSH_;} YY_BREAK case 94: YY_RULE_SETUP #line 139 "frame/ds9lex.L" -{return WCSJ_;} +{return WCSI_;} YY_BREAK case 95: YY_RULE_SETUP #line 140 "frame/ds9lex.L" -{return WCSK_;} +{return WCSJ_;} YY_BREAK case 96: YY_RULE_SETUP #line 141 "frame/ds9lex.L" -{return WCSL_;} +{return WCSK_;} YY_BREAK case 97: YY_RULE_SETUP #line 142 "frame/ds9lex.L" -{return WCSM_;} +{return WCSL_;} YY_BREAK case 98: YY_RULE_SETUP #line 143 "frame/ds9lex.L" -{return WCSN_;} +{return WCSM_;} YY_BREAK case 99: YY_RULE_SETUP #line 144 "frame/ds9lex.L" -{return WCSO_;} +{return WCSN_;} YY_BREAK case 100: YY_RULE_SETUP #line 145 "frame/ds9lex.L" -{return WCSP_;} +{return WCSO_;} YY_BREAK case 101: YY_RULE_SETUP #line 146 "frame/ds9lex.L" -{return WCSQ_;} +{return WCSP_;} YY_BREAK case 102: YY_RULE_SETUP #line 147 "frame/ds9lex.L" -{return WCSR_;} +{return WCSQ_;} YY_BREAK case 103: YY_RULE_SETUP #line 148 "frame/ds9lex.L" -{return WCSS_;} +{return WCSR_;} YY_BREAK case 104: YY_RULE_SETUP #line 149 "frame/ds9lex.L" -{return WCST_;} +{return WCSS_;} YY_BREAK case 105: YY_RULE_SETUP #line 150 "frame/ds9lex.L" -{return WCSU_;} +{return WCST_;} YY_BREAK case 106: YY_RULE_SETUP #line 151 "frame/ds9lex.L" -{return WCSV_;} +{return WCSU_;} YY_BREAK case 107: YY_RULE_SETUP #line 152 "frame/ds9lex.L" -{return WCSW_;} +{return WCSV_;} YY_BREAK case 108: YY_RULE_SETUP #line 153 "frame/ds9lex.L" -{return WCSX_;} +{return WCSW_;} YY_BREAK case 109: YY_RULE_SETUP #line 154 "frame/ds9lex.L" -{return WCSY_;} +{return WCSX_;} YY_BREAK case 110: YY_RULE_SETUP #line 155 "frame/ds9lex.L" -{return WCSZ_;} +{return WCSY_;} YY_BREAK case 111: YY_RULE_SETUP #line 156 "frame/ds9lex.L" -{return WCS0_;} +{return WCSZ_;} YY_BREAK case 112: YY_RULE_SETUP #line 157 "frame/ds9lex.L" -{return WIDTH_;} +{return WCS0_;} YY_BREAK case 113: YY_RULE_SETUP #line 158 "frame/ds9lex.L" -{return X_;} +{return WIDTH_;} YY_BREAK case 114: YY_RULE_SETUP #line 159 "frame/ds9lex.L" -{return Y_;} +{return X_;} YY_BREAK case 115: YY_RULE_SETUP #line 160 "frame/ds9lex.L" -{return YES_;} +{return Y_;} YY_BREAK case 116: YY_RULE_SETUP -#line 163 "frame/ds9lex.L" +#line 161 "frame/ds9lex.L" +{return YES_;} + YY_BREAK +case 117: +YY_RULE_SETUP +#line 164 "frame/ds9lex.L" { // Integer mklval->integer = atoi(yytext); return INT; } YY_BREAK -case 117: -#line 169 "frame/ds9lex.L" case 118: +#line 170 "frame/ds9lex.L" +case 119: YY_RULE_SETUP -#line 169 "frame/ds9lex.L" +#line 170 "frame/ds9lex.L" { // Real Number mklval->real = atof(yytext); return REAL; } YY_BREAK -case 119: -#line 175 "frame/ds9lex.L" case 120: +#line 176 "frame/ds9lex.L" +case 121: YY_RULE_SETUP -#line 175 "frame/ds9lex.L" +#line 176 "frame/ds9lex.L" { // degrees yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return ANGDEGREE; } YY_BREAK -case 121: -#line 182 "frame/ds9lex.L" case 122: +#line 183 "frame/ds9lex.L" +case 123: YY_RULE_SETUP -#line 182 "frame/ds9lex.L" +#line 183 "frame/ds9lex.L" { // radians yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return ANGRADIAN; } YY_BREAK -case 123: -#line 189 "frame/ds9lex.L" case 124: +#line 190 "frame/ds9lex.L" +case 125: YY_RULE_SETUP -#line 189 "frame/ds9lex.L" +#line 190 "frame/ds9lex.L" { // physical coords yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return PHYCOORD; } YY_BREAK -case 125: -#line 196 "frame/ds9lex.L" case 126: +#line 197 "frame/ds9lex.L" +case 127: YY_RULE_SETUP -#line 196 "frame/ds9lex.L" +#line 197 "frame/ds9lex.L" { // image coords yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return IMGCOORD; } YY_BREAK -case 127: -#line 203 "frame/ds9lex.L" case 128: #line 204 "frame/ds9lex.L" case 129: #line 205 "frame/ds9lex.L" case 130: +#line 206 "frame/ds9lex.L" +case 131: YY_RULE_SETUP -#line 205 "frame/ds9lex.L" +#line 206 "frame/ds9lex.L" { // minutes of arc yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return ARCMINUTE; } YY_BREAK -case 131: -#line 212 "frame/ds9lex.L" case 132: #line 213 "frame/ds9lex.L" case 133: #line 214 "frame/ds9lex.L" case 134: +#line 215 "frame/ds9lex.L" +case 135: YY_RULE_SETUP -#line 214 "frame/ds9lex.L" +#line 215 "frame/ds9lex.L" { // seconds of arc yytext[yyleng-1] = '\0'; mklval->real = atof(yytext); return ARCSECOND; } YY_BREAK -case 135: -#line 221 "frame/ds9lex.L" case 136: +#line 222 "frame/ds9lex.L" +case 137: YY_RULE_SETUP -#line 221 "frame/ds9lex.L" +#line 222 "frame/ds9lex.L" { // Sexagesimal int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2438,11 +2442,11 @@ YY_RULE_SETUP return SEXSTR; } YY_BREAK -case 137: -#line 229 "frame/ds9lex.L" case 138: +#line 230 "frame/ds9lex.L" +case 139: YY_RULE_SETUP -#line 229 "frame/ds9lex.L" +#line 230 "frame/ds9lex.L" { // HMS int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2450,11 +2454,11 @@ YY_RULE_SETUP return HMSSTR; } YY_BREAK -case 139: -#line 237 "frame/ds9lex.L" case 140: +#line 238 "frame/ds9lex.L" +case 141: YY_RULE_SETUP -#line 237 "frame/ds9lex.L" +#line 238 "frame/ds9lex.L" { // DMS int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2462,9 +2466,9 @@ YY_RULE_SETUP return DMSSTR; } YY_BREAK -case 141: +case 142: YY_RULE_SETUP -#line 244 "frame/ds9lex.L" +#line 245 "frame/ds9lex.L" { // 8 bit Hex Color int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2472,9 +2476,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 142: +case 143: YY_RULE_SETUP -#line 251 "frame/ds9lex.L" +#line 252 "frame/ds9lex.L" { // 16 bit Hex Color int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2482,9 +2486,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 143: +case 144: YY_RULE_SETUP -#line 258 "frame/ds9lex.L" +#line 259 "frame/ds9lex.L" { // 32 bit Hex Color int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2492,11 +2496,11 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 144: -#line 266 "frame/ds9lex.L" case 145: +#line 267 "frame/ds9lex.L" +case 146: YY_RULE_SETUP -#line 266 "frame/ds9lex.L" +#line 267 "frame/ds9lex.L" { // Quoted String int ll = (yyleng-2)<(MKBUFSIZE-1) ? (yyleng-2):(MKBUFSIZE-1); strncpy(mklval->str,yytext+1,ll); // skip the " " @@ -2504,9 +2508,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 146: +case 147: YY_RULE_SETUP -#line 273 "frame/ds9lex.L" +#line 274 "frame/ds9lex.L" { // Quoted String int ll = (yyleng-2)<(MKBUFSIZE-1) ? (yyleng-2):(MKBUFSIZE-1); strncpy(mklval->str,yytext+1,ll); // skip the '{' @@ -2514,9 +2518,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 147: +case 148: YY_RULE_SETUP -#line 280 "frame/ds9lex.L" +#line 281 "frame/ds9lex.L" { // General String int ll = yyleng <(MKBUFSIZE-1) ? yyleng:(MKBUFSIZE-1); strncpy(mklval->str,yytext,ll); @@ -2524,55 +2528,55 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 148: +case 149: YY_RULE_SETUP -#line 287 "frame/ds9lex.L" +#line 288 "frame/ds9lex.L" { // White Spaces } YY_BREAK -case 149: -/* rule 149 can match eol */ +case 150: +/* rule 150 can match eol */ YY_RULE_SETUP -#line 290 "frame/ds9lex.L" +#line 291 "frame/ds9lex.L" { // windows line feed return '\n'; } YY_BREAK -case 150: +case 151: YY_RULE_SETUP -#line 294 "frame/ds9lex.L" +#line 295 "frame/ds9lex.L" { // fake line feed return '\n'; } YY_BREAK -case 151: -/* rule 151 can match eol */ +case 152: +/* rule 152 can match eol */ YY_RULE_SETUP -#line 298 "frame/ds9lex.L" +#line 299 "frame/ds9lex.L" { // linefeed return '\n'; } YY_BREAK case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(DISCARD): -#line 302 "frame/ds9lex.L" +#line 303 "frame/ds9lex.L" { // eof return EOF_; } YY_BREAK -case 152: +case 153: YY_RULE_SETUP -#line 306 "frame/ds9lex.L" +#line 307 "frame/ds9lex.L" { // Else, return the char return yytext[0]; } YY_BREAK -case 153: +case 154: YY_RULE_SETUP -#line 310 "frame/ds9lex.L" +#line 311 "frame/ds9lex.L" ECHO; YY_BREAK -#line 2576 "frame/ds9lex.C" +#line 2580 "frame/ds9lex.C" case YY_END_OF_BUFFER: { @@ -2952,7 +2956,7 @@ int yyFlexLexer::yy_get_next_buffer() 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 >= 540 ) + if ( yy_current_state >= 542 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2980,11 +2984,11 @@ int yyFlexLexer::yy_get_next_buffer() 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 >= 540 ) + if ( yy_current_state >= 542 ) 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 == 539); + yy_is_jam = (yy_current_state == 541); return yy_is_jam ? 0 : yy_current_state; } @@ -3469,7 +3473,7 @@ void mkfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 310 "frame/ds9lex.L" +#line 311 "frame/ds9lex.L" diff --git a/tksao/frame/ds9lex.L b/tksao/frame/ds9lex.L index 1b38a16..bc8a2e1 100644 --- a/tksao/frame/ds9lex.L +++ b/tksao/frame/ds9lex.L @@ -78,6 +78,7 @@ epanda {return EPANDA_;} end {return END_;} false {return FALSE_;} fie[l][d] {return FIELD_;} +fill {return FILL_;} fixed {return FIXED_;} fk4 {return FK4_;} fk4-no-e {return FK4_NO_E_;} diff --git a/tksao/frame/ds9parser.C b/tksao/frame/ds9parser.C index 3ebed50..eb94cb3 100644 --- a/tksao/frame/ds9parser.C +++ b/tksao/frame/ds9parser.C @@ -77,50 +77,50 @@ INT = 258, REAL = 259, STRING = 260, - COLOR = 261, - ANGDEGREE = 262, - ANGRADIAN = 263, - ARCMINUTE = 264, - ARCSECOND = 265, - PHYCOORD = 266, - IMGCOORD = 267, - SEXSTR = 268, - HMSSTR = 269, - DMSSTR = 270, - EOF_ = 271, - AMPLIFIER_ = 272, - ANNULUS_ = 273, - ARCMIN_ = 274, - ARCSEC_ = 275, - ARROW_ = 276, - B1950_ = 277, - BACKGROUND_ = 278, - BEGIN_ = 279, - BOX_ = 280, - BOXCIRCLE_ = 281, - BPANDA_ = 282, - CALLBACK_ = 283, - CIRCLE_ = 284, - CIRCLE3D_ = 285, - COLOR_ = 286, - COMPASS_ = 287, - COMPOSITE_ = 288, - CPANDA_ = 289, - CROSS_ = 290, - DASH_ = 291, - DASHLIST_ = 292, - DEBUG_ = 293, - DEGREES_ = 294, - DELETE_ = 295, - DETECTOR_ = 296, - DIAMOND_ = 297, - ECLIPTIC_ = 298, - EDIT_ = 299, - ELLIPSE_ = 300, - END_ = 301, - EPANDA_ = 302, - FALSE_ = 303, - FIELD_ = 304, + ANGDEGREE = 261, + ANGRADIAN = 262, + ARCMINUTE = 263, + ARCSECOND = 264, + PHYCOORD = 265, + IMGCOORD = 266, + SEXSTR = 267, + HMSSTR = 268, + DMSSTR = 269, + EOF_ = 270, + AMPLIFIER_ = 271, + ANNULUS_ = 272, + ARCMIN_ = 273, + ARCSEC_ = 274, + ARROW_ = 275, + B1950_ = 276, + BACKGROUND_ = 277, + BEGIN_ = 278, + BOX_ = 279, + BOXCIRCLE_ = 280, + BPANDA_ = 281, + CALLBACK_ = 282, + CIRCLE_ = 283, + CIRCLE3D_ = 284, + COLOR_ = 285, + COMPASS_ = 286, + COMPOSITE_ = 287, + CPANDA_ = 288, + CROSS_ = 289, + DASH_ = 290, + DASHLIST_ = 291, + DEBUG_ = 292, + DEGREES_ = 293, + DELETE_ = 294, + DETECTOR_ = 295, + DIAMOND_ = 296, + ECLIPTIC_ = 297, + EDIT_ = 298, + ELLIPSE_ = 299, + END_ = 300, + EPANDA_ = 301, + FALSE_ = 302, + FIELD_ = 303, + FILL_ = 304, FIXED_ = 305, FK4_ = 306, FK4_NO_E_ = 307, @@ -206,50 +206,50 @@ #define INT 258 #define REAL 259 #define STRING 260 -#define COLOR 261 -#define ANGDEGREE 262 -#define ANGRADIAN 263 -#define ARCMINUTE 264 -#define ARCSECOND 265 -#define PHYCOORD 266 -#define IMGCOORD 267 -#define SEXSTR 268 -#define HMSSTR 269 -#define DMSSTR 270 -#define EOF_ 271 -#define AMPLIFIER_ 272 -#define ANNULUS_ 273 -#define ARCMIN_ 274 -#define ARCSEC_ 275 -#define ARROW_ 276 -#define B1950_ 277 -#define BACKGROUND_ 278 -#define BEGIN_ 279 -#define BOX_ 280 -#define BOXCIRCLE_ 281 -#define BPANDA_ 282 -#define CALLBACK_ 283 -#define CIRCLE_ 284 -#define CIRCLE3D_ 285 -#define COLOR_ 286 -#define COMPASS_ 287 -#define COMPOSITE_ 288 -#define CPANDA_ 289 -#define CROSS_ 290 -#define DASH_ 291 -#define DASHLIST_ 292 -#define DEBUG_ 293 -#define DEGREES_ 294 -#define DELETE_ 295 -#define DETECTOR_ 296 -#define DIAMOND_ 297 -#define ECLIPTIC_ 298 -#define EDIT_ 299 -#define ELLIPSE_ 300 -#define END_ 301 -#define EPANDA_ 302 -#define FALSE_ 303 -#define FIELD_ 304 +#define ANGDEGREE 261 +#define ANGRADIAN 262 +#define ARCMINUTE 263 +#define ARCSECOND 264 +#define PHYCOORD 265 +#define IMGCOORD 266 +#define SEXSTR 267 +#define HMSSTR 268 +#define DMSSTR 269 +#define EOF_ 270 +#define AMPLIFIER_ 271 +#define ANNULUS_ 272 +#define ARCMIN_ 273 +#define ARCSEC_ 274 +#define ARROW_ 275 +#define B1950_ 276 +#define BACKGROUND_ 277 +#define BEGIN_ 278 +#define BOX_ 279 +#define BOXCIRCLE_ 280 +#define BPANDA_ 281 +#define CALLBACK_ 282 +#define CIRCLE_ 283 +#define CIRCLE3D_ 284 +#define COLOR_ 285 +#define COMPASS_ 286 +#define COMPOSITE_ 287 +#define CPANDA_ 288 +#define CROSS_ 289 +#define DASH_ 290 +#define DASHLIST_ 291 +#define DEBUG_ 292 +#define DEGREES_ 293 +#define DELETE_ 294 +#define DETECTOR_ 295 +#define DIAMOND_ 296 +#define ECLIPTIC_ 297 +#define EDIT_ 298 +#define ELLIPSE_ 299 +#define END_ 300 +#define EPANDA_ 301 +#define FALSE_ 302 +#define FIELD_ 303 +#define FILL_ 304 #define FIXED_ 305 #define FK4_ 306 #define FK4_NO_E_ 307 @@ -387,6 +387,9 @@ static char localText[80]; static char localComment[80]; +static int globalFill; +static int localFill; + static int globalLine1; static int localLine1; static int globalLine2; @@ -481,7 +484,7 @@ static Coord::SkyFrame checkWCSSky(); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 136 "frame/ds9parser.Y" +#line 139 "frame/ds9parser.Y" { #define MKBUFSIZE 2048 double real; @@ -490,7 +493,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 494 "frame/ds9parser.C" +#line 497 "frame/ds9parser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -503,7 +506,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 507 "frame/ds9parser.C" +#line 510 "frame/ds9parser.C" #ifdef short # undef short @@ -718,16 +721,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 2735 +#define YYLAST 2667 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 141 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 73 /* YYNRULES -- Number of rules. */ -#define YYNRULES 326 +#define YYNRULES 328 /* YYNRULES -- Number of states. */ -#define YYNSTATES 841 +#define YYNSTATES 847 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -803,28 +806,28 @@ static const yytype_uint16 yyprhs[] = 352, 354, 356, 359, 361, 364, 367, 369, 372, 375, 377, 380, 382, 384, 386, 388, 390, 392, 394, 396, 400, 402, 406, 410, 415, 419, 423, 427, 429, 431, - 433, 437, 442, 447, 451, 455, 459, 467, 471, 475, - 479, 484, 487, 490, 493, 496, 499, 502, 504, 506, - 509, 511, 513, 515, 516, 520, 522, 526, 530, 535, - 539, 543, 547, 551, 557, 559, 561, 563, 567, 572, - 577, 581, 585, 589, 597, 601, 605, 609, 613, 617, - 622, 625, 628, 631, 634, 637, 640, 642, 644, 647, - 649, 651, 653, 654, 662, 664, 665, 676, 678, 679, - 690, 692, 693, 695, 697, 699, 701, 703, 705, 707, - 709, 711, 722, 723, 731, 738, 747, 756, 767, 776, - 785, 794, 803, 814, 825, 836, 837, 845, 846, 854, - 863, 874, 881, 882, 892, 899, 907, 915, 923, 931, - 939, 947, 955, 964, 973, 984, 995, 1008, 1021, 1034, - 1049, 1064, 1083, 1096, 1111, 1126, 1145, 1164, 1185, 1206, - 1217, 1230, 1243, 1249, 1258, 1262, 1264, 1266, 1270, 1272, - 1274, 1278, 1280, 1282, 1286, 1288, 1292 + 433, 437, 442, 446, 451, 455, 459, 463, 471, 475, + 479, 483, 488, 491, 494, 497, 500, 503, 506, 508, + 510, 513, 515, 517, 519, 520, 524, 526, 530, 534, + 539, 543, 547, 551, 555, 561, 563, 565, 567, 571, + 576, 580, 585, 589, 593, 597, 605, 609, 613, 617, + 621, 625, 630, 633, 636, 639, 642, 645, 648, 650, + 652, 655, 657, 659, 661, 662, 670, 672, 673, 684, + 686, 687, 698, 700, 701, 703, 705, 707, 709, 711, + 713, 715, 717, 719, 730, 731, 739, 746, 755, 764, + 775, 784, 793, 802, 811, 822, 833, 844, 845, 853, + 854, 862, 871, 882, 889, 890, 900, 907, 915, 923, + 931, 939, 947, 955, 963, 972, 981, 992, 1003, 1016, + 1029, 1042, 1057, 1072, 1091, 1104, 1119, 1134, 1153, 1172, + 1193, 1214, 1225, 1238, 1251, 1257, 1266, 1270, 1272, 1274, + 1278, 1280, 1282, 1286, 1288, 1290, 1294, 1296, 1300 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { 142, 0, -1, 185, 143, 213, -1, 143, 144, 158, - -1, 144, 158, -1, -1, 38, 160, -1, 93, -1, + -1, 144, 158, -1, -1, 37, 160, -1, 93, -1, 56, 181, 150, -1, 90, 3, -1, -1, 175, 145, 150, -1, -1, 177, 146, 150, -1, -1, 66, 147, 150, -1, 196, 201, -1, 196, 198, 201, -1, 196, @@ -834,163 +837,164 @@ static const yytype_int16 yyrhs[] = 186, 213, -1, -1, 129, 186, 154, 5, 213, -1, 213, -1, -1, 156, 5, 213, -1, 186, 213, -1, -1, 186, 157, 5, 213, -1, 130, -1, 131, -1, - 16, -1, 4, -1, 3, -1, 71, -1, 70, -1, + 15, -1, 4, -1, 3, -1, 71, -1, 70, -1, 3, -1, 128, -1, 127, -1, 71, -1, 91, -1, - 69, -1, 68, -1, 70, -1, 48, -1, -1, 132, + 69, -1, 68, -1, 70, -1, 47, -1, -1, 132, -1, -1, 133, -1, -1, 134, -1, -1, 135, -1, - 135, 135, -1, -1, 167, -1, 159, -1, 7, -1, - 8, -1, 159, -1, 11, -1, 12, -1, 7, -1, - 9, -1, 10, -1, 159, 162, 159, -1, 11, 162, - 11, -1, 12, 162, 12, -1, 7, 162, 7, -1, - 9, 162, 9, -1, 10, 162, 10, -1, 68, 136, - 3, -1, 13, -1, 14, -1, 15, -1, 171, 162, + 135, 135, -1, -1, 167, -1, 159, -1, 6, -1, + 7, -1, 159, -1, 10, -1, 11, -1, 6, -1, + 8, -1, 9, -1, 159, 162, 159, -1, 10, 162, + 10, -1, 11, 162, 11, -1, 6, 162, 6, -1, + 8, 162, 8, -1, 9, 162, 9, -1, 68, 136, + 3, -1, 12, -1, 13, -1, 14, -1, 171, 162, 171, -1, 172, 162, 173, -1, 173, 162, 173, -1, - 159, 162, 159, -1, 7, 162, 7, -1, 12, 162, - 12, -1, 11, 162, 11, -1, 61, -1, 72, -1, - 41, -1, 17, -1, 176, -1, 97, -1, 98, -1, + 159, 162, 159, -1, 6, 162, 6, -1, 11, 162, + 11, -1, 10, 162, 10, -1, 61, -1, 72, -1, + 40, -1, 16, -1, 176, -1, 97, -1, 98, -1, 99, -1, 100, -1, 101, -1, 102, -1, 103, -1, 104, -1, 105, -1, 106, -1, 107, -1, 108, -1, 109, -1, 110, -1, 111, -1, 112, -1, 113, -1, 114, -1, 115, -1, 116, -1, 117, -1, 118, -1, 119, -1, 120, -1, 121, -1, 122, -1, 123, -1, - 124, -1, 51, -1, 22, -1, 52, -1, 53, -1, - 63, -1, 59, -1, 55, -1, 85, -1, 43, -1, - 57, -1, 39, -1, 19, -1, 20, -1, 83, -1, - 58, -1, 36, -1, 50, -1, 44, -1, 67, -1, - 79, -1, 40, -1, 62, -1, 84, -1, 83, -1, - 95, -1, 58, -1, 94, -1, 24, 67, -1, 67, - -1, 46, 67, -1, 24, 44, -1, 44, -1, 46, - 44, -1, 24, 79, -1, 79, -1, 46, 79, -1, - 40, -1, 87, -1, 31, -1, 125, -1, 78, -1, + 124, -1, 51, -1, 21, -1, 52, -1, 53, -1, + 63, -1, 59, -1, 55, -1, 85, -1, 42, -1, + 57, -1, 38, -1, 18, -1, 19, -1, 83, -1, + 58, -1, 35, -1, 50, -1, 43, -1, 67, -1, + 79, -1, 39, -1, 62, -1, 84, -1, 83, -1, + 95, -1, 58, -1, 94, -1, 23, 67, -1, 67, + -1, 45, 67, -1, 23, 43, -1, 43, -1, 45, + 43, -1, 23, 79, -1, 79, -1, 45, 79, -1, + 39, -1, 87, -1, 30, -1, 125, -1, 78, -1, 54, -1, 64, -1, 96, -1, 181, 162, 182, -1, - 182, -1, 179, 136, 161, -1, 31, 136, 5, -1, - 37, 136, 3, 3, -1, 125, 136, 3, -1, 54, - 136, 5, -1, 87, 136, 5, -1, 36, -1, 84, - -1, 23, -1, 75, 136, 197, -1, 75, 136, 197, - 3, -1, 65, 136, 3, 3, -1, 92, 136, 3, - -1, 33, 136, 3, -1, 81, 136, 183, -1, 32, - 136, 184, 5, 5, 3, 3, -1, 88, 136, 167, - -1, 89, 136, 3, -1, 97, 136, 176, -1, 175, - 177, 175, 178, -1, 175, 175, -1, 175, 178, -1, - 177, 175, -1, 177, 178, -1, 66, 175, -1, 66, - 178, -1, 178, -1, 74, -1, 175, 177, -1, 175, - -1, 177, -1, 66, -1, -1, 186, 162, 187, -1, - 187, -1, 179, 136, 161, -1, 31, 136, 5, -1, - 37, 136, 3, 3, -1, 125, 136, 3, -1, 54, - 136, 5, -1, 87, 136, 5, -1, 86, 136, 5, - -1, 28, 136, 180, 5, 5, -1, 36, -1, 84, - -1, 23, -1, 75, 136, 197, -1, 75, 136, 197, - 3, -1, 65, 136, 3, 3, -1, 92, 136, 3, - -1, 33, 136, 3, -1, 81, 136, 188, -1, 32, - 136, 189, 5, 5, 3, 3, -1, 88, 136, 167, - -1, 89, 136, 3, -1, 34, 136, 190, -1, 47, - 136, 192, -1, 27, 136, 194, -1, 175, 177, 175, - 178, -1, 175, 175, -1, 175, 178, -1, 177, 175, - -1, 177, 178, -1, 66, 175, -1, 66, 178, -1, - 178, -1, 74, -1, 175, 177, -1, 175, -1, 177, - -1, 66, -1, -1, 191, 133, 209, 134, 133, 207, - 134, -1, 60, -1, -1, 193, 133, 209, 134, 133, - 211, 134, 133, 167, 134, -1, 60, -1, -1, 195, - 133, 209, 134, 133, 211, 134, 133, 167, 134, -1, - 60, -1, -1, 29, -1, 25, -1, 42, -1, 35, - -1, 126, -1, 21, -1, 26, -1, 137, -1, 138, + 182, -1, 179, 136, 161, -1, 30, 136, 5, -1, + 36, 136, 3, 3, -1, 125, 136, 3, -1, 54, + 136, 5, -1, 87, 136, 5, -1, 35, -1, 84, + -1, 22, -1, 75, 136, 197, -1, 75, 136, 197, + 3, -1, 49, 136, 3, -1, 65, 136, 3, 3, + -1, 92, 136, 3, -1, 32, 136, 3, -1, 81, + 136, 183, -1, 31, 136, 184, 5, 5, 3, 3, + -1, 88, 136, 167, -1, 89, 136, 3, -1, 97, + 136, 176, -1, 175, 177, 175, 178, -1, 175, 175, + -1, 175, 178, -1, 177, 175, -1, 177, 178, -1, + 66, 175, -1, 66, 178, -1, 178, -1, 74, -1, + 175, 177, -1, 175, -1, 177, -1, 66, -1, -1, + 186, 162, 187, -1, 187, -1, 179, 136, 161, -1, + 30, 136, 5, -1, 36, 136, 3, 3, -1, 125, + 136, 3, -1, 54, 136, 5, -1, 87, 136, 5, + -1, 86, 136, 5, -1, 27, 136, 180, 5, 5, + -1, 35, -1, 84, -1, 22, -1, 75, 136, 197, + -1, 75, 136, 197, 3, -1, 49, 136, 3, -1, + 65, 136, 3, 3, -1, 92, 136, 3, -1, 32, + 136, 3, -1, 81, 136, 188, -1, 31, 136, 189, + 5, 5, 3, 3, -1, 88, 136, 167, -1, 89, + 136, 3, -1, 33, 136, 190, -1, 46, 136, 192, + -1, 26, 136, 194, -1, 175, 177, 175, 178, -1, + 175, 175, -1, 175, 178, -1, 177, 175, -1, 177, + 178, -1, 66, 175, -1, 66, 178, -1, 178, -1, + 74, -1, 175, 177, -1, 175, -1, 177, -1, 66, + -1, -1, 191, 133, 209, 134, 133, 207, 134, -1, + 60, -1, -1, 193, 133, 209, 134, 133, 211, 134, + 133, 167, 134, -1, 60, -1, -1, 195, 133, 209, + 134, 133, 211, 134, 133, 167, 134, -1, 60, -1, + -1, 28, -1, 24, -1, 41, -1, 34, -1, 126, + -1, 20, -1, 25, -1, 137, -1, 138, -1, 92, + 163, 174, 162, 168, 162, 167, 164, 165, 155, -1, + -1, 82, 200, 163, 205, 164, 165, 155, -1, 87, + 163, 174, 164, 165, 155, -1, 81, 163, 174, 162, + 174, 164, 165, 155, -1, 31, 163, 174, 162, 168, + 164, 165, 155, -1, 77, 163, 174, 162, 174, 162, + 168, 164, 165, 155, -1, 29, 163, 174, 162, 168, + 164, 165, 155, -1, 32, 163, 174, 162, 166, 164, + 165, 155, -1, 28, 163, 174, 162, 168, 164, 165, + 152, -1, 29, 163, 174, 162, 168, 164, 165, 152, + -1, 44, 163, 174, 162, 169, 162, 166, 164, 165, + 152, -1, 24, 163, 174, 162, 169, 162, 166, 164, + 165, 152, -1, 80, 163, 174, 162, 169, 162, 166, + 164, 165, 152, -1, -1, 76, 202, 163, 205, 164, + 165, 152, -1, -1, 82, 203, 163, 205, 164, 165, + 152, -1, 65, 163, 174, 162, 174, 164, 165, 152, -1, 92, 163, 174, 162, 168, 162, 167, 164, 165, - 155, -1, -1, 82, 200, 163, 205, 164, 165, 155, - -1, 87, 163, 174, 164, 165, 155, -1, 81, 163, - 174, 162, 174, 164, 165, 155, -1, 32, 163, 174, - 162, 168, 164, 165, 155, -1, 77, 163, 174, 162, - 174, 162, 168, 164, 165, 155, -1, 30, 163, 174, - 162, 168, 164, 165, 155, -1, 33, 163, 174, 162, - 166, 164, 165, 155, -1, 29, 163, 174, 162, 168, - 164, 165, 152, -1, 30, 163, 174, 162, 168, 164, - 165, 152, -1, 45, 163, 174, 162, 169, 162, 166, - 164, 165, 152, -1, 25, 163, 174, 162, 169, 162, - 166, 164, 165, 152, -1, 80, 163, 174, 162, 169, - 162, 166, 164, 165, 152, -1, -1, 76, 202, 163, - 205, 164, 165, 152, -1, -1, 82, 203, 163, 205, - 164, 165, 152, -1, 65, 163, 174, 162, 174, 164, - 165, 152, -1, 92, 163, 174, 162, 168, 162, 167, - 164, 165, 152, -1, 87, 163, 174, 164, 165, 152, - -1, -1, 87, 163, 174, 162, 5, 164, 204, 165, - 152, -1, 75, 163, 174, 164, 165, 152, -1, 29, - 75, 163, 174, 164, 165, 152, -1, 25, 75, 163, - 174, 164, 165, 152, -1, 42, 75, 163, 174, 164, - 165, 152, -1, 35, 75, 163, 174, 164, 165, 152, - -1, 126, 75, 163, 174, 164, 165, 152, -1, 21, - 75, 163, 174, 164, 165, 152, -1, 26, 75, 163, - 174, 164, 165, 152, -1, 81, 163, 174, 162, 174, - 164, 165, 152, -1, 32, 163, 174, 162, 168, 164, - 165, 152, -1, 77, 163, 174, 162, 174, 162, 168, - 164, 165, 152, -1, 18, 163, 174, 162, 168, 162, - 168, 164, 165, 152, -1, 18, 163, 174, 162, 168, - 162, 168, 162, 207, 164, 165, 152, -1, 18, 163, - 174, 162, 168, 162, 168, 162, 170, 164, 165, 152, - -1, 45, 163, 174, 162, 169, 162, 169, 162, 166, - 164, 165, 152, -1, 45, 163, 174, 162, 169, 162, - 169, 162, 170, 162, 166, 164, 165, 152, -1, 45, - 163, 174, 162, 169, 162, 169, 162, 211, 162, 166, - 164, 165, 152, -1, 45, 163, 174, 162, 169, 162, - 166, 164, 139, 140, 45, 163, 174, 162, 169, 162, - 166, 164, -1, 25, 163, 174, 162, 169, 162, 169, - 162, 166, 164, 165, 152, -1, 25, 163, 174, 162, - 169, 162, 169, 162, 211, 162, 166, 164, 165, 152, - -1, 25, 163, 174, 162, 169, 162, 169, 162, 170, - 162, 166, 164, 165, 152, -1, 25, 163, 174, 162, - 169, 162, 166, 164, 139, 140, 25, 163, 174, 162, - 169, 162, 166, 164, -1, 34, 163, 174, 162, 167, - 162, 167, 162, 3, 162, 168, 162, 168, 162, 3, - 164, 165, 152, -1, 47, 163, 174, 162, 167, 162, - 167, 162, 3, 162, 169, 162, 169, 162, 3, 162, - 166, 164, 165, 152, -1, 27, 163, 174, 162, 167, - 162, 167, 162, 3, 162, 169, 162, 169, 162, 3, - 162, 166, 164, 165, 152, -1, 73, 163, 174, 162, - 167, 162, 167, 164, 165, 152, -1, 73, 163, 174, - 162, 167, 162, 167, 162, 209, 164, 165, 152, -1, - 73, 163, 174, 162, 167, 162, 167, 162, 170, 164, - 165, 152, -1, 49, 163, 164, 165, 152, -1, 33, - 163, 174, 162, 166, 164, 165, 152, -1, 205, 162, - 206, -1, 206, -1, 174, -1, 207, 162, 208, -1, - 208, -1, 168, -1, 209, 162, 210, -1, 210, -1, - 167, -1, 211, 162, 212, -1, 212, -1, 168, 162, - 168, -1, -1 + 152, -1, 87, 163, 174, 164, 165, 152, -1, -1, + 87, 163, 174, 162, 5, 164, 204, 165, 152, -1, + 75, 163, 174, 164, 165, 152, -1, 28, 75, 163, + 174, 164, 165, 152, -1, 24, 75, 163, 174, 164, + 165, 152, -1, 41, 75, 163, 174, 164, 165, 152, + -1, 34, 75, 163, 174, 164, 165, 152, -1, 126, + 75, 163, 174, 164, 165, 152, -1, 20, 75, 163, + 174, 164, 165, 152, -1, 25, 75, 163, 174, 164, + 165, 152, -1, 81, 163, 174, 162, 174, 164, 165, + 152, -1, 31, 163, 174, 162, 168, 164, 165, 152, + -1, 77, 163, 174, 162, 174, 162, 168, 164, 165, + 152, -1, 17, 163, 174, 162, 168, 162, 168, 164, + 165, 152, -1, 17, 163, 174, 162, 168, 162, 168, + 162, 207, 164, 165, 152, -1, 17, 163, 174, 162, + 168, 162, 168, 162, 170, 164, 165, 152, -1, 44, + 163, 174, 162, 169, 162, 169, 162, 166, 164, 165, + 152, -1, 44, 163, 174, 162, 169, 162, 169, 162, + 170, 162, 166, 164, 165, 152, -1, 44, 163, 174, + 162, 169, 162, 169, 162, 211, 162, 166, 164, 165, + 152, -1, 44, 163, 174, 162, 169, 162, 166, 164, + 139, 140, 44, 163, 174, 162, 169, 162, 166, 164, + -1, 24, 163, 174, 162, 169, 162, 169, 162, 166, + 164, 165, 152, -1, 24, 163, 174, 162, 169, 162, + 169, 162, 211, 162, 166, 164, 165, 152, -1, 24, + 163, 174, 162, 169, 162, 169, 162, 170, 162, 166, + 164, 165, 152, -1, 24, 163, 174, 162, 169, 162, + 166, 164, 139, 140, 24, 163, 174, 162, 169, 162, + 166, 164, -1, 33, 163, 174, 162, 167, 162, 167, + 162, 3, 162, 168, 162, 168, 162, 3, 164, 165, + 152, -1, 46, 163, 174, 162, 167, 162, 167, 162, + 3, 162, 169, 162, 169, 162, 3, 162, 166, 164, + 165, 152, -1, 26, 163, 174, 162, 167, 162, 167, + 162, 3, 162, 169, 162, 169, 162, 3, 162, 166, + 164, 165, 152, -1, 73, 163, 174, 162, 167, 162, + 167, 164, 165, 152, -1, 73, 163, 174, 162, 167, + 162, 167, 162, 209, 164, 165, 152, -1, 73, 163, + 174, 162, 167, 162, 167, 162, 170, 164, 165, 152, + -1, 48, 163, 164, 165, 152, -1, 32, 163, 174, + 162, 166, 164, 165, 152, -1, 205, 162, 206, -1, + 206, -1, 174, -1, 207, 162, 208, -1, 208, -1, + 168, -1, 209, 162, 210, -1, 210, -1, 167, -1, + 211, 162, 212, -1, 212, -1, 168, 162, 168, -1, + -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 297, 297, 300, 301, 304, 305, 306, 308, 309, - 311, 311, 312, 312, 313, 313, 315, 316, 317, 320, - 321, 322, 323, 323, 326, 327, 327, 330, 331, 331, - 332, 333, 333, 336, 337, 337, 338, 339, 339, 342, - 343, 344, 347, 348, 351, 352, 355, 357, 358, 359, - 360, 362, 363, 364, 365, 368, 369, 372, 373, 376, - 377, 380, 381, 382, 385, 386, 389, 390, 391, 394, - 395, 396, 397, 398, 399, 402, 409, 416, 423, 430, - 437, 446, 449, 452, 455, 458, 471, 479, 487, 494, - 502, 509, 517, 518, 519, 520, 521, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 566, 567, 568, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, - 595, 596, 597, 598, 599, 600, 601, 602, 603, 606, - 607, 610, 615, 620, 625, 626, 631, 636, 641, 646, - 651, 652, 657, 662, 663, 667, 668, 677, 678, 679, - 682, 689, 696, 703, 710, 717, 724, 731, 738, 747, - 752, 757, 762, 769, 811, 812, 815, 816, 817, 822, - 823, 824, 825, 826, 828, 829, 830, 832, 833, 834, - 835, 836, 837, 838, 845, 846, 847, 848, 849, 852, - 859, 866, 873, 880, 887, 894, 901, 908, 917, 922, - 927, 932, 939, 939, 940, 943, 943, 945, 948, 948, - 950, 953, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1011, - 1012, 1015, 1023, 1023, 1030, 1037, 1046, 1056, 1064, 1072, - 1081, 1088, 1096, 1119, 1142, 1151, 1151, 1158, 1158, 1166, - 1174, 1182, 1189, 1189, 1197, 1204, 1211, 1218, 1225, 1232, - 1239, 1246, 1253, 1262, 1272, 1280, 1287, 1297, 1305, 1315, - 1325, 1337, 1345, 1355, 1367, 1377, 1386, 1408, 1432, 1457, - 1458, 1459, 1461, 1463, 1472, 1473, 1476, 1479, 1480, 1483, - 1490, 1491, 1494, 1501, 1502, 1505, 1509 + 0, 300, 300, 303, 304, 307, 308, 309, 311, 312, + 314, 314, 315, 315, 316, 316, 318, 319, 320, 323, + 324, 325, 326, 326, 329, 330, 330, 333, 334, 334, + 335, 336, 336, 339, 340, 340, 341, 342, 342, 345, + 346, 347, 350, 351, 354, 355, 358, 360, 361, 362, + 363, 365, 366, 367, 368, 371, 372, 375, 376, 379, + 380, 383, 384, 385, 388, 389, 392, 393, 394, 397, + 398, 399, 400, 401, 402, 405, 412, 419, 426, 433, + 440, 449, 452, 455, 458, 461, 474, 482, 490, 497, + 505, 512, 520, 521, 522, 523, 524, 527, 528, 529, + 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, + 550, 551, 552, 553, 554, 557, 558, 559, 560, 561, + 562, 563, 564, 565, 566, 569, 570, 571, 574, 575, + 576, 577, 578, 579, 580, 581, 582, 583, 586, 587, + 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, + 598, 599, 600, 601, 602, 603, 604, 605, 606, 609, + 610, 613, 618, 623, 628, 629, 634, 639, 644, 649, + 654, 655, 660, 664, 669, 670, 674, 675, 684, 685, + 686, 689, 696, 703, 710, 717, 724, 731, 738, 745, + 754, 759, 764, 769, 776, 819, 820, 823, 824, 825, + 830, 831, 832, 833, 834, 836, 837, 838, 840, 841, + 842, 843, 844, 845, 846, 847, 854, 855, 856, 857, + 858, 861, 868, 875, 882, 889, 896, 903, 910, 917, + 926, 931, 936, 941, 948, 948, 949, 952, 952, 954, + 957, 957, 959, 962, 1012, 1013, 1014, 1015, 1016, 1017, + 1018, 1021, 1022, 1025, 1033, 1033, 1040, 1047, 1056, 1066, + 1074, 1082, 1091, 1098, 1106, 1129, 1152, 1161, 1161, 1168, + 1168, 1176, 1184, 1192, 1199, 1199, 1207, 1214, 1221, 1228, + 1235, 1242, 1249, 1256, 1263, 1272, 1282, 1290, 1297, 1307, + 1315, 1325, 1335, 1347, 1355, 1365, 1377, 1387, 1396, 1418, + 1442, 1467, 1468, 1469, 1471, 1473, 1482, 1483, 1486, 1489, + 1490, 1493, 1500, 1501, 1504, 1511, 1512, 1515, 1519 }; #endif @@ -999,39 +1003,38 @@ static const yytype_uint16 yyrline[] = First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { - "$end", "error", "$undefined", "INT", "REAL", "STRING", "COLOR", - "ANGDEGREE", "ANGRADIAN", "ARCMINUTE", "ARCSECOND", "PHYCOORD", - "IMGCOORD", "SEXSTR", "HMSSTR", "DMSSTR", "EOF_", "AMPLIFIER_", - "ANNULUS_", "ARCMIN_", "ARCSEC_", "ARROW_", "B1950_", "BACKGROUND_", - "BEGIN_", "BOX_", "BOXCIRCLE_", "BPANDA_", "CALLBACK_", "CIRCLE_", - "CIRCLE3D_", "COLOR_", "COMPASS_", "COMPOSITE_", "CPANDA_", "CROSS_", - "DASH_", "DASHLIST_", "DEBUG_", "DEGREES_", "DELETE_", "DETECTOR_", - "DIAMOND_", "ECLIPTIC_", "EDIT_", "ELLIPSE_", "END_", "EPANDA_", - "FALSE_", "FIELD_", "FIXED_", "FK4_", "FK4_NO_E_", "FK5_", "FONT_", - "GALACTIC_", "GLOBAL_", "HELIOECLIPTIC_", "HIGHLITE_", "ICRS_", - "IGNORE_", "IMAGE_", "INCLUDE_", "J2000_", "KEY_", "LINE_", "LINEAR_", - "MOVE_", "N_", "NO_", "OFF_", "ON_", "PHYSICAL_", "PIE_", "PIXELS_", - "POINT_", "POLYGON_", "PROJECTION_", "PROPERTY_", "ROTATE_", "ROTBOX_", - "RULER_", "SEGMENT_", "SELECT_", "SOURCE_", "SUPERGALACTIC_", "TAG_", - "TEXT_", "TEXTANGLE_", "TEXTROTATE_", "TILE_", "TRUE_", "VECTOR_", - "VERSION_", "UNHIGHLITE_", "UNSELECT_", "UPDATE_", "WCS_", "WCSA_", - "WCSB_", "WCSC_", "WCSD_", "WCSE_", "WCSF_", "WCSG_", "WCSH_", "WCSI_", - "WCSJ_", "WCSK_", "WCSL_", "WCSM_", "WCSN_", "WCSO_", "WCSP_", "WCSQ_", - "WCSR_", "WCSS_", "WCST_", "WCSU_", "WCSV_", "WCSW_", "WCSX_", "WCSY_", - "WCSZ_", "WCS0_", "WIDTH_", "X_", "Y_", "YES_", "'#'", "'\\n'", "';'", - "','", "'('", "')'", "'|'", "'='", "'+'", "'-'", "'&'", "'!'", "$accept", - "start", "commands", "command", "@1", "@2", "@3", "hash", "@4", - "comment", "@5", "shapeComment", "@6", "@7", "nonshapeComment", "@8", - "@9", "terminator", "numeric", "debug", "yesno", "sp", "bp", "ep", - "conjunction", "optangle", "angle", "value", "vvalue", "numberof", - "sexagesimal", "hms", "dms", "coord", "coordSystem", "wcsSystem", - "skyFrame", "skyDist", "property", "callBack", "global", - "globalProperty", "globalRuler", "globalCompass", "initGlobal", "local", - "localProperty", "localRuler", "localCompass", "localCpanda", "@10", - "localEpanda", "@11", "localBpanda", "@12", "initLocal", "pointShape", - "include", "nonshape", "@13", "shape", "@14", "@15", "@16", "polyNodes", - "polyNode", "aRads", "aRad", "aAngs", "aAng", "vRads", "vRad", - "postLocal", 0 + "$end", "error", "$undefined", "INT", "REAL", "STRING", "ANGDEGREE", + "ANGRADIAN", "ARCMINUTE", "ARCSECOND", "PHYCOORD", "IMGCOORD", "SEXSTR", + "HMSSTR", "DMSSTR", "EOF_", "AMPLIFIER_", "ANNULUS_", "ARCMIN_", + "ARCSEC_", "ARROW_", "B1950_", "BACKGROUND_", "BEGIN_", "BOX_", + "BOXCIRCLE_", "BPANDA_", "CALLBACK_", "CIRCLE_", "CIRCLE3D_", "COLOR_", + "COMPASS_", "COMPOSITE_", "CPANDA_", "CROSS_", "DASH_", "DASHLIST_", + "DEBUG_", "DEGREES_", "DELETE_", "DETECTOR_", "DIAMOND_", "ECLIPTIC_", + "EDIT_", "ELLIPSE_", "END_", "EPANDA_", "FALSE_", "FIELD_", "FILL_", + "FIXED_", "FK4_", "FK4_NO_E_", "FK5_", "FONT_", "GALACTIC_", "GLOBAL_", + "HELIOECLIPTIC_", "HIGHLITE_", "ICRS_", "IGNORE_", "IMAGE_", "INCLUDE_", + "J2000_", "KEY_", "LINE_", "LINEAR_", "MOVE_", "N_", "NO_", "OFF_", + "ON_", "PHYSICAL_", "PIE_", "PIXELS_", "POINT_", "POLYGON_", + "PROJECTION_", "PROPERTY_", "ROTATE_", "ROTBOX_", "RULER_", "SEGMENT_", + "SELECT_", "SOURCE_", "SUPERGALACTIC_", "TAG_", "TEXT_", "TEXTANGLE_", + "TEXTROTATE_", "TILE_", "TRUE_", "VECTOR_", "VERSION_", "UNHIGHLITE_", + "UNSELECT_", "UPDATE_", "WCS_", "WCSA_", "WCSB_", "WCSC_", "WCSD_", + "WCSE_", "WCSF_", "WCSG_", "WCSH_", "WCSI_", "WCSJ_", "WCSK_", "WCSL_", + "WCSM_", "WCSN_", "WCSO_", "WCSP_", "WCSQ_", "WCSR_", "WCSS_", "WCST_", + "WCSU_", "WCSV_", "WCSW_", "WCSX_", "WCSY_", "WCSZ_", "WCS0_", "WIDTH_", + "X_", "Y_", "YES_", "'#'", "'\\n'", "';'", "','", "'('", "')'", "'|'", + "'='", "'+'", "'-'", "'&'", "'!'", "$accept", "start", "commands", + "command", "@1", "@2", "@3", "hash", "@4", "comment", "@5", + "shapeComment", "@6", "@7", "nonshapeComment", "@8", "@9", "terminator", + "numeric", "debug", "yesno", "sp", "bp", "ep", "conjunction", "optangle", + "angle", "value", "vvalue", "numberof", "sexagesimal", "hms", "dms", + "coord", "coordSystem", "wcsSystem", "skyFrame", "skyDist", "property", + "callBack", "global", "globalProperty", "globalRuler", "globalCompass", + "initGlobal", "local", "localProperty", "localRuler", "localCompass", + "localCpanda", "@10", "localEpanda", "@11", "localBpanda", "@12", + "initLocal", "pointShape", "include", "nonshape", "@13", "shape", "@14", + "@15", "@16", "polyNodes", "polyNode", "aRads", "aRad", "aAngs", "aAng", + "vRads", "vRad", "postLocal", 0 }; #endif @@ -1080,20 +1083,20 @@ static const yytype_uint8 yyr1[] = 180, 180, 180, 180, 180, 180, 180, 180, 180, 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 184, - 184, 184, 184, 185, 186, 186, 187, 187, 187, 187, + 182, 183, 183, 183, 183, 183, 183, 183, 183, 183, + 184, 184, 184, 184, 185, 186, 186, 187, 187, 187, + 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, - 187, 187, 187, 187, 187, 187, 187, 187, 187, 188, - 188, 188, 188, 188, 188, 188, 188, 188, 189, 189, - 189, 189, 191, 190, 190, 193, 192, 192, 195, 194, - 194, 196, 197, 197, 197, 197, 197, 197, 197, 198, - 198, 199, 200, 199, 199, 199, 199, 199, 199, 199, - 201, 201, 201, 201, 201, 202, 201, 203, 201, 201, - 201, 201, 204, 201, 201, 201, 201, 201, 201, 201, + 187, 188, 188, 188, 188, 188, 188, 188, 188, 188, + 189, 189, 189, 189, 191, 190, 190, 193, 192, 192, + 195, 194, 194, 196, 197, 197, 197, 197, 197, 197, + 197, 198, 198, 199, 200, 199, 199, 199, 199, 199, + 199, 199, 201, 201, 201, 201, 201, 202, 201, 203, + 201, 201, 201, 201, 204, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, - 201, 201, 201, 201, 205, 205, 206, 207, 207, 208, - 209, 209, 210, 211, 211, 212, 213 + 201, 201, 201, 201, 201, 201, 205, 205, 206, 207, + 207, 208, 209, 209, 210, 211, 211, 212, 213 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1117,21 +1120,21 @@ static const yytype_uint8 yyr2[] = 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 3, 3, 4, 3, 3, 3, 1, 1, 1, - 3, 4, 4, 3, 3, 3, 7, 3, 3, 3, - 4, 2, 2, 2, 2, 2, 2, 1, 1, 2, - 1, 1, 1, 0, 3, 1, 3, 3, 4, 3, - 3, 3, 3, 5, 1, 1, 1, 3, 4, 4, - 3, 3, 3, 7, 3, 3, 3, 3, 3, 4, - 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, - 1, 1, 0, 7, 1, 0, 10, 1, 0, 10, - 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 10, 0, 7, 6, 8, 8, 10, 8, 8, - 8, 8, 10, 10, 10, 0, 7, 0, 7, 8, - 10, 6, 0, 9, 6, 7, 7, 7, 7, 7, - 7, 7, 8, 8, 10, 10, 12, 12, 12, 14, - 14, 18, 12, 14, 14, 18, 18, 20, 20, 10, - 12, 12, 5, 8, 3, 1, 1, 3, 1, 1, - 3, 1, 1, 3, 1, 3, 0 + 3, 4, 3, 4, 3, 3, 3, 7, 3, 3, + 3, 4, 2, 2, 2, 2, 2, 2, 1, 1, + 2, 1, 1, 1, 0, 3, 1, 3, 3, 4, + 3, 3, 3, 3, 5, 1, 1, 1, 3, 4, + 3, 4, 3, 3, 3, 7, 3, 3, 3, 3, + 3, 4, 2, 2, 2, 2, 2, 2, 1, 1, + 2, 1, 1, 1, 0, 7, 1, 0, 10, 1, + 0, 10, 1, 0, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 10, 0, 7, 6, 8, 8, 10, + 8, 8, 8, 8, 10, 10, 10, 0, 7, 0, + 7, 8, 10, 6, 0, 9, 6, 7, 7, 7, + 7, 7, 7, 7, 8, 8, 10, 10, 12, 12, + 12, 14, 14, 18, 12, 14, 14, 18, 18, 20, + 20, 10, 12, 12, 5, 8, 3, 1, 1, 3, + 1, 1, 3, 1, 1, 3, 1, 3, 0 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1139,104 +1142,104 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 203, 0, 251, 1, 95, 126, 0, 94, 133, 125, + 204, 0, 253, 1, 95, 126, 0, 94, 133, 125, 127, 128, 131, 0, 134, 130, 92, 129, 14, 93, 132, 0, 7, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 251, 0, 10, 96, 12, 0, 45, 44, 6, - 179, 0, 0, 0, 177, 0, 145, 142, 141, 0, - 139, 146, 0, 143, 0, 144, 0, 138, 178, 0, - 0, 0, 0, 0, 0, 0, 55, 170, 24, 9, - 0, 2, 41, 39, 40, 4, 24, 24, 57, 0, - 57, 0, 57, 57, 57, 57, 57, 57, 0, 0, - 57, 57, 57, 57, 57, 57, 275, 57, 57, 57, - 277, 57, 57, 0, 22, 259, 260, 0, 16, 0, + 124, 253, 0, 10, 96, 12, 0, 45, 44, 6, + 179, 0, 0, 0, 177, 0, 145, 142, 0, 141, + 0, 139, 146, 0, 143, 0, 144, 0, 138, 178, + 0, 0, 0, 0, 0, 0, 0, 55, 170, 24, + 9, 0, 2, 41, 39, 40, 4, 24, 24, 57, + 0, 57, 0, 57, 57, 57, 57, 57, 57, 0, + 0, 57, 57, 57, 57, 57, 57, 277, 57, 57, + 57, 279, 57, 57, 0, 22, 261, 262, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 25, 56, 8, 0, 15, 3, - 11, 13, 58, 0, 57, 57, 0, 57, 0, 57, - 0, 0, 0, 0, 0, 57, 57, 0, 0, 59, - 0, 0, 0, 57, 0, 0, 0, 57, 0, 0, - 57, 57, 57, 57, 57, 57, 262, 57, 0, 57, - 18, 0, 0, 19, 17, 172, 202, 200, 201, 0, - 184, 0, 175, 0, 257, 253, 258, 252, 255, 254, - 256, 180, 136, 137, 135, 0, 198, 0, 0, 197, - 185, 176, 43, 42, 67, 68, 66, 187, 188, 183, - 189, 174, 46, 54, 52, 51, 53, 49, 50, 48, - 47, 171, 0, 169, 55, 55, 55, 82, 83, 84, - 55, 55, 55, 55, 55, 0, 0, 55, 0, 55, - 0, 55, 55, 55, 55, 55, 0, 0, 55, 55, - 60, 61, 55, 55, 59, 0, 55, 55, 55, 0, - 59, 55, 0, 0, 0, 0, 0, 0, 57, 0, - 21, 0, 23, 20, 199, 0, 173, 182, 181, 195, - 196, 191, 0, 192, 193, 194, 26, 0, 0, 0, - 0, 0, 0, 0, 0, 59, 59, 0, 59, 0, - 59, 0, 0, 0, 64, 0, 59, 59, 0, 0, - 62, 326, 0, 0, 61, 316, 55, 315, 0, 0, - 0, 55, 0, 61, 0, 59, 55, 55, 55, 55, - 55, 0, 59, 55, 0, 0, 89, 91, 90, 88, - 85, 86, 87, 72, 73, 74, 70, 71, 69, 55, - 61, 61, 55, 55, 55, 55, 55, 55, 55, 61, - 55, 61, 59, 59, 59, 59, 65, 55, 61, 61, - 55, 55, 63, 28, 312, 27, 59, 55, 326, 0, - 61, 55, 55, 59, 61, 59, 326, 55, 61, 0, - 0, 64, 0, 0, 59, 61, 0, 0, 190, 0, - 326, 326, 0, 0, 0, 0, 0, 0, 64, 326, - 0, 326, 61, 61, 61, 61, 0, 326, 326, 64, - 0, 216, 0, 0, 0, 0, 0, 0, 214, 0, - 0, 0, 0, 0, 0, 215, 0, 0, 0, 0, - 0, 0, 0, 0, 55, 205, 61, 0, 284, 314, - 326, 0, 64, 61, 326, 282, 281, 0, 326, 59, - 59, 59, 55, 59, 61, 326, 55, 186, 55, 290, - 286, 78, 79, 80, 76, 77, 75, 67, 66, 59, - 55, 291, 55, 285, 326, 326, 326, 326, 55, 288, - 287, 59, 55, 55, 248, 0, 0, 0, 0, 242, - 0, 245, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 326, 0, 0, 0, 30, 326, 55, 276, - 59, 59, 326, 278, 61, 59, 289, 61, 61, 61, - 0, 61, 326, 264, 0, 55, 33, 0, 0, 61, - 61, 64, 0, 270, 271, 293, 313, 0, 61, 64, - 0, 250, 228, 0, 0, 163, 161, 156, 0, 166, - 150, 167, 153, 165, 159, 148, 162, 151, 149, 168, - 164, 0, 207, 241, 239, 240, 0, 221, 244, 226, - 0, 0, 247, 227, 0, 210, 0, 217, 0, 237, - 0, 0, 236, 222, 212, 211, 224, 225, 220, 209, - 29, 206, 326, 204, 279, 0, 61, 61, 61, 292, - 326, 61, 326, 326, 326, 59, 326, 263, 326, 0, - 36, 59, 0, 319, 59, 55, 318, 326, 0, 326, - 72, 69, 59, 55, 55, 55, 324, 55, 55, 0, - 326, 59, 55, 55, 55, 0, 155, 152, 158, 157, - 154, 160, 0, 238, 0, 0, 208, 0, 219, 218, - 234, 235, 230, 0, 231, 232, 233, 32, 322, 59, - 59, 321, 326, 326, 326, 283, 326, 268, 266, 269, - 61, 265, 35, 326, 61, 0, 61, 0, 61, 295, - 0, 273, 61, 0, 64, 64, 0, 0, 0, 272, - 61, 64, 64, 0, 55, 213, 0, 55, 55, 0, - 61, 0, 61, 309, 294, 274, 280, 326, 38, 326, - 81, 326, 317, 326, 57, 326, 325, 59, 59, 323, - 55, 55, 57, 326, 59, 59, 55, 0, 0, 0, - 0, 229, 326, 320, 326, 267, 261, 297, 296, 0, - 302, 61, 61, 0, 0, 0, 298, 61, 61, 0, - 0, 223, 0, 0, 311, 310, 55, 326, 326, 55, - 55, 55, 326, 326, 55, 55, 55, 55, 0, 304, - 303, 0, 0, 0, 299, 300, 0, 0, 0, 243, - 0, 55, 55, 59, 55, 55, 0, 0, 64, 64, - 61, 64, 64, 0, 0, 59, 59, 326, 59, 59, - 249, 246, 305, 61, 306, 301, 61, 326, 326, 308, - 307 + 0, 0, 0, 0, 0, 0, 25, 56, 8, 0, + 15, 3, 11, 13, 58, 0, 57, 57, 0, 57, + 0, 57, 0, 0, 0, 0, 0, 57, 57, 0, + 0, 59, 0, 0, 0, 57, 0, 0, 0, 57, + 0, 0, 57, 57, 57, 57, 57, 57, 264, 57, + 0, 57, 18, 0, 0, 19, 17, 172, 203, 201, + 202, 0, 185, 0, 182, 175, 0, 259, 255, 260, + 254, 257, 256, 258, 180, 136, 137, 135, 0, 199, + 0, 0, 198, 186, 176, 43, 42, 67, 68, 66, + 188, 189, 184, 190, 174, 46, 54, 52, 51, 53, + 49, 50, 48, 47, 171, 0, 169, 55, 55, 55, + 82, 83, 84, 55, 55, 55, 55, 55, 0, 0, + 55, 0, 55, 0, 55, 55, 55, 55, 55, 0, + 0, 55, 55, 60, 61, 55, 55, 59, 0, 55, + 55, 55, 0, 59, 55, 0, 0, 0, 0, 0, + 0, 57, 0, 21, 0, 23, 20, 200, 0, 173, + 183, 181, 196, 197, 192, 0, 193, 194, 195, 26, + 0, 0, 0, 0, 0, 0, 0, 0, 59, 59, + 0, 59, 0, 59, 0, 0, 0, 64, 0, 59, + 59, 0, 0, 62, 328, 0, 0, 61, 318, 55, + 317, 0, 0, 0, 55, 0, 61, 0, 59, 55, + 55, 55, 55, 55, 0, 59, 55, 0, 0, 89, + 91, 90, 88, 85, 86, 87, 72, 73, 74, 70, + 71, 69, 55, 61, 61, 55, 55, 55, 55, 55, + 55, 55, 61, 55, 61, 59, 59, 59, 59, 65, + 55, 61, 61, 55, 55, 63, 28, 314, 27, 59, + 55, 328, 0, 61, 55, 55, 59, 61, 59, 328, + 55, 61, 0, 0, 64, 0, 0, 59, 61, 0, + 0, 191, 0, 328, 328, 0, 0, 0, 0, 0, + 0, 64, 328, 0, 328, 61, 61, 61, 61, 0, + 328, 328, 64, 0, 217, 0, 0, 0, 0, 0, + 0, 215, 0, 0, 0, 0, 0, 0, 0, 216, + 0, 0, 0, 0, 0, 0, 0, 0, 55, 206, + 61, 0, 286, 316, 328, 0, 64, 61, 328, 284, + 283, 0, 328, 59, 59, 59, 55, 59, 61, 328, + 55, 187, 55, 292, 288, 78, 79, 80, 76, 77, + 75, 67, 66, 59, 55, 293, 55, 287, 328, 328, + 328, 328, 55, 290, 289, 59, 55, 55, 250, 0, + 0, 0, 0, 244, 0, 247, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 328, 0, 0, + 0, 30, 328, 55, 278, 59, 59, 328, 280, 61, + 59, 291, 61, 61, 61, 0, 61, 328, 266, 0, + 55, 33, 0, 0, 61, 61, 64, 0, 272, 273, + 295, 315, 0, 61, 64, 0, 252, 230, 0, 0, + 163, 161, 156, 0, 166, 150, 167, 153, 165, 159, + 148, 162, 151, 149, 168, 164, 0, 208, 243, 241, + 242, 0, 223, 246, 228, 0, 0, 249, 229, 0, + 220, 211, 0, 218, 0, 239, 0, 0, 238, 224, + 213, 212, 226, 227, 222, 210, 29, 207, 328, 205, + 281, 0, 61, 61, 61, 294, 328, 61, 328, 328, + 328, 59, 328, 265, 328, 0, 36, 59, 0, 321, + 59, 55, 320, 328, 0, 328, 72, 69, 59, 55, + 55, 55, 326, 55, 55, 0, 328, 59, 55, 55, + 55, 0, 155, 152, 158, 157, 154, 160, 0, 240, + 0, 0, 209, 0, 221, 219, 236, 237, 232, 0, + 233, 234, 235, 32, 324, 59, 59, 323, 328, 328, + 328, 285, 328, 270, 268, 271, 61, 267, 35, 328, + 61, 0, 61, 0, 61, 297, 0, 275, 61, 0, + 64, 64, 0, 0, 0, 274, 61, 64, 64, 0, + 55, 214, 0, 55, 55, 0, 61, 0, 61, 311, + 296, 276, 282, 328, 38, 328, 81, 328, 319, 328, + 57, 328, 327, 59, 59, 325, 55, 55, 57, 328, + 59, 59, 55, 0, 0, 0, 0, 231, 328, 322, + 328, 269, 263, 299, 298, 0, 304, 61, 61, 0, + 0, 0, 300, 61, 61, 0, 0, 225, 0, 0, + 313, 312, 55, 328, 328, 55, 55, 55, 328, 328, + 55, 55, 55, 55, 0, 306, 305, 0, 0, 0, + 301, 302, 0, 0, 0, 245, 0, 55, 55, 59, + 55, 55, 0, 0, 64, 64, 61, 64, 64, 0, + 0, 59, 59, 328, 59, 59, 251, 248, 307, 61, + 308, 303, 61, 328, 328, 310, 309 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 51, 52, 96, 97, 88, 190, 191, 146, - 242, 394, 462, 534, 553, 554, 639, 95, 250, 59, - 241, 731, 153, 271, 331, 385, 386, 653, 378, 644, - 251, 252, 253, 335, 53, 54, 55, 219, 463, 591, - 86, 87, 220, 199, 2, 555, 465, 613, 596, 599, - 600, 603, 604, 572, 573, 56, 211, 127, 193, 288, - 128, 173, 177, 544, 336, 337, 645, 646, 690, 691, - 655, 656, 395 + -1, 1, 51, 52, 97, 98, 89, 192, 193, 148, + 245, 397, 466, 539, 558, 559, 645, 96, 253, 59, + 244, 737, 155, 274, 334, 388, 389, 659, 381, 650, + 254, 255, 256, 338, 53, 54, 55, 222, 467, 596, + 87, 88, 223, 201, 2, 560, 469, 619, 601, 604, + 605, 608, 609, 577, 578, 56, 214, 128, 195, 291, + 129, 175, 179, 549, 339, 340, 651, 652, 696, 697, + 661, 662, 398 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing @@ -1244,355 +1247,348 @@ static const yytype_int16 yydefgoto[] = #define YYPACT_NINF -679 static const yytype_int16 yypact[] = { - -679, 40, 1717, -679, -679, -679, 99, -679, -679, -679, - -679, -679, -679, 2582, -679, -679, -679, -679, -679, -679, - -679, 51, -679, -679, -679, -679, -679, -679, -679, -679, + -679, 5, 1601, -679, -679, -679, 78, -679, -679, -679, + -679, -679, -679, 2514, -679, -679, -679, -679, -679, -679, + -679, 39, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, - -679, 1475, 54, -679, -679, -679, 1667, -679, -679, -679, - -679, -93, -77, -74, -36, -27, -679, -679, -679, -8, - -679, -679, 5, -679, 26, -679, 45, -679, 52, 57, - 68, 75, 86, 103, 115, 129, 127, -679, 4, -679, - 54, -679, -679, -679, -679, -679, 4, 4, 109, 179, - -44, 194, 109, -37, 109, 109, 109, 109, 196, 197, - 109, 109, 109, 109, 109, 109, -679, 109, 109, 109, - -679, 109, 109, 198, 267, -679, -679, 1250, -679, 265, - 2156, 274, 275, 276, 279, 277, 1832, 280, 224, 281, - 290, 2611, 292, 23, -679, -679, -679, 2582, -679, -679, - -679, -679, -679, 603, 109, 109, 603, 109, 603, 109, - 603, 603, 603, 603, 603, 109, 109, 603, 603, 162, - 603, 603, 603, 109, 603, 603, 603, 109, 603, 603, - 109, 109, 109, 109, 109, 109, -679, 109, 304, 109, - -679, 303, 517, -679, -679, -679, -679, 485, -679, 305, - -679, 306, -679, 310, -679, -679, -679, -679, -679, -679, - -679, 311, -679, -679, -679, 2372, -679, 2048, 2372, -679, + -679, 1425, 21, -679, -679, -679, 1185, -679, -679, -679, + -679, -80, -67, -64, -53, -31, -679, -679, 1, -679, + 7, -679, -679, 35, -679, 38, -679, 40, -679, 64, + 68, 77, 89, 91, 101, 109, 112, 24, -679, -76, + -679, 21, -679, -679, -679, -679, -679, -76, -76, 54, + -29, -68, 82, 54, -66, 54, 54, 54, 54, 174, + 175, 54, 54, 54, 54, 54, 54, -679, 54, 54, + 54, -679, 54, 54, 181, 461, -679, -679, 1709, -679, + 253, 2084, 256, 257, 258, 262, 265, 370, 1757, 266, + 202, 267, 273, 2543, 274, 204, -679, -679, -679, 2514, + -679, -679, -679, -679, -679, 619, 54, 54, 619, 54, + 619, 54, 619, 619, 619, 619, 619, 54, 54, 619, + 619, 148, 619, 619, 619, 54, 619, 619, 619, 54, + 619, 619, 54, 54, 54, 54, 54, 54, -679, 54, + 283, 54, -679, 282, 355, -679, -679, -679, -679, 586, + -679, 292, -679, 295, -679, -679, 296, -679, -679, -679, + -679, -679, -679, -679, 297, -679, -679, -679, 2302, -679, + 1975, 2302, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, + -679, -679, -679, -679, -679, 299, -679, 169, 169, 169, + -679, -679, -679, 169, 169, 169, 169, 169, 619, 619, + 169, 619, 169, 619, 169, 169, 169, 169, 169, 619, + 619, 169, 169, -679, 167, 169, 169, 148, 619, 169, + 169, 169, 619, -1, 169, 619, 619, 619, 619, 619, + 619, 54, 619, -679, 619, -679, -679, -679, 303, -679, + -679, -679, -679, -679, -679, 2411, -679, -679, -679, -679, + 304, 302, 298, 212, 308, 300, 300, 652, 148, 148, + 741, 148, 202, 148, 652, 652, 652, 202, 202, 148, + 148, 741, 202, 186, 187, 619, 202, 167, -679, 149, + -679, 619, 741, 619, 149, 317, 167, 652, 148, 169, + 169, 169, 169, 169, 619, 148, 169, 323, 184, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, - -679, -679, 312, -679, 186, 186, 186, -679, -679, -679, - 186, 186, 186, 186, 186, 603, 603, 186, 603, 186, - 603, 186, 186, 186, 186, 186, 603, 603, 186, 186, - -679, 185, 186, 186, 162, 603, 186, 186, 186, 603, - 22, 186, 603, 603, 603, 603, 603, 603, 109, 603, - -679, 603, -679, -679, -679, 317, -679, -679, -679, -679, - -679, -679, 2480, -679, -679, -679, -679, 316, 313, 315, - 195, 318, 314, 314, 551, 162, 162, 618, 162, 224, - 162, 551, 551, 551, 224, 224, 162, 162, 618, 224, - 190, 201, 603, 224, 185, -679, 106, -679, 603, 618, - 603, 106, 328, 185, 551, 162, 186, 186, 186, 186, - 186, 603, 162, 186, 331, 56, -679, -679, -679, -679, - -679, -679, -679, -679, -679, -679, -679, -679, -679, 186, - 185, 185, 186, 186, 186, 186, 186, 186, 186, 185, - 186, 185, 162, 162, 162, 162, -679, 186, 185, 185, - 186, 186, -679, 2482, -679, -679, 162, 186, 201, 603, - 185, 186, 186, 162, 185, 162, 201, 186, 185, 551, - 551, 224, 603, 603, 112, 185, 551, 332, -679, 551, - 201, 201, 330, 329, 333, 334, 327, 195, 357, 201, - 224, 201, 185, 185, 185, 185, 224, 201, 201, 357, - 224, -679, 205, 206, 210, 211, 214, 215, -36, 216, - 217, 222, 234, 237, 238, 52, 239, 241, 244, 246, - 252, 253, 387, 257, 82, -679, 185, 224, -679, -679, - 201, 551, 224, 185, 201, -679, -679, 224, 201, 162, - 162, 162, 186, 162, 185, 1595, 186, -679, 106, -679, - -679, -679, -679, -679, -679, -679, -679, 10, 31, 162, - 186, -679, 186, -679, 201, 201, 201, 201, 186, -679, - -679, 162, 186, 186, 337, 1338, 389, 2264, 395, 339, - 404, 348, 405, 406, 277, 1940, 408, 413, 224, 416, - 418, 420, -679, 23, 419, 2482, -679, 201, 106, -679, - 162, 162, 201, -679, 185, 162, -679, 185, 185, 185, - 551, 185, 1595, -679, 424, 94, -679, 224, 38, 185, - -67, 128, 427, -679, -679, -679, -679, 428, 13, 128, - 429, -679, -679, 300, 130, -679, -679, -679, 136, -679, + -679, -679, 169, 167, 167, 169, 169, 169, 169, 169, + 169, 169, 167, 169, 167, 148, 148, 148, 148, -679, + 169, 167, 167, 169, 169, -679, 2413, -679, -679, 148, + 169, 187, 619, 167, 169, 169, 148, 167, 148, 187, + 169, 167, 652, 652, 202, 619, 619, 67, 167, 652, + 325, -679, 652, 187, 187, 327, 326, 331, 334, 330, + 212, 677, 187, 202, 187, 167, 167, 167, 167, 202, + 187, 187, 677, 202, -679, 209, 210, 211, 213, 214, + 221, -53, 225, 226, 228, 229, 231, 233, 239, 64, + 240, 243, 244, 247, 249, 255, 343, 260, 80, -679, + 167, 202, -679, -679, 187, 652, 202, 167, 187, -679, + -679, 202, 187, 148, 148, 148, 169, 148, 167, 1545, + 169, -679, 149, -679, -679, -679, -679, -679, -679, -679, + -679, 18, 13, 148, 169, -679, 169, -679, 187, 187, + 187, 187, 169, -679, -679, 148, 169, 169, 329, 557, + 387, 2193, 394, 340, 399, 346, 405, 407, 417, 370, + 1866, 416, 418, 202, 421, 424, 425, -679, 204, 428, + 2413, -679, 187, 149, -679, 148, 148, 187, -679, 167, + 148, -679, 167, 167, 167, 652, 167, 1545, -679, 429, + 123, -679, 202, 51, 167, -95, 551, 438, -679, -679, + -679, -679, 440, -33, 551, 443, -679, -679, 277, 45, + -679, -679, -679, 116, -679, -679, -679, -679, -679, -679, + -679, -679, -679, -679, -679, -679, 444, -679, -679, 586, + -679, 445, -679, -679, -679, 315, 448, -679, -679, 319, + -679, -679, 450, 452, 2302, -679, 1975, 2302, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, -679, - -679, 430, -679, -679, 485, -679, 433, -679, -679, -679, - 307, 436, -679, -679, 309, -679, 441, 442, 2372, -679, - 2048, 2372, -679, -679, -679, -679, -679, -679, -679, -679, - -679, -679, -679, -679, -679, 104, 185, 185, 185, -679, - 201, 185, 1595, 1595, 1595, 162, 1595, -679, -679, 443, - -679, 162, 319, -679, 162, 106, -679, 201, 321, 201, - 118, 145, 162, 186, 186, 186, -679, 186, 186, 324, - 201, 162, 186, 186, 186, 224, -679, -679, -679, -679, - -679, -679, 444, -679, 445, 224, -679, 224, -679, -679, - -679, -679, -679, 2480, -679, -679, -679, -679, -679, 162, - 21, -679, 201, 201, 201, -679, 201, -679, -679, -679, - 185, -679, -679, -679, 185, 448, 185, 551, 185, -679, - 421, -679, 185, 551, 224, 515, 618, 551, 422, -679, - 185, 224, 515, 618, -81, -679, 450, -55, 15, 56, - 185, 224, 185, -679, -679, -679, -679, 1595, -679, 1595, - -679, 201, -679, 201, 109, 201, -679, 162, 162, -679, - 186, 186, 109, 201, 162, 162, 186, 325, 462, 335, - 342, -679, 201, -679, 201, -679, -679, -679, -679, 603, - -679, 185, 185, 618, 551, 603, -679, 185, 185, 618, - 551, -679, 551, 551, -679, -679, 186, 201, 201, 186, - 186, 186, 201, 201, 186, 84, 111, 134, 618, -679, - -679, 463, 467, 618, -679, -679, 473, 344, 551, -679, - 346, 186, 186, 162, 186, 186, 224, 224, 224, 224, - 185, 224, 224, 351, 352, 162, 162, 201, 162, 162, - -679, -679, -679, 185, -679, -679, 185, 201, 201, -679, - -679 + -679, 104, 167, 167, 167, -679, 187, 167, 1545, 1545, + 1545, 148, 1545, -679, -679, 456, -679, 148, 321, -679, + 148, 149, -679, 187, 322, 187, -9, 208, 148, 169, + 169, 169, -679, 169, 169, 332, 187, 148, 169, 169, + 169, 202, -679, -679, -679, -679, -679, -679, 458, -679, + 462, 202, -679, 202, -679, -679, -679, -679, -679, 2411, + -679, -679, -679, -679, -679, 148, 31, -679, 187, 187, + 187, -679, 187, -679, -679, -679, 167, -679, -679, -679, + 167, 463, 167, 652, 167, -679, 446, -679, 167, 652, + 202, 732, 741, 652, 427, -679, 167, 202, 732, 741, + -101, -679, 466, -83, -16, 184, 167, 202, 167, -679, + -679, -679, -679, 1545, -679, 1545, -679, 187, -679, 187, + 54, 187, -679, 148, 148, -679, 169, 169, 54, 187, + 148, 148, 169, 342, 475, 347, 350, -679, 187, -679, + 187, -679, -679, -679, -679, 619, -679, 167, 167, 741, + 652, 619, -679, 167, 167, 741, 652, -679, 652, 652, + -679, -679, 169, 187, 187, 169, 169, 169, 187, 187, + 169, -5, 8, 12, 741, -679, -679, 481, 483, 741, + -679, -679, 491, 365, 652, -679, 371, 169, 169, 148, + 169, 169, 202, 202, 202, 202, 167, 202, 202, 369, + 372, 148, 148, 187, 148, 148, -679, -679, -679, 167, + -679, -679, 167, 187, 187, -679, -679 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -679, -679, -679, 431, -679, -679, -679, -679, -679, 133, - -679, 719, -679, -679, -531, -679, -679, 390, 62, -679, - -46, -86, -99, 546, 616, -359, 7, 345, -282, -496, - 177, -679, -79, 634, -97, 354, -100, -154, -3, -679, - -679, 349, -679, -679, -679, 100, -35, -679, -679, -679, - -679, -679, -679, -679, -679, -679, -25, 380, 320, -679, - 378, -679, -679, -679, -247, 110, -274, -192, -458, -214, - -560, -678, -49 + -679, -679, -679, 454, -679, -679, -679, -679, -679, 93, + -679, 665, -679, -679, -525, -679, -679, 420, 46, -679, + -30, -87, -93, 494, 564, 60, -17, 377, -284, -490, + 198, -679, -82, 66, -86, 375, -90, -117, -10, -679, + -679, 364, -679, -679, -679, 118, -25, -679, -679, -679, + -679, -679, -679, -679, -679, -679, -6, 404, 338, -679, + 391, -679, -679, -679, -254, 122, -255, -179, -584, -202, + -572, -678, -50 }; /* 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 -327 +#define YYTABLE_NINF -329 static const yytype_int16 yytable[] = { - 147, 156, 91, 158, 160, 161, 162, 163, 164, 663, - 85, 167, 168, 169, 170, 171, 172, -55, 174, 175, - 176, 637, 178, 179, -55, -55, 232, -55, -55, -55, - 198, 155, 341, 197, -55, -55, 218, 749, 159, 217, - 3, 222, 223, 129, 749, 363, 390, 364, 365, 366, - 367, 145, 481, 757, 89, 255, 256, 402, 258, 130, - 260, 300, 131, 303, 305, 654, 266, 267, 330, 499, - 92, 233, 648, 662, 275, 212, 213, 145, 279, 759, - 511, 282, 283, 284, 285, 286, 287, -31, 289, 152, - 291, 234, 235, 236, 237, 214, 152, 294, -326, -37, - -140, 697, 698, 699, 414, 701, 642, 222, 223, 132, - -326, 224, 225, 541, 238, -55, -55, 302, 299, -55, - 301, 304, -59, -55, -55, -55, -55, -55, 133, 689, - 749, 222, 223, 144, -67, 650, 225, 364, 365, 366, - 367, 134, 145, -24, 85, 227, 500, 145, 330, 760, - 239, 240, 659, 145, 145, 270, 270, 512, 307, 308, - 309, -66, 135, 145, 310, 311, 312, 313, 314, 57, - 58, 317, 642, 319, 666, 321, 322, 323, 324, 325, - 669, 136, 328, 329, 93, 94, 332, 333, -147, 351, - 338, 339, 340, 137, 342, 344, 642, 667, 222, 223, - 226, 418, 652, 670, 138, 355, 765, 724, 766, 668, - 661, 139, -326, -326, 145, 671, 145, 727, 807, 728, - 795, 148, 140, 797, -326, -326, 145, 222, 223, 150, - 151, 224, 225, 361, 362, -59, -59, -59, 145, 141, - 270, -59, 152, 145, 145, 809, 270, -67, -67, -67, - 399, 142, -67, -67, 154, 399, 144, -24, -24, 145, - 409, 410, 411, 412, 413, 143, 145, 416, 810, 157, - 195, 165, 166, 180, -66, -66, -66, 200, 201, -66, - -66, 202, 203, 419, 228, 221, 422, 423, 424, 425, - 426, 427, 428, 229, 430, 231, 270, 181, 204, 182, - 183, 436, 205, 206, 439, 440, 207, 290, 292, 296, - 295, 467, 208, 297, 298, 471, 472, 306, 145, 209, - 330, 477, 354, 356, 357, 392, 380, 358, 399, 249, - 393, 247, 387, 405, 417, 487, 391, 491, 492, 495, - 397, 514, 515, 493, 184, 494, 516, 517, 185, 186, - 518, 519, 520, 521, 187, 747, 748, 188, 522, 189, - 222, 223, 754, 755, 497, 225, 373, 374, 375, 376, - 523, 612, 359, 524, 525, 526, 368, 527, 535, 377, - 528, 226, 529, 368, 368, 368, 226, 226, 530, 531, - 377, 226, 532, 533, 592, 226, 550, 571, 597, 598, - 557, 377, 558, 210, 125, 126, 368, 601, 602, 606, - 605, 422, 427, 614, 561, 536, 562, 595, 615, 617, - 594, 618, 567, 619, 622, 611, 569, 570, 610, 638, - 657, 658, 664, 665, 750, 672, 556, 502, 674, 676, - 675, 756, 677, 508, 678, 679, 744, 513, 703, 725, - 726, 740, 625, 758, 681, 705, 684, 686, 780, 825, - 826, 710, 828, 829, 718, 781, 812, 752, 782, 535, - 813, 368, 368, 226, 538, 783, 815, 816, 368, 817, - 149, 368, 90, 620, 545, 830, 831, 621, 360, 496, - 498, 789, 226, 464, 673, 230, 243, 794, 226, 607, - 623, 498, 226, 556, 192, 194, 640, 5, 796, 469, - 683, 680, 293, 682, 685, 742, 811, 763, 222, 223, - 0, 814, 650, 225, 364, 365, 366, 367, 8, 226, - 0, 0, 0, 368, 226, 616, 9, 10, 11, 226, - 12, 0, 14, 0, 15, 0, 0, 181, 17, 182, - 183, 0, 0, 0, 222, 223, 0, 0, 363, 707, - 364, 365, 366, 367, 641, 0, 0, 713, 714, 715, - 20, 716, 717, 687, 0, 761, 721, 722, 723, 0, - 0, 0, 0, 556, 556, 556, 729, 556, 0, 702, - 226, 0, 0, 0, 184, 0, 0, 0, 185, 186, - 0, 0, 0, 0, 187, 0, 222, 223, 0, 189, - 244, 0, 368, 0, 245, 246, 247, 248, 249, 226, - 368, 222, 223, 651, 0, 372, 0, 373, 374, 375, - 376, 651, 688, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 769, 0, 0, 0, 0, - 0, 0, 0, 775, 738, 0, 0, 0, 0, 369, - 0, 0, 0, 0, 773, 774, 382, 383, 384, 0, - 779, 0, 688, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 688, 0, 688, 0, 0, 226, 556, 407, - 556, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 798, 0, 0, 801, 802, 803, 0, 0, 806, 808, - 707, 808, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 818, 819, 226, 821, 822, - 0, 0, 0, 0, 0, 0, 0, 226, 688, 226, + 149, 92, 669, 86, -55, 3, -67, 157, 158, 161, + 160, 162, 163, 164, 165, 166, -55, -55, 169, 170, + 171, 172, 173, 174, -55, 176, 177, 178, 344, 180, + 181, 147, 643, 763, -55, -55, 93, -55, -55, -24, + 333, 200, 90, 755, 654, 199, 156, 393, 221, 147, + 755, 765, 220, 146, 225, 226, 130, 366, 405, 367, + 368, 369, 370, 258, 259, 154, 261, 154, 263, 131, + -55, -55, 132, -55, 269, 270, 660, -55, -55, -55, + -55, -55, 278, -140, 668, -31, 282, 730, 672, 285, + 286, 287, 288, 289, 290, -328, 292, 733, 294, 734, + 417, 303, 333, 306, 308, 133, 665, 225, 226, 297, + 227, 228, 673, 703, 704, 705, 147, 707, 766, 648, + -67, -67, -67, 230, 674, -67, -67, 147, -37, 813, + 305, 147, 302, 273, 304, 307, 755, 134, -328, 86, + 147, 695, 815, 135, 147, 147, 816, 504, 57, 58, + 147, 94, 95, 146, -24, -24, 147, 159, 516, 675, + 310, 311, 312, 147, -59, 273, 313, 314, 315, 316, + 317, 136, 648, 320, 137, 322, 138, 324, 325, 326, + 327, 328, 150, 676, 331, 332, 229, 154, 335, 336, + 152, 153, 341, 342, 343, 677, 345, 347, 354, 147, + -147, 273, 215, 216, 139, 225, 226, 235, 227, 228, + -328, -328, 147, 140, 801, 225, 226, 803, 771, 358, + 772, 257, 217, -66, 260, 141, 262, 142, 264, 265, + 266, 267, 268, 364, 365, 271, 272, 143, 275, 276, + 277, 421, 279, 280, 281, 144, 283, 284, 145, 167, + 168, 236, 402, -328, -328, 147, 182, 402, 197, 202, + 203, 204, 412, 413, 414, 415, 416, 205, 206, 419, + 231, 224, 237, 238, 239, 240, 232, 234, -59, -59, + -59, 147, 273, 273, -59, 422, 293, 295, 425, 426, + 427, 428, 429, 430, 431, 241, 433, 298, 299, 300, + 301, 147, 333, 439, 309, 383, 442, 443, 357, 361, + 359, 390, 360, 471, 252, 394, 396, 475, 476, 400, + 250, 395, 408, 481, 318, 319, 420, 321, 491, 323, + 402, 242, 243, 495, 496, 329, 330, -66, -66, -66, + 497, 499, -66, -66, 498, 518, 519, 520, 537, 521, + 522, 348, 349, 350, 351, 352, 353, 523, 355, 362, + 356, 524, 525, 371, 526, 527, 380, 528, 229, 529, + 371, 371, 371, 229, 229, 530, 531, 380, 229, 532, + 533, 540, 229, 534, 183, 535, 184, 185, 380, 576, + 207, 536, 597, 371, 208, 209, 538, 602, 210, 555, + 603, 399, 606, 562, 211, 563, 607, 404, 610, 406, + 671, 212, 611, 618, 425, 430, 506, 566, 541, 567, + 612, 620, 512, 621, 623, 572, 517, 624, 625, 574, + 575, 600, 186, 628, 644, 599, 187, 188, 756, 561, + 617, 663, 189, 664, 616, 762, 670, 191, 681, 678, + 680, 682, 683, 684, 543, 685, 631, 711, 371, 371, + 229, 709, 716, 731, 550, 371, 746, 732, 371, 764, + 750, 758, 724, 540, 485, 786, 500, 502, 787, 229, + 788, 486, 487, 789, 818, 229, 819, 626, 502, 229, + 183, 503, 184, 185, 821, 795, 213, 687, 822, 690, + 692, 800, 515, 836, 823, 91, 837, 561, 627, 679, + 646, 151, 363, 246, 468, 629, 622, 229, 233, 196, + 817, 371, 229, 613, 473, 820, 689, 229, 686, 194, + 688, 691, 296, 802, 748, 769, 546, 0, 186, 0, + 0, 0, 187, 188, 0, 647, 0, 0, 189, 0, + 0, 190, 0, 191, 225, 226, 0, 656, 228, 367, + 368, 369, 370, 0, 713, 0, 0, 0, 0, 0, + 0, 0, 719, 720, 721, 0, 722, 723, 693, 229, + 579, 727, 728, 729, 0, 0, 0, 580, 561, 561, + 561, 0, 561, 0, 708, 0, 581, 0, 126, 127, + 582, 371, 583, 735, 0, 0, 0, 5, 229, 371, + 0, 584, 657, 0, 694, 585, 0, 0, 767, 648, + 657, 586, 225, 226, 587, 247, 658, 0, 8, 248, + 249, 250, 251, 252, 667, 588, 589, 9, 10, 11, + 590, 12, 0, 14, 591, 15, 0, 0, 0, 17, + 0, 592, 593, 594, 694, 225, 226, 775, 366, 744, + 367, 368, 369, 370, 694, 781, 694, 0, 0, 779, + 780, 20, 0, 0, 0, 785, 0, 229, 0, 0, + 225, 226, 595, 501, 228, 376, 377, 378, 379, 0, + 0, 0, 0, 561, 372, 561, 0, 0, 0, 0, + 0, 385, 386, 387, 0, 804, 0, 0, 807, 808, + 809, 0, 0, 812, 814, 713, 814, 229, 0, 0, + 694, 0, 0, 0, 410, 0, 0, 229, 0, 229, + 824, 825, 0, 827, 828, 225, 226, 0, 656, 228, + 367, 368, 369, 370, 225, 226, 0, 375, 0, 376, + 377, 378, 379, 0, 0, 0, 0, 0, 0, 371, + 0, 0, 0, 0, 0, 371, 229, 657, 380, 371, + 0, 337, 0, 229, 657, 380, 0, 346, 0, 0, + 753, 754, 0, 229, 0, 0, 0, 760, 761, 483, + 484, 0, 0, 0, 0, 0, 490, 0, 0, 492, + 0, 0, 0, 0, 0, 829, 830, 0, 0, 0, + 0, 0, 373, 374, 0, 382, 0, 384, 0, 0, + 0, 0, 0, 391, 392, 380, 371, 0, 0, 0, + 0, 380, 371, 403, 371, 371, 0, 0, 407, 0, + 0, 792, 411, 0, 0, 0, 0, 797, 0, 418, + 380, 0, 545, 0, 0, 380, 0, 0, 0, 0, + 371, 0, 0, 0, 0, 0, 0, 0, 229, 229, + 229, 229, 0, 229, 229, 0, 0, 0, 0, 435, + 436, 437, 438, 0, 831, 832, 0, 834, 835, 0, + 0, 0, 0, 470, 0, 0, 0, 0, 0, 0, + 477, 401, 479, 0, 0, 0, 0, 0, 0, 0, + 409, 488, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 641, 0, 0, 0, 0, 423, 424, 0, + 649, 0, 0, 0, 0, 0, 432, 0, 434, 0, + 0, 0, 0, 0, 0, 440, 441, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, + 0, 478, 0, 0, 0, 482, 0, 552, 553, 554, + 0, 556, 489, 0, 0, 0, 564, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 565, 0, 508, + 509, 510, 511, 0, 0, 0, 0, 0, 0, 573, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 479, 480, 0, 0, 0, 0, - 0, 486, 0, 0, 488, 0, 0, 0, 0, 368, - 0, 0, 0, 0, 0, 368, 226, 651, 377, 368, - 0, 0, 0, 226, 651, 377, 0, 254, 0, 0, - 257, 0, 259, 226, 261, 262, 263, 264, 265, 0, - 0, 268, 269, 0, 272, 273, 274, 0, 276, 277, - 278, 0, 280, 281, 0, 0, 540, 0, 0, 0, - 334, 0, 0, 823, 824, 0, 343, 0, 0, 0, - 0, 0, 0, 0, 0, 377, 368, 0, 0, 0, - 0, 377, 368, 0, 368, 368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 377, 370, 371, 0, 379, 377, 381, 0, 0, 0, - 368, 0, 388, 389, 0, 0, 0, 0, 226, 226, - 226, 226, 400, 226, 226, 0, 0, 404, 0, 315, - 316, 408, 318, 0, 320, 635, 0, 0, 415, 0, - 326, 327, 0, 643, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 345, 346, 347, 348, - 349, 350, 0, 352, 0, 353, 0, 0, 432, 433, - 434, 435, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 466, 0, 0, 0, 0, 0, 0, 473, - 398, 475, 0, 0, 0, 0, 0, 0, 0, 406, - 484, 0, 0, 0, 0, 0, 396, 0, 0, 0, - 0, 0, 401, 0, 403, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 420, 421, 0, 0, - 0, 0, 0, 0, 0, 429, 0, 431, 0, 0, - 0, 0, 0, 0, 437, 438, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 470, 0, 0, 0, - 474, 0, 0, 0, 478, 547, 548, 549, 0, 551, - 0, 485, 0, 0, 559, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 560, 482, 483, 504, 505, - 506, 507, 643, 0, 0, 0, 0, 568, 746, 0, + 0, 0, 0, 0, 542, 0, 0, 632, 0, 633, + 634, 547, 0, 0, 637, 0, 0, 0, 0, 0, + 0, 0, 557, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 472, 0, 0, 0, + 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 493, 494, + 649, 0, 0, 0, 0, 0, 752, 505, 0, 507, + 757, 0, 0, 0, 0, 513, 514, 0, 0, 0, + 0, 0, 0, 636, 0, 0, 638, 639, 640, 0, + 642, 0, 0, 0, 0, 0, 0, 0, 653, 655, + 0, 0, 0, 0, 0, 706, 0, 666, 0, 544, + 0, 710, 0, 548, 712, 714, 0, 551, 0, 0, + 0, 0, 718, 0, 0, 0, 0, 796, 0, 0, + 0, 726, 0, 0, 0, 649, 0, 0, 0, 0, + 0, 0, 0, 568, 569, 570, 571, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 736, + 738, 0, 0, 0, 0, 0, 698, 699, 700, 0, + 0, 702, 99, 0, 0, 100, 0, 630, 0, 101, + 102, 103, 635, 104, 105, 0, 106, 107, 108, 109, + 0, 0, 0, 0, 0, 0, 110, 0, 0, 111, + 0, 112, 0, 113, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 777, 778, 0, + 114, 0, 0, 0, 783, 784, 0, 0, 115, 0, + 116, 117, 118, 0, 0, 119, 120, 121, 0, 0, + 743, 0, 122, 0, 745, 0, 747, 123, 749, 0, 0, 0, 751, 0, 0, 0, 0, 0, 0, 0, + 759, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 768, 701, 770, 0, 0, 0, 0, 0, 0, 0, + 0, 124, 0, 826, 125, 0, 0, 0, 715, 0, + 717, 0, 126, 127, 0, 838, 839, 0, 841, 842, + 0, 725, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 793, 794, 0, 0, 0, 0, 798, 799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 537, 0, 626, 0, 627, 628, 0, 542, - 0, 631, 0, 0, 0, 0, 0, 0, 0, 0, - 552, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 468, 0, 790, - 0, 0, 0, 0, 0, 476, 0, 643, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 489, - 490, 0, 0, 0, 0, 0, 0, 0, 501, 0, - 503, 0, 0, 0, 0, 0, 509, 510, 0, 0, - 630, 0, 0, 632, 633, 634, 0, 636, 0, 0, - 0, 0, 0, 0, 0, 647, 649, 0, 0, 0, - 0, 700, 0, 0, 660, 0, 0, 704, 0, 539, - 706, 708, 0, 543, 0, 0, 0, 546, 712, 0, - 0, 0, 0, 0, 0, 0, 0, 720, 0, 0, + 0, 0, 0, 739, 740, 741, 0, 742, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 563, 564, 565, 566, 0, 0, 0, - 0, 0, 0, 0, 0, 730, 732, 0, 0, 0, - 0, 0, 692, 693, 694, 0, 0, 696, 0, 0, - 0, 0, 0, 0, 0, 0, 624, 0, 0, 0, - 0, 629, 0, 0, 0, 0, 0, 0, 98, 0, - 0, 99, 0, 0, 0, 100, 101, 102, 0, 103, - 104, 0, 105, 106, 107, 108, 0, 0, 0, 0, - 0, 0, 109, 771, 772, 110, 0, 111, 0, 112, - 777, 778, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 113, 737, 0, 0, 0, - 739, 0, 741, 114, 743, 115, 116, 117, 745, 0, - 118, 119, 120, 0, 0, 0, 753, 121, 0, 0, - 0, 0, 122, 0, 0, 0, 762, 0, 764, 695, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 820, - 0, 0, 574, 0, 0, 0, 709, 0, 711, 575, - 0, 832, 833, 0, 835, 836, 123, 0, 576, 719, - 0, 0, 577, 0, 578, 0, 0, 787, 788, 0, - 0, 0, 579, 792, 793, 0, 580, 0, 0, 0, - 0, 0, 581, 786, 0, 582, 0, 0, 0, 791, - 0, 733, 734, 735, 0, 736, 583, 584, 0, 0, - 0, 585, 0, 0, 0, 586, 0, 0, 0, 0, - 0, 0, 587, 588, 589, 0, 827, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 837, - 0, 0, 838, 0, 0, 0, 0, 0, 0, 0, - 767, 0, 768, 590, 770, 0, 0, 0, 0, 0, - 0, 0, 776, 0, 0, -326, 0, 0, 0, 0, - 0, 784, 0, 785, 0, 0, 0, 0, 0, 0, - 0, -5, 4, 0, 0, 0, 0, 5, 0, 0, - 0, 0, 0, 0, 0, 0, 799, 800, 0, 0, - 0, 804, 805, 6, 0, 0, 7, 0, 8, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 833, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 843, 0, 0, 844, 0, 0, 0, + 0, 0, 773, 0, 774, 0, 776, 0, 0, 0, + 0, 0, 0, 0, 782, -328, 0, 0, 0, 0, + 0, 0, 0, 790, 0, 791, 0, 0, 0, 0, + -5, 4, 0, 0, 0, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 805, 806, + 0, 0, 6, 810, 811, 7, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 0, 12, 13, 14, 0, 15, 0, 16, 0, 17, 0, - 0, 18, 0, 0, 0, 0, 834, 19, 0, 0, - 0, 0, 0, 0, 0, 0, 839, 840, 0, 0, + 0, 18, 0, 0, 0, 0, 0, 19, 840, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 845, 846, 20, 0, 0, 0, 0, 21, 0, 0, 22, 0, 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -34, 0, 0, 0, 0, -5, -5, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 441, 0, - 0, 0, 442, 443, 0, 0, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 66, 0, 0, 0, 67, - 0, 0, 450, 0, 0, 68, 0, 0, 0, 451, - 0, 0, 0, 70, 0, 0, 0, 71, 0, 0, - 452, 0, 73, 0, 0, 0, 0, 0, 0, 0, - 453, 0, 0, 0, 75, 0, 454, 0, 77, 455, - 0, 456, 457, 458, 459, 98, 0, 460, 99, 0, - 0, 0, 100, 101, 102, 0, 103, 104, 0, 105, - 106, 107, 108, 0, 0, 0, 0, 0, 0, 109, - 0, 0, 110, 0, 111, 0, 112, 0, 0, 0, - 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 113, -5, 4, 0, 0, 0, 0, 5, - 114, 0, 115, 116, 117, 0, 0, 118, 119, 120, - 0, 0, 0, 0, 121, 6, 0, 0, 7, 122, - 8, 0, 0, 0, 0, 0, 0, 0, 9, 10, - 11, 0, 12, 13, 14, 0, 15, 0, 16, 0, - 17, 0, 0, 18, 0, 0, 0, 0, 0, 19, - 0, 0, 0, 123, 0, 0, 124, 0, 0, 0, - 0, 0, 20, 0, 125, 126, 0, 21, 0, 0, - 22, 0, 0, 0, 23, 24, 25, 26, 27, 28, + 0, 0, 0, 0, 0, 0, 0, 444, 0, 0, + 0, 445, 446, 0, 0, 447, 448, 449, 450, 0, + 451, 452, 0, 0, 66, 0, 0, 0, 67, 0, + 0, 453, 0, 0, 454, 69, 0, 0, 0, 455, + 0, 0, 0, 71, 0, 0, 0, 72, 0, 0, + 456, 0, 74, 0, 0, 0, -5, 4, 0, 0, + 457, 0, 5, 0, 76, 0, 458, 0, 78, 459, + 0, 460, 461, 462, 463, 0, 0, 464, 6, 0, + 0, 7, 0, 8, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 10, 11, 0, 12, 13, 14, 0, + 15, 0, 16, 0, 17, 0, 0, 18, 0, 0, + 465, 0, 0, 19, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, + 0, 21, 0, 0, 22, 0, 0, 0, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 99, 0, 0, 100, + 0, -5, -5, 101, 102, 103, 0, 104, 105, 0, + 106, 107, 108, 109, 0, 0, 0, 0, 0, 0, + 110, 0, 0, 111, 0, 112, 0, 113, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4, 114, 215, 216, 0, 5, 0, + 0, 0, 115, 0, 116, 117, 118, 0, 0, 119, + 120, 121, 0, 0, 0, 217, 122, 7, 0, 8, + 0, 123, 0, 0, 0, 0, 0, 0, 9, 10, + 11, 0, 12, 0, 14, 0, 15, 0, 16, 0, + 17, 0, 0, 218, 0, 0, 0, 0, 0, 19, + 0, 219, 0, 0, 0, 124, 0, 0, 0, 0, + 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 0, 0, 0, 0, 0, -5, -5, 4, - 0, 212, 213, 0, 5, 0, 0, 0, 0, 0, + 49, 50, 4, 0, 215, 216, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 214, 0, 7, 0, 8, 0, 0, 0, 0, - 0, 0, 0, 9, 10, 11, 0, 12, 0, 14, - 0, 15, 0, 16, 0, 17, 0, 0, 215, 0, - 0, 0, 0, 0, 19, 0, 216, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 4, 0, 212, - 213, 0, 5, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 214, - 0, 7, 0, 8, 0, 0, 0, 0, 0, 0, - 0, 9, 10, 11, 0, 12, 0, 14, 0, 15, - 0, 16, 0, 17, 0, 0, 608, 0, 0, 0, - 0, 0, 19, 0, 609, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 4, 0, 212, 213, 0, - 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 214, 0, 7, - 0, 8, 0, 0, 0, 0, 0, 0, 0, 9, - 10, 11, 0, 12, 0, 14, 0, 15, 0, 16, - 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, - 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 4, 0, 0, 0, 0, 5, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 7, 0, 8, + 0, 0, 0, 0, 217, 0, 7, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 0, 12, 0, 14, 0, 15, 0, 16, 0, 17, - 0, 0, 196, 0, 0, 0, 0, 0, 19, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 614, 0, 0, 0, 0, 0, 19, 0, + 615, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 4, 0, 0, 0, 0, 5, 0, 0, 0, + 50, 4, 0, 215, 216, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 217, 0, 7, 0, 8, 0, 0, + 0, 0, 0, 0, 0, 0, 9, 10, 11, 0, + 12, 0, 14, 0, 15, 0, 16, 0, 17, 0, + 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 7, 0, 8, 0, 0, + 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 4, 0, 0, 0, 0, 5, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 0, 12, 0, 14, 0, 15, 0, 16, 0, 17, 0, 0, - 593, 0, 0, 0, 0, 0, 19, 0, 0, 0, + 198, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 4, - 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 7, 0, 8, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 10, 11, 0, 12, 0, + 14, 0, 15, 0, 16, 0, 17, 0, 0, 598, + 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 214, 0, 7, 0, 0, 0, 0, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 4, 0, + 215, 216, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 217, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, @@ -1601,265 +1597,247 @@ static const yytype_int16 yytable[] = 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 4, 0, 0, - 0, 0, 0, 0, 0, 441, 0, 0, 0, 442, - 443, 0, 0, 444, 445, 446, 447, 0, 448, 449, - 0, 7, 66, 0, 0, 0, 67, 0, 0, 450, - 0, 0, 68, 0, 0, 0, 451, 0, 0, 0, - 70, 16, 0, 0, 71, 0, 0, 452, 0, 73, - 0, 0, 19, 0, 0, 0, 0, 453, 0, 0, - 0, 75, 0, 454, 0, 77, 455, 0, 456, 457, - 458, 459, 0, 0, 460, 0, 0, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 60, 0, 461, 0, 0, - 0, 0, 0, 61, 62, 63, 0, 0, 64, 65, - 0, 0, 66, 0, 0, 0, 67, 0, 0, 0, - 0, 0, 68, 0, 0, 0, 69, 0, 0, 0, - 70, 0, 0, 0, 71, 0, 0, 72, 0, 73, - 0, 0, 0, 0, 0, 0, 0, 74, 0, 0, - 0, 75, 0, 76, 0, 77, 78, 0, 0, 79, - 80, 81, 0, 0, 82, 0, 0, 0, 0, 83, - 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, 84, 23, 24, + 0, 0, 0, 0, 0, 444, 0, 0, 0, 445, + 446, 0, 0, 447, 448, 449, 450, 0, 451, 452, + 0, 7, 66, 0, 0, 0, 67, 0, 0, 453, + 0, 0, 454, 69, 0, 0, 0, 455, 0, 0, + 0, 71, 16, 0, 0, 72, 0, 0, 456, 0, + 74, 0, 0, 19, 0, 0, 0, 0, 457, 0, + 0, 0, 76, 0, 458, 0, 78, 459, 0, 460, + 461, 462, 463, 0, 0, 464, 0, 0, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50 + 45, 46, 47, 48, 49, 50, 60, 0, 465, 0, + 0, 0, 0, 0, 61, 62, 63, 0, 0, 64, + 65, 0, 0, 66, 0, 0, 0, 67, 0, 0, + 0, 0, 0, 68, 69, 0, 0, 0, 70, 0, + 0, 0, 71, 0, 0, 0, 72, 0, 0, 73, + 0, 74, 0, 0, 0, 0, 0, 0, 0, 75, + 0, 0, 0, 76, 0, 77, 0, 78, 79, 0, + 0, 80, 81, 82, 0, 0, 83, 0, 0, 0, + 0, 84, 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, 85, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50 }; static const yytype_int16 yycheck[] = { - 86, 100, 51, 102, 103, 104, 105, 106, 107, 569, - 13, 110, 111, 112, 113, 114, 115, 7, 117, 118, - 119, 552, 121, 122, 3, 4, 3, 5, 7, 8, - 130, 75, 279, 130, 3, 4, 136, 715, 75, 136, - 0, 3, 4, 136, 722, 7, 328, 9, 10, 11, - 12, 132, 411, 134, 3, 154, 155, 339, 157, 136, - 159, 215, 136, 217, 218, 561, 165, 166, 135, 428, - 16, 48, 139, 569, 173, 19, 20, 132, 177, 134, - 439, 180, 181, 182, 183, 184, 185, 5, 187, 133, - 189, 68, 69, 70, 71, 39, 133, 197, 16, 5, - 136, 632, 633, 634, 351, 636, 68, 3, 4, 136, - 16, 7, 8, 472, 91, 3, 4, 217, 215, 7, - 217, 218, 16, 11, 12, 13, 14, 15, 136, 625, - 808, 3, 4, 129, 16, 7, 8, 9, 10, 11, - 12, 136, 132, 16, 147, 138, 428, 132, 135, 134, - 127, 128, 139, 132, 132, 134, 134, 439, 244, 245, - 246, 16, 136, 132, 250, 251, 252, 253, 254, 70, - 71, 257, 68, 259, 44, 261, 262, 263, 264, 265, - 44, 136, 268, 269, 130, 131, 272, 273, 136, 288, - 276, 277, 278, 136, 280, 281, 68, 67, 3, 4, - 138, 355, 561, 67, 136, 302, 737, 665, 739, 79, - 569, 136, 130, 131, 132, 79, 132, 675, 134, 677, - 780, 88, 136, 783, 130, 131, 132, 3, 4, 96, - 97, 7, 8, 312, 313, 129, 130, 131, 132, 136, - 134, 135, 133, 132, 132, 134, 134, 129, 130, 131, - 336, 136, 134, 135, 75, 341, 129, 130, 131, 132, - 346, 347, 348, 349, 350, 136, 132, 353, 134, 75, - 5, 75, 75, 75, 129, 130, 131, 3, 3, 134, - 135, 5, 3, 369, 3, 5, 372, 373, 374, 375, - 376, 377, 378, 3, 380, 3, 134, 30, 21, 32, - 33, 387, 25, 26, 390, 391, 29, 3, 5, 3, - 5, 397, 35, 3, 3, 401, 402, 5, 132, 42, - 135, 407, 5, 7, 11, 135, 319, 12, 414, 15, - 129, 13, 325, 5, 3, 3, 329, 7, 9, 12, - 333, 136, 136, 10, 77, 11, 136, 136, 81, 82, - 136, 136, 136, 136, 87, 714, 715, 90, 136, 92, - 3, 4, 721, 722, 7, 8, 9, 10, 11, 12, - 136, 525, 310, 136, 136, 136, 314, 136, 464, 317, - 136, 319, 136, 321, 322, 323, 324, 325, 136, 136, - 328, 329, 5, 136, 5, 333, 482, 60, 3, 60, - 486, 339, 488, 126, 137, 138, 344, 3, 60, 3, - 5, 497, 498, 5, 500, 464, 502, 517, 5, 3, - 517, 3, 508, 3, 5, 525, 512, 513, 525, 5, - 3, 3, 3, 133, 716, 5, 485, 430, 5, 3, - 133, 723, 133, 436, 3, 3, 25, 440, 5, 5, - 5, 3, 538, 3, 608, 136, 610, 611, 133, 818, - 819, 140, 821, 822, 140, 3, 3, 45, 133, 555, - 3, 409, 410, 411, 467, 133, 3, 133, 416, 133, - 90, 419, 51, 532, 477, 134, 134, 533, 311, 427, - 428, 773, 430, 393, 594, 141, 147, 779, 436, 524, - 535, 439, 440, 552, 124, 127, 555, 22, 782, 399, - 610, 608, 192, 610, 611, 707, 798, 731, 3, 4, - -1, 803, 7, 8, 9, 10, 11, 12, 43, 467, - -1, -1, -1, 471, 472, 528, 51, 52, 53, 477, - 55, -1, 57, -1, 59, -1, -1, 30, 63, 32, - 33, -1, -1, -1, 3, 4, -1, -1, 7, 645, - 9, 10, 11, 12, 557, -1, -1, 653, 654, 655, - 85, 657, 658, 622, -1, 729, 662, 663, 664, -1, - -1, -1, -1, 632, 633, 634, 683, 636, -1, 638, - 528, -1, -1, -1, 77, -1, -1, -1, 81, 82, - -1, -1, -1, -1, 87, -1, 3, 4, -1, 92, - 7, -1, 550, -1, 11, 12, 13, 14, 15, 557, - 558, 3, 4, 561, -1, 7, -1, 9, 10, 11, - 12, 569, 625, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 744, -1, -1, -1, -1, - -1, -1, -1, 752, 703, -1, -1, -1, -1, 314, - -1, -1, -1, -1, 750, 751, 321, 322, 323, -1, - 756, -1, 665, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 675, -1, 677, -1, -1, 625, 737, 344, - 739, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 786, -1, -1, 789, 790, 791, -1, -1, 794, 795, - 796, 797, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 811, 812, 665, 814, 815, - -1, -1, -1, -1, -1, -1, -1, 675, 731, 677, + 87, 51, 574, 13, 5, 0, 15, 75, 101, 75, + 103, 104, 105, 106, 107, 108, 3, 4, 111, 112, + 113, 114, 115, 116, 6, 118, 119, 120, 282, 122, + 123, 132, 557, 134, 3, 4, 15, 6, 7, 15, + 135, 131, 3, 721, 139, 131, 75, 331, 138, 132, + 728, 134, 138, 129, 3, 4, 136, 6, 342, 8, + 9, 10, 11, 156, 157, 133, 159, 133, 161, 136, + 3, 4, 136, 6, 167, 168, 566, 10, 11, 12, + 13, 14, 175, 136, 574, 5, 179, 671, 43, 182, + 183, 184, 185, 186, 187, 15, 189, 681, 191, 683, + 354, 218, 135, 220, 221, 136, 139, 3, 4, 199, + 6, 7, 67, 638, 639, 640, 132, 642, 134, 68, + 129, 130, 131, 140, 79, 134, 135, 132, 5, 134, + 220, 132, 218, 134, 220, 221, 814, 136, 15, 149, + 132, 631, 134, 136, 132, 132, 134, 431, 70, 71, + 132, 130, 131, 129, 130, 131, 132, 75, 442, 43, + 247, 248, 249, 132, 15, 134, 253, 254, 255, 256, + 257, 136, 68, 260, 136, 262, 136, 264, 265, 266, + 267, 268, 89, 67, 271, 272, 140, 133, 275, 276, + 97, 98, 279, 280, 281, 79, 283, 284, 291, 132, + 136, 134, 18, 19, 136, 3, 4, 3, 6, 7, + 130, 131, 132, 136, 786, 3, 4, 789, 743, 305, + 745, 155, 38, 15, 158, 136, 160, 136, 162, 163, + 164, 165, 166, 315, 316, 169, 170, 136, 172, 173, + 174, 358, 176, 177, 178, 136, 180, 181, 136, 75, + 75, 47, 339, 130, 131, 132, 75, 344, 5, 3, + 3, 3, 349, 350, 351, 352, 353, 5, 3, 356, + 3, 5, 68, 69, 70, 71, 3, 3, 129, 130, + 131, 132, 134, 134, 135, 372, 3, 5, 375, 376, + 377, 378, 379, 380, 381, 91, 383, 5, 3, 3, + 3, 132, 135, 390, 5, 322, 393, 394, 5, 11, + 6, 328, 10, 400, 14, 332, 129, 404, 405, 336, + 12, 135, 5, 410, 258, 259, 3, 261, 3, 263, + 417, 127, 128, 6, 8, 269, 270, 129, 130, 131, + 9, 11, 134, 135, 10, 136, 136, 136, 5, 136, + 136, 285, 286, 287, 288, 289, 290, 136, 292, 313, + 294, 136, 136, 317, 136, 136, 320, 136, 322, 136, + 324, 325, 326, 327, 328, 136, 136, 331, 332, 136, + 136, 468, 336, 136, 29, 136, 31, 32, 342, 60, + 20, 136, 5, 347, 24, 25, 136, 3, 28, 486, + 60, 335, 3, 490, 34, 492, 60, 341, 3, 343, + 133, 41, 5, 530, 501, 502, 433, 504, 468, 506, + 3, 5, 439, 5, 3, 512, 443, 3, 3, 516, + 517, 521, 77, 5, 5, 521, 81, 82, 722, 489, + 530, 3, 87, 3, 530, 729, 3, 92, 133, 5, + 5, 3, 133, 3, 471, 3, 543, 136, 412, 413, + 414, 5, 140, 5, 481, 419, 3, 5, 422, 3, + 24, 44, 140, 560, 414, 133, 430, 431, 3, 433, + 133, 415, 416, 133, 3, 439, 3, 537, 442, 443, + 29, 431, 31, 32, 3, 779, 126, 614, 133, 616, + 617, 785, 442, 134, 133, 51, 134, 557, 538, 599, + 560, 91, 314, 149, 396, 540, 533, 471, 143, 128, + 804, 475, 476, 529, 402, 809, 616, 481, 614, 125, + 616, 617, 194, 788, 713, 737, 476, -1, 77, -1, + -1, -1, 81, 82, -1, 562, -1, -1, 87, -1, + -1, 90, -1, 92, 3, 4, -1, 6, 7, 8, + 9, 10, 11, -1, 651, -1, -1, -1, -1, -1, + -1, -1, 659, 660, 661, -1, 663, 664, 628, 533, + 23, 668, 669, 670, -1, -1, -1, 30, 638, 639, + 640, -1, 642, -1, 644, -1, 39, -1, 137, 138, + 43, 555, 45, 689, -1, -1, -1, 21, 562, 563, + -1, 54, 566, -1, 631, 58, -1, -1, 735, 68, + 574, 64, 3, 4, 67, 6, 566, -1, 42, 10, + 11, 12, 13, 14, 574, 78, 79, 51, 52, 53, + 83, 55, -1, 57, 87, 59, -1, -1, -1, 63, + -1, 94, 95, 96, 671, 3, 4, 750, 6, 709, + 8, 9, 10, 11, 681, 758, 683, -1, -1, 756, + 757, 85, -1, -1, -1, 762, -1, 631, -1, -1, + 3, 4, 125, 6, 7, 8, 9, 10, 11, -1, + -1, -1, -1, 743, 317, 745, -1, -1, -1, -1, + -1, 324, 325, 326, -1, 792, -1, -1, 795, 796, + 797, -1, -1, 800, 801, 802, 803, 671, -1, -1, + 737, -1, -1, -1, 347, -1, -1, 681, -1, 683, + 817, 818, -1, 820, 821, 3, 4, -1, 6, 7, + 8, 9, 10, 11, 3, 4, -1, 6, -1, 8, + 9, 10, 11, -1, -1, -1, -1, -1, -1, 713, + -1, -1, -1, -1, -1, 719, 720, 721, 722, 723, + -1, 277, -1, 727, 728, 729, -1, 283, -1, -1, + 720, 721, -1, 737, -1, -1, -1, 727, 728, 412, + 413, -1, -1, -1, -1, -1, 419, -1, -1, 422, + -1, -1, -1, -1, -1, 822, 823, -1, -1, -1, + -1, -1, 318, 319, -1, 321, -1, 323, -1, -1, + -1, -1, -1, 329, 330, 779, 780, -1, -1, -1, + -1, 785, 786, 339, 788, 789, -1, -1, 344, -1, + -1, 775, 348, -1, -1, -1, -1, 781, -1, 355, + 804, -1, 475, -1, -1, 809, -1, -1, -1, -1, + 814, -1, -1, -1, -1, -1, -1, -1, 822, 823, + 824, 825, -1, 827, 828, -1, -1, -1, -1, 385, + 386, 387, 388, -1, 824, 825, -1, 827, 828, -1, + -1, -1, -1, 399, -1, -1, -1, -1, -1, -1, + 406, 337, 408, -1, -1, -1, -1, -1, -1, -1, + 346, 417, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 409, 410, -1, -1, -1, -1, - -1, 416, -1, -1, 419, -1, -1, -1, -1, 707, - -1, -1, -1, -1, -1, 713, 714, 715, 716, 717, - -1, -1, -1, 721, 722, 723, -1, 153, -1, -1, - 156, -1, 158, 731, 160, 161, 162, 163, 164, -1, - -1, 167, 168, -1, 170, 171, 172, -1, 174, 175, - 176, -1, 178, 179, -1, -1, 471, -1, -1, -1, - 274, -1, -1, 816, 817, -1, 280, -1, -1, -1, - -1, -1, -1, -1, -1, 773, 774, -1, -1, -1, - -1, 779, 780, -1, 782, 783, -1, -1, -1, -1, + -1, -1, 555, -1, -1, -1, -1, 373, 374, -1, + 563, -1, -1, -1, -1, -1, 382, -1, 384, -1, + -1, -1, -1, -1, -1, 391, 392, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 403, -1, -1, + -1, 407, -1, -1, -1, 411, -1, 483, 484, 485, + -1, 487, 418, -1, -1, -1, 492, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 503, -1, 435, + 436, 437, 438, -1, -1, -1, -1, -1, -1, 515, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 798, 315, 316, -1, 318, 803, 320, -1, -1, -1, - 808, -1, 326, 327, -1, -1, -1, -1, 816, 817, - 818, 819, 336, 821, 822, -1, -1, 341, -1, 255, - 256, 345, 258, -1, 260, 550, -1, -1, 352, -1, - 266, 267, -1, 558, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 282, 283, 284, 285, - 286, 287, -1, 289, -1, 291, -1, -1, 382, 383, - 384, 385, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 396, -1, -1, -1, -1, -1, -1, 403, - 334, 405, -1, -1, -1, -1, -1, -1, -1, 343, - 414, -1, -1, -1, -1, -1, 332, -1, -1, -1, - -1, -1, 338, -1, 340, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 370, 371, -1, -1, - -1, -1, -1, -1, -1, 379, -1, 381, -1, -1, - -1, -1, -1, -1, 388, 389, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 400, -1, -1, -1, - 404, -1, -1, -1, 408, 479, 480, 481, -1, 483, - -1, 415, -1, -1, 488, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 499, 412, 413, 432, 433, - 434, 435, 707, -1, -1, -1, -1, 511, 713, -1, - -1, -1, 717, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 466, -1, 538, -1, 540, 541, -1, 473, - -1, 545, -1, -1, -1, -1, -1, -1, -1, -1, - 484, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 398, -1, 774, - -1, -1, -1, -1, -1, 406, -1, 782, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 420, - 421, -1, -1, -1, -1, -1, -1, -1, 429, -1, - 431, -1, -1, -1, -1, -1, 437, 438, -1, -1, - 544, -1, -1, 547, 548, 549, -1, 551, -1, -1, - -1, -1, -1, -1, -1, 559, 560, -1, -1, -1, - -1, 635, -1, -1, 568, -1, -1, 641, -1, 470, - 644, 645, -1, 474, -1, -1, -1, 478, 652, -1, - -1, -1, -1, -1, -1, -1, -1, 661, -1, -1, + -1, -1, -1, -1, 470, -1, -1, 543, -1, 545, + 546, 477, -1, -1, 550, -1, -1, -1, -1, -1, + -1, -1, 488, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 401, -1, -1, -1, + -1, -1, -1, -1, 409, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 423, 424, + 713, -1, -1, -1, -1, -1, 719, 432, -1, 434, + 723, -1, -1, -1, -1, 440, 441, -1, -1, -1, + -1, -1, -1, 549, -1, -1, 552, 553, 554, -1, + 556, -1, -1, -1, -1, -1, -1, -1, 564, 565, + -1, -1, -1, -1, -1, 641, -1, 573, -1, 474, + -1, 647, -1, 478, 650, 651, -1, 482, -1, -1, + -1, -1, 658, -1, -1, -1, -1, 780, -1, -1, + -1, 667, -1, -1, -1, 788, -1, -1, -1, -1, + -1, -1, -1, 508, 509, 510, 511, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 695, + 696, -1, -1, -1, -1, -1, 632, 633, 634, -1, + -1, 637, 17, -1, -1, 20, -1, 542, -1, 24, + 25, 26, 547, 28, 29, -1, 31, 32, 33, 34, + -1, -1, -1, -1, -1, -1, 41, -1, -1, 44, + -1, 46, -1, 48, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 753, 754, -1, + 65, -1, -1, -1, 760, 761, -1, -1, 73, -1, + 75, 76, 77, -1, -1, 80, 81, 82, -1, -1, + 706, -1, 87, -1, 710, -1, 712, 92, 714, -1, + -1, -1, 718, -1, -1, -1, -1, -1, -1, -1, + 726, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 736, 636, 738, -1, -1, -1, -1, -1, -1, -1, + -1, 126, -1, 819, 129, -1, -1, -1, 653, -1, + 655, -1, 137, 138, -1, 831, 832, -1, 834, 835, + -1, 666, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 777, 778, -1, -1, -1, -1, 783, 784, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 504, 505, 506, 507, -1, -1, -1, - -1, -1, -1, -1, -1, 689, 690, -1, -1, -1, - -1, -1, 626, 627, 628, -1, -1, 631, -1, -1, - -1, -1, -1, -1, -1, -1, 537, -1, -1, -1, - -1, 542, -1, -1, -1, -1, -1, -1, 18, -1, - -1, 21, -1, -1, -1, 25, 26, 27, -1, 29, - 30, -1, 32, 33, 34, 35, -1, -1, -1, -1, - -1, -1, 42, 747, 748, 45, -1, 47, -1, 49, - 754, 755, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 65, 700, -1, -1, -1, - 704, -1, 706, 73, 708, 75, 76, 77, 712, -1, - 80, 81, 82, -1, -1, -1, 720, 87, -1, -1, - -1, -1, 92, -1, -1, -1, 730, -1, 732, 630, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 813, - -1, -1, 24, -1, -1, -1, 647, -1, 649, 31, - -1, 825, 826, -1, 828, 829, 126, -1, 40, 660, - -1, -1, 44, -1, 46, -1, -1, 771, 772, -1, - -1, -1, 54, 777, 778, -1, 58, -1, -1, -1, - -1, -1, 64, 769, -1, 67, -1, -1, -1, 775, - -1, 692, 693, 694, -1, 696, 78, 79, -1, -1, - -1, 83, -1, -1, -1, 87, -1, -1, -1, -1, - -1, -1, 94, 95, 96, -1, 820, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 833, - -1, -1, 836, -1, -1, -1, -1, -1, -1, -1, - 741, -1, 743, 125, 745, -1, -1, -1, -1, -1, - -1, -1, 753, -1, -1, 0, -1, -1, -1, -1, - -1, 762, -1, 764, -1, -1, -1, -1, -1, -1, - -1, 16, 17, -1, -1, -1, -1, 22, -1, -1, - -1, -1, -1, -1, -1, -1, 787, 788, -1, -1, - -1, 792, 793, 38, -1, -1, 41, -1, 43, -1, + -1, -1, -1, 698, 699, 700, -1, 702, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 826, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 839, -1, -1, 842, -1, -1, -1, + -1, -1, 747, -1, 749, -1, 751, -1, -1, -1, + -1, -1, -1, -1, 759, 0, -1, -1, -1, -1, + -1, -1, -1, 768, -1, 770, -1, -1, -1, -1, + 15, 16, -1, -1, -1, -1, 21, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 793, 794, + -1, -1, 37, 798, 799, 40, -1, 42, -1, -1, -1, -1, -1, -1, -1, -1, 51, 52, 53, -1, 55, 56, 57, -1, 59, -1, 61, -1, 63, -1, - -1, 66, -1, -1, -1, -1, 827, 72, -1, -1, - -1, -1, -1, -1, -1, -1, 837, 838, -1, -1, + -1, 66, -1, -1, -1, -1, -1, 72, 833, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 843, 844, 85, -1, -1, -1, -1, 90, -1, -1, 93, -1, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 5, -1, -1, -1, -1, 130, 131, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 23, -1, - -1, -1, 27, 28, -1, -1, 31, 32, 33, 34, - -1, 36, 37, -1, -1, 40, -1, -1, -1, 44, - -1, -1, 47, -1, -1, 50, -1, -1, -1, 54, + -1, -1, -1, -1, -1, -1, -1, 22, -1, -1, + -1, 26, 27, -1, -1, 30, 31, 32, 33, -1, + 35, 36, -1, -1, 39, -1, -1, -1, 43, -1, + -1, 46, -1, -1, 49, 50, -1, -1, -1, 54, -1, -1, -1, 58, -1, -1, -1, 62, -1, -1, - 65, -1, 67, -1, -1, -1, -1, -1, -1, -1, - 75, -1, -1, -1, 79, -1, 81, -1, 83, 84, - -1, 86, 87, 88, 89, 18, -1, 92, 21, -1, - -1, -1, 25, 26, 27, -1, 29, 30, -1, 32, - 33, 34, 35, -1, -1, -1, -1, -1, -1, 42, - -1, -1, 45, -1, 47, -1, 49, -1, -1, -1, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 65, 16, 17, -1, -1, -1, -1, 22, - 73, -1, 75, 76, 77, -1, -1, 80, 81, 82, - -1, -1, -1, -1, 87, 38, -1, -1, 41, 92, - 43, -1, -1, -1, -1, -1, -1, -1, 51, 52, - 53, -1, 55, 56, 57, -1, 59, -1, 61, -1, + 65, -1, 67, -1, -1, -1, 15, 16, -1, -1, + 75, -1, 21, -1, 79, -1, 81, -1, 83, 84, + -1, 86, 87, 88, 89, -1, -1, 92, 37, -1, + -1, 40, -1, 42, -1, -1, -1, -1, -1, -1, + -1, -1, 51, 52, 53, -1, 55, 56, 57, -1, + 59, -1, 61, -1, 63, -1, -1, 66, -1, -1, + 125, -1, -1, 72, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, + -1, 90, -1, -1, 93, -1, -1, -1, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 17, -1, -1, 20, + -1, 130, 131, 24, 25, 26, -1, 28, 29, -1, + 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, + 41, -1, -1, 44, -1, 46, -1, 48, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 16, 65, 18, 19, -1, 21, -1, + -1, -1, 73, -1, 75, 76, 77, -1, -1, 80, + 81, 82, -1, -1, -1, 38, 87, 40, -1, 42, + -1, 92, -1, -1, -1, -1, -1, -1, 51, 52, + 53, -1, 55, -1, 57, -1, 59, -1, 61, -1, 63, -1, -1, 66, -1, -1, -1, -1, -1, 72, - -1, -1, -1, 126, -1, -1, 129, -1, -1, -1, - -1, -1, 85, -1, 137, 138, -1, 90, -1, -1, - 93, -1, -1, -1, 97, 98, 99, 100, 101, 102, + -1, 74, -1, -1, -1, 126, -1, -1, -1, -1, + -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, -1, -1, -1, -1, -1, 130, 131, 17, - -1, 19, 20, -1, 22, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 39, -1, 41, -1, 43, -1, -1, -1, -1, - -1, -1, -1, 51, 52, 53, -1, 55, -1, 57, - -1, 59, -1, 61, -1, 63, -1, -1, 66, -1, - -1, -1, -1, -1, 72, -1, 74, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 17, -1, 19, - 20, -1, 22, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 39, - -1, 41, -1, 43, -1, -1, -1, -1, -1, -1, - -1, 51, 52, 53, -1, 55, -1, 57, -1, 59, - -1, 61, -1, 63, -1, -1, 66, -1, -1, -1, - -1, -1, 72, -1, 74, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 17, -1, 19, 20, -1, - 22, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 39, -1, 41, - -1, 43, -1, -1, -1, -1, -1, -1, -1, 51, - 52, 53, -1, 55, -1, 57, -1, 59, -1, 61, - -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, - 72, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 17, -1, -1, -1, -1, 22, -1, + 123, 124, 16, -1, 18, 19, -1, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 41, -1, 43, + -1, -1, -1, -1, 38, -1, 40, -1, 42, -1, -1, -1, -1, -1, -1, -1, -1, 51, 52, 53, -1, 55, -1, 57, -1, 59, -1, 61, -1, 63, -1, -1, 66, -1, -1, -1, -1, -1, 72, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 74, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 17, -1, -1, -1, -1, 22, -1, -1, -1, + 124, 16, -1, 18, 19, -1, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 41, -1, 43, -1, -1, + -1, -1, -1, 38, -1, 40, -1, 42, -1, -1, + -1, -1, -1, -1, -1, -1, 51, 52, 53, -1, + 55, -1, 57, -1, 59, -1, 61, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, 72, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 16, -1, -1, -1, -1, 21, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 40, -1, 42, -1, -1, -1, -1, -1, -1, -1, -1, 51, 52, 53, -1, 55, -1, 57, -1, 59, -1, 61, -1, 63, -1, -1, 66, -1, -1, -1, -1, -1, 72, -1, -1, -1, @@ -1867,10 +1845,21 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 17, - -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 16, + -1, -1, -1, -1, 21, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 40, -1, 42, -1, -1, -1, -1, + -1, -1, -1, -1, 51, 52, 53, -1, 55, -1, + 57, -1, 59, -1, 61, -1, 63, -1, -1, 66, + -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 39, -1, 41, -1, -1, -1, -1, -1, -1, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 16, -1, + 18, 19, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 38, -1, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, -1, @@ -1878,122 +1867,122 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 17, -1, -1, - -1, -1, -1, -1, -1, 23, -1, -1, -1, 27, - 28, -1, -1, 31, 32, 33, 34, -1, 36, 37, - -1, 41, 40, -1, -1, -1, 44, -1, -1, 47, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - 58, 61, -1, -1, 62, -1, -1, 65, -1, 67, - -1, -1, 72, -1, -1, -1, -1, 75, -1, -1, - -1, 79, -1, 81, -1, 83, 84, -1, 86, 87, - 88, 89, -1, -1, 92, -1, -1, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 23, -1, 125, -1, -1, - -1, -1, -1, 31, 32, 33, -1, -1, 36, 37, - -1, -1, 40, -1, -1, -1, 44, -1, -1, -1, - -1, -1, 50, -1, -1, -1, 54, -1, -1, -1, - 58, -1, -1, -1, 62, -1, -1, 65, -1, 67, - -1, -1, -1, -1, -1, -1, -1, 75, -1, -1, - -1, 79, -1, 81, -1, 83, 84, -1, -1, 87, - 88, 89, -1, -1, 92, -1, -1, -1, -1, 97, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 125, 97, 98, + 118, 119, 120, 121, 122, 123, 124, 16, -1, -1, + -1, -1, -1, -1, -1, 22, -1, -1, -1, 26, + 27, -1, -1, 30, 31, 32, 33, -1, 35, 36, + -1, 40, 39, -1, -1, -1, 43, -1, -1, 46, + -1, -1, 49, 50, -1, -1, -1, 54, -1, -1, + -1, 58, 61, -1, -1, 62, -1, -1, 65, -1, + 67, -1, -1, 72, -1, -1, -1, -1, 75, -1, + -1, -1, 79, -1, 81, -1, 83, 84, -1, 86, + 87, 88, 89, -1, -1, 92, -1, -1, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124 + 119, 120, 121, 122, 123, 124, 22, -1, 125, -1, + -1, -1, -1, -1, 30, 31, 32, -1, -1, 35, + 36, -1, -1, 39, -1, -1, -1, 43, -1, -1, + -1, -1, -1, 49, 50, -1, -1, -1, 54, -1, + -1, -1, 58, -1, -1, -1, 62, -1, -1, 65, + -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, + -1, -1, -1, 79, -1, 81, -1, 83, 84, -1, + -1, 87, 88, 89, -1, -1, 92, -1, -1, -1, + -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 125, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 142, 185, 0, 17, 22, 38, 41, 43, 51, + 0, 142, 185, 0, 16, 21, 37, 40, 42, 51, 52, 53, 55, 56, 57, 59, 61, 63, 66, 72, 85, 90, 93, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 143, 144, 175, 176, 177, 196, 70, 71, 160, - 23, 31, 32, 33, 36, 37, 40, 44, 50, 54, - 58, 62, 65, 67, 75, 79, 81, 83, 84, 87, - 88, 89, 92, 97, 125, 179, 181, 182, 147, 3, - 144, 213, 16, 130, 131, 158, 145, 146, 18, 21, - 25, 26, 27, 29, 30, 32, 33, 34, 35, 42, - 45, 47, 49, 65, 73, 75, 76, 77, 80, 81, - 82, 87, 92, 126, 129, 137, 138, 198, 201, 136, + 22, 30, 31, 32, 35, 36, 39, 43, 49, 50, + 54, 58, 62, 65, 67, 75, 79, 81, 83, 84, + 87, 88, 89, 92, 97, 125, 179, 181, 182, 147, + 3, 144, 213, 15, 130, 131, 158, 145, 146, 17, + 20, 24, 25, 26, 28, 29, 31, 32, 33, 34, + 41, 44, 46, 48, 65, 73, 75, 76, 77, 80, + 81, 82, 87, 92, 126, 129, 137, 138, 198, 201, 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, - 136, 136, 136, 136, 129, 132, 150, 162, 150, 158, - 150, 150, 133, 163, 75, 75, 163, 75, 163, 75, - 163, 163, 163, 163, 163, 75, 75, 163, 163, 163, - 163, 163, 163, 202, 163, 163, 163, 203, 163, 163, - 75, 30, 32, 33, 77, 81, 82, 87, 90, 92, - 148, 149, 198, 199, 201, 5, 66, 175, 177, 184, - 3, 3, 5, 3, 21, 25, 26, 29, 35, 42, - 126, 197, 19, 20, 39, 66, 74, 175, 177, 178, - 183, 5, 3, 4, 7, 8, 159, 167, 3, 3, - 176, 3, 3, 48, 68, 69, 70, 71, 91, 127, - 128, 161, 151, 182, 7, 11, 12, 13, 14, 15, - 159, 171, 172, 173, 174, 163, 163, 174, 163, 174, - 163, 174, 174, 174, 174, 174, 163, 163, 174, 174, - 134, 164, 174, 174, 174, 163, 174, 174, 174, 163, - 174, 174, 163, 163, 163, 163, 163, 163, 200, 163, - 3, 163, 5, 199, 177, 5, 3, 3, 3, 175, - 178, 175, 177, 178, 175, 178, 5, 162, 162, 162, - 162, 162, 162, 162, 162, 174, 174, 162, 174, 162, - 174, 162, 162, 162, 162, 162, 174, 174, 162, 162, - 135, 165, 162, 162, 164, 174, 205, 206, 162, 162, - 162, 205, 162, 164, 162, 174, 174, 174, 174, 174, - 174, 163, 174, 174, 5, 175, 7, 11, 12, 159, - 171, 173, 173, 7, 9, 10, 11, 12, 159, 168, - 164, 164, 7, 9, 10, 11, 12, 159, 169, 164, - 167, 164, 168, 168, 168, 166, 167, 167, 164, 164, - 169, 167, 135, 129, 152, 213, 174, 167, 165, 162, - 164, 174, 169, 174, 164, 5, 165, 168, 164, 162, - 162, 162, 162, 162, 205, 164, 162, 3, 178, 162, - 165, 165, 162, 162, 162, 162, 162, 162, 162, 165, - 162, 165, 164, 164, 164, 164, 162, 165, 165, 162, - 162, 23, 27, 28, 31, 32, 33, 34, 36, 37, - 47, 54, 65, 75, 81, 84, 86, 87, 88, 89, - 92, 125, 153, 179, 186, 187, 164, 162, 152, 206, - 165, 162, 162, 164, 165, 164, 152, 162, 165, 168, - 168, 166, 174, 174, 164, 165, 168, 3, 168, 152, - 152, 7, 9, 10, 11, 12, 159, 7, 159, 166, - 169, 152, 167, 152, 165, 165, 165, 165, 167, 152, - 152, 166, 169, 167, 136, 136, 136, 136, 136, 136, + 136, 136, 136, 136, 136, 136, 129, 132, 150, 162, + 150, 158, 150, 150, 133, 163, 75, 75, 163, 75, + 163, 75, 163, 163, 163, 163, 163, 75, 75, 163, + 163, 163, 163, 163, 163, 202, 163, 163, 163, 203, + 163, 163, 75, 29, 31, 32, 77, 81, 82, 87, + 90, 92, 148, 149, 198, 199, 201, 5, 66, 175, + 177, 184, 3, 3, 3, 5, 3, 20, 24, 25, + 28, 34, 41, 126, 197, 18, 19, 38, 66, 74, + 175, 177, 178, 183, 5, 3, 4, 6, 7, 159, + 167, 3, 3, 176, 3, 3, 47, 68, 69, 70, + 71, 91, 127, 128, 161, 151, 182, 6, 10, 11, + 12, 13, 14, 159, 171, 172, 173, 174, 163, 163, + 174, 163, 174, 163, 174, 174, 174, 174, 174, 163, + 163, 174, 174, 134, 164, 174, 174, 174, 163, 174, + 174, 174, 163, 174, 174, 163, 163, 163, 163, 163, + 163, 200, 163, 3, 163, 5, 199, 177, 5, 3, + 3, 3, 175, 178, 175, 177, 178, 175, 178, 5, + 162, 162, 162, 162, 162, 162, 162, 162, 174, 174, + 162, 174, 162, 174, 162, 162, 162, 162, 162, 174, + 174, 162, 162, 135, 165, 162, 162, 164, 174, 205, + 206, 162, 162, 162, 205, 162, 164, 162, 174, 174, + 174, 174, 174, 174, 163, 174, 174, 5, 175, 6, + 10, 11, 159, 171, 173, 173, 6, 8, 9, 10, + 11, 159, 168, 164, 164, 6, 8, 9, 10, 11, + 159, 169, 164, 167, 164, 168, 168, 168, 166, 167, + 167, 164, 164, 169, 167, 135, 129, 152, 213, 174, + 167, 165, 162, 164, 174, 169, 174, 164, 5, 165, + 168, 164, 162, 162, 162, 162, 162, 205, 164, 162, + 3, 178, 162, 165, 165, 162, 162, 162, 162, 162, + 162, 162, 165, 162, 165, 164, 164, 164, 164, 162, + 165, 165, 162, 162, 22, 26, 27, 30, 31, 32, + 33, 35, 36, 46, 49, 54, 65, 75, 81, 84, + 86, 87, 88, 89, 92, 125, 153, 179, 186, 187, + 164, 162, 152, 206, 165, 162, 162, 164, 165, 164, + 152, 162, 165, 168, 168, 166, 174, 174, 164, 165, + 168, 3, 168, 152, 152, 6, 8, 9, 10, 11, + 159, 6, 159, 166, 169, 152, 167, 152, 165, 165, + 165, 165, 167, 152, 152, 166, 169, 167, 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, - 136, 136, 5, 136, 154, 162, 213, 165, 167, 152, - 168, 166, 165, 152, 204, 167, 152, 164, 164, 164, - 162, 164, 165, 155, 156, 186, 213, 162, 162, 164, - 164, 162, 162, 152, 152, 152, 152, 162, 164, 162, - 162, 60, 194, 195, 24, 31, 40, 44, 46, 54, - 58, 64, 67, 78, 79, 83, 87, 94, 95, 96, - 125, 180, 5, 66, 175, 177, 189, 3, 60, 190, - 191, 3, 60, 192, 193, 5, 3, 197, 66, 74, - 175, 177, 178, 188, 5, 5, 167, 3, 3, 3, - 213, 161, 5, 187, 152, 162, 164, 164, 164, 152, - 165, 164, 165, 165, 165, 168, 165, 155, 5, 157, - 213, 167, 68, 168, 170, 207, 208, 165, 139, 165, - 7, 159, 166, 168, 170, 211, 212, 3, 3, 139, - 165, 166, 170, 211, 3, 133, 44, 67, 79, 44, - 67, 79, 5, 177, 5, 133, 3, 133, 3, 3, - 175, 178, 175, 177, 178, 175, 178, 213, 167, 170, - 209, 210, 165, 165, 165, 152, 165, 155, 155, 155, - 164, 155, 213, 5, 164, 136, 164, 162, 164, 152, - 140, 152, 164, 162, 162, 162, 162, 162, 140, 152, - 164, 162, 162, 162, 209, 5, 5, 209, 209, 175, - 164, 162, 164, 152, 152, 152, 152, 165, 213, 165, - 3, 165, 208, 165, 25, 165, 168, 166, 166, 212, - 169, 168, 45, 165, 166, 166, 169, 134, 3, 134, - 134, 178, 165, 210, 165, 155, 155, 152, 152, 163, - 152, 164, 164, 162, 162, 163, 152, 164, 164, 162, - 133, 3, 133, 133, 152, 152, 174, 165, 165, 169, - 168, 174, 165, 165, 169, 211, 207, 211, 162, 152, - 152, 162, 162, 162, 152, 152, 162, 134, 162, 134, - 134, 169, 3, 3, 169, 3, 133, 133, 162, 162, - 164, 162, 162, 167, 167, 166, 166, 165, 166, 166, - 134, 134, 164, 164, 152, 164, 164, 165, 165, 152, - 152 + 136, 136, 136, 136, 136, 136, 136, 5, 136, 154, + 162, 213, 165, 167, 152, 168, 166, 165, 152, 204, + 167, 152, 164, 164, 164, 162, 164, 165, 155, 156, + 186, 213, 162, 162, 164, 164, 162, 162, 152, 152, + 152, 152, 162, 164, 162, 162, 60, 194, 195, 23, + 30, 39, 43, 45, 54, 58, 64, 67, 78, 79, + 83, 87, 94, 95, 96, 125, 180, 5, 66, 175, + 177, 189, 3, 60, 190, 191, 3, 60, 192, 193, + 3, 5, 3, 197, 66, 74, 175, 177, 178, 188, + 5, 5, 167, 3, 3, 3, 213, 161, 5, 187, + 152, 162, 164, 164, 164, 152, 165, 164, 165, 165, + 165, 168, 165, 155, 5, 157, 213, 167, 68, 168, + 170, 207, 208, 165, 139, 165, 6, 159, 166, 168, + 170, 211, 212, 3, 3, 139, 165, 166, 170, 211, + 3, 133, 43, 67, 79, 43, 67, 79, 5, 177, + 5, 133, 3, 133, 3, 3, 175, 178, 175, 177, + 178, 175, 178, 213, 167, 170, 209, 210, 165, 165, + 165, 152, 165, 155, 155, 155, 164, 155, 213, 5, + 164, 136, 164, 162, 164, 152, 140, 152, 164, 162, + 162, 162, 162, 162, 140, 152, 164, 162, 162, 162, + 209, 5, 5, 209, 209, 175, 164, 162, 164, 152, + 152, 152, 152, 165, 213, 165, 3, 165, 208, 165, + 24, 165, 168, 166, 166, 212, 169, 168, 44, 165, + 166, 166, 169, 134, 3, 134, 134, 178, 165, 210, + 165, 155, 155, 152, 152, 163, 152, 164, 164, 162, + 162, 163, 152, 164, 164, 162, 133, 3, 133, 133, + 152, 152, 174, 165, 165, 169, 168, 174, 165, 165, + 169, 211, 207, 211, 162, 152, 152, 162, 162, 162, + 152, 152, 162, 134, 162, 134, 134, 169, 3, 3, + 169, 3, 133, 133, 162, 162, 164, 162, 162, 167, + 167, 166, 166, 165, 166, 166, 134, 134, 164, 164, + 152, 164, 164, 165, 165, 152, 152 }; #define yyerrok (yyerrstatus = 0) @@ -2821,227 +2810,227 @@ yyreduce: switch (yyn) { case 7: -#line 306 "frame/ds9parser.Y" +#line 309 "frame/ds9parser.Y" {cerr << "DS9 Regions File 3.2" << endl;;} break; case 9: -#line 309 "frame/ds9parser.Y" +#line 312 "frame/ds9parser.Y" {globalTile = (yyvsp[(2) - (2)].integer);;} break; case 10: -#line 311 "frame/ds9parser.Y" +#line 314 "frame/ds9parser.Y" {globalSystem=(Coord::CoordSystem)(yyvsp[(1) - (1)].integer);;} break; case 12: -#line 312 "frame/ds9parser.Y" +#line 315 "frame/ds9parser.Y" {globalSystem=globalWCS; globalSky=(Coord::SkyFrame)(yyvsp[(1) - (1)].integer);;} break; case 14: -#line 313 "frame/ds9parser.Y" +#line 316 "frame/ds9parser.Y" {globalSystem=globalWCS; globalSky=Coord::FK5;;} break; case 21: -#line 322 "frame/ds9parser.Y" +#line 325 "frame/ds9parser.Y" {globalTile = (yyvsp[(2) - (2)].integer);;} break; case 22: -#line 323 "frame/ds9parser.Y" +#line 326 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 25: -#line 327 "frame/ds9parser.Y" +#line 330 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 28: -#line 331 "frame/ds9parser.Y" +#line 334 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 29: -#line 331 "frame/ds9parser.Y" +#line 334 "frame/ds9parser.Y" {strncpy(localComment,(yyvsp[(3) - (4)].str),80);;} break; case 31: -#line 333 "frame/ds9parser.Y" +#line 336 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 32: -#line 333 "frame/ds9parser.Y" +#line 336 "frame/ds9parser.Y" {strncpy(localComment,(yyvsp[(4) - (5)].str),80);;} break; case 34: -#line 337 "frame/ds9parser.Y" +#line 340 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 35: -#line 337 "frame/ds9parser.Y" +#line 340 "frame/ds9parser.Y" {strncpy(localComment,(yyvsp[(2) - (3)].str),80);;} break; case 37: -#line 339 "frame/ds9parser.Y" +#line 342 "frame/ds9parser.Y" {DISCARD_(1);;} break; case 38: -#line 339 "frame/ds9parser.Y" +#line 342 "frame/ds9parser.Y" {strncpy(localComment,(yyvsp[(3) - (4)].str),80);;} break; case 41: -#line 344 "frame/ds9parser.Y" +#line 347 "frame/ds9parser.Y" {YYACCEPT;;} break; case 42: -#line 347 "frame/ds9parser.Y" +#line 350 "frame/ds9parser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 43: -#line 348 "frame/ds9parser.Y" +#line 351 "frame/ds9parser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 44: -#line 351 "frame/ds9parser.Y" +#line 354 "frame/ds9parser.Y" {yydebug=1;;} break; case 45: -#line 352 "frame/ds9parser.Y" +#line 355 "frame/ds9parser.Y" {yydebug=0;;} break; case 46: -#line 355 "frame/ds9parser.Y" +#line 358 "frame/ds9parser.Y" {(yyval.integer)=((yyvsp[(1) - (1)].integer) ? 1 : 0);;} break; case 47: -#line 357 "frame/ds9parser.Y" +#line 360 "frame/ds9parser.Y" {(yyval.integer)=1;;} break; case 48: -#line 358 "frame/ds9parser.Y" +#line 361 "frame/ds9parser.Y" {(yyval.integer)=1;;} break; case 49: -#line 359 "frame/ds9parser.Y" +#line 362 "frame/ds9parser.Y" {(yyval.integer)=1;;} break; case 50: -#line 360 "frame/ds9parser.Y" +#line 363 "frame/ds9parser.Y" {(yyval.integer)=1;;} break; case 51: -#line 362 "frame/ds9parser.Y" +#line 365 "frame/ds9parser.Y" {(yyval.integer)=0;;} break; case 52: -#line 363 "frame/ds9parser.Y" +#line 366 "frame/ds9parser.Y" {(yyval.integer)=0;;} break; case 53: -#line 364 "frame/ds9parser.Y" +#line 367 "frame/ds9parser.Y" {(yyval.integer)=0;;} break; case 54: -#line 365 "frame/ds9parser.Y" +#line 368 "frame/ds9parser.Y" {(yyval.integer)=0;;} break; case 61: -#line 380 "frame/ds9parser.Y" +#line 383 "frame/ds9parser.Y" {cStatus = 0;;} break; case 62: -#line 381 "frame/ds9parser.Y" +#line 384 "frame/ds9parser.Y" {cStatus = 1;;} break; case 63: -#line 382 "frame/ds9parser.Y" +#line 385 "frame/ds9parser.Y" {cStatus = 1;;} break; case 64: -#line 385 "frame/ds9parser.Y" +#line 388 "frame/ds9parser.Y" {(yyval.real) = fr->mapAngleToRef(0,localSystem,localSky);;} break; case 65: -#line 386 "frame/ds9parser.Y" +#line 389 "frame/ds9parser.Y" {(yyval.real) = (yyvsp[(1) - (1)].real);;} break; case 66: -#line 389 "frame/ds9parser.Y" +#line 392 "frame/ds9parser.Y" {(yyval.real) = fr->mapAngleToRef(degToRad((yyvsp[(1) - (1)].real)),localSystem,localSky);;} break; case 67: -#line 390 "frame/ds9parser.Y" +#line 393 "frame/ds9parser.Y" {(yyval.real) = fr->mapAngleToRef(degToRad((yyvsp[(1) - (1)].real)),localSystem,localSky);;} break; case 68: -#line 391 "frame/ds9parser.Y" +#line 394 "frame/ds9parser.Y" {(yyval.real) = fr->mapAngleToRef((yyvsp[(1) - (1)].real),localSystem,localSky);;} break; case 69: -#line 394 "frame/ds9parser.Y" +#line 397 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), localSystem, Coord::DEGREE);;} break; case 70: -#line 395 "frame/ds9parser.Y" +#line 398 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::PHYSICAL);;} break; case 71: -#line 396 "frame/ds9parser.Y" +#line 399 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::IMAGE);;} break; case 72: -#line 397 "frame/ds9parser.Y" +#line 400 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::DEGREE);;} break; case 73: -#line 398 "frame/ds9parser.Y" +#line 401 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::ARCMIN);;} break; case 74: -#line 399 "frame/ds9parser.Y" +#line 402 "frame/ds9parser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::ARCSEC);;} break; case 75: -#line 403 "frame/ds9parser.Y" +#line 406 "frame/ds9parser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), localSystem, Coord::DEGREE); (yyval.vector)[0] = r[0]; @@ -3051,7 +3040,7 @@ yyreduce: break; case 76: -#line 410 "frame/ds9parser.Y" +#line 413 "frame/ds9parser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::PHYSICAL); (yyval.vector)[0] = r[0]; @@ -3061,7 +3050,7 @@ yyreduce: break; case 77: -#line 417 "frame/ds9parser.Y" +#line 420 "frame/ds9parser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -3071,7 +3060,7 @@ yyreduce: break; case 78: -#line 424 "frame/ds9parser.Y" +#line 427 "frame/ds9parser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::DEGREE); (yyval.vector)[0] = r[0]; @@ -3081,7 +3070,7 @@ yyreduce: break; case 79: -#line 431 "frame/ds9parser.Y" +#line 434 "frame/ds9parser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::ARCMIN); (yyval.vector)[0] = r[0]; @@ -3091,7 +3080,7 @@ yyreduce: break; case 80: -#line 438 "frame/ds9parser.Y" +#line 441 "frame/ds9parser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::ARCSEC); (yyval.vector)[0] = r[0]; @@ -3101,27 +3090,27 @@ yyreduce: break; case 81: -#line 446 "frame/ds9parser.Y" +#line 449 "frame/ds9parser.Y" {(yyval.integer) = (yyvsp[(3) - (3)].integer);;} break; case 82: -#line 449 "frame/ds9parser.Y" +#line 452 "frame/ds9parser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 83: -#line 452 "frame/ds9parser.Y" +#line 455 "frame/ds9parser.Y" {(yyval.real) = parseHMSStr((yyvsp[(1) - (1)].str));;} break; case 84: -#line 455 "frame/ds9parser.Y" +#line 458 "frame/ds9parser.Y" {(yyval.real) = parseDMSStr((yyvsp[(1) - (1)].str));;} break; case 85: -#line 459 "frame/ds9parser.Y" +#line 462 "frame/ds9parser.Y" { Vector r; Coord::CoordSystem sys = checkWCSSystem(); @@ -3137,7 +3126,7 @@ yyreduce: break; case 86: -#line 472 "frame/ds9parser.Y" +#line 475 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -3148,7 +3137,7 @@ yyreduce: break; case 87: -#line 480 "frame/ds9parser.Y" +#line 483 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -3159,7 +3148,7 @@ yyreduce: break; case 88: -#line 488 "frame/ds9parser.Y" +#line 491 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), localSystem, localSky); (yyval.vector)[0] = r[0]; @@ -3169,7 +3158,7 @@ yyreduce: break; case 89: -#line 495 "frame/ds9parser.Y" +#line 498 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -3180,7 +3169,7 @@ yyreduce: break; case 90: -#line 503 "frame/ds9parser.Y" +#line 506 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -3190,7 +3179,7 @@ yyreduce: break; case 91: -#line 510 "frame/ds9parser.Y" +#line 513 "frame/ds9parser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::PHYSICAL); (yyval.vector)[0] = r[0]; @@ -3199,392 +3188,392 @@ yyreduce: break; case 92: -#line 517 "frame/ds9parser.Y" +#line 520 "frame/ds9parser.Y" {(yyval.integer) = Coord::IMAGE;;} break; case 93: -#line 518 "frame/ds9parser.Y" +#line 521 "frame/ds9parser.Y" {(yyval.integer) = Coord::PHYSICAL;;} break; case 94: -#line 519 "frame/ds9parser.Y" +#line 522 "frame/ds9parser.Y" {(yyval.integer) = Coord::DETECTOR;;} break; case 95: -#line 520 "frame/ds9parser.Y" +#line 523 "frame/ds9parser.Y" {(yyval.integer) = Coord::AMPLIFIER;;} break; case 96: -#line 521 "frame/ds9parser.Y" +#line 524 "frame/ds9parser.Y" {(yyval.integer) = (yyvsp[(1) - (1)].integer); globalWCS = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer);;} break; case 97: -#line 524 "frame/ds9parser.Y" +#line 527 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCS;;} break; case 98: -#line 525 "frame/ds9parser.Y" +#line 528 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSA;;} break; case 99: -#line 526 "frame/ds9parser.Y" +#line 529 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSB;;} break; case 100: -#line 527 "frame/ds9parser.Y" +#line 530 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSC;;} break; case 101: -#line 528 "frame/ds9parser.Y" +#line 531 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSD;;} break; case 102: -#line 529 "frame/ds9parser.Y" +#line 532 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSE;;} break; case 103: -#line 530 "frame/ds9parser.Y" +#line 533 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSF;;} break; case 104: -#line 531 "frame/ds9parser.Y" +#line 534 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSG;;} break; case 105: -#line 532 "frame/ds9parser.Y" +#line 535 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSH;;} break; case 106: -#line 533 "frame/ds9parser.Y" +#line 536 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSI;;} break; case 107: -#line 534 "frame/ds9parser.Y" +#line 537 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSJ;;} break; case 108: -#line 535 "frame/ds9parser.Y" +#line 538 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSK;;} break; case 109: -#line 536 "frame/ds9parser.Y" +#line 539 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSL;;} break; case 110: -#line 537 "frame/ds9parser.Y" +#line 540 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSM;;} break; case 111: -#line 538 "frame/ds9parser.Y" +#line 541 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSN;;} break; case 112: -#line 539 "frame/ds9parser.Y" +#line 542 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSO;;} break; case 113: -#line 540 "frame/ds9parser.Y" +#line 543 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSP;;} break; case 114: -#line 541 "frame/ds9parser.Y" +#line 544 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSQ;;} break; case 115: -#line 542 "frame/ds9parser.Y" +#line 545 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSR;;} break; case 116: -#line 543 "frame/ds9parser.Y" +#line 546 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSS;;} break; case 117: -#line 544 "frame/ds9parser.Y" +#line 547 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCST;;} break; case 118: -#line 545 "frame/ds9parser.Y" +#line 548 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSU;;} break; case 119: -#line 546 "frame/ds9parser.Y" +#line 549 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSV;;} break; case 120: -#line 547 "frame/ds9parser.Y" +#line 550 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSW;;} break; case 121: -#line 548 "frame/ds9parser.Y" +#line 551 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSX;;} break; case 122: -#line 549 "frame/ds9parser.Y" +#line 552 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSY;;} break; case 123: -#line 550 "frame/ds9parser.Y" +#line 553 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCSZ;;} break; case 124: -#line 551 "frame/ds9parser.Y" +#line 554 "frame/ds9parser.Y" {(yyval.integer) = Coord::WCS0;;} break; case 125: -#line 554 "frame/ds9parser.Y" +#line 557 "frame/ds9parser.Y" {(yyval.integer) = Coord::FK4;;} break; case 126: -#line 555 "frame/ds9parser.Y" +#line 558 "frame/ds9parser.Y" {(yyval.integer) = Coord::FK4;;} break; case 127: -#line 556 "frame/ds9parser.Y" +#line 559 "frame/ds9parser.Y" {(yyval.integer) = Coord::FK4_NO_E;;} break; case 128: -#line 557 "frame/ds9parser.Y" +#line 560 "frame/ds9parser.Y" {(yyval.integer) = Coord::FK5;;} break; case 129: -#line 558 "frame/ds9parser.Y" +#line 561 "frame/ds9parser.Y" {(yyval.integer) = Coord::FK5;;} break; case 130: -#line 559 "frame/ds9parser.Y" +#line 562 "frame/ds9parser.Y" {(yyval.integer) = Coord::ICRS;;} break; case 131: -#line 560 "frame/ds9parser.Y" +#line 563 "frame/ds9parser.Y" {(yyval.integer) = Coord::GALACTIC;;} break; case 132: -#line 561 "frame/ds9parser.Y" +#line 564 "frame/ds9parser.Y" {(yyval.integer) = Coord::SUPERGALACTIC;;} break; case 133: -#line 562 "frame/ds9parser.Y" +#line 565 "frame/ds9parser.Y" {(yyval.integer) = Coord::ECLIPTIC;;} break; case 134: -#line 563 "frame/ds9parser.Y" +#line 566 "frame/ds9parser.Y" {(yyval.integer) = Coord::HELIOECLIPTIC;;} break; case 135: -#line 566 "frame/ds9parser.Y" +#line 569 "frame/ds9parser.Y" {(yyval.integer)=Coord::DEGREE;;} break; case 136: -#line 567 "frame/ds9parser.Y" +#line 570 "frame/ds9parser.Y" {(yyval.integer)=Coord::ARCMIN;;} break; case 137: -#line 568 "frame/ds9parser.Y" +#line 571 "frame/ds9parser.Y" {(yyval.integer)=Coord::ARCSEC;;} break; case 138: -#line 571 "frame/ds9parser.Y" +#line 574 "frame/ds9parser.Y" {(yyval.integer) = Marker::SELECT;;} break; case 139: -#line 572 "frame/ds9parser.Y" +#line 575 "frame/ds9parser.Y" {(yyval.integer) = Marker::HIGHLITE;;} break; case 140: -#line 573 "frame/ds9parser.Y" +#line 576 "frame/ds9parser.Y" {(yyval.integer) = Marker::DASH;;} break; case 141: -#line 574 "frame/ds9parser.Y" +#line 577 "frame/ds9parser.Y" {(yyval.integer) = Marker::FIXED;;} break; case 142: -#line 575 "frame/ds9parser.Y" +#line 578 "frame/ds9parser.Y" {(yyval.integer) = Marker::EDIT;;} break; case 143: -#line 576 "frame/ds9parser.Y" +#line 579 "frame/ds9parser.Y" {(yyval.integer) = Marker::MOVE;;} break; case 144: -#line 577 "frame/ds9parser.Y" +#line 580 "frame/ds9parser.Y" {(yyval.integer) = Marker::ROTATE;;} break; case 145: -#line 578 "frame/ds9parser.Y" +#line 581 "frame/ds9parser.Y" {(yyval.integer) = Marker::DELETE;;} break; case 146: -#line 579 "frame/ds9parser.Y" +#line 582 "frame/ds9parser.Y" {(yyval.integer) = Marker::INCLUDE;;} break; case 147: -#line 580 "frame/ds9parser.Y" +#line 583 "frame/ds9parser.Y" {(yyval.integer) = Marker::SOURCE;;} break; case 148: -#line 583 "frame/ds9parser.Y" +#line 586 "frame/ds9parser.Y" {(yyval.integer) = CallBack::SELECTCB;;} break; case 149: -#line 584 "frame/ds9parser.Y" +#line 587 "frame/ds9parser.Y" {(yyval.integer) = CallBack::UNSELECTCB;;} break; case 150: -#line 585 "frame/ds9parser.Y" +#line 588 "frame/ds9parser.Y" {(yyval.integer) = CallBack::HIGHLITECB;;} break; case 151: -#line 586 "frame/ds9parser.Y" +#line 589 "frame/ds9parser.Y" {(yyval.integer) = CallBack::UNHIGHLITECB;;} break; case 152: -#line 587 "frame/ds9parser.Y" +#line 590 "frame/ds9parser.Y" {(yyval.integer) = CallBack::MOVEBEGINCB;;} break; case 153: -#line 588 "frame/ds9parser.Y" +#line 591 "frame/ds9parser.Y" {(yyval.integer) = CallBack::MOVECB;;} break; case 154: -#line 589 "frame/ds9parser.Y" +#line 592 "frame/ds9parser.Y" {(yyval.integer) = CallBack::MOVEENDCB;;} break; case 155: -#line 590 "frame/ds9parser.Y" +#line 593 "frame/ds9parser.Y" {(yyval.integer) = CallBack::EDITBEGINCB;;} break; case 156: -#line 591 "frame/ds9parser.Y" +#line 594 "frame/ds9parser.Y" {(yyval.integer) = CallBack::EDITCB;;} break; case 157: -#line 592 "frame/ds9parser.Y" +#line 595 "frame/ds9parser.Y" {(yyval.integer) = CallBack::EDITENDCB;;} break; case 158: -#line 593 "frame/ds9parser.Y" +#line 596 "frame/ds9parser.Y" {(yyval.integer) = CallBack::ROTATEBEGINCB;;} break; case 159: -#line 594 "frame/ds9parser.Y" +#line 597 "frame/ds9parser.Y" {(yyval.integer) = CallBack::ROTATECB;;} break; case 160: -#line 595 "frame/ds9parser.Y" +#line 598 "frame/ds9parser.Y" {(yyval.integer) = CallBack::ROTATEENDCB;;} break; case 161: -#line 596 "frame/ds9parser.Y" +#line 599 "frame/ds9parser.Y" {(yyval.integer) = CallBack::DELETECB;;} break; case 162: -#line 597 "frame/ds9parser.Y" +#line 600 "frame/ds9parser.Y" {(yyval.integer) = CallBack::TEXTCB;;} break; case 163: -#line 598 "frame/ds9parser.Y" +#line 601 "frame/ds9parser.Y" {(yyval.integer) = CallBack::COLORCB;;} break; case 164: -#line 599 "frame/ds9parser.Y" +#line 602 "frame/ds9parser.Y" {(yyval.integer) = CallBack::LINEWIDTHCB;;} break; case 165: -#line 600 "frame/ds9parser.Y" +#line 603 "frame/ds9parser.Y" {(yyval.integer) = CallBack::PROPERTYCB;;} break; case 166: -#line 601 "frame/ds9parser.Y" +#line 604 "frame/ds9parser.Y" {(yyval.integer) = CallBack::FONTCB;;} break; case 167: -#line 602 "frame/ds9parser.Y" +#line 605 "frame/ds9parser.Y" {(yyval.integer) = CallBack::KEYCB;;} break; case 168: -#line 603 "frame/ds9parser.Y" +#line 606 "frame/ds9parser.Y" {(yyval.integer) = CallBack::UPDATECB;;} break; case 171: -#line 611 "frame/ds9parser.Y" +#line 614 "frame/ds9parser.Y" { setProps(&globalProps,(yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer)); setProps(&localProps,(yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer)); @@ -3592,7 +3581,7 @@ yyreduce: break; case 172: -#line 616 "frame/ds9parser.Y" +#line 619 "frame/ds9parser.Y" { strncpy(globalColor,(yyvsp[(3) - (3)].str),16); strncpy(localColor,(yyvsp[(3) - (3)].str),16); @@ -3600,7 +3589,7 @@ yyreduce: break; case 173: -#line 621 "frame/ds9parser.Y" +#line 624 "frame/ds9parser.Y" { globalDash[0] = localDash[0] =(yyvsp[(3) - (4)].integer); globalDash[1] = localDash[1] =(yyvsp[(4) - (4)].integer); @@ -3608,12 +3597,12 @@ yyreduce: break; case 174: -#line 625 "frame/ds9parser.Y" +#line 628 "frame/ds9parser.Y" {globalWidth = localWidth = (yyvsp[(3) - (3)].integer);;} break; case 175: -#line 627 "frame/ds9parser.Y" +#line 630 "frame/ds9parser.Y" { strncpy(globalFont,(yyvsp[(3) - (3)].str),32); strncpy(localFont,(yyvsp[(3) - (3)].str),32); @@ -3621,7 +3610,7 @@ yyreduce: break; case 176: -#line 632 "frame/ds9parser.Y" +#line 635 "frame/ds9parser.Y" { strncpy(globalText,(yyvsp[(3) - (3)].str),80); strncpy(localText,(yyvsp[(3) - (3)].str),80); @@ -3629,7 +3618,7 @@ yyreduce: break; case 177: -#line 637 "frame/ds9parser.Y" +#line 640 "frame/ds9parser.Y" { setProps(&globalProps,Marker::DASH,1); setProps(&localProps,Marker::DASH,1); @@ -3637,7 +3626,7 @@ yyreduce: break; case 178: -#line 642 "frame/ds9parser.Y" +#line 645 "frame/ds9parser.Y" { setProps(&globalProps,Marker::SOURCE,1); setProps(&localProps,Marker::SOURCE,1); @@ -3645,7 +3634,7 @@ yyreduce: break; case 179: -#line 647 "frame/ds9parser.Y" +#line 650 "frame/ds9parser.Y" { setProps(&globalProps,Marker::SOURCE,0); setProps(&localProps,Marker::SOURCE,0); @@ -3653,12 +3642,12 @@ yyreduce: break; case 180: -#line 651 "frame/ds9parser.Y" +#line 654 "frame/ds9parser.Y" {globalPoint = localPoint = (yyvsp[(3) - (3)].integer);;} break; case 181: -#line 653 "frame/ds9parser.Y" +#line 656 "frame/ds9parser.Y" { globalPoint = localPoint = (yyvsp[(3) - (4)].integer); globalPointSize = localPointSize = (yyvsp[(4) - (4)].integer); @@ -3666,32 +3655,39 @@ yyreduce: break; case 182: -#line 658 "frame/ds9parser.Y" +#line 661 "frame/ds9parser.Y" + { + globalFill = localFill = (yyvsp[(3) - (3)].integer); + ;} + break; + + case 183: +#line 665 "frame/ds9parser.Y" { globalLine1 = localLine1 = (yyvsp[(3) - (4)].integer); globalLine2 = localLine2 = (yyvsp[(4) - (4)].integer); ;} break; - case 183: -#line 662 "frame/ds9parser.Y" + case 184: +#line 669 "frame/ds9parser.Y" {globalVector = localVector = (yyvsp[(3) - (3)].integer);;} break; - case 184: -#line 664 "frame/ds9parser.Y" + case 185: +#line 671 "frame/ds9parser.Y" { globalComposite = localComposite = (yyvsp[(3) - (3)].integer); ;} break; - case 185: -#line 667 "frame/ds9parser.Y" + case 186: +#line 674 "frame/ds9parser.Y" {;} break; - case 186: -#line 669 "frame/ds9parser.Y" + case 187: +#line 676 "frame/ds9parser.Y" { strncpy(globalCompassNorth,(yyvsp[(4) - (7)].str),80); strncpy(globalCompassEast,(yyvsp[(5) - (7)].str),80); @@ -3702,23 +3698,23 @@ yyreduce: ;} break; - case 187: -#line 677 "frame/ds9parser.Y" + case 188: +#line 684 "frame/ds9parser.Y" {globalTextAngle = localTextAngle = (yyvsp[(3) - (3)].real);;} break; - case 188: -#line 678 "frame/ds9parser.Y" + case 189: +#line 685 "frame/ds9parser.Y" {globalTextRotate = localTextRotate = (yyvsp[(3) - (3)].integer);;} break; - case 189: -#line 679 "frame/ds9parser.Y" + case 190: +#line 686 "frame/ds9parser.Y" {globalWCS = (Coord::CoordSystem)(yyvsp[(3) - (3)].integer);;} break; - case 190: -#line 683 "frame/ds9parser.Y" + case 191: +#line 690 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (4)].integer); globalRulerSkyFrame = localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(2) - (4)].integer); @@ -3727,8 +3723,8 @@ yyreduce: ;} break; - case 191: -#line 690 "frame/ds9parser.Y" + case 192: +#line 697 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3737,8 +3733,8 @@ yyreduce: ;} break; - case 192: -#line 697 "frame/ds9parser.Y" + case 193: +#line 704 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3747,8 +3743,8 @@ yyreduce: ;} break; - case 193: -#line 704 "frame/ds9parser.Y" + case 194: +#line 711 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::WCS; globalRulerSkyFrame = localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (2)].integer); @@ -3757,8 +3753,8 @@ yyreduce: ;} break; - case 194: -#line 711 "frame/ds9parser.Y" + case 195: +#line 718 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::WCS; globalRulerSkyFrame = localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (2)].integer); @@ -3767,8 +3763,8 @@ yyreduce: ;} break; - case 195: -#line 718 "frame/ds9parser.Y" + case 196: +#line 725 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::WCS; globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3777,8 +3773,8 @@ yyreduce: ;} break; - case 196: -#line 725 "frame/ds9parser.Y" + case 197: +#line 732 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::WCS; globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3787,8 +3783,8 @@ yyreduce: ;} break; - case 197: -#line 732 "frame/ds9parser.Y" + case 198: +#line 739 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::IMAGE; globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3797,8 +3793,8 @@ yyreduce: ;} break; - case 198: -#line 739 "frame/ds9parser.Y" + case 199: +#line 746 "frame/ds9parser.Y" { globalRulerCoordSystem = localRulerCoordSystem = Coord::IMAGE; globalRulerSkyFrame = localRulerSkyFrame = Coord::FK5; @@ -3807,40 +3803,40 @@ yyreduce: ;} break; - case 199: -#line 748 "frame/ds9parser.Y" + case 200: +#line 755 "frame/ds9parser.Y" { globalCompassCoordSystem = localCompassCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); globalCompassSkyFrame = localCompassSkyFrame = (Coord::SkyFrame)(yyvsp[(2) - (2)].integer); ;} break; - case 200: -#line 753 "frame/ds9parser.Y" + case 201: +#line 760 "frame/ds9parser.Y" { globalCompassCoordSystem = localCompassCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer); globalCompassSkyFrame = localCompassSkyFrame = Coord::FK5; ;} break; - case 201: -#line 758 "frame/ds9parser.Y" + case 202: +#line 765 "frame/ds9parser.Y" { globalCompassCoordSystem = localCompassCoordSystem = Coord::WCS; globalCompassSkyFrame = localCompassSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (1)].integer); ;} break; - case 202: -#line 763 "frame/ds9parser.Y" + case 203: +#line 770 "frame/ds9parser.Y" { globalCompassCoordSystem = localCompassCoordSystem = Coord::WCS; globalCompassSkyFrame = localCompassSkyFrame = Coord::FK5; ;} break; - case 203: -#line 769 "frame/ds9parser.Y" + case 204: +#line 776 "frame/ds9parser.Y" { // global properties globalSystem = Coord::PHYSICAL; @@ -3859,6 +3855,7 @@ yyreduce: strcpy(globalText,""); // unique properties + globalFill = 0; globalLine1 = 0; globalLine2 = 0; globalVector = 1; @@ -3883,92 +3880,97 @@ yyreduce: ;} break; - case 206: -#line 815 "frame/ds9parser.Y" + case 207: +#line 823 "frame/ds9parser.Y" {setProps(&localProps,(yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 207: -#line 816 "frame/ds9parser.Y" + case 208: +#line 824 "frame/ds9parser.Y" {strncpy(localColor,(yyvsp[(3) - (3)].str),16);;} break; - case 208: -#line 818 "frame/ds9parser.Y" + case 209: +#line 826 "frame/ds9parser.Y" { localDash[0] =(yyvsp[(3) - (4)].integer); localDash[1] =(yyvsp[(4) - (4)].integer); ;} break; - case 209: -#line 822 "frame/ds9parser.Y" + case 210: +#line 830 "frame/ds9parser.Y" {localWidth = (yyvsp[(3) - (3)].integer);;} break; - case 210: -#line 823 "frame/ds9parser.Y" + case 211: +#line 831 "frame/ds9parser.Y" {strncpy(localFont,(yyvsp[(3) - (3)].str),32);;} break; - case 211: -#line 824 "frame/ds9parser.Y" + case 212: +#line 832 "frame/ds9parser.Y" {strncpy(localText,(yyvsp[(3) - (3)].str),80);;} break; - case 212: -#line 825 "frame/ds9parser.Y" + case 213: +#line 833 "frame/ds9parser.Y" {taglist.append(new Tag((yyvsp[(3) - (3)].str)));;} break; - case 213: -#line 826 "frame/ds9parser.Y" + case 214: +#line 834 "frame/ds9parser.Y" {cblist.append( new CallBack(fr->getInterp(),(CallBack::Type)(yyvsp[(3) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str)));;} break; - case 214: -#line 828 "frame/ds9parser.Y" + case 215: +#line 836 "frame/ds9parser.Y" {setProps(&localProps,Marker::DASH,1);;} break; - case 215: -#line 829 "frame/ds9parser.Y" + case 216: +#line 837 "frame/ds9parser.Y" {setProps(&localProps,Marker::SOURCE,1);;} break; - case 216: -#line 830 "frame/ds9parser.Y" + case 217: +#line 838 "frame/ds9parser.Y" {setProps(&localProps,Marker::SOURCE,0);;} break; - case 217: -#line 832 "frame/ds9parser.Y" + case 218: +#line 840 "frame/ds9parser.Y" {localPoint = (yyvsp[(3) - (3)].integer);;} break; - case 218: -#line 833 "frame/ds9parser.Y" + case 219: +#line 841 "frame/ds9parser.Y" {localPoint = (yyvsp[(3) - (4)].integer); localPointSize = (yyvsp[(4) - (4)].integer);;} break; - case 219: -#line 834 "frame/ds9parser.Y" + case 220: +#line 842 "frame/ds9parser.Y" + {localFill=(yyvsp[(3) - (3)].integer);;} + break; + + case 221: +#line 843 "frame/ds9parser.Y" {localLine1=(yyvsp[(3) - (4)].integer); localLine2=(yyvsp[(4) - (4)].integer);;} break; - case 220: -#line 835 "frame/ds9parser.Y" + case 222: +#line 844 "frame/ds9parser.Y" {localVector=(yyvsp[(3) - (3)].integer);;} break; - case 221: -#line 836 "frame/ds9parser.Y" + case 223: +#line 845 "frame/ds9parser.Y" {localComposite=(yyvsp[(3) - (3)].integer);;} break; - case 223: -#line 839 "frame/ds9parser.Y" + case 225: +#line 848 "frame/ds9parser.Y" { strncpy(localCompassNorth,(yyvsp[(4) - (7)].str),80); strncpy(localCompassEast,(yyvsp[(5) - (7)].str),80); @@ -3977,18 +3979,18 @@ yyreduce: ;} break; - case 224: -#line 845 "frame/ds9parser.Y" + case 226: +#line 854 "frame/ds9parser.Y" {localTextAngle=(yyvsp[(3) - (3)].real);;} break; - case 225: -#line 846 "frame/ds9parser.Y" + case 227: +#line 855 "frame/ds9parser.Y" {localTextRotate=(yyvsp[(3) - (3)].integer);;} break; - case 229: -#line 853 "frame/ds9parser.Y" + case 231: +#line 862 "frame/ds9parser.Y" { localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (4)].integer); localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(2) - (4)].integer); @@ -3997,8 +3999,8 @@ yyreduce: ;} break; - case 230: -#line 860 "frame/ds9parser.Y" + case 232: +#line 869 "frame/ds9parser.Y" { localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); localRulerSkyFrame = Coord::FK5; @@ -4007,8 +4009,8 @@ yyreduce: ;} break; - case 231: -#line 867 "frame/ds9parser.Y" + case 233: +#line 876 "frame/ds9parser.Y" { localRulerCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); localRulerSkyFrame = Coord::FK5; @@ -4017,8 +4019,8 @@ yyreduce: ;} break; - case 232: -#line 874 "frame/ds9parser.Y" + case 234: +#line 883 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::WCS; localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (2)].integer); @@ -4027,8 +4029,8 @@ yyreduce: ;} break; - case 233: -#line 881 "frame/ds9parser.Y" + case 235: +#line 890 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::WCS; localRulerSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (2)].integer); @@ -4037,8 +4039,8 @@ yyreduce: ;} break; - case 234: -#line 888 "frame/ds9parser.Y" + case 236: +#line 897 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::WCS; localRulerSkyFrame = Coord::FK5; @@ -4047,8 +4049,8 @@ yyreduce: ;} break; - case 235: -#line 895 "frame/ds9parser.Y" + case 237: +#line 904 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::WCS; localRulerSkyFrame = Coord::FK5; @@ -4057,8 +4059,8 @@ yyreduce: ;} break; - case 236: -#line 902 "frame/ds9parser.Y" + case 238: +#line 911 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::IMAGE; localRulerSkyFrame = Coord::FK5; @@ -4067,8 +4069,8 @@ yyreduce: ;} break; - case 237: -#line 909 "frame/ds9parser.Y" + case 239: +#line 918 "frame/ds9parser.Y" { localRulerCoordSystem = Coord::IMAGE; localRulerSkyFrame = Coord::FK5; @@ -4077,85 +4079,85 @@ yyreduce: ;} break; - case 238: -#line 918 "frame/ds9parser.Y" + case 240: +#line 927 "frame/ds9parser.Y" { localCompassCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); localCompassSkyFrame = (Coord::SkyFrame)(yyvsp[(2) - (2)].integer); ;} break; - case 239: -#line 923 "frame/ds9parser.Y" + case 241: +#line 932 "frame/ds9parser.Y" { localCompassCoordSystem = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer); localCompassSkyFrame = Coord::FK5; ;} break; - case 240: -#line 928 "frame/ds9parser.Y" + case 242: +#line 937 "frame/ds9parser.Y" { localCompassCoordSystem = Coord::WCS; localCompassSkyFrame = (Coord::SkyFrame)(yyvsp[(1) - (1)].integer); ;} break; - case 241: -#line 933 "frame/ds9parser.Y" + case 243: +#line 942 "frame/ds9parser.Y" { localCompassCoordSystem = Coord::WCS; localCompassSkyFrame = Coord::FK5; ;} break; - case 242: -#line 939 "frame/ds9parser.Y" + case 244: +#line 948 "frame/ds9parser.Y" {aNum=0; aAngNum=0;;} break; - case 243: -#line 939 "frame/ds9parser.Y" + case 245: +#line 948 "frame/ds9parser.Y" {localCpanda = 2;;} break; - case 244: -#line 940 "frame/ds9parser.Y" + case 246: +#line 949 "frame/ds9parser.Y" {localCpanda=0;;} break; - case 245: -#line 943 "frame/ds9parser.Y" + case 247: +#line 952 "frame/ds9parser.Y" {aNum=0; aAngNum=0, aAngle=0;;} break; - case 246: -#line 944 "frame/ds9parser.Y" + case 248: +#line 953 "frame/ds9parser.Y" {aAngle=(yyvsp[(9) - (10)].real);localEpanda=2;;} break; - case 247: -#line 945 "frame/ds9parser.Y" + case 249: +#line 954 "frame/ds9parser.Y" {localEpanda=0;;} break; - case 248: -#line 948 "frame/ds9parser.Y" + case 250: +#line 957 "frame/ds9parser.Y" {aNum=0; aAngNum=0, aAngle=0;;} break; - case 249: -#line 949 "frame/ds9parser.Y" + case 251: +#line 958 "frame/ds9parser.Y" {aAngle=(yyvsp[(9) - (10)].real);localBpanda=2;;} break; - case 250: -#line 950 "frame/ds9parser.Y" + case 252: +#line 959 "frame/ds9parser.Y" {localBpanda=0;;} break; - case 251: -#line 953 "frame/ds9parser.Y" + case 253: +#line 962 "frame/ds9parser.Y" { // reset maperr flag maperr = 0; @@ -4181,6 +4183,7 @@ yyreduce: cblist.deleteAll(); // unique properties + localFill = globalFill; localLine1 = globalLine1; localLine2 = globalLine2; localVector = globalVector; @@ -4205,53 +4208,53 @@ yyreduce: ;} break; - case 252: -#line 1002 "frame/ds9parser.Y" + case 254: +#line 1012 "frame/ds9parser.Y" {(yyval.integer) = Point::CIRCLE;;} break; - case 253: -#line 1003 "frame/ds9parser.Y" + case 255: +#line 1013 "frame/ds9parser.Y" {(yyval.integer) = Point::BOX;;} break; - case 254: -#line 1004 "frame/ds9parser.Y" + case 256: +#line 1014 "frame/ds9parser.Y" {(yyval.integer) = Point::DIAMOND;;} break; - case 255: -#line 1005 "frame/ds9parser.Y" + case 257: +#line 1015 "frame/ds9parser.Y" {(yyval.integer) = Point::CROSS;;} break; - case 256: -#line 1006 "frame/ds9parser.Y" + case 258: +#line 1016 "frame/ds9parser.Y" {(yyval.integer) = Point::EX;;} break; - case 257: -#line 1007 "frame/ds9parser.Y" + case 259: +#line 1017 "frame/ds9parser.Y" {(yyval.integer) = Point::ARROW;;} break; - case 258: -#line 1008 "frame/ds9parser.Y" + case 260: +#line 1018 "frame/ds9parser.Y" {(yyval.integer) = Point::BOXCIRCLE;;} break; - case 259: -#line 1011 "frame/ds9parser.Y" + case 261: +#line 1021 "frame/ds9parser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; - case 260: -#line 1012 "frame/ds9parser.Y" + case 262: +#line 1022 "frame/ds9parser.Y" {setProps(&localProps, Marker::INCLUDE, 0);;} break; - case 261: -#line 1016 "frame/ds9parser.Y" + case 263: +#line 1026 "frame/ds9parser.Y" { fr->createVectCmd(Vector((yyvsp[(3) - (10)].vector)), (yyvsp[(5) - (10)].real),(yyvsp[(7) - (10)].real), @@ -4261,13 +4264,13 @@ yyreduce: ;} break; - case 262: -#line 1023 "frame/ds9parser.Y" + case 264: +#line 1033 "frame/ds9parser.Y" {polylist.deleteAll();;} break; - case 263: -#line 1025 "frame/ds9parser.Y" + case 265: +#line 1035 "frame/ds9parser.Y" { fr->createSegmentCmd(polylist, localColor,localDash,localWidth,localFont, @@ -4275,8 +4278,8 @@ yyreduce: ;} break; - case 264: -#line 1031 "frame/ds9parser.Y" + case 266: +#line 1041 "frame/ds9parser.Y" { fr->createTextCmd(Vector((yyvsp[(3) - (6)].vector)), localTextAngle,localTextRotate, @@ -4285,8 +4288,8 @@ yyreduce: ;} break; - case 265: -#line 1038 "frame/ds9parser.Y" + case 267: +#line 1048 "frame/ds9parser.Y" { fr->createRulerCmd(Vector((yyvsp[(3) - (8)].vector)), Vector((yyvsp[(5) - (8)].vector)), @@ -4297,8 +4300,8 @@ yyreduce: ;} break; - case 266: -#line 1047 "frame/ds9parser.Y" + case 268: +#line 1057 "frame/ds9parser.Y" { fr->createCompassCmd(Vector((yyvsp[(3) - (8)].vector)), (yyvsp[(5) - (8)].real), @@ -4310,8 +4313,8 @@ yyreduce: ;} break; - case 267: -#line 1057 "frame/ds9parser.Y" + case 269: +#line 1067 "frame/ds9parser.Y" { fr->createProjectionCmd(Vector((yyvsp[(3) - (10)].vector)), Vector((yyvsp[(5) - (10)].vector)), @@ -4321,19 +4324,19 @@ yyreduce: ;} break; - case 268: -#line 1065 "frame/ds9parser.Y" + case 270: +#line 1075 "frame/ds9parser.Y" { // backward compatibility fr->createCircleCmd(Vector((yyvsp[(3) - (8)].vector)), - (yyvsp[(5) - (8)].real), + (yyvsp[(5) - (8)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 269: -#line 1073 "frame/ds9parser.Y" + case 271: +#line 1083 "frame/ds9parser.Y" { fr->createCompositeCmd(Vector((yyvsp[(3) - (8)].vector)), (yyvsp[(5) - (8)].real), localComposite, @@ -4342,29 +4345,29 @@ yyreduce: ;} break; - case 270: -#line 1082 "frame/ds9parser.Y" + case 272: +#line 1092 "frame/ds9parser.Y" { fr->createCircleCmd(Vector((yyvsp[(3) - (8)].vector)), - (yyvsp[(5) - (8)].real), + (yyvsp[(5) - (8)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 271: -#line 1089 "frame/ds9parser.Y" + case 273: +#line 1099 "frame/ds9parser.Y" { // backwards compatibility fr->createCircleCmd(Vector((yyvsp[(3) - (8)].vector)), - (yyvsp[(5) - (8)].real), + (yyvsp[(5) - (8)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 272: -#line 1097 "frame/ds9parser.Y" + case 274: +#line 1107 "frame/ds9parser.Y" { // for ellipse annulus aStatus = 1; @@ -4383,14 +4386,14 @@ yyreduce: fr->createEllipseCmd(Vector((yyvsp[(3) - (10)].vector)), Vector((yyvsp[(5) - (10)].vector)), - (yyvsp[(7) - (10)].real), + (yyvsp[(7) - (10)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 273: -#line 1120 "frame/ds9parser.Y" + case 275: +#line 1130 "frame/ds9parser.Y" { // for box annulus aStatus = 3; @@ -4409,45 +4412,45 @@ yyreduce: fr->createBoxCmd(Vector((yyvsp[(3) - (10)].vector)), Vector((yyvsp[(5) - (10)].vector)), - (yyvsp[(7) - (10)].real), + (yyvsp[(7) - (10)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 274: -#line 1143 "frame/ds9parser.Y" + case 276: +#line 1153 "frame/ds9parser.Y" { // backwards compatibility fr->createBoxCmd(Vector((yyvsp[(3) - (10)].vector)), Vector((yyvsp[(5) - (10)].vector)), - (yyvsp[(7) - (10)].real), + (yyvsp[(7) - (10)].real), localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 275: -#line 1151 "frame/ds9parser.Y" + case 277: +#line 1161 "frame/ds9parser.Y" {polylist.deleteAll();;} break; - case 276: -#line 1153 "frame/ds9parser.Y" + case 278: +#line 1163 "frame/ds9parser.Y" { - fr->createPolygonCmd(polylist, + fr->createPolygonCmd(polylist, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); ;} break; - case 277: -#line 1158 "frame/ds9parser.Y" + case 279: +#line 1168 "frame/ds9parser.Y" {polylist.deleteAll();;} break; - case 278: -#line 1160 "frame/ds9parser.Y" + case 280: +#line 1170 "frame/ds9parser.Y" { fr->createSegmentCmd(polylist, localColor,localDash,localWidth,localFont, @@ -4455,8 +4458,8 @@ yyreduce: ;} break; - case 279: -#line 1167 "frame/ds9parser.Y" + case 281: +#line 1177 "frame/ds9parser.Y" { fr->createLineCmd(Vector((yyvsp[(3) - (8)].vector)), Vector((yyvsp[(5) - (8)].vector)), @@ -4466,8 +4469,8 @@ yyreduce: ;} break; - case 280: -#line 1175 "frame/ds9parser.Y" + case 282: +#line 1185 "frame/ds9parser.Y" { fr->createVectCmd(Vector((yyvsp[(3) - (10)].vector)), (yyvsp[(5) - (10)].real),(yyvsp[(7) - (10)].real), @@ -4477,8 +4480,8 @@ yyreduce: ;} break; - case 281: -#line 1183 "frame/ds9parser.Y" + case 283: +#line 1193 "frame/ds9parser.Y" { fr->createTextCmd(Vector((yyvsp[(3) - (6)].vector)), localTextAngle,localTextRotate, @@ -4487,13 +4490,13 @@ yyreduce: ;} break; - case 282: -#line 1189 "frame/ds9parser.Y" + case 284: +#line 1199 "frame/ds9parser.Y" {strncpy(localText,(yyvsp[(5) - (6)].str),80);;} break; - case 283: -#line 1191 "frame/ds9parser.Y" + case 285: +#line 1201 "frame/ds9parser.Y" { fr->createTextCmd(Vector((yyvsp[(3) - (9)].vector)), localTextAngle,localTextRotate, @@ -4502,8 +4505,8 @@ yyreduce: ;} break; - case 284: -#line 1198 "frame/ds9parser.Y" + case 286: +#line 1208 "frame/ds9parser.Y" { fr->createPointCmd(Vector((yyvsp[(3) - (6)].vector)), (Point::PointShape)localPoint, localPointSize, @@ -4512,8 +4515,8 @@ yyreduce: ;} break; - case 285: -#line 1205 "frame/ds9parser.Y" + case 287: +#line 1215 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::CIRCLE, localPointSize, @@ -4522,8 +4525,8 @@ yyreduce: ;} break; - case 286: -#line 1212 "frame/ds9parser.Y" + case 288: +#line 1222 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::BOX, localPointSize, @@ -4532,8 +4535,8 @@ yyreduce: ;} break; - case 287: -#line 1219 "frame/ds9parser.Y" + case 289: +#line 1229 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::DIAMOND, localPointSize, @@ -4542,8 +4545,8 @@ yyreduce: ;} break; - case 288: -#line 1226 "frame/ds9parser.Y" + case 290: +#line 1236 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::CROSS, localPointSize, @@ -4552,8 +4555,8 @@ yyreduce: ;} break; - case 289: -#line 1233 "frame/ds9parser.Y" + case 291: +#line 1243 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::EX, localPointSize, @@ -4562,8 +4565,8 @@ yyreduce: ;} break; - case 290: -#line 1240 "frame/ds9parser.Y" + case 292: +#line 1250 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::ARROW, localPointSize, @@ -4572,8 +4575,8 @@ yyreduce: ;} break; - case 291: -#line 1247 "frame/ds9parser.Y" + case 293: +#line 1257 "frame/ds9parser.Y" { // backwards compatibility fr->createPointCmd(Vector((yyvsp[(4) - (7)].vector)), Point::BOXCIRCLE, localPointSize, @@ -4582,8 +4585,8 @@ yyreduce: ;} break; - case 292: -#line 1254 "frame/ds9parser.Y" + case 294: +#line 1264 "frame/ds9parser.Y" { fr->createRulerCmd(Vector((yyvsp[(3) - (8)].vector)), Vector((yyvsp[(5) - (8)].vector)), @@ -4594,8 +4597,8 @@ yyreduce: ;} break; - case 293: -#line 1263 "frame/ds9parser.Y" + case 295: +#line 1273 "frame/ds9parser.Y" { fr->createCompassCmd(Vector((yyvsp[(3) - (8)].vector)), (yyvsp[(5) - (8)].real), @@ -4607,8 +4610,8 @@ yyreduce: ;} break; - case 294: -#line 1273 "frame/ds9parser.Y" + case 296: +#line 1283 "frame/ds9parser.Y" { fr->createProjectionCmd(Vector((yyvsp[(3) - (10)].vector)), Vector((yyvsp[(5) - (10)].vector)), @@ -4618,8 +4621,8 @@ yyreduce: ;} break; - case 295: -#line 1281 "frame/ds9parser.Y" + case 297: +#line 1291 "frame/ds9parser.Y" { fr->createAnnulusCmd(Vector((yyvsp[(3) - (10)].vector)), (yyvsp[(5) - (10)].real),(yyvsp[(7) - (10)].real),1, @@ -4628,8 +4631,8 @@ yyreduce: ;} break; - case 296: -#line 1289 "frame/ds9parser.Y" + case 298: +#line 1299 "frame/ds9parser.Y" { aAnnuli[0] = (yyvsp[(5) - (12)].real); aAnnuli[1] = (yyvsp[(7) - (12)].real); @@ -4640,8 +4643,8 @@ yyreduce: ;} break; - case 297: -#line 1299 "frame/ds9parser.Y" + case 299: +#line 1309 "frame/ds9parser.Y" { fr->createAnnulusCmd(Vector((yyvsp[(3) - (12)].vector)), (yyvsp[(5) - (12)].real),(yyvsp[(7) - (12)].real),(yyvsp[(9) - (12)].integer), @@ -4650,8 +4653,8 @@ yyreduce: ;} break; - case 298: -#line 1307 "frame/ds9parser.Y" + case 300: +#line 1317 "frame/ds9parser.Y" { // prefered syntax fr->createEllipseAnnulusCmd(Vector((yyvsp[(3) - (12)].vector)), @@ -4662,8 +4665,8 @@ yyreduce: ;} break; - case 299: -#line 1317 "frame/ds9parser.Y" + case 301: +#line 1327 "frame/ds9parser.Y" { // prefered syntax fr->createEllipseAnnulusCmd(Vector((yyvsp[(3) - (14)].vector)), @@ -4674,8 +4677,8 @@ yyreduce: ;} break; - case 300: -#line 1327 "frame/ds9parser.Y" + case 302: +#line 1337 "frame/ds9parser.Y" { // prefered syntax aVector[0] = Vector((yyvsp[(5) - (14)].vector)); @@ -4688,8 +4691,8 @@ yyreduce: ;} break; - case 301: -#line 1339 "frame/ds9parser.Y" + case 303: +#line 1349 "frame/ds9parser.Y" { // backwards compatibility // old saoimage syntax @@ -4698,8 +4701,8 @@ yyreduce: ;} break; - case 302: -#line 1347 "frame/ds9parser.Y" + case 304: +#line 1357 "frame/ds9parser.Y" { // prefered syntax fr->createBoxAnnulusCmd(Vector((yyvsp[(3) - (12)].vector)), @@ -4710,8 +4713,8 @@ yyreduce: ;} break; - case 303: -#line 1357 "frame/ds9parser.Y" + case 305: +#line 1367 "frame/ds9parser.Y" { // prefered syntax aVector[0] = Vector((yyvsp[(5) - (14)].vector)); @@ -4724,8 +4727,8 @@ yyreduce: ;} break; - case 304: -#line 1369 "frame/ds9parser.Y" + case 306: +#line 1379 "frame/ds9parser.Y" { // prefered syntax fr->createBoxAnnulusCmd(Vector((yyvsp[(3) - (14)].vector)), @@ -4736,8 +4739,8 @@ yyreduce: ;} break; - case 305: -#line 1379 "frame/ds9parser.Y" + case 307: +#line 1389 "frame/ds9parser.Y" { // backwards compatibility // old saoimage syntax @@ -4746,8 +4749,8 @@ yyreduce: ;} break; - case 306: -#line 1388 "frame/ds9parser.Y" + case 308: +#line 1398 "frame/ds9parser.Y" { switch (localCpanda) { case 0: /* ignore it */ @@ -4770,8 +4773,8 @@ yyreduce: ;} break; - case 307: -#line 1410 "frame/ds9parser.Y" + case 309: +#line 1420 "frame/ds9parser.Y" { switch (localEpanda) { case 0: /* ignore it */ @@ -4796,8 +4799,8 @@ yyreduce: ;} break; - case 308: -#line 1434 "frame/ds9parser.Y" + case 310: +#line 1444 "frame/ds9parser.Y" { switch (localBpanda) { case 0: /* ignore it */ @@ -4822,8 +4825,8 @@ yyreduce: ;} break; - case 313: -#line 1464 "frame/ds9parser.Y" + case 315: +#line 1474 "frame/ds9parser.Y" { fr->createCompositeCmd(Vector((yyvsp[(3) - (8)].vector)), (yyvsp[(5) - (8)].real), localComposite, @@ -4832,34 +4835,34 @@ yyreduce: ;} break; - case 316: -#line 1476 "frame/ds9parser.Y" + case 318: +#line 1486 "frame/ds9parser.Y" {polylist.append(new Vertex((yyvsp[(1) - (1)].vector)));;} break; - case 319: -#line 1484 "frame/ds9parser.Y" + case 321: +#line 1494 "frame/ds9parser.Y" { if (aNum < MAXANNULI) aAnnuli[aNum++] = (yyvsp[(1) - (1)].real); ;} break; - case 322: -#line 1495 "frame/ds9parser.Y" + case 324: +#line 1505 "frame/ds9parser.Y" { if (aAngNum < MAXANGLES) aAngles[aAngNum++] = (yyvsp[(1) - (1)].real); ;} break; - case 325: -#line 1505 "frame/ds9parser.Y" + case 327: +#line 1515 "frame/ds9parser.Y" {aVector[aNum++] = Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real));;} break; - case 326: -#line 1509 "frame/ds9parser.Y" + case 328: +#line 1519 "frame/ds9parser.Y" { // old style annulus switch (aStatus) { @@ -4890,7 +4893,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 4894 "frame/ds9parser.C" +#line 4897 "frame/ds9parser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -5104,7 +5107,7 @@ yyreturn: } -#line 1536 "frame/ds9parser.Y" +#line 1546 "frame/ds9parser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/ds9parser.H b/tksao/frame/ds9parser.H index ecfcf00..9ddff6b 100644 --- a/tksao/frame/ds9parser.H +++ b/tksao/frame/ds9parser.H @@ -42,50 +42,50 @@ INT = 258, REAL = 259, STRING = 260, - COLOR = 261, - ANGDEGREE = 262, - ANGRADIAN = 263, - ARCMINUTE = 264, - ARCSECOND = 265, - PHYCOORD = 266, - IMGCOORD = 267, - SEXSTR = 268, - HMSSTR = 269, - DMSSTR = 270, - EOF_ = 271, - AMPLIFIER_ = 272, - ANNULUS_ = 273, - ARCMIN_ = 274, - ARCSEC_ = 275, - ARROW_ = 276, - B1950_ = 277, - BACKGROUND_ = 278, - BEGIN_ = 279, - BOX_ = 280, - BOXCIRCLE_ = 281, - BPANDA_ = 282, - CALLBACK_ = 283, - CIRCLE_ = 284, - CIRCLE3D_ = 285, - COLOR_ = 286, - COMPASS_ = 287, - COMPOSITE_ = 288, - CPANDA_ = 289, - CROSS_ = 290, - DASH_ = 291, - DASHLIST_ = 292, - DEBUG_ = 293, - DEGREES_ = 294, - DELETE_ = 295, - DETECTOR_ = 296, - DIAMOND_ = 297, - ECLIPTIC_ = 298, - EDIT_ = 299, - ELLIPSE_ = 300, - END_ = 301, - EPANDA_ = 302, - FALSE_ = 303, - FIELD_ = 304, + ANGDEGREE = 261, + ANGRADIAN = 262, + ARCMINUTE = 263, + ARCSECOND = 264, + PHYCOORD = 265, + IMGCOORD = 266, + SEXSTR = 267, + HMSSTR = 268, + DMSSTR = 269, + EOF_ = 270, + AMPLIFIER_ = 271, + ANNULUS_ = 272, + ARCMIN_ = 273, + ARCSEC_ = 274, + ARROW_ = 275, + B1950_ = 276, + BACKGROUND_ = 277, + BEGIN_ = 278, + BOX_ = 279, + BOXCIRCLE_ = 280, + BPANDA_ = 281, + CALLBACK_ = 282, + CIRCLE_ = 283, + CIRCLE3D_ = 284, + COLOR_ = 285, + COMPASS_ = 286, + COMPOSITE_ = 287, + CPANDA_ = 288, + CROSS_ = 289, + DASH_ = 290, + DASHLIST_ = 291, + DEBUG_ = 292, + DEGREES_ = 293, + DELETE_ = 294, + DETECTOR_ = 295, + DIAMOND_ = 296, + ECLIPTIC_ = 297, + EDIT_ = 298, + ELLIPSE_ = 299, + END_ = 300, + EPANDA_ = 301, + FALSE_ = 302, + FIELD_ = 303, + FILL_ = 304, FIXED_ = 305, FK4_ = 306, FK4_NO_E_ = 307, @@ -171,50 +171,50 @@ #define INT 258 #define REAL 259 #define STRING 260 -#define COLOR 261 -#define ANGDEGREE 262 -#define ANGRADIAN 263 -#define ARCMINUTE 264 -#define ARCSECOND 265 -#define PHYCOORD 266 -#define IMGCOORD 267 -#define SEXSTR 268 -#define HMSSTR 269 -#define DMSSTR 270 -#define EOF_ 271 -#define AMPLIFIER_ 272 -#define ANNULUS_ 273 -#define ARCMIN_ 274 -#define ARCSEC_ 275 -#define ARROW_ 276 -#define B1950_ 277 -#define BACKGROUND_ 278 -#define BEGIN_ 279 -#define BOX_ 280 -#define BOXCIRCLE_ 281 -#define BPANDA_ 282 -#define CALLBACK_ 283 -#define CIRCLE_ 284 -#define CIRCLE3D_ 285 -#define COLOR_ 286 -#define COMPASS_ 287 -#define COMPOSITE_ 288 -#define CPANDA_ 289 -#define CROSS_ 290 -#define DASH_ 291 -#define DASHLIST_ 292 -#define DEBUG_ 293 -#define DEGREES_ 294 -#define DELETE_ 295 -#define DETECTOR_ 296 -#define DIAMOND_ 297 -#define ECLIPTIC_ 298 -#define EDIT_ 299 -#define ELLIPSE_ 300 -#define END_ 301 -#define EPANDA_ 302 -#define FALSE_ 303 -#define FIELD_ 304 +#define ANGDEGREE 261 +#define ANGRADIAN 262 +#define ARCMINUTE 263 +#define ARCSECOND 264 +#define PHYCOORD 265 +#define IMGCOORD 266 +#define SEXSTR 267 +#define HMSSTR 268 +#define DMSSTR 269 +#define EOF_ 270 +#define AMPLIFIER_ 271 +#define ANNULUS_ 272 +#define ARCMIN_ 273 +#define ARCSEC_ 274 +#define ARROW_ 275 +#define B1950_ 276 +#define BACKGROUND_ 277 +#define BEGIN_ 278 +#define BOX_ 279 +#define BOXCIRCLE_ 280 +#define BPANDA_ 281 +#define CALLBACK_ 282 +#define CIRCLE_ 283 +#define CIRCLE3D_ 284 +#define COLOR_ 285 +#define COMPASS_ 286 +#define COMPOSITE_ 287 +#define CPANDA_ 288 +#define CROSS_ 289 +#define DASH_ 290 +#define DASHLIST_ 291 +#define DEBUG_ 292 +#define DEGREES_ 293 +#define DELETE_ 294 +#define DETECTOR_ 295 +#define DIAMOND_ 296 +#define ECLIPTIC_ 297 +#define EDIT_ 298 +#define ELLIPSE_ 299 +#define END_ 300 +#define EPANDA_ 301 +#define FALSE_ 302 +#define FIELD_ 303 +#define FILL_ 304 #define FIXED_ 305 #define FK4_ 306 #define FK4_NO_E_ 307 @@ -300,7 +300,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 136 "frame/ds9parser.Y" +#line 139 "frame/ds9parser.Y" { #define MKBUFSIZE 2048 double real; diff --git a/tksao/frame/ds9parser.Y b/tksao/frame/ds9parser.Y index 76d5f66..cd9400f 100644 --- a/tksao/frame/ds9parser.Y +++ b/tksao/frame/ds9parser.Y @@ -59,6 +59,9 @@ static char localText[80]; static char localComment[80]; +static int globalFill; +static int localFill; + static int globalLine1; static int localLine1; static int globalLine2; @@ -211,6 +214,7 @@ static Coord::SkyFrame checkWCSSky(); %token EPANDA_ %token FALSE_ %token FIELD_ +%token FILL_ %token FIXED_ %token FK4_ %token FK4_NO_E_ @@ -653,6 +657,10 @@ globalProperty : property '=' yesno globalPoint = localPoint = $3; globalPointSize = localPointSize = $4; } + | FILL_ '=' INT + { + globalFill = localFill = $3; + } | LINE_ '=' INT INT { globalLine1 = localLine1 = $3; @@ -783,6 +791,7 @@ initGlobal:{ strcpy(globalText,""); // unique properties + globalFill = 0; globalLine1 = 0; globalLine2 = 0; globalVector = 1; @@ -830,6 +839,7 @@ localProperty : property '=' yesno {setProps(&localProps,$1,$3);} | POINT_ '=' pointShape {localPoint = $3;} | POINT_ '=' pointShape INT {localPoint = $3; localPointSize = $4;} + | FILL_ '=' INT {localFill=$3;} | LINE_ '=' INT INT {localLine1=$3; localLine2=$4;} | VECTOR_ '=' INT {localVector=$3;} | COMPOSITE_ '=' INT {localComposite=$3;} @@ -974,6 +984,7 @@ initLocal : { cblist.deleteAll(); // unique properties + localFill = globalFill; localLine1 = globalLine1; localLine2 = globalLine2; localVector = globalVector; @@ -1064,7 +1075,7 @@ nonshape : VECTOR_ bp coord sp value sp angle ep conjunction nonshapeComment { // backward compatibility fr->createCircleCmd(Vector($3), - $5, + $5, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } @@ -1080,7 +1091,7 @@ nonshape : VECTOR_ bp coord sp value sp angle ep conjunction nonshapeComment shape : CIRCLE_ bp coord sp value ep conjunction shapeComment { fr->createCircleCmd(Vector($3), - $5, + $5, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } @@ -1088,7 +1099,7 @@ shape : CIRCLE_ bp coord sp value ep conjunction shapeComment { // backwards compatibility fr->createCircleCmd(Vector($3), - $5, + $5, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } @@ -1111,7 +1122,7 @@ shape : CIRCLE_ bp coord sp value ep conjunction shapeComment fr->createEllipseCmd(Vector($3), Vector($5), - $7, + $7, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } @@ -1134,7 +1145,7 @@ shape : CIRCLE_ bp coord sp value ep conjunction shapeComment fr->createBoxCmd(Vector($3), Vector($5), - $7, + $7, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } @@ -1143,14 +1154,14 @@ shape : CIRCLE_ bp coord sp value ep conjunction shapeComment // backwards compatibility fr->createBoxCmd(Vector($3), Vector($5), - $7, + $7, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } | POLYGON_ {polylist.deleteAll();} bp polyNodes ep conjunction shapeComment { - fr->createPolygonCmd(polylist, + fr->createPolygonCmd(polylist, localFill, localColor,localDash,localWidth,localFont, localText,localProps,localComment,taglist,cblist); } diff --git a/tksao/frame/ellipse.C b/tksao/frame/ellipse.C index 216ba06..e67b550 100644 --- a/tksao/frame/ellipse.C +++ b/tksao/frame/ellipse.C @@ -7,8 +7,10 @@ #include "ellipse.h" #include "fitsimage.h" -Ellipse::Ellipse(Base* p, const Vector& ctr, const Vector& r, double ang) - : BaseEllipse(p, ctr, ang) +Ellipse::Ellipse(const Ellipse& a) : BaseEllipse(a), BaseFill(a) {} + +Ellipse::Ellipse(Base* p, const Vector& ctr, const Vector& r, double ang, int fill) + : BaseEllipse(p, ctr, ang), BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[1]; @@ -21,12 +23,13 @@ Ellipse::Ellipse(Base* p, const Vector& ctr, const Vector& r, double ang) } Ellipse::Ellipse(Base* p, const Vector& ctr, - const Vector& r, double ang, + const Vector& r, double ang, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb) - : BaseEllipse(p, ctr, ang, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb) + : BaseEllipse(p, ctr, ang, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb), + BaseFill(fill) { numAnnuli_ = 1; annuli_ = new Vector[1]; @@ -38,8 +41,6 @@ Ellipse::Ellipse(Base* p, const Vector& ctr, updateBBox(); } -Ellipse::Ellipse(const Ellipse& a) : BaseEllipse(a) {} - void Ellipse::edit(const Vector& v, int h) { Matrix mm = bckMatrix(); @@ -218,6 +219,26 @@ void Ellipse::list(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, listPost(str, conj, strip); } +void Ellipse::listPost(ostream& str, int conj, int strip) +{ + // no props for semicolons + if (!strip) { + if (conj) + str << " ||"; + + if (fill_) + str << " # fill=" << fill_; + + listProperties(str, !fill_); + } + else { + if (conj) + str << "||"; + else + str << ';'; + } +} + void Ellipse::listNonCel(FitsImage* ptr, ostream& str, Coord::CoordSystem sys) { Vector vv = ptr->mapFromRef(center,sys); @@ -238,6 +259,8 @@ void Ellipse::listXML(ostream& str, Coord::CoordSystem sys, XMLRowCenter(ptr,sys,sky,format); XMLRowRadius(ptr,sys,annuli_[0]); XMLRowAng(sys,sky); + if (fill_) + XMLRow(XMLPARAM,fill_); XMLRowProps(ptr,sys); XMLRowEnd(str); diff --git a/tksao/frame/ellipse.h b/tksao/frame/ellipse.h index 3c0ff8d..5a81c2e 100644 --- a/tksao/frame/ellipse.h +++ b/tksao/frame/ellipse.h @@ -6,15 +6,16 @@ #define __ellipse_h__ #include "baseellipse.h" +#include "basefill.h" -class Ellipse : public BaseEllipse { +class Ellipse : public BaseEllipse, public BaseFill { protected: void listNonCel(FitsImage*, ostream&, Coord::CoordSystem); public: - Ellipse(Base* p, const Vector& ctr, const Vector& r, double ang); + Ellipse(Base* p, const Vector& ctr, const Vector& r, double ang, int fill); Ellipse(Base* p, const Vector& ctr, - const Vector& r, double ang, + const Vector& r, double ang, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, @@ -30,6 +31,7 @@ public: void analysisStats(Coord::CoordSystem, Coord::SkyFrame sky); void list(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int, int); + virtual void listPost(ostream&, int, int); void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); virtual void listCiao(ostream&, Coord::CoordSystem, int); virtual void listSAOtng(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int); diff --git a/tksao/frame/frmarker.C b/tksao/frame/frmarker.C index fb18b79..7ddb2f7 100644 --- a/tksao/frame/frmarker.C +++ b/tksao/frame/frmarker.C @@ -268,22 +268,21 @@ void Base::analysisMarkersSelectCmd(const char* which, const Vector& cc) // Basic Regions void Base::createCircleCmd(const Vector& center, - double radius, + double radius, int fill, const char* color, int* dash, int width, const char* font, const char* text, unsigned short prop, const char* comment, const List<Tag>& tag, const List<CallBack>& cb) { - createMarker(new Circle(this, center, - radius, + createMarker(new Circle(this, center, radius, fill, color, dash, width, font, text, prop, comment, tag, cb)); } void Base::createEllipseCmd(const Vector& center, const Vector& radius, - double angle, + double angle, int fill, const char* color, int* dash, int width, const char* font, const char* text, unsigned short prop, @@ -291,51 +290,46 @@ void Base::createEllipseCmd(const Vector& center, const List<Tag>& tag,const List<CallBack>& cb) { - createMarker(new Ellipse(this,center, - radius, - angle, + createMarker(new Ellipse(this,center, radius, angle, fill, color, dash, width, font, text, prop, comment, tag, cb)); } void Base::createBoxCmd(const Vector& center, const Vector& size, - double angle, + double angle, int fill, const char* color, int* dash, int width, const char* font, const char* text, unsigned short prop, const char* comment, const List<Tag>& tag, const List<CallBack>& cb) { - createMarker(new Box(this, center, - size, - angle, + createMarker(new Box(this, center, size, angle, fill, color, dash, width, font, text, prop, comment, tag, cb)); } void Base::createPolygonCmd(const Vector& center, - const Vector& bb, + const Vector& bb, int fill, const char* color, int* dash, int width, const char* font, const char* text, unsigned short prop, const char* comment, const List<Tag>& tag, const List<CallBack>& cb) { - createMarker(new Polygon(this, center, - bb, + createMarker(new Polygon(this, center, bb, fill, color, dash, width, font, text, prop, comment, tag, cb)); } -void Base::createPolygonCmd(const List<Vertex>& list, +void Base::createPolygonCmd(const List<Vertex>& list, int fill, const char* color, int* dash, int width, const char* font, const char* text, unsigned short prop, const char* comment, const List<Tag>& tag, const List<CallBack>& cb) { - createMarker(new Polygon(this, list, + createMarker(new Polygon(this, list, fill, color, dash, width, font, text, prop, comment, tag, cb)); } @@ -358,6 +352,7 @@ void Base::contourCreatePolygon(List<ContourLevel>& cl) dl[0] = 8; dl[1] = 3; char font[] = "helvetica 10 normal roman"; + int fill =0; char text[] = ""; unsigned short defaultProps = Marker::SELECT | Marker::HIGHLITE | Marker::EDIT | Marker::MOVE | Marker::ROTATE | @@ -379,7 +374,7 @@ void Base::contourCreatePolygon(List<ContourLevel>& cl) while (cc.current()) { List<Vertex>& vv = cc.current()->lvertex(); if (!vv.isEmpty()) - createMarker(new Polygon(this, vv, color, dl, width, font, + createMarker(new Polygon(this, vv, fill, color, dl, width, font, text, prop, NULL, tag, cb)); cc.next(); } @@ -1194,6 +1189,23 @@ void Base::getMarkerAnnulusRadiusCmd(int id, Coord::CoordSystem sys, Tcl_AppendResult(interp, "", NULL); } +void Base::getMarkerBoxFillCmd(int id) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (((Box*)mm)->getFill()) + Tcl_AppendResult(interp, "1", NULL); + else + Tcl_AppendResult(interp, "0", NULL); + return; + } + mm=mm->next(); + } + + Tcl_AppendResult(interp, "", NULL); +} + void Base::getMarkerBoxAnnulusRadiusCmd(int id, Coord::CoordSystem sys, Coord::SkyDist dist) { @@ -1319,6 +1331,23 @@ void Base::getMarkerCenterCmd(int id, Coord::CoordSystem sys, } } +void Base::getMarkerCircleFillCmd(int id) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (((Circle*)mm)->getFill()) + Tcl_AppendResult(interp, "1", NULL); + else + Tcl_AppendResult(interp, "0", NULL); + return; + } + mm=mm->next(); + } + + Tcl_AppendResult(interp, "", NULL); +} + void Base::getMarkerCircleRadiusCmd(int id, Coord::CoordSystem sys, Coord::SkyDist dist) { @@ -1545,6 +1574,23 @@ void Base::getMarkerCompositeCmd(int id) } } +void Base::getMarkerEllipseFillCmd(int id) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (((Ellipse*)mm)->getFill()) + Tcl_AppendResult(interp, "1", NULL); + else + Tcl_AppendResult(interp, "0", NULL); + return; + } + mm=mm->next(); + } + + Tcl_AppendResult(interp, "", NULL); +} + void Base::getMarkerEllipseRadiusCmd(int id, Coord::CoordSystem sys, Coord::SkyDist dist) { @@ -1898,6 +1944,23 @@ void Base::getMarkerPointSizeCmd(int id) Tcl_AppendResult(interp, "", NULL); } +void Base::getMarkerPolygonFillCmd(int id) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (((Polygon*)mm)->getFill()) + Tcl_AppendResult(interp, "1", NULL); + else + Tcl_AppendResult(interp, "0", NULL); + return; + } + mm=mm->next(); + } + + Tcl_AppendResult(interp, "", NULL); +} + void Base::getMarkerPolygonSegmentCmd(const Vector& v) { Marker* mm=markers->head(); @@ -2813,6 +2876,23 @@ void Base::markerBackCmd(int id) } } +void Base::markerBoxFillCmd(int id, int ff) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (mm->canEdit()) { + ((Box*)(mm))->fill(ff); + update(PIXMAP, mm->getAllBBox()); + } + return; + } + mm=mm->next(); + } + + result = TCL_ERROR; +} + void Base::markerBoxAnnulusRadiusCmd(int id, const Vector& inner, const Vector& outer, int num, Coord::InternalSystem sys) @@ -3230,6 +3310,23 @@ void Base::markerCentroidIterationCmd(int iter) centroidIteration = iter; } +void Base::markerCircleFillCmd(int id, int ff) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (mm->canEdit()) { + ((Circle*)(mm))->fill(ff); + update(PIXMAP, mm->getAllBBox()); + } + return; + } + mm=mm->next(); + } + + result = TCL_ERROR; +} + void Base::markerCircleRadiusCmd(int id, double radius, Coord::InternalSystem sys) { @@ -3929,6 +4026,23 @@ void Base::markerEditEndCmd() update(PIXMAP); } +void Base::markerEllipseFillCmd(int id, int ff) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (mm->canEdit()) { + ((Ellipse*)(mm))->fill(ff); + update(PIXMAP, mm->getAllBBox()); + } + return; + } + mm=mm->next(); + } + + result = TCL_ERROR; +} + void Base::markerEllipseRadiusCmd(int id, const Vector& radius, Coord::InternalSystem sys) { @@ -4876,7 +4990,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, if (!strncmp(s2, "CIRCLE", 6) && r) { Vector rr(r->value(ptr),0); createCircleCmd(keyContext->fits->mapToRef(center, Coord::PHYSICAL), - keyContext->fits->mapLenToRef(rr[0], Coord::PHYSICAL), + keyContext->fits->mapLenToRef(rr[0], Coord::PHYSICAL), 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -4895,7 +5009,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, Vector rr(r->value(ptr,0),r->value(ptr,1)); createBoxCmd(keyContext->fits->mapToRef(center, Coord::PHYSICAL), keyContext->fits->mapLenToRef(rr, Coord::PHYSICAL), - degToRad(ang->value(ptr)), + degToRad(ang->value(ptr)), 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -4904,7 +5018,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, Vector rr(r->value(ptr,0),r->value(ptr,1)); createBoxCmd(keyContext->fits->mapToRef(center, Coord::PHYSICAL), keyContext->fits->mapLenToRef(rr, Coord::PHYSICAL), - 0, + 0, 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -4912,9 +5026,8 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, Vector rr(r->value(ptr,0),r->value(ptr,1)); createBoxCmd(keyContext->fits->mapToRef(center, Coord::PHYSICAL), keyContext->fits->mapLenToRef(rr, Coord::PHYSICAL), - degToRad(ang->value(ptr)), + degToRad(ang->value(ptr)), 0, color, dash, width, font, text, props, NULL, taglist,cblist); - } else if (!strncmp(s2, "RECTAN", 6)) { Vector v1(center); @@ -4925,7 +5038,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, createBoxCmd(keyContext->fits->mapToRef(c,Coord::PHYSICAL), keyContext->fits->mapLenToRef(d,Coord::PHYSICAL), - 0, + 0, 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -4938,7 +5051,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, createBoxCmd(keyContext->fits->mapToRef(c,Coord::PHYSICAL), keyContext->fits->mapLenToRef(d,Coord::PHYSICAL), - degToRad(ang->value(ptr)), + degToRad(ang->value(ptr)), 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -4946,7 +5059,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, Vector rr(r->value(ptr,0),r->value(ptr,1)); createEllipseCmd(keyContext->fits->mapToRef(center, Coord::PHYSICAL), keyContext->fits->mapLenToRef(rr, Coord::PHYSICAL), - degToRad(ang->value(ptr)), + degToRad(ang->value(ptr)), 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -5005,7 +5118,7 @@ void Base::markerLoadFitsCmd(const char* fn, const char* color, } if (!list.isEmpty()) - createPolygonCmd(list, color, dash, width, font, text, props, NULL, + createPolygonCmd(list, 0, color, dash, width, font, text, props, NULL, taglist,cblist); } @@ -5396,6 +5509,23 @@ void Base::markerPointSizeCmd(int id, int size) result = TCL_ERROR; } +void Base::markerPolygonFillCmd(int id, int ff) +{ + Marker* mm=markers->head(); + while (mm) { + if (mm->getId() == id) { + if (mm->canEdit()) { + ((Polygon*)(mm))->fill(ff); + update(PIXMAP, mm->getAllBBox()); + } + return; + } + mm=mm->next(); + } + + result = TCL_ERROR; +} + void Base::markerPolygonCreateVertexCmd(int id, int seg, const Vector& v) { Marker* mm=markers->head(); diff --git a/tksao/frame/frmarkerxml.C b/tksao/frame/frmarkerxml.C index e8794a2..d5bf733 100644 --- a/tksao/frame/frmarkerxml.C +++ b/tksao/frame/frmarkerxml.C @@ -555,52 +555,65 @@ void Base::xmlParseTR(char** cols, int* id, char** unit, char** ref, // Basic Regions if (STRCMP(shape, "circle", 6)) { // will also capture circle3d + int fill =0; + if (param) + fill = atoi(param); createCircleCmd(xmlPoint(ptr, x, y, sys, sky, format), - ptr->mapLenToRef(atof(r), rsys, rdist), + ptr->mapLenToRef(atof(r), rsys, rdist), fill, color, dash, width, font, text, props, comment, taglist, cblist); } else if (STRCMP(shape, "ellipse", 7)) { + int fill =0; + if (param) + fill = atoi(param); createEllipseCmd(xmlPoint(ptr, x, y, sys, sky, format), - ptr->mapLenToRef(Vector(atof(r),atof(r2)), - rsys, rdist), - xmlAngle(ang, angsign, angoffset, angformat, - sys, sky), + ptr->mapLenToRef(Vector(atof(r),atof(r2)), rsys, rdist), + xmlAngle(ang, angsign, angoffset, angformat, sys, sky), + fill, color, dash, width, font, text, props, comment, taglist, cblist); } else if (STRCMP(shape, "box", 3) || STRCMP(shape, "rotbox", 6)) { + int fill =0; + if (param) + fill = atoi(param); createBoxCmd(xmlPoint(ptr, x, y, sys, sky, format), - ptr->mapLenToRef(Vector(atof(r),atof(r2)), - rsys, rdist), - xmlAngle(ang, angsign, angoffset, angformat, - sys, sky), + ptr->mapLenToRef(Vector(atof(r),atof(r2)), rsys, rdist), + xmlAngle(ang, angsign, angoffset, angformat, sys, sky), + fill, color, dash, width, font, text, props, comment, taglist, cblist); } else if (STRCMP(shape, "rectang", 6) || STRCMP(shape, "rotrec", 6)) { + int fill =0; + if (param) + fill = atoi(param); Vector v1 = xmlPoint(ptr, xv, yv, vsys, vsky, vformat, 0); Vector v2 = xmlPoint(ptr, xv, yv, vsys, vsky, vformat, 1); Vector d = v2-v1; Vector c = d/2 + v1; createBoxCmd(c,d, - xmlAngle(ang, angsign, angoffset, angformat, - sys, sky), + xmlAngle(ang, angsign, angoffset, angformat, sys, sky), + fill, color, dash, width, font, text, props, comment, taglist, cblist); } else if (STRCMP(shape, "polygon", 7)) { + int fill =0; + if (param) + fill = atoi(param); List<Vertex>* list = xmlVertex(ptr, xv, yv, vsys, vsky, vformat); - createPolygonCmd(*list, + createPolygonCmd(*list, fill, color, dash, width, font, text, props, comment, taglist, cblist); } else if (STRCMP(shape, "line", 4)) { int arrow1 =1; int arrow2 =1; - if (!param) + if (param) arrow1 = atoi(param); - if (!param2) + if (param2) arrow2 = atoi(param2); createLineCmd(xmlPoint(ptr, xv, yv, vsys, vsky, vformat, 0), xmlPoint(ptr, xv, yv, vsys, vsky, vformat, 1), @@ -610,7 +623,7 @@ void Base::xmlParseTR(char** cols, int* id, char** unit, char** ref, } else if (STRCMP(shape, "vector", 6)) { int arrow =1; - if (!param) + if (param) arrow = atoi(param); createVectCmd(xmlPoint(ptr, x, y, sys, sky, format), ptr->mapLenToRef(atof(r), rsys, rdist), @@ -635,7 +648,7 @@ void Base::xmlParseTR(char** cols, int* id, char** unit, char** ref, } else if (STRCMP(shape, "text", 4)) { int rotate = 1; - if (!param) + if (param) rotate = atoi(param); createTextCmd(xmlPoint(ptr, x, y, sys, sky, format), xmlAngle(ang, angsign, angoffset, angformat, @@ -699,10 +712,10 @@ void Base::xmlParseTR(char** cols, int* id, char** unit, char** ref, if (!param3) param3 = (char*)param3def; int arrow1 =1; - if (!param4) + if (param4) arrow1 = atoi(param4); int arrow2 =1; - if (!param5) + if (param5) arrow2 = atoi(param5); createCompassCmd(xmlPoint(ptr, x, y, sys, sky, format), @@ -804,8 +817,8 @@ int Base::xmlCount(const char* col) } Vector Base::xmlPoint(FitsImage* ptr, const char* xstr, const char* ystr, - Coord::CoordSystem sys, Coord::SkyFrame sky, Coord::SkyFormat format, - int which) + Coord::CoordSystem sys, Coord::SkyFrame sky, + Coord::SkyFormat format, int which) { if (!xstr || !ystr) return Vector(); diff --git a/tksao/frame/lex.C b/tksao/frame/lex.C index 4bd1829..a7c474d 100644 --- a/tksao/frame/lex.C +++ b/tksao/frame/lex.C @@ -324,8 +324,8 @@ int yyFlexLexer::yywrap() { return 1; } *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 351 -#define YY_END_OF_BUFFER 352 +#define YY_NUM_RULES 352 +#define YY_END_OF_BUFFER 353 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -333,147 +333,147 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1268] = +static yyconst flex_int16_t yy_accept[1269] = { 0, - 0, 0, 352, 350, 349, 351, 350, 350, 350, 350, - 350, 331, 331, 331, 350, 350, 350, 350, 350, 350, - 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, - 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, - 350, 349, 348, 0, 348, 345, 0, 348, 346, 348, - 331, 333, 332, 331, 348, 335, 348, 348, 348, 271, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 30, 348, 348, 348, - 348, 348, 43, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 128, 348, 348, 348, 348, - 348, 141, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 188, 348, 348, 348, 348, 195, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 275, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 326, 348, 348, 348, 348, 0, 348, 347, - - 345, 346, 333, 332, 337, 336, 348, 335, 348, 348, - 348, 332, 348, 334, 348, 2, 348, 6, 7, 348, - 348, 348, 348, 348, 348, 348, 348, 18, 348, 20, - 348, 348, 348, 348, 348, 348, 348, 348, 31, 33, - 348, 348, 348, 37, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 78, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 92, 93, - 348, 348, 348, 348, 99, 348, 348, 348, 348, 348, - 105, 348, 348, 348, 110, 348, 114, 116, 348, 348, - - 348, 348, 348, 348, 123, 348, 348, 348, 348, 130, - 348, 348, 348, 348, 348, 348, 348, 348, 142, 348, - 348, 348, 348, 348, 348, 348, 152, 348, 348, 348, - 348, 348, 348, 348, 348, 164, 348, 348, 168, 348, - 348, 348, 348, 348, 348, 175, 348, 348, 348, 348, - 348, 348, 183, 348, 348, 186, 348, 348, 190, 348, - 348, 348, 194, 348, 348, 348, 199, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 214, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 229, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 243, - - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 263, 348, 348, 348, - 267, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 287, 348, 348, - 348, 348, 294, 348, 348, 348, 325, 327, 348, 348, - 348, 347, 338, 348, 333, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 19, 348, 22, 348, 348, 25, 27, 28, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 51, 348, 348, 54, 79, 348, - - 60, 348, 348, 348, 348, 348, 69, 348, 348, 348, - 71, 348, 76, 348, 80, 82, 348, 348, 348, 348, - 348, 348, 348, 348, 98, 348, 348, 100, 348, 348, - 348, 348, 348, 348, 108, 348, 111, 348, 348, 117, - 348, 119, 348, 348, 348, 348, 348, 126, 127, 348, - 131, 348, 348, 135, 348, 348, 348, 140, 348, 348, - 145, 146, 348, 149, 348, 348, 348, 348, 348, 348, - 159, 161, 348, 162, 348, 348, 348, 169, 171, 348, - 348, 348, 348, 176, 178, 348, 348, 181, 182, 348, - 348, 187, 189, 191, 348, 348, 196, 348, 348, 348, - - 348, 348, 348, 204, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 219, 348, 348, 348, 348, - 348, 348, 348, 348, 230, 348, 348, 348, 348, 348, - 236, 348, 238, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 249, 250, 251, 348, 348, 348, 348, 348, - 258, 348, 348, 348, 348, 348, 348, 348, 269, 348, - 348, 348, 348, 348, 278, 279, 280, 348, 348, 348, - 348, 285, 348, 348, 348, 348, 288, 293, 321, 295, + 0, 0, 353, 351, 350, 352, 351, 351, 351, 351, + 351, 332, 332, 332, 351, 351, 351, 351, 351, 351, + 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, + 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, + 351, 350, 349, 0, 349, 346, 0, 349, 347, 349, + 332, 334, 333, 332, 349, 336, 349, 349, 349, 272, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 30, 349, 349, 349, + 349, 349, 43, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 129, 349, 349, 349, 349, + 349, 142, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 189, 349, 349, 349, 349, 196, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 276, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 327, 349, 349, 349, 349, 0, 349, 348, + + 346, 347, 334, 333, 338, 337, 349, 336, 349, 349, + 349, 333, 349, 335, 349, 2, 349, 6, 7, 349, + 349, 349, 349, 349, 349, 349, 349, 18, 349, 20, + 349, 349, 349, 349, 349, 349, 349, 349, 31, 33, + 349, 349, 349, 37, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 78, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 92, 93, + 349, 349, 349, 349, 99, 349, 349, 349, 349, 349, + 105, 349, 349, 349, 111, 349, 115, 117, 349, 349, + + 349, 349, 349, 349, 124, 349, 349, 349, 349, 131, + 349, 349, 349, 349, 349, 349, 349, 349, 143, 349, + 349, 349, 349, 349, 349, 349, 153, 349, 349, 349, + 349, 349, 349, 349, 349, 165, 349, 349, 169, 349, + 349, 349, 349, 349, 349, 176, 349, 349, 349, 349, + 349, 349, 184, 349, 349, 187, 349, 349, 191, 349, + 349, 349, 195, 349, 349, 349, 200, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 215, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 230, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 244, + + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 264, 349, 349, 349, + 268, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 288, 349, 349, + 349, 349, 295, 349, 349, 349, 326, 328, 349, 349, + 349, 348, 339, 349, 334, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 19, 349, 22, 349, 349, 25, 27, 28, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 51, 349, 349, 54, 79, 349, + + 60, 349, 349, 349, 349, 349, 69, 349, 349, 349, + 71, 349, 76, 349, 80, 82, 349, 349, 349, 349, + 349, 349, 349, 349, 98, 349, 349, 100, 349, 349, + 349, 349, 349, 349, 108, 109, 349, 112, 349, 349, + 118, 349, 120, 349, 349, 349, 349, 349, 127, 128, + 349, 132, 349, 349, 136, 349, 349, 349, 141, 349, + 349, 146, 147, 349, 150, 349, 349, 349, 349, 349, + 349, 160, 162, 349, 163, 349, 349, 349, 170, 172, + 349, 349, 349, 349, 177, 179, 349, 349, 182, 183, + 349, 349, 188, 190, 192, 349, 349, 197, 349, 349, + + 349, 349, 349, 349, 205, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 220, 349, 349, 349, + 349, 349, 349, 349, 349, 231, 349, 349, 349, 349, + 349, 237, 349, 239, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 250, 251, 252, 349, 349, 349, 349, + 349, 259, 349, 349, 349, 349, 349, 349, 349, 270, + 349, 349, 349, 349, 349, 279, 280, 281, 349, 349, + 349, 349, 286, 349, 349, 349, 349, 289, 294, 322, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 348, 348, 348, 328, 330, - 348, 348, 339, 348, 348, 348, 348, 1, 5, 3, - 348, 348, 10, 348, 348, 348, 348, 15, 16, 17, - 348, 348, 24, 348, 29, 348, 348, 35, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 53, 55, 348, 348, 348, 348, 348, 348, - 348, 348, 70, 348, 348, 72, 348, 348, 348, 348, - 85, 348, 348, 348, 89, 348, 348, 348, 348, 348, - 348, 348, 348, 104, 348, 107, 348, 112, 113, 348, - 118, 348, 348, 348, 348, 348, 348, 348, 348, 348, - - 348, 348, 348, 348, 143, 348, 348, 348, 348, 151, - 348, 154, 348, 156, 348, 348, 163, 348, 348, 348, - 167, 348, 348, 348, 348, 348, 348, 348, 185, 348, - 348, 348, 348, 200, 348, 348, 203, 205, 348, 207, - 348, 348, 210, 348, 348, 348, 215, 348, 348, 348, - 221, 348, 348, 348, 348, 348, 227, 348, 348, 232, - 348, 348, 348, 237, 348, 240, 348, 348, 348, 245, - 348, 247, 248, 252, 253, 348, 348, 348, 348, 348, - 261, 348, 348, 348, 266, 348, 273, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 286, 348, 348, 348, - - 348, 322, 323, 324, 348, 340, 339, 348, 348, 343, - 348, 348, 341, 348, 348, 348, 348, 12, 13, 14, - 348, 348, 348, 348, 34, 36, 348, 39, 348, 41, - 42, 348, 45, 348, 348, 48, 348, 348, 52, 348, - 348, 348, 61, 348, 348, 348, 348, 348, 348, 348, - 73, 74, 348, 77, 348, 348, 348, 348, 348, 88, - 348, 348, 348, 348, 348, 101, 348, 348, 106, 109, - 348, 348, 348, 348, 124, 348, 129, 132, 133, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 155, - 160, 157, 165, 348, 170, 348, 173, 174, 348, 179, - - 180, 184, 192, 193, 197, 198, 201, 202, 348, 208, - 209, 348, 348, 348, 348, 348, 348, 348, 222, 223, - 224, 348, 348, 348, 231, 233, 348, 235, 348, 348, - 242, 348, 246, 254, 255, 257, 348, 348, 262, 348, - 265, 348, 348, 348, 276, 277, 348, 348, 281, 348, - 284, 289, 348, 291, 348, 329, 344, 342, 4, 348, - 348, 11, 21, 23, 348, 348, 348, 348, 348, 46, - 348, 348, 50, 348, 348, 348, 348, 62, 63, 348, - 348, 66, 348, 348, 348, 348, 83, 84, 87, 86, - 348, 91, 348, 348, 96, 102, 348, 348, 348, 348, - - 348, 348, 348, 348, 137, 348, 348, 144, 147, 150, - 348, 153, 348, 348, 172, 348, 348, 211, 212, 348, - 348, 348, 348, 348, 225, 348, 348, 348, 348, 241, - 348, 348, 259, 260, 348, 348, 270, 348, 348, 348, - 348, 290, 348, 348, 9, 348, 348, 348, 348, 44, - 348, 49, 56, 57, 348, 348, 348, 65, 67, 348, - 348, 81, 90, 94, 348, 348, 348, 115, 120, 121, - 122, 125, 348, 136, 348, 348, 348, 348, 348, 177, - 206, 348, 216, 348, 218, 348, 226, 348, 234, 348, - 348, 256, 348, 268, 348, 348, 348, 283, 292, 8, - - 348, 32, 348, 40, 348, 348, 348, 64, 348, 75, - 95, 348, 348, 348, 138, 348, 148, 348, 166, 348, - 348, 348, 348, 348, 348, 348, 272, 348, 348, 26, - 38, 47, 58, 59, 348, 348, 103, 348, 139, 348, - 213, 217, 348, 228, 239, 348, 348, 348, 282, 68, - 348, 348, 348, 220, 244, 348, 348, 348, 348, 158, - 348, 274, 348, 134, 264, 97, 0 + 316, 317, 318, 319, 320, 321, 349, 349, 349, 329, + 331, 349, 349, 340, 349, 349, 349, 349, 1, 5, + 3, 349, 349, 10, 349, 349, 349, 349, 15, 16, + 17, 349, 349, 24, 349, 29, 349, 349, 35, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 53, 55, 349, 349, 349, 349, 349, + 349, 349, 349, 70, 349, 349, 72, 349, 349, 349, + 349, 85, 349, 349, 349, 89, 349, 349, 349, 349, + 349, 349, 349, 349, 104, 349, 107, 349, 113, 114, + 349, 119, 349, 349, 349, 349, 349, 349, 349, 349, + + 349, 349, 349, 349, 349, 144, 349, 349, 349, 349, + 152, 349, 155, 349, 157, 349, 349, 164, 349, 349, + 349, 168, 349, 349, 349, 349, 349, 349, 349, 186, + 349, 349, 349, 349, 201, 349, 349, 204, 206, 349, + 208, 349, 349, 211, 349, 349, 349, 216, 349, 349, + 349, 222, 349, 349, 349, 349, 349, 228, 349, 349, + 233, 349, 349, 349, 238, 349, 241, 349, 349, 349, + 246, 349, 248, 249, 253, 254, 349, 349, 349, 349, + 349, 262, 349, 349, 349, 267, 349, 274, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 287, 349, 349, + + 349, 349, 323, 324, 325, 349, 341, 340, 349, 349, + 344, 349, 349, 342, 349, 349, 349, 349, 12, 13, + 14, 349, 349, 349, 349, 34, 36, 349, 39, 349, + 41, 42, 349, 45, 349, 349, 48, 349, 349, 52, + 349, 349, 349, 61, 349, 349, 349, 349, 349, 349, + 349, 73, 74, 349, 77, 349, 349, 349, 349, 349, + 88, 349, 349, 349, 349, 349, 101, 349, 349, 106, + 110, 349, 349, 349, 349, 125, 349, 130, 133, 134, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 156, 161, 158, 166, 349, 171, 349, 174, 175, 349, + + 180, 181, 185, 193, 194, 198, 199, 202, 203, 349, + 209, 210, 349, 349, 349, 349, 349, 349, 349, 223, + 224, 225, 349, 349, 349, 232, 234, 349, 236, 349, + 349, 243, 349, 247, 255, 256, 258, 349, 349, 263, + 349, 266, 349, 349, 349, 277, 278, 349, 349, 282, + 349, 285, 290, 349, 292, 349, 330, 345, 343, 4, + 349, 349, 11, 21, 23, 349, 349, 349, 349, 349, + 46, 349, 349, 50, 349, 349, 349, 349, 62, 63, + 349, 349, 66, 349, 349, 349, 349, 83, 84, 87, + 86, 349, 91, 349, 349, 96, 102, 349, 349, 349, + + 349, 349, 349, 349, 349, 138, 349, 349, 145, 148, + 151, 349, 154, 349, 349, 173, 349, 349, 212, 213, + 349, 349, 349, 349, 349, 226, 349, 349, 349, 349, + 242, 349, 349, 260, 261, 349, 349, 271, 349, 349, + 349, 349, 291, 349, 349, 9, 349, 349, 349, 349, + 44, 349, 49, 56, 57, 349, 349, 349, 65, 67, + 349, 349, 81, 90, 94, 349, 349, 349, 116, 121, + 122, 123, 126, 349, 137, 349, 349, 349, 349, 349, + 178, 207, 349, 217, 349, 219, 349, 227, 349, 235, + 349, 349, 257, 349, 269, 349, 349, 349, 284, 293, + + 8, 349, 32, 349, 40, 349, 349, 349, 64, 349, + 75, 95, 349, 349, 349, 139, 349, 149, 349, 167, + 349, 349, 349, 349, 349, 349, 349, 273, 349, 349, + 26, 38, 47, 58, 59, 349, 349, 103, 349, 140, + 349, 214, 218, 349, 229, 240, 349, 349, 349, 283, + 68, 349, 349, 349, 221, 245, 349, 349, 349, 349, + 159, 349, 275, 349, 135, 265, 97, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -520,9 +520,9 @@ static yyconst flex_int32_t yy_meta[73] = 2, 2 } ; -static yyconst flex_int16_t yy_base[1275] = +static yyconst flex_int16_t yy_base[1276] = { 0, - 0, 0, 433, 2920, 429, 2920, 0, 72, 77, 75, + 0, 0, 433, 2937, 429, 2937, 0, 72, 77, 75, 83, 92, 69, 90, 141, 201, 250, 94, 295, 345, 146, 97, 390, 418, 96, 196, 295, 194, 300, 436, 83, 350, 483, 534, 91, 143, 243, 136, 103, 96, @@ -544,7 +544,7 @@ static yyconst flex_int16_t yy_base[1275] = 947, 992, 965, 970, 980, 988, 997, 987, 989, 993, 1006, 1000, 0, 994, 1013, 1000, 1013, 269, 1060, 0, - 2920, 2920, 1123, 1043, 0, 0, 1060, 0, 1070, 1084, + 2937, 2937, 1123, 1043, 0, 0, 1060, 0, 1070, 1084, 723, 1096, 1111, 0, 1004, 0, 1053, 1057, 0, 1063, 1073, 1087, 1079, 1107, 1116, 1129, 1099, 0, 1116, 0, 1114, 1114, 1121, 324, 1125, 1132, 1116, 1133, 1138, 0, @@ -553,262 +553,262 @@ static yyconst flex_int16_t yy_base[1275] = 1171, 1170, 1183, 1184, 1198, 1184, 1196, 1185, 0, 1208, 1216, 1207, 1230, 1214, 1228, 1214, 1230, 1223, 0, 0, 1228, 1218, 1217, 1231, 0, 1232, 1230, 1236, 1245, 1228, - 0, 1228, 1230, 1248, 1231, 1246, 330, 0, 1232, 1241, - - 1244, 1266, 1279, 1264, 0, 1282, 1271, 1281, 1282, 0, - 1284, 1282, 1281, 1286, 1284, 1273, 1288, 1279, 0, 1292, - 1289, 1285, 1297, 1297, 1286, 284, 1282, 1303, 1313, 1316, - 1327, 1315, 1316, 1333, 1337, 0, 1324, 1326, 0, 1330, - 1331, 1340, 1325, 1337, 1335, 0, 1333, 1345, 1350, 1343, - 1348, 1349, 0, 1346, 1351, 0, 1337, 1354, 0, 1356, - 1370, 1368, 0, 1359, 1378, 1383, 1386, 1370, 1371, 1386, - 1373, 1375, 1390, 1376, 1383, 1376, 1382, 0, 1384, 1390, - 1415, 1394, 1389, 1400, 1402, 1400, 1435, 0, 1419, 1440, - 1437, 1427, 1435, 1440, 1434, 1442, 1433, 1439, 1448, 0, - - 1453, 1440, 1453, 1452, 1440, 1456, 1472, 1480, 1485, 1473, + 0, 1228, 1230, 1264, 1232, 1247, 330, 0, 1233, 1241, + + 1244, 1265, 1279, 1264, 0, 1283, 1271, 1282, 1284, 0, + 1285, 1283, 1282, 1287, 1285, 1277, 1289, 1280, 0, 1293, + 1289, 1288, 1299, 1299, 1290, 284, 1297, 1316, 1321, 1327, + 1330, 1316, 1317, 1334, 1338, 0, 1325, 1327, 0, 1331, + 1332, 1341, 1326, 1340, 1336, 0, 1334, 1346, 1351, 1344, + 1350, 1351, 0, 1348, 1354, 0, 1340, 1367, 0, 1369, + 1378, 1379, 0, 1362, 1379, 1384, 1386, 1372, 1372, 1387, + 1374, 1376, 1391, 1377, 1387, 1377, 1383, 0, 1385, 1391, + 1422, 1395, 1390, 1400, 1402, 1412, 1438, 0, 1405, 1435, + 1435, 1426, 1435, 1440, 1434, 1442, 1433, 1439, 1449, 0, + + 1455, 1441, 1454, 1452, 1440, 1468, 1472, 1481, 1487, 1475, 1480, 1474, 1473, 1493, 1494, 1476, 0, 1492, 1478, 1487, - 0, 1484, 1481, 1499, 1499, 1498, 1498, 1493, 1503, 1505, - 1496, 1504, 1500, 1511, 1528, 1517, 1517, 0, 1520, 1524, + 0, 1484, 1481, 1501, 1500, 1499, 1499, 1494, 1504, 1506, + 1497, 1504, 1500, 1523, 1528, 1518, 1519, 0, 1522, 1524, 1522, 1530, 1587, 1639, 1623, 279, 0, 0, 1620, 1632, - 1645, 2920, 0, 1555, 1655, 1664, 1682, 1691, 1645, 1652, - 1664, 1685, 1670, 1691, 1685, 1684, 1690, 1695, 1676, 1679, - 1695, 0, 1703, 0, 1684, 228, 1699, 0, 0, 1693, - 1694, 1700, 1699, 1706, 1698, 1738, 1710, 1710, 1714, 1716, - 1706, 1700, 1741, 1734, 0, 1737, 1732, 0, 0, 1733, - - 0, 1739, 1752, 1753, 1740, 1752, 0, 1737, 1756, 1741, - 0, 1743, 0, 1748, 1752, 1779, 1760, 1748, 1765, 1771, - 1791, 1797, 1786, 1786, 0, 1802, 1788, 0, 1801, 1794, - 1787, 1803, 1794, 1805, 0, 1806, 1787, 1809, 1800, 0, - 1795, 0, 1796, 1816, 1801, 1820, 1814, 0, 0, 1811, - 1838, 1836, 1835, 0, 1839, 1847, 1827, 0, 1849, 1834, - 0, 0, 1849, 1844, 1857, 226, 1844, 1848, 1841, 1851, - 1863, 0, 1853, 0, 1854, 1848, 1859, 1866, 0, 1864, - 1872, 1859, 1874, 1886, 0, 1887, 1887, 0, 0, 1881, - 1885, 0, 0, 0, 1900, 1903, 0, 1892, 1894, 1908, - - 1905, 1906, 1907, 0, 1898, 1905, 1903, 123, 1896, 1910, - 1899, 1914, 1900, 1918, 1919, 0, 1916, 1901, 1926, 1933, - 1953, 1942, 1936, 1945, 0, 1938, 1941, 1948, 1948, 1948, - 0, 1958, 0, 1950, 1960, 1961, 1964, 1961, 1964, 1965, - 1951, 1968, 0, 0, 0, 1970, 1960, 1957, 1973, 1976, - 0, 1981, 1982, 1987, 1989, 2004, 2005, 1999, 0, 2001, - 2012, 2002, 2014, 1997, 0, 0, 0, 2010, 2017, 2007, - 2000, 0, 2016, 2007, 2014, 2019, 0, 0, 0, 0, + 1645, 2937, 0, 1655, 1663, 1682, 1691, 1700, 1680, 1687, + 1699, 1694, 1679, 1700, 1694, 1693, 1699, 1704, 1685, 1688, + 1704, 0, 1712, 0, 1693, 228, 1708, 0, 0, 1702, + 1703, 1709, 1708, 1715, 1707, 1747, 1719, 1719, 1723, 1751, + 1741, 1735, 1750, 1743, 0, 1746, 1741, 0, 0, 1742, + + 0, 1748, 1761, 1774, 1749, 1761, 0, 1749, 1766, 1751, + 0, 1753, 0, 1758, 1764, 1787, 1770, 1783, 1800, 1787, + 1800, 1806, 1795, 1795, 0, 1811, 1797, 0, 1810, 1804, + 1797, 1814, 1805, 1816, 0, 0, 1817, 1798, 1820, 1811, + 0, 1807, 0, 1808, 1826, 1822, 1843, 1844, 0, 0, + 1844, 1852, 1850, 1844, 0, 1848, 1856, 1836, 0, 1858, + 1843, 0, 0, 1858, 1853, 1867, 226, 1854, 1860, 1853, + 1862, 1874, 0, 1864, 0, 1865, 1860, 1871, 1876, 0, + 1885, 1895, 1889, 1907, 1900, 0, 1901, 1896, 0, 0, + 1890, 1894, 0, 0, 0, 1909, 1912, 0, 1901, 1903, + + 1917, 1915, 1916, 1918, 0, 1909, 1916, 1914, 123, 1907, + 1921, 1910, 1926, 1912, 1928, 1940, 0, 1939, 1931, 1959, + 1946, 1961, 1950, 1944, 1953, 0, 1946, 1949, 1956, 1956, + 1956, 0, 1967, 0, 1959, 1970, 1971, 1974, 1971, 1974, + 1976, 1963, 1980, 0, 0, 0, 1980, 1981, 1980, 2003, + 2009, 0, 1995, 1996, 1996, 1998, 2013, 2014, 2008, 0, + 2010, 2029, 2012, 2024, 2008, 0, 0, 0, 2021, 2028, + 2019, 2012, 0, 2028, 2020, 2027, 2055, 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, 202, 2019, 174, 0, 0, - 2017, 2066, 2075, 2083, 2092, 2100, 2147, 0, 0, 2023, - 2094, 2082, 0, 2081, 2099, 2090, 2102, 0, 0, 0, - 2099, 2087, 0, 2090, 0, 2105, 2086, 0, 2103, 2108, - 2105, 2106, 2124, 2134, 2152, 2135, 2140, 2136, 2139, 2143, - 2154, 2155, 0, 2174, 2148, 2149, 2145, 2146, 2163, 2148, - 2169, 2162, 0, 2171, 2168, 2166, 2157, 2168, 2195, 2200, - 0, 2194, 2202, 2203, 0, 2189, 2196, 2191, 2192, 2195, - 2214, 2201, 2202, 0, 2200, 0, 2202, 0, 0, 2206, - 0, 2213, 2203, 2215, 2213, 2217, 2222, 2210, 2209, 2234, - - 2236, 2239, 2250, 2243, 0, 2255, 2255, 2252, 2242, 0, - 2245, 0, 2256, 0, 2248, 2262, 0, 2244, 2263, 2252, - 0, 2265, 2269, 2250, 2261, 2273, 2263, 2273, 0, 2261, - 2260, 2267, 2271, 0, 2279, 2290, 0, 0, 2306, 0, - 2306, 2307, 2307, 2298, 2311, 2297, 0, 2313, 2300, 2316, - 0, 2308, 2302, 2308, 2321, 2309, 0, 2305, 2322, 0, - 2323, 2328, 2323, 0, 2311, 0, 2318, 2313, 2338, 0, - 2345, 0, 0, 0, 0, 2352, 2341, 2357, 2358, 2359, - 0, 2346, 2359, 2354, 0, 2367, 0, 2366, 2363, 2367, - 2353, 2358, 2368, 2373, 2373, 2374, 0, 2362, 2366, 2358, - - 2380, 0, 0, 0, 2379, 2120, 2419, 2427, 2435, 0, - 2443, 2471, 0, 2419, 2438, 2439, 2430, 0, 0, 0, - 2445, 2443, 2437, 2444, 0, 0, 2434, 0, 2453, 0, - 0, 2454, 0, 2451, 2441, 0, 2451, 2449, 0, 2488, - 2490, 2489, 0, 2489, 2475, 2486, 2477, 2479, 2479, 2485, - 0, 0, 2499, 0, 2482, 2488, 2500, 2484, 2487, 0, - 2492, 2504, 2500, 2501, 2506, 0, 2498, 2495, 0, 0, - 156, 2499, 2532, 2541, 0, 2540, 0, 0, 0, 2541, - 2525, 2525, 2529, 2534, 2544, 2532, 2537, 2543, 2549, 0, - 0, 2549, 0, 2546, 0, 2551, 0, 0, 2554, 0, - - 0, 0, 0, 0, 0, 0, 0, 0, 2557, 0, - 0, 2541, 2546, 2543, 2540, 2543, 2544, 2564, 0, 0, - 0, 2561, 2581, 2574, 0, 0, 2588, 0, 2587, 2577, - 0, 2579, 0, 0, 2592, 0, 2596, 2597, 0, 2601, - 0, 2583, 2585, 2590, 0, 0, 2605, 2595, 0, 2605, - 0, 0, 2595, 0, 2609, 0, 0, 0, 0, 2606, - 2593, 0, 0, 0, 2592, 2613, 2603, 2604, 2606, 0, - 2609, 2641, 0, 2628, 2631, 2647, 2648, 0, 0, 2630, - 2632, 0, 2632, 2652, 2645, 2635, 0, 0, 0, 0, - 2638, 0, 2654, 2643, 2658, 0, 2651, 2656, 2648, 2660, - - 2650, 2646, 2654, 2662, 0, 2667, 2649, 0, 0, 0, - 2655, 0, 2683, 2693, 0, 2681, 2688, 0, 0, 2692, - 2697, 2694, 2679, 2685, 0, 2701, 2698, 2703, 2703, 0, - 2701, 2685, 0, 0, 2700, 2708, 0, 2702, 2697, 2707, - 2697, 0, 2706, 2701, 0, 2706, 2707, 2701, 2744, 0, - 2749, 0, 0, 0, 2739, 2749, 2748, 0, 0, 2734, - 2737, 0, 0, 0, 2742, 2743, 2757, 0, 0, 0, - 0, 0, 2750, 0, 2747, 2760, 2748, 2759, 2746, 0, - 0, 2749, 0, 2751, 0, 2758, 0, 2753, 0, 2760, - 2757, 0, 2770, 0, 2768, 2768, 2754, 0, 0, 0, - - 2797, 0, 2783, 0, 2791, 2799, 2800, 0, 2801, 0, - 0, 2793, 2796, 2793, 0, 2798, 0, 2802, 0, 2792, - 2799, 2799, 2801, 2813, 2816, 2815, 0, 2805, 2815, 0, - 0, 0, 0, 0, 2802, 2801, 0, 2803, 0, 2823, - 0, 0, 2811, 0, 0, 2814, 2833, 2851, 0, 0, - 2843, 2847, 2843, 0, 0, 2849, 2834, 2839, 2858, 0, - 2859, 0, 2844, 0, 0, 0, 2920, 74, 2907, 2909, - 2911, 2913, 2915, 2917 + 0, 0, 0, 0, 0, 0, 202, 2029, 174, 0, + 0, 2037, 2073, 2085, 2099, 2108, 2116, 2163, 0, 0, + 2109, 2111, 2099, 0, 2098, 2116, 2107, 2119, 0, 0, + 0, 2116, 2104, 0, 2107, 0, 2122, 2113, 0, 2120, + 2125, 2122, 2123, 2167, 2151, 2169, 2152, 2157, 2153, 2156, + 2160, 2171, 2172, 0, 2191, 2165, 2166, 2162, 2164, 2180, + 2165, 2186, 2179, 0, 2188, 2185, 2183, 2174, 2211, 2212, + 2217, 0, 2211, 2219, 2220, 0, 2206, 2213, 2208, 2209, + 2212, 2231, 2218, 2219, 0, 2217, 0, 2219, 0, 0, + 2223, 0, 2230, 2220, 2232, 2230, 2234, 2239, 2227, 2236, + + 2257, 2263, 2256, 2267, 2260, 0, 2272, 2272, 2269, 2259, + 0, 2262, 0, 2273, 0, 2265, 2279, 0, 2261, 2280, + 2269, 0, 2282, 2286, 2267, 2278, 2290, 2280, 2290, 0, + 2278, 2277, 2294, 2294, 0, 2306, 2307, 0, 0, 2323, + 0, 2323, 2324, 2324, 2315, 2328, 2314, 0, 2330, 2317, + 2333, 0, 2325, 2319, 2325, 2338, 2326, 0, 2322, 2339, + 0, 2340, 2345, 2340, 0, 2328, 0, 2335, 2340, 2361, + 0, 2372, 0, 0, 0, 0, 2369, 2358, 2374, 2375, + 2376, 0, 2363, 2376, 2371, 0, 2384, 0, 2383, 2380, + 2384, 2370, 2375, 2385, 2390, 2390, 2391, 0, 2379, 2383, + + 2375, 2397, 0, 0, 0, 2396, 2136, 2436, 2444, 2452, + 0, 2460, 2488, 0, 2436, 2455, 2456, 2447, 0, 0, + 0, 2462, 2460, 2454, 2461, 0, 0, 2451, 0, 2470, + 0, 0, 2471, 0, 2468, 2458, 0, 2468, 2466, 0, + 2505, 2507, 2506, 0, 2506, 2492, 2503, 2494, 2496, 2496, + 2502, 0, 0, 2516, 0, 2499, 2505, 2517, 2501, 2504, + 0, 2509, 2521, 2517, 2518, 2523, 0, 2515, 2512, 0, + 0, 156, 2516, 2549, 2558, 0, 2557, 0, 0, 0, + 2558, 2542, 2542, 2546, 2551, 2561, 2549, 2554, 2560, 2566, + 0, 0, 2566, 0, 2563, 0, 2568, 0, 0, 2571, + + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2574, + 0, 0, 2558, 2563, 2560, 2557, 2560, 2561, 2581, 0, + 0, 0, 2578, 2598, 2591, 0, 0, 2605, 0, 2604, + 2594, 0, 2596, 0, 0, 2609, 0, 2613, 2614, 0, + 2618, 0, 2600, 2602, 2607, 0, 0, 2622, 2612, 0, + 2622, 0, 0, 2612, 0, 2626, 0, 0, 0, 0, + 2623, 2610, 0, 0, 0, 2609, 2630, 2620, 2621, 2623, + 0, 2626, 2658, 0, 2645, 2648, 2664, 2665, 0, 0, + 2647, 2649, 0, 2649, 2669, 2662, 2652, 0, 0, 0, + 0, 2655, 0, 2671, 2660, 2675, 0, 2668, 2673, 2665, + + 2677, 2667, 2663, 2671, 2679, 0, 2684, 2666, 0, 0, + 0, 2672, 0, 2700, 2710, 0, 2698, 2705, 0, 0, + 2709, 2714, 2711, 2696, 2702, 0, 2718, 2715, 2720, 2720, + 0, 2718, 2702, 0, 0, 2717, 2725, 0, 2719, 2714, + 2724, 2714, 0, 2723, 2718, 0, 2723, 2724, 2718, 2761, + 0, 2766, 0, 0, 0, 2756, 2766, 2765, 0, 0, + 2751, 2754, 0, 0, 0, 2759, 2760, 2774, 0, 0, + 0, 0, 0, 2767, 0, 2764, 2777, 2765, 2776, 2763, + 0, 0, 2766, 0, 2768, 0, 2775, 0, 2770, 0, + 2777, 2774, 0, 2787, 0, 2785, 2785, 2771, 0, 0, + + 0, 2814, 0, 2800, 0, 2808, 2816, 2817, 0, 2818, + 0, 0, 2810, 2813, 2810, 0, 2815, 0, 2819, 0, + 2809, 2816, 2816, 2818, 2830, 2833, 2832, 0, 2822, 2832, + 0, 0, 0, 0, 0, 2819, 2818, 0, 2820, 0, + 2840, 0, 0, 2828, 0, 0, 2831, 2850, 2868, 0, + 0, 2860, 2864, 2860, 0, 0, 2866, 2851, 2856, 2875, + 0, 2876, 0, 2861, 0, 0, 0, 2937, 74, 2924, + 2926, 2928, 2930, 2932, 2934 } ; -static yyconst flex_int16_t yy_def[1275] = +static yyconst flex_int16_t yy_def[1276] = { 0, - 1267, 1, 1267, 1267, 1267, 1267, 1268, 1269, 1270, 1268, - 1268, 1268, 12, 12, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1271, 1267, 1268, 1272, 1269, 1268, 1273, 1270, 1268, 1268, - 12, 1268, 1268, 12, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1274, 1271, 1268, - - 1267, 1267, 1268, 203, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 59, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1267, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1267, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1268, 0, 1267, 1267, 1267, - 1267, 1267, 1267, 1267 + 1268, 1, 1268, 1268, 1268, 1268, 1269, 1270, 1271, 1269, + 1269, 1269, 12, 12, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1272, 1268, 1269, 1273, 1270, 1269, 1274, 1271, 1269, 1269, + 12, 1269, 1269, 12, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1275, 1272, 1269, + + 1268, 1268, 1269, 203, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 59, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1268, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1268, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1269, 1269, 1269, 1269, 1269, 1269, 0, 1268, 1268, + 1268, 1268, 1268, 1268, 1268 } ; -static yyconst flex_int16_t yy_nxt[2993] = +static yyconst flex_int16_t yy_nxt[3010] = { 0, 4, 5, 6, 7, 8, 9, 10, 10, 11, 12, 13, 13, 14, 13, 13, 13, 13, 7, 15, 16, @@ -824,29 +824,29 @@ static yyconst flex_int16_t yy_nxt[2993] = 53, 54, 54, 54, 54, 54, 54, 54, 54, 55, 43, 60, 94, 56, 57, 117, 95, 58, 129, 118, 96, 157, 182, 119, 183, 194, 195, 184, 196, 120, - 97, 43, 197, 59, 841, 842, 43, 60, 94, 56, + 97, 43, 197, 59, 842, 843, 43, 60, 94, 56, 57, 117, 95, 58, 129, 118, 96, 157, 182, 119, 183, 194, 195, 184, 196, 120, 97, 43, 197, 59, - 61, 185, 43, 1098, 112, 186, 192, 62, 113, 187, + 61, 185, 43, 1099, 112, 186, 192, 62, 113, 187, 63, 64, 65, 215, 66, 114, 67, 68, 193, 69, - 70, 115, 71, 216, 72, 904, 61, 185, 43, 116, + 70, 115, 71, 216, 72, 905, 61, 185, 43, 116, 112, 186, 192, 62, 113, 187, 63, 64, 65, 215, 66, 114, 67, 68, 193, 69, 70, 115, 71, 216, - 72, 73, 139, 902, 130, 116, 140, 220, 131, 74, + 72, 73, 139, 903, 130, 116, 140, 220, 131, 74, 75, 224, 132, 76, 231, 77, 141, 78, 133, 142, - 79, 232, 143, 80, 81, 810, 233, 733, 139, 82, + 79, 232, 143, 80, 81, 811, 233, 734, 139, 82, 130, 83, 140, 220, 131, 74, 75, 224, 132, 76, 231, 77, 141, 78, 133, 142, 79, 232, 143, 80, 81, 188, 233, 189, 237, 82, 190, 83, 84, 191, 217, 221, 85, 218, 229, 86, 87, 222, 230, 88, 89, 219, 90, 91, 223, 92, 238, 188, 93, 189, - 237, 708, 190, 566, 84, 191, 217, 221, 85, 218, + 237, 709, 190, 567, 84, 191, 217, 221, 85, 218, 229, 86, 87, 222, 230, 88, 89, 219, 90, 91, 223, 92, 238, 134, 93, 98, 99, 135, 235, 144, 242, 136, 245, 145, 100, 137, 101, 138, 102, 103, - 104, 146, 246, 147, 236, 148, 105, 539, 476, 134, + 104, 146, 246, 147, 236, 148, 105, 540, 476, 134, 452, 98, 99, 135, 235, 144, 242, 136, 245, 145, 100, 137, 101, 138, 102, 103, 104, 146, 246, 147, 236, 148, 105, 106, 198, 198, 198, 326, 158, 280, @@ -857,64 +857,64 @@ static yyconst flex_int16_t yy_nxt[2993] = 160, 252, 227, 109, 257, 239, 110, 225, 161, 111, 121, 122, 240, 228, 162, 255, 123, 243, 241, 256, 124, 125, 226, 244, 250, 126, 251, 127, 227, 128, - 42, 239, 1267, 264, 1267, 200, 121, 122, 240, 228, - 1267, 255, 123, 243, 241, 256, 124, 125, 1267, 244, + 42, 239, 1268, 264, 1268, 200, 121, 122, 240, 228, + 1268, 255, 123, 243, 241, 256, 124, 125, 1268, 244, 250, 126, 251, 127, 149, 247, 253, 248, 150, 264, 265, 151, 152, 249, 278, 153, 270, 271, 154, 281, - 266, 155, 1267, 254, 156, 1267, 279, 1267, 282, 1267, - 149, 247, 253, 248, 150, 1267, 265, 151, 152, 249, + 266, 155, 1268, 254, 156, 1268, 279, 1268, 282, 1268, + 149, 247, 253, 248, 150, 1268, 265, 151, 152, 249, 278, 153, 270, 271, 154, 281, 266, 155, 267, 254, 156, 163, 279, 164, 282, 165, 289, 290, 166, 167, 285, 283, 168, 169, 268, 170, 269, 171, 284, 172, - 173, 174, 291, 1267, 267, 175, 1267, 163, 286, 164, - 1267, 165, 289, 290, 166, 167, 285, 283, 168, 169, + 173, 174, 291, 1268, 267, 175, 1268, 163, 286, 164, + 1268, 165, 289, 290, 166, 167, 285, 283, 168, 169, 268, 170, 269, 171, 284, 172, 173, 174, 291, 287, - 1267, 175, 176, 292, 286, 299, 177, 300, 305, 178, + 1268, 175, 176, 292, 286, 299, 177, 300, 305, 178, 294, 301, 293, 302, 303, 306, 179, 288, 295, 180, - 317, 318, 296, 304, 319, 287, 181, 1267, 176, 292, - 1267, 299, 177, 300, 305, 178, 294, 301, 293, 302, + 317, 318, 296, 304, 319, 287, 181, 1268, 176, 292, + 1268, 299, 177, 300, 305, 178, 294, 301, 293, 302, 303, 306, 179, 288, 295, 180, 317, 318, 296, 304, - 319, 1267, 181, 203, 203, 203, 203, 203, 203, 203, + 319, 1268, 181, 203, 203, 203, 203, 203, 203, 203, 203, 204, 51, 51, 51, 51, 51, 51, 51, 51, 209, 209, 209, 209, 209, 209, 209, 209, 210, 210, 210, 210, 210, 210, 210, 210, 309, 320, 205, 324, 325, 310, 211, 211, 43, 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, 213, 213, 213, 213, 213, - 213, 1267, 309, 320, 205, 324, 325, 310, 1267, 327, - 43, 52, 52, 52, 52, 52, 52, 52, 52, 1267, + 213, 1268, 309, 320, 205, 324, 325, 310, 1268, 327, + 43, 52, 52, 52, 52, 52, 52, 52, 52, 1268, 328, 343, 344, 206, 207, 210, 210, 210, 210, 210, - 210, 210, 210, 307, 311, 327, 329, 1267, 1267, 347, + 210, 210, 210, 307, 311, 327, 329, 1268, 1268, 347, 360, 308, 312, 361, 330, 313, 328, 343, 344, 206, 207, 52, 52, 52, 52, 52, 52, 52, 52, 307, - 311, 1267, 329, 208, 57, 347, 360, 308, 312, 361, + 311, 1268, 329, 208, 57, 347, 360, 308, 312, 361, 330, 313, 212, 212, 212, 212, 212, 212, 212, 212, 331, 345, 362, 346, 314, 332, 333, 315, 363, 208, 57, 214, 214, 214, 214, 214, 214, 214, 214, 316, 214, 214, 214, 214, 214, 214, 331, 345, 362, 346, - 314, 332, 333, 315, 363, 1267, 334, 364, 335, 365, - 321, 366, 336, 322, 1267, 316, 214, 214, 214, 214, + 314, 332, 333, 315, 363, 1268, 334, 364, 335, 365, + 321, 366, 336, 322, 1268, 316, 214, 214, 214, 214, 214, 214, 258, 259, 260, 261, 262, 323, 370, 348, - 1267, 263, 334, 364, 335, 365, 321, 366, 336, 322, - 356, 357, 1267, 1267, 349, 350, 1267, 351, 258, 259, + 1268, 263, 334, 364, 335, 365, 321, 366, 336, 322, + 356, 357, 1268, 1268, 349, 350, 1268, 351, 258, 259, 260, 261, 262, 323, 370, 348, 358, 263, 272, 371, 373, 374, 273, 274, 382, 359, 356, 357, 275, 372, - 349, 350, 276, 351, 1267, 1267, 277, 1267, 1267, 1267, - 1267, 1267, 358, 1267, 272, 371, 373, 374, 273, 274, - 382, 359, 1267, 1267, 275, 372, 383, 384, 276, 352, + 349, 350, 276, 351, 1268, 1268, 277, 1268, 1268, 1268, + 1268, 1268, 358, 1268, 272, 371, 373, 374, 273, 274, + 382, 359, 1268, 1268, 275, 372, 383, 384, 276, 352, 353, 379, 277, 337, 367, 380, 354, 338, 368, 369, - 355, 381, 388, 1267, 375, 391, 339, 376, 340, 341, - 342, 1267, 383, 384, 377, 352, 353, 379, 378, 337, + 355, 381, 388, 1268, 375, 391, 339, 376, 340, 341, + 342, 1268, 383, 384, 377, 352, 353, 379, 378, 337, 367, 380, 354, 338, 368, 369, 355, 381, 388, 385, 375, 391, 339, 376, 340, 341, 342, 389, 386, 395, 377, 387, 390, 392, 378, 393, 406, 396, 408, 398, - 1267, 1267, 394, 397, 399, 385, 415, 1267, 407, 1267, - 416, 1267, 400, 389, 386, 395, 401, 387, 390, 392, - 1267, 393, 406, 396, 408, 398, 411, 402, 394, 397, + 1268, 1268, 394, 397, 399, 385, 415, 1268, 407, 1268, + 416, 1268, 400, 389, 386, 395, 401, 387, 390, 392, + 1268, 393, 406, 396, 408, 398, 411, 402, 394, 397, 399, 409, 415, 410, 407, 403, 416, 413, 400, 404, 414, 405, 401, 417, 412, 419, 418, 422, 428, 420, 430, 424, 411, 402, 421, 426, 435, 409, 423, 410, @@ -923,16 +923,16 @@ static yyconst flex_int16_t yy_nxt[2993] = 412, 419, 418, 422, 428, 420, 430, 424, 439, 437, 421, 426, 435, 431, 423, 438, 425, 432, 436, 441, 427, 433, 442, 440, 429, 443, 444, 445, 434, 447, - 448, 449, 450, 451, 439, 437, 1267, 446, 1267, 431, - 1267, 438, 459, 432, 1267, 441, 1267, 433, 442, 440, - 1267, 443, 444, 445, 434, 447, 448, 449, 450, 451, + 448, 449, 450, 451, 439, 437, 1268, 446, 1268, 431, + 1268, 438, 459, 432, 1268, 441, 1268, 433, 442, 440, + 1268, 443, 444, 445, 434, 447, 448, 449, 450, 451, 198, 198, 198, 446, 208, 57, 454, 454, 459, 455, 455, 455, 455, 455, 455, 455, 455, 460, 205, 209, - 209, 209, 209, 209, 209, 209, 209, 456, 1267, 461, + 209, 209, 209, 209, 209, 209, 209, 456, 1268, 461, 208, 57, 462, 210, 210, 210, 210, 210, 210, 210, - 210, 1267, 463, 460, 205, 212, 212, 212, 212, 212, - 212, 212, 212, 1267, 457, 461, 464, 465, 462, 1267, + 210, 1268, 463, 460, 205, 212, 212, 212, 212, 212, + 212, 212, 212, 1268, 457, 461, 464, 465, 462, 1268, 213, 213, 213, 213, 213, 213, 213, 213, 463, 466, 471, 200, 203, 203, 203, 203, 203, 203, 203, 203, 457, 458, 464, 465, 206, 207, 467, 469, 472, 473, @@ -948,201 +948,202 @@ static yyconst flex_int16_t yy_nxt[2993] = 505, 500, 506, 515, 516, 501, 503, 502, 507, 504, 508, 509, 510, 511, 513, 517, 512, 514, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 515, - 516, 529, 530, 531, 532, 533, 534, 537, 538, 540, - 535, 517, 541, 542, 518, 519, 520, 521, 522, 523, - 524, 525, 526, 527, 528, 536, 543, 529, 530, 531, - 532, 533, 534, 537, 538, 540, 535, 544, 541, 542, - - 545, 546, 549, 550, 547, 551, 552, 553, 554, 555, - 556, 536, 543, 548, 557, 558, 559, 562, 560, 563, - 564, 565, 567, 544, 561, 568, 545, 546, 549, 550, - 547, 551, 552, 553, 554, 555, 556, 569, 570, 548, - 557, 558, 559, 562, 560, 563, 564, 565, 567, 571, - 561, 568, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 569, 570, 583, 584, 585, 586, 587, - 588, 589, 590, 591, 592, 571, 593, 594, 572, 573, - 574, 575, 576, 577, 578, 579, 580, 581, 582, 595, - 596, 583, 584, 585, 586, 587, 588, 589, 590, 591, - - 592, 597, 593, 594, 598, 599, 602, 600, 603, 604, - 605, 606, 607, 608, 609, 595, 596, 601, 610, 611, - 612, 613, 1267, 617, 618, 1267, 619, 597, 620, 621, - 598, 599, 602, 600, 603, 604, 605, 606, 607, 608, - 609, 1267, 614, 601, 610, 611, 612, 613, 615, 617, - 618, 616, 619, 622, 620, 621, 625, 623, 626, 627, - 628, 629, 631, 632, 634, 633, 635, 624, 614, 636, - 637, 638, 630, 639, 615, 640, 641, 616, 642, 622, - 643, 644, 625, 623, 626, 627, 628, 629, 631, 632, - 634, 633, 635, 624, 645, 636, 637, 638, 630, 639, - - 646, 640, 641, 647, 642, 648, 643, 644, 649, 650, - 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, - 645, 661, 662, 663, 664, 665, 646, 666, 667, 647, - 668, 648, 669, 670, 649, 650, 651, 652, 653, 654, - 655, 656, 657, 658, 659, 660, 671, 661, 662, 663, - 664, 665, 672, 666, 667, 673, 668, 674, 669, 670, - 675, 676, 677, 678, 455, 455, 455, 455, 455, 455, - 455, 455, 671, 1267, 1267, 1267, 1267, 1267, 672, 1267, - 1267, 673, 1267, 674, 1267, 1267, 675, 676, 677, 678, - 43, 43, 43, 43, 43, 43, 679, 43, 43, 43, - - 43, 43, 43, 43, 43, 680, 681, 682, 683, 684, - 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, - 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, - 705, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, - 699, 700, 701, 702, 703, 704, 705, 43, 43, 706, - 707, 709, 710, 711, 455, 455, 455, 455, 455, 455, - 455, 455, 712, 713, 713, 713, 713, 713, 713, 713, - 713, 1267, 718, 719, 720, 706, 707, 709, 710, 711, - 714, 715, 715, 715, 715, 715, 715, 715, 715, 716, - - 717, 717, 717, 717, 717, 717, 717, 717, 718, 719, - 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, - 730, 731, 732, 734, 735, 736, 737, 738, 739, 740, - 1267, 743, 744, 745, 746, 747, 748, 721, 722, 723, - 724, 725, 726, 727, 728, 729, 730, 731, 732, 734, - 735, 736, 737, 738, 739, 740, 741, 743, 744, 745, - 746, 747, 748, 749, 742, 751, 752, 753, 754, 755, - 756, 757, 760, 762, 763, 761, 750, 764, 765, 766, - 767, 768, 741, 1267, 771, 758, 772, 773, 759, 749, - 742, 751, 752, 753, 754, 755, 756, 757, 760, 762, - - 763, 761, 750, 764, 765, 766, 767, 768, 774, 769, - 771, 758, 772, 773, 759, 770, 775, 776, 777, 778, - 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, - 789, 790, 791, 792, 774, 769, 793, 794, 795, 796, - 797, 770, 775, 776, 777, 778, 779, 780, 781, 782, - 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, - 798, 799, 793, 794, 795, 796, 797, 800, 801, 802, - 804, 805, 806, 807, 808, 809, 811, 812, 813, 803, - 814, 815, 816, 817, 818, 819, 798, 799, 820, 821, - 822, 823, 824, 800, 801, 802, 804, 805, 806, 807, - - 808, 809, 811, 812, 813, 803, 814, 815, 816, 817, - 818, 819, 825, 826, 820, 821, 822, 823, 824, 827, - 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, - 838, 839, 840, 843, 844, 845, 846, 847, 825, 826, - 848, 849, 850, 851, 852, 827, 828, 829, 830, 831, - 832, 833, 834, 835, 836, 837, 838, 839, 840, 843, - 844, 845, 846, 847, 853, 854, 848, 849, 850, 851, - 852, 855, 856, 857, 858, 859, 860, 861, 862, 863, - 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, - 853, 854, 874, 875, 876, 877, 878, 855, 856, 857, - - 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, - 868, 869, 870, 871, 872, 873, 879, 880, 874, 875, - 876, 877, 878, 881, 883, 882, 884, 885, 886, 887, - 888, 890, 891, 892, 893, 894, 895, 896, 897, 898, - 899, 900, 879, 880, 903, 901, 905, 914, 889, 881, - 883, 882, 884, 885, 886, 887, 888, 890, 891, 892, - 893, 894, 895, 896, 897, 898, 899, 900, 1267, 1267, - 903, 901, 905, 914, 889, 906, 906, 906, 906, 906, - 906, 906, 906, 907, 713, 713, 713, 713, 713, 713, - 713, 713, 908, 908, 908, 908, 908, 908, 908, 908, - - 909, 715, 715, 715, 715, 715, 715, 715, 715, 911, - 911, 911, 911, 911, 911, 911, 911, 915, 916, 917, - 918, 919, 920, 921, 922, 923, 924, 925, 910, 906, - 906, 906, 906, 906, 906, 906, 906, 1267, 926, 927, - 928, 929, 930, 915, 916, 917, 918, 919, 920, 921, - 922, 923, 924, 925, 910, 912, 717, 717, 717, 717, - 717, 717, 717, 717, 926, 927, 928, 929, 930, 931, - 932, 933, 934, 935, 936, 937, 938, 939, 1267, 943, - 944, 945, 946, 913, 1267, 947, 948, 949, 950, 951, - 952, 953, 954, 940, 955, 931, 932, 933, 934, 935, - - 936, 937, 938, 939, 941, 943, 944, 945, 946, 913, - 942, 947, 948, 949, 950, 951, 952, 953, 954, 940, - 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, - 941, 965, 966, 967, 968, 969, 942, 970, 971, 972, - 973, 974, 975, 976, 977, 978, 979, 956, 957, 958, - 959, 960, 961, 962, 963, 964, 980, 965, 966, 967, - 968, 969, 981, 970, 971, 972, 973, 974, 975, 976, - 977, 978, 979, 982, 983, 984, 985, 986, 987, 988, - 989, 990, 980, 991, 992, 993, 994, 995, 981, 996, - 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 982, - - 983, 984, 985, 986, 987, 988, 989, 990, 1006, 991, - 992, 993, 994, 995, 1007, 996, 997, 998, 999, 1000, - 1001, 1002, 1003, 1004, 1005, 1008, 1009, 1010, 1011, 1012, - 1013, 1014, 1015, 1016, 1006, 1017, 1018, 1019, 1020, 1021, - 1007, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, - 1031, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, - 1032, 1017, 1018, 1019, 1020, 1021, 1033, 1022, 1023, 1024, - 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1034, 1035, 1036, - 1037, 1038, 1039, 1040, 1041, 1042, 1032, 1043, 1044, 1045, - 1046, 1047, 1033, 1048, 1049, 1050, 1051, 1052, 1053, 1054, - - 1055, 1056, 1267, 1034, 1035, 1036, 1037, 1038, 1039, 1040, - 1041, 1042, 1267, 1043, 1044, 1045, 1046, 1047, 1267, 1048, - 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 906, 906, - 906, 906, 906, 906, 906, 906, 908, 908, 908, 908, - 908, 908, 908, 908, 908, 908, 908, 908, 908, 908, - 908, 908, 911, 911, 911, 911, 911, 911, 911, 911, - 1267, 1267, 1059, 1057, 1060, 1061, 1062, 1063, 1064, 1065, - 1066, 910, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1058, - 911, 911, 911, 911, 911, 911, 911, 911, 1059, 1057, - 1060, 1061, 1062, 1063, 1064, 1065, 1066, 910, 1067, 1068, - - 1069, 1070, 1071, 1072, 1073, 1058, 1074, 913, 1075, 1076, - 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, - 1088, 1089, 1077, 1090, 1091, 1092, 1093, 1094, 1095, 1096, - 1097, 1099, 1074, 913, 1075, 1076, 1078, 1079, 1080, 1081, - 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1077, 1090, - 1091, 1092, 1093, 1094, 1095, 1096, 1097, 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, 1100, 1101, 1102, 1103, 1104, 1105, + 516, 529, 530, 531, 532, 533, 534, 1268, 538, 539, + 541, 517, 542, 543, 518, 519, 520, 521, 522, 523, + 524, 525, 526, 527, 528, 544, 535, 529, 530, 531, + 532, 533, 534, 536, 538, 539, 541, 545, 542, 543, + + 546, 537, 547, 550, 548, 551, 552, 553, 554, 555, + 556, 544, 535, 549, 557, 558, 559, 560, 561, 536, + 563, 564, 565, 545, 562, 566, 546, 537, 547, 550, + 548, 551, 552, 553, 554, 555, 556, 568, 569, 549, + 557, 558, 559, 560, 561, 570, 563, 564, 565, 571, + 562, 566, 572, 573, 574, 575, 576, 577, 578, 579, + 580, 581, 582, 568, 569, 583, 584, 585, 586, 587, + 588, 570, 589, 590, 591, 571, 592, 593, 572, 573, + 574, 575, 576, 577, 578, 579, 580, 581, 582, 594, + 595, 583, 584, 585, 586, 587, 588, 596, 589, 590, + + 591, 597, 592, 593, 598, 599, 600, 601, 603, 604, + 605, 606, 607, 608, 609, 594, 595, 602, 610, 611, + 612, 613, 614, 596, 618, 619, 620, 597, 621, 1268, + 598, 599, 600, 601, 603, 604, 605, 606, 607, 608, + 609, 622, 626, 602, 610, 611, 612, 613, 614, 615, + 618, 619, 620, 627, 621, 616, 623, 628, 617, 629, + 624, 630, 632, 633, 635, 634, 636, 622, 626, 637, + 625, 638, 631, 639, 640, 615, 641, 642, 643, 627, + 644, 616, 623, 628, 617, 629, 624, 630, 632, 633, + 635, 634, 636, 645, 646, 637, 625, 638, 631, 639, + + 640, 647, 641, 642, 643, 648, 644, 649, 650, 651, + 652, 653, 654, 655, 656, 657, 658, 659, 660, 645, + 646, 661, 662, 663, 664, 665, 666, 647, 667, 668, + 669, 648, 670, 649, 650, 651, 652, 653, 654, 655, + 656, 657, 658, 659, 660, 671, 672, 661, 662, 663, + 664, 665, 666, 673, 667, 668, 669, 674, 670, 675, + 676, 677, 678, 679, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 671, 672, 1268, 1268, 1268, 1268, 1268, 1268, 673, + 1268, 1268, 1268, 674, 1268, 675, 676, 677, 678, 679, + 43, 43, 43, 43, 43, 43, 680, 43, 43, 43, + + 43, 43, 43, 43, 43, 681, 682, 683, 684, 685, + 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, + 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, + 706, 681, 682, 683, 684, 685, 686, 687, 688, 689, + 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, + 700, 701, 702, 703, 704, 705, 706, 43, 43, 707, + 708, 710, 711, 712, 455, 455, 455, 455, 455, 455, + 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, + 1268, 1268, 1268, 1268, 1268, 707, 708, 710, 711, 712, + 713, 714, 714, 714, 714, 714, 714, 714, 714, 715, + + 716, 716, 716, 716, 716, 716, 716, 716, 717, 718, + 718, 718, 718, 718, 718, 718, 718, 719, 720, 721, + 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, + 732, 733, 735, 736, 737, 738, 739, 740, 741, 1268, + 744, 745, 746, 719, 720, 721, 722, 723, 724, 725, + 726, 727, 728, 729, 730, 731, 732, 733, 735, 736, + 737, 738, 739, 740, 741, 742, 744, 745, 746, 747, + 748, 749, 750, 743, 752, 753, 754, 755, 756, 757, + 1268, 761, 763, 1268, 762, 751, 764, 765, 766, 767, + 768, 742, 758, 769, 772, 747, 748, 749, 750, 743, + + 752, 753, 754, 755, 756, 757, 759, 761, 763, 760, + 762, 751, 764, 765, 766, 767, 768, 770, 758, 769, + 772, 773, 774, 771, 775, 776, 777, 778, 779, 780, + 781, 782, 759, 783, 784, 760, 785, 786, 787, 788, + 789, 790, 791, 770, 792, 793, 794, 773, 774, 771, + 775, 776, 777, 778, 779, 780, 781, 782, 795, 783, + 784, 796, 785, 786, 787, 788, 789, 790, 791, 797, + 792, 793, 794, 798, 799, 800, 801, 802, 803, 805, + 806, 807, 808, 809, 795, 810, 812, 796, 804, 813, + 814, 815, 816, 817, 818, 797, 819, 820, 821, 798, + + 799, 800, 801, 802, 803, 805, 806, 807, 808, 809, + 822, 810, 812, 823, 804, 813, 814, 815, 816, 817, + 818, 824, 819, 820, 821, 825, 826, 827, 828, 829, + 830, 831, 832, 833, 834, 835, 822, 836, 837, 823, + 838, 839, 840, 841, 844, 845, 846, 824, 847, 848, + 849, 825, 826, 827, 828, 829, 830, 831, 832, 833, + 834, 835, 850, 836, 837, 851, 838, 839, 840, 841, + 844, 845, 846, 852, 847, 848, 849, 853, 855, 856, + 857, 858, 859, 860, 861, 862, 863, 864, 850, 865, + 866, 851, 867, 868, 869, 870, 871, 854, 872, 852, + + 873, 874, 875, 853, 855, 856, 857, 858, 859, 860, + 861, 862, 863, 864, 876, 865, 866, 877, 867, 868, + 869, 870, 871, 854, 872, 878, 873, 874, 875, 879, + 880, 881, 882, 884, 883, 885, 886, 887, 888, 1268, + 876, 891, 892, 877, 893, 894, 895, 889, 896, 897, + 898, 878, 899, 900, 904, 879, 880, 881, 882, 884, + 883, 885, 886, 887, 888, 890, 906, 891, 892, 1268, + 893, 894, 895, 889, 896, 897, 898, 901, 899, 900, + 904, 902, 907, 907, 907, 907, 907, 907, 907, 907, + 1268, 890, 906, 908, 714, 714, 714, 714, 714, 714, + + 714, 714, 1268, 901, 1268, 1268, 1268, 902, 909, 909, + 909, 909, 909, 909, 909, 909, 910, 716, 716, 716, + 716, 716, 716, 716, 716, 912, 912, 912, 912, 912, + 912, 912, 912, 915, 916, 917, 918, 919, 920, 921, + 922, 923, 924, 925, 911, 907, 907, 907, 907, 907, + 907, 907, 907, 1268, 926, 927, 928, 929, 930, 915, + 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, + 911, 913, 718, 718, 718, 718, 718, 718, 718, 718, + 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, + 936, 937, 938, 939, 940, 1268, 944, 945, 946, 914, + + 947, 1268, 948, 949, 950, 951, 952, 953, 954, 955, + 941, 931, 932, 933, 934, 935, 936, 937, 938, 939, + 940, 942, 944, 945, 946, 914, 947, 943, 948, 949, + 950, 951, 952, 953, 954, 955, 941, 956, 957, 958, + 959, 960, 961, 962, 963, 964, 965, 942, 966, 967, + 968, 969, 970, 943, 971, 972, 973, 974, 975, 976, + 977, 978, 979, 956, 957, 958, 959, 960, 961, 962, + 963, 964, 965, 980, 966, 967, 968, 969, 970, 981, + 971, 972, 973, 974, 975, 976, 977, 978, 979, 982, + 983, 984, 985, 986, 987, 988, 989, 990, 991, 980, + + 992, 993, 994, 995, 996, 981, 997, 998, 999, 1000, + 1001, 1002, 1003, 1004, 1005, 982, 983, 984, 985, 986, + 987, 988, 989, 990, 991, 1006, 992, 993, 994, 995, + 996, 1007, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, + 1005, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, + 1017, 1006, 1018, 1019, 1020, 1021, 1022, 1007, 1023, 1024, + 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1008, 1009, 1010, + 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1032, 1018, 1019, + 1020, 1021, 1022, 1033, 1023, 1024, 1025, 1026, 1027, 1028, + 1029, 1030, 1031, 1034, 1035, 1036, 1037, 1038, 1039, 1040, + + 1041, 1042, 1043, 1032, 1044, 1045, 1046, 1047, 1048, 1033, + 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1034, + 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1268, + 1044, 1045, 1046, 1047, 1048, 1268, 1049, 1050, 1051, 1052, + 1053, 1054, 1055, 1056, 1057, 907, 907, 907, 907, 907, + 907, 907, 907, 909, 909, 909, 909, 909, 909, 909, + 909, 909, 909, 909, 909, 909, 909, 909, 909, 912, + 912, 912, 912, 912, 912, 912, 912, 1268, 1268, 1060, + 1058, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 911, 1068, + 1069, 1070, 1071, 1072, 1073, 1074, 1059, 912, 912, 912, + + 912, 912, 912, 912, 912, 1060, 1058, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 911, 1068, 1069, 1070, 1071, 1072, + 1073, 1074, 1059, 1075, 914, 1076, 1077, 1079, 1080, 1081, + 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1078, + 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1100, 1075, + 914, 1076, 1077, 1079, 1080, 1081, 1082, 1083, 1084, 1085, + 1086, 1087, 1088, 1089, 1090, 1078, 1091, 1092, 1093, 1094, + 1095, 1096, 1097, 1098, 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, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, - 1146, 1147, 1148, 1149, 1150, 1151, 1126, 1127, 1128, 1129, + + 1126, 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, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 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, 1152, 1153, + 1150, 1151, 1152, 1127, 1128, 1129, 1130, 1131, 1132, 1133, + 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, + 1144, 1145, 1146, 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, 1191, 1192, 1193, - 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, + + 1174, 1175, 1176, 1177, 1178, 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, 1191, 1192, 1193, 1194, 1195, 1196, 1197, - 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, - 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, - 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, - 1228, 1229, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, - + 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1179, 1180, 1181, + 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, + 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, + 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, - 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, - 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, - 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, - 1252, 1253, 1254, 1255, 1230, 1231, 1232, 1233, 1234, 1235, + + 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1205, + 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, + 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, + 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, - 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, - 1266, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1256, 1257, 1258, 1259, - - 1260, 1261, 1262, 1263, 1264, 1265, 1266, 45, 45, 48, - 48, 199, 199, 44, 44, 47, 47, 198, 198, 3, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267 + 1256, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, + 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, + 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, + 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1257, 1258, 1259, 1260, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 45, 45, 48, 48, 199, 199, + 44, 44, 47, 47, 198, 198, 3, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268 } ; -static yyconst flex_int16_t yy_chk[2993] = +static yyconst flex_int16_t yy_chk[3010] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1151,25 +1152,25 @@ static yyconst flex_int16_t yy_chk[2993] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 8, 8, 8, 1268, 8, 9, 9, 9, + 1, 1, 8, 8, 8, 1269, 8, 9, 9, 9, 108, 108, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 14, 18, 12, 12, 22, 18, 12, 25, 22, 18, 31, 35, 22, 35, 39, 40, 35, 40, 22, - 18, 14, 40, 12, 608, 608, 13, 14, 18, 12, + 18, 14, 40, 12, 609, 609, 13, 14, 18, 12, 12, 22, 18, 12, 25, 22, 18, 31, 35, 22, 35, 39, 40, 35, 40, 22, 18, 14, 40, 12, - 15, 36, 54, 971, 21, 36, 38, 15, 21, 36, + 15, 36, 54, 972, 21, 36, 38, 15, 21, 36, 15, 15, 15, 61, 15, 21, 15, 15, 38, 15, - 15, 21, 15, 62, 15, 708, 15, 36, 54, 21, + 15, 21, 15, 62, 15, 709, 15, 36, 54, 21, 21, 36, 38, 15, 21, 36, 15, 15, 15, 61, 15, 21, 15, 15, 38, 15, 15, 21, 15, 62, - 15, 16, 28, 706, 26, 21, 28, 64, 26, 16, + 15, 16, 28, 707, 26, 21, 28, 64, 26, 16, 16, 66, 26, 16, 70, 16, 28, 16, 26, 28, - 16, 71, 28, 16, 16, 566, 72, 476, 28, 16, + 16, 71, 28, 16, 16, 567, 72, 476, 28, 16, 26, 16, 28, 64, 26, 16, 16, 66, 26, 16, 70, 16, 28, 16, 26, 28, 16, 71, 28, 16, 16, 37, 72, 37, 75, 16, 37, 16, 17, 37, @@ -1282,42 +1283,42 @@ static yyconst flex_int16_t yy_chk[2993] = 260, 258, 261, 270, 271, 258, 259, 258, 262, 259, 263, 264, 265, 266, 267, 272, 266, 268, 273, 274, 275, 276, 277, 278, 281, 282, 283, 284, 286, 270, - 271, 287, 288, 289, 290, 292, 293, 295, 296, 299, - 294, 272, 300, 301, 273, 274, 275, 276, 277, 278, - 281, 282, 283, 284, 286, 294, 302, 287, 288, 289, - 290, 292, 293, 295, 296, 299, 294, 303, 300, 301, - - 304, 306, 308, 309, 307, 311, 312, 313, 314, 315, - 316, 294, 302, 307, 317, 318, 320, 322, 321, 323, - 324, 325, 327, 303, 321, 328, 304, 306, 308, 309, - 307, 311, 312, 313, 314, 315, 316, 329, 330, 307, - 317, 318, 320, 322, 321, 323, 324, 325, 327, 331, - 321, 328, 332, 333, 334, 335, 337, 338, 340, 341, - 342, 343, 344, 329, 330, 345, 347, 348, 349, 350, - 351, 352, 354, 355, 357, 331, 358, 360, 332, 333, - 334, 335, 337, 338, 340, 341, 342, 343, 344, 361, - 362, 345, 347, 348, 349, 350, 351, 352, 354, 355, - - 357, 364, 358, 360, 365, 366, 368, 367, 369, 370, - 371, 372, 373, 374, 375, 361, 362, 367, 376, 377, - 379, 380, 0, 382, 383, 0, 384, 364, 385, 386, - 365, 366, 368, 367, 369, 370, 371, 372, 373, 374, - 375, 0, 381, 367, 376, 377, 379, 380, 381, 382, - 383, 381, 384, 387, 385, 386, 389, 387, 390, 391, - 392, 393, 394, 395, 396, 395, 397, 387, 381, 398, - 399, 401, 393, 402, 381, 402, 403, 381, 404, 387, - 405, 406, 389, 387, 390, 391, 392, 393, 394, 395, - 396, 395, 397, 387, 407, 398, 399, 401, 393, 402, - - 408, 402, 403, 409, 404, 410, 405, 406, 411, 412, - 413, 414, 415, 416, 418, 419, 420, 422, 423, 424, - 407, 425, 426, 427, 428, 429, 408, 430, 431, 409, - 432, 410, 433, 434, 411, 412, 413, 414, 415, 416, - 418, 419, 420, 422, 423, 424, 435, 425, 426, 427, - 428, 429, 436, 430, 431, 437, 432, 439, 433, 434, - 440, 440, 441, 442, 454, 454, 454, 454, 454, 454, - 454, 454, 435, 0, 0, 0, 0, 0, 436, 0, - 0, 437, 0, 439, 0, 0, 440, 440, 441, 442, + 271, 287, 288, 289, 290, 292, 293, 0, 295, 296, + 299, 272, 300, 301, 273, 274, 275, 276, 277, 278, + 281, 282, 283, 284, 286, 302, 294, 287, 288, 289, + 290, 292, 293, 294, 295, 296, 299, 303, 300, 301, + + 304, 294, 306, 308, 307, 309, 311, 312, 313, 314, + 315, 302, 294, 307, 316, 317, 318, 320, 321, 294, + 322, 323, 324, 303, 321, 325, 304, 294, 306, 308, + 307, 309, 311, 312, 313, 314, 315, 327, 328, 307, + 316, 317, 318, 320, 321, 329, 322, 323, 324, 330, + 321, 325, 331, 332, 333, 334, 335, 337, 338, 340, + 341, 342, 343, 327, 328, 344, 345, 347, 348, 349, + 350, 329, 351, 352, 354, 330, 355, 357, 331, 332, + 333, 334, 335, 337, 338, 340, 341, 342, 343, 358, + 360, 344, 345, 347, 348, 349, 350, 361, 351, 352, + + 354, 362, 355, 357, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 358, 360, 367, 375, 376, + 377, 379, 380, 361, 382, 383, 384, 362, 385, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 386, 389, 367, 375, 376, 377, 379, 380, 381, + 382, 383, 384, 390, 385, 381, 387, 391, 381, 392, + 387, 393, 394, 395, 396, 395, 397, 386, 389, 398, + 387, 399, 393, 401, 402, 381, 402, 403, 404, 390, + 405, 381, 387, 391, 381, 392, 387, 393, 394, 395, + 396, 395, 397, 406, 407, 398, 387, 399, 393, 401, + + 402, 408, 402, 403, 404, 409, 405, 410, 411, 412, + 413, 414, 415, 416, 418, 419, 420, 422, 423, 406, + 407, 424, 425, 426, 427, 428, 429, 408, 430, 431, + 432, 409, 433, 410, 411, 412, 413, 414, 415, 416, + 418, 419, 420, 422, 423, 434, 435, 424, 425, 426, + 427, 428, 429, 436, 430, 431, 432, 437, 433, 439, + 440, 440, 441, 442, 0, 0, 0, 0, 0, 0, + 0, 434, 435, 0, 0, 0, 0, 0, 0, 436, + 0, 0, 0, 437, 0, 439, 440, 440, 441, 442, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, @@ -1326,154 +1327,155 @@ static yyconst flex_int16_t yy_chk[2993] = 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 444, - 445, 449, 450, 451, 455, 455, 455, 455, 455, 455, - 455, 455, 456, 456, 456, 456, 456, 456, 456, 456, - 456, 0, 459, 460, 461, 444, 445, 449, 450, 451, - 457, 457, 457, 457, 457, 457, 457, 457, 457, 458, - - 458, 458, 458, 458, 458, 458, 458, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 473, 475, 477, 480, 481, 482, 483, 484, 485, - 0, 487, 488, 489, 490, 491, 492, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 473, 475, 477, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 486, 494, 496, 497, 500, 502, - 503, 504, 505, 506, 508, 505, 493, 509, 510, 512, - 514, 515, 486, 0, 517, 504, 518, 519, 504, 493, - 486, 494, 496, 497, 500, 502, 503, 504, 505, 506, - - 508, 505, 493, 509, 510, 512, 514, 515, 520, 516, - 517, 504, 518, 519, 504, 516, 521, 522, 523, 524, - 526, 527, 529, 530, 531, 532, 533, 534, 536, 537, - 538, 539, 541, 543, 520, 516, 544, 545, 546, 547, - 550, 516, 521, 522, 523, 524, 526, 527, 529, 530, - 531, 532, 533, 534, 536, 537, 538, 539, 541, 543, - 551, 552, 544, 545, 546, 547, 550, 553, 555, 556, - 557, 559, 560, 563, 564, 565, 567, 568, 569, 556, - 570, 571, 573, 575, 576, 577, 551, 552, 578, 580, - 581, 582, 583, 553, 555, 556, 557, 559, 560, 563, - - 564, 565, 567, 568, 569, 556, 570, 571, 573, 575, - 576, 577, 584, 586, 578, 580, 581, 582, 583, 587, - 590, 591, 595, 596, 598, 599, 600, 601, 602, 603, - 605, 606, 607, 609, 610, 611, 612, 613, 584, 586, - 614, 615, 617, 618, 619, 587, 590, 591, 595, 596, - 598, 599, 600, 601, 602, 603, 605, 606, 607, 609, - 610, 611, 612, 613, 619, 620, 614, 615, 617, 618, - 619, 621, 622, 623, 624, 626, 627, 628, 629, 630, - 632, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 619, 620, 646, 647, 648, 649, 650, 621, 622, 623, - - 624, 626, 627, 628, 629, 630, 632, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 652, 653, 646, 647, - 648, 649, 650, 654, 655, 654, 656, 657, 658, 660, - 661, 662, 663, 664, 668, 669, 670, 671, 673, 674, - 675, 676, 652, 653, 707, 676, 711, 720, 661, 654, - 655, 654, 656, 657, 658, 660, 661, 662, 663, 664, - 668, 669, 670, 671, 673, 674, 675, 676, 0, 0, - 707, 676, 711, 720, 661, 712, 712, 712, 712, 712, - 712, 712, 712, 713, 713, 713, 713, 713, 713, 713, - 713, 713, 714, 714, 714, 714, 714, 714, 714, 714, - - 715, 715, 715, 715, 715, 715, 715, 715, 715, 716, - 716, 716, 716, 716, 716, 716, 716, 721, 722, 724, - 725, 726, 727, 731, 732, 734, 736, 737, 715, 906, - 906, 906, 906, 906, 906, 906, 906, 0, 739, 740, - 741, 742, 743, 721, 722, 724, 725, 726, 727, 731, - 732, 734, 736, 737, 715, 717, 717, 717, 717, 717, - 717, 717, 717, 717, 739, 740, 741, 742, 743, 744, - 745, 746, 747, 748, 749, 750, 751, 752, 0, 755, - 756, 757, 758, 717, 0, 759, 760, 761, 762, 764, - 765, 766, 767, 754, 768, 744, 745, 746, 747, 748, - - 749, 750, 751, 752, 754, 755, 756, 757, 758, 717, - 754, 759, 760, 761, 762, 764, 765, 766, 767, 754, - 768, 769, 770, 772, 773, 774, 776, 777, 778, 779, - 754, 780, 781, 782, 783, 785, 754, 787, 790, 792, - 793, 794, 795, 796, 797, 798, 799, 769, 770, 772, - 773, 774, 776, 777, 778, 779, 800, 780, 781, 782, - 783, 785, 801, 787, 790, 792, 793, 794, 795, 796, - 797, 798, 799, 802, 803, 804, 806, 807, 808, 809, - 811, 813, 800, 815, 816, 818, 819, 820, 801, 822, - 823, 824, 825, 826, 827, 828, 830, 831, 832, 802, - - 803, 804, 806, 807, 808, 809, 811, 813, 833, 815, - 816, 818, 819, 820, 835, 822, 823, 824, 825, 826, - 827, 828, 830, 831, 832, 836, 839, 841, 842, 843, - 844, 845, 846, 848, 833, 849, 850, 852, 853, 854, - 835, 855, 856, 858, 859, 861, 862, 863, 865, 867, - 868, 836, 839, 841, 842, 843, 844, 845, 846, 848, - 869, 849, 850, 852, 853, 854, 871, 855, 856, 858, - 859, 861, 862, 863, 865, 867, 868, 876, 877, 878, - 879, 880, 882, 883, 884, 886, 869, 888, 889, 890, - 891, 892, 871, 893, 894, 895, 896, 898, 899, 900, - - 901, 905, 0, 876, 877, 878, 879, 880, 882, 883, - 884, 886, 0, 888, 889, 890, 891, 892, 0, 893, - 894, 895, 896, 898, 899, 900, 901, 905, 907, 907, - 907, 907, 907, 907, 907, 907, 908, 908, 908, 908, - 908, 908, 908, 908, 909, 909, 909, 909, 909, 909, - 909, 909, 911, 911, 911, 911, 911, 911, 911, 911, - 0, 0, 914, 908, 915, 916, 917, 921, 922, 923, - 924, 909, 927, 929, 932, 934, 935, 937, 938, 911, - 912, 912, 912, 912, 912, 912, 912, 912, 914, 908, - 915, 916, 917, 921, 922, 923, 924, 909, 927, 929, - - 932, 934, 935, 937, 938, 911, 940, 912, 941, 942, - 944, 945, 946, 947, 948, 949, 950, 953, 955, 956, - 957, 958, 942, 959, 961, 962, 963, 964, 965, 967, - 968, 972, 940, 912, 941, 942, 944, 945, 946, 947, - 948, 949, 950, 953, 955, 956, 957, 958, 942, 959, - 961, 962, 963, 964, 965, 967, 968, 972, 973, 974, - 976, 980, 981, 982, 983, 984, 985, 986, 987, 988, - 989, 992, 994, 996, 999, 1009, 1012, 1013, 1014, 1015, - 1016, 1017, 1018, 1022, 973, 974, 976, 980, 981, 982, - 983, 984, 985, 986, 987, 988, 989, 992, 994, 996, - - 999, 1009, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1022, - 1023, 1024, 1027, 1029, 1030, 1032, 1035, 1037, 1038, 1040, - 1042, 1043, 1044, 1047, 1048, 1050, 1053, 1055, 1060, 1061, - 1065, 1066, 1067, 1068, 1069, 1071, 1023, 1024, 1027, 1029, - 1030, 1032, 1035, 1037, 1038, 1040, 1042, 1043, 1044, 1047, - 1048, 1050, 1053, 1055, 1060, 1061, 1065, 1066, 1067, 1068, - 1069, 1071, 1072, 1074, 1075, 1076, 1077, 1080, 1081, 1083, - 1084, 1085, 1086, 1091, 1093, 1094, 1095, 1097, 1098, 1099, - 1100, 1101, 1102, 1103, 1104, 1106, 1107, 1111, 1072, 1074, - 1075, 1076, 1077, 1080, 1081, 1083, 1084, 1085, 1086, 1091, - - 1093, 1094, 1095, 1097, 1098, 1099, 1100, 1101, 1102, 1103, - 1104, 1106, 1107, 1111, 1113, 1114, 1116, 1117, 1120, 1121, - 1122, 1123, 1124, 1126, 1127, 1128, 1129, 1131, 1132, 1135, - 1136, 1138, 1139, 1140, 1141, 1143, 1144, 1146, 1147, 1148, - 1113, 1114, 1116, 1117, 1120, 1121, 1122, 1123, 1124, 1126, - 1127, 1128, 1129, 1131, 1132, 1135, 1136, 1138, 1139, 1140, - 1141, 1143, 1144, 1146, 1147, 1148, 1149, 1151, 1155, 1156, - 1157, 1160, 1161, 1165, 1166, 1167, 1173, 1175, 1176, 1177, - 1178, 1179, 1182, 1184, 1186, 1188, 1190, 1191, 1193, 1195, - 1196, 1197, 1149, 1151, 1155, 1156, 1157, 1160, 1161, 1165, - - 1166, 1167, 1173, 1175, 1176, 1177, 1178, 1179, 1182, 1184, - 1186, 1188, 1190, 1191, 1193, 1195, 1196, 1197, 1201, 1203, - 1205, 1206, 1207, 1209, 1212, 1213, 1214, 1216, 1218, 1220, - 1221, 1222, 1223, 1224, 1225, 1226, 1228, 1229, 1235, 1236, - 1238, 1240, 1243, 1246, 1201, 1203, 1205, 1206, 1207, 1209, - 1212, 1213, 1214, 1216, 1218, 1220, 1221, 1222, 1223, 1224, - 1225, 1226, 1228, 1229, 1235, 1236, 1238, 1240, 1243, 1246, - 1247, 1248, 1251, 1252, 1253, 1256, 1257, 1258, 1259, 1261, - 1263, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1247, 1248, 1251, 1252, - - 1253, 1256, 1257, 1258, 1259, 1261, 1263, 1269, 1269, 1270, - 1270, 1271, 1271, 1272, 1272, 1273, 1273, 1274, 1274, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, - 1267, 1267 + 445, 449, 450, 451, 454, 454, 454, 454, 454, 454, + 454, 454, 455, 455, 455, 455, 455, 455, 455, 455, + 0, 0, 0, 0, 0, 444, 445, 449, 450, 451, + 456, 456, 456, 456, 456, 456, 456, 456, 456, 457, + + 457, 457, 457, 457, 457, 457, 457, 457, 458, 458, + 458, 458, 458, 458, 458, 458, 458, 459, 460, 461, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 473, 475, 477, 480, 481, 482, 483, 484, 485, 0, + 487, 488, 489, 459, 460, 461, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 473, 475, 477, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, + 491, 492, 493, 486, 494, 496, 497, 500, 502, 503, + 0, 505, 506, 0, 505, 493, 508, 509, 510, 512, + 514, 486, 504, 515, 517, 490, 491, 492, 493, 486, + + 494, 496, 497, 500, 502, 503, 504, 505, 506, 504, + 505, 493, 508, 509, 510, 512, 514, 516, 504, 515, + 517, 518, 519, 516, 520, 521, 522, 523, 524, 526, + 527, 529, 504, 530, 531, 504, 532, 533, 534, 537, + 538, 539, 540, 516, 542, 544, 545, 518, 519, 516, + 520, 521, 522, 523, 524, 526, 527, 529, 546, 530, + 531, 547, 532, 533, 534, 537, 538, 539, 540, 548, + 542, 544, 545, 551, 552, 553, 554, 556, 557, 558, + 560, 561, 564, 565, 546, 566, 568, 547, 557, 569, + 570, 571, 572, 574, 576, 548, 577, 578, 579, 551, + + 552, 553, 554, 556, 557, 558, 560, 561, 564, 565, + 581, 566, 568, 582, 557, 569, 570, 571, 572, 574, + 576, 583, 577, 578, 579, 584, 585, 587, 588, 591, + 592, 596, 597, 599, 600, 601, 581, 602, 603, 582, + 604, 606, 607, 608, 610, 611, 612, 583, 613, 614, + 615, 584, 585, 587, 588, 591, 592, 596, 597, 599, + 600, 601, 616, 602, 603, 618, 604, 606, 607, 608, + 610, 611, 612, 619, 613, 614, 615, 620, 621, 622, + 623, 624, 625, 627, 628, 629, 630, 631, 616, 633, + 635, 618, 636, 637, 638, 639, 640, 620, 641, 619, + + 642, 643, 647, 620, 621, 622, 623, 624, 625, 627, + 628, 629, 630, 631, 648, 633, 635, 649, 636, 637, + 638, 639, 640, 620, 641, 650, 642, 643, 647, 651, + 653, 654, 655, 656, 655, 657, 658, 659, 661, 0, + 648, 663, 664, 649, 665, 669, 670, 662, 671, 672, + 674, 650, 675, 676, 708, 651, 653, 654, 655, 656, + 655, 657, 658, 659, 661, 662, 712, 663, 664, 0, + 665, 669, 670, 662, 671, 672, 674, 677, 675, 676, + 708, 677, 713, 713, 713, 713, 713, 713, 713, 713, + 0, 662, 712, 714, 714, 714, 714, 714, 714, 714, + + 714, 714, 0, 677, 0, 0, 0, 677, 715, 715, + 715, 715, 715, 715, 715, 715, 716, 716, 716, 716, + 716, 716, 716, 716, 716, 717, 717, 717, 717, 717, + 717, 717, 717, 721, 722, 723, 725, 726, 727, 728, + 732, 733, 735, 737, 716, 907, 907, 907, 907, 907, + 907, 907, 907, 0, 738, 740, 741, 742, 743, 721, + 722, 723, 725, 726, 727, 728, 732, 733, 735, 737, + 716, 718, 718, 718, 718, 718, 718, 718, 718, 718, + 738, 740, 741, 742, 743, 744, 745, 746, 747, 748, + 749, 750, 751, 752, 753, 0, 756, 757, 758, 718, + + 759, 0, 760, 761, 762, 763, 765, 766, 767, 768, + 755, 744, 745, 746, 747, 748, 749, 750, 751, 752, + 753, 755, 756, 757, 758, 718, 759, 755, 760, 761, + 762, 763, 765, 766, 767, 768, 755, 769, 770, 771, + 773, 774, 775, 777, 778, 779, 780, 755, 781, 782, + 783, 784, 786, 755, 788, 791, 793, 794, 795, 796, + 797, 798, 799, 769, 770, 771, 773, 774, 775, 777, + 778, 779, 780, 800, 781, 782, 783, 784, 786, 801, + 788, 791, 793, 794, 795, 796, 797, 798, 799, 802, + 803, 804, 805, 807, 808, 809, 810, 812, 814, 800, + + 816, 817, 819, 820, 821, 801, 823, 824, 825, 826, + 827, 828, 829, 831, 832, 802, 803, 804, 805, 807, + 808, 809, 810, 812, 814, 833, 816, 817, 819, 820, + 821, 834, 823, 824, 825, 826, 827, 828, 829, 831, + 832, 836, 837, 840, 842, 843, 844, 845, 846, 847, + 849, 833, 850, 851, 853, 854, 855, 834, 856, 857, + 859, 860, 862, 863, 864, 866, 868, 836, 837, 840, + 842, 843, 844, 845, 846, 847, 849, 869, 850, 851, + 853, 854, 855, 870, 856, 857, 859, 860, 862, 863, + 864, 866, 868, 872, 877, 878, 879, 880, 881, 883, + + 884, 885, 887, 869, 889, 890, 891, 892, 893, 870, + 894, 895, 896, 897, 899, 900, 901, 902, 906, 872, + 877, 878, 879, 880, 881, 883, 884, 885, 887, 0, + 889, 890, 891, 892, 893, 0, 894, 895, 896, 897, + 899, 900, 901, 902, 906, 908, 908, 908, 908, 908, + 908, 908, 908, 909, 909, 909, 909, 909, 909, 909, + 909, 910, 910, 910, 910, 910, 910, 910, 910, 912, + 912, 912, 912, 912, 912, 912, 912, 0, 0, 915, + 909, 916, 917, 918, 922, 923, 924, 925, 910, 928, + 930, 933, 935, 936, 938, 939, 912, 913, 913, 913, + + 913, 913, 913, 913, 913, 915, 909, 916, 917, 918, + 922, 923, 924, 925, 910, 928, 930, 933, 935, 936, + 938, 939, 912, 941, 913, 942, 943, 945, 946, 947, + 948, 949, 950, 951, 954, 956, 957, 958, 959, 943, + 960, 962, 963, 964, 965, 966, 968, 969, 973, 941, + 913, 942, 943, 945, 946, 947, 948, 949, 950, 951, + 954, 956, 957, 958, 959, 943, 960, 962, 963, 964, + 965, 966, 968, 969, 973, 974, 975, 977, 981, 982, + 983, 984, 985, 986, 987, 988, 989, 990, 993, 995, + 997, 1000, 1010, 1013, 1014, 1015, 1016, 1017, 1018, 1019, + + 1023, 974, 975, 977, 981, 982, 983, 984, 985, 986, + 987, 988, 989, 990, 993, 995, 997, 1000, 1010, 1013, + 1014, 1015, 1016, 1017, 1018, 1019, 1023, 1024, 1025, 1028, + 1030, 1031, 1033, 1036, 1038, 1039, 1041, 1043, 1044, 1045, + 1048, 1049, 1051, 1054, 1056, 1061, 1062, 1066, 1067, 1068, + 1069, 1070, 1072, 1024, 1025, 1028, 1030, 1031, 1033, 1036, + 1038, 1039, 1041, 1043, 1044, 1045, 1048, 1049, 1051, 1054, + 1056, 1061, 1062, 1066, 1067, 1068, 1069, 1070, 1072, 1073, + 1075, 1076, 1077, 1078, 1081, 1082, 1084, 1085, 1086, 1087, + 1092, 1094, 1095, 1096, 1098, 1099, 1100, 1101, 1102, 1103, + + 1104, 1105, 1107, 1108, 1112, 1073, 1075, 1076, 1077, 1078, + 1081, 1082, 1084, 1085, 1086, 1087, 1092, 1094, 1095, 1096, + 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1107, 1108, + 1112, 1114, 1115, 1117, 1118, 1121, 1122, 1123, 1124, 1125, + 1127, 1128, 1129, 1130, 1132, 1133, 1136, 1137, 1139, 1140, + 1141, 1142, 1144, 1145, 1147, 1148, 1149, 1114, 1115, 1117, + 1118, 1121, 1122, 1123, 1124, 1125, 1127, 1128, 1129, 1130, + 1132, 1133, 1136, 1137, 1139, 1140, 1141, 1142, 1144, 1145, + 1147, 1148, 1149, 1150, 1152, 1156, 1157, 1158, 1161, 1162, + 1166, 1167, 1168, 1174, 1176, 1177, 1178, 1179, 1180, 1183, + + 1185, 1187, 1189, 1191, 1192, 1194, 1196, 1197, 1198, 1150, + 1152, 1156, 1157, 1158, 1161, 1162, 1166, 1167, 1168, 1174, + 1176, 1177, 1178, 1179, 1180, 1183, 1185, 1187, 1189, 1191, + 1192, 1194, 1196, 1197, 1198, 1202, 1204, 1206, 1207, 1208, + 1210, 1213, 1214, 1215, 1217, 1219, 1221, 1222, 1223, 1224, + 1225, 1226, 1227, 1229, 1230, 1236, 1237, 1239, 1241, 1244, + 1247, 1202, 1204, 1206, 1207, 1208, 1210, 1213, 1214, 1215, + 1217, 1219, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1229, + 1230, 1236, 1237, 1239, 1241, 1244, 1247, 1248, 1249, 1252, + 1253, 1254, 1257, 1258, 1259, 1260, 1262, 1264, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1248, 1249, 1252, 1253, 1254, 1257, 1258, + 1259, 1260, 1262, 1264, 1270, 1270, 1271, 1271, 1272, 1272, + 1273, 1273, 1274, 1274, 1275, 1275, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + + 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268 } ; /* The intent behind this definition is that it'll catch @@ -1499,7 +1501,7 @@ static yyconst flex_int16_t yy_chk[2993] = extern YYSTYPE* frlval; /* rules */ -#line 1503 "frame/lex.C" +#line 1505 "frame/lex.C" #define INITIAL 0 @@ -1602,7 +1604,7 @@ YY_DECL #line 28 "frame/lex.L" -#line 1606 "frame/lex.C" +#line 1608 "frame/lex.C" if ( !(yy_init) ) { @@ -1655,13 +1657,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 >= 1268 ) + if ( yy_current_state >= 1269 ) 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_current_state != 1267 ); + while ( yy_current_state != 1268 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -2224,247 +2226,247 @@ YY_RULE_SETUP case 109: YY_RULE_SETUP #line 138 "frame/lex.L" -{return FILTER_;} +{return FILL_;} YY_BREAK case 110: YY_RULE_SETUP #line 139 "frame/lex.L" -{return FIT_;} +{return FILTER_;} YY_BREAK case 111: YY_RULE_SETUP #line 140 "frame/lex.L" -{return FITS_;} +{return FIT_;} YY_BREAK case 112: YY_RULE_SETUP #line 141 "frame/lex.L" -{return FITSY_;} +{return FITS_;} YY_BREAK case 113: YY_RULE_SETUP #line 142 "frame/lex.L" -{return FIXED_;} +{return FITSY_;} YY_BREAK case 114: YY_RULE_SETUP #line 143 "frame/lex.L" -{return FK4_;} +{return FIXED_;} YY_BREAK case 115: YY_RULE_SETUP #line 144 "frame/lex.L" -{return FK4_NO_E_;} +{return FK4_;} YY_BREAK case 116: YY_RULE_SETUP #line 145 "frame/lex.L" -{return FK5_;} +{return FK4_NO_E_;} YY_BREAK case 117: YY_RULE_SETUP #line 146 "frame/lex.L" -{return FONT_;} +{return FK5_;} YY_BREAK case 118: YY_RULE_SETUP #line 147 "frame/lex.L" -{return FRONT_;} +{return FONT_;} YY_BREAK case 119: YY_RULE_SETUP #line 148 "frame/lex.L" -{return FULL_;} +{return FRONT_;} YY_BREAK case 120: YY_RULE_SETUP #line 149 "frame/lex.L" -{return FUNCTION_;} +{return FULL_;} YY_BREAK case 121: YY_RULE_SETUP #line 150 "frame/lex.L" -{return GALACTIC_;} +{return FUNCTION_;} YY_BREAK case 122: YY_RULE_SETUP #line 151 "frame/lex.L" -{return GAUSSIAN_;} +{return GALACTIC_;} YY_BREAK case 123: YY_RULE_SETUP #line 152 "frame/lex.L" -{return GET_;} +{return GAUSSIAN_;} YY_BREAK case 124: YY_RULE_SETUP #line 153 "frame/lex.L" -{return GLOBAL_;} +{return GET_;} YY_BREAK case 125: YY_RULE_SETUP #line 154 "frame/lex.L" -{return GRAPHICS_;} +{return GLOBAL_;} YY_BREAK case 126: YY_RULE_SETUP #line 155 "frame/lex.L" -{return GRAY_;} +{return GRAPHICS_;} YY_BREAK case 127: YY_RULE_SETUP #line 156 "frame/lex.L" -{return GRID_;} +{return GRAY_;} YY_BREAK case 128: YY_RULE_SETUP #line 157 "frame/lex.L" -{return GZ_;} +{return GRID_;} YY_BREAK case 129: YY_RULE_SETUP #line 158 "frame/lex.L" -{return HANDLE_;} +{return GZ_;} YY_BREAK case 130: YY_RULE_SETUP #line 159 "frame/lex.L" -{return HAS_;} +{return HANDLE_;} YY_BREAK case 131: YY_RULE_SETUP #line 160 "frame/lex.L" -{return HEAD_;} +{return HAS_;} YY_BREAK case 132: YY_RULE_SETUP #line 161 "frame/lex.L" -{return HEADER_;} +{return HEAD_;} YY_BREAK case 133: YY_RULE_SETUP #line 162 "frame/lex.L" -{return HEIGHT_;} +{return HEADER_;} YY_BREAK case 134: YY_RULE_SETUP #line 163 "frame/lex.L" -{return HELIOECLIPTIC_;} +{return HEIGHT_;} YY_BREAK case 135: YY_RULE_SETUP #line 164 "frame/lex.L" -{return HIDE_;} +{return HELIOECLIPTIC_;} YY_BREAK case 136: YY_RULE_SETUP #line 165 "frame/lex.L" -{return HIGHLITE_;} +{return HIDE_;} YY_BREAK case 137: YY_RULE_SETUP #line 166 "frame/lex.L" -{return HISTEQU_;} +{return HIGHLITE_;} YY_BREAK case 138: YY_RULE_SETUP #line 167 "frame/lex.L" -{return HISTOGRAM_;} +{return HISTEQU_;} YY_BREAK case 139: YY_RULE_SETUP #line 168 "frame/lex.L" -{return HORIZONTAL_;} +{return HISTOGRAM_;} YY_BREAK case 140: YY_RULE_SETUP #line 169 "frame/lex.L" -{return ICRS_;} +{return HORIZONTAL_;} YY_BREAK case 141: YY_RULE_SETUP #line 170 "frame/lex.L" -{return ID_;} +{return ICRS_;} YY_BREAK case 142: YY_RULE_SETUP #line 171 "frame/lex.L" -{return IIS_;} +{return ID_;} YY_BREAK case 143: YY_RULE_SETUP #line 172 "frame/lex.L" -{return IMAGE_;} +{return IIS_;} YY_BREAK case 144: YY_RULE_SETUP #line 173 "frame/lex.L" -{return INCLUDE_;} +{return IMAGE_;} YY_BREAK case 145: YY_RULE_SETUP #line 174 "frame/lex.L" -{return INCR_;} +{return INCLUDE_;} YY_BREAK case 146: YY_RULE_SETUP #line 175 "frame/lex.L" -{return INFO_;} +{return INCR_;} YY_BREAK case 147: YY_RULE_SETUP #line 176 "frame/lex.L" -{return INTEGER_;} +{return INFO_;} YY_BREAK case 148: YY_RULE_SETUP #line 177 "frame/lex.L" -{return ITERATION_;} +{return INTEGER_;} YY_BREAK case 149: YY_RULE_SETUP #line 178 "frame/lex.L" -{return IRAF_;} +{return ITERATION_;} YY_BREAK case 150: YY_RULE_SETUP #line 179 "frame/lex.L" -{return IRAFMIN_;} +{return IRAF_;} YY_BREAK case 151: YY_RULE_SETUP #line 180 "frame/lex.L" -{return J2000_;} +{return IRAFMIN_;} YY_BREAK case 152: YY_RULE_SETUP #line 181 "frame/lex.L" -{return KEY_;} +{return J2000_;} YY_BREAK case 153: YY_RULE_SETUP #line 182 "frame/lex.L" -{return KEYWORD_;} +{return KEY_;} YY_BREAK case 154: YY_RULE_SETUP #line 183 "frame/lex.L" -{return LABEL_;} +{return KEYWORD_;} YY_BREAK case 155: YY_RULE_SETUP #line 184 "frame/lex.L" -{return LENGTH_;} +{return LABEL_;} YY_BREAK case 156: YY_RULE_SETUP #line 185 "frame/lex.L" -{return LEVEL_;} +{return LENGTH_;} YY_BREAK case 157: YY_RULE_SETUP #line 186 "frame/lex.L" -{return LITTLEENDIAN_;} +{return LEVEL_;} YY_BREAK case 158: YY_RULE_SETUP @@ -2474,916 +2476,921 @@ YY_RULE_SETUP case 159: YY_RULE_SETUP #line 188 "frame/lex.L" -{return LINE_;} +{return LITTLEENDIAN_;} YY_BREAK case 160: YY_RULE_SETUP #line 189 "frame/lex.L" -{return LINEAR_;} +{return LINE_;} YY_BREAK case 161: YY_RULE_SETUP #line 190 "frame/lex.L" -{return LIST_;} +{return LINEAR_;} YY_BREAK case 162: YY_RULE_SETUP #line 191 "frame/lex.L" -{return LOAD_;} +{return LIST_;} YY_BREAK case 163: YY_RULE_SETUP #line 192 "frame/lex.L" -{return LOCAL_;} +{return LOAD_;} YY_BREAK case 164: YY_RULE_SETUP #line 193 "frame/lex.L" -{return LOG_;} +{return LOCAL_;} YY_BREAK case 165: YY_RULE_SETUP #line 194 "frame/lex.L" -{return MACOSX_;} +{return LOG_;} YY_BREAK case 166: YY_RULE_SETUP #line 195 "frame/lex.L" -{return MAGNIFIER_;} +{return MACOSX_;} YY_BREAK case 167: YY_RULE_SETUP #line 196 "frame/lex.L" -{return MATCH_;} +{return MAGNIFIER_;} YY_BREAK case 168: YY_RULE_SETUP #line 197 "frame/lex.L" -{return MAP_;} +{return MATCH_;} YY_BREAK case 169: YY_RULE_SETUP #line 198 "frame/lex.L" -{return MARK_;} +{return MAP_;} YY_BREAK case 170: YY_RULE_SETUP #line 199 "frame/lex.L" -{return MARKER_;} +{return MARK_;} YY_BREAK case 171: YY_RULE_SETUP #line 200 "frame/lex.L" -{return MASK_;} +{return MARKER_;} YY_BREAK case 172: YY_RULE_SETUP #line 201 "frame/lex.L" -{return MESSAGE_;} +{return MASK_;} YY_BREAK case 173: YY_RULE_SETUP #line 202 "frame/lex.L" -{return METHOD_;} +{return MESSAGE_;} YY_BREAK case 174: YY_RULE_SETUP #line 203 "frame/lex.L" -{return MINMAX_;} +{return METHOD_;} YY_BREAK case 175: YY_RULE_SETUP #line 204 "frame/lex.L" -{return MIP_;} +{return MINMAX_;} YY_BREAK case 176: YY_RULE_SETUP #line 205 "frame/lex.L" -{return MMAP_;} +{return MIP_;} YY_BREAK case 177: YY_RULE_SETUP #line 206 "frame/lex.L" -{return MMAPINCR_;} +{return MMAP_;} YY_BREAK case 178: YY_RULE_SETUP #line 207 "frame/lex.L" -{return MODE_;} +{return MMAPINCR_;} YY_BREAK case 179: YY_RULE_SETUP #line 208 "frame/lex.L" -{return MOSAIC_;} +{return MODE_;} YY_BREAK case 180: YY_RULE_SETUP #line 209 "frame/lex.L" -{return MOTION_;} +{return MOSAIC_;} YY_BREAK case 181: YY_RULE_SETUP #line 210 "frame/lex.L" -{return MOVE_;} +{return MOTION_;} YY_BREAK case 182: YY_RULE_SETUP #line 211 "frame/lex.L" -{return NAME_;} +{return MOVE_;} YY_BREAK case 183: YY_RULE_SETUP #line 212 "frame/lex.L" -{return NAN_;} +{return NAME_;} YY_BREAK case 184: YY_RULE_SETUP #line 213 "frame/lex.L" -{return NATIVE_;} +{return NAN_;} YY_BREAK case 185: YY_RULE_SETUP #line 214 "frame/lex.L" -{return NAXES_;} +{return NATIVE_;} YY_BREAK case 186: YY_RULE_SETUP #line 215 "frame/lex.L" -{return NEW_;} +{return NAXES_;} YY_BREAK case 187: YY_RULE_SETUP #line 216 "frame/lex.L" -{return NEXT_;} +{return NEW_;} YY_BREAK case 188: YY_RULE_SETUP #line 217 "frame/lex.L" -{return NO_;} +{return NEXT_;} YY_BREAK case 189: YY_RULE_SETUP #line 218 "frame/lex.L" -{return NONE_;} +{return NO_;} YY_BREAK case 190: YY_RULE_SETUP #line 219 "frame/lex.L" -{return NOW_;} +{return NONE_;} YY_BREAK case 191: YY_RULE_SETUP #line 220 "frame/lex.L" -{return NRRD_;} +{return NOW_;} YY_BREAK case 192: YY_RULE_SETUP #line 221 "frame/lex.L" -{return NUMBER_;} +{return NRRD_;} YY_BREAK case 193: YY_RULE_SETUP #line 222 "frame/lex.L" -{return OBJECT_;} +{return NUMBER_;} YY_BREAK case 194: YY_RULE_SETUP #line 223 "frame/lex.L" -{return OFF_;} +{return OBJECT_;} YY_BREAK case 195: YY_RULE_SETUP #line 224 "frame/lex.L" -{return ON_;} +{return OFF_;} YY_BREAK case 196: YY_RULE_SETUP #line 225 "frame/lex.L" -{return ONLY_;} +{return ON_;} YY_BREAK case 197: YY_RULE_SETUP #line 226 "frame/lex.L" -{return OPTION_;} +{return ONLY_;} YY_BREAK case 198: YY_RULE_SETUP #line 227 "frame/lex.L" -{return ORIENT_;} +{return OPTION_;} YY_BREAK case 199: YY_RULE_SETUP #line 228 "frame/lex.L" -{return PAN_;} +{return ORIENT_;} YY_BREAK case 200: YY_RULE_SETUP #line 229 "frame/lex.L" -{return CPANDA_;} +{return PAN_;} YY_BREAK case 201: YY_RULE_SETUP #line 230 "frame/lex.L" -{return PANNER_;} +{return CPANDA_;} YY_BREAK case 202: YY_RULE_SETUP #line 231 "frame/lex.L" -{return PARSER_;} +{return PANNER_;} YY_BREAK case 203: YY_RULE_SETUP #line 232 "frame/lex.L" -{return PASTE_;} +{return PARSER_;} YY_BREAK case 204: YY_RULE_SETUP #line 233 "frame/lex.L" -{return PERF_;} +{return PASTE_;} YY_BREAK case 205: YY_RULE_SETUP #line 234 "frame/lex.L" -{return PHOTO_;} +{return PERF_;} YY_BREAK case 206: YY_RULE_SETUP #line 235 "frame/lex.L" -{return PHYSICAL_;} +{return PHOTO_;} YY_BREAK case 207: YY_RULE_SETUP #line 236 "frame/lex.L" -{return PIXEL_;} +{return PHYSICAL_;} YY_BREAK case 208: YY_RULE_SETUP #line 237 "frame/lex.L" -{return PLOT2D_;} +{return PIXEL_;} YY_BREAK case 209: YY_RULE_SETUP #line 238 "frame/lex.L" -{return PLOT3D_;} +{return PLOT2D_;} YY_BREAK case 210: YY_RULE_SETUP #line 239 "frame/lex.L" -{return POINT_;} +{return PLOT3D_;} YY_BREAK case 211: YY_RULE_SETUP #line 240 "frame/lex.L" -{return POINTER_;} +{return POINT_;} YY_BREAK case 212: YY_RULE_SETUP #line 241 "frame/lex.L" -{return POLYGON_;} +{return POINTER_;} YY_BREAK case 213: YY_RULE_SETUP #line 242 "frame/lex.L" -{return POSTSCRIPT_;} +{return POLYGON_;} YY_BREAK case 214: YY_RULE_SETUP #line 243 "frame/lex.L" -{return POW_;} +{return POSTSCRIPT_;} YY_BREAK case 215: YY_RULE_SETUP #line 244 "frame/lex.L" -{return PRINT_;} +{return POW_;} YY_BREAK case 216: YY_RULE_SETUP #line 245 "frame/lex.L" -{return PRESERVE_;} +{return PRINT_;} YY_BREAK case 217: YY_RULE_SETUP #line 246 "frame/lex.L" -{return PROJECTION_;} +{return PRESERVE_;} YY_BREAK case 218: YY_RULE_SETUP #line 247 "frame/lex.L" -{return PROPERTY_;} +{return PROJECTION_;} YY_BREAK case 219: YY_RULE_SETUP #line 248 "frame/lex.L" -{return PROS_;} +{return PROPERTY_;} YY_BREAK case 220: YY_RULE_SETUP #line 249 "frame/lex.L" -{return PUBLICATION_;} +{return PROS_;} YY_BREAK case 221: YY_RULE_SETUP #line 250 "frame/lex.L" -{return QUERY_;} +{return PUBLICATION_;} YY_BREAK case 222: YY_RULE_SETUP #line 251 "frame/lex.L" -{return RADIAL_;} +{return QUERY_;} YY_BREAK case 223: YY_RULE_SETUP #line 252 "frame/lex.L" -{return RADIUS_;} +{return RADIAL_;} YY_BREAK case 224: YY_RULE_SETUP #line 253 "frame/lex.L" -{return REGION_;} +{return RADIUS_;} YY_BREAK case 225: YY_RULE_SETUP #line 254 "frame/lex.L" -{return REPLACE_;} +{return REGION_;} YY_BREAK case 226: YY_RULE_SETUP #line 255 "frame/lex.L" -{return RESAMPLE_;} +{return REPLACE_;} YY_BREAK case 227: YY_RULE_SETUP #line 256 "frame/lex.L" -{return RESET_;} +{return RESAMPLE_;} YY_BREAK case 228: YY_RULE_SETUP #line 257 "frame/lex.L" -{return RESOLUTION_;} +{return RESET_;} YY_BREAK case 229: YY_RULE_SETUP #line 258 "frame/lex.L" -{return RGB_;} +{return RESOLUTION_;} YY_BREAK case 230: YY_RULE_SETUP #line 259 "frame/lex.L" -{return ROOT_;} +{return RGB_;} YY_BREAK case 231: YY_RULE_SETUP #line 260 "frame/lex.L" -{return ROTATE_;} +{return ROOT_;} YY_BREAK case 232: YY_RULE_SETUP #line 261 "frame/lex.L" -{return RULER_;} +{return ROTATE_;} YY_BREAK case 233: YY_RULE_SETUP #line 262 "frame/lex.L" -{return SAMPLE_;} +{return RULER_;} YY_BREAK case 234: YY_RULE_SETUP #line 263 "frame/lex.L" -{return SAOIMAGE_;} +{return SAMPLE_;} YY_BREAK case 235: YY_RULE_SETUP #line 264 "frame/lex.L" -{return SAOTNG_;} +{return SAOIMAGE_;} YY_BREAK case 236: YY_RULE_SETUP #line 265 "frame/lex.L" -{return SAVE_;} +{return SAOTNG_;} YY_BREAK case 237: YY_RULE_SETUP #line 266 "frame/lex.L" -{return SCALE_;} +{return SAVE_;} YY_BREAK case 238: YY_RULE_SETUP #line 267 "frame/lex.L" -{return SCAN_;} +{return SCALE_;} YY_BREAK case 239: YY_RULE_SETUP #line 268 "frame/lex.L" -{return SCIENTIFIC_;} +{return SCAN_;} YY_BREAK case 240: YY_RULE_SETUP #line 269 "frame/lex.L" -{return SCOPE_;} +{return SCIENTIFIC_;} YY_BREAK case 241: YY_RULE_SETUP #line 270 "frame/lex.L" -{return SEGMENT_;} +{return SCOPE_;} YY_BREAK case 242: YY_RULE_SETUP #line 271 "frame/lex.L" -{return SELECT_;} +{return SEGMENT_;} YY_BREAK case 243: YY_RULE_SETUP #line 272 "frame/lex.L" -{return SET_;} +{return SELECT_;} YY_BREAK case 244: YY_RULE_SETUP #line 273 "frame/lex.L" -{return SEXAGESIMAL_;} +{return SET_;} YY_BREAK case 245: YY_RULE_SETUP #line 274 "frame/lex.L" -{return SHAPE_;} +{return SEXAGESIMAL_;} YY_BREAK case 246: YY_RULE_SETUP #line 275 "frame/lex.L" -{return SHARED_;} +{return SHAPE_;} YY_BREAK case 247: YY_RULE_SETUP #line 276 "frame/lex.L" -{return SHIFT_;} +{return SHARED_;} YY_BREAK case 248: YY_RULE_SETUP #line 277 "frame/lex.L" -{return SHMID_;} +{return SHIFT_;} YY_BREAK case 249: YY_RULE_SETUP #line 278 "frame/lex.L" -{return SHOW_;} +{return SHMID_;} YY_BREAK case 250: YY_RULE_SETUP #line 279 "frame/lex.L" -{return SINH_;} +{return SHOW_;} YY_BREAK case 251: YY_RULE_SETUP #line 280 "frame/lex.L" -{return SIZE_;} +{return SINH_;} YY_BREAK case 252: YY_RULE_SETUP #line 281 "frame/lex.L" -{return SLICE_;} +{return SIZE_;} YY_BREAK case 253: YY_RULE_SETUP #line 282 "frame/lex.L" -{return SMMAP_;} +{return SLICE_;} YY_BREAK case 254: YY_RULE_SETUP #line 283 "frame/lex.L" -{return SMOOTH_;} +{return SMMAP_;} YY_BREAK case 255: YY_RULE_SETUP #line 284 "frame/lex.L" -{return SOCKET_;} +{return SMOOTH_;} YY_BREAK case 256: YY_RULE_SETUP #line 285 "frame/lex.L" -{return SOCKETGZ_;} +{return SOCKET_;} YY_BREAK case 257: YY_RULE_SETUP #line 286 "frame/lex.L" -{return SOURCE_;} +{return SOCKETGZ_;} YY_BREAK case 258: YY_RULE_SETUP #line 287 "frame/lex.L" -{return SQRT_;} +{return SOURCE_;} YY_BREAK case 259: YY_RULE_SETUP #line 288 "frame/lex.L" -{return SQUARED_;} +{return SQRT_;} YY_BREAK case 260: YY_RULE_SETUP #line 289 "frame/lex.L" -{return SSHARED_;} +{return SQUARED_;} YY_BREAK case 261: YY_RULE_SETUP #line 290 "frame/lex.L" -{return STATS_;} +{return SSHARED_;} YY_BREAK case 262: YY_RULE_SETUP #line 291 "frame/lex.L" -{return STATUS_;} +{return STATS_;} YY_BREAK case 263: YY_RULE_SETUP #line 292 "frame/lex.L" -{return SUM_;} +{return STATUS_;} YY_BREAK case 264: YY_RULE_SETUP #line 293 "frame/lex.L" -{return SUPERGALACTIC_;} +{return SUM_;} YY_BREAK case 265: YY_RULE_SETUP #line 294 "frame/lex.L" -{return SYSTEM_;} +{return SUPERGALACTIC_;} YY_BREAK case 266: YY_RULE_SETUP #line 295 "frame/lex.L" -{return TABLE_;} +{return SYSTEM_;} YY_BREAK case 267: YY_RULE_SETUP #line 296 "frame/lex.L" -{return TAG_;} +{return TABLE_;} YY_BREAK case 268: YY_RULE_SETUP #line 297 "frame/lex.L" -{return TEMPLATE_;} +{return TAG_;} YY_BREAK case 269: YY_RULE_SETUP #line 298 "frame/lex.L" -{return TEXT_;} +{return TEMPLATE_;} YY_BREAK case 270: YY_RULE_SETUP #line 299 "frame/lex.L" -{return THREADS_;} +{return TEXT_;} YY_BREAK case 271: YY_RULE_SETUP #line 300 "frame/lex.L" -{return THREED_;} +{return THREADS_;} YY_BREAK case 272: YY_RULE_SETUP #line 301 "frame/lex.L" -{return THRESHOLD_;} +{return THREED_;} YY_BREAK case 273: YY_RULE_SETUP #line 302 "frame/lex.L" -{return THICK_;} +{return THRESHOLD_;} YY_BREAK case 274: YY_RULE_SETUP #line 303 "frame/lex.L" -{return TRANSPARENCY_;} +{return THICK_;} YY_BREAK case 275: YY_RULE_SETUP #line 304 "frame/lex.L" -{return TO_;} +{return TRANSPARENCY_;} YY_BREAK case 276: YY_RULE_SETUP #line 305 "frame/lex.L" -{return TOGGLE_;} +{return TO_;} YY_BREAK case 277: YY_RULE_SETUP #line 306 "frame/lex.L" -{return TOPHAT_;} +{return TOGGLE_;} YY_BREAK case 278: YY_RULE_SETUP #line 307 "frame/lex.L" -{return TRUE_;} +{return TOPHAT_;} YY_BREAK case 279: YY_RULE_SETUP #line 308 "frame/lex.L" -{return TYPE_;} +{return TRUE_;} YY_BREAK case 280: YY_RULE_SETUP #line 309 "frame/lex.L" -{return UNDO_;} +{return TYPE_;} YY_BREAK case 281: YY_RULE_SETUP #line 310 "frame/lex.L" -{return UNLOAD_;} +{return UNDO_;} YY_BREAK case 282: YY_RULE_SETUP #line 311 "frame/lex.L" -{return UNHIGHLITE_;} +{return UNLOAD_;} YY_BREAK case 283: YY_RULE_SETUP #line 312 "frame/lex.L" -{return UNSELECT_;} +{return UNHIGHLITE_;} YY_BREAK case 284: YY_RULE_SETUP #line 313 "frame/lex.L" -{return UPDATE_;} +{return UNSELECT_;} YY_BREAK case 285: YY_RULE_SETUP #line 314 "frame/lex.L" -{return USER_;} +{return UPDATE_;} YY_BREAK case 286: YY_RULE_SETUP #line 315 "frame/lex.L" -{return VALUE_;} +{return USER_;} YY_BREAK case 287: YY_RULE_SETUP #line 316 "frame/lex.L" -{return VAR_;} +{return VALUE_;} YY_BREAK case 288: YY_RULE_SETUP #line 317 "frame/lex.L" -{return VIEW_;} +{return VAR_;} YY_BREAK case 289: YY_RULE_SETUP #line 318 "frame/lex.L" -{return VECTOR_;} +{return VIEW_;} YY_BREAK case 290: YY_RULE_SETUP #line 319 "frame/lex.L" -{return VERSION_;} +{return VECTOR_;} YY_BREAK case 291: YY_RULE_SETUP #line 320 "frame/lex.L" -{return VERTEX_;} +{return VERSION_;} YY_BREAK case 292: YY_RULE_SETUP #line 321 "frame/lex.L" -{return VERTICAL_;} +{return VERTEX_;} YY_BREAK case 293: YY_RULE_SETUP #line 322 "frame/lex.L" -{return WARP_;} +{return VERTICAL_;} YY_BREAK case 294: YY_RULE_SETUP #line 323 "frame/lex.L" -{return WCS_;} +{return WARP_;} YY_BREAK case 295: YY_RULE_SETUP #line 324 "frame/lex.L" -{return WCSA_;} +{return WCS_;} YY_BREAK case 296: YY_RULE_SETUP #line 325 "frame/lex.L" -{return WCSB_;} +{return WCSA_;} YY_BREAK case 297: YY_RULE_SETUP #line 326 "frame/lex.L" -{return WCSC_;} +{return WCSB_;} YY_BREAK case 298: YY_RULE_SETUP #line 327 "frame/lex.L" -{return WCSD_;} +{return WCSC_;} YY_BREAK case 299: YY_RULE_SETUP #line 328 "frame/lex.L" -{return WCSE_;} +{return WCSD_;} YY_BREAK case 300: YY_RULE_SETUP #line 329 "frame/lex.L" -{return WCSF_;} +{return WCSE_;} YY_BREAK case 301: YY_RULE_SETUP #line 330 "frame/lex.L" -{return WCSG_;} +{return WCSF_;} YY_BREAK case 302: YY_RULE_SETUP #line 331 "frame/lex.L" -{return WCSH_;} +{return WCSG_;} YY_BREAK case 303: YY_RULE_SETUP #line 332 "frame/lex.L" -{return WCSI_;} +{return WCSH_;} YY_BREAK case 304: YY_RULE_SETUP #line 333 "frame/lex.L" -{return WCSJ_;} +{return WCSI_;} YY_BREAK case 305: YY_RULE_SETUP #line 334 "frame/lex.L" -{return WCSK_;} +{return WCSJ_;} YY_BREAK case 306: YY_RULE_SETUP #line 335 "frame/lex.L" -{return WCSL_;} +{return WCSK_;} YY_BREAK case 307: YY_RULE_SETUP #line 336 "frame/lex.L" -{return WCSM_;} +{return WCSL_;} YY_BREAK case 308: YY_RULE_SETUP #line 337 "frame/lex.L" -{return WCSN_;} +{return WCSM_;} YY_BREAK case 309: YY_RULE_SETUP #line 338 "frame/lex.L" -{return WCSO_;} +{return WCSN_;} YY_BREAK case 310: YY_RULE_SETUP #line 339 "frame/lex.L" -{return WCSP_;} +{return WCSO_;} YY_BREAK case 311: YY_RULE_SETUP #line 340 "frame/lex.L" -{return WCSQ_;} +{return WCSP_;} YY_BREAK case 312: YY_RULE_SETUP #line 341 "frame/lex.L" -{return WCSR_;} +{return WCSQ_;} YY_BREAK case 313: YY_RULE_SETUP #line 342 "frame/lex.L" -{return WCSS_;} +{return WCSR_;} YY_BREAK case 314: YY_RULE_SETUP #line 343 "frame/lex.L" -{return WCST_;} +{return WCSS_;} YY_BREAK case 315: YY_RULE_SETUP #line 344 "frame/lex.L" -{return WCSU_;} +{return WCST_;} YY_BREAK case 316: YY_RULE_SETUP #line 345 "frame/lex.L" -{return WCSV_;} +{return WCSU_;} YY_BREAK case 317: YY_RULE_SETUP #line 346 "frame/lex.L" -{return WCSW_;} +{return WCSV_;} YY_BREAK case 318: YY_RULE_SETUP #line 347 "frame/lex.L" -{return WCSX_;} +{return WCSW_;} YY_BREAK case 319: YY_RULE_SETUP #line 348 "frame/lex.L" -{return WCSY_;} +{return WCSX_;} YY_BREAK case 320: YY_RULE_SETUP #line 349 "frame/lex.L" -{return WCSZ_;} +{return WCSY_;} YY_BREAK case 321: YY_RULE_SETUP #line 350 "frame/lex.L" -{return WCS0_;} +{return WCSZ_;} YY_BREAK case 322: YY_RULE_SETUP #line 351 "frame/lex.L" -{return WFPC2_;} +{return WCS0_;} YY_BREAK case 323: YY_RULE_SETUP #line 352 "frame/lex.L" -{return WIDTH_;} +{return WFPC2_;} YY_BREAK case 324: YY_RULE_SETUP #line 353 "frame/lex.L" -{return WIN32_;} +{return WIDTH_;} YY_BREAK case 325: YY_RULE_SETUP #line 354 "frame/lex.L" -{return XML_;} +{return WIN32_;} YY_BREAK case 326: YY_RULE_SETUP #line 355 "frame/lex.L" -{return XY_;} +{return XML_;} YY_BREAK case 327: YY_RULE_SETUP #line 356 "frame/lex.L" -{return YES_;} +{return XY_;} YY_BREAK case 328: YY_RULE_SETUP #line 357 "frame/lex.L" -{return ZMAX_;} +{return YES_;} YY_BREAK case 329: YY_RULE_SETUP #line 358 "frame/lex.L" -{return ZSCALE_;} +{return ZMAX_;} YY_BREAK case 330: YY_RULE_SETUP #line 359 "frame/lex.L" -{return ZOOM_;} +{return ZSCALE_;} YY_BREAK case 331: YY_RULE_SETUP -#line 361 "frame/lex.L" +#line 360 "frame/lex.L" +{return ZOOM_;} + YY_BREAK +case 332: +YY_RULE_SETUP +#line 362 "frame/lex.L" { // Integer frlval->integer = atoi(yytext); return INT; } YY_BREAK -case 332: -#line 367 "frame/lex.L" case 333: +#line 368 "frame/lex.L" +case 334: YY_RULE_SETUP -#line 367 "frame/lex.L" +#line 368 "frame/lex.L" { // Real Number frlval->real = atof(yytext); return REAL; } YY_BREAK -case 334: +case 335: YY_RULE_SETUP -#line 372 "frame/lex.L" +#line 373 "frame/lex.L" { // Pointer frlval->ptr = (void*)strtoul(yytext,NULL,16); return POINTER; } YY_BREAK -case 335: -#line 378 "frame/lex.L" case 336: +#line 379 "frame/lex.L" +case 337: YY_RULE_SETUP -#line 378 "frame/lex.L" +#line 379 "frame/lex.L" { // degrees yytext[yyleng-1] = '\0'; frlval->real = atof(yytext); return ANGDEGREE; } YY_BREAK -case 337: -#line 385 "frame/lex.L" case 338: +#line 386 "frame/lex.L" +case 339: YY_RULE_SETUP -#line 385 "frame/lex.L" +#line 386 "frame/lex.L" { // radians yytext[yyleng-1] = '\0'; frlval->real = atof(yytext); return ANGRADIAN; } YY_BREAK -case 339: -#line 392 "frame/lex.L" case 340: +#line 393 "frame/lex.L" +case 341: YY_RULE_SETUP -#line 392 "frame/lex.L" +#line 393 "frame/lex.L" { // sexagesimal int ll = yyleng <(FRBUFSIZE-1) ? yyleng:(FRBUFSIZE-1); strncpy(frlval->str,yytext,ll); @@ -3391,11 +3398,11 @@ YY_RULE_SETUP return SEXSTR; } YY_BREAK -case 341: -#line 400 "frame/lex.L" case 342: +#line 401 "frame/lex.L" +case 343: YY_RULE_SETUP -#line 400 "frame/lex.L" +#line 401 "frame/lex.L" { // HMS int ll = yyleng <(FRBUFSIZE-1) ? yyleng:(FRBUFSIZE-1); strncpy(frlval->str,yytext,ll); @@ -3403,11 +3410,11 @@ YY_RULE_SETUP return HMSSTR; } YY_BREAK -case 343: -#line 408 "frame/lex.L" case 344: +#line 409 "frame/lex.L" +case 345: YY_RULE_SETUP -#line 408 "frame/lex.L" +#line 409 "frame/lex.L" { // DMS int ll = yyleng <(FRBUFSIZE-1) ? yyleng:(FRBUFSIZE-1); strncpy(frlval->str,yytext,ll); @@ -3415,13 +3422,13 @@ YY_RULE_SETUP return DMSSTR; } YY_BREAK -case 345: -/* rule 345 can match eol */ -#line 416 "frame/lex.L" case 346: /* rule 346 can match eol */ +#line 417 "frame/lex.L" +case 347: +/* rule 347 can match eol */ YY_RULE_SETUP -#line 416 "frame/lex.L" +#line 417 "frame/lex.L" { // Quoted String int ll = (yyleng-2)<(FRBUFSIZE-1) ? (yyleng-2):(FRBUFSIZE-1); strncpy(frlval->str,yytext+1,ll); // skip the " " @@ -3429,10 +3436,10 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 347: -/* rule 347 can match eol */ +case 348: +/* rule 348 can match eol */ YY_RULE_SETUP -#line 423 "frame/lex.L" +#line 424 "frame/lex.L" { // Quoted String int ll = (yyleng-2)<(FRBUFSIZE-1) ? (yyleng-2):(FRBUFSIZE-1); strncpy(frlval->str,yytext+1,ll); // skip the '{' @@ -3440,9 +3447,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 348: +case 349: YY_RULE_SETUP -#line 430 "frame/lex.L" +#line 431 "frame/lex.L" { // General String-- at least 2 printable chars int ll = yyleng <(FRBUFSIZE-1) ? yyleng:(FRBUFSIZE-1); strncpy(frlval->str,yytext,ll); @@ -3450,25 +3457,25 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 349: +case 350: YY_RULE_SETUP -#line 437 "frame/lex.L" +#line 438 "frame/lex.L" { // White Spaces } YY_BREAK -case 350: +case 351: YY_RULE_SETUP -#line 440 "frame/lex.L" +#line 441 "frame/lex.L" { // Else, return the char return toupper(yytext[0]); } YY_BREAK -case 351: +case 352: YY_RULE_SETUP -#line 444 "frame/lex.L" +#line 445 "frame/lex.L" ECHO; YY_BREAK -#line 3472 "frame/lex.C" +#line 3479 "frame/lex.C" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -3850,7 +3857,7 @@ int yyFlexLexer::yy_get_next_buffer() 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 >= 1268 ) + if ( yy_current_state >= 1269 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -3878,11 +3885,11 @@ int yyFlexLexer::yy_get_next_buffer() 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 >= 1268 ) + if ( yy_current_state >= 1269 ) 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 == 1267); + yy_is_jam = (yy_current_state == 1268); return yy_is_jam ? 0 : yy_current_state; } @@ -4367,7 +4374,7 @@ void frfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 444 "frame/lex.L" +#line 445 "frame/lex.L" diff --git a/tksao/frame/lex.L b/tksao/frame/lex.L index 8bc1960..389945b 100644 --- a/tksao/frame/lex.L +++ b/tksao/frame/lex.L @@ -135,6 +135,7 @@ ext {return EXT_;} factor {return FACTOR_;} false {return FALSE_;} file {return FILE_;} +fill {return FILL_;} filter {return FILTER_;} fit {return FIT_;} fits {return FITS_;} diff --git a/tksao/frame/parser.C b/tksao/frame/parser.C index 5d1fd4f..38c1d34 100644 --- a/tksao/frame/parser.C +++ b/tksao/frame/parser.C @@ -191,227 +191,228 @@ FACTOR_ = 372, FALSE_ = 373, FILE_ = 374, - FILTER_ = 375, - FIT_ = 376, - FITS_ = 377, - FITSY_ = 378, - FIXED_ = 379, - FK4_ = 380, - FK4_NO_E_ = 381, - FK5_ = 382, - FONT_ = 383, - FRONT_ = 384, - FULL_ = 385, - FUNCTION_ = 386, - GALACTIC_ = 387, - GAUSSIAN_ = 388, - GET_ = 389, - GLOBAL_ = 390, - GRAPHICS_ = 391, - GRAY_ = 392, - GRID_ = 393, - GZ_ = 394, - HANDLE_ = 395, - HAS_ = 396, - HEAD_ = 397, - HEADER_ = 398, - HEIGHT_ = 399, - HELIOECLIPTIC_ = 400, - HIDE_ = 401, - HIGHLITE_ = 402, - HISTEQU_ = 403, - HISTOGRAM_ = 404, - HORIZONTAL_ = 405, - ICRS_ = 406, - ID_ = 407, - IIS_ = 408, - IMAGE_ = 409, - INCLUDE_ = 410, - INCR_ = 411, - INFO_ = 412, - INTEGER_ = 413, - ITERATION_ = 414, - IRAF_ = 415, - IRAFMIN_ = 416, - J2000_ = 417, - KEY_ = 418, - KEYWORD_ = 419, - LABEL_ = 420, - LENGTH_ = 421, - LEVEL_ = 422, - LITTLE_ = 423, - LITTLEENDIAN_ = 424, - LINE_ = 425, - LINEAR_ = 426, - LIST_ = 427, - LOAD_ = 428, - LOCAL_ = 429, - LOG_ = 430, - MACOSX_ = 431, - MAGNIFIER_ = 432, - MATCH_ = 433, - MAP_ = 434, - MARK_ = 435, - MARKER_ = 436, - MASK_ = 437, - MESSAGE_ = 438, - METHOD_ = 439, - MINMAX_ = 440, - MIP_ = 441, - MMAP_ = 442, - MMAPINCR_ = 443, - MOSAIC_ = 444, - MODE_ = 445, - MOTION_ = 446, - MOVE_ = 447, - NAME_ = 448, - NAN_ = 449, - NATIVE_ = 450, - NAXES_ = 451, - NEW_ = 452, - NEXT_ = 453, - NO_ = 454, - NONE_ = 455, - NOW_ = 456, - NRRD_ = 457, - NUMBER_ = 458, - OBJECT_ = 459, - OFF_ = 460, - ON_ = 461, - ONLY_ = 462, - OPTION_ = 463, - ORIENT_ = 464, - PAN_ = 465, - PANNER_ = 466, - PARSER_ = 467, - PASTE_ = 468, - PERF_ = 469, - PHOTO_ = 470, - PHYSICAL_ = 471, - PIXEL_ = 472, - PLOT2D_ = 473, - PLOT3D_ = 474, - POINT_ = 475, - POINTER_ = 476, - POLYGON_ = 477, - POSTSCRIPT_ = 478, - POW_ = 479, - PRINT_ = 480, - PRESERVE_ = 481, - PROJECTION_ = 482, - PROPERTY_ = 483, - PUBLICATION_ = 484, - PROS_ = 485, - QUERY_ = 486, - RADIAL_ = 487, - RADIUS_ = 488, - REGION_ = 489, - REPLACE_ = 490, - RESAMPLE_ = 491, - RESET_ = 492, - RESOLUTION_ = 493, - RGB_ = 494, - ROOT_ = 495, - ROTATE_ = 496, - RULER_ = 497, - SAMPLE_ = 498, - SAOIMAGE_ = 499, - SAOTNG_ = 500, - SAVE_ = 501, - SCALE_ = 502, - SCAN_ = 503, - SCIENTIFIC_ = 504, - SCOPE_ = 505, - SEGMENT_ = 506, - SELECT_ = 507, - SET_ = 508, - SEXAGESIMAL_ = 509, - SHAPE_ = 510, - SHARED_ = 511, - SHIFT_ = 512, - SHMID_ = 513, - SHOW_ = 514, - SINH_ = 515, - SIZE_ = 516, - SLICE_ = 517, - SMMAP_ = 518, - SMOOTH_ = 519, - SOCKET_ = 520, - SOCKETGZ_ = 521, - SOURCE_ = 522, - SQRT_ = 523, - SQUARED_ = 524, - SSHARED_ = 525, - STATS_ = 526, - STATUS_ = 527, - SUPERGALACTIC_ = 528, - SUM_ = 529, - SYSTEM_ = 530, - TABLE_ = 531, - TAG_ = 532, - TEMPLATE_ = 533, - TEXT_ = 534, - THREADS_ = 535, - THREED_ = 536, - THRESHOLD_ = 537, - THICK_ = 538, - TRANSPARENCY_ = 539, - TO_ = 540, - TOGGLE_ = 541, - TOPHAT_ = 542, - TRUE_ = 543, - TYPE_ = 544, - UNDO_ = 545, - UNHIGHLITE_ = 546, - UNLOAD_ = 547, - UNSELECT_ = 548, - UPDATE_ = 549, - USER_ = 550, - VALUE_ = 551, - VAR_ = 552, - VIEW_ = 553, - VECTOR_ = 554, - VERSION_ = 555, - VERTEX_ = 556, - VERTICAL_ = 557, - WARP_ = 558, - WCS_ = 559, - WCSA_ = 560, - WCSB_ = 561, - WCSC_ = 562, - WCSD_ = 563, - WCSE_ = 564, - WCSF_ = 565, - WCSG_ = 566, - WCSH_ = 567, - WCSI_ = 568, - WCSJ_ = 569, - WCSK_ = 570, - WCSL_ = 571, - WCSM_ = 572, - WCSN_ = 573, - WCSO_ = 574, - WCSP_ = 575, - WCSQ_ = 576, - WCSR_ = 577, - WCSS_ = 578, - WCST_ = 579, - WCSU_ = 580, - WCSV_ = 581, - WCSW_ = 582, - WCSX_ = 583, - WCSY_ = 584, - WCSZ_ = 585, - WCS0_ = 586, - WFPC2_ = 587, - WIDTH_ = 588, - WIN32_ = 589, - XML_ = 590, - XY_ = 591, - YES_ = 592, - ZMAX_ = 593, - ZSCALE_ = 594, - ZOOM_ = 595 + FILL_ = 375, + FILTER_ = 376, + FIT_ = 377, + FITS_ = 378, + FITSY_ = 379, + FIXED_ = 380, + FK4_ = 381, + FK4_NO_E_ = 382, + FK5_ = 383, + FONT_ = 384, + FRONT_ = 385, + FULL_ = 386, + FUNCTION_ = 387, + GALACTIC_ = 388, + GAUSSIAN_ = 389, + GET_ = 390, + GLOBAL_ = 391, + GRAPHICS_ = 392, + GRAY_ = 393, + GRID_ = 394, + GZ_ = 395, + HANDLE_ = 396, + HAS_ = 397, + HEAD_ = 398, + HEADER_ = 399, + HEIGHT_ = 400, + HELIOECLIPTIC_ = 401, + HIDE_ = 402, + HIGHLITE_ = 403, + HISTEQU_ = 404, + HISTOGRAM_ = 405, + HORIZONTAL_ = 406, + ICRS_ = 407, + ID_ = 408, + IIS_ = 409, + IMAGE_ = 410, + INCLUDE_ = 411, + INCR_ = 412, + INFO_ = 413, + INTEGER_ = 414, + ITERATION_ = 415, + IRAF_ = 416, + IRAFMIN_ = 417, + J2000_ = 418, + KEY_ = 419, + KEYWORD_ = 420, + LABEL_ = 421, + LENGTH_ = 422, + LEVEL_ = 423, + LITTLE_ = 424, + LITTLEENDIAN_ = 425, + LINE_ = 426, + LINEAR_ = 427, + LIST_ = 428, + LOAD_ = 429, + LOCAL_ = 430, + LOG_ = 431, + MACOSX_ = 432, + MAGNIFIER_ = 433, + MATCH_ = 434, + MAP_ = 435, + MARK_ = 436, + MARKER_ = 437, + MASK_ = 438, + MESSAGE_ = 439, + METHOD_ = 440, + MINMAX_ = 441, + MIP_ = 442, + MMAP_ = 443, + MMAPINCR_ = 444, + MOSAIC_ = 445, + MODE_ = 446, + MOTION_ = 447, + MOVE_ = 448, + NAME_ = 449, + NAN_ = 450, + NATIVE_ = 451, + NAXES_ = 452, + NEW_ = 453, + NEXT_ = 454, + NO_ = 455, + NONE_ = 456, + NOW_ = 457, + NRRD_ = 458, + NUMBER_ = 459, + OBJECT_ = 460, + OFF_ = 461, + ON_ = 462, + ONLY_ = 463, + OPTION_ = 464, + ORIENT_ = 465, + PAN_ = 466, + PANNER_ = 467, + PARSER_ = 468, + PASTE_ = 469, + PERF_ = 470, + PHOTO_ = 471, + PHYSICAL_ = 472, + PIXEL_ = 473, + PLOT2D_ = 474, + PLOT3D_ = 475, + POINT_ = 476, + POINTER_ = 477, + POLYGON_ = 478, + POSTSCRIPT_ = 479, + POW_ = 480, + PRINT_ = 481, + PRESERVE_ = 482, + PROJECTION_ = 483, + PROPERTY_ = 484, + PUBLICATION_ = 485, + PROS_ = 486, + QUERY_ = 487, + RADIAL_ = 488, + RADIUS_ = 489, + REGION_ = 490, + REPLACE_ = 491, + RESAMPLE_ = 492, + RESET_ = 493, + RESOLUTION_ = 494, + RGB_ = 495, + ROOT_ = 496, + ROTATE_ = 497, + RULER_ = 498, + SAMPLE_ = 499, + SAOIMAGE_ = 500, + SAOTNG_ = 501, + SAVE_ = 502, + SCALE_ = 503, + SCAN_ = 504, + SCIENTIFIC_ = 505, + SCOPE_ = 506, + SEGMENT_ = 507, + SELECT_ = 508, + SET_ = 509, + SEXAGESIMAL_ = 510, + SHAPE_ = 511, + SHARED_ = 512, + SHIFT_ = 513, + SHMID_ = 514, + SHOW_ = 515, + SINH_ = 516, + SIZE_ = 517, + SLICE_ = 518, + SMMAP_ = 519, + SMOOTH_ = 520, + SOCKET_ = 521, + SOCKETGZ_ = 522, + SOURCE_ = 523, + SQRT_ = 524, + SQUARED_ = 525, + SSHARED_ = 526, + STATS_ = 527, + STATUS_ = 528, + SUPERGALACTIC_ = 529, + SUM_ = 530, + SYSTEM_ = 531, + TABLE_ = 532, + TAG_ = 533, + TEMPLATE_ = 534, + TEXT_ = 535, + THREADS_ = 536, + THREED_ = 537, + THRESHOLD_ = 538, + THICK_ = 539, + TRANSPARENCY_ = 540, + TO_ = 541, + TOGGLE_ = 542, + TOPHAT_ = 543, + TRUE_ = 544, + TYPE_ = 545, + UNDO_ = 546, + UNHIGHLITE_ = 547, + UNLOAD_ = 548, + UNSELECT_ = 549, + UPDATE_ = 550, + USER_ = 551, + VALUE_ = 552, + VAR_ = 553, + VIEW_ = 554, + VECTOR_ = 555, + VERSION_ = 556, + VERTEX_ = 557, + VERTICAL_ = 558, + WARP_ = 559, + WCS_ = 560, + WCSA_ = 561, + WCSB_ = 562, + WCSC_ = 563, + WCSD_ = 564, + WCSE_ = 565, + WCSF_ = 566, + WCSG_ = 567, + WCSH_ = 568, + WCSI_ = 569, + WCSJ_ = 570, + WCSK_ = 571, + WCSL_ = 572, + WCSM_ = 573, + WCSN_ = 574, + WCSO_ = 575, + WCSP_ = 576, + WCSQ_ = 577, + WCSR_ = 578, + WCSS_ = 579, + WCST_ = 580, + WCSU_ = 581, + WCSV_ = 582, + WCSW_ = 583, + WCSX_ = 584, + WCSY_ = 585, + WCSZ_ = 586, + WCS0_ = 587, + WFPC2_ = 588, + WIDTH_ = 589, + WIN32_ = 590, + XML_ = 591, + XY_ = 592, + YES_ = 593, + ZMAX_ = 594, + ZSCALE_ = 595, + ZOOM_ = 596 }; #endif /* Tokens. */ @@ -532,227 +533,228 @@ #define FACTOR_ 372 #define FALSE_ 373 #define FILE_ 374 -#define FILTER_ 375 -#define FIT_ 376 -#define FITS_ 377 -#define FITSY_ 378 -#define FIXED_ 379 -#define FK4_ 380 -#define FK4_NO_E_ 381 -#define FK5_ 382 -#define FONT_ 383 -#define FRONT_ 384 -#define FULL_ 385 -#define FUNCTION_ 386 -#define GALACTIC_ 387 -#define GAUSSIAN_ 388 -#define GET_ 389 -#define GLOBAL_ 390 -#define GRAPHICS_ 391 -#define GRAY_ 392 -#define GRID_ 393 -#define GZ_ 394 -#define HANDLE_ 395 -#define HAS_ 396 -#define HEAD_ 397 -#define HEADER_ 398 -#define HEIGHT_ 399 -#define HELIOECLIPTIC_ 400 -#define HIDE_ 401 -#define HIGHLITE_ 402 -#define HISTEQU_ 403 -#define HISTOGRAM_ 404 -#define HORIZONTAL_ 405 -#define ICRS_ 406 -#define ID_ 407 -#define IIS_ 408 -#define IMAGE_ 409 -#define INCLUDE_ 410 -#define INCR_ 411 -#define INFO_ 412 -#define INTEGER_ 413 -#define ITERATION_ 414 -#define IRAF_ 415 -#define IRAFMIN_ 416 -#define J2000_ 417 -#define KEY_ 418 -#define KEYWORD_ 419 -#define LABEL_ 420 -#define LENGTH_ 421 -#define LEVEL_ 422 -#define LITTLE_ 423 -#define LITTLEENDIAN_ 424 -#define LINE_ 425 -#define LINEAR_ 426 -#define LIST_ 427 -#define LOAD_ 428 -#define LOCAL_ 429 -#define LOG_ 430 -#define MACOSX_ 431 -#define MAGNIFIER_ 432 -#define MATCH_ 433 -#define MAP_ 434 -#define MARK_ 435 -#define MARKER_ 436 -#define MASK_ 437 -#define MESSAGE_ 438 -#define METHOD_ 439 -#define MINMAX_ 440 -#define MIP_ 441 -#define MMAP_ 442 -#define MMAPINCR_ 443 -#define MOSAIC_ 444 -#define MODE_ 445 -#define MOTION_ 446 -#define MOVE_ 447 -#define NAME_ 448 -#define NAN_ 449 -#define NATIVE_ 450 -#define NAXES_ 451 -#define NEW_ 452 -#define NEXT_ 453 -#define NO_ 454 -#define NONE_ 455 -#define NOW_ 456 -#define NRRD_ 457 -#define NUMBER_ 458 -#define OBJECT_ 459 -#define OFF_ 460 -#define ON_ 461 -#define ONLY_ 462 -#define OPTION_ 463 -#define ORIENT_ 464 -#define PAN_ 465 -#define PANNER_ 466 -#define PARSER_ 467 -#define PASTE_ 468 -#define PERF_ 469 -#define PHOTO_ 470 -#define PHYSICAL_ 471 -#define PIXEL_ 472 -#define PLOT2D_ 473 -#define PLOT3D_ 474 -#define POINT_ 475 -#define POINTER_ 476 -#define POLYGON_ 477 -#define POSTSCRIPT_ 478 -#define POW_ 479 -#define PRINT_ 480 -#define PRESERVE_ 481 -#define PROJECTION_ 482 -#define PROPERTY_ 483 -#define PUBLICATION_ 484 -#define PROS_ 485 -#define QUERY_ 486 -#define RADIAL_ 487 -#define RADIUS_ 488 -#define REGION_ 489 -#define REPLACE_ 490 -#define RESAMPLE_ 491 -#define RESET_ 492 -#define RESOLUTION_ 493 -#define RGB_ 494 -#define ROOT_ 495 -#define ROTATE_ 496 -#define RULER_ 497 -#define SAMPLE_ 498 -#define SAOIMAGE_ 499 -#define SAOTNG_ 500 -#define SAVE_ 501 -#define SCALE_ 502 -#define SCAN_ 503 -#define SCIENTIFIC_ 504 -#define SCOPE_ 505 -#define SEGMENT_ 506 -#define SELECT_ 507 -#define SET_ 508 -#define SEXAGESIMAL_ 509 -#define SHAPE_ 510 -#define SHARED_ 511 -#define SHIFT_ 512 -#define SHMID_ 513 -#define SHOW_ 514 -#define SINH_ 515 -#define SIZE_ 516 -#define SLICE_ 517 -#define SMMAP_ 518 -#define SMOOTH_ 519 -#define SOCKET_ 520 -#define SOCKETGZ_ 521 -#define SOURCE_ 522 -#define SQRT_ 523 -#define SQUARED_ 524 -#define SSHARED_ 525 -#define STATS_ 526 -#define STATUS_ 527 -#define SUPERGALACTIC_ 528 -#define SUM_ 529 -#define SYSTEM_ 530 -#define TABLE_ 531 -#define TAG_ 532 -#define TEMPLATE_ 533 -#define TEXT_ 534 -#define THREADS_ 535 -#define THREED_ 536 -#define THRESHOLD_ 537 -#define THICK_ 538 -#define TRANSPARENCY_ 539 -#define TO_ 540 -#define TOGGLE_ 541 -#define TOPHAT_ 542 -#define TRUE_ 543 -#define TYPE_ 544 -#define UNDO_ 545 -#define UNHIGHLITE_ 546 -#define UNLOAD_ 547 -#define UNSELECT_ 548 -#define UPDATE_ 549 -#define USER_ 550 -#define VALUE_ 551 -#define VAR_ 552 -#define VIEW_ 553 -#define VECTOR_ 554 -#define VERSION_ 555 -#define VERTEX_ 556 -#define VERTICAL_ 557 -#define WARP_ 558 -#define WCS_ 559 -#define WCSA_ 560 -#define WCSB_ 561 -#define WCSC_ 562 -#define WCSD_ 563 -#define WCSE_ 564 -#define WCSF_ 565 -#define WCSG_ 566 -#define WCSH_ 567 -#define WCSI_ 568 -#define WCSJ_ 569 -#define WCSK_ 570 -#define WCSL_ 571 -#define WCSM_ 572 -#define WCSN_ 573 -#define WCSO_ 574 -#define WCSP_ 575 -#define WCSQ_ 576 -#define WCSR_ 577 -#define WCSS_ 578 -#define WCST_ 579 -#define WCSU_ 580 -#define WCSV_ 581 -#define WCSW_ 582 -#define WCSX_ 583 -#define WCSY_ 584 -#define WCSZ_ 585 -#define WCS0_ 586 -#define WFPC2_ 587 -#define WIDTH_ 588 -#define WIN32_ 589 -#define XML_ 590 -#define XY_ 591 -#define YES_ 592 -#define ZMAX_ 593 -#define ZSCALE_ 594 -#define ZOOM_ 595 +#define FILL_ 375 +#define FILTER_ 376 +#define FIT_ 377 +#define FITS_ 378 +#define FITSY_ 379 +#define FIXED_ 380 +#define FK4_ 381 +#define FK4_NO_E_ 382 +#define FK5_ 383 +#define FONT_ 384 +#define FRONT_ 385 +#define FULL_ 386 +#define FUNCTION_ 387 +#define GALACTIC_ 388 +#define GAUSSIAN_ 389 +#define GET_ 390 +#define GLOBAL_ 391 +#define GRAPHICS_ 392 +#define GRAY_ 393 +#define GRID_ 394 +#define GZ_ 395 +#define HANDLE_ 396 +#define HAS_ 397 +#define HEAD_ 398 +#define HEADER_ 399 +#define HEIGHT_ 400 +#define HELIOECLIPTIC_ 401 +#define HIDE_ 402 +#define HIGHLITE_ 403 +#define HISTEQU_ 404 +#define HISTOGRAM_ 405 +#define HORIZONTAL_ 406 +#define ICRS_ 407 +#define ID_ 408 +#define IIS_ 409 +#define IMAGE_ 410 +#define INCLUDE_ 411 +#define INCR_ 412 +#define INFO_ 413 +#define INTEGER_ 414 +#define ITERATION_ 415 +#define IRAF_ 416 +#define IRAFMIN_ 417 +#define J2000_ 418 +#define KEY_ 419 +#define KEYWORD_ 420 +#define LABEL_ 421 +#define LENGTH_ 422 +#define LEVEL_ 423 +#define LITTLE_ 424 +#define LITTLEENDIAN_ 425 +#define LINE_ 426 +#define LINEAR_ 427 +#define LIST_ 428 +#define LOAD_ 429 +#define LOCAL_ 430 +#define LOG_ 431 +#define MACOSX_ 432 +#define MAGNIFIER_ 433 +#define MATCH_ 434 +#define MAP_ 435 +#define MARK_ 436 +#define MARKER_ 437 +#define MASK_ 438 +#define MESSAGE_ 439 +#define METHOD_ 440 +#define MINMAX_ 441 +#define MIP_ 442 +#define MMAP_ 443 +#define MMAPINCR_ 444 +#define MOSAIC_ 445 +#define MODE_ 446 +#define MOTION_ 447 +#define MOVE_ 448 +#define NAME_ 449 +#define NAN_ 450 +#define NATIVE_ 451 +#define NAXES_ 452 +#define NEW_ 453 +#define NEXT_ 454 +#define NO_ 455 +#define NONE_ 456 +#define NOW_ 457 +#define NRRD_ 458 +#define NUMBER_ 459 +#define OBJECT_ 460 +#define OFF_ 461 +#define ON_ 462 +#define ONLY_ 463 +#define OPTION_ 464 +#define ORIENT_ 465 +#define PAN_ 466 +#define PANNER_ 467 +#define PARSER_ 468 +#define PASTE_ 469 +#define PERF_ 470 +#define PHOTO_ 471 +#define PHYSICAL_ 472 +#define PIXEL_ 473 +#define PLOT2D_ 474 +#define PLOT3D_ 475 +#define POINT_ 476 +#define POINTER_ 477 +#define POLYGON_ 478 +#define POSTSCRIPT_ 479 +#define POW_ 480 +#define PRINT_ 481 +#define PRESERVE_ 482 +#define PROJECTION_ 483 +#define PROPERTY_ 484 +#define PUBLICATION_ 485 +#define PROS_ 486 +#define QUERY_ 487 +#define RADIAL_ 488 +#define RADIUS_ 489 +#define REGION_ 490 +#define REPLACE_ 491 +#define RESAMPLE_ 492 +#define RESET_ 493 +#define RESOLUTION_ 494 +#define RGB_ 495 +#define ROOT_ 496 +#define ROTATE_ 497 +#define RULER_ 498 +#define SAMPLE_ 499 +#define SAOIMAGE_ 500 +#define SAOTNG_ 501 +#define SAVE_ 502 +#define SCALE_ 503 +#define SCAN_ 504 +#define SCIENTIFIC_ 505 +#define SCOPE_ 506 +#define SEGMENT_ 507 +#define SELECT_ 508 +#define SET_ 509 +#define SEXAGESIMAL_ 510 +#define SHAPE_ 511 +#define SHARED_ 512 +#define SHIFT_ 513 +#define SHMID_ 514 +#define SHOW_ 515 +#define SINH_ 516 +#define SIZE_ 517 +#define SLICE_ 518 +#define SMMAP_ 519 +#define SMOOTH_ 520 +#define SOCKET_ 521 +#define SOCKETGZ_ 522 +#define SOURCE_ 523 +#define SQRT_ 524 +#define SQUARED_ 525 +#define SSHARED_ 526 +#define STATS_ 527 +#define STATUS_ 528 +#define SUPERGALACTIC_ 529 +#define SUM_ 530 +#define SYSTEM_ 531 +#define TABLE_ 532 +#define TAG_ 533 +#define TEMPLATE_ 534 +#define TEXT_ 535 +#define THREADS_ 536 +#define THREED_ 537 +#define THRESHOLD_ 538 +#define THICK_ 539 +#define TRANSPARENCY_ 540 +#define TO_ 541 +#define TOGGLE_ 542 +#define TOPHAT_ 543 +#define TRUE_ 544 +#define TYPE_ 545 +#define UNDO_ 546 +#define UNHIGHLITE_ 547 +#define UNLOAD_ 548 +#define UNSELECT_ 549 +#define UPDATE_ 550 +#define USER_ 551 +#define VALUE_ 552 +#define VAR_ 553 +#define VIEW_ 554 +#define VECTOR_ 555 +#define VERSION_ 556 +#define VERTEX_ 557 +#define VERTICAL_ 558 +#define WARP_ 559 +#define WCS_ 560 +#define WCSA_ 561 +#define WCSB_ 562 +#define WCSC_ 563 +#define WCSD_ 564 +#define WCSE_ 565 +#define WCSF_ 566 +#define WCSG_ 567 +#define WCSH_ 568 +#define WCSI_ 569 +#define WCSJ_ 570 +#define WCSK_ 571 +#define WCSL_ 572 +#define WCSM_ 573 +#define WCSN_ 574 +#define WCSO_ 575 +#define WCSP_ 576 +#define WCSQ_ 577 +#define WCSR_ 578 +#define WCSS_ 579 +#define WCST_ 580 +#define WCSU_ 581 +#define WCSV_ 582 +#define WCSW_ 583 +#define WCSX_ 584 +#define WCSY_ 585 +#define WCSZ_ 586 +#define WCS0_ 587 +#define WFPC2_ 588 +#define WIDTH_ 589 +#define WIN32_ 590 +#define XML_ 591 +#define XY_ 592 +#define YES_ 593 +#define ZMAX_ 594 +#define ZSCALE_ 595 +#define ZOOM_ 596 @@ -832,7 +834,7 @@ typedef union YYSTYPE int dash[2]; } /* Line 193 of yacc.c. */ -#line 836 "frame/parser.C" +#line 838 "frame/parser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -845,7 +847,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 849 "frame/parser.C" +#line 851 "frame/parser.C" #ifdef short # undef short @@ -1060,20 +1062,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 354 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 5475 +#define YYLAST 5541 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 345 +#define YYNTOKENS 346 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 216 /* YYNRULES -- Number of rules. */ -#define YYNRULES 1262 +#define YYNRULES 1270 /* YYNRULES -- Number of states. */ -#define YYNSTATES 2802 +#define YYNSTATES 2815 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 595 +#define YYMAXUTOK 596 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -1087,9 +1089,9 @@ static const yytype_uint16 yytranslate[] = 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, 344, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 342, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 343, 341, + 2, 345, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 343, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 344, 342, 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, @@ -1140,7 +1142,7 @@ static const yytype_uint16 yytranslate[] = 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 340 + 335, 336, 337, 338, 339, 340, 341 }; #if YYDEBUG @@ -1222,668 +1224,673 @@ static const yytype_uint16 yyprhs[] = 2332, 2335, 2339, 2343, 2346, 2359, 2362, 2365, 2367, 2371, 2376, 2379, 2380, 2384, 2386, 2388, 2391, 2394, 2397, 2400, 2403, 2408, 2413, 2418, 2422, 2427, 2433, 2441, 2450, 2457, - 2466, 2476, 2483, 2490, 2498, 2509, 2521, 2534, 2544, 2550, - 2556, 2563, 2567, 2573, 2579, 2585, 2592, 2598, 2603, 2613, - 2624, 2636, 2646, 2653, 2660, 2667, 2674, 2681, 2688, 2695, - 2702, 2709, 2717, 2725, 2728, 2733, 2738, 2743, 2748, 2754, - 2759, 2764, 2770, 2776, 2780, 2785, 2790, 2795, 2802, 2810, - 2819, 2829, 2836, 2847, 2859, 2872, 2882, 2886, 2889, 2893, - 2899, 2906, 2914, 2919, 2923, 2927, 2934, 2941, 2948, 2956, - 2963, 2971, 2976, 2981, 2988, 2998, 3003, 3007, 3014, 3022, - 3030, 3033, 3037, 3041, 3045, 3050, 3053, 3056, 3061, 3069, - 3080, 3084, 3086, 3090, 3093, 3096, 3099, 3102, 3106, 3112, - 3117, 3123, 3126, 3134, 3138, 3141, 3144, 3148, 3151, 3154, - 3157, 3161, 3164, 3168, 3173, 3177, 3181, 3187, 3194, 3199, - 3202, 3206, 3209, 3212, 3217, 3221, 3225, 3228, 3232, 3234, - 3237, 3239, 3242, 3245, 3248, 3250, 3252, 3254, 3256, 3259, - 3261, 3264, 3267, 3269, 3272, 3275, 3277, 3280, 3282, 3284, - 3286, 3288, 3290, 3292, 3294, 3296, 3297, 3299, 3302, 3305, - 3308, 3312, 3318, 3326, 3334, 3341, 3348, 3355, 3362, 3368, - 3375, 3382, 3389, 3396, 3403, 3410, 3417, 3428, 3436, 3444, - 3452, 3462, 3472, 3483, 3496, 3509, 3512, 3515, 3519, 3524, - 3529, 3534, 3537, 3542, 3547, 3549, 3551, 3553, 3555, 3557, - 3559, 3561, 3563, 3566, 3568, 3570, 3572, 3576, 3580, 3585, - 3592, 3603, 3611, 3619, 3625, 3630, 3637, 3648, 3656, 3664, - 3670, 3673, 3676, 3680, 3685, 3691, 3697, 3703, 3707, 3712, - 3718, 3724, 3730, 3736, 3739, 3743, 3747, 3753, 3757, 3761, - 3765, 3770, 3776, 3782, 3788, 3794, 3798, 3803, 3809, 3815, - 3818, 3821, 3825, 3831, 3838, 3845, 3849, 3853, 3860, 3866, - 3872, 3875, 3879, 3885, 3892, 3896, 3899, 3902, 3906, 3909, - 3913, 3916, 3920, 3926, 3933, 3936, 3939, 3942, 3944, 3949, - 3954, 3956, 3959, 3962, 3965, 3968, 3971, 3974, 3977, 3981, - 3984, 3988, 3991, 3995, 3997, 3999, 4001, 4003, 4005, 4006, - 4009, 4010, 4013, 4014, 4016, 4017, 4018, 4020, 4022, 4024, - 4026, 4028, 4036, 4045, 4048, 4053, 4056, 4061, 4068, 4071, - 4073, 4075, 4079, 4083, 4085, 4089, 4094, 4097, 4099, 4103, - 4107, 4112, 4116, 4120, 4124, 4126, 4128, 4130, 4132, 4134, - 4136, 4138, 4140, 4142, 4144, 4146, 4148, 4150, 4152, 4155, - 4156, 4157, 4160, 4162, 4166, 4168, 4172, 4174, 4177, 4180, - 4182, 4186, 4187, 4188, 4191, 4194, 4196, 4200, 4206, 4208, - 4211, 4214, 4217, 4219, 4221, 4223, 4225, 4230, 4233, 4237, - 4241, 4244, 4248, 4251, 4254, 4257, 4261, 4265, 4269, 4272, - 4276, 4278, 4282, 4286, 4288, 4291, 4294, 4297, 4300, 4302, - 4304, 4306, 4308, 4311, 4314, 4318, 4322, 4324, 4327, 4331, - 4335, 4337, 4340, 4342, 4344, 4346, 4348, 4350, 4353, 4356, - 4361, 4363, 4366, 4369, 4372, 4376, 4378, 4380, 4382, 4385, - 4388, 4391, 4394, 4397, 4401, 4405, 4409, 4413, 4417, 4421, - 4425, 4427, 4430, 4433, 4436, 4440, 4443, 4447, 4451, 4454, - 4457, 4460, 4463, 4466, 4469, 4472, 4475, 4478, 4481, 4484, - 4487, 4490, 4493, 4497, 4501, 4505, 4508, 4511, 4514, 4517, - 4520, 4523, 4526, 4529, 4532, 4535, 4538, 4541, 4545, 4549, - 4553, 4558, 4561, 4563, 4565, 4567, 4569, 4570, 4576, 4578, - 4585, 4589, 4591, 4594, 4597, 4601, 4604, 4608, 4612, 4615, - 4618, 4621, 4624, 4627, 4630, 4634, 4637, 4640, 4644, 4646, - 4650, 4655, 4657, 4660, 4666, 4673, 4680, 4683, 4685, 4688, - 4691, 4697, 4704 + 2462, 2471, 2481, 2488, 2495, 2503, 2514, 2526, 2539, 2549, + 2555, 2560, 2566, 2573, 2577, 2583, 2589, 2595, 2602, 2608, + 2613, 2623, 2634, 2646, 2656, 2663, 2670, 2677, 2684, 2691, + 2698, 2705, 2712, 2719, 2727, 2735, 2738, 2743, 2748, 2753, + 2758, 2764, 2769, 2774, 2780, 2786, 2790, 2795, 2800, 2805, + 2810, 2817, 2825, 2834, 2844, 2851, 2862, 2874, 2887, 2897, + 2901, 2904, 2908, 2914, 2921, 2929, 2934, 2938, 2942, 2949, + 2956, 2963, 2971, 2978, 2986, 2991, 2996, 3001, 3008, 3018, + 3023, 3027, 3034, 3042, 3050, 3053, 3057, 3061, 3065, 3070, + 3073, 3076, 3081, 3089, 3100, 3104, 3106, 3110, 3113, 3116, + 3119, 3122, 3126, 3132, 3137, 3143, 3146, 3154, 3158, 3161, + 3164, 3168, 3171, 3174, 3177, 3181, 3184, 3188, 3193, 3197, + 3201, 3207, 3214, 3219, 3222, 3226, 3229, 3232, 3237, 3241, + 3245, 3248, 3252, 3254, 3257, 3259, 3262, 3265, 3268, 3270, + 3272, 3274, 3276, 3279, 3281, 3284, 3287, 3289, 3292, 3295, + 3297, 3300, 3302, 3304, 3306, 3308, 3310, 3312, 3314, 3316, + 3317, 3319, 3322, 3325, 3328, 3332, 3338, 3346, 3354, 3361, + 3368, 3375, 3382, 3388, 3395, 3402, 3409, 3416, 3423, 3430, + 3437, 3448, 3456, 3464, 3472, 3482, 3492, 3503, 3516, 3529, + 3532, 3535, 3539, 3544, 3549, 3554, 3557, 3562, 3567, 3569, + 3571, 3573, 3575, 3577, 3579, 3581, 3583, 3586, 3588, 3590, + 3592, 3596, 3600, 3605, 3612, 3623, 3631, 3639, 3645, 3650, + 3657, 3668, 3676, 3684, 3690, 3693, 3696, 3700, 3705, 3711, + 3715, 3721, 3727, 3731, 3736, 3742, 3748, 3754, 3758, 3764, + 3767, 3771, 3775, 3781, 3785, 3789, 3793, 3798, 3804, 3810, + 3814, 3820, 3826, 3830, 3835, 3841, 3847, 3850, 3853, 3857, + 3863, 3870, 3877, 3881, 3885, 3889, 3896, 3902, 3908, 3911, + 3915, 3921, 3928, 3932, 3935, 3938, 3942, 3945, 3949, 3952, + 3956, 3962, 3969, 3972, 3975, 3978, 3980, 3985, 3990, 3992, + 3995, 3998, 4001, 4004, 4007, 4010, 4013, 4017, 4020, 4024, + 4027, 4031, 4033, 4035, 4037, 4039, 4041, 4042, 4045, 4046, + 4049, 4050, 4052, 4053, 4054, 4056, 4058, 4060, 4062, 4064, + 4072, 4081, 4084, 4089, 4092, 4097, 4104, 4107, 4109, 4111, + 4115, 4119, 4121, 4125, 4130, 4133, 4135, 4139, 4143, 4148, + 4152, 4156, 4160, 4162, 4164, 4166, 4168, 4170, 4172, 4174, + 4176, 4178, 4180, 4182, 4184, 4186, 4188, 4191, 4192, 4193, + 4196, 4198, 4202, 4204, 4208, 4210, 4213, 4216, 4218, 4222, + 4223, 4224, 4227, 4230, 4232, 4236, 4242, 4244, 4247, 4250, + 4253, 4255, 4257, 4259, 4261, 4266, 4269, 4273, 4277, 4280, + 4284, 4287, 4290, 4293, 4297, 4301, 4305, 4308, 4312, 4314, + 4318, 4322, 4324, 4327, 4330, 4333, 4336, 4338, 4340, 4342, + 4344, 4347, 4350, 4354, 4358, 4360, 4363, 4367, 4371, 4373, + 4376, 4378, 4380, 4382, 4384, 4386, 4389, 4392, 4397, 4399, + 4402, 4405, 4408, 4412, 4414, 4416, 4418, 4421, 4424, 4427, + 4430, 4433, 4437, 4441, 4445, 4449, 4453, 4457, 4461, 4463, + 4466, 4469, 4472, 4476, 4479, 4483, 4487, 4490, 4493, 4496, + 4499, 4502, 4505, 4508, 4511, 4514, 4517, 4520, 4523, 4526, + 4529, 4533, 4537, 4541, 4544, 4547, 4550, 4553, 4556, 4559, + 4562, 4565, 4568, 4571, 4574, 4577, 4581, 4585, 4589, 4594, + 4597, 4599, 4601, 4603, 4605, 4606, 4612, 4614, 4621, 4625, + 4627, 4630, 4633, 4637, 4640, 4644, 4648, 4651, 4654, 4657, + 4660, 4663, 4666, 4670, 4673, 4676, 4680, 4682, 4686, 4691, + 4693, 4696, 4702, 4709, 4716, 4719, 4721, 4724, 4727, 4733, + 4740 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 346, 0, -1, 96, 348, -1, 20, 378, -1, 44, - 380, -1, 41, 66, 5, -1, 46, 385, -1, 59, - -1, 64, -1, 65, 387, -1, 67, 277, 5, -1, - 68, 392, -1, 69, 394, -1, 77, 395, -1, 84, - 404, -1, 86, 406, -1, 87, 407, -1, 95, 349, - -1, 123, 408, -1, 134, 409, -1, 138, 451, -1, - 141, 454, -1, 146, -1, 147, 349, -1, 153, 460, - -1, 160, 16, 4, -1, 173, 463, -1, 176, 481, - -1, 177, 482, -1, 178, 483, -1, 181, 499, 484, - -1, 182, 518, -1, 194, 66, 5, -1, 209, 519, - -1, 210, 520, -1, 211, 523, -1, 231, 88, -1, - 223, 524, -1, 237, -1, 234, 499, 526, -1, 239, - 531, -1, 241, 532, -1, 246, 534, -1, 259, -1, - 264, 549, -1, 280, 4, -1, 281, 373, -1, 292, - -1, 294, 551, -1, 300, -1, 303, 553, -1, 304, - 554, -1, 334, 558, -1, 340, 559, -1, 3, -1, - 4, -1, 206, -1, 205, -1, 29, 349, -1, 189, - 349, -1, 212, 349, -1, 214, 349, -1, 304, 349, - -1, 44, 349, -1, 46, 349, -1, 76, 349, -1, - 84, 349, -1, 139, 349, -1, 239, 349, -1, 4, - -1, 337, -1, 341, -1, 206, -1, 288, -1, 199, - -1, 342, -1, 205, -1, 118, -1, -1, 240, 38, - -1, 130, 38, -1, 240, -1, 130, -1, -1, 352, - -1, 347, -1, 7, -1, 8, -1, 9, -1, 10, - -1, 11, -1, 353, 353, -1, 354, 355, -1, 355, - 355, -1, 347, 347, -1, 154, -1, 216, -1, 101, - -1, 19, -1, 358, -1, 304, -1, 305, -1, 306, - -1, 307, -1, 308, -1, 309, -1, 310, -1, 311, - -1, 312, -1, 313, -1, 314, -1, 315, -1, 316, - -1, 317, -1, 318, -1, 319, -1, 320, -1, 321, - -1, 322, -1, 323, -1, 324, -1, 325, -1, 326, - -1, 327, -1, 328, -1, 329, -1, 330, -1, 331, - -1, 56, -1, 211, -1, 171, -1, 175, -1, 224, - -1, 268, -1, 269, -1, 28, -1, 260, -1, 148, - -1, 30, -1, 248, -1, 243, -1, 94, -1, 161, - -1, -1, 125, -1, 126, -1, 35, -1, 127, -1, - 162, -1, 151, -1, 132, -1, 273, -1, 106, -1, - 145, -1, -1, 97, -1, 254, -1, -1, 97, -1, - 24, -1, 25, -1, -1, 258, -1, 163, -1, -1, - 17, -1, 156, -1, -1, 154, -1, 182, -1, -1, - 62, -1, 48, -1, 102, -1, 85, -1, 343, -1, - 27, -1, 51, -1, -1, 4, -1, 82, -1, 149, - -1, 218, -1, 219, -1, 232, -1, 271, -1, -1, - 32, -1, 274, -1, -1, 195, -1, 42, -1, 43, - -1, 168, -1, 169, -1, 298, 377, -1, 47, 374, - -1, 74, 375, -1, 147, 376, -1, 184, 529, -1, - 37, 530, -1, 247, 347, -1, 226, -1, 282, 347, - -1, 349, -1, 66, 5, -1, 349, -1, 66, 5, - -1, 349, -1, 66, 5, -1, 347, 347, -1, 220, - 347, 347, 347, 347, 347, -1, 40, 347, 347, -1, - 191, 347, 347, -1, 110, 347, 347, -1, 237, -1, - 255, 379, -1, 62, 347, 347, -1, 108, 347, 347, - -1, 48, 347, 347, -1, 222, 347, 347, -1, 220, - 347, 347, -1, 299, 347, 347, -1, 22, 347, 347, - -1, 109, 347, 347, -1, 49, 347, 347, -1, 12, - 381, -1, 71, 5, 5, 5, -1, 100, 4, -1, - 117, 382, -1, 131, 383, -1, 53, 261, 4, -1, - 285, 384, -1, 120, 5, -1, 59, -1, 347, 347, - -1, 347, -1, 347, 347, -1, 347, 12, 347, 347, - -1, 347, 347, 12, 347, 347, -1, 285, 347, -1, - 285, 347, 347, -1, 285, 347, 12, 347, 347, -1, - 285, 347, 347, 12, 347, 347, -1, 32, -1, 274, - -1, 121, -1, 347, 347, 12, 59, 5, 5, 5, - -1, 347, 347, 4, 347, 347, 12, 59, 5, 5, - 5, 5, -1, 347, 347, 12, 347, 347, 5, 5, - 5, -1, 347, 347, 4, 347, 347, 12, 347, 347, - 5, 5, 5, 5, -1, 347, -1, 347, 347, -1, - 285, 386, -1, 121, -1, 347, -1, 347, 347, -1, - 250, 388, -1, 190, 389, -1, 185, 390, -1, 295, - 347, 347, -1, 339, 391, -1, 226, 349, -1, 135, - -1, 174, -1, 347, -1, 185, -1, 339, -1, 338, - -1, 295, -1, 4, 361, -1, 190, 361, -1, 243, - 4, -1, 347, 4, 4, -1, 78, 347, -1, 243, - 4, -1, 170, 4, -1, 4, 347, 347, 4, 6, - 4, -1, 239, 347, 347, 347, 347, 347, 347, 4, - 6, 4, -1, 40, -1, 191, 393, -1, 110, -1, - 4, 347, 347, 4, 6, 4, -1, 239, 347, 347, - 347, 347, 347, 347, 4, 6, 4, -1, 360, -1, - 175, 347, -1, 83, 396, -1, 99, 397, -1, 173, - 398, -1, 213, 402, -1, 246, 403, -1, 5, 4, - 4, 401, 4, 4, 360, 347, 399, 400, 347, 347, - 5, -1, 5, 4, 4, 401, 4, 4, 360, 347, - 347, 400, 347, 347, 5, -1, 222, -1, -1, 31, - -1, 5, -1, 5, 5, 4, 349, -1, 5, 4, - 349, 5, 357, 362, -1, 185, -1, 339, -1, 338, - -1, 295, -1, 135, -1, 174, -1, 264, -1, 46, - -1, 5, -1, 5, 5, 4, 349, -1, 5, 357, - 362, -1, 31, 5, 357, 362, -1, -1, 347, 347, - 347, 347, 357, 362, -1, 59, 356, 357, 362, 347, - 347, 357, 364, -1, 281, 405, -1, 40, 347, 347, - -1, 191, 347, 347, -1, 110, 347, 347, -1, -1, - 347, 347, 357, -1, 40, 347, 347, 4, -1, 191, - 347, 347, 4, -1, 110, 347, 347, 4, -1, 359, - 347, 347, -1, 357, 362, 356, -1, 349, -1, 303, - 347, 347, -1, 40, 191, 359, 347, 347, -1, 191, - 359, 347, 347, -1, 40, 191, 357, 356, -1, 191, - 357, 356, -1, 33, 4, -1, 141, 116, 5, -1, - 41, 66, -1, 44, 410, -1, 46, 412, -1, 65, - 413, -1, 68, 417, -1, 67, 416, -1, 69, 419, - -1, 77, 421, -1, 79, 424, -1, 84, 425, -1, - 86, 426, -1, 88, 428, -1, 87, 427, -1, 93, - 429, -1, 95, -1, 122, 433, -1, 138, 439, -1, - 149, 5, 5, 4, -1, 150, 89, 5, 5, 347, - 347, 359, -1, 153, 431, -1, 157, 430, -1, 160, - 16, -1, 185, -1, 181, 499, 493, -1, 182, 440, - -1, 194, 66, -1, 209, -1, 210, 441, -1, 217, - 276, 359, 347, 347, 4, 4, 5, -1, 239, 442, - -1, 241, -1, 264, 443, -1, 280, -1, 281, 444, - -1, 289, -1, 296, 359, 347, 347, -1, 302, 89, - 5, 5, 347, 347, 359, -1, 304, 449, -1, 340, - -1, 100, -1, 117, -1, 131, -1, 53, 261, -1, - 88, -1, 120, -1, 71, 411, -1, 172, -1, -1, - 185, 5, -1, 103, 5, -1, 117, -1, -1, 399, - 400, -1, 347, 400, -1, 250, -1, 190, -1, 185, - 414, -1, 295, 167, -1, 339, 415, -1, 226, -1, - 190, -1, 243, -1, 78, -1, 243, -1, 170, -1, - -1, 277, -1, 167, 418, -1, 4, -1, 4, 359, - 347, 347, -1, 4, 347, 347, 360, 347, -1, -1, - 167, 420, -1, 175, -1, 4, 347, 347, 360, 347, - -1, 357, 362, -1, 65, 422, -1, 66, -1, 91, - -1, 167, -1, 203, 167, -1, 184, -1, 69, 423, - -1, 264, -1, 333, -1, -1, 190, -1, 250, -1, - -1, 175, -1, 347, 347, 357, 362, 363, -1, 359, - 347, 347, 357, 362, 363, -1, 347, 357, 357, 4, - -1, 357, 362, 363, -1, 59, 357, 362, 363, 357, - 364, -1, 281, 357, -1, 359, -1, 357, 362, 363, - -1, 272, -1, 33, -1, 359, -1, 357, 362, 363, - -1, 357, 362, 356, 347, 347, 5, -1, 4, 357, - 362, 356, 347, 347, 5, -1, 359, 347, 347, 4, - 4, -1, 5, -1, 65, -1, 359, 347, 347, 5, + 347, 0, -1, 96, 349, -1, 20, 379, -1, 44, + 381, -1, 41, 66, 5, -1, 46, 386, -1, 59, + -1, 64, -1, 65, 388, -1, 67, 278, 5, -1, + 68, 393, -1, 69, 395, -1, 77, 396, -1, 84, + 405, -1, 86, 407, -1, 87, 408, -1, 95, 350, + -1, 124, 409, -1, 135, 410, -1, 139, 452, -1, + 142, 455, -1, 147, -1, 148, 350, -1, 154, 461, + -1, 161, 16, 4, -1, 174, 464, -1, 177, 482, + -1, 178, 483, -1, 179, 484, -1, 182, 500, 485, + -1, 183, 519, -1, 195, 66, 5, -1, 210, 520, + -1, 211, 521, -1, 212, 524, -1, 232, 88, -1, + 224, 525, -1, 238, -1, 235, 500, 527, -1, 240, + 532, -1, 242, 533, -1, 247, 535, -1, 260, -1, + 265, 550, -1, 281, 4, -1, 282, 374, -1, 293, + -1, 295, 552, -1, 301, -1, 304, 554, -1, 305, + 555, -1, 335, 559, -1, 341, 560, -1, 3, -1, + 4, -1, 207, -1, 206, -1, 29, 350, -1, 190, + 350, -1, 213, 350, -1, 215, 350, -1, 305, 350, + -1, 44, 350, -1, 46, 350, -1, 76, 350, -1, + 84, 350, -1, 140, 350, -1, 240, 350, -1, 4, + -1, 338, -1, 342, -1, 207, -1, 289, -1, 200, + -1, 343, -1, 206, -1, 118, -1, -1, 241, 38, + -1, 131, 38, -1, 241, -1, 131, -1, -1, 353, + -1, 348, -1, 7, -1, 8, -1, 9, -1, 10, + -1, 11, -1, 354, 354, -1, 355, 356, -1, 356, + 356, -1, 348, 348, -1, 155, -1, 217, -1, 101, + -1, 19, -1, 359, -1, 305, -1, 306, -1, 307, + -1, 308, -1, 309, -1, 310, -1, 311, -1, 312, + -1, 313, -1, 314, -1, 315, -1, 316, -1, 317, + -1, 318, -1, 319, -1, 320, -1, 321, -1, 322, + -1, 323, -1, 324, -1, 325, -1, 326, -1, 327, + -1, 328, -1, 329, -1, 330, -1, 331, -1, 332, + -1, 56, -1, 212, -1, 172, -1, 176, -1, 225, + -1, 269, -1, 270, -1, 28, -1, 261, -1, 149, + -1, 30, -1, 249, -1, 244, -1, 94, -1, 162, + -1, -1, 126, -1, 127, -1, 35, -1, 128, -1, + 163, -1, 152, -1, 133, -1, 274, -1, 106, -1, + 146, -1, -1, 97, -1, 255, -1, -1, 97, -1, + 24, -1, 25, -1, -1, 259, -1, 164, -1, -1, + 17, -1, 157, -1, -1, 155, -1, 183, -1, -1, + 62, -1, 48, -1, 102, -1, 85, -1, 344, -1, + 27, -1, 51, -1, -1, 4, -1, 82, -1, 150, + -1, 219, -1, 220, -1, 233, -1, 272, -1, -1, + 32, -1, 275, -1, -1, 196, -1, 42, -1, 43, + -1, 169, -1, 170, -1, 299, 378, -1, 47, 375, + -1, 74, 376, -1, 148, 377, -1, 185, 530, -1, + 37, 531, -1, 248, 348, -1, 227, -1, 283, 348, + -1, 350, -1, 66, 5, -1, 350, -1, 66, 5, + -1, 350, -1, 66, 5, -1, 348, 348, -1, 221, + 348, 348, 348, 348, 348, -1, 40, 348, 348, -1, + 192, 348, 348, -1, 110, 348, 348, -1, 238, -1, + 256, 380, -1, 62, 348, 348, -1, 108, 348, 348, + -1, 48, 348, 348, -1, 223, 348, 348, -1, 221, + 348, 348, -1, 300, 348, 348, -1, 22, 348, 348, + -1, 109, 348, 348, -1, 49, 348, 348, -1, 12, + 382, -1, 71, 5, 5, 5, -1, 100, 4, -1, + 117, 383, -1, 132, 384, -1, 53, 262, 4, -1, + 286, 385, -1, 121, 5, -1, 59, -1, 348, 348, + -1, 348, -1, 348, 348, -1, 348, 12, 348, 348, + -1, 348, 348, 12, 348, 348, -1, 286, 348, -1, + 286, 348, 348, -1, 286, 348, 12, 348, 348, -1, + 286, 348, 348, 12, 348, 348, -1, 32, -1, 275, + -1, 122, -1, 348, 348, 12, 59, 5, 5, 5, + -1, 348, 348, 4, 348, 348, 12, 59, 5, 5, + 5, 5, -1, 348, 348, 12, 348, 348, 5, 5, + 5, -1, 348, 348, 4, 348, 348, 12, 348, 348, + 5, 5, 5, 5, -1, 348, -1, 348, 348, -1, + 286, 387, -1, 122, -1, 348, -1, 348, 348, -1, + 251, 389, -1, 191, 390, -1, 186, 391, -1, 296, + 348, 348, -1, 340, 392, -1, 227, 350, -1, 136, + -1, 175, -1, 348, -1, 186, -1, 340, -1, 339, + -1, 296, -1, 4, 362, -1, 191, 362, -1, 244, + 4, -1, 348, 4, 4, -1, 78, 348, -1, 244, + 4, -1, 171, 4, -1, 4, 348, 348, 4, 6, + 4, -1, 240, 348, 348, 348, 348, 348, 348, 4, + 6, 4, -1, 40, -1, 192, 394, -1, 110, -1, + 4, 348, 348, 4, 6, 4, -1, 240, 348, 348, + 348, 348, 348, 348, 4, 6, 4, -1, 361, -1, + 176, 348, -1, 83, 397, -1, 99, 398, -1, 174, + 399, -1, 214, 403, -1, 247, 404, -1, 5, 4, + 4, 402, 4, 4, 361, 348, 400, 401, 348, 348, + 5, -1, 5, 4, 4, 402, 4, 4, 361, 348, + 348, 401, 348, 348, 5, -1, 223, -1, -1, 31, + -1, 5, -1, 5, 5, 4, 350, -1, 5, 4, + 350, 5, 358, 363, -1, 186, -1, 340, -1, 339, + -1, 296, -1, 136, -1, 175, -1, 265, -1, 46, + -1, 5, -1, 5, 5, 4, 350, -1, 5, 358, + 363, -1, 31, 5, 358, 363, -1, -1, 348, 348, + 348, 348, 358, 363, -1, 59, 357, 358, 363, 348, + 348, 358, 365, -1, 282, 406, -1, 40, 348, 348, + -1, 192, 348, 348, -1, 110, 348, 348, -1, -1, + 348, 348, 358, -1, 40, 348, 348, 4, -1, 192, + 348, 348, 4, -1, 110, 348, 348, 4, -1, 360, + 348, 348, -1, 358, 363, 357, -1, 350, -1, 304, + 348, 348, -1, 40, 192, 360, 348, 348, -1, 192, + 360, 348, 348, -1, 40, 192, 358, 357, -1, 192, + 358, 357, -1, 33, 4, -1, 142, 116, 5, -1, + 41, 66, -1, 44, 411, -1, 46, 413, -1, 65, + 414, -1, 68, 418, -1, 67, 417, -1, 69, 420, + -1, 77, 422, -1, 79, 425, -1, 84, 426, -1, + 86, 427, -1, 88, 429, -1, 87, 428, -1, 93, + 430, -1, 95, -1, 123, 434, -1, 139, 440, -1, + 150, 5, 5, 4, -1, 151, 89, 5, 5, 348, + 348, 360, -1, 154, 432, -1, 158, 431, -1, 161, + 16, -1, 186, -1, 182, 500, 494, -1, 183, 441, + -1, 195, 66, -1, 210, -1, 211, 442, -1, 218, + 277, 360, 348, 348, 4, 4, 5, -1, 240, 443, + -1, 242, -1, 265, 444, -1, 281, -1, 282, 445, + -1, 290, -1, 297, 360, 348, 348, -1, 303, 89, + 5, 5, 348, 348, 360, -1, 305, 450, -1, 341, + -1, 100, -1, 117, -1, 132, -1, 53, 262, -1, + 88, -1, 121, -1, 71, 412, -1, 173, -1, -1, + 186, 5, -1, 103, 5, -1, 117, -1, -1, 400, + 401, -1, 348, 401, -1, 251, -1, 191, -1, 186, + 415, -1, 296, 168, -1, 340, 416, -1, 227, -1, + 191, -1, 244, -1, 78, -1, 244, -1, 171, -1, + -1, 278, -1, 168, 419, -1, 4, -1, 4, 360, + 348, 348, -1, 4, 348, 348, 361, 348, -1, -1, + 168, 421, -1, 176, -1, 4, 348, 348, 361, 348, + -1, 358, 363, -1, 65, 423, -1, 66, -1, 91, + -1, 168, -1, 204, 168, -1, 185, -1, 69, 424, + -1, 265, -1, 334, -1, -1, 191, -1, 251, -1, + -1, 176, -1, 348, 348, 358, 363, 364, -1, 360, + 348, 348, 358, 363, 364, -1, 348, 358, 358, 4, + -1, 358, 363, 364, -1, 59, 358, 363, 364, 358, + 365, -1, 282, 358, -1, 360, -1, 358, 363, 364, + -1, 273, -1, 33, -1, 360, -1, 358, 363, 364, + -1, 358, 363, 357, 348, 348, 5, -1, 4, 358, + 363, 357, 348, 348, 5, -1, 360, 348, 348, 4, + 4, -1, 5, -1, 65, -1, 360, 348, 348, 5, -1, 6, 4, 4, 4, 4, -1, 88, -1, 119, - 193, 432, -1, -1, 4, -1, 347, 347, -1, 196, - -1, 59, 357, 362, 363, -1, 81, -1, 100, 436, - -1, 45, -1, 116, 434, -1, 119, 193, 437, -1, - 143, 435, -1, 144, -1, 204, 193, -1, 261, -1, - 261, 357, 362, 364, -1, 262, 438, -1, 333, -1, - 4, -1, 359, 347, 347, -1, 4, -1, 164, 5, - -1, 4, 164, 5, -1, 304, 4, -1, -1, 4, - -1, 350, -1, 350, 359, 347, 347, -1, 350, 4, - -1, -1, 4, -1, 357, -1, 4, 357, -1, -1, - 208, -1, 297, -1, 66, -1, 180, -1, 284, -1, - 226, -1, 61, -1, 275, -1, 298, -1, 131, -1, - 233, -1, 298, 448, -1, 47, 445, -1, 74, 446, - -1, 147, 447, -1, 184, -1, 37, -1, 247, -1, + 194, 433, -1, -1, 4, -1, 348, 348, -1, 197, + -1, 59, 358, 363, 364, -1, 81, -1, 100, 437, + -1, 45, -1, 116, 435, -1, 119, 194, 438, -1, + 144, 436, -1, 145, -1, 205, 194, -1, 262, -1, + 262, 358, 363, 365, -1, 263, 439, -1, 334, -1, + 4, -1, 360, 348, 348, -1, 4, -1, 165, 5, + -1, 4, 165, 5, -1, 305, 4, -1, -1, 4, + -1, 351, -1, 351, 360, 348, 348, -1, 351, 4, + -1, -1, 4, -1, 358, -1, 4, 358, -1, -1, + 209, -1, 298, -1, 66, -1, 181, -1, 285, -1, + 227, -1, 61, -1, 276, -1, 299, -1, 132, -1, + 234, -1, 299, 449, -1, 47, 446, -1, 74, 447, + -1, 148, 448, -1, 185, -1, 37, -1, 248, -1, -1, 66, -1, -1, 66, -1, -1, 66, -1, -1, - 220, -1, -1, 16, 450, -1, 193, 358, -1, -1, - 221, -1, 83, 452, -1, 99, -1, 357, 362, 363, - 453, 5, 5, -1, 357, 362, 363, 453, 5, -1, - 20, -1, 229, -1, 19, -1, 44, 455, -1, 77, - 456, -1, 84, -1, 94, -1, 95, -1, 101, -1, - 122, 457, -1, 138, -1, 153, -1, 161, -1, 181, - 458, -1, 216, -1, 264, -1, 275, 357, -1, 304, - 459, -1, 72, 5, -1, -1, 31, -1, -1, 44, - -1, 87, -1, 189, -1, 147, -1, 252, -1, 213, - -1, 290, -1, 357, -1, 114, 357, -1, 58, 357, - -1, 18, -1, 281, 357, -1, 197, 4, 4, -1, - 115, -1, 183, 5, -1, 88, 462, -1, 253, 119, - 193, 461, -1, 253, 6, 4, 4, 4, 4, -1, - 294, -1, 304, 347, 347, 347, 347, 347, 347, 347, - 347, 4, -1, 5, -1, 5, 4, -1, 4, 4, - 56, -1, 4, 4, 357, -1, 190, 349, -1, 26, - 464, -1, 111, 466, -1, 122, 467, -1, 156, 480, - -1, 202, 478, -1, 215, 479, -1, 5, 14, 5, - 367, -1, 5, 15, 5, 367, -1, 5, 61, 5, - 367, -1, 5, 187, 367, -1, 5, 188, 367, -1, - 5, 256, 365, 4, 367, -1, 5, 265, 4, 367, - -1, 5, 266, 4, 367, -1, 5, 297, 5, 367, - -1, 239, 87, 465, -1, 5, 14, 5, -1, 5, - 15, 5, -1, 5, 61, 5, -1, 5, 187, -1, - 5, 188, -1, 5, 256, 365, 4, -1, 5, 265, - 4, -1, 5, 266, 4, -1, 5, 297, 5, -1, - 5, 5, 263, -1, 5, 14, 5, 367, -1, 5, - 15, 5, 367, -1, 5, 61, 5, 367, -1, 5, - 187, 366, 367, -1, 5, 5, 263, 366, 367, -1, - 5, 188, 366, 367, -1, 5, 256, 365, 4, 366, - 367, -1, 5, 270, 365, 4, 4, 366, 367, -1, - 5, 265, 4, 367, -1, 5, 266, 4, 367, -1, - 5, 297, 5, 366, 367, -1, 262, 468, -1, 116, - 87, 469, -1, 239, 154, 477, -1, 239, 87, 476, - -1, 189, 470, -1, 5, 14, 5, -1, 5, 15, - 5, -1, 5, 61, 5, -1, 5, 187, 366, -1, - 5, 5, 263, 366, -1, 5, 188, 366, -1, 5, - 256, 365, 4, 366, -1, 5, 270, 365, 4, 4, - 366, -1, 5, 265, 4, -1, 5, 266, 4, -1, - 5, 297, 5, 366, -1, 5, 14, 5, -1, 5, - 15, 5, -1, 5, 61, 5, -1, 5, 187, 366, - -1, 5, 188, 366, -1, 5, 256, 365, 4, 366, - -1, 5, 265, 4, -1, 5, 266, 4, -1, 5, - 297, 5, 366, -1, 154, 160, 471, -1, 160, 472, - -1, 154, 473, -1, 474, -1, 154, 332, 475, -1, - 5, 14, 5, 367, -1, 5, 15, 5, 367, -1, - 5, 61, 5, 367, -1, 5, 187, 366, 367, -1, - 5, 188, 366, 367, -1, 5, 256, 365, 4, 366, - 367, -1, 5, 265, 4, 367, -1, 5, 266, 4, - 367, -1, 5, 297, 5, 366, 367, -1, 5, 14, - 5, 367, -1, 5, 15, 5, 367, -1, 5, 61, - 5, 367, -1, 5, 187, 366, 367, -1, 5, 5, - 263, 366, 367, -1, 5, 188, 366, 367, -1, 5, - 256, 365, 4, 366, 367, -1, 5, 270, 365, 4, - 4, 366, 367, -1, 5, 265, 4, 367, -1, 5, - 266, 4, 367, -1, 5, 297, 5, 366, 367, -1, - 358, 5, 14, 5, 367, -1, 358, 5, 15, 5, - 367, -1, 358, 5, 61, 5, 367, -1, 358, 5, - 187, 366, 367, -1, 358, 5, 188, 366, 367, -1, - 358, 5, 256, 365, 4, 366, 367, -1, 358, 5, - 265, 4, 367, -1, 358, 5, 266, 4, 367, -1, - 358, 5, 297, 5, 366, 367, -1, 358, 5, 14, - 5, 367, -1, 358, 5, 15, 5, 367, -1, 358, - 5, 61, 5, 367, -1, 358, 5, 187, 366, 367, - -1, 358, 5, 5, 263, 366, 367, -1, 358, 5, - 188, 366, 367, -1, 358, 5, 256, 365, 4, 366, - 367, -1, 358, 5, 270, 365, 4, 4, 366, 367, - -1, 358, 5, 265, 4, 367, -1, 358, 5, 266, - 4, 367, -1, 358, 5, 297, 5, 366, 367, -1, + 221, -1, -1, 16, 451, -1, 194, 359, -1, -1, + 222, -1, 83, 453, -1, 99, -1, 358, 363, 364, + 454, 5, 5, -1, 358, 363, 364, 454, 5, -1, + 20, -1, 230, -1, 19, -1, 44, 456, -1, 77, + 457, -1, 84, -1, 94, -1, 95, -1, 101, -1, + 123, 458, -1, 139, -1, 154, -1, 162, -1, 182, + 459, -1, 217, -1, 265, -1, 276, 358, -1, 305, + 460, -1, 72, 5, -1, -1, 31, -1, -1, 44, + -1, 87, -1, 190, -1, 148, -1, 253, -1, 214, + -1, 291, -1, 358, -1, 114, 358, -1, 58, 358, + -1, 18, -1, 282, 358, -1, 198, 4, 4, -1, + 115, -1, 184, 5, -1, 88, 463, -1, 254, 119, + 194, 462, -1, 254, 6, 4, 4, 4, 4, -1, + 295, -1, 305, 348, 348, 348, 348, 348, 348, 348, + 348, 4, -1, 5, -1, 5, 4, -1, 4, 4, + 56, -1, 4, 4, 358, -1, 191, 350, -1, 26, + 465, -1, 111, 467, -1, 123, 468, -1, 157, 481, + -1, 203, 479, -1, 216, 480, -1, 5, 14, 5, + 368, -1, 5, 15, 5, 368, -1, 5, 61, 5, + 368, -1, 5, 188, 368, -1, 5, 189, 368, -1, + 5, 257, 366, 4, 368, -1, 5, 266, 4, 368, + -1, 5, 267, 4, 368, -1, 5, 298, 5, 368, + -1, 240, 87, 466, -1, 5, 14, 5, -1, 5, + 15, 5, -1, 5, 61, 5, -1, 5, 188, -1, + 5, 189, -1, 5, 257, 366, 4, -1, 5, 266, + 4, -1, 5, 267, 4, -1, 5, 298, 5, -1, + 5, 5, 264, -1, 5, 14, 5, 368, -1, 5, + 15, 5, 368, -1, 5, 61, 5, 368, -1, 5, + 188, 367, 368, -1, 5, 5, 264, 367, 368, -1, + 5, 189, 367, 368, -1, 5, 257, 366, 4, 367, + 368, -1, 5, 271, 366, 4, 4, 367, 368, -1, + 5, 266, 4, 368, -1, 5, 267, 4, 368, -1, + 5, 298, 5, 367, 368, -1, 263, 469, -1, 116, + 87, 470, -1, 240, 155, 478, -1, 240, 87, 477, + -1, 190, 471, -1, 5, 14, 5, -1, 5, 15, + 5, -1, 5, 61, 5, -1, 5, 188, 367, -1, + 5, 5, 264, 367, -1, 5, 189, 367, -1, 5, + 257, 366, 4, 367, -1, 5, 271, 366, 4, 4, + 367, -1, 5, 266, 4, -1, 5, 267, 4, -1, + 5, 298, 5, 367, -1, 5, 14, 5, -1, 5, + 15, 5, -1, 5, 61, 5, -1, 5, 188, 367, + -1, 5, 189, 367, -1, 5, 257, 366, 4, 367, + -1, 5, 266, 4, -1, 5, 267, 4, -1, 5, + 298, 5, 367, -1, 155, 161, 472, -1, 161, 473, + -1, 155, 474, -1, 475, -1, 155, 333, 476, -1, + 5, 14, 5, 368, -1, 5, 15, 5, 368, -1, + 5, 61, 5, 368, -1, 5, 188, 367, 368, -1, + 5, 189, 367, 368, -1, 5, 257, 366, 4, 367, + 368, -1, 5, 266, 4, 368, -1, 5, 267, 4, + 368, -1, 5, 298, 5, 367, 368, -1, 5, 14, + 5, 368, -1, 5, 15, 5, 368, -1, 5, 61, + 5, 368, -1, 5, 188, 367, 368, -1, 5, 5, + 264, 367, 368, -1, 5, 189, 367, 368, -1, 5, + 257, 366, 4, 367, 368, -1, 5, 271, 366, 4, + 4, 367, 368, -1, 5, 266, 4, 368, -1, 5, + 267, 4, 368, -1, 5, 298, 5, 367, 368, -1, + 359, 5, 14, 5, 368, -1, 359, 5, 15, 5, + 368, -1, 359, 5, 61, 5, 368, -1, 359, 5, + 188, 367, 368, -1, 359, 5, 189, 367, 368, -1, + 359, 5, 257, 366, 4, 367, 368, -1, 359, 5, + 266, 4, 368, -1, 359, 5, 267, 4, 368, -1, + 359, 5, 298, 5, 367, 368, -1, 359, 5, 14, + 5, 368, -1, 359, 5, 15, 5, 368, -1, 359, + 5, 61, 5, 368, -1, 359, 5, 188, 367, 368, + -1, 359, 5, 5, 264, 367, 368, -1, 359, 5, + 189, 367, 368, -1, 359, 5, 257, 366, 4, 367, + 368, -1, 359, 5, 271, 366, 4, 4, 367, 368, + -1, 359, 5, 266, 4, 368, -1, 359, 5, 267, + 4, 368, -1, 359, 5, 298, 5, 367, 368, -1, 5, 14, 5, -1, 5, 15, 5, -1, 5, 61, - 5, -1, 5, 187, 366, -1, 5, 188, 366, -1, - 5, 256, 365, 4, 366, -1, 5, 265, 4, -1, - 5, 266, 4, -1, 5, 297, 5, 366, -1, 5, + 5, -1, 5, 188, 367, -1, 5, 189, 367, -1, + 5, 257, 366, 4, 367, -1, 5, 266, 4, -1, + 5, 267, 4, -1, 5, 298, 5, 367, -1, 5, 14, 5, -1, 5, 15, 5, -1, 5, 61, 5, - -1, 5, 187, 366, -1, 5, 5, 263, 366, -1, - 5, 188, 366, -1, 5, 256, 365, 4, 366, -1, - 5, 270, 365, 4, 4, 366, -1, 5, 265, 4, - -1, 5, 266, 4, -1, 5, 297, 5, 366, -1, + -1, 5, 188, 367, -1, 5, 5, 264, 367, -1, + 5, 189, 367, -1, 5, 257, 366, 4, 367, -1, + 5, 271, 366, 4, 4, 367, -1, 5, 266, 4, + -1, 5, 267, 4, -1, 5, 298, 5, 367, -1, 5, 14, 5, -1, 5, 15, 5, -1, 5, 61, - 5, -1, 5, 187, 366, -1, 5, 188, 366, -1, - 5, 256, 365, 4, 366, -1, 5, 265, 4, -1, - 5, 266, 4, -1, 5, 297, 5, 366, -1, 5, - 14, 5, 367, -1, 5, 61, 5, 367, -1, 5, - 187, 367, -1, 5, 256, 365, 4, 367, -1, 5, - 265, 4, 367, -1, 5, 297, 5, 367, -1, 5, - 5, -1, 262, 5, 5, -1, 93, 4, 4, 4, - 4, 4, -1, 185, 4, 4, 4, 4, 4, -1, - 110, -1, 225, -1, 349, -1, 136, 349, -1, 88, - 349, -1, 66, 5, -1, 5, 4, 4, -1, 294, - 347, 347, -1, 340, 347, -1, 5, 5, 358, 362, - 5, 5, 358, 362, 347, 358, 364, 5, -1, 60, - 487, -1, 66, 5, -1, 80, -1, 73, 492, 5, - -1, 73, 492, 297, 5, -1, 75, 99, -1, -1, - 83, 485, 488, -1, 89, -1, 99, -1, 99, 17, - -1, 105, 491, -1, 113, 4, -1, 128, 5, -1, - 147, 17, -1, 147, 207, 347, 347, -1, 147, 286, - 347, 347, -1, 4, 20, 370, 349, -1, 4, 21, - 352, -1, 4, 21, 352, 359, -1, 4, 21, 352, - 357, 362, -1, 4, 22, 233, 347, 347, 4, 359, - -1, 4, 22, 233, 347, 347, 4, 357, 364, -1, - 4, 22, 233, 5, 357, 364, -1, 4, 49, 233, - 347, 347, 347, 4, 359, -1, 4, 49, 233, 347, - 347, 347, 4, 357, 364, -1, 4, 49, 233, 5, - 357, 364, -1, 4, 48, 233, 347, 347, 359, -1, - 4, 48, 233, 347, 347, 357, 364, -1, 4, 52, - 105, 352, 352, 4, 347, 347, 347, 4, -1, 4, - 52, 105, 352, 352, 4, 347, 347, 347, 4, 359, - -1, 4, 52, 105, 352, 352, 4, 347, 347, 347, - 4, 357, 362, -1, 4, 52, 105, 5, 5, 357, - 362, 357, 364, -1, 4, 55, 486, 5, 5, -1, - 4, 62, 233, 347, 359, -1, 4, 62, 233, 347, - 357, 364, -1, 4, 66, 5, -1, 4, 74, 27, - 349, 349, -1, 4, 74, 165, 5, 5, -1, 4, - 74, 233, 347, 359, -1, 4, 74, 233, 347, 357, - 364, -1, 4, 74, 275, 357, 362, -1, 4, 75, - 135, 349, -1, 4, 82, 105, 352, 352, 4, 347, - 347, 4, -1, 4, 82, 105, 352, 352, 4, 347, - 347, 4, 359, -1, 4, 82, 105, 352, 352, 4, - 347, 347, 4, 357, 362, -1, 4, 82, 105, 5, - 5, 357, 362, 357, 364, -1, 4, 83, 22, 233, - 347, 347, -1, 4, 83, 49, 233, 347, 347, -1, - 4, 83, 52, 21, 347, 347, -1, 4, 83, 52, - 233, 347, 347, -1, 4, 83, 109, 233, 347, 347, - -1, 4, 83, 112, 21, 347, 347, -1, 4, 83, - 112, 233, 347, 347, -1, 4, 83, 82, 21, 347, - 347, -1, 4, 83, 82, 233, 347, 347, -1, 4, - 83, 222, 301, 4, 347, 347, -1, 4, 83, 251, - 301, 4, 347, 347, -1, 4, 99, -1, 4, 99, + 5, -1, 5, 188, 367, -1, 5, 189, 367, -1, + 5, 257, 366, 4, 367, -1, 5, 266, 4, -1, + 5, 267, 4, -1, 5, 298, 5, 367, -1, 5, + 14, 5, 368, -1, 5, 61, 5, 368, -1, 5, + 188, 368, -1, 5, 257, 366, 4, 368, -1, 5, + 266, 4, 368, -1, 5, 298, 5, 368, -1, 5, + 5, -1, 263, 5, 5, -1, 93, 4, 4, 4, + 4, 4, -1, 186, 4, 4, 4, 4, 4, -1, + 110, -1, 226, -1, 350, -1, 137, 350, -1, 88, + 350, -1, 66, 5, -1, 5, 4, 4, -1, 295, + 348, 348, -1, 341, 348, -1, 5, 5, 359, 363, + 5, 5, 359, 363, 348, 359, 365, 5, -1, 60, + 488, -1, 66, 5, -1, 80, -1, 73, 493, 5, + -1, 73, 493, 298, 5, -1, 75, 99, -1, -1, + 83, 486, 489, -1, 89, -1, 99, -1, 99, 17, + -1, 105, 492, -1, 113, 4, -1, 129, 5, -1, + 148, 17, -1, 148, 208, 348, 348, -1, 148, 287, + 348, 348, -1, 4, 20, 371, 350, -1, 4, 21, + 353, -1, 4, 21, 353, 360, -1, 4, 21, 353, + 358, 363, -1, 4, 22, 234, 348, 348, 4, 360, + -1, 4, 22, 234, 348, 348, 4, 358, 365, -1, + 4, 22, 234, 5, 358, 365, -1, 4, 48, 120, + 350, -1, 4, 49, 234, 348, 348, 348, 4, 360, + -1, 4, 49, 234, 348, 348, 348, 4, 358, 365, + -1, 4, 49, 234, 5, 358, 365, -1, 4, 48, + 234, 348, 348, 360, -1, 4, 48, 234, 348, 348, + 358, 365, -1, 4, 52, 105, 353, 353, 4, 348, + 348, 348, 4, -1, 4, 52, 105, 353, 353, 4, + 348, 348, 348, 4, 360, -1, 4, 52, 105, 353, + 353, 4, 348, 348, 348, 4, 358, 363, -1, 4, + 52, 105, 5, 5, 358, 363, 358, 365, -1, 4, + 55, 487, 5, 5, -1, 4, 62, 120, 350, -1, + 4, 62, 234, 348, 360, -1, 4, 62, 234, 348, + 358, 365, -1, 4, 66, 5, -1, 4, 74, 27, + 350, 350, -1, 4, 74, 166, 5, 5, -1, 4, + 74, 234, 348, 360, -1, 4, 74, 234, 348, 358, + 365, -1, 4, 74, 276, 358, 363, -1, 4, 75, + 136, 350, -1, 4, 82, 105, 353, 353, 4, 348, + 348, 4, -1, 4, 82, 105, 353, 353, 4, 348, + 348, 4, 360, -1, 4, 82, 105, 353, 353, 4, + 348, 348, 4, 358, 363, -1, 4, 82, 105, 5, + 5, 358, 363, 358, 365, -1, 4, 83, 22, 234, + 348, 348, -1, 4, 83, 49, 234, 348, 348, -1, + 4, 83, 52, 21, 348, 348, -1, 4, 83, 52, + 234, 348, 348, -1, 4, 83, 109, 234, 348, 348, + -1, 4, 83, 112, 21, 348, 348, -1, 4, 83, + 112, 234, 348, 348, -1, 4, 83, 82, 21, 348, + 348, -1, 4, 83, 82, 234, 348, 348, -1, 4, + 83, 223, 302, 4, 348, 348, -1, 4, 83, 252, + 302, 4, 348, 348, -1, 4, 99, -1, 4, 99, 22, 4, -1, 4, 99, 49, 4, -1, 4, 99, 52, 4, -1, 4, 99, 109, 4, -1, 4, 99, - 55, 486, 5, -1, 4, 99, 112, 4, -1, 4, - 99, 82, 4, -1, 4, 99, 222, 301, 4, -1, - 4, 99, 251, 301, 4, -1, 4, 99, 277, -1, - 4, 99, 277, 5, -1, 4, 99, 277, 4, -1, - 4, 105, 40, 4, -1, 4, 108, 233, 347, 347, - 359, -1, 4, 108, 233, 347, 347, 357, 364, -1, - 4, 109, 233, 347, 347, 347, 4, 359, -1, 4, - 109, 233, 347, 347, 347, 4, 357, 364, -1, 4, - 109, 233, 5, 357, 364, -1, 4, 112, 105, 352, - 352, 4, 347, 347, 347, 4, -1, 4, 112, 105, - 352, 352, 4, 347, 347, 347, 4, 359, -1, 4, - 112, 105, 352, 352, 4, 347, 347, 347, 4, 357, - 362, -1, 4, 112, 105, 5, 5, 357, 362, 357, - 364, -1, 4, 128, 5, -1, 4, 147, -1, 4, - 147, 207, -1, 4, 170, 27, 349, 349, -1, 4, - 170, 220, 359, 356, 356, -1, 4, 170, 220, 357, - 362, 356, 356, -1, 4, 192, 347, 347, -1, 4, - 192, 129, -1, 4, 192, 36, -1, 4, 192, 285, - 359, 347, 347, -1, 4, 192, 285, 357, 362, 356, - -1, 4, 222, 237, 347, 347, 359, -1, 4, 222, - 237, 347, 347, 357, 364, -1, 4, 251, 237, 347, - 347, 359, -1, 4, 251, 237, 347, 347, 357, 364, - -1, 4, 220, 255, 368, -1, 4, 220, 261, 4, - -1, 4, 227, 359, 356, 356, 347, -1, 4, 227, - 357, 362, 356, 356, 347, 357, 364, -1, 4, 228, - 505, 349, -1, 4, 241, 40, -1, 4, 242, 220, - 359, 356, 356, -1, 4, 242, 220, 357, 362, 356, - 356, -1, 4, 242, 275, 357, 362, 357, 364, -1, - 4, 252, -1, 4, 252, 207, -1, 4, 277, 5, - -1, 4, 279, 5, -1, 4, 279, 241, 349, -1, - 4, 291, -1, 4, 293, -1, 4, 299, 27, 349, - -1, 4, 299, 220, 359, 356, 347, 352, -1, 4, - 299, 220, 357, 362, 356, 357, 364, 347, 352, -1, - 4, 333, 4, -1, 163, -1, 163, 347, 347, -1, - 172, 500, -1, 173, 501, -1, 192, 502, -1, 226, - 349, -1, 228, 505, 349, -1, 228, 505, 349, 347, - 347, -1, 241, 40, 347, 347, -1, 241, 191, 347, - 347, 4, -1, 241, 110, -1, 246, 5, 492, 357, - 362, 363, 349, -1, 246, 278, 5, -1, 252, 509, - -1, 259, 510, -1, 5, 66, 5, -1, 5, 80, - -1, 5, 99, -1, 5, 89, -1, 5, 128, 5, - -1, 5, 147, -1, 5, 147, 207, -1, 5, 192, - 347, 347, -1, 5, 192, 129, -1, 5, 192, 36, - -1, 5, 192, 285, 359, 356, -1, 5, 192, 285, - 357, 362, 356, -1, 5, 228, 505, 349, -1, 5, - 252, -1, 5, 252, 207, -1, 5, 291, -1, 5, - 293, -1, 277, 105, 5, 5, -1, 277, 99, 5, - -1, 277, 99, 17, -1, 277, 5, -1, 277, 294, - 5, -1, 213, -1, 213, 357, -1, 290, -1, 291, - 17, -1, 293, 17, -1, 333, 4, -1, 252, -1, - 293, -1, 147, -1, 291, -1, 40, 192, -1, 192, - -1, 110, 192, -1, 40, 105, -1, 105, -1, 110, - 105, -1, 40, 241, -1, 241, -1, 110, 241, -1, - 99, -1, 279, -1, 66, -1, 333, -1, 228, -1, - 128, -1, 163, -1, 294, -1, -1, 4, -1, 30, - 349, -1, 233, 347, -1, 159, 4, -1, 208, 4, - 347, -1, 62, 347, 347, 347, 506, -1, 108, 347, - 347, 347, 347, 351, 506, -1, 48, 347, 347, 347, - 347, 351, 506, -1, 222, 347, 347, 347, 347, 506, - -1, 251, 347, 347, 347, 347, 506, -1, 170, 347, - 347, 347, 347, 506, -1, 299, 347, 347, 347, 347, - 506, -1, 279, 347, 347, 351, 506, -1, 62, 220, - 347, 347, 369, 506, -1, 48, 220, 347, 347, 369, - 506, -1, 102, 220, 347, 347, 369, 506, -1, 85, - 220, 347, 347, 369, 506, -1, 343, 220, 347, 347, - 369, 506, -1, 27, 220, 347, 347, 369, 506, -1, - 51, 220, 347, 347, 369, 506, -1, 242, 347, 347, - 347, 347, 357, 362, 357, 364, 506, -1, 74, 347, - 347, 347, 357, 362, 506, -1, 227, 347, 347, 347, - 347, 347, 506, -1, 22, 347, 347, 347, 347, 4, - 506, -1, 109, 347, 347, 347, 347, 347, 4, 351, - 506, -1, 49, 347, 347, 347, 347, 347, 4, 351, - 506, -1, 82, 347, 347, 352, 352, 4, 347, 347, - 4, 506, -1, 112, 347, 347, 352, 352, 4, 347, - 347, 347, 4, 351, 506, -1, 52, 347, 347, 352, - 352, 4, 347, 347, 347, 4, 351, 506, -1, 75, - 506, -1, 278, 489, -1, 5, 347, 347, -1, 297, - 5, 347, 347, -1, 347, 347, 297, 5, -1, 5, - 357, 362, 356, -1, 4, 4, -1, 40, 347, 347, - 4, -1, 191, 347, 347, 4, -1, 110, -1, 104, - -1, 335, -1, 63, -1, 245, -1, 244, -1, 230, - -1, 336, -1, 60, 494, -1, 66, -1, 128, -1, - 113, -1, 140, 347, 347, -1, 152, 347, 347, -1, - 146, 20, 82, 357, -1, 146, 20, 149, 5, 5, - 4, -1, 146, 20, 218, 5, 5, 5, 5, 357, - 362, 371, -1, 146, 20, 219, 5, 5, 357, 371, - -1, 146, 20, 232, 5, 5, 5, 357, -1, 146, - 20, 271, 357, 362, -1, 4, 20, 82, 357, -1, - 4, 20, 149, 5, 5, 4, -1, 4, 20, 218, - 5, 5, 5, 5, 357, 362, 371, -1, 4, 20, - 219, 5, 5, 357, 371, -1, 4, 20, 232, 5, - 5, 5, 357, -1, 4, 20, 271, 357, 362, -1, - 152, 17, -1, 4, 21, -1, 4, 21, 359, -1, - 4, 21, 357, 362, -1, 4, 22, 233, 357, 364, - -1, 4, 49, 233, 357, 364, -1, 4, 48, 233, - 357, 364, -1, 4, 52, 21, -1, 4, 52, 21, - 359, -1, 4, 52, 21, 357, 362, -1, 4, 52, - 233, 357, 364, -1, 4, 59, 357, 362, 363, -1, - 4, 62, 233, 357, 364, -1, 4, 66, -1, 4, - 74, 27, -1, 4, 74, 165, -1, 4, 74, 233, - 357, 364, -1, 4, 74, 275, -1, 4, 75, 135, - -1, 4, 82, 21, -1, 4, 82, 21, 359, -1, - 4, 82, 21, 357, 362, -1, 4, 82, 233, 357, - 364, -1, 4, 108, 233, 357, 364, -1, 4, 109, - 233, 357, 364, -1, 4, 112, 21, -1, 4, 112, - 21, 359, -1, 4, 112, 21, 357, 362, -1, 4, - 112, 233, 357, 364, -1, 4, 128, -1, 4, 147, - -1, 4, 170, 27, -1, 4, 170, 166, 357, 364, - -1, 4, 170, 220, 357, 362, 363, -1, 4, 179, - 166, 347, 357, 364, -1, 4, 220, 255, -1, 4, - 220, 261, -1, 4, 227, 220, 357, 362, 363, -1, - 4, 227, 166, 357, 364, -1, 4, 227, 283, 357, - 364, -1, 4, 228, -1, 4, 228, 505, -1, 4, - 242, 166, 357, 364, -1, 4, 242, 220, 357, 362, - 363, -1, 4, 242, 275, -1, 4, 252, -1, 4, - 277, -1, 4, 277, 4, -1, 4, 279, -1, 4, - 279, 241, -1, 4, 289, -1, 4, 299, 27, -1, - 4, 299, 166, 357, 364, -1, 4, 299, 220, 357, - 362, 363, -1, 4, 333, -1, 147, 495, -1, 147, - 203, -1, 203, -1, 222, 251, 347, 347, -1, 251, - 251, 347, 347, -1, 226, -1, 228, 505, -1, 252, - 496, -1, 252, 203, -1, 259, 497, -1, 5, 66, - -1, 5, 128, -1, 5, 152, -1, 5, 228, 505, - -1, 5, 277, -1, 5, 277, 203, -1, 277, 17, - -1, 277, 98, 193, -1, 333, -1, 30, -1, 233, - -1, 159, -1, 208, -1, -1, 347, 347, -1, -1, - 347, 347, -1, -1, 279, -1, -1, -1, 221, -1, - 234, -1, 295, -1, 57, -1, 20, -1, 492, 357, - 362, 363, 349, 507, 513, -1, 252, 492, 357, 362, - 363, 349, 507, 513, -1, 492, 5, -1, 492, 5, - 357, 362, -1, 492, 4, -1, 492, 4, 357, 362, - -1, 122, 5, 5, 490, 4, 5, -1, 347, 347, - -1, 129, -1, 36, -1, 40, 347, 347, -1, 191, - 347, 347, -1, 110, -1, 285, 359, 356, -1, 285, - 357, 362, 356, -1, 503, 504, -1, 504, -1, 505, - 344, 349, -1, 66, 344, 5, -1, 92, 344, 4, - 4, -1, 333, 344, 4, -1, 128, 344, 5, -1, - 279, 344, 5, -1, 516, -1, 517, -1, 200, -1, - 252, -1, 147, -1, 91, -1, 124, -1, 105, -1, - 192, -1, 241, -1, 99, -1, 155, -1, 267, -1, - 498, -1, 498, 503, -1, -1, -1, 508, 511, -1, - 17, -1, 207, 347, 347, -1, 286, -1, 286, 347, - 347, -1, 349, -1, 279, 349, -1, 511, 512, -1, - 512, -1, 505, 344, 349, -1, -1, -1, 514, 515, - -1, 515, 516, -1, 516, -1, 277, 344, 5, -1, - 55, 344, 486, 5, 5, -1, 64, -1, 66, 5, - -1, 180, 4, -1, 284, 347, -1, 343, -1, 341, - -1, 336, -1, 200, -1, 347, 347, 347, 347, -1, - 347, 347, -1, 359, 347, 347, -1, 357, 362, 356, - -1, 285, 521, -1, 39, 347, 347, -1, 191, 522, - -1, 226, 349, -1, 347, 347, -1, 359, 347, 347, - -1, 357, 362, 356, -1, 40, 347, 347, -1, 347, - 347, -1, 110, 347, 347, -1, 349, -1, 304, 358, - 362, -1, 5, 4, 4, -1, 294, -1, 70, 525, - -1, 167, 4, -1, 238, 4, -1, 247, 347, -1, - 54, -1, 137, -1, 239, -1, 90, -1, 147, 527, - -1, 252, 528, -1, 40, 347, 347, -1, 191, 347, - 347, -1, 110, -1, 257, 110, -1, 40, 347, 347, - -1, 191, 347, 347, -1, 110, -1, 257, 110, -1, - 186, -1, 13, -1, 200, -1, 34, -1, 107, -1, - 61, 5, -1, 275, 357, -1, 298, 4, 4, 4, - -1, 347, -1, 347, 97, -1, 191, 533, -1, 285, - 347, -1, 285, 347, 97, -1, 40, -1, 347, -1, - 110, -1, 26, 535, -1, 122, 537, -1, 202, 547, - -1, 111, 548, -1, 215, 5, -1, 119, 5, 372, - -1, 61, 5, 372, -1, 265, 4, 372, -1, 239, - 87, 536, -1, 119, 5, 372, -1, 61, 5, 372, - -1, 265, 4, 372, -1, 538, -1, 154, 538, -1, - 276, 539, -1, 262, 540, -1, 116, 87, 541, -1, - 189, 542, -1, 239, 154, 544, -1, 239, 87, 545, - -1, 236, 546, -1, 119, 5, -1, 61, 5, -1, - 265, 4, -1, 119, 5, -1, 61, 5, -1, 265, - 4, -1, 119, 5, -1, 61, 5, -1, 265, 4, - -1, 119, 5, -1, 61, 5, -1, 265, 4, -1, - 154, 543, -1, 119, 5, 4, -1, 61, 5, 4, - -1, 265, 4, 4, -1, 119, 5, -1, 61, 5, - -1, 265, 4, -1, 119, 5, -1, 61, 5, -1, - 265, 4, -1, 119, 5, -1, 61, 5, -1, 265, - 4, -1, 119, 5, -1, 61, 5, -1, 265, 4, - -1, 119, 5, 372, -1, 61, 5, 372, -1, 265, - 4, 372, -1, 119, 5, 5, 372, -1, 550, 4, - -1, 99, -1, 50, -1, 133, -1, 287, -1, -1, - 4, 347, 347, 347, 347, -1, 201, -1, 201, 4, - 347, 347, 347, 347, -1, 122, 262, 552, -1, 4, - -1, 347, 357, -1, 4, 4, -1, 4, 347, 357, - -1, 347, 347, -1, 285, 347, 347, -1, 358, 362, - 363, -1, 16, 557, -1, 237, 4, -1, 235, 556, - -1, 23, 555, -1, 4, 4, -1, 4, 5, -1, - 279, 4, 5, -1, 4, 4, -1, 4, 5, -1, - 279, 4, 5, -1, 4, -1, 4, 358, 362, -1, - 4, 6, 358, 362, -1, 225, -1, 347, 347, -1, - 347, 347, 12, 347, 347, -1, 347, 347, 12, 359, - 347, 347, -1, 347, 347, 12, 357, 362, 356, -1, - 285, 560, -1, 121, -1, 121, 347, -1, 347, 347, - -1, 347, 347, 12, 347, 347, -1, 347, 347, 12, - 359, 347, 347, -1, 347, 347, 12, 357, 362, 356, - -1 + 55, 487, 5, -1, 4, 99, 112, 4, -1, 4, + 99, 82, 4, -1, 4, 99, 223, 302, 4, -1, + 4, 99, 252, 302, 4, -1, 4, 99, 278, -1, + 4, 99, 278, 5, -1, 4, 99, 278, 4, -1, + 4, 105, 40, 4, -1, 4, 108, 120, 350, -1, + 4, 108, 234, 348, 348, 360, -1, 4, 108, 234, + 348, 348, 358, 365, -1, 4, 109, 234, 348, 348, + 348, 4, 360, -1, 4, 109, 234, 348, 348, 348, + 4, 358, 365, -1, 4, 109, 234, 5, 358, 365, + -1, 4, 112, 105, 353, 353, 4, 348, 348, 348, + 4, -1, 4, 112, 105, 353, 353, 4, 348, 348, + 348, 4, 360, -1, 4, 112, 105, 353, 353, 4, + 348, 348, 348, 4, 358, 363, -1, 4, 112, 105, + 5, 5, 358, 363, 358, 365, -1, 4, 129, 5, + -1, 4, 148, -1, 4, 148, 208, -1, 4, 171, + 27, 350, 350, -1, 4, 171, 221, 360, 357, 357, + -1, 4, 171, 221, 358, 363, 357, 357, -1, 4, + 193, 348, 348, -1, 4, 193, 130, -1, 4, 193, + 36, -1, 4, 193, 286, 360, 348, 348, -1, 4, + 193, 286, 358, 363, 357, -1, 4, 223, 238, 348, + 348, 360, -1, 4, 223, 238, 348, 348, 358, 365, + -1, 4, 252, 238, 348, 348, 360, -1, 4, 252, + 238, 348, 348, 358, 365, -1, 4, 221, 256, 369, + -1, 4, 221, 262, 4, -1, 4, 223, 120, 350, + -1, 4, 228, 360, 357, 357, 348, -1, 4, 228, + 358, 363, 357, 357, 348, 358, 365, -1, 4, 229, + 506, 350, -1, 4, 242, 40, -1, 4, 243, 221, + 360, 357, 357, -1, 4, 243, 221, 358, 363, 357, + 357, -1, 4, 243, 276, 358, 363, 358, 365, -1, + 4, 253, -1, 4, 253, 208, -1, 4, 278, 5, + -1, 4, 280, 5, -1, 4, 280, 242, 350, -1, + 4, 292, -1, 4, 294, -1, 4, 300, 27, 350, + -1, 4, 300, 221, 360, 357, 348, 353, -1, 4, + 300, 221, 358, 363, 357, 358, 365, 348, 353, -1, + 4, 334, 4, -1, 164, -1, 164, 348, 348, -1, + 173, 501, -1, 174, 502, -1, 193, 503, -1, 227, + 350, -1, 229, 506, 350, -1, 229, 506, 350, 348, + 348, -1, 242, 40, 348, 348, -1, 242, 192, 348, + 348, 4, -1, 242, 110, -1, 247, 5, 493, 358, + 363, 364, 350, -1, 247, 279, 5, -1, 253, 510, + -1, 260, 511, -1, 5, 66, 5, -1, 5, 80, + -1, 5, 99, -1, 5, 89, -1, 5, 129, 5, + -1, 5, 148, -1, 5, 148, 208, -1, 5, 193, + 348, 348, -1, 5, 193, 130, -1, 5, 193, 36, + -1, 5, 193, 286, 360, 357, -1, 5, 193, 286, + 358, 363, 357, -1, 5, 229, 506, 350, -1, 5, + 253, -1, 5, 253, 208, -1, 5, 292, -1, 5, + 294, -1, 278, 105, 5, 5, -1, 278, 99, 5, + -1, 278, 99, 17, -1, 278, 5, -1, 278, 295, + 5, -1, 214, -1, 214, 358, -1, 291, -1, 292, + 17, -1, 294, 17, -1, 334, 4, -1, 253, -1, + 294, -1, 148, -1, 292, -1, 40, 193, -1, 193, + -1, 110, 193, -1, 40, 105, -1, 105, -1, 110, + 105, -1, 40, 242, -1, 242, -1, 110, 242, -1, + 99, -1, 280, -1, 66, -1, 334, -1, 229, -1, + 129, -1, 164, -1, 295, -1, -1, 4, -1, 30, + 350, -1, 234, 348, -1, 160, 4, -1, 209, 4, + 348, -1, 62, 348, 348, 348, 507, -1, 108, 348, + 348, 348, 348, 352, 507, -1, 48, 348, 348, 348, + 348, 352, 507, -1, 223, 348, 348, 348, 348, 507, + -1, 252, 348, 348, 348, 348, 507, -1, 171, 348, + 348, 348, 348, 507, -1, 300, 348, 348, 348, 348, + 507, -1, 280, 348, 348, 352, 507, -1, 62, 221, + 348, 348, 370, 507, -1, 48, 221, 348, 348, 370, + 507, -1, 102, 221, 348, 348, 370, 507, -1, 85, + 221, 348, 348, 370, 507, -1, 344, 221, 348, 348, + 370, 507, -1, 27, 221, 348, 348, 370, 507, -1, + 51, 221, 348, 348, 370, 507, -1, 243, 348, 348, + 348, 348, 358, 363, 358, 365, 507, -1, 74, 348, + 348, 348, 358, 363, 507, -1, 228, 348, 348, 348, + 348, 348, 507, -1, 22, 348, 348, 348, 348, 4, + 507, -1, 109, 348, 348, 348, 348, 348, 4, 352, + 507, -1, 49, 348, 348, 348, 348, 348, 4, 352, + 507, -1, 82, 348, 348, 353, 353, 4, 348, 348, + 4, 507, -1, 112, 348, 348, 353, 353, 4, 348, + 348, 348, 4, 352, 507, -1, 52, 348, 348, 353, + 353, 4, 348, 348, 348, 4, 352, 507, -1, 75, + 507, -1, 279, 490, -1, 5, 348, 348, -1, 298, + 5, 348, 348, -1, 348, 348, 298, 5, -1, 5, + 358, 363, 357, -1, 4, 4, -1, 40, 348, 348, + 4, -1, 192, 348, 348, 4, -1, 110, -1, 104, + -1, 336, -1, 63, -1, 246, -1, 245, -1, 231, + -1, 337, -1, 60, 495, -1, 66, -1, 129, -1, + 113, -1, 141, 348, 348, -1, 153, 348, 348, -1, + 147, 20, 82, 358, -1, 147, 20, 150, 5, 5, + 4, -1, 147, 20, 219, 5, 5, 5, 5, 358, + 363, 372, -1, 147, 20, 220, 5, 5, 358, 372, + -1, 147, 20, 233, 5, 5, 5, 358, -1, 147, + 20, 272, 358, 363, -1, 4, 20, 82, 358, -1, + 4, 20, 150, 5, 5, 4, -1, 4, 20, 219, + 5, 5, 5, 5, 358, 363, 372, -1, 4, 20, + 220, 5, 5, 358, 372, -1, 4, 20, 233, 5, + 5, 5, 358, -1, 4, 20, 272, 358, 363, -1, + 153, 17, -1, 4, 21, -1, 4, 21, 360, -1, + 4, 21, 358, 363, -1, 4, 22, 234, 358, 365, + -1, 4, 48, 120, -1, 4, 49, 234, 358, 365, + -1, 4, 48, 234, 358, 365, -1, 4, 52, 21, + -1, 4, 52, 21, 360, -1, 4, 52, 21, 358, + 363, -1, 4, 52, 234, 358, 365, -1, 4, 59, + 358, 363, 364, -1, 4, 62, 120, -1, 4, 62, + 234, 358, 365, -1, 4, 66, -1, 4, 74, 27, + -1, 4, 74, 166, -1, 4, 74, 234, 358, 365, + -1, 4, 74, 276, -1, 4, 75, 136, -1, 4, + 82, 21, -1, 4, 82, 21, 360, -1, 4, 82, + 21, 358, 363, -1, 4, 82, 234, 358, 365, -1, + 4, 108, 120, -1, 4, 108, 234, 358, 365, -1, + 4, 109, 234, 358, 365, -1, 4, 112, 21, -1, + 4, 112, 21, 360, -1, 4, 112, 21, 358, 363, + -1, 4, 112, 234, 358, 365, -1, 4, 129, -1, + 4, 148, -1, 4, 171, 27, -1, 4, 171, 167, + 358, 365, -1, 4, 171, 221, 358, 363, 364, -1, + 4, 180, 167, 348, 358, 365, -1, 4, 223, 120, + -1, 4, 221, 256, -1, 4, 221, 262, -1, 4, + 228, 221, 358, 363, 364, -1, 4, 228, 167, 358, + 365, -1, 4, 228, 284, 358, 365, -1, 4, 229, + -1, 4, 229, 506, -1, 4, 243, 167, 358, 365, + -1, 4, 243, 221, 358, 363, 364, -1, 4, 243, + 276, -1, 4, 253, -1, 4, 278, -1, 4, 278, + 4, -1, 4, 280, -1, 4, 280, 242, -1, 4, + 290, -1, 4, 300, 27, -1, 4, 300, 167, 358, + 365, -1, 4, 300, 221, 358, 363, 364, -1, 4, + 334, -1, 148, 496, -1, 148, 204, -1, 204, -1, + 223, 252, 348, 348, -1, 252, 252, 348, 348, -1, + 227, -1, 229, 506, -1, 253, 497, -1, 253, 204, + -1, 260, 498, -1, 5, 66, -1, 5, 129, -1, + 5, 153, -1, 5, 229, 506, -1, 5, 278, -1, + 5, 278, 204, -1, 278, 17, -1, 278, 98, 194, + -1, 334, -1, 30, -1, 234, -1, 160, -1, 209, + -1, -1, 348, 348, -1, -1, 348, 348, -1, -1, + 280, -1, -1, -1, 222, -1, 235, -1, 296, -1, + 57, -1, 20, -1, 493, 358, 363, 364, 350, 508, + 514, -1, 253, 493, 358, 363, 364, 350, 508, 514, + -1, 493, 5, -1, 493, 5, 358, 363, -1, 493, + 4, -1, 493, 4, 358, 363, -1, 123, 5, 5, + 491, 4, 5, -1, 348, 348, -1, 130, -1, 36, + -1, 40, 348, 348, -1, 192, 348, 348, -1, 110, + -1, 286, 360, 357, -1, 286, 358, 363, 357, -1, + 504, 505, -1, 505, -1, 506, 345, 350, -1, 66, + 345, 5, -1, 92, 345, 4, 4, -1, 334, 345, + 4, -1, 129, 345, 5, -1, 280, 345, 5, -1, + 517, -1, 518, -1, 201, -1, 253, -1, 148, -1, + 91, -1, 125, -1, 105, -1, 193, -1, 242, -1, + 99, -1, 156, -1, 268, -1, 499, -1, 499, 504, + -1, -1, -1, 509, 512, -1, 17, -1, 208, 348, + 348, -1, 287, -1, 287, 348, 348, -1, 350, -1, + 280, 350, -1, 512, 513, -1, 513, -1, 506, 345, + 350, -1, -1, -1, 515, 516, -1, 516, 517, -1, + 517, -1, 278, 345, 5, -1, 55, 345, 487, 5, + 5, -1, 64, -1, 66, 5, -1, 181, 4, -1, + 285, 348, -1, 344, -1, 342, -1, 337, -1, 201, + -1, 348, 348, 348, 348, -1, 348, 348, -1, 360, + 348, 348, -1, 358, 363, 357, -1, 286, 522, -1, + 39, 348, 348, -1, 192, 523, -1, 227, 350, -1, + 348, 348, -1, 360, 348, 348, -1, 358, 363, 357, + -1, 40, 348, 348, -1, 348, 348, -1, 110, 348, + 348, -1, 350, -1, 305, 359, 363, -1, 5, 4, + 4, -1, 295, -1, 70, 526, -1, 168, 4, -1, + 239, 4, -1, 248, 348, -1, 54, -1, 138, -1, + 240, -1, 90, -1, 148, 528, -1, 253, 529, -1, + 40, 348, 348, -1, 192, 348, 348, -1, 110, -1, + 258, 110, -1, 40, 348, 348, -1, 192, 348, 348, + -1, 110, -1, 258, 110, -1, 187, -1, 13, -1, + 201, -1, 34, -1, 107, -1, 61, 5, -1, 276, + 358, -1, 299, 4, 4, 4, -1, 348, -1, 348, + 97, -1, 192, 534, -1, 286, 348, -1, 286, 348, + 97, -1, 40, -1, 348, -1, 110, -1, 26, 536, + -1, 123, 538, -1, 203, 548, -1, 111, 549, -1, + 216, 5, -1, 119, 5, 373, -1, 61, 5, 373, + -1, 266, 4, 373, -1, 240, 87, 537, -1, 119, + 5, 373, -1, 61, 5, 373, -1, 266, 4, 373, + -1, 539, -1, 155, 539, -1, 277, 540, -1, 263, + 541, -1, 116, 87, 542, -1, 190, 543, -1, 240, + 155, 545, -1, 240, 87, 546, -1, 237, 547, -1, + 119, 5, -1, 61, 5, -1, 266, 4, -1, 119, + 5, -1, 61, 5, -1, 266, 4, -1, 119, 5, + -1, 61, 5, -1, 266, 4, -1, 119, 5, -1, + 61, 5, -1, 266, 4, -1, 155, 544, -1, 119, + 5, 4, -1, 61, 5, 4, -1, 266, 4, 4, + -1, 119, 5, -1, 61, 5, -1, 266, 4, -1, + 119, 5, -1, 61, 5, -1, 266, 4, -1, 119, + 5, -1, 61, 5, -1, 266, 4, -1, 119, 5, + -1, 61, 5, -1, 266, 4, -1, 119, 5, 373, + -1, 61, 5, 373, -1, 266, 4, 373, -1, 119, + 5, 5, 373, -1, 551, 4, -1, 99, -1, 50, + -1, 134, -1, 288, -1, -1, 4, 348, 348, 348, + 348, -1, 202, -1, 202, 4, 348, 348, 348, 348, + -1, 123, 263, 553, -1, 4, -1, 348, 358, -1, + 4, 4, -1, 4, 348, 358, -1, 348, 348, -1, + 286, 348, 348, -1, 359, 363, 364, -1, 16, 558, + -1, 238, 4, -1, 236, 557, -1, 23, 556, -1, + 4, 4, -1, 4, 5, -1, 280, 4, 5, -1, + 4, 4, -1, 4, 5, -1, 280, 4, 5, -1, + 4, -1, 4, 359, 363, -1, 4, 6, 359, 363, + -1, 226, -1, 348, 348, -1, 348, 348, 12, 348, + 348, -1, 348, 348, 12, 360, 348, 348, -1, 348, + 348, 12, 358, 363, 357, -1, 286, 561, -1, 122, + -1, 122, 348, -1, 348, 348, -1, 348, 348, 12, + 348, 348, -1, 348, 348, 12, 360, 348, 348, -1, + 348, 348, 12, 358, 363, 357, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 446, 446, 447, 448, 449, 450, 451, 452, 453, - 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 500, 501, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 519, - 521, 522, 523, 524, 526, 527, 528, 529, 532, 533, - 534, 535, 536, 539, 540, 543, 544, 545, 548, 551, - 554, 557, 569, 576, 583, 591, 592, 593, 594, 595, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 618, 619, 620, 621, 622, 623, 624, 625, 628, 629, - 632, 633, 634, 635, 636, 637, 638, 639, 642, 643, - 644, 645, 646, 649, 650, 651, 652, 653, 654, 655, - 656, 657, 658, 659, 662, 663, 664, 667, 668, 669, - 670, 673, 674, 675, 678, 679, 680, 683, 684, 685, - 688, 689, 690, 691, 692, 693, 694, 695, 698, 699, - 702, 703, 704, 705, 706, 707, 710, 711, 712, 715, - 716, 717, 718, 719, 720, 723, 724, 725, 726, 727, - 728, 729, 730, 731, 735, 736, 739, 740, 743, 744, - 747, 748, 750, 751, 752, 755, 756, 759, 761, 763, - 765, 767, 769, 771, 773, 775, 779, 780, 781, 782, - 783, 784, 785, 786, 789, 790, 793, 794, 795, 797, - 799, 800, 801, 803, 807, 808, 811, 812, 814, 817, - 819, 825, 826, 827, 830, 831, 832, 835, 836, 837, - 838, 839, 840, 846, 847, 850, 851, 852, 853, 854, - 857, 858, 859, 862, 863, 868, 873, 880, 882, 884, - 885, 886, 889, 891, 894, 895, 898, 899, 900, 901, - 902, 905, 907, 909, 912, 913, 916, 917, 918, 925, - 926, 927, 928, 931, 932, 935, 936, 939, 940, 943, - 945, 949, 950, 953, 955, 956, 957, 958, 961, 962, - 963, 964, 965, 968, 970, 972, 973, 975, 977, 979, - 981, 985, 988, 991, 992, 993, 994, 995, 996, 997, - 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, - 1008, 1009, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, - 1019, 1020, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1030, - 1032, 1033, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, - 1046, 1047, 1048, 1051, 1054, 1055, 1057, 1059, 1060, 1061, - 1062, 1063, 1064, 1071, 1072, 1075, 1076, 1077, 1080, 1081, - 1084, 1087, 1088, 1090, 1094, 1095, 1096, 1099, 1103, 1105, - 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1116, 1117, - 1118, 1121, 1122, 1125, 1127, 1133, 1137, 1139, 1141, 1144, - 1145, 1147, 1150, 1153, 1154, 1158, 1160, 1163, 1168, 1169, - 1170, 1174, 1175, 1176, 1179, 1180, 1181, 1184, 1185, 1187, - 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1198, - 1199, 1202, 1203, 1206, 1207, 1208, 1209, 1212, 1213, 1216, - 1218, 1221, 1225, 1226, 1227, 1228, 1231, 1232, 1233, 1236, - 1237, 1238, 1241, 1244, 1245, 1246, 1249, 1250, 1253, 1254, - 1255, 1256, 1257, 1258, 1259, 1262, 1263, 1266, 1267, 1270, - 1271, 1274, 1275, 1278, 1279, 1280, 1283, 1284, 1287, 1288, - 1291, 1294, 1302, 1303, 1306, 1307, 1308, 1309, 1310, 1311, - 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, - 1324, 1327, 1328, 1331, 1332, 1333, 1334, 1337, 1338, 1339, - 1340, 1343, 1344, 1345, 1346, 1347, 1350, 1351, 1352, 1353, - 1354, 1355, 1357, 1358, 1363, 1364, 1367, 1369, 1371, 1374, - 1375, 1376, 1377, 1378, 1379, 1382, 1384, 1386, 1388, 1389, - 1391, 1393, 1395, 1397, 1399, 1402, 1403, 1404, 1405, 1406, - 1407, 1409, 1410, 1411, 1414, 1417, 1419, 1421, 1423, 1425, - 1427, 1429, 1431, 1434, 1436, 1438, 1440, 1441, 1442, 1443, - 1444, 1447, 1448, 1449, 1450, 1451, 1452, 1453, 1455, 1457, - 1458, 1459, 1462, 1463, 1464, 1465, 1466, 1467, 1469, 1470, - 1471, 1474, 1475, 1476, 1477, 1478, 1481, 1484, 1487, 1490, - 1493, 1496, 1499, 1502, 1505, 1510, 1513, 1516, 1519, 1522, - 1525, 1528, 1531, 1534, 1537, 1540, 1545, 1548, 1551, 1554, - 1557, 1560, 1563, 1566, 1569, 1574, 1577, 1580, 1583, 1586, - 1589, 1592, 1595, 1598, 1601, 1604, 1609, 1611, 1612, 1613, - 1614, 1615, 1617, 1618, 1619, 1621, 1622, 1623, 1624, 1625, - 1626, 1627, 1629, 1631, 1632, 1633, 1636, 1637, 1638, 1639, - 1640, 1641, 1643, 1644, 1645, 1648, 1650, 1652, 1653, 1655, - 1657, 1661, 1662, 1665, 1666, 1667, 1670, 1677, 1678, 1679, - 1680, 1681, 1682, 1683, 1686, 1694, 1695, 1696, 1697, 1699, - 1701, 1702, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1710, - 1711, 1713, 1716, 1719, 1720, 1721, 1724, 1726, 1729, 1732, - 1735, 1739, 1742, 1744, 1747, 1750, 1754, 1759, 1764, 1766, - 1768, 1770, 1771, 1773, 1775, 1777, 1779, 1781, 1782, 1784, - 1786, 1790, 1795, 1797, 1799, 1801, 1803, 1805, 1807, 1809, - 1811, 1813, 1815, 1818, 1819, 1821, 1823, 1824, 1826, 1828, - 1829, 1830, 1832, 1834, 1835, 1836, 1838, 1839, 1841, 1844, - 1848, 1852, 1855, 1858, 1862, 1867, 1873, 1874, 1875, 1877, - 1878, 1880, 1884, 1886, 1887, 1888, 1890, 1893, 1895, 1898, - 1900, 1903, 1905, 1907, 1910, 1915, 1918, 1919, 1922, 1925, - 1929, 1930, 1932, 1933, 1934, 1936, 1937, 1939, 1940, 1942, - 1947, 1949, 1950, 1952, 1953, 1954, 1955, 1956, 1957, 1959, - 1961, 1963, 1964, 1966, 1967, 1969, 1971, 1972, 1973, 1974, - 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1983, 1985, 1987, - 1988, 1989, 1990, 1992, 1993, 1994, 1995, 1996, 1998, 1999, - 2000, 2001, 2002, 2003, 2006, 2007, 2008, 2009, 2010, 2011, - 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, - 2022, 2023, 2024, 2025, 2026, 2029, 2030, 2031, 2032, 2033, - 2034, 2042, 2049, 2058, 2067, 2074, 2081, 2089, 2097, 2104, - 2109, 2114, 2119, 2124, 2129, 2134, 2140, 2149, 2159, 2169, - 2176, 2186, 2196, 2205, 2217, 2230, 2235, 2238, 2240, 2242, - 2247, 2251, 2254, 2256, 2258, 2261, 2262, 2263, 2264, 2265, - 2266, 2267, 2270, 2271, 2272, 2273, 2274, 2275, 2277, 2279, - 2281, 2283, 2285, 2287, 2290, 2292, 2294, 2296, 2298, 2300, - 2303, 2304, 2305, 2306, 2308, 2311, 2313, 2315, 2316, 2317, - 2319, 2322, 2325, 2327, 2328, 2329, 2330, 2332, 2333, 2334, - 2335, 2336, 2338, 2340, 2342, 2345, 2346, 2347, 2349, 2351, - 2352, 2353, 2354, 2356, 2359, 2363, 2364, 2365, 2368, 2371, - 2373, 2374, 2375, 2377, 2380, 2381, 2383, 2384, 2385, 2386, - 2387, 2389, 2390, 2392, 2395, 2396, 2397, 2398, 2399, 2401, - 2403, 2404, 2405, 2406, 2408, 2410, 2411, 2412, 2413, 2414, - 2415, 2417, 2418, 2420, 2423, 2424, 2425, 2426, 2429, 2430, - 2433, 2434, 2437, 2438, 2441, 2454, 2455, 2459, 2460, 2464, - 2465, 2468, 2473, 2480, 2482, 2485, 2487, 2490, 2494, 2495, - 2496, 2497, 2498, 2499, 2500, 2502, 2506, 2507, 2510, 2511, - 2512, 2513, 2514, 2515, 2516, 2517, 2520, 2521, 2522, 2523, - 2524, 2525, 2526, 2527, 2528, 2529, 2530, 2533, 2534, 2537, - 2538, 2538, 2541, 2542, 2543, 2544, 2547, 2548, 2551, 2552, - 2555, 2559, 2560, 2560, 2563, 2564, 2567, 2570, 2574, 2575, - 2576, 2577, 2580, 2581, 2582, 2583, 2586, 2588, 2589, 2594, - 2596, 2597, 2598, 2599, 2602, 2603, 2608, 2612, 2613, 2614, - 2617, 2618, 2623, 2624, 2627, 2629, 2630, 2631, 2636, 2637, - 2638, 2639, 2642, 2643, 2646, 2648, 2650, 2651, 2654, 2656, - 2657, 2658, 2661, 2662, 2665, 2666, 2667, 2670, 2671, 2672, - 2675, 2676, 2677, 2678, 2679, 2682, 2683, 2684, 2687, 2688, - 2689, 2690, 2691, 2694, 2696, 2698, 2700, 2703, 2705, 2707, - 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2718, 2721, - 2722, 2723, 2726, 2727, 2728, 2731, 2732, 2733, 2736, 2737, - 2738, 2741, 2742, 2743, 2744, 2747, 2748, 2749, 2752, 2753, - 2754, 2757, 2758, 2759, 2762, 2763, 2764, 2767, 2769, 2771, - 2775, 2779, 2780, 2783, 2784, 2785, 2788, 2789, 2791, 2792, - 2794, 2797, 2798, 2799, 2800, 2803, 2804, 2807, 2809, 2810, - 2811, 2812, 2815, 2816, 2817, 2820, 2821, 2822, 2825, 2826, - 2831, 2835, 2842, 2843, 2845, 2850, 2852, 2855, 2856, 2857, - 2858, 2860, 2865 + 0, 447, 447, 448, 449, 450, 451, 452, 453, 454, + 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 501, 502, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 520, + 522, 523, 524, 525, 527, 528, 529, 530, 533, 534, + 535, 536, 537, 540, 541, 544, 545, 546, 549, 552, + 555, 558, 570, 577, 584, 592, 593, 594, 595, 596, + 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, + 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, + 619, 620, 621, 622, 623, 624, 625, 626, 629, 630, + 633, 634, 635, 636, 637, 638, 639, 640, 643, 644, + 645, 646, 647, 650, 651, 652, 653, 654, 655, 656, + 657, 658, 659, 660, 663, 664, 665, 668, 669, 670, + 671, 674, 675, 676, 679, 680, 681, 684, 685, 686, + 689, 690, 691, 692, 693, 694, 695, 696, 699, 700, + 703, 704, 705, 706, 707, 708, 711, 712, 713, 716, + 717, 718, 719, 720, 721, 724, 725, 726, 727, 728, + 729, 730, 731, 732, 736, 737, 740, 741, 744, 745, + 748, 749, 751, 752, 753, 756, 757, 760, 762, 764, + 766, 768, 770, 772, 774, 776, 780, 781, 782, 783, + 784, 785, 786, 787, 790, 791, 794, 795, 796, 798, + 800, 801, 802, 804, 808, 809, 812, 813, 815, 818, + 820, 826, 827, 828, 831, 832, 833, 836, 837, 838, + 839, 840, 841, 847, 848, 851, 852, 853, 854, 855, + 858, 859, 860, 863, 864, 869, 874, 881, 883, 885, + 886, 887, 890, 892, 895, 896, 899, 900, 901, 902, + 903, 906, 908, 910, 913, 914, 917, 918, 919, 926, + 927, 928, 929, 932, 933, 936, 937, 940, 941, 944, + 946, 950, 951, 954, 956, 957, 958, 959, 962, 963, + 964, 965, 966, 969, 971, 973, 974, 976, 978, 980, + 982, 986, 989, 992, 993, 994, 995, 996, 997, 998, + 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, + 1009, 1010, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, + 1020, 1021, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1031, + 1033, 1034, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, + 1047, 1048, 1049, 1052, 1055, 1056, 1058, 1060, 1061, 1062, + 1063, 1064, 1065, 1072, 1073, 1076, 1077, 1078, 1081, 1082, + 1085, 1088, 1089, 1091, 1095, 1096, 1097, 1100, 1104, 1106, + 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1117, 1118, + 1119, 1122, 1123, 1126, 1128, 1134, 1138, 1140, 1142, 1145, + 1146, 1148, 1151, 1154, 1155, 1159, 1161, 1164, 1169, 1170, + 1171, 1175, 1176, 1177, 1180, 1181, 1182, 1185, 1186, 1188, + 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1199, + 1200, 1203, 1204, 1207, 1208, 1209, 1210, 1213, 1214, 1217, + 1219, 1222, 1226, 1227, 1228, 1229, 1232, 1233, 1234, 1237, + 1238, 1239, 1242, 1245, 1246, 1247, 1250, 1251, 1254, 1255, + 1256, 1257, 1258, 1259, 1260, 1263, 1264, 1267, 1268, 1271, + 1272, 1275, 1276, 1279, 1280, 1281, 1284, 1285, 1288, 1289, + 1292, 1295, 1303, 1304, 1307, 1308, 1309, 1310, 1311, 1312, + 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, + 1325, 1328, 1329, 1332, 1333, 1334, 1335, 1338, 1339, 1340, + 1341, 1344, 1345, 1346, 1347, 1348, 1351, 1352, 1353, 1354, + 1355, 1356, 1358, 1359, 1364, 1365, 1368, 1370, 1372, 1375, + 1376, 1377, 1378, 1379, 1380, 1383, 1385, 1387, 1389, 1390, + 1392, 1394, 1396, 1398, 1400, 1403, 1404, 1405, 1406, 1407, + 1408, 1410, 1411, 1412, 1415, 1418, 1420, 1422, 1424, 1426, + 1428, 1430, 1432, 1435, 1437, 1439, 1441, 1442, 1443, 1444, + 1445, 1448, 1449, 1450, 1451, 1452, 1453, 1454, 1456, 1458, + 1459, 1460, 1463, 1464, 1465, 1466, 1467, 1468, 1470, 1471, + 1472, 1475, 1476, 1477, 1478, 1479, 1482, 1485, 1488, 1491, + 1494, 1497, 1500, 1503, 1506, 1511, 1514, 1517, 1520, 1523, + 1526, 1529, 1532, 1535, 1538, 1541, 1546, 1549, 1552, 1555, + 1558, 1561, 1564, 1567, 1570, 1575, 1578, 1581, 1584, 1587, + 1590, 1593, 1596, 1599, 1602, 1605, 1610, 1612, 1613, 1614, + 1615, 1616, 1618, 1619, 1620, 1622, 1623, 1624, 1625, 1626, + 1627, 1628, 1630, 1632, 1633, 1634, 1637, 1638, 1639, 1640, + 1641, 1642, 1644, 1645, 1646, 1649, 1651, 1653, 1654, 1656, + 1658, 1662, 1663, 1666, 1667, 1668, 1671, 1678, 1679, 1680, + 1681, 1682, 1683, 1684, 1687, 1695, 1696, 1697, 1698, 1700, + 1702, 1703, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1711, + 1712, 1714, 1717, 1720, 1721, 1722, 1725, 1727, 1730, 1733, + 1734, 1737, 1741, 1744, 1746, 1749, 1752, 1756, 1761, 1766, + 1768, 1769, 1771, 1773, 1774, 1776, 1778, 1780, 1782, 1784, + 1785, 1787, 1789, 1793, 1798, 1800, 1802, 1804, 1806, 1808, + 1810, 1812, 1814, 1816, 1818, 1821, 1822, 1824, 1826, 1827, + 1829, 1831, 1832, 1833, 1835, 1837, 1838, 1839, 1841, 1842, + 1843, 1845, 1848, 1852, 1856, 1859, 1862, 1866, 1871, 1877, + 1878, 1879, 1881, 1882, 1884, 1888, 1890, 1891, 1892, 1894, + 1897, 1899, 1902, 1904, 1907, 1909, 1911, 1912, 1915, 1920, + 1923, 1924, 1927, 1930, 1934, 1935, 1937, 1938, 1939, 1941, + 1942, 1944, 1945, 1947, 1952, 1954, 1955, 1957, 1958, 1959, + 1960, 1961, 1962, 1964, 1966, 1968, 1969, 1971, 1972, 1974, + 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, + 1986, 1988, 1990, 1992, 1993, 1994, 1995, 1997, 1998, 1999, + 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2011, 2012, + 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, + 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2034, + 2035, 2036, 2037, 2038, 2039, 2047, 2054, 2063, 2072, 2079, + 2086, 2094, 2102, 2109, 2114, 2119, 2124, 2129, 2134, 2139, + 2145, 2154, 2164, 2174, 2181, 2191, 2201, 2210, 2222, 2235, + 2240, 2243, 2245, 2247, 2252, 2256, 2259, 2261, 2263, 2266, + 2267, 2268, 2269, 2270, 2271, 2272, 2275, 2276, 2277, 2278, + 2279, 2280, 2282, 2284, 2286, 2288, 2290, 2292, 2295, 2297, + 2299, 2301, 2303, 2305, 2308, 2309, 2310, 2311, 2313, 2316, + 2317, 2319, 2321, 2322, 2323, 2325, 2328, 2331, 2332, 2334, + 2335, 2336, 2337, 2339, 2340, 2341, 2342, 2343, 2345, 2347, + 2348, 2350, 2353, 2354, 2355, 2357, 2359, 2360, 2361, 2362, + 2364, 2367, 2371, 2372, 2373, 2374, 2377, 2380, 2382, 2383, + 2384, 2386, 2389, 2390, 2392, 2393, 2394, 2395, 2396, 2398, + 2399, 2401, 2404, 2405, 2406, 2407, 2408, 2410, 2412, 2413, + 2414, 2415, 2417, 2419, 2420, 2421, 2422, 2423, 2424, 2426, + 2427, 2429, 2432, 2433, 2434, 2435, 2438, 2439, 2442, 2443, + 2446, 2447, 2450, 2463, 2464, 2468, 2469, 2473, 2474, 2477, + 2482, 2489, 2491, 2494, 2496, 2499, 2503, 2504, 2505, 2506, + 2507, 2508, 2509, 2511, 2515, 2516, 2519, 2520, 2521, 2522, + 2523, 2524, 2525, 2526, 2529, 2530, 2531, 2532, 2533, 2534, + 2535, 2536, 2537, 2538, 2539, 2542, 2543, 2546, 2547, 2547, + 2550, 2551, 2552, 2553, 2556, 2557, 2560, 2561, 2564, 2568, + 2569, 2569, 2572, 2573, 2576, 2579, 2583, 2584, 2585, 2586, + 2589, 2590, 2591, 2592, 2595, 2597, 2598, 2603, 2605, 2606, + 2607, 2608, 2611, 2612, 2617, 2621, 2622, 2623, 2626, 2627, + 2632, 2633, 2636, 2638, 2639, 2640, 2645, 2646, 2647, 2648, + 2651, 2652, 2655, 2657, 2659, 2660, 2663, 2665, 2666, 2667, + 2670, 2671, 2674, 2675, 2676, 2679, 2680, 2681, 2684, 2685, + 2686, 2687, 2688, 2691, 2692, 2693, 2696, 2697, 2698, 2699, + 2700, 2703, 2705, 2707, 2709, 2712, 2714, 2716, 2719, 2720, + 2721, 2722, 2723, 2724, 2725, 2726, 2727, 2730, 2731, 2732, + 2735, 2736, 2737, 2740, 2741, 2742, 2745, 2746, 2747, 2750, + 2751, 2752, 2753, 2756, 2757, 2758, 2761, 2762, 2763, 2766, + 2767, 2768, 2771, 2772, 2773, 2776, 2778, 2780, 2784, 2788, + 2789, 2792, 2793, 2794, 2797, 2798, 2800, 2801, 2803, 2806, + 2807, 2808, 2809, 2812, 2813, 2816, 2818, 2819, 2820, 2821, + 2824, 2825, 2826, 2829, 2830, 2831, 2834, 2835, 2840, 2844, + 2851, 2852, 2854, 2859, 2861, 2864, 2865, 2866, 2867, 2869, + 2874 }; #endif @@ -1911,7 +1918,7 @@ static const char *const yytname[] = "DETECTOR_", "DIAMOND_", "DIM_", "DS9_", "EDIT_", "ECLIPTIC_", "ELEVATION_", "ELLIPSE_", "ELLIPSEANNULUS_", "END_", "ENVI_", "EPANDA_", "EPSILON_", "EQUATORIAL_", "ERASE_", "EXT_", "FACTOR_", "FALSE_", - "FILE_", "FILTER_", "FIT_", "FITS_", "FITSY_", "FIXED_", "FK4_", + "FILE_", "FILL_", "FILTER_", "FIT_", "FITS_", "FITSY_", "FIXED_", "FK4_", "FK4_NO_E_", "FK5_", "FONT_", "FRONT_", "FULL_", "FUNCTION_", "GALACTIC_", "GAUSSIAN_", "GET_", "GLOBAL_", "GRAPHICS_", "GRAY_", "GRID_", "GZ_", "HANDLE_", "HAS_", "HEAD_", "HEADER_", "HEIGHT_", @@ -2031,140 +2038,141 @@ static const yytype_uint16 yytoknum[] = 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, - 595, 89, 78, 88, 61 + 595, 596, 89, 78, 88, 61 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 345, 346, 346, 346, 346, 346, 346, 346, 346, - 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, - 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, - 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, - 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, - 346, 346, 346, 346, 347, 347, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 348, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 350, 350, - 350, 350, 350, 351, 351, 352, 352, 352, 353, 354, - 355, 356, 356, 356, 356, 357, 357, 357, 357, 357, - 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 358, 358, 359, 359, - 360, 360, 360, 360, 360, 360, 360, 360, 361, 361, - 361, 361, 361, 362, 362, 362, 362, 362, 362, 362, - 362, 362, 362, 362, 363, 363, 363, 364, 364, 364, - 364, 365, 365, 365, 366, 366, 366, 367, 367, 367, - 368, 368, 368, 368, 368, 368, 368, 368, 369, 369, - 370, 370, 370, 370, 370, 370, 371, 371, 371, 372, - 372, 372, 372, 372, 372, 373, 373, 373, 373, 373, - 373, 373, 373, 373, 374, 374, 375, 375, 376, 376, - 377, 377, 377, 377, 377, 378, 378, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 380, 380, 380, 380, - 380, 380, 380, 380, 381, 381, 382, 382, 382, 382, - 382, 382, 382, 382, 383, 383, 384, 384, 384, 384, - 384, 385, 385, 385, 386, 386, 386, 387, 387, 387, - 387, 387, 387, 388, 388, 389, 389, 389, 389, 389, - 390, 390, 390, 391, 391, 391, 391, 392, 392, 392, - 392, 392, 393, 393, 394, 394, 395, 395, 395, 395, - 395, 396, 396, 396, 397, 397, 398, 398, 398, 399, - 399, 399, 399, 400, 400, 401, 401, 402, 402, 403, - 403, 404, 404, 404, 404, 404, 404, 404, 405, 405, - 405, 405, 405, 406, 406, 406, 406, 406, 406, 406, - 406, 407, 408, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 410, 410, 410, 410, 410, 410, 410, 410, - 411, 411, 411, 412, 413, 413, 413, 413, 413, 413, - 413, 413, 413, 414, 414, 415, 415, 415, 416, 416, - 417, 418, 418, 418, 419, 419, 419, 420, 421, 421, - 421, 421, 421, 421, 421, 421, 421, 421, 422, 422, - 422, 423, 423, 424, 424, 424, 425, 425, 425, 426, - 426, 426, 427, 428, 428, 429, 429, 429, 430, 430, - 430, 431, 431, 431, 432, 432, 432, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 434, 434, 435, 435, 435, 435, 436, 436, 437, - 437, 437, 438, 438, 438, 438, 439, 439, 439, 440, - 440, 440, 441, 442, 442, 442, 443, 443, 444, 444, - 444, 444, 444, 444, 444, 445, 445, 446, 446, 447, - 447, 448, 448, 449, 449, 449, 450, 450, 451, 451, - 452, 452, 453, 453, 454, 454, 454, 454, 454, 454, - 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, - 455, 456, 456, 457, 457, 457, 457, 458, 458, 458, - 458, 459, 459, 459, 459, 459, 460, 460, 460, 460, - 460, 460, 460, 460, 461, 461, 462, 462, 462, 463, - 463, 463, 463, 463, 463, 464, 464, 464, 464, 464, + 0, 346, 347, 347, 347, 347, 347, 347, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, + 347, 347, 347, 347, 348, 348, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 350, + 350, 350, 350, 350, 350, 350, 350, 350, 351, 351, + 351, 351, 351, 352, 352, 353, 353, 353, 354, 355, + 356, 357, 357, 357, 357, 358, 358, 358, 358, 358, + 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, 360, 360, + 361, 361, 361, 361, 361, 361, 361, 361, 362, 362, + 362, 362, 362, 363, 363, 363, 363, 363, 363, 363, + 363, 363, 363, 363, 364, 364, 364, 365, 365, 365, + 365, 366, 366, 366, 367, 367, 367, 368, 368, 368, + 369, 369, 369, 369, 369, 369, 369, 369, 370, 370, + 371, 371, 371, 371, 371, 371, 372, 372, 372, 373, + 373, 373, 373, 373, 373, 374, 374, 374, 374, 374, + 374, 374, 374, 374, 375, 375, 376, 376, 377, 377, + 378, 378, 378, 378, 378, 379, 379, 380, 380, 380, + 380, 380, 380, 380, 380, 380, 381, 381, 381, 381, + 381, 381, 381, 381, 382, 382, 383, 383, 383, 383, + 383, 383, 383, 383, 384, 384, 385, 385, 385, 385, + 385, 386, 386, 386, 387, 387, 387, 388, 388, 388, + 388, 388, 388, 389, 389, 390, 390, 390, 390, 390, + 391, 391, 391, 392, 392, 392, 392, 393, 393, 393, + 393, 393, 394, 394, 395, 395, 396, 396, 396, 396, + 396, 397, 397, 397, 398, 398, 399, 399, 399, 400, + 400, 400, 400, 401, 401, 402, 402, 403, 403, 404, + 404, 405, 405, 405, 405, 405, 405, 405, 406, 406, + 406, 406, 406, 407, 407, 407, 407, 407, 407, 407, + 407, 408, 409, 410, 410, 410, 410, 410, 410, 410, + 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, + 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, + 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, + 410, 410, 411, 411, 411, 411, 411, 411, 411, 411, + 412, 412, 412, 413, 414, 414, 414, 414, 414, 414, + 414, 414, 414, 415, 415, 416, 416, 416, 417, 417, + 418, 419, 419, 419, 420, 420, 420, 421, 422, 422, + 422, 422, 422, 422, 422, 422, 422, 422, 423, 423, + 423, 424, 424, 425, 425, 425, 426, 426, 426, 427, + 427, 427, 428, 429, 429, 430, 430, 430, 431, 431, + 431, 432, 432, 432, 433, 433, 433, 434, 434, 434, + 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, + 434, 435, 435, 436, 436, 436, 436, 437, 437, 438, + 438, 438, 439, 439, 439, 439, 440, 440, 440, 441, + 441, 441, 442, 443, 443, 443, 444, 444, 445, 445, + 445, 445, 445, 445, 445, 446, 446, 447, 447, 448, + 448, 449, 449, 450, 450, 450, 451, 451, 452, 452, + 453, 453, 454, 454, 455, 455, 455, 455, 455, 455, + 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, + 456, 457, 457, 458, 458, 458, 458, 459, 459, 459, + 459, 460, 460, 460, 460, 460, 461, 461, 461, 461, + 461, 461, 461, 461, 462, 462, 463, 463, 463, 464, 464, 464, 464, 464, 464, 465, 465, 465, 465, 465, - 465, 465, 465, 465, 466, 467, 467, 467, 467, 467, - 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, - 467, 468, 468, 468, 468, 468, 468, 468, 468, 468, - 468, 468, 469, 469, 469, 469, 469, 469, 469, 469, - 469, 470, 470, 470, 470, 470, 471, 471, 471, 471, - 471, 471, 471, 471, 471, 472, 472, 472, 472, 472, - 472, 472, 472, 472, 472, 472, 473, 473, 473, 473, - 473, 473, 473, 473, 473, 474, 474, 474, 474, 474, - 474, 474, 474, 474, 474, 474, 475, 475, 475, 475, - 475, 475, 475, 475, 475, 476, 476, 476, 476, 476, - 476, 476, 476, 476, 476, 476, 477, 477, 477, 477, - 477, 477, 477, 477, 477, 478, 478, 478, 478, 478, - 478, 479, 479, 480, 480, 480, 481, 482, 482, 482, - 482, 482, 482, 482, 483, 484, 484, 484, 484, 484, - 484, 485, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 486, 486, 486, 486, 486, 486, - 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, - 486, 486, 486, 486, 486, 487, 487, 487, 487, 487, - 487, 488, 488, 488, 488, 488, 488, 488, 488, 488, - 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, - 488, 488, 488, 488, 488, 488, 488, 489, 489, 489, - 489, 490, 491, 491, 491, 492, 492, 492, 492, 492, - 492, 492, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 493, 493, 493, 493, 493, 493, - 493, 493, 493, 493, 494, 494, 494, 494, 495, 495, - 496, 496, 497, 497, 498, 499, 499, 499, 499, 499, - 499, 500, 500, 501, 501, 501, 501, 501, 502, 502, - 502, 502, 502, 502, 502, 502, 503, 503, 504, 504, - 504, 504, 504, 504, 504, 504, 505, 505, 505, 505, - 505, 505, 505, 505, 505, 505, 505, 506, 506, 507, - 508, 507, 509, 509, 509, 509, 510, 510, 511, 511, - 512, 513, 514, 513, 515, 515, 516, 517, 518, 518, - 518, 518, 519, 519, 519, 519, 520, 520, 520, 520, - 520, 520, 520, 520, 521, 521, 521, 522, 522, 522, - 523, 523, 523, 523, 524, 524, 524, 524, 525, 525, - 525, 525, 526, 526, 527, 527, 527, 527, 528, 528, - 528, 528, 529, 529, 530, 530, 530, 531, 531, 531, - 532, 532, 532, 532, 532, 533, 533, 533, 534, 534, - 534, 534, 534, 535, 535, 535, 535, 536, 536, 536, - 537, 537, 537, 537, 537, 537, 537, 537, 537, 538, - 538, 538, 539, 539, 539, 540, 540, 540, 541, 541, - 541, 542, 542, 542, 542, 543, 543, 543, 544, 544, - 544, 545, 545, 545, 546, 546, 546, 547, 547, 547, - 548, 549, 549, 550, 550, 550, 551, 551, 551, 551, - 551, 552, 552, 552, 552, 553, 553, 554, 554, 554, - 554, 554, 555, 555, 555, 556, 556, 556, 557, 557, - 557, 558, 559, 559, 559, 559, 559, 560, 560, 560, - 560, 560, 560 + 465, 465, 465, 465, 465, 466, 466, 466, 466, 466, + 466, 466, 466, 466, 467, 468, 468, 468, 468, 468, + 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, + 468, 469, 469, 469, 469, 469, 469, 469, 469, 469, + 469, 469, 470, 470, 470, 470, 470, 470, 470, 470, + 470, 471, 471, 471, 471, 471, 472, 472, 472, 472, + 472, 472, 472, 472, 472, 473, 473, 473, 473, 473, + 473, 473, 473, 473, 473, 473, 474, 474, 474, 474, + 474, 474, 474, 474, 474, 475, 475, 475, 475, 475, + 475, 475, 475, 475, 475, 475, 476, 476, 476, 476, + 476, 476, 476, 476, 476, 477, 477, 477, 477, 477, + 477, 477, 477, 477, 477, 477, 478, 478, 478, 478, + 478, 478, 478, 478, 478, 479, 479, 479, 479, 479, + 479, 480, 480, 481, 481, 481, 482, 483, 483, 483, + 483, 483, 483, 483, 484, 485, 485, 485, 485, 485, + 485, 486, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 485, 485, + 485, 485, 485, 485, 485, 485, 485, 485, 487, 487, + 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, + 487, 487, 487, 487, 487, 487, 487, 487, 487, 488, + 488, 488, 488, 488, 488, 489, 489, 489, 489, 489, + 489, 489, 489, 489, 489, 489, 489, 489, 489, 489, + 489, 489, 489, 489, 489, 489, 489, 489, 489, 489, + 489, 490, 490, 490, 490, 491, 492, 492, 492, 493, + 493, 493, 493, 493, 493, 493, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, + 494, 494, 495, 495, 495, 495, 496, 496, 497, 497, + 498, 498, 499, 500, 500, 500, 500, 500, 500, 501, + 501, 502, 502, 502, 502, 502, 503, 503, 503, 503, + 503, 503, 503, 503, 504, 504, 505, 505, 505, 505, + 505, 505, 505, 505, 506, 506, 506, 506, 506, 506, + 506, 506, 506, 506, 506, 507, 507, 508, 509, 508, + 510, 510, 510, 510, 511, 511, 512, 512, 513, 514, + 515, 514, 516, 516, 517, 518, 519, 519, 519, 519, + 520, 520, 520, 520, 521, 521, 521, 521, 521, 521, + 521, 521, 522, 522, 522, 523, 523, 523, 524, 524, + 524, 524, 525, 525, 525, 525, 526, 526, 526, 526, + 527, 527, 528, 528, 528, 528, 529, 529, 529, 529, + 530, 530, 531, 531, 531, 532, 532, 532, 533, 533, + 533, 533, 533, 534, 534, 534, 535, 535, 535, 535, + 535, 536, 536, 536, 536, 537, 537, 537, 538, 538, + 538, 538, 538, 538, 538, 538, 538, 539, 539, 539, + 540, 540, 540, 541, 541, 541, 542, 542, 542, 543, + 543, 543, 543, 544, 544, 544, 545, 545, 545, 546, + 546, 546, 547, 547, 547, 548, 548, 548, 549, 550, + 550, 551, 551, 551, 552, 552, 552, 552, 552, 553, + 553, 553, 553, 554, 554, 555, 555, 555, 555, 555, + 556, 556, 556, 557, 557, 557, 558, 558, 558, 559, + 560, 560, 560, 560, 560, 561, 561, 561, 561, 561, + 561 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -2243,60 +2251,61 @@ static const yytype_uint8 yyr2[] = 4, 2, 3, 6, 6, 1, 1, 1, 2, 2, 2, 3, 3, 2, 12, 2, 2, 1, 3, 4, 2, 0, 3, 1, 1, 2, 2, 2, 2, 2, - 4, 4, 4, 3, 4, 5, 7, 8, 6, 8, - 9, 6, 6, 7, 10, 11, 12, 9, 5, 5, - 6, 3, 5, 5, 5, 6, 5, 4, 9, 10, - 11, 9, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 7, 7, 2, 4, 4, 4, 4, 5, 4, - 4, 5, 5, 3, 4, 4, 4, 6, 7, 8, - 9, 6, 10, 11, 12, 9, 3, 2, 3, 5, - 6, 7, 4, 3, 3, 6, 6, 6, 7, 6, - 7, 4, 4, 6, 9, 4, 3, 6, 7, 7, - 2, 3, 3, 3, 4, 2, 2, 4, 7, 10, - 3, 1, 3, 2, 2, 2, 2, 3, 5, 4, - 5, 2, 7, 3, 2, 2, 3, 2, 2, 2, - 3, 2, 3, 4, 3, 3, 5, 6, 4, 2, - 3, 2, 2, 4, 3, 3, 2, 3, 1, 2, - 1, 2, 2, 2, 1, 1, 1, 1, 2, 1, - 2, 2, 1, 2, 2, 1, 2, 1, 1, 1, - 1, 1, 1, 1, 1, 0, 1, 2, 2, 2, - 3, 5, 7, 7, 6, 6, 6, 6, 5, 6, - 6, 6, 6, 6, 6, 6, 10, 7, 7, 7, - 9, 9, 10, 12, 12, 2, 2, 3, 4, 4, - 4, 2, 4, 4, 1, 1, 1, 1, 1, 1, - 1, 1, 2, 1, 1, 1, 3, 3, 4, 6, - 10, 7, 7, 5, 4, 6, 10, 7, 7, 5, - 2, 2, 3, 4, 5, 5, 5, 3, 4, 5, - 5, 5, 5, 2, 3, 3, 5, 3, 3, 3, - 4, 5, 5, 5, 5, 3, 4, 5, 5, 2, - 2, 3, 5, 6, 6, 3, 3, 6, 5, 5, - 2, 3, 5, 6, 3, 2, 2, 3, 2, 3, - 2, 3, 5, 6, 2, 2, 2, 1, 4, 4, - 1, 2, 2, 2, 2, 2, 2, 2, 3, 2, - 3, 2, 3, 1, 1, 1, 1, 1, 0, 2, - 0, 2, 0, 1, 0, 0, 1, 1, 1, 1, - 1, 7, 8, 2, 4, 2, 4, 6, 2, 1, - 1, 3, 3, 1, 3, 4, 2, 1, 3, 3, - 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, - 0, 2, 1, 3, 1, 3, 1, 2, 2, 1, - 3, 0, 0, 2, 2, 1, 3, 5, 1, 2, - 2, 2, 1, 1, 1, 1, 4, 2, 3, 3, - 2, 3, 2, 2, 2, 3, 3, 3, 2, 3, - 1, 3, 3, 1, 2, 2, 2, 2, 1, 1, - 1, 1, 2, 2, 3, 3, 1, 2, 3, 3, - 1, 2, 1, 1, 1, 1, 1, 2, 2, 4, - 1, 2, 2, 2, 3, 1, 1, 1, 2, 2, - 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, - 1, 2, 2, 2, 3, 2, 3, 3, 2, 2, + 4, 4, 4, 3, 4, 5, 7, 8, 6, 4, + 8, 9, 6, 6, 7, 10, 11, 12, 9, 5, + 4, 5, 6, 3, 5, 5, 5, 6, 5, 4, + 9, 10, 11, 9, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 7, 7, 2, 4, 4, 4, 4, + 5, 4, 4, 5, 5, 3, 4, 4, 4, 4, + 6, 7, 8, 9, 6, 10, 11, 12, 9, 3, + 2, 3, 5, 6, 7, 4, 3, 3, 6, 6, + 6, 7, 6, 7, 4, 4, 4, 6, 9, 4, + 3, 6, 7, 7, 2, 3, 3, 3, 4, 2, + 2, 4, 7, 10, 3, 1, 3, 2, 2, 2, + 2, 3, 5, 4, 5, 2, 7, 3, 2, 2, + 3, 2, 2, 2, 3, 2, 3, 4, 3, 3, + 5, 6, 4, 2, 3, 2, 2, 4, 3, 3, + 2, 3, 1, 2, 1, 2, 2, 2, 1, 1, + 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, + 2, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 1, 2, 2, 2, 3, 5, 7, 7, 6, 6, + 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, + 10, 7, 7, 7, 9, 9, 10, 12, 12, 2, + 2, 3, 4, 4, 4, 2, 4, 4, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, + 3, 3, 4, 6, 10, 7, 7, 5, 4, 6, + 10, 7, 7, 5, 2, 2, 3, 4, 5, 3, + 5, 5, 3, 4, 5, 5, 5, 3, 5, 2, + 3, 3, 5, 3, 3, 3, 4, 5, 5, 3, + 5, 5, 3, 4, 5, 5, 2, 2, 3, 5, + 6, 6, 3, 3, 3, 6, 5, 5, 2, 3, + 5, 6, 3, 2, 2, 3, 2, 3, 2, 3, + 5, 6, 2, 2, 2, 1, 4, 4, 1, 2, + 2, 2, 2, 2, 2, 2, 3, 2, 3, 2, + 3, 1, 1, 1, 1, 1, 0, 2, 0, 2, + 0, 1, 0, 0, 1, 1, 1, 1, 1, 7, + 8, 2, 4, 2, 4, 6, 2, 1, 1, 3, + 3, 1, 3, 4, 2, 1, 3, 3, 4, 3, + 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 0, 0, 2, + 1, 3, 1, 3, 1, 2, 2, 1, 3, 0, + 0, 2, 2, 1, 3, 5, 1, 2, 2, 2, + 1, 1, 1, 1, 4, 2, 3, 3, 2, 3, + 2, 2, 2, 3, 3, 3, 2, 3, 1, 3, + 3, 1, 2, 2, 2, 2, 1, 1, 1, 1, + 2, 2, 3, 3, 1, 2, 3, 3, 1, 2, + 1, 1, 1, 1, 1, 2, 2, 4, 1, 2, + 2, 2, 3, 1, 1, 1, 2, 2, 2, 2, + 2, 3, 3, 3, 3, 3, 3, 3, 1, 2, + 2, 2, 3, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 3, 3, 3, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, - 4, 2, 1, 1, 1, 1, 0, 5, 1, 6, - 3, 1, 2, 2, 3, 2, 3, 3, 2, 2, - 2, 2, 2, 2, 3, 2, 2, 3, 1, 3, - 4, 1, 2, 5, 6, 6, 2, 1, 2, 2, - 5, 6, 6 + 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 3, 3, 3, 4, 2, + 1, 1, 1, 1, 0, 5, 1, 6, 3, 1, + 2, 2, 3, 2, 3, 3, 2, 2, 2, 2, + 2, 2, 3, 2, 2, 3, 1, 3, 4, 1, + 2, 5, 6, 6, 2, 1, 2, 2, 5, 6, + 6 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -2306,9 +2315,9 @@ static const yytype_uint16 yydefact[] = { 0, 0, 0, 0, 0, 7, 8, 0, 0, 0, 0, 0, 311, 0, 0, 0, 0, 0, 0, 0, - 0, 22, 0, 0, 0, 0, 0, 0, 0, 1045, - 0, 0, 0, 0, 0, 0, 0, 1045, 38, 0, - 0, 0, 43, 0, 0, 0, 47, 1226, 49, 0, + 0, 22, 0, 0, 0, 0, 0, 0, 0, 1053, + 0, 0, 0, 0, 0, 0, 0, 1053, 38, 0, + 0, 0, 43, 0, 0, 0, 47, 1234, 49, 0, 0, 0, 0, 0, 215, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 54, 55, 0, 251, 6, 0, 0, 0, 0, 0, 0, 9, 0, @@ -2324,21 +2333,21 @@ static const yytype_uint16 yydefact[] = 57, 56, 0, 0, 0, 0, 2, 0, 18, 0, 0, 0, 384, 398, 0, 404, 0, 0, 0, 0, 0, 0, 0, 347, 0, 476, 0, 0, 0, 0, - 0, 1045, 0, 355, 0, 359, 0, 0, 0, 363, + 0, 1053, 0, 355, 0, 359, 0, 0, 0, 363, 0, 365, 0, 367, 0, 0, 503, 371, 19, 0, 509, 20, 514, 0, 531, 517, 518, 519, 520, 533, 522, 523, 524, 0, 526, 527, 0, 0, 21, 23, 0, 547, 0, 0, 0, 552, 0, 24, 0, 0, 0, 0, 0, 0, 0, 26, 706, 27, 0, 0, - 0, 0, 0, 0, 707, 28, 0, 29, 1050, 1049, - 1046, 1047, 1048, 0, 1108, 0, 0, 0, 31, 0, - 1115, 1114, 1113, 1112, 33, 0, 0, 0, 0, 0, - 143, 0, 34, 0, 1133, 0, 1130, 35, 0, 0, + 0, 0, 0, 0, 707, 28, 0, 29, 1058, 1057, + 1054, 1055, 1056, 0, 1116, 0, 0, 0, 31, 0, + 1123, 1122, 1121, 1120, 33, 0, 0, 0, 0, 0, + 143, 0, 34, 0, 1141, 0, 1138, 35, 0, 0, 0, 0, 37, 36, 0, 0, 0, 0, 40, 0, - 0, 1160, 41, 0, 0, 0, 0, 0, 42, 1223, - 1222, 1224, 1225, 44, 0, 45, 0, 0, 0, 0, - 0, 202, 0, 0, 0, 46, 0, 0, 1228, 48, - 0, 0, 50, 0, 0, 0, 0, 143, 51, 1251, + 0, 1168, 41, 0, 0, 0, 0, 0, 42, 1231, + 1230, 1232, 1233, 44, 0, 45, 0, 0, 0, 0, + 0, 202, 0, 0, 0, 46, 0, 0, 1236, 48, + 0, 0, 50, 0, 0, 0, 0, 143, 51, 1259, 52, 0, 0, 53, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 216, 5, 234, 0, 226, 0, 0, 228, 0, 236, 229, 233, 244, 245, 230, 246, @@ -2368,21 +2377,21 @@ static const yytype_uint16 yydefact[] = 0, 0, 549, 548, 0, 0, 0, 0, 25, 0, 0, 559, 0, 560, 0, 0, 0, 0, 0, 561, 0, 705, 0, 562, 0, 563, 0, 0, 564, 0, - 710, 709, 708, 0, 713, 0, 0, 0, 895, 0, + 710, 709, 708, 0, 713, 0, 0, 0, 899, 0, 0, 0, 717, 721, 723, 724, 0, 0, 0, 0, - 831, 0, 0, 0, 868, 0, 0, 0, 0, 0, - 0, 0, 870, 0, 0, 0, 30, 1109, 1110, 1111, - 32, 0, 0, 0, 0, 1122, 1123, 0, 143, 0, - 1120, 1117, 0, 0, 0, 143, 1138, 1141, 1139, 1140, - 1134, 1135, 1136, 1137, 0, 0, 39, 1157, 1158, 0, - 1165, 1167, 1166, 1162, 1163, 1161, 0, 0, 0, 0, - 1168, 0, 1171, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1169, 1180, 0, 0, 0, 1170, 1172, - 1221, 1155, 1156, 1154, 200, 0, 204, 196, 0, 206, - 197, 0, 208, 198, 1153, 1152, 199, 201, 203, 0, - 0, 0, 0, 0, 195, 0, 0, 0, 0, 1235, - 1248, 1238, 0, 0, 1241, 0, 0, 1240, 1239, 154, - 1257, 0, 1256, 1252, 0, 0, 0, 0, 0, 0, + 835, 0, 0, 0, 872, 0, 0, 0, 0, 0, + 0, 0, 874, 0, 0, 0, 30, 1117, 1118, 1119, + 32, 0, 0, 0, 0, 1130, 1131, 0, 143, 0, + 1128, 1125, 0, 0, 0, 143, 1146, 1149, 1147, 1148, + 1142, 1143, 1144, 1145, 0, 0, 39, 1165, 1166, 0, + 1173, 1175, 1174, 1170, 1171, 1169, 0, 0, 0, 0, + 1176, 0, 1179, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1177, 1188, 0, 0, 0, 1178, 1180, + 1229, 1163, 1164, 1162, 200, 0, 204, 196, 0, 206, + 197, 0, 208, 198, 1161, 1160, 199, 201, 203, 0, + 0, 0, 0, 0, 195, 0, 0, 0, 0, 1243, + 1256, 1246, 0, 0, 1249, 0, 0, 1248, 1247, 154, + 1265, 0, 1264, 1260, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 231, 0, 240, 0, 237, 0, 256, 138, 141, 142, 140, 139, 270, 271, 272, 260, 274, 276, 275, 0, 0, 0, 0, 0, 0, 0, @@ -2394,9 +2403,9 @@ static const yytype_uint16 yydefact[] = 413, 408, 0, 0, 0, 143, 428, 154, 154, 154, 143, 0, 0, 143, 468, 450, 461, 0, 452, 78, 463, 0, 0, 454, 456, 143, 473, 474, 459, 0, - 0, 0, 444, 0, 0, 0, 0, 943, 945, 944, - 0, 0, 1038, 0, 1017, 0, 1020, 0, 0, 1040, - 1042, 0, 1033, 356, 0, 496, 489, 498, 490, 500, + 0, 0, 444, 0, 0, 0, 0, 947, 949, 948, + 0, 0, 1046, 0, 1025, 0, 1028, 0, 0, 1048, + 1050, 0, 1041, 356, 0, 496, 489, 498, 490, 500, 491, 502, 488, 0, 0, 507, 504, 505, 154, 530, 543, 542, 545, 0, 558, 546, 0, 0, 0, 0, 0, 0, 167, 167, 161, 0, 0, 0, 0, 0, @@ -2404,26 +2413,26 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 600, 624, 0, 0, 0, 596, 0, 0, 0, 0, 167, 161, 0, 0, 701, 0, 711, 712, 143, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 773, 0, 0, - 0, 0, 0, 797, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 820, 0, 0, 825, 826, 0, 0, - 0, 847, 849, 848, 0, 851, 0, 0, 859, 861, - 862, 896, 0, 0, 0, 0, 715, 716, 937, 935, - 940, 939, 938, 936, 941, 0, 720, 0, 725, 0, - 934, 0, 726, 727, 728, 729, 0, 0, 0, 0, - 0, 833, 0, 0, 834, 1060, 0, 1063, 1059, 0, - 0, 0, 835, 869, 836, 1079, 1084, 1081, 1080, 1078, - 1085, 1082, 1076, 1083, 1077, 1086, 0, 0, 841, 0, - 0, 0, 1092, 0, 1094, 844, 0, 1096, 845, 866, - 0, 0, 0, 871, 872, 873, 1121, 0, 0, 1128, - 1124, 0, 0, 0, 1119, 1118, 1132, 1131, 0, 1146, - 0, 0, 1142, 0, 1150, 0, 0, 1143, 0, 1164, - 189, 189, 0, 189, 0, 1190, 0, 1189, 1181, 0, - 0, 0, 0, 1185, 0, 0, 0, 1188, 0, 0, - 0, 0, 0, 1183, 1191, 0, 0, 0, 1182, 189, + 0, 0, 0, 0, 0, 0, 0, 775, 0, 0, + 0, 0, 0, 800, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 824, 0, 0, 829, 830, 0, 0, + 0, 851, 853, 852, 0, 855, 0, 0, 863, 865, + 866, 900, 0, 0, 0, 0, 715, 716, 941, 939, + 944, 943, 942, 940, 945, 0, 720, 0, 725, 0, + 938, 0, 726, 727, 728, 729, 0, 0, 0, 0, + 0, 837, 0, 0, 838, 1068, 0, 1071, 1067, 0, + 0, 0, 839, 873, 840, 1087, 1092, 1089, 1088, 1086, + 1093, 1090, 1084, 1091, 1085, 1094, 0, 0, 845, 0, + 0, 0, 1100, 0, 1102, 848, 0, 1104, 849, 870, + 0, 0, 0, 875, 876, 877, 1129, 0, 0, 1136, + 1132, 0, 0, 0, 1127, 1126, 1140, 1139, 0, 1154, + 0, 0, 1150, 0, 1158, 0, 0, 1151, 0, 1172, + 189, 189, 0, 189, 0, 1198, 0, 1197, 1189, 0, + 0, 0, 0, 1193, 0, 0, 0, 1196, 0, 0, + 0, 0, 0, 1191, 1199, 0, 0, 0, 1190, 189, 189, 189, 205, 207, 209, 0, 0, 0, 0, 210, - 0, 55, 0, 1230, 0, 1236, 0, 143, 1242, 1243, - 0, 1245, 1246, 0, 155, 156, 1237, 1258, 1259, 0, + 0, 55, 0, 1238, 0, 1244, 0, 143, 1250, 1251, + 0, 1253, 1254, 0, 155, 156, 1245, 1266, 1267, 0, 223, 219, 225, 217, 218, 224, 221, 220, 222, 227, 0, 241, 0, 0, 0, 0, 273, 0, 0, 0, 0, 0, 0, 0, 0, 309, 143, 0, 0, 0, @@ -2431,1611 +2440,1627 @@ static const yytype_uint16 yydefact[] = 0, 143, 0, 0, 154, 426, 430, 434, 0, 0, 0, 154, 0, 82, 81, 469, 453, 0, 464, 466, 157, 475, 350, 0, 0, 55, 0, 443, 0, 0, - 961, 0, 0, 0, 0, 0, 0, 973, 0, 0, - 0, 0, 0, 0, 989, 990, 0, 0, 0, 0, - 1000, 0, 1005, 1006, 1008, 1010, 0, 1014, 1025, 1026, - 1027, 0, 1029, 1034, 1036, 1037, 1035, 942, 0, 0, - 1016, 0, 1015, 960, 0, 0, 1021, 0, 1023, 0, - 1022, 1043, 1024, 1031, 0, 0, 368, 0, 0, 556, - 557, 0, 554, 550, 0, 167, 167, 167, 168, 169, - 568, 569, 163, 162, 0, 167, 167, 167, 0, 574, - 584, 164, 167, 167, 167, 165, 166, 167, 167, 0, - 167, 167, 0, 164, 0, 597, 0, 0, 0, 623, - 0, 622, 0, 0, 599, 0, 598, 0, 0, 0, - 0, 164, 164, 161, 0, 0, 161, 0, 0, 0, - 167, 167, 697, 0, 167, 167, 702, 0, 180, 181, - 182, 183, 184, 185, 0, 86, 87, 85, 733, 0, - 0, 0, 0, 0, 889, 887, 882, 0, 892, 876, - 893, 879, 891, 885, 874, 888, 877, 875, 894, 890, - 0, 0, 751, 0, 0, 0, 0, 0, 0, 0, + 965, 0, 0, 0, 0, 0, 0, 979, 0, 0, + 0, 0, 0, 0, 996, 997, 0, 0, 0, 0, + 0, 1008, 0, 1013, 1014, 1016, 1018, 0, 1022, 1033, + 1034, 1035, 0, 1037, 1042, 1044, 1045, 1043, 946, 0, + 0, 1024, 0, 1023, 964, 0, 0, 1029, 0, 1031, + 0, 1030, 1051, 1032, 1039, 0, 0, 368, 0, 0, + 556, 557, 0, 554, 550, 0, 167, 167, 167, 168, + 169, 568, 569, 163, 162, 0, 167, 167, 167, 0, + 574, 584, 164, 167, 167, 167, 165, 166, 167, 167, + 0, 167, 167, 0, 164, 0, 597, 0, 0, 0, + 623, 0, 622, 0, 0, 599, 0, 598, 0, 0, + 0, 0, 164, 164, 161, 0, 0, 161, 0, 0, + 0, 167, 167, 697, 0, 167, 167, 702, 0, 180, + 181, 182, 183, 184, 185, 0, 86, 87, 85, 733, + 0, 0, 0, 0, 0, 0, 893, 891, 886, 0, + 896, 880, 897, 883, 895, 889, 878, 892, 881, 879, + 898, 894, 0, 0, 0, 753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 783, 0, 0, 0, - 0, 796, 798, 0, 0, 804, 803, 0, 0, 170, - 0, 0, 143, 0, 0, 816, 0, 0, 0, 821, - 822, 823, 0, 0, 0, 830, 846, 850, 852, 855, - 854, 0, 0, 0, 860, 897, 899, 0, 898, 718, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1044, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 785, + 0, 0, 0, 0, 0, 799, 801, 0, 0, 807, + 806, 0, 0, 170, 0, 0, 0, 143, 0, 0, + 820, 0, 0, 0, 825, 826, 827, 0, 0, 0, + 834, 850, 854, 856, 859, 858, 0, 0, 0, 864, + 901, 903, 0, 902, 718, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1052, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 722, 0, 0, 0, 0, - 832, 0, 143, 0, 1055, 1053, 0, 0, 143, 0, - 1058, 837, 0, 0, 0, 843, 0, 0, 1097, 864, - 865, 0, 867, 1127, 1129, 1126, 1125, 1116, 0, 0, - 1147, 0, 0, 1151, 1159, 191, 192, 193, 194, 190, - 1174, 1173, 0, 0, 0, 1176, 1175, 189, 0, 0, - 0, 1184, 0, 0, 0, 0, 0, 1201, 0, 1215, - 1214, 1216, 0, 0, 0, 1187, 0, 0, 0, 1186, - 1196, 1195, 1197, 1193, 1192, 1194, 1218, 1217, 1219, 212, - 214, 213, 0, 0, 55, 0, 1232, 0, 143, 1249, - 1244, 1247, 0, 0, 143, 0, 0, 0, 238, 0, - 0, 0, 0, 0, 0, 0, 0, 306, 305, 0, - 0, 297, 308, 310, 0, 320, 322, 321, 143, 327, - 0, 0, 0, 154, 425, 143, 0, 0, 0, 0, - 448, 462, 80, 79, 471, 0, 465, 159, 160, 158, - 458, 0, 0, 446, 440, 0, 0, 0, 0, 0, - 0, 143, 962, 0, 0, 0, 967, 0, 143, 0, - 974, 975, 0, 977, 978, 979, 0, 0, 0, 985, - 0, 991, 0, 0, 0, 995, 996, 0, 0, 0, - 1001, 0, 0, 1004, 1007, 1009, 1011, 0, 0, 1028, - 1030, 946, 0, 0, 0, 0, 0, 0, 1039, 947, - 0, 0, 1041, 1032, 0, 0, 512, 513, 0, 0, - 555, 0, 565, 566, 567, 167, 571, 572, 573, 0, - 0, 0, 578, 579, 161, 0, 0, 0, 167, 585, - 586, 587, 588, 590, 164, 593, 594, 0, 167, 0, - 0, 0, 164, 164, 161, 0, 0, 0, 0, 621, - 0, 625, 0, 0, 0, 0, 0, 164, 164, 161, + 722, 0, 0, 0, 0, 836, 0, 143, 0, 1063, + 1061, 0, 0, 143, 0, 1066, 841, 0, 0, 0, + 847, 0, 0, 1105, 868, 869, 0, 871, 1135, 1137, + 1134, 1133, 1124, 0, 0, 1155, 0, 0, 1159, 1167, + 191, 192, 193, 194, 190, 1182, 1181, 0, 0, 0, + 1184, 1183, 189, 0, 0, 0, 1192, 0, 0, 0, + 0, 0, 1209, 0, 1223, 1222, 1224, 0, 0, 0, + 1195, 0, 0, 0, 1194, 1204, 1203, 1205, 1201, 1200, + 1202, 1226, 1225, 1227, 212, 214, 213, 0, 0, 55, + 0, 1240, 0, 143, 1257, 1252, 1255, 0, 0, 143, + 0, 0, 0, 238, 0, 0, 0, 0, 0, 0, + 0, 0, 306, 305, 0, 0, 297, 308, 310, 0, + 320, 322, 321, 143, 327, 0, 0, 0, 154, 425, + 143, 0, 0, 0, 0, 448, 462, 80, 79, 471, + 0, 465, 159, 160, 158, 458, 0, 0, 446, 440, + 0, 0, 0, 0, 0, 0, 143, 966, 0, 969, + 0, 0, 972, 0, 143, 977, 0, 980, 981, 0, + 983, 984, 985, 0, 989, 0, 0, 992, 0, 998, + 0, 0, 0, 1003, 1004, 1002, 0, 0, 0, 1009, + 0, 0, 1012, 1015, 1017, 1019, 0, 0, 1036, 1038, + 950, 0, 0, 0, 0, 0, 0, 1047, 951, 0, + 0, 1049, 1040, 0, 0, 512, 513, 0, 0, 555, + 0, 565, 566, 567, 167, 571, 572, 573, 0, 0, + 0, 578, 579, 161, 0, 0, 0, 167, 585, 586, + 587, 588, 590, 164, 593, 594, 0, 167, 0, 0, + 0, 164, 164, 161, 0, 0, 0, 0, 621, 0, + 625, 0, 0, 0, 0, 0, 164, 164, 161, 0, + 0, 161, 0, 0, 0, 0, 0, 164, 164, 161, 0, 0, 161, 0, 0, 0, 0, 0, 164, 164, - 161, 0, 0, 161, 0, 0, 0, 0, 0, 164, - 164, 161, 0, 0, 161, 0, 0, 0, 0, 164, - 164, 161, 0, 0, 0, 164, 601, 602, 603, 604, - 606, 0, 609, 610, 0, 164, 0, 0, 695, 696, - 167, 699, 700, 0, 732, 143, 734, 0, 0, 0, - 0, 0, 0, 0, 881, 878, 884, 883, 880, 886, - 0, 0, 0, 0, 0, 143, 757, 0, 0, 0, + 161, 0, 0, 161, 0, 0, 0, 0, 164, 164, + 161, 0, 0, 0, 164, 601, 602, 603, 604, 606, + 0, 609, 610, 0, 164, 0, 0, 695, 696, 167, + 699, 700, 0, 732, 143, 734, 0, 0, 739, 0, + 0, 0, 0, 0, 885, 882, 888, 887, 884, 890, + 0, 750, 0, 0, 0, 0, 143, 759, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 774, 775, 776, 0, 780, 777, 779, 0, 0, 785, - 784, 786, 0, 0, 0, 0, 0, 0, 143, 0, - 143, 0, 802, 176, 172, 177, 171, 174, 173, 175, - 811, 812, 0, 0, 0, 815, 143, 0, 143, 0, - 824, 827, 143, 0, 143, 0, 853, 858, 900, 719, + 0, 776, 777, 778, 0, 782, 779, 781, 0, 0, + 787, 786, 788, 789, 0, 0, 0, 0, 0, 0, + 143, 0, 143, 0, 805, 176, 172, 177, 171, 174, + 173, 175, 814, 815, 816, 0, 0, 0, 819, 143, + 0, 143, 0, 828, 831, 143, 0, 143, 0, 857, + 862, 904, 719, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1095, 929, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 930, + 0, 0, 0, 0, 0, 730, 731, 143, 154, 0, + 143, 143, 1069, 1070, 0, 1072, 0, 843, 0, 143, + 1101, 1103, 867, 1152, 1153, 1156, 1157, 189, 189, 189, + 1228, 1207, 1206, 1208, 1211, 1210, 1214, 1213, 1215, 1212, + 1220, 1219, 1221, 1217, 1216, 1218, 0, 1235, 1242, 0, + 1258, 0, 143, 0, 1261, 0, 0, 242, 0, 239, + 0, 0, 0, 277, 0, 0, 0, 0, 143, 0, + 312, 131, 0, 402, 0, 423, 154, 157, 0, 0, + 437, 0, 0, 441, 958, 0, 0, 0, 0, 143, + 967, 157, 157, 157, 143, 973, 157, 154, 157, 157, + 143, 986, 157, 157, 157, 143, 993, 157, 157, 143, + 0, 157, 143, 157, 157, 143, 157, 143, 952, 0, + 0, 0, 0, 143, 1026, 1027, 0, 0, 511, 551, + 0, 570, 575, 576, 577, 0, 581, 582, 583, 589, + 167, 164, 595, 612, 613, 614, 615, 616, 0, 618, + 619, 164, 0, 0, 0, 164, 164, 161, 0, 0, + 0, 0, 0, 0, 164, 164, 161, 0, 0, 0, + 0, 0, 0, 164, 164, 161, 0, 0, 0, 164, + 167, 167, 167, 167, 167, 0, 167, 167, 0, 164, + 164, 167, 167, 167, 167, 167, 0, 167, 167, 0, + 164, 164, 675, 676, 677, 678, 680, 0, 683, 684, + 0, 164, 686, 687, 688, 689, 690, 0, 692, 693, + 164, 605, 164, 0, 611, 0, 0, 698, 0, 735, + 157, 0, 0, 157, 0, 0, 0, 749, 157, 751, + 754, 755, 157, 756, 758, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 780, 783, + 784, 0, 157, 0, 0, 0, 802, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1087, 925, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 926, 0, 0, 0, - 0, 0, 730, 731, 143, 154, 0, 143, 143, 1061, - 1062, 0, 1064, 0, 839, 0, 143, 1093, 1095, 863, - 1144, 1145, 1148, 1149, 189, 189, 189, 1220, 1199, 1198, - 1200, 1203, 1202, 1206, 1205, 1207, 1204, 1212, 1211, 1213, - 1209, 1208, 1210, 0, 1227, 1234, 0, 1250, 0, 143, - 0, 1253, 0, 0, 242, 0, 239, 0, 0, 0, - 277, 0, 0, 0, 0, 143, 0, 312, 131, 0, - 402, 0, 423, 154, 157, 0, 0, 437, 0, 0, - 441, 954, 0, 0, 0, 0, 143, 963, 157, 157, - 157, 143, 968, 157, 154, 157, 157, 143, 980, 157, - 157, 157, 143, 986, 157, 157, 143, 0, 157, 143, - 157, 157, 143, 157, 143, 948, 0, 0, 0, 0, - 143, 1018, 1019, 0, 0, 511, 551, 0, 570, 575, - 576, 577, 0, 581, 582, 583, 589, 167, 164, 595, - 612, 613, 614, 615, 616, 0, 618, 619, 164, 0, - 0, 0, 164, 164, 161, 0, 0, 0, 0, 0, - 0, 164, 164, 161, 0, 0, 0, 0, 0, 0, - 164, 164, 161, 0, 0, 0, 164, 167, 167, 167, - 167, 167, 0, 167, 167, 0, 164, 164, 167, 167, - 167, 167, 167, 0, 167, 167, 0, 164, 164, 675, - 676, 677, 678, 680, 0, 683, 684, 0, 164, 686, - 687, 688, 689, 690, 0, 692, 693, 164, 605, 164, - 0, 611, 0, 0, 698, 0, 735, 157, 0, 0, - 157, 0, 0, 0, 748, 157, 749, 752, 753, 157, - 754, 756, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 778, 781, 782, 0, 157, - 0, 0, 0, 799, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 856, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1088, 1067, 0, 1074, - 1075, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 143, 0, 0, 83, 0, 0, 932, - 933, 154, 0, 0, 0, 1056, 1054, 1065, 838, 840, - 154, 1178, 1177, 1179, 0, 1229, 1260, 0, 0, 1255, - 1254, 243, 0, 0, 0, 282, 0, 0, 0, 298, - 157, 403, 407, 424, 427, 0, 435, 470, 351, 0, - 0, 0, 0, 959, 964, 966, 965, 969, 970, 971, - 972, 976, 981, 982, 983, 984, 987, 988, 992, 154, - 157, 998, 154, 999, 1002, 154, 1012, 154, 0, 0, - 0, 0, 953, 0, 369, 510, 0, 580, 591, 167, - 164, 620, 167, 167, 167, 167, 167, 0, 167, 167, - 164, 666, 667, 668, 669, 670, 0, 672, 673, 164, - 167, 167, 167, 167, 167, 0, 167, 167, 164, 167, - 635, 636, 637, 638, 640, 164, 643, 644, 0, 167, - 167, 655, 656, 657, 658, 660, 164, 663, 664, 0, - 167, 679, 164, 0, 685, 164, 694, 607, 164, 703, - 704, 143, 738, 0, 157, 742, 741, 0, 143, 0, - 750, 755, 143, 0, 762, 763, 764, 765, 769, 770, - 766, 767, 768, 0, 0, 157, 787, 791, 0, 143, - 0, 0, 800, 806, 805, 157, 807, 0, 813, 0, - 817, 157, 157, 809, 0, 0, 857, 0, 178, 178, - 0, 0, 178, 0, 178, 1044, 0, 0, 0, 0, - 0, 0, 0, 0, 1066, 0, 0, 178, 178, 0, - 0, 0, 0, 0, 0, 0, 0, 927, 0, 0, - 0, 1044, 84, 0, 178, 0, 1090, 931, 0, 0, - 211, 1262, 1261, 0, 0, 247, 0, 0, 0, 0, - 313, 436, 955, 0, 186, 0, 993, 994, 997, 1003, - 1013, 949, 0, 186, 0, 361, 0, 592, 617, 626, - 627, 628, 629, 630, 164, 632, 633, 167, 164, 674, - 646, 647, 648, 649, 650, 164, 652, 653, 167, 639, - 167, 164, 645, 659, 167, 164, 665, 681, 164, 691, - 608, 0, 157, 736, 743, 0, 0, 0, 0, 0, - 771, 772, 788, 0, 0, 0, 801, 808, 0, 818, - 819, 810, 157, 828, 0, 179, 1044, 1044, 83, 0, - 1044, 0, 1044, 901, 143, 0, 1069, 0, 1072, 1106, - 1073, 1071, 1068, 0, 1044, 1044, 83, 0, 0, 1044, - 1044, 0, 0, 1044, 930, 928, 929, 908, 1044, 1044, - 1090, 1101, 0, 1057, 842, 0, 0, 249, 0, 0, - 0, 0, 187, 188, 957, 958, 0, 951, 952, 0, - 167, 634, 671, 167, 654, 641, 167, 661, 167, 682, - 0, 737, 157, 739, 157, 0, 157, 0, 157, 789, - 157, 0, 157, 0, 1044, 914, 910, 1044, 0, 915, - 0, 909, 1044, 0, 1070, 0, 912, 911, 1044, 0, - 0, 906, 904, 1044, 143, 905, 907, 913, 1101, 1051, - 0, 0, 1091, 1099, 0, 0, 0, 278, 299, 302, - 300, 0, 0, 143, 143, 553, 631, 651, 642, 662, - 157, 740, 747, 0, 761, 758, 790, 795, 0, 814, - 0, 919, 903, 83, 0, 917, 1107, 0, 902, 83, - 0, 918, 0, 1052, 1103, 1105, 0, 1098, 0, 0, - 283, 0, 0, 186, 186, 0, 744, 143, 759, 792, - 829, 1044, 0, 0, 1044, 0, 157, 1104, 1100, 248, - 0, 0, 0, 956, 950, 714, 143, 745, 760, 143, - 793, 921, 0, 1044, 920, 0, 1044, 250, 0, 0, - 746, 794, 83, 922, 83, 916, 292, 291, 1044, 1044, - 924, 923 + 0, 860, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1096, + 1075, 0, 1082, 1083, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 143, 0, 0, 83, + 0, 0, 936, 937, 154, 0, 0, 0, 1064, 1062, + 1073, 842, 844, 154, 1186, 1185, 1187, 0, 1237, 1268, + 0, 0, 1263, 1262, 243, 0, 0, 0, 282, 0, + 0, 0, 298, 157, 403, 407, 424, 427, 0, 435, + 470, 351, 0, 0, 0, 0, 963, 968, 971, 970, + 974, 975, 976, 978, 982, 987, 988, 990, 991, 994, + 995, 999, 154, 157, 1006, 154, 1007, 1010, 154, 1020, + 154, 0, 0, 0, 0, 957, 0, 369, 510, 0, + 580, 591, 167, 164, 620, 167, 167, 167, 167, 167, + 0, 167, 167, 164, 666, 667, 668, 669, 670, 0, + 672, 673, 164, 167, 167, 167, 167, 167, 0, 167, + 167, 164, 167, 635, 636, 637, 638, 640, 164, 643, + 644, 0, 167, 167, 655, 656, 657, 658, 660, 164, + 663, 664, 0, 167, 679, 164, 0, 685, 164, 694, + 607, 164, 703, 704, 143, 738, 0, 157, 743, 742, + 0, 143, 0, 752, 757, 143, 0, 764, 765, 766, + 767, 771, 772, 768, 769, 770, 0, 0, 157, 790, + 794, 0, 143, 0, 0, 803, 809, 808, 157, 810, + 0, 817, 0, 821, 157, 157, 812, 0, 0, 861, + 0, 178, 178, 0, 0, 178, 0, 178, 1052, 0, + 0, 0, 0, 0, 0, 0, 0, 1074, 0, 0, + 178, 178, 0, 0, 0, 0, 0, 0, 0, 0, + 931, 0, 0, 0, 1052, 84, 0, 178, 0, 1098, + 935, 0, 0, 211, 1270, 1269, 0, 0, 247, 0, + 0, 0, 0, 313, 436, 959, 0, 186, 0, 1000, + 1001, 1005, 1011, 1021, 953, 0, 186, 0, 361, 0, + 592, 617, 626, 627, 628, 629, 630, 164, 632, 633, + 167, 164, 674, 646, 647, 648, 649, 650, 164, 652, + 653, 167, 639, 167, 164, 645, 659, 167, 164, 665, + 681, 164, 691, 608, 0, 157, 736, 744, 0, 0, + 0, 0, 0, 773, 774, 791, 0, 0, 0, 804, + 811, 0, 822, 823, 813, 157, 832, 0, 179, 1052, + 1052, 83, 0, 1052, 0, 1052, 905, 143, 0, 1077, + 0, 1080, 1114, 1081, 1079, 1076, 0, 1052, 1052, 83, + 0, 0, 1052, 1052, 0, 0, 1052, 934, 932, 933, + 912, 1052, 1052, 1098, 1109, 0, 1065, 846, 0, 0, + 249, 0, 0, 0, 0, 187, 188, 961, 962, 0, + 955, 956, 0, 167, 634, 671, 167, 654, 641, 167, + 661, 167, 682, 0, 737, 157, 740, 157, 0, 157, + 0, 157, 792, 157, 0, 157, 0, 1052, 918, 914, + 1052, 0, 919, 0, 913, 1052, 0, 1078, 0, 916, + 915, 1052, 0, 0, 910, 908, 1052, 143, 909, 911, + 917, 1109, 1059, 0, 0, 1099, 1107, 0, 0, 0, + 278, 299, 302, 300, 0, 0, 143, 143, 553, 631, + 651, 642, 662, 157, 741, 748, 0, 763, 760, 793, + 798, 0, 818, 0, 923, 907, 83, 0, 921, 1115, + 0, 906, 83, 0, 922, 0, 1060, 1111, 1113, 0, + 1106, 0, 0, 283, 0, 0, 186, 186, 0, 745, + 143, 761, 795, 833, 1052, 0, 0, 1052, 0, 157, + 1112, 1108, 248, 0, 0, 0, 960, 954, 714, 143, + 746, 762, 143, 796, 925, 0, 1052, 924, 0, 1052, + 250, 0, 0, 747, 797, 83, 926, 83, 920, 292, + 291, 1052, 1052, 928, 927 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 53, 429, 176, 155, 1255, 2501, 2502, 430, 431, - 432, 433, 156, 157, 158, 94, 806, 456, 1196, 1670, - 1344, 1357, 1340, 1910, 2596, 1404, 2644, 1570, 335, 747, + -1, 53, 429, 176, 155, 1255, 2514, 2515, 430, 431, + 432, 433, 156, 157, 158, 94, 806, 456, 1196, 1675, + 1345, 1358, 1341, 1922, 2609, 1405, 2657, 1575, 335, 747, 750, 753, 764, 56, 364, 66, 368, 374, 378, 381, 71, 384, 78, 399, 395, 389, 405, 85, 410, 95, - 101, 415, 417, 419, 491, 859, 1639, 421, 424, 108, + 101, 415, 417, 419, 491, 859, 1644, 421, 424, 108, 440, 159, 161, 178, 218, 480, 848, 482, 492, 851, 856, 494, 496, 862, 499, 864, 510, 867, 869, 513, 517, 521, 523, 526, 530, 557, 553, 1267, 544, 888, 893, 885, 1256, 898, 547, 563, 566, 571, 574, 582, - 926, 928, 930, 932, 587, 936, 221, 589, 1738, 238, - 591, 593, 597, 602, 609, 247, 1333, 612, 255, 621, - 1349, 623, 629, 980, 1365, 975, 1779, 1371, 1369, 976, - 1781, 1374, 1376, 635, 638, 633, 257, 265, 267, 676, - 1057, 1430, 1046, 1525, 1956, 2284, 1062, 1055, 923, 1307, - 1312, 1320, 1322, 1940, 273, 1071, 1074, 1082, 2256, 2257, - 2258, 1941, 2631, 2632, 1105, 1108, 2702, 2703, 2699, 2700, - 2744, 2259, 2260, 278, 284, 292, 690, 685, 297, 302, + 926, 928, 930, 932, 587, 936, 221, 589, 1747, 238, + 591, 593, 597, 602, 609, 247, 1334, 612, 255, 621, + 1350, 623, 629, 980, 1366, 975, 1788, 1372, 1370, 976, + 1790, 1375, 1377, 635, 638, 633, 257, 265, 267, 676, + 1057, 1432, 1046, 1530, 1969, 2297, 1062, 1055, 923, 1308, + 1313, 1321, 1323, 1953, 273, 1071, 1074, 1082, 2269, 2270, + 2271, 1954, 2644, 2645, 1105, 1108, 2715, 2716, 2712, 2713, + 2757, 2272, 2273, 278, 284, 292, 690, 685, 297, 302, 700, 706, 1132, 1137, 756, 744, 308, 312, 713, 318, - 720, 1575, 733, 734, 1168, 1163, 1581, 1153, 1587, 1599, - 1595, 1157, 738, 722, 323, 324, 339, 1183, 342, 348, + 720, 1580, 733, 734, 1168, 1163, 1586, 1153, 1592, 1604, + 1600, 1157, 738, 722, 323, 324, 339, 1183, 342, 348, 774, 777, 771, 350, 353, 782 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -2554 +#define YYPACT_NINF -2502 static const yytype_int16 yypact[] = { - 4200, 294, 131, 99, 59, -2554, -2554, 732, -133, 409, - 1160, 755, 102, 2658, 154, 213, 952, 86, 5106, 401, - 2013, -2554, 213, 397, 215, 816, 9, 30, 264, 168, - 415, 390, 656, 1042, 8, 767, 383, 168, -2554, -38, - 37, 741, -2554, -17, 526, 418, -2554, 617, -2554, 75, - 1511, 321, 80, 553, -2554, 101, -2554, 577, 887, 326, - 612, 621, 88, 647, 12, 128, -2554, -2554, -2554, 537, - 606, -2554, 84, 39, 213, 355, 606, 173, -2554, 679, - 606, -2554, -2554, 56, 606, -2554, -2554, -2554, -2554, 606, - -2554, -2554, -2554, -2554, -2554, -2554, 44, 676, 706, 710, - 150, -2554, 606, 1142, 606, 606, 1030, 606, -2554, -2554, - -2554, 527, -2554, -2554, -2554, -2554, 4666, -2554, -2554, -2554, - -2554, -2554, -2554, 606, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, 1518, -2554, 606, -2554, - 731, -2554, -2554, 213, 213, 213, 213, 213, 213, 213, - -2554, -2554, 213, 213, 213, 213, -2554, 644, -2554, 703, - 1326, 658, 90, 514, 638, 29, 4251, 155, 4752, 4632, - 783, 4666, 3065, -2554, 906, -36, 828, 771, 159, 471, - 873, 168, -7, -2554, 834, -2554, 677, 629, 140, -2554, - 10, -2554, 524, -2554, 431, 818, 395, -2554, -2554, 4815, - -2554, -2554, -2554, 842, 885, -2554, -2554, -2554, -2554, 891, - -2554, -2554, -2554, 727, -2554, -2554, 4815, 3854, -2554, -2554, - 236, -2554, 913, 929, 122, -2554, 606, -2554, 932, 32, - 945, 14, 36, 947, 48, -2554, -2554, -2554, 935, 959, - 213, 213, 606, 606, -2554, -2554, 966, -2554, -2554, -2554, - -2554, -2554, -2554, 2930, -2554, 972, 981, 606, -2554, 1002, - -2554, -2554, -2554, -2554, -2554, 606, 927, 213, 3674, 606, - 1518, 606, -2554, 986, -2554, 4780, -2554, -2554, 565, 996, - 1015, 606, -2554, -2554, -32, 1016, 4815, 1026, -2554, 1093, - 606, 946, -2554, 49, 939, 1617, 171, 1049, -2554, -2554, - -2554, -2554, -2554, -2554, 1062, -2554, 436, 51, 120, 136, - 500, -2554, 606, 606, 603, -2554, 606, 798, 1065, -2554, - 606, 606, -2554, 1072, 21, 22, 1074, 1518, -2554, -2554, - -2554, 841, 606, -2554, -2554, 606, 606, 606, 606, 606, - 606, 606, 606, 606, -2554, -2554, -2554, 606, -2554, 1078, - 1080, -2554, 606, 1108, -2554, -2554, -2554, -2554, -2554, -2554, - 606, -2554, -2554, 606, -2554, -2554, 450, 450, 1084, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - 606, 606, 1088, 1090, 1097, -2554, -2554, 606, 606, 606, - -2554, 606, -2554, 1104, -2554, -2554, -2554, -2554, 740, -2554, - 1110, -2554, 4815, 1112, -2554, 606, -2554, -2554, -2554, 606, - 1114, 1117, 1117, 4815, 606, 606, 606, 606, 606, 606, - -2554, 606, 4666, 1142, 606, 606, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, 1142, 606, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - 1120, -2554, 877, -6, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -68, -2554, -2554, -2554, 965, -2554, 381, - 546, 546, -2554, -2554, -2554, 1130, -2554, 1144, -2554, -2554, - -55, -2554, 975, -2554, -2554, -2554, 987, -2554, -2554, 1518, - -2554, 3707, 606, -2554, 4815, 4815, 1518, -2554, -2554, 1518, - -2554, -2554, -2554, -2554, 1518, -2554, -2554, 4815, 1518, 606, - -2554, -2554, 4815, -2554, 1161, 479, 976, 3, -2554, -2554, - 988, 4815, 2229, -2554, -2554, -2554, -2554, -2554, 1174, 1184, - 1190, -2554, 1005, -2554, -2554, -2554, 606, -2554, -2554, 386, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, 431, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, 1141, 1166, 1175, -2554, - -2554, 1023, -2554, 606, 1213, 1028, 4780, -2554, 1518, -2554, - 1241, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, 4815, 4815, 4815, -2554, -2554, - 1251, 213, -2554, -2554, 1253, 1263, 1077, 606, -2554, 542, - 1178, -2554, 1275, -2554, 481, 1196, 5107, 46, 1283, -2554, - 1290, -2554, 1292, -2554, 7, -2554, 1293, 1295, -2554, 1302, - -2554, -2554, -2554, 606, -2554, 4780, 4567, 1050, 464, 1307, - 430, 1198, -2554, -2554, -2554, 1282, 475, 1312, 1313, 60, - 606, 318, 360, 35, 4815, 213, 1294, 785, 13, 108, - 181, 15, -2554, 1300, 1303, 1315, -2554, -2554, -2554, -2554, - -2554, 606, 606, 606, 606, -2554, -2554, 606, 1518, 606, - -2554, 606, 1142, 606, 1321, 1518, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, 410, 435, -2554, -2554, -2554, 1322, - -2554, -2554, -2554, -2554, 1231, -2554, 1324, 1333, 1252, 1338, - -2554, 1339, -2554, 1369, 1289, 1372, 353, 52, 405, 64, - 441, 1376, 445, -2554, -2554, 1377, 1378, 1382, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, 1383, -2554, -2554, 1384, -2554, - -2554, 1385, -2554, -2554, -2554, -2554, -2554, -2554, -2554, 606, - 606, 606, 606, 606, -2554, 606, 806, 606, 606, -2554, - 1267, -2554, 1019, 1387, -2554, 1197, 1390, -2554, -2554, -2, - 606, 606, -2554, 1386, 606, 606, 606, 606, 606, 606, - 606, 606, 606, -2554, -2554, 1391, 1132, 606, 1388, 555, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, 1397, 1398, 606, 606, 606, 1399, 213, - 1400, 1406, 1518, 4815, -2554, -2554, -2554, -2554, -2554, 1518, - -2554, -2554, 606, 606, 606, 4815, 606, 1142, 606, -2554, - 606, -2554, -2554, -2554, -2554, -2554, 1407, 1408, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, 155, -2554, 606, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, 4815, 4815, 606, 1518, -2554, -2, -2, -2, - 1518, 1142, 606, 1518, -2554, -2554, -2554, 606, -2554, 4, - 1217, 1410, 1413, -2554, -2554, 1518, 4815, -2554, -2554, 1415, - 1417, 1419, 1201, 606, 4634, 512, 424, -2554, -2554, -2554, - 606, 1375, 485, 1070, -2554, 1173, -2554, 1294, 1179, 569, - 1146, 95, -2554, -2554, 606, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, 606, 1428, -2554, -2554, -2554, -2, -2554, - -2554, -2554, -2554, 4696, -2554, -2554, 1431, 1432, 606, 1433, - 1434, 1435, 2, 2, -3, 1440, 1441, 1442, 1443, 1148, - 1187, 1446, 1447, 1448, 92, 92, -3, 1457, 1461, -3, - 1466, 1470, 5143, 1471, 1472, -2554, -2554, 1473, 1474, 561, - -2554, 1462, 1476, 1477, 1478, 2, -3, 1480, 1482, -2554, - 1484, -2554, -2554, 1518, 630, 1152, 1248, 1257, 1258, 1396, - 774, 1259, 1490, 100, 1361, 1402, 1170, 1165, 1468, 1272, - 1287, 1421, 1523, 1340, 63, 28, -81, 1299, 4666, 1294, - 1491, 283, 1308, 1341, 1535, 23, -2554, -2554, 178, 1545, - 1546, -2554, -2554, -2554, 1551, 1352, 53, 1294, 1353, -2554, - -2554, -2554, 213, 1558, 1559, 606, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, 1, -2554, 4031, -2554, 606, - -2554, 606, -2554, -2554, -2554, -2554, 606, 606, 606, 430, - 4815, -2554, 1562, 1233, -2554, -2554, 606, -2554, -2554, 606, - 4666, 606, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, 213, 606, -2554, 606, - 430, 1563, -2554, 606, 606, -2554, 213, -2554, -2554, -2554, - 492, 1564, 1595, -2554, -2554, -2554, -2554, 606, 606, -2554, - -2554, 1142, 606, 606, -2554, -2554, -2554, -2554, 606, -2554, - 606, 1454, -2554, 606, -2554, 606, 1493, -2554, 1600, -2554, - 573, 573, 449, 573, 1601, -2554, 508, -2554, -2554, 1605, - 1606, 530, 1608, -2554, 1609, 1610, 1612, -2554, 586, 590, - 1615, 1622, 1613, -2554, -2554, 1624, 1625, 1629, -2554, 573, - 573, 573, -2554, -2554, -2554, 606, 606, 606, 606, -2554, - 606, 980, 4815, -2554, 606, -2554, 4780, 1518, -2554, -2554, - 1630, -2554, -2554, 1631, -2554, -2554, -2554, -2554, 1626, 3674, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - 606, 1627, 606, 606, 606, 957, -2554, 1628, 1633, 606, - 606, 97, 1637, 213, 213, -2554, 1518, 606, 1642, 1644, - 1645, -2554, 4815, -2554, 606, -2554, -2554, -2554, 606, 606, - 606, 1518, 1647, 4815, -2, -2554, -2554, -2554, 1142, 606, - 1648, -2, 606, 1603, 1618, 543, -2554, 1652, -2554, -2554, - 844, -2554, -2554, 606, 1654, 1659, 606, -2554, 1655, 692, - 4666, 1429, 1437, 1438, 78, 4815, 1439, -2554, 241, 1529, - 141, 1444, 1449, 187, -2554, -2554, 570, 1500, 373, 301, - 1294, -30, -2554, 1664, 1445, -2554, 604, -2554, -2554, -2554, - -2554, 1294, 1481, -2554, -2554, -2554, -2554, -2554, 606, 871, - -2554, 606, -2554, -2554, 606, 606, -2554, 606, -2554, 606, - -2554, -2554, -2554, -2554, 1483, 606, -2554, 606, 172, -2554, - -2554, 1669, 1670, -2554, 606, 2, 2, 2, -2554, -2554, - -2554, -2554, -2554, -2554, 1671, 2, 2, 2, 782, -2554, - -2554, 92, 2, 2, 2, -2554, -2554, 2, 2, 1675, - 2, 2, 1677, 92, 786, -2554, 1678, 1680, 1682, -2554, - 615, -2554, 689, 738, -2554, 934, -2554, 1425, 1684, 1685, - 1686, 92, 92, -3, 1688, 1689, -3, 1690, 1692, 1693, - 2, 2, -2554, 1694, 2, 2, -2554, 1696, -2554, -2554, - -2554, -2554, -2554, -2554, 213, -2554, -2554, -2554, 4666, 1101, - 606, 1158, 1329, 400, -2554, -2554, -2554, 701, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - 1697, 606, -2554, 213, 1698, 606, 4815, 213, 1455, 1475, - 1479, 194, 212, 1485, 218, 1393, 1403, 1695, 1701, 1702, - 774, 1703, 1705, 1706, 1412, 1414, 1271, 1707, 606, 1223, - 1465, -2554, -2554, 213, 4666, -2554, -2554, 4666, 606, 19, - 1710, 606, 1518, 1142, 213, -2554, 4666, 4815, 606, -2554, - -2554, -2554, 213, 213, 4666, -2554, -2554, -2554, -2554, -2554, - -2554, 4666, 606, 213, -2554, -2554, -2554, 606, -2554, -2554, - 1711, 606, 1497, 83, 606, 1499, 606, 219, 606, -2554, - 606, 1501, 1502, 606, 606, 606, 606, 606, 606, 606, - 606, 11, 606, 606, 1504, -2554, 606, 606, 606, 606, - -2554, 4815, 1518, 1715, 4815, 4815, 606, 606, 1518, 1142, - -2554, 606, 606, 606, 4815, -2554, 606, 606, -2554, -2554, - -2554, 1720, -2554, -2554, -2554, -2554, -2554, -2554, 606, 606, - -2554, 606, 606, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, 1723, 1724, 1726, -2554, -2554, 573, 1727, 1729, - 1734, -2554, 1735, 1736, 1737, 1738, 1740, -2554, 1741, -2554, - -2554, -2554, 1742, 1746, 1748, -2554, 1749, 1750, 1752, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, 606, 606, 1757, 4815, -2554, 606, 1518, -2554, - -2554, -2554, 3674, 606, 1518, 606, 606, 606, -2554, 606, - 606, 1753, 606, 1756, 1758, 606, 606, -2554, -2554, 1759, - 4815, -2554, -2554, -2554, 606, -2554, -2554, -2554, 1518, -2554, - 1261, 606, 1261, -2, -2554, 1518, 4815, 606, 606, 1761, - -2554, -2554, -2554, -2554, -2554, 606, -2554, -2554, -2554, -2554, - -2554, 606, 1762, -2554, -2554, 4815, 1763, 1764, 1765, 1767, - 4815, 1518, -2554, 4815, 4815, 4815, 4666, 4815, 1518, 4815, - -2554, -2554, 4815, -2554, -2554, 4666, 4815, 4815, 4815, 4666, - 4815, -2554, 4815, 4815, 606, -2554, -2554, 4815, 4815, 4815, - -2554, 4815, 4815, -2554, -2554, -2554, -2554, 4815, 4815, -2554, - -2554, -2554, 4815, 1768, 1769, 1770, 1771, 4815, -2554, -2554, - 606, 606, -2554, -2554, 1773, 606, -2554, -2554, 1774, 1776, - -2554, 606, -2554, -2554, -2554, 2, -2554, -2554, -2554, 1779, - 1781, 1782, -2554, -2554, -3, 1777, 1784, 1785, 2, -2554, - -2554, -2554, -2554, -2554, 92, -2554, -2554, 1788, 2, 1789, - 1790, 1791, 92, 92, -3, 1793, 1794, 1795, 995, -2554, - 998, -2554, 1025, 1515, 1796, 1797, 1798, 92, 92, -3, - 1800, 1801, -3, 1803, 1526, 1805, 1806, 1807, 92, 92, - -3, 1809, 1810, -3, 1838, 1530, 1841, 1845, 1846, 92, - 92, -3, 1848, 1850, -3, 1852, 1853, 1854, 1855, 92, - 92, -3, 1851, 1857, 1858, 92, -2554, -2554, -2554, -2554, - -2554, 1870, -2554, -2554, 1871, 92, 1872, 1873, -2554, -2554, - 2, -2554, -2554, 1875, -2554, 1518, -2554, 4815, 606, 606, - 4815, 606, 1876, 1152, -2554, -2554, -2554, -2554, -2554, -2554, - 1878, 4666, 213, 1879, 4666, 1518, -2554, 1880, 1152, 606, - 606, 606, 606, 606, 606, 606, 606, 606, 1874, 1882, - -2554, -2554, -2554, 1884, -2554, -2554, -2554, 1883, 1887, -2554, - -2554, -2554, 606, 4815, 606, 1889, 1152, 213, 1518, 1142, - 1518, 606, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, 606, 1142, 1142, -2554, 1518, 1142, 1518, 606, - -2554, -2554, 1518, 1142, 1518, 1142, -2554, -2554, -2554, -2554, - 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, - 2991, -2554, 606, 606, 606, 606, 606, 606, 606, 606, - 606, 606, 606, 3707, 1890, 606, -2554, 606, 606, 606, - 1892, 1894, -2554, -2554, 1518, -2, 1895, 1518, 1518, -2554, - -2554, 1142, -2554, 606, -2554, 1897, 1518, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, 573, 573, 573, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, 606, -2554, -2554, 606, -2554, 606, 1518, - 606, -2554, 1142, 606, -2554, 606, -2554, 1755, 1898, 1900, - -2554, 1902, 606, 606, 1903, 1518, 4815, -2554, -2554, 606, - -2554, 606, -2554, -2, 844, 606, 1904, -2554, 606, 431, - -2554, -2554, 1905, 1906, 1907, 1908, 1518, -2554, 844, 844, - 844, 1518, -2554, 844, -2, 844, 844, 1518, -2554, 844, - 844, 844, 1518, -2554, 844, 844, 1518, 4815, 844, 1518, - 844, 844, 1518, 844, 1518, -2554, 1909, 1911, 1912, 1913, - 1518, -2554, -2554, 1915, 431, 1916, -2554, 606, -2554, -2554, - -2554, -2554, 1918, -2554, -2554, -2554, -2554, 2, 92, -2554, - -2554, -2554, -2554, -2554, -2554, 1919, -2554, -2554, 92, 1920, - 1931, 1932, 92, 92, -3, 1946, 1948, 1951, 1952, 1953, - 1954, 92, 92, -3, 1957, 1958, 1959, 1960, 1961, 1962, - 92, 92, -3, 1964, 1966, 1967, 92, 2, 2, 2, - 2, 2, 1969, 2, 2, 1970, 92, 92, 2, 2, - 2, 2, 2, 1972, 2, 2, 1974, 92, 92, -2554, - -2554, -2554, -2554, -2554, 1975, -2554, -2554, 1976, 92, -2554, - -2554, -2554, -2554, -2554, 1977, -2554, -2554, 92, -2554, 92, - 1978, -2554, 1980, 1981, -2554, 4780, -2554, 844, 1982, 4666, - 844, 606, 4815, 1983, -2554, 844, -2554, -2554, -2554, 844, - -2554, -2554, 4815, 1984, 606, 606, 606, 606, 606, 606, - 606, 606, 606, 606, 606, -2554, -2554, -2554, 4666, 844, - 606, 4815, 1985, -2554, 1142, 1142, 1142, 606, 4666, 1142, - 606, 1142, 1142, 4815, 4666, 1142, 606, 1142, -2554, 606, - 606, 606, 606, 606, 606, 1152, 606, 606, 606, 1418, - 1576, 1580, 1646, 1649, 1650, 1651, 2991, -2554, 1653, -2554, - -2554, 1152, 606, 606, 606, 606, 1152, 606, 606, 606, - 606, 606, 606, 1518, 606, 1565, 1152, 606, 606, -2554, - -2554, -2, 213, 1987, 1994, -2554, -2554, -2554, -2554, -2554, - -2, -2554, -2554, -2554, 606, -2554, -2554, 1142, 606, -2554, - -2554, -2554, 985, 1995, 1996, -2554, 606, 1999, 1261, -2554, - 844, -2554, -2554, -2554, -2554, 2000, -2554, -2554, -2554, 2003, - 2005, 4815, 2007, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2, - 844, -2554, -2, -2554, -2554, -2, -2554, -2, 2004, 2008, - 4815, 2009, -2554, 2010, -2554, -2554, 606, -2554, -2554, 2, - 92, -2554, 2, 2, 2, 2, 2, 2012, 2, 2, - 92, -2554, -2554, -2554, -2554, -2554, 2016, -2554, -2554, 92, - 2, 2, 2, 2, 2, 2019, 2, 2, 92, 2, - -2554, -2554, -2554, -2554, -2554, 92, -2554, -2554, 2020, 2, - 2, -2554, -2554, -2554, -2554, -2554, 92, -2554, -2554, 2022, - 2, -2554, 92, 2024, -2554, 92, -2554, -2554, 92, -2554, - -2554, 1518, -2554, 4666, 844, -2554, -2554, 2025, 1518, 606, - -2554, -2554, 1518, 606, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, 606, 606, 844, -2554, -2554, 2026, 1518, - 606, 1142, -2554, -2554, -2554, 844, -2554, 606, -2554, 1142, - -2554, 844, 844, -2554, 4815, 1152, -2554, 606, 2031, 2031, - 606, 606, 2031, 1152, 2031, -2554, 4815, 774, 2032, 2034, - 2035, 2038, 2039, 2041, -2554, 213, 1152, 2031, 2031, 606, - 606, 1152, 606, 606, 606, 606, 606, -2554, 1142, 606, - 2043, -2554, -2554, 606, 2031, 213, 17, -2554, 2044, 213, - -2554, -2554, -2554, 2045, 606, -2554, 2046, 2042, 1896, 606, - -2554, -2554, -2554, 2049, 121, 4815, -2554, -2554, -2554, -2554, - -2554, -2554, 2058, 121, 4815, -2554, 606, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, 92, -2554, -2554, 2, 92, -2554, - -2554, -2554, -2554, -2554, -2554, 92, -2554, -2554, 2, -2554, - 2, 92, -2554, -2554, 2, 92, -2554, -2554, 92, -2554, - -2554, 606, 844, -2554, -2554, 4666, 4815, 606, 4815, 606, - -2554, -2554, -2554, 4666, 4815, 606, -2554, -2554, 4815, -2554, - -2554, -2554, 844, -2554, 2060, -2554, -2554, -2554, 1152, 606, - -2554, 2062, -2554, -2554, 1518, 2064, -2554, 2066, -2554, -2554, - -2554, -2554, -2554, 2068, -2554, -2554, 1152, 606, 2070, -2554, - -2554, 606, 4815, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - 17, 1464, 1294, -2554, -2554, 2071, 2072, -2554, 1965, 2074, - 104, 4815, -2554, -2554, -2554, -2554, 4815, -2554, -2554, 2075, - 2, -2554, -2554, 2, -2554, -2554, 2, -2554, 2, -2554, - 4780, -2554, 844, -2554, 844, 606, 844, 2076, 844, -2554, - 844, 606, 844, 606, -2554, -2554, -2554, -2554, 2077, -2554, - 606, -2554, -2554, 2079, -2554, 606, -2554, -2554, -2554, 2078, - 606, -2554, -2554, -2554, 1518, -2554, -2554, -2554, 1464, -2554, - 1522, 1673, 1294, -2554, 2080, 2082, 2084, -2554, -2554, -2554, - -2554, 546, 546, 1518, 1518, -2554, -2554, -2554, -2554, -2554, - 844, -2554, -2554, 2085, -2554, 4666, -2554, -2554, 2087, -2554, - 1152, -2554, -2554, 1152, 606, -2554, -2554, 606, -2554, 1152, - 606, -2554, 4815, -2554, 1522, -2554, 213, -2554, 2088, 2089, - -2554, 606, 606, 121, 121, 2090, 4666, 1518, -2554, 4666, - -2554, -2554, 606, 2092, -2554, 606, 844, -2554, -2554, -2554, - 2093, 606, 606, -2554, -2554, -2554, 1518, -2554, -2554, 1518, - -2554, -2554, 2095, -2554, -2554, 2096, -2554, -2554, 2097, 2100, - -2554, -2554, 1152, -2554, 1152, -2554, -2554, -2554, -2554, -2554, - -2554, -2554 + 4214, -108, 69, 821, 37, -2502, -2502, 783, -132, 31, + 394, 1170, 157, 2942, 117, 268, 985, 96, 5143, 92, + 1064, -2502, 268, 849, 442, 935, 234, 29, 526, 30, + 210, 370, 640, 3006, 104, 531, 445, 30, -2502, 116, + 22, 1091, -2502, 86, 545, 1037, -2502, 398, -2502, 39, + 4251, 328, 53, 583, -2502, 752, -2502, 580, 525, 347, + 613, 621, 103, 622, -5, 93, -2502, -2502, -2502, 585, + 850, -2502, 56, 89, 268, 369, 850, 223, -2502, 649, + 850, -2502, -2502, 28, 850, -2502, -2502, -2502, -2502, 850, + -2502, -2502, -2502, -2502, -2502, -2502, 57, 598, 676, 681, + 504, -2502, 850, 1356, 850, 850, 513, 850, -2502, -2502, + -2502, 514, -2502, -2502, -2502, -2502, 4289, -2502, -2502, -2502, + -2502, -2502, -2502, 850, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 441, -2502, 850, -2502, + 717, -2502, -2502, 268, 268, 268, 268, 268, 268, 268, + -2502, -2502, 268, 268, 268, 268, -2502, 662, -2502, 730, + 1569, 701, 275, 573, 700, 452, 4320, 556, 4785, 4734, + 816, 4289, 3783, -2502, 871, -80, 866, 797, 840, 628, + 874, 30, 312, -2502, 831, -2502, 678, 633, 173, -2502, + -17, -2502, 624, -2502, 25, 852, 68, -2502, -2502, 4851, + -2502, -2502, -2502, 867, 945, -2502, -2502, -2502, -2502, 450, + -2502, -2502, -2502, -14, -2502, -2502, 4851, 4376, -2502, -2502, + 70, -2502, 963, 968, 77, -2502, 850, -2502, 981, 59, + 984, 54, 769, 993, 23, -2502, -2502, -2502, 996, 1001, + 268, 268, 850, 850, -2502, -2502, 1004, -2502, -2502, -2502, + -2502, -2502, -2502, 3574, -2502, 1017, 1021, 850, -2502, 1025, + -2502, -2502, -2502, -2502, -2502, 850, 878, 268, 3714, 850, + 441, 850, -2502, 1031, -2502, 5209, -2502, -2502, 870, 1033, + 1045, 850, -2502, -2502, 250, 1066, 4851, 1069, -2502, 1264, + 850, 983, -2502, 426, 959, 1335, 443, 1081, -2502, -2502, + -2502, -2502, -2502, -2502, 1094, -2502, 425, 2, 127, 135, + 435, -2502, 850, 850, 802, -2502, 850, 846, 1108, -2502, + 850, 850, -2502, 1112, 8, 40, 1117, 441, -2502, -2502, + -2502, 818, 850, -2502, -2502, 850, 850, 850, 850, 850, + 850, 850, 850, 850, -2502, -2502, -2502, 850, -2502, 1123, + 1127, -2502, 850, 1041, -2502, -2502, -2502, -2502, -2502, -2502, + 850, -2502, -2502, 850, -2502, -2502, 424, 424, 1145, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + 850, 850, 1153, 1163, 1180, -2502, -2502, 850, 850, 850, + -2502, 850, -2502, 1182, -2502, -2502, -2502, -2502, 927, -2502, + 1141, -2502, 4851, 1183, -2502, 850, -2502, -2502, -2502, 850, + 1187, 1196, 1196, 4851, 850, 850, 850, 850, 850, 850, + -2502, 850, 4289, 1356, 850, 850, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 1356, 850, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + 1212, -2502, 958, 46, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, 351, -2502, -2502, -2502, 1053, -2502, 645, + 462, 462, -2502, -2502, -2502, 1224, -2502, 1229, -2502, -2502, + 339, -2502, 1062, -2502, -2502, -2502, 1073, -2502, -2502, 441, + -2502, 3754, 850, -2502, 4851, 4851, 441, -2502, -2502, 441, + -2502, -2502, -2502, -2502, 441, -2502, -2502, 4851, 441, 850, + -2502, -2502, 4851, -2502, 1240, 168, 1038, 16, -2502, -2502, + 1057, 4851, 3901, -2502, -2502, -2502, -2502, -2502, 1247, 1250, + 1262, -2502, 1076, -2502, -2502, -2502, 850, -2502, -2502, 941, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, 25, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 1205, 1207, 1208, -2502, + -2502, 1055, -2502, 850, 1272, 1065, 5209, -2502, 441, -2502, + 1279, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, 4851, 4851, 4851, -2502, -2502, + 1282, 268, -2502, -2502, 1285, 1287, 1103, 850, -2502, 350, + 1213, -2502, 1296, -2502, 403, 1219, 5144, 35, 1308, -2502, + 1311, -2502, 1317, -2502, -9, -2502, 1318, 1320, -2502, 1324, + -2502, -2502, -2502, 850, -2502, 5209, 4689, 937, 787, 1327, + 558, 1246, -2502, -2502, -2502, 1332, 770, 1350, 1352, 32, + 850, 310, 471, 74, 4851, 268, 1825, 791, 83, 169, + 292, 19, -2502, 1347, 1353, 1367, -2502, -2502, -2502, -2502, + -2502, 850, 850, 850, 850, -2502, -2502, 850, 441, 850, + -2502, 850, 1356, 850, 1378, 441, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, 11, 562, -2502, -2502, -2502, 1381, + -2502, -2502, -2502, -2502, 1290, -2502, 1383, 1386, 1307, 1393, + -2502, 1394, -2502, 1397, 1333, 1402, 454, 391, 459, 55, + 571, 1407, 581, -2502, -2502, 1414, 1416, 1420, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, 1422, -2502, -2502, 1423, -2502, + -2502, 1424, -2502, -2502, -2502, -2502, -2502, -2502, -2502, 850, + 850, 850, 850, 850, -2502, 850, 954, 850, 850, -2502, + 421, -2502, 974, 1421, -2502, 1023, 1428, -2502, -2502, -42, + 850, 850, -2502, 1426, 850, 850, 850, 850, 850, 850, + 850, 850, 850, -2502, -2502, 1430, 1157, 850, 1427, 844, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, 1429, 1437, 850, 850, 850, 1440, 268, + 1441, 1442, 441, 4851, -2502, -2502, -2502, -2502, -2502, 441, + -2502, -2502, 850, 850, 850, 4851, 850, 1356, 850, -2502, + 850, -2502, -2502, -2502, -2502, -2502, 1450, 1451, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, 556, -2502, 850, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, 4851, 4851, 850, 441, -2502, -42, -42, -42, + 441, 1356, 850, 441, -2502, -2502, -2502, 850, -2502, -8, + 1233, 1452, 1461, -2502, -2502, 441, 4851, -2502, -2502, 1465, + 1466, 1472, 1101, 850, 4700, 565, 666, -2502, -2502, -2502, + 850, 1460, 251, 946, -2502, 1230, -2502, 1825, 1231, 508, + 1201, 121, -2502, -2502, 850, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, 850, 1479, -2502, -2502, -2502, -42, -2502, + -2502, -2502, -2502, 4813, -2502, -2502, 1481, 1482, 850, 1483, + 1486, 1489, 644, 644, -48, 1492, 1495, 1496, 1498, 1222, + 1242, 1505, 1508, 1526, 73, 73, -48, 1522, 1528, -48, + 1529, 1536, 5180, 1540, 1544, -2502, -2502, 1546, 1547, 636, + -2502, 1549, 1550, 1552, 1556, 644, -48, 1561, 1562, -2502, + 1563, -2502, -2502, 441, 917, 1369, 1299, 12, 1312, 1468, + 2362, 402, 1565, 285, 1438, 1473, 1190, 1595, 1537, 431, + 1345, 1476, 1578, 1358, 224, 27, 420, -7, 4289, 1825, + 1545, -77, 1349, 1382, 1586, 41, -2502, -2502, 280, 1588, + 1589, -2502, -2502, -2502, 1598, 1392, 185, 1825, 1396, -2502, + -2502, -2502, 268, 1604, 1605, 850, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, 5, -2502, 1341, -2502, 850, + -2502, 850, -2502, -2502, -2502, -2502, 850, 850, 850, 558, + 4851, -2502, 1606, 1158, -2502, -2502, 850, -2502, -2502, 850, + 4289, 850, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 268, 850, -2502, 850, + 558, 1614, -2502, 850, 850, -2502, 268, -2502, -2502, -2502, + 686, 1620, 1624, -2502, -2502, -2502, -2502, 850, 850, -2502, + -2502, 1356, 850, 850, -2502, -2502, -2502, -2502, 850, -2502, + 850, 1500, -2502, 850, -2502, 850, 1524, -2502, 1628, -2502, + 1113, 1113, 592, 1113, 1633, -2502, 647, -2502, -2502, 1634, + 1637, 736, 1639, -2502, 1641, 1643, 1645, -2502, 754, 758, + 1646, 1649, 1651, -2502, -2502, 1655, 1656, 1652, -2502, 1113, + 1113, 1113, -2502, -2502, -2502, 850, 850, 850, 850, -2502, + 850, 1056, 4851, -2502, 850, -2502, 5209, 441, -2502, -2502, + 1658, -2502, -2502, 1659, -2502, -2502, -2502, -2502, 1653, 3714, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + 850, 1661, 850, 850, 850, 860, -2502, 1662, 1663, 850, + 850, 141, 1665, 268, 268, -2502, 441, 850, 1667, 1670, + 1672, -2502, 4851, -2502, 850, -2502, -2502, -2502, 850, 850, + 850, 441, 1676, 4851, -42, -2502, -2502, -2502, 1356, 850, + 1677, -42, 850, 1644, 1650, 440, -2502, 1678, -2502, -2502, + 499, -2502, -2502, 850, 1680, 1687, 850, -2502, 1684, 1142, + 4289, 1458, 485, 1463, 26, 4851, 488, -2502, 348, 1557, + 112, 568, 1464, 148, -2502, -2502, 631, 1532, 692, 1575, + -56, 1825, -78, -2502, 1696, 1469, -2502, 683, -2502, -2502, + -2502, -2502, 1825, 1499, -2502, -2502, -2502, -2502, -2502, 850, + 1228, -2502, 850, -2502, -2502, 850, 850, -2502, 850, -2502, + 850, -2502, -2502, -2502, -2502, 1519, 850, -2502, 850, 33, + -2502, -2502, 1698, 1710, -2502, 850, 644, 644, 644, -2502, + -2502, -2502, -2502, -2502, -2502, 1711, 644, 644, 644, 824, + -2502, -2502, 73, 644, 644, 644, -2502, -2502, 644, 644, + 1712, 644, 644, 1713, 73, 1138, -2502, 1714, 1715, 1717, + -2502, 699, -2502, 830, 990, -2502, 1521, -2502, 1454, 1718, + 1719, 1720, 73, 73, -48, 1722, 1724, -48, 1726, 1728, + 1729, 644, 644, -2502, 1730, 644, 644, -2502, 1732, -2502, + -2502, -2502, -2502, -2502, -2502, 268, -2502, -2502, -2502, 4289, + 1314, 268, 850, 1338, 1330, -1, -2502, -2502, -2502, 50, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, 1733, 268, 850, -2502, 268, 1734, 850, 4851, + 268, 1459, 1507, 1509, 161, 186, 1510, 204, 1443, 1445, + 1744, 1746, 1747, 2362, 1749, 1750, 1751, 1455, 1456, 1177, + 1755, 268, 850, 1376, 1470, -2502, -2502, 268, 4289, -2502, + -2502, 4289, 850, 43, 1756, 268, 850, 441, 1356, 268, + -2502, 4289, 4851, 850, -2502, -2502, -2502, 268, 268, 4289, + -2502, -2502, -2502, -2502, -2502, -2502, 4289, 850, 268, -2502, + -2502, -2502, 850, -2502, -2502, 1759, 850, 1551, 191, 850, + 1553, 850, 202, 850, -2502, 850, 1554, 1555, 850, 850, + 850, 850, 850, 850, 850, 850, 18, 850, 850, 1558, + -2502, 850, 850, 850, 850, -2502, 4851, 441, 1761, 4851, + 4851, 850, 850, 441, 1356, -2502, 850, 850, 850, 4851, + -2502, 850, 850, -2502, -2502, -2502, 1762, -2502, -2502, -2502, + -2502, -2502, -2502, 850, 850, -2502, 850, 850, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, 1763, 1768, 1757, + -2502, -2502, 1113, 1775, 1776, 1778, -2502, 1780, 1781, 1787, + 1788, 1782, -2502, 1790, -2502, -2502, -2502, 1791, 1794, 1796, + -2502, 1797, 1800, 1802, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, 850, 850, 1801, + 4851, -2502, 850, 441, -2502, -2502, -2502, 3714, 850, 441, + 850, 850, 850, -2502, 850, 850, 1804, 850, 1806, 1805, + 850, 850, -2502, -2502, 1808, 4851, -2502, -2502, -2502, 850, + -2502, -2502, -2502, 441, -2502, 1078, 850, 1078, -42, -2502, + 441, 4851, 850, 850, 1809, -2502, -2502, -2502, -2502, -2502, + 850, -2502, -2502, -2502, -2502, -2502, 850, 1812, -2502, -2502, + 4851, 1815, 1816, 1817, 1818, 4851, 441, -2502, 4851, -2502, + 4851, 4851, 4289, 4851, 441, -2502, 4851, -2502, -2502, 4851, + -2502, -2502, 4289, 4851, -2502, 4851, 4851, 4289, 4851, -2502, + 4851, 4851, 850, -2502, -2502, -2502, 4851, 4851, 4851, -2502, + 4851, 4851, -2502, -2502, -2502, -2502, 4851, 4851, -2502, -2502, + -2502, 4851, 1819, 1820, 1821, 1822, 4851, -2502, -2502, 850, + 850, -2502, -2502, 1813, 850, -2502, -2502, 1824, 1826, -2502, + 850, -2502, -2502, -2502, 644, -2502, -2502, -2502, 1828, 1829, + 1830, -2502, -2502, -48, 1832, 1833, 1837, 644, -2502, -2502, + -2502, -2502, -2502, 73, -2502, -2502, 1834, 644, 1838, 1839, + 1840, 73, 73, -48, 1842, 1844, 1845, 1541, -2502, 1574, + -2502, 1601, 1585, 1846, 1847, 1849, 73, 73, -48, 1852, + 1856, -48, 1857, 1597, 1858, 1859, 1860, 73, 73, -48, + 1862, 1866, -48, 1869, 1607, 1880, 1881, 1882, 73, 73, + -48, 1884, 1886, -48, 1887, 1888, 1889, 1890, 73, 73, + -48, 1892, 1893, 1896, 73, -2502, -2502, -2502, -2502, -2502, + 1894, -2502, -2502, 1899, 73, 1901, 1906, -2502, -2502, 644, + -2502, -2502, 1907, -2502, 441, -2502, 4851, 850, -2502, 850, + 4851, 850, 1910, 1369, -2502, -2502, -2502, -2502, -2502, -2502, + 1913, -2502, 4289, 268, 1915, 4289, 441, -2502, 1917, 1369, + 850, 850, 850, 850, 850, 850, 850, 850, 850, 1919, + 1921, -2502, -2502, -2502, 1922, -2502, -2502, -2502, 1925, 1928, + -2502, -2502, -2502, -2502, 850, 4851, 850, 1929, 1369, 268, + 441, 1356, 441, 850, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, 850, 1356, 1356, -2502, 441, + 1356, 441, 850, -2502, -2502, 441, 1356, 441, 1356, -2502, + -2502, -2502, -2502, 850, 850, 850, 850, 850, 850, 850, + 850, 850, 850, 2472, -2502, 850, 850, 850, 850, 850, + 850, 850, 850, 850, 850, 850, 3754, 1930, 850, -2502, + 850, 850, 850, 1932, 1933, -2502, -2502, 441, -42, 1934, + 441, 441, -2502, -2502, 1356, -2502, 850, -2502, 1945, 441, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, 1113, 1113, 1113, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 850, -2502, -2502, 850, + -2502, 850, 441, 850, -2502, 1356, 850, -2502, 850, -2502, + 1879, 1958, 1960, -2502, 1965, 850, 850, 1966, 441, 4851, + -2502, -2502, 850, -2502, 850, -2502, -42, 499, 850, 1967, + -2502, 850, 25, -2502, -2502, 1969, 1970, 1971, 1972, 441, + -2502, 499, 499, 499, 441, -2502, 499, -42, 499, 499, + 441, -2502, 499, 499, 499, 441, -2502, 499, 499, 441, + 4851, 499, 441, 499, 499, 441, 499, 441, -2502, 1973, + 1975, 1978, 1979, 441, -2502, -2502, 1981, 25, 1983, -2502, + 850, -2502, -2502, -2502, -2502, 1982, -2502, -2502, -2502, -2502, + 644, 73, -2502, -2502, -2502, -2502, -2502, -2502, 1985, -2502, + -2502, 73, 1986, 1988, 1989, 73, 73, -48, 1991, 1992, + 1993, 1995, 1996, 1997, 73, 73, -48, 1999, 2000, 2001, + 2002, 2003, 2004, 73, 73, -48, 2006, 2007, 2008, 73, + 644, 644, 644, 644, 644, 2010, 644, 644, 2012, 73, + 73, 644, 644, 644, 644, 644, 2016, 644, 644, 2017, + 73, 73, -2502, -2502, -2502, -2502, -2502, 2019, -2502, -2502, + 2021, 73, -2502, -2502, -2502, -2502, -2502, 2023, -2502, -2502, + 73, -2502, 73, 2024, -2502, 2025, 2026, -2502, 5209, -2502, + 499, 2029, 4289, 499, 850, 4851, 2030, -2502, 499, -2502, + -2502, -2502, 499, -2502, -2502, 4851, 2031, 850, 850, 850, + 850, 850, 850, 850, 850, 850, 850, 850, -2502, -2502, + -2502, 4289, 499, 850, 4851, 2035, -2502, 1356, 1356, 1356, + 850, 4289, 1356, 850, 1356, 1356, 4851, 4289, 1356, 850, + 1356, -2502, 850, 850, 850, 850, 850, 850, 1369, 850, + 850, 850, 1581, 1626, 1660, 1697, 1700, 1701, 1703, 2472, + -2502, 1704, -2502, -2502, 1369, 850, 850, 850, 850, 1369, + 850, 850, 850, 850, 850, 850, 441, 850, 1635, 1369, + 850, 850, -2502, -2502, -42, 268, 2037, 2039, -2502, -2502, + -2502, -2502, -2502, -42, -2502, -2502, -2502, 850, -2502, -2502, + 1356, 850, -2502, -2502, -2502, 989, 2047, 2048, -2502, 850, + 2050, 1078, -2502, 499, -2502, -2502, -2502, -2502, 2051, -2502, + -2502, -2502, 2053, 2054, 4851, 2058, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -42, 499, -2502, -42, -2502, -2502, -42, -2502, + -42, 2060, 2063, 4851, 2064, -2502, 2066, -2502, -2502, 850, + -2502, -2502, 644, 73, -2502, 644, 644, 644, 644, 644, + 2061, 644, 644, 73, -2502, -2502, -2502, -2502, -2502, 2068, + -2502, -2502, 73, 644, 644, 644, 644, 644, 2069, 644, + 644, 73, 644, -2502, -2502, -2502, -2502, -2502, 73, -2502, + -2502, 2070, 644, 644, -2502, -2502, -2502, -2502, -2502, 73, + -2502, -2502, 2071, 644, -2502, 73, 2072, -2502, 73, -2502, + -2502, 73, -2502, -2502, 441, -2502, 4289, 499, -2502, -2502, + 2073, 441, 850, -2502, -2502, 441, 850, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, 850, 850, 499, -2502, + -2502, 2075, 441, 850, 1356, -2502, -2502, -2502, 499, -2502, + 850, -2502, 1356, -2502, 499, 499, -2502, 4851, 1369, -2502, + 850, 2076, 2076, 850, 850, 2076, 1369, 2076, -2502, 4851, + 2362, 2077, 2079, 2080, 2081, 2082, 2084, -2502, 268, 1369, + 2076, 2076, 850, 850, 1369, 850, 850, 850, 850, 850, + -2502, 1356, 850, 2085, -2502, -2502, 850, 2076, 268, 17, + -2502, 2086, 268, -2502, -2502, -2502, 2087, 850, -2502, 2089, + 2091, 1984, 850, -2502, -2502, -2502, 2092, 108, 4851, -2502, + -2502, -2502, -2502, -2502, -2502, 2093, 108, 4851, -2502, 850, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, 73, -2502, -2502, + 644, 73, -2502, -2502, -2502, -2502, -2502, -2502, 73, -2502, + -2502, 644, -2502, 644, 73, -2502, -2502, 644, 73, -2502, + -2502, 73, -2502, -2502, 850, 499, -2502, -2502, 4289, 4851, + 850, 4851, 850, -2502, -2502, -2502, 4289, 4851, 850, -2502, + -2502, 4851, -2502, -2502, -2502, 499, -2502, 2095, -2502, -2502, + -2502, 1369, 850, -2502, 2096, -2502, -2502, 441, 2097, -2502, + 2099, -2502, -2502, -2502, -2502, -2502, 2100, -2502, -2502, 1369, + 850, 2101, -2502, -2502, 850, 4851, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, 17, 1777, 1825, -2502, -2502, 2103, 2104, + -2502, 2078, 2106, 123, 4851, -2502, -2502, -2502, -2502, 4851, + -2502, -2502, 2107, 644, -2502, -2502, 644, -2502, -2502, 644, + -2502, 644, -2502, 5209, -2502, 499, -2502, 499, 850, 499, + 2108, 499, -2502, 499, 850, 499, 850, -2502, -2502, -2502, + -2502, 2109, -2502, 850, -2502, -2502, 2110, -2502, 850, -2502, + -2502, -2502, 2112, 850, -2502, -2502, -2502, 441, -2502, -2502, + -2502, 1777, -2502, 1803, 1772, 1825, -2502, 2113, 2114, 2116, + -2502, -2502, -2502, -2502, 462, 462, 441, 441, -2502, -2502, + -2502, -2502, -2502, 499, -2502, -2502, 2118, -2502, 4289, -2502, + -2502, 2119, -2502, 1369, -2502, -2502, 1369, 850, -2502, -2502, + 850, -2502, 1369, 850, -2502, 4851, -2502, 1803, -2502, 268, + -2502, 2120, 2121, -2502, 850, 850, 108, 108, 2122, 4289, + 441, -2502, 4289, -2502, -2502, 850, 2124, -2502, 850, 499, + -2502, -2502, -2502, 2126, 850, 850, -2502, -2502, -2502, 441, + -2502, -2502, 441, -2502, -2502, 2125, -2502, -2502, 2128, -2502, + -2502, 2129, 2130, -2502, -2502, 1369, -2502, 1369, -2502, -2502, + -2502, -2502, -2502, -2502, -2502 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -2554, -2554, -4, -2554, 559, -2554, -1489, -921, 1662, -2554, - 855, -164, 1867, -49, 705, -1647, 1714, 1829, -740, 1636, - -939, 1056, 1269, -2554, -1203, -2554, -2344, -1119, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -604, -487, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -1448, -2554, -2554, -2554, -2554, -2554, -652, -2554, -2554, - -2554, -2554, -2554, -2554, 461, -2554, -2554, -2554, -2554, -217, - -655, 123, -555, -2554, -2554, -2554, -2554, -596, -589, -2554, - -2554, -2553, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, 1389, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, -2554, - -2554, -2554, -2554, -2554, -2554, -2554 + -2502, -2502, -4, -2502, 316, -2502, -1509, -928, 1567, -2502, + 711, -331, 1164, -46, 851, -1654, 1702, 1542, -863, -1910, + -887, 1769, 812, -2502, -1222, -2502, -2366, -1132, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -552, -484, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -1451, -2502, -2502, -2502, -2502, -2502, -643, -2502, -2502, + -2502, -2502, -2502, -2502, 49, -2502, -2502, -2502, -2502, -155, + -653, -255, -519, -2502, -2502, -2502, -2502, -579, -574, -2502, + -2502, -2501, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, 1412, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, -2502, + -2502, -2502, -2502, -2502, -2502, -2502 }; /* 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 -1234 +#define YYTABLE_NINF -1242 static const yytype_int16 yytable[] = { - 70, 347, 1883, 2029, 860, 2031, 1499, 890, 107, 1070, - 1073, 1096, 109, 293, 67, 68, 1953, -1089, 1100, 624, - 1109, 983, 1571, 305, 1576, 772, 775, 1359, 1481, 289, - 1362, 67, 68, 319, 109, 258, 311, 619, 67, 68, - 67, 68, 67, 68, 376, 341, 1903, 1393, 352, 413, - 1606, 1607, 1608, 636, 367, 109, 67, 68, 373, 560, - 408, 380, 67, 68, 1465, 383, 385, 1904, 984, 394, - 1905, 1075, 400, 404, 1408, 1076, 407, 1065, 67, 68, - 411, 1906, 320, 67, 68, 412, 67, 68, 386, 1489, - 1463, 67, 68, 67, 68, 1194, 259, 846, 425, 1686, - 434, 435, 439, 441, 1907, 67, 68, 67, 68, 1355, - 716, 58, 1323, 1149, 1110, 704, 321, 745, 260, 445, - 1111, 1908, 849, 355, 109, 1102, 114, 1433, 615, 630, - 625, 67, 68, 977, 1253, 865, 1711, 1245, 1246, 1247, - 109, 572, 102, 1637, 79, 1077, 631, 2745, 114, 356, - 357, 1158, 59, 2642, 457, 422, 1338, 1466, 67, 68, - 1342, 103, 1695, 358, 1078, 550, 261, 891, 717, 114, - 60, 1150, 545, 561, 1469, 850, 67, 68, 490, 847, - 1470, 423, 1490, 511, 1339, 109, 748, 160, 268, 2647, - 1712, 2767, 1736, 1324, 985, 866, 497, 57, 1328, 61, - 978, 568, 751, 626, 498, 1483, 1151, 117, 1699, 359, - 360, 112, 104, 118, 119, 1871, 62, 109, 1159, 63, - 705, 632, 67, 68, 390, 269, 1079, 177, 309, 117, - 64, 248, 735, 1873, 256, 118, 119, 306, 114, 1876, - 610, 616, 617, 573, 1254, 1713, 695, 551, 1356, 379, - 117, 401, 1195, 627, 114, 1343, 118, 119, 643, 644, - 307, 546, 1316, 986, 1482, 1434, 414, 1066, 1690, 266, - 322, 620, 987, 679, 387, 483, 628, 562, 552, 839, - 484, 681, 684, 1464, 687, 691, 377, 693, 718, 2708, - 736, 1101, 842, 105, -1089, 409, 122, 703, 1500, 114, - 773, 776, 294, 1932, 988, 712, 714, 892, 1954, 1112, - 637, 1687, 295, 1467, 719, 1103, 485, 1152, 122, 117, - 1080, 361, 310, 362, 262, 118, 119, 388, 757, 758, - 763, 114, 765, 1435, 391, 117, 768, 769, 1491, 122, - 486, 118, 119, 402, 69, 152, 1067, 781, 783, 153, - 154, 784, 785, 786, 787, 788, 789, 790, 791, 792, - 340, 1638, 1909, 793, 1474, 351, 120, 152, 796, 798, - 263, 153, 154, 372, 1696, 1436, 799, 392, 393, 800, - 117, 1048, 1493, 106, 65, 487, 118, 119, 152, 270, - 904, 905, 153, 154, 1104, 2643, 809, 810, 1484, 2709, - 363, 1737, 271, 814, 815, 816, 1691, 817, 122, 2773, - 2774, 585, 117, 80, 723, 569, 403, 1531, 118, 119, - 1700, 824, 1049, 1048, 122, 825, 611, 1872, 488, 489, - 830, 831, 832, 833, 834, 835, 737, 836, 570, 1937, - 840, 841, 488, 2710, 1831, 1874, 906, 1834, 1544, 81, - 1128, 1877, 907, 843, 1303, 326, 279, 152, 1987, 853, - 1106, 153, 154, 272, 1049, 327, 1154, 1707, 1041, 122, - 741, 303, 725, 152, 1692, 1133, 554, 153, 154, 274, - 801, 275, 1072, 886, 219, 240, 960, 112, 67, 68, - 397, 1853, 328, 1048, 1042, 961, 962, 1549, 304, 908, - 220, 122, 1160, 1476, 1656, 1854, 1165, 872, 874, 1550, - 1572, 1660, 241, 754, 909, 1059, 1693, 1868, 152, 82, - 1129, 1708, 153, 154, 1155, 882, 910, 112, 1124, 398, - 325, 54, 911, 912, 1049, 112, 555, 937, 913, 1896, - 67, 68, 963, 742, 802, 1134, 349, 1664, 1050, 55, - 152, 854, 903, 354, 153, 154, 949, 950, 1477, 1214, - 1161, 575, 1051, 1052, 1166, 329, 1377, 1215, 1573, 1578, - 1069, 576, 67, 68, 162, 1378, 1379, 974, 1298, 933, - 242, 239, 365, 1304, 1709, 1060, 264, 369, 586, 914, - 1050, 1584, 1855, 296, 243, 276, 993, 1701, 577, 112, - 83, 1130, 330, 951, 1051, 1052, 67, 68, 915, 67, - 68, 803, 916, 948, 917, 1565, 1566, 370, 731, 696, - 1783, 336, 1380, 1043, 855, 371, 1135, 1579, 1705, 1784, - 1785, 1716, 1305, 396, 1706, 1710, 743, 918, 919, 992, - 1299, 1856, 120, 759, 331, 920, 1719, 1592, 84, 1585, - 244, 1596, 375, 1053, 1054, 697, 1068, 1306, 382, 1081, - 1050, 2519, 559, 921, 1300, 332, 1061, 1131, 964, 965, - 1156, 578, 1044, 1233, 1051, 1052, 1786, 1116, 1117, 1118, - 1119, 857, 120, 1120, 406, 1122, 755, 1123, 1310, 1125, - 120, 245, 1136, 804, 1794, 1053, 1054, 1045, 805, 277, - 333, 246, 698, 1795, 1796, 1593, 1162, 416, 579, 1597, - 1167, 418, 1398, 760, 1574, 420, 334, 1249, 442, 922, - 858, 1187, 459, 460, 461, 462, 463, 464, 465, 952, - 953, 466, 467, 468, 469, 458, 1702, 966, 291, 337, - 1301, 1567, 1568, 1805, 819, 820, 967, 968, 1381, 1382, - 1797, 969, 1806, 1807, 120, 1175, 1176, 1177, 1178, 1179, - 470, 1180, 1182, 1184, 1185, 1053, 1054, 313, 1569, 471, - 1717, 580, 1318, 1580, 1675, 481, 1197, 1198, 970, 1399, - 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1302, - 1703, 493, 1211, 1212, 761, 1586, 1749, 1750, 954, 1808, - 1769, 1770, 1787, 1788, 699, 495, 1857, 955, 956, 67, - 1181, 1218, 1219, 1220, 1413, 2092, 522, 1383, 338, 641, - 642, 444, 581, 762, 1718, 1097, 1384, 1385, 1228, 1229, - 1230, 1386, 1232, 548, 1234, 2105, 1235, 298, 96, 957, - 1414, 1676, 249, 1751, 67, 68, 686, 1771, 1400, 1401, - 2142, 1594, 314, 2145, 97, 1598, 280, 1238, 1387, 1240, - 549, 2153, 1402, 315, 2156, 2291, 2292, 2293, 1667, 1668, - 1243, 1789, 2164, 1415, 598, 2167, 1798, 1799, 1250, 1416, - 1790, 1791, 2174, 1252, 1417, 1792, 746, 749, 752, 558, - 67, 68, 512, 1858, 520, 1098, 525, 529, 1266, 1268, - 564, 1403, 1418, 565, 556, 567, 1308, 584, 1311, 1314, - 1677, 1678, 1793, 2032, 590, 1319, 592, 72, 613, 583, - 1325, 1419, 73, 1368, 1679, 1809, 1810, 250, 98, 1326, - 67, 68, 2193, 614, 299, 594, 618, 1420, 251, 639, - 599, 1669, 1859, 316, 1334, 1800, 366, 2203, 1816, 1817, - 622, 531, 634, 1722, 1801, 1802, 317, 1555, 74, 1803, - 67, 68, 780, 1680, 640, 532, 1421, 682, 99, 1752, - 1753, 645, 252, 1772, 1773, 2222, 1099, 677, 595, 600, - -1231, 163, 75, 67, 1614, 678, 1804, 533, 67, 68, - 694, 1407, 281, 689, 1811, 1818, 164, 282, 165, 283, - 701, 100, 1422, 1812, 1813, 300, 534, 680, 1814, 2109, - 2110, 1468, 2118, 2119, 301, 1423, 1631, 601, 253, 702, - 1723, 707, 535, 1188, 1189, 536, 1424, 76, 166, 2605, - 709, 254, 1492, 67, 68, 1815, 167, 683, 1754, 2127, - 2128, 1498, 1774, 715, 2513, 67, 68, 1755, 1756, 537, - 538, 1775, 1776, 1425, 739, 1526, 2111, 1527, 721, 2120, - 766, 110, 1528, 1529, 1530, 1426, 740, 1427, 1428, 767, - 436, 77, 1536, 67, 68, 1537, 770, 1540, 778, 1757, - 596, 285, 794, 1777, 1657, 795, 2129, 1313, 808, 1724, - 1725, 168, 811, 1542, 812, 1543, 67, 68, 112, 1546, - 1547, 813, 539, 1726, 67, 68, 1847, 1429, 818, 2677, - 540, 67, 68, 1553, 1554, 821, 1030, 823, 1556, 1557, - 797, 1819, 1820, 426, 1558, 844, 1559, 2688, 428, 1561, - 1031, 1562, 852, 710, 861, 67, 68, 1618, 845, 1032, - 437, 169, 1727, 113, 1210, 67, 68, 838, 863, 1033, - 868, 426, 427, 428, 870, 67, 68, 170, 171, 1405, - 1406, 67, 68, 1850, 172, 884, 173, 541, 542, 889, - 944, 1609, 1610, 1611, 1612, 2367, 1613, 1615, 1034, 899, - 1617, 894, 2112, 2113, 2376, 2121, 2122, 1447, 86, 900, - 1821, 174, 1439, 2385, 901, 1623, 115, 1035, 902, 1822, - 1823, 1191, 1192, 711, 67, 1265, 1626, 925, 1628, 1629, - 1630, 1632, 2130, 2131, 1448, 1635, 1636, 1449, 934, 1440, - 1450, 438, 1441, 1644, 1084, 2282, 67, 68, 1893, 1107, - 1649, 1824, 927, 286, 1650, 1651, 1652, 1534, 1535, 543, - 887, 929, 1036, 931, 2761, 1658, 939, 1451, 1661, 935, - 2764, 2114, 1442, 120, 2123, 943, 175, 945, 121, 1671, - 2115, 2116, 1673, 2124, 2125, 958, 2597, 946, 287, 2600, - 947, 2602, 924, 1186, 1452, 1889, 1890, 1453, 1037, 1443, - 959, 2132, 1444, 971, 2614, 2615, 827, 828, 979, 86, - 2133, 2134, 2117, 2313, 981, 2126, 982, 1056, 989, 1058, - 990, 2629, 1038, 2798, 1721, 2799, 991, 1728, 87, 1914, - 1729, 1730, 1047, 1731, 2329, 1732, 1063, 1113, 1064, 1115, - 1114, 1734, 2135, 1735, 2473, 1126, 1138, 288, 1139, 1140, - 1741, 88, 67, 68, 1852, 89, 1405, 1406, 1141, 1142, - 2486, 1039, 1143, 1040, 1144, 2491, 124, 125, 126, 127, + 70, 2042, 1894, 2044, 347, 983, 109, 860, 107, 1576, + 1504, 1581, 772, 1096, 1245, 1246, 1247, -1097, 1070, 1073, + 890, 67, 68, 1966, 1109, 67, 68, 376, 636, 289, + 67, 68, 408, 109, 258, 80, 311, 1611, 1612, 1613, + 67, 68, 67, 68, 775, 341, 1486, 1692, 352, 1065, + 268, 1128, 984, 1745, 367, 1194, 67, 68, 373, 624, + 386, 380, 413, 1469, 619, 383, 385, 1409, 745, 394, + 1915, 81, 400, 404, 610, 1329, 407, 67, 68, 1360, + 411, 112, 1363, 615, 585, 412, 304, 269, 1100, 1720, + 1356, 1916, 67, 68, 1917, 259, 67, 68, 425, 1394, + 434, 435, 439, 441, 1864, 1918, 67, 68, 109, 293, + 1075, 1716, 839, 1475, 1076, 572, 1343, 260, 1110, 445, + 114, 1129, 977, 1253, 1111, 842, 67, 68, 1919, 545, + 54, 109, 1411, 1702, 598, 57, 319, 2327, 1324, 109, + 2655, 82, 1158, 1721, 1481, 1920, 79, 114, 55, 846, + 160, 2337, 2338, 2339, 457, 1867, 2341, 1470, 2343, 2344, + 67, 68, 2346, 2347, 2348, 1717, 261, 2350, 2351, 1707, + 625, 2354, 886, 2356, 2357, 219, 2359, 305, 490, 985, + 2660, 891, 1882, 511, 1077, 320, 1102, 1642, 67, 68, + 978, 220, 1865, 748, 67, 68, 616, 102, 1722, 1482, + 599, 751, 117, 1130, 1078, 67, 68, 1884, 118, 119, + 1159, 1344, 2758, 1195, 309, 379, 103, 573, 546, 1325, + 321, 1494, 114, 83, 112, 1887, 67, 68, 1718, 117, + 1357, 1476, 847, 1254, 568, 118, 119, 120, 177, 600, + 1066, 1866, 617, 1868, 626, 114, 1412, 387, 986, 695, + 559, 1467, 270, 114, 67, 68, 2780, 987, 643, 644, + 1693, 611, 586, 1746, 1317, 271, 1079, 104, 409, 1131, + 377, 84, 109, 679, 274, 390, 275, 601, 67, 68, + 414, 681, 684, 1487, 687, 691, 637, 693, 773, 988, + 2435, 122, 1869, 2439, 627, -1097, 109, 703, 2443, 620, + 388, 401, 2444, 1505, 117, 712, 714, 1488, 310, 2721, + 118, 119, 1436, 1471, 1112, 1495, 1967, 628, 122, 1067, + 776, 892, 2460, 69, 262, 340, 272, 117, 757, 758, + 763, 162, 765, 118, 119, 117, 768, 769, 239, 351, + 152, 118, 119, 264, 153, 154, 1703, 781, 783, 105, + 296, 784, 785, 786, 787, 788, 789, 790, 791, 792, + 1080, 1124, 1101, 793, 949, 950, 1479, 152, 796, 798, + 263, 153, 154, 1048, 322, 1697, 799, 1103, 560, 800, + 120, 1661, 1708, 2656, 1498, 391, 114, 1921, 1665, 372, + 396, 276, 306, 122, 402, 1883, 809, 810, 704, 294, + 2786, 2787, 336, 814, 815, 816, 1643, 817, 960, 295, + 114, 951, 1945, 2533, 1049, 307, 122, 961, 962, 2722, + 1885, 824, 86, 1950, 122, 825, 1536, 1186, 392, 393, + 830, 831, 832, 833, 834, 835, 279, 836, 1888, 106, + 840, 841, 152, 2540, 1669, 1468, 153, 154, 754, 569, + 2000, 1437, 1149, 843, 801, 1311, 1104, 1549, 248, 741, + 256, 483, 488, 2723, 963, 152, 484, 403, 117, 153, + 154, 1496, 570, 152, 118, 119, 446, 153, 154, 459, + 460, 461, 462, 463, 464, 465, 1863, 716, 466, 467, + 468, 469, 117, 561, 594, 277, 112, 1840, 118, 119, + 1843, 1489, 485, 705, 735, 397, 1233, 872, 874, 422, + 1150, 67, 68, 1879, 1698, 723, 67, 68, 802, 1438, + 1154, 337, 1433, 1672, 1673, 882, 486, 2587, 67, 68, + 865, 266, 742, 303, 1048, 423, 1908, 595, 952, 953, + 937, 1050, 849, 87, 398, 717, 1151, 447, 2595, 325, + 1249, 1461, 903, 436, 349, 1051, 1052, 122, 2600, 67, + 68, 1439, 736, 1069, 2603, 2604, 88, 448, 449, 450, + 89, 487, 1106, 725, 451, 1049, 641, 642, 1155, 933, + 974, 122, 1699, 354, 366, 365, 803, 452, 67, 68, + 866, 964, 965, 453, 1072, 850, 1674, 562, 857, 993, + 338, 298, 1133, 686, 454, 1689, 152, 954, 1695, 369, + 153, 154, 112, 948, 488, 489, 955, 956, 370, 90, + 497, 1048, 755, 437, 1700, 371, 743, 375, 498, 416, + 152, 1299, 1160, 554, 153, 154, 1434, 858, 1719, 992, + 596, 1378, 1165, 746, 749, 752, 1053, 1054, 957, 1728, + 1379, 1380, 120, 1577, 406, 91, 1068, 1152, 1709, 1081, + 966, 575, 1049, 92, 93, 1462, 718, 2532, 804, 967, + 968, 576, 1134, 805, 969, 2674, 1473, 1116, 1117, 1118, + 1119, 418, 1474, 1120, 112, 1122, 420, 1123, 1704, 1125, + 1161, 1554, 719, 555, 1300, 2686, 1304, 1381, 577, 299, + 1166, 970, 1050, 1555, 1792, 438, 442, 382, 1583, 737, + 1725, 1578, 1319, 1793, 1794, 455, 1051, 1052, 1301, 1690, + 731, 458, 1696, 853, 1187, 1156, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 1145, 1972, 1146, 1147, 1222, 472, - 1164, 1257, 1169, 1170, 90, 1085, 1171, 1454, 1172, 1173, - 1174, 1190, 1445, 1086, 1193, 1309, 1209, 473, 1199, 1087, - 1213, 1216, 1217, 1221, 1223, 1848, 1849, 1851, 1407, 87, - 1224, 1350, 1236, 1237, 474, 1258, 1455, 1259, 1088, 1262, - 91, 1446, 1263, 1264, 1315, 1321, 475, 1861, 92, 93, - 1317, 1864, 88, 1327, 1407, 1331, 2028, 1332, 1335, 1336, - 1337, 1089, 1456, 476, 1345, 1346, 477, 1347, 1348, 1090, - 1351, 1352, 1353, 1354, 1892, 1894, 1407, 478, 67, 68, - 1867, 1360, 1405, 1406, 1902, 1361, 1388, 1912, 67, 68, - 1895, 1363, 1405, 1406, 1919, 1364, 1370, 1372, 1373, 1375, - 1389, 1409, 1390, 1391, 1394, 90, 1091, 1395, 1926, 1396, - 1410, 1411, 1431, 1928, 1092, 1432, 1437, 1930, 479, 1933, - 1934, 1412, 1936, 1938, 1939, 1458, 1942, 1438, 1457, 1945, - 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1955, 1957, 1958, - 1459, 91, 1960, 1961, 1962, 1963, 1460, 343, 1461, 92, - 93, 1475, 1969, 1970, 344, 1093, 1471, 1973, 1974, 1975, - 1480, 2505, 1977, 1978, 2593, 1478, 1094, 1462, 1479, 1485, - 2509, 1486, 2601, 446, 1980, 1981, 1487, 1982, 1983, 1488, - 1494, 1095, 1496, 1497, 1560, 2613, 1239, 1533, 1545, 1551, - 2618, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 2526, - 1552, 1495, 2528, 1563, 1564, 2529, 1577, 2530, 2003, 2004, - 1582, 1583, 1588, 2006, 1589, 1590, 1591, 1602, 2008, 2011, - 1600, 2013, 2014, 2015, 447, 2016, 2017, 1601, 2019, 1603, - 1604, 2022, 2023, 1605, 1633, 1620, 1621, 1634, 1622, 1627, - 2026, 1662, 1640, 448, 449, 450, 1645, 2030, 1646, 1647, - 451, 1654, 1659, 2035, 2036, 1541, 1663, 1666, 1672, -445, - 1674, 2038, 1683, 452, 1694, 1548, 1704, 2039, 1714, 453, - 1684, 1685, 1689, 1739, 1740, 1745, 1733, 1697, 723, 1764, - 454, 1767, 1698, 1778, 1720, 1780, 1715, 1782, 1825, 1826, - 1827, 1828, 1832, 1833, 1878, 1835, 1836, 1837, 1840, 1880, - 2067, 1843, 1860, 1863, 1879, 1881, 1882, 1884, 1869, 1885, - 1886, 1891, 1870, 1887, 1911, 1888, 1929, 1931, 1875, 1935, - 1966, 1943, 1944, 1473, 1959, 1979, 2081, 2082, 1984, 1985, - 1986, 2084, 1988, 724, 1989, 2225, 725, 2087, 1990, 1991, - 1992, -1102, 1993, 1994, 1995, 1996, 345, 1997, 346, 2229, - 2230, 1998, 1999, 2232, 2000, 2001, 2002, -1233, 2018, 2236, - 2020, 2238, 2477, 2024, 2021, 2037, 2040, 2302, 2042, 2043, - 2044, 726, 2045, 2076, 2077, 2078, 2079, 2083, 2136, 2085, - 2086, 2093, 1641, 1642, 2089, 1539, 2090, 2091, 2094, 2147, - 2095, 455, 2098, 2158, 2100, 2101, 2102, 2106, 2107, 2253, - 2108, 2137, 2138, 2139, 2143, 2144, 727, 2287, 2146, 2760, - 2148, 2149, 2150, 2154, 2155, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 2157, 2188, 2189, 2159, 2191, 2299, 1407, - 2160, 2161, 2165, 728, 2166, 2175, 729, 2168, 2169, 2170, - 2171, 2176, 2500, 2177, 1407, 2204, 2205, 2206, 2207, 2208, - 2209, 2210, 2211, 2212, 2179, 2180, 2182, 2183, 2213, 730, - 2185, 2192, 731, 2194, 2198, 2202, 2214, 2216, 2218, 2215, - 2220, 2217, 1407, 732, 2221, 2274, 2279, 2227, 2280, 2283, - 290, 2289, 2639, 2303, 1625, 2304, 2305, 2308, 2228, 2316, - 2319, 2320, 2321, 2322, 2348, 2234, 2349, 2350, 2351, 2353, - 2478, 2355, 2357, 2360, 2479, 2362, 2239, 2240, 2241, 2242, - 2243, 2244, 2245, 2246, 2247, 2248, 2363, 2364, 2261, 2262, - 2263, 2264, 2265, 2266, 2267, 2268, 2269, 2270, 2271, 2272, - 2368, 2275, 2369, 2276, 2277, 2278, 2370, 2371, 2372, 2373, - 1665, 2377, 2378, 1844, 2379, 2380, 2381, 2382, 2386, 2288, - 2387, 2706, 2388, 2395, 2398, 1682, 2406, 2701, 2409, 2412, - 2413, 2415, 2418, 443, 2419, 2420, 2423, 2429, 2433, 2450, - 2480, 2507, 1862, 2481, 2482, 2483, 1866, 2485, 2508, 2294, - 2515, 2516, 2295, 2518, 2296, 2521, 2298, 2522, 2531, 2300, - 2523, 2301, 2525, 2532, 2534, 2535, 2544, 2746, 2306, 2307, - 2548, 1358, 1897, 2555, 2561, 2311, 2565, 2312, 2568, 2575, - 2583, 2315, 222, 1915, 2317, 2595, 2712, 2606, 2607, 2484, - 2608, 1920, 1921, 2609, 2610, 2611, 2638, 2701, 2626, 2633, - 2635, 2637, 1927, 509, 2641, 516, 519, 223, 524, 528, - 2451, 2452, 2453, 2646, 2674, 2457, 2680, 2459, 2460, 2683, - 2684, 2464, 2685, 2466, 2690, 2698, 2704, 2705, 2707, 2715, - 2725, 2733, 2739, 2356, 2736, 2748, 588, 2749, 2750, 2756, - 224, 2759, 826, 2769, 2770, 2775, 2783, 225, 2787, 2792, - 2794, 807, 2796, 603, 608, 2797, 2747, 226, 227, 2743, - 0, 0, 0, 1846, 228, 1148, 0, 0, 0, 692, + 148, 149, 150, 151, 1135, 1175, 1176, 1177, 1178, 1179, + 1795, 1180, 1182, 1184, 1185, 2734, 1584, 2735, 120, 2737, + 300, 2739, 578, 2740, 355, 2742, 1197, 1198, 470, 301, + 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1050, + 1560, 1041, 1211, 1212, 1302, 2045, 471, 1589, 1710, 1339, + 356, 357, 1705, 1051, 1052, 67, 68, 1053, 1054, 579, + 1059, 1218, 1219, 1220, 358, 1597, 854, 1042, 481, 1601, + 1136, 67, 68, 2768, 1382, 1383, 1305, 1340, 1228, 1229, + 1230, 1097, 1232, 58, 1234, 1803, 1235, 1162, 1758, 1759, + 120, 280, 759, 1303, 1804, 1805, 550, 1167, 1214, 522, + 1726, 493, 1711, 67, 68, 1590, 1215, 1238, 1579, 1240, + 359, 360, 630, 67, 68, 2304, 2305, 2306, 495, 2799, + 1243, 548, 580, 1598, 59, 1306, 2105, 1602, 1250, 631, + 1060, 67, 68, 1252, 291, 1760, 549, 1796, 1797, 855, + 558, 1806, 60, 1384, 1053, 1054, 2118, 564, 1266, 1268, + 1307, 1098, 1385, 1386, 1727, 565, 1309, 1387, 1312, 1315, + 567, 2155, 760, 1585, 2158, 1320, 531, 1662, 682, 1636, + 1326, 61, 2166, 581, 696, 2169, 1369, 944, 551, 1327, + 532, 819, 820, 2177, 1388, 2206, 2180, 240, 62, 590, + 780, 584, 63, 2187, 1335, 904, 905, 1043, 1713, 67, + 68, 2216, 533, 64, 1714, 632, 1798, 67, 1181, 552, + 697, 249, 1061, 1314, 241, 1799, 1800, 444, 613, 72, + 1801, 534, 614, 361, 73, 362, 592, 281, 1188, 1189, + 2235, 1084, 282, 1099, 283, 618, 1107, 535, 683, 622, + 536, 1408, 67, 68, 761, 1814, 1044, 1802, 634, 1399, + 639, 906, 1591, 1030, 1815, 1816, 640, 907, 698, 645, + 74, 1472, 1761, 1762, 163, 537, 538, 1031, 1807, 1808, + 1599, 1045, 677, 762, 1603, 678, 1032, 1191, 1192, 164, + 680, 165, 1497, 242, 75, 694, 1033, 701, 512, 2618, + 520, 1503, 525, 529, 67, 68, 250, 243, 2526, 702, + 556, 1817, 363, 797, 908, 1531, -1239, 1532, 251, 67, + 1619, 166, 1533, 1534, 1535, 583, 1034, 1400, 539, 167, + 909, 707, 1541, 709, 326, 1542, 540, 1545, 721, 76, + 715, 1763, 910, 222, 327, 1035, 739, 1809, 911, 912, + 1764, 1765, 252, 1547, 913, 1548, 1810, 1811, 740, 1551, + 1552, 1812, 2690, 244, 67, 1265, 86, 65, 223, 766, + 699, 328, 767, 1558, 1559, 2295, 770, 313, 1561, 1562, + 2701, 778, 1766, 77, 1563, 168, 1564, 794, 1813, 1566, + 1036, 1567, 795, 541, 542, 1222, 1401, 1402, 253, 689, + 1623, 224, 827, 828, 245, 914, 821, 1927, 225, 808, + 1403, 254, 1778, 1779, 246, 1570, 1571, 811, 226, 227, + 67, 68, 1539, 1540, 915, 228, 1037, 812, 916, 1210, + 917, 1614, 1615, 1616, 1617, 169, 1618, 1620, 1818, 1819, + 1622, 1900, 1901, 2326, 813, 329, 818, 229, 823, 1404, + 1038, 170, 171, 918, 919, 1628, 426, 290, 172, 1780, + 173, 920, 314, 230, 2342, 543, 1631, 428, 1633, 1634, + 1635, 1637, 1442, 1985, 315, 1640, 1641, 844, 231, 921, + 845, 852, 330, 1649, 1680, 174, 232, 87, 861, 1039, + 1654, 1040, 889, 863, 1655, 1656, 1657, 2774, 868, 1443, + 2380, 870, 1444, 2777, 884, 1663, 233, 1820, 1666, 2389, + 88, 894, 899, 96, 2041, 900, 1821, 1822, 2398, 1676, + 2610, 1823, 1678, 2613, 331, 2615, 901, 67, 68, 97, + 902, 925, 1445, 927, 929, 922, 931, 934, 2627, 2628, + 443, 234, 1572, 1573, 939, 332, 943, 935, 1824, 945, + 175, 946, 1681, 838, 316, 2642, 2811, 947, 2812, 1446, + 958, 959, 1447, 90, 710, 1730, 971, 317, 1737, 1574, + 1731, 1738, 1739, 979, 1740, 981, 1741, 67, 68, 1856, + 333, 982, 1743, 989, 1744, 990, 1781, 1782, 991, 235, + 2486, 1750, 1047, 67, 68, 1862, 334, 1406, 1407, 91, + 236, 67, 68, 1860, 98, 1056, 2499, 92, 93, 1058, + 509, 2504, 516, 519, 1063, 524, 528, 1064, 1500, 67, + 68, 1682, 1683, 1506, 1113, 426, 427, 428, 1507, 237, + 1114, 1115, 67, 68, 711, 1684, 1406, 1407, 1732, 67, + 68, 1905, 1126, 588, 99, 1138, 887, 1139, 1140, 1508, + 1509, 1141, 1510, 1511, 1142, 1783, 723, 1143, 1257, 1144, + 603, 608, 1145, 1512, 1784, 1785, 1857, 1147, 1859, 1861, + 1408, 1164, 1546, 1448, 1685, 1513, 1514, 100, 924, 1169, + 1146, 1170, 1553, 1515, 1171, 1190, 1516, 1172, 1173, 1174, + 1872, 2518, 1193, 1216, 1875, 1209, 1786, 1408, 1199, 1213, + 2522, 1217, 1449, 1517, 1221, 1223, 1224, 1733, 1734, 1518, + 1519, 724, 688, 1520, 725, 1236, 1237, 1258, 1904, 1906, + 1408, 1735, 67, 68, 1878, 1259, 1406, 1407, 1914, 1262, + 708, 1263, 1925, 67, 68, 1907, 1264, 1406, 1407, 1932, + 1310, 1322, 1316, 1318, 1328, 1332, 1351, 1333, 1336, 2539, + 726, 1337, 2541, 1939, 1338, 2542, 1346, 2543, 1941, 1347, + 1736, 1348, 1943, 1349, 1946, 1947, 1352, 1949, 1951, 1952, + 1353, 1955, 1521, 1354, 1958, 1959, 1960, 1961, 1962, 1963, + 1964, 1965, 1968, 1970, 1971, 727, 1361, 1973, 1974, 1975, + 1976, 1355, 1362, 1410, 1364, 1825, 1826, 1982, 1983, 1646, + 1647, 1365, 1986, 1987, 1988, 1371, 1413, 1990, 1991, 1373, + 2606, 1374, 1376, 1389, 1390, 2122, 2123, 1391, 2614, 1993, + 1994, 1392, 1995, 1996, 1522, 1395, 1466, 1396, 1397, 1523, + 1435, 2626, 728, 1414, 1440, 729, 2631, 1460, 1441, 1463, + 2238, 1464, 1827, 1465, 1524, 1480, 822, 1483, 2131, 2132, + 1484, 1485, 1490, 1525, 1491, 2242, 2243, 829, 730, 2245, + 1493, 731, 2124, 1492, 1499, 2249, 837, 2251, 1501, 1502, + 1565, 1538, 732, 2016, 2017, 2140, 2141, 1450, 2019, 1550, + 1526, 1527, 472, 2021, 2024, 1556, 2026, 2027, 2028, 1557, + 2029, 2030, 1569, 2032, 1568, 2133, 2035, 2036, 1582, 1587, + 473, 1528, 1588, 1593, 1451, 2039, 1594, 1452, 1595, 1596, + 1453, 1605, 2043, 2300, 1606, 1607, 1610, 474, 2048, 2049, + 1608, 1609, 2142, 1625, 1626, 1627, 2051, 1639, 1638, 475, + 1645, 1650, 2052, 1632, 1651, 873, 1652, 1454, 875, 876, + 1659, 1664, 1667, 1671, 1677, 1529, 476, -445, 1668, 1679, + 477, 880, 1688, 1701, 2312, 1715, 883, 1691, 1706, 1712, + 1723, 478, 1748, 1729, 1455, 895, 897, 1456, 2080, 1828, + 1829, 1724, 1239, 1742, 1749, 1754, 1773, 1776, 1834, 1787, + 1789, 1853, 1791, 1835, 1836, 1837, 1841, 1858, 1842, 2125, + 2126, 1844, 1845, 1846, 1849, 2094, 2095, 1852, 1870, 1874, + 2097, 1880, 479, 1881, 1886, 1889, 2100, 1890, 1891, 1871, + 1892, 1893, 1873, 1895, 1896, 1897, 1877, 1898, 1899, 1902, + 1923, 1999, 2134, 2135, 1942, 1342, 1979, 1992, 1997, 940, + 941, 942, 1944, 1998, 1948, 1956, 1957, 1903, 1830, 1972, + 2001, 2002, 2003, 1909, 2004, 2005, 2008, 1831, 1832, 2143, + 2144, 1924, 2006, 2007, 2009, 1928, 2010, 1393, 2127, 2011, + 2012, -1241, 2013, 1933, 1934, 2014, 2015, 2128, 2129, 2031, + 2033, 2034, 2037, 2050, 1940, 2773, 2053, 2096, 1457, 1833, + 2055, 2056, 2057, 2058, 2089, 2090, 2091, 2092, 1083, 2098, + 2099, 2136, 692, 2102, 2103, 2104, 2106, 2107, 2111, 2130, + 2137, 2138, 2108, 2113, 2114, 2115, 2119, 1458, 2120, 2149, + 2121, 2150, 2151, 2201, 2152, 2202, 2156, 2204, 2145, 1408, + 2157, 2160, 2159, 2161, 2162, 2163, 2167, 2146, 2147, 1478, + 2168, 2171, 2139, 1459, 2170, 1408, 2217, 2218, 2219, 2220, + 2221, 2222, 2223, 2224, 2225, 2172, 2173, 2174, 2178, 779, + 2179, 2315, 2181, 2182, 2183, 2184, 2188, 2189, 2192, 2148, + 2231, 2190, 2233, 2193, 1408, 2195, 2464, 2465, 2466, 2240, + 2196, 2470, 2198, 2472, 2473, 2205, 1085, 2477, 2207, 2479, + 2211, 2241, 2215, 2226, 1086, 2227, 2490, 2228, 2247, 2229, + 1087, 1544, 2230, 2513, 2234, 2287, 2292, 2293, 2296, 2252, + 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, 2261, 2302, + 1088, 2274, 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, + 2283, 2284, 2285, 2316, 2288, 2317, 2289, 2290, 2291, 2318, + 2321, 2491, 2329, 1089, 2332, 2333, 2334, 2335, 2361, 2524, + 2362, 1090, 2301, 2363, 2364, 2366, 2370, 1226, 2368, 2373, + 2652, 2375, 2714, 2376, 2377, 2381, 2382, 826, 2383, 1231, + 2384, 2385, 2386, 2390, 2391, 2492, 2392, 2393, 2394, 2395, + 2399, 2400, 2307, 2401, 2408, 2308, 2411, 2309, 1091, 2311, + 2419, 2422, 2313, 2425, 2314, 2426, 1092, 2428, 2431, 2432, + 2433, 2319, 2320, 2436, 2442, 2446, 1241, 1242, 2324, 2463, + 2325, 2520, 2493, 2521, 2328, 2494, 2495, 2330, 2496, 2498, + 1630, 871, 2528, 2529, 2531, -1110, 2534, 2535, 877, 2536, + 1261, 878, 2714, 2538, 2544, 2557, 879, 1093, 2545, 2547, + 881, 2548, 2561, 2568, 2574, 2578, 2581, 2588, 1094, 2596, + 2608, 2266, 2619, 2620, 2719, 2621, 2622, 2623, 2624, 807, + 2639, 2646, 2648, 1095, 2650, 2651, 2369, 2654, 2659, 2687, + 2693, 2725, 2696, 2697, 2698, 2703, 1670, 1331, 2717, 2718, + 2720, 2728, 2738, 2746, 2497, 2749, 2752, 2759, 2761, 2762, + 2763, 1687, 2769, 2772, 2711, 2782, 2783, 2788, 2796, 2805, + 938, 2800, 2807, 2599, 2809, 2810, 2760, 2756, 1148, 0, + 0, 2602, 0, 0, 0, 0, 0, 0, 1751, 1752, + 1753, 0, 2434, 0, 0, 0, 0, 0, 1755, 1756, + 1757, 0, 0, 0, 0, 1768, 1769, 1770, 0, 0, + 1771, 1772, 0, 1774, 1775, 0, 0, 0, 0, 0, + 2637, 0, 1477, 0, 0, 0, 0, 0, 0, 2210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2511, 0, 229, 2421, 0, 0, 0, + 2440, 0, 0, 1847, 1848, 0, 0, 1850, 1851, 0, + 0, 0, 0, 2447, 2448, 2449, 2450, 2451, 2452, 2453, + 2454, 2455, 2456, 2457, 0, 2236, 0, 0, 0, 2461, + 1121, 0, 0, 2616, 1537, 0, 2467, 1127, 0, 2471, + 2764, 2765, 0, 0, 1543, 2478, 0, 0, 2480, 2481, + 2482, 2483, 2484, 2485, 1408, 2487, 2488, 2489, 0, 2640, + 1855, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1408, 2500, 2501, 2502, 2503, 1408, 2505, 2506, 2507, 2508, + 2509, 2510, 0, 2512, 0, 1408, 2516, 2517, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 230, 0, 0, 0, 688, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 231, 0, 0, 1899, - 0, 0, 1901, 708, 232, 0, 779, 0, 0, 0, - 0, 1917, 0, 0, 0, 0, 0, 2427, 0, 1923, - 0, 0, 0, 0, 233, 0, 1925, 0, 0, 0, - 2434, 2435, 2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, - 2444, 0, 0, 0, 0, 0, 2448, 0, 0, 0, - 0, 0, 1341, 2454, 2751, 2752, 2458, 0, 0, 234, - 0, 0, 2465, 896, 0, 2467, 2468, 2469, 2470, 2471, - 2472, 1407, 2474, 2475, 2476, 0, 0, 0, 110, 0, - 0, 0, 0, 0, 1392, 0, 0, 1407, 2487, 2488, - 2489, 2490, 1407, 2492, 2493, 2494, 2495, 2496, 2497, 0, - 2499, 0, 1407, 2503, 2504, 0, 0, 235, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2586, 236, 822, - 2510, 0, 0, 0, 2512, 2589, 0, 0, 2514, 0, - 829, 0, 2517, 0, 0, 0, 0, 0, 0, 837, - 0, 0, 0, 0, 0, 0, 0, 237, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2010, 0, 0, - 113, 0, 0, 0, 2624, 0, 0, 0, 871, 0, - 0, 0, 0, 0, 0, 877, 0, 0, 878, 0, - 0, 0, 2536, 879, 0, 0, 0, 881, 0, 0, + 0, 0, 0, 2523, 0, 0, 0, 2525, 0, 0, + 0, 2527, 0, 0, 0, 2530, 0, 0, 0, 1911, + 0, 0, 1913, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1930, 0, 0, 0, 0, 0, 0, 0, + 1936, 0, 0, 0, 0, 0, 1621, 1938, 0, 0, + 0, 0, 0, 0, 2688, 2689, 0, 0, 2692, 0, + 2694, 0, 0, 1629, 1225, 2549, 0, 0, 0, 0, + 0, 1227, 2699, 2700, 0, 0, 0, 2704, 2705, 0, + 0, 2708, 0, 0, 0, 0, 2709, 2710, 0, 0, + 0, 0, 0, 0, 0, 0, 1653, 0, 0, 0, + 0, 0, 1415, 0, 0, 0, 0, 1660, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1244, 0, 0, + 0, 0, 1248, 0, 0, 1251, 0, 0, 1416, 0, + 0, 0, 2744, 0, 1686, 2745, 0, 1260, 2590, 1694, + 2748, 0, 2592, 0, 0, 0, 2751, 0, 0, 0, + 0, 2754, 2593, 2594, 0, 0, 0, 0, 0, 2598, + 0, 1417, 0, 0, 0, 0, 2601, 1418, 0, 0, + 0, 0, 1419, 0, 1408, 0, 2607, 0, 2023, 2611, + 2612, 0, 1408, 0, 0, 0, 0, 0, 0, 0, + 0, 1420, 0, 0, 0, 1408, 0, 0, 2629, 2630, + 1408, 2632, 2633, 2634, 2635, 2636, 0, 0, 2638, 0, + 1421, 0, 2641, 0, 0, 0, 0, 0, 0, 2794, + 0, 0, 2797, 2649, 0, 0, 1422, 2262, 2653, 0, + 0, 0, 0, 0, 0, 1398, 0, 0, 2263, 0, + 0, 2806, 0, 2065, 2808, 2662, 0, 0, 0, 0, + 0, 0, 0, 2071, 0, 1423, 2813, 2814, 2076, 0, + 0, 0, 0, 1085, 2264, 0, 2101, 0, 0, 0, + 0, 1086, 0, 1854, 0, 0, 0, 1087, 0, 2109, + 2673, 0, 0, 0, 0, 0, 2678, 0, 2680, 2112, + 0, 1424, 0, 0, 2684, 0, 0, 1088, 0, 0, + 0, 2265, 0, 1876, 1425, 0, 0, 1408, 2691, 0, + 0, 2519, 0, 0, 0, 1426, 0, 0, 0, 0, + 1089, 0, 0, 0, 0, 1408, 2702, 2733, 1090, 0, + 2706, 0, 1910, 0, 0, 1912, 0, 0, 0, 0, + 0, 0, 1427, 0, 0, 1929, 1931, 0, 0, 2724, + 0, 0, 0, 1935, 1428, 0, 1429, 1430, 0, 0, + 1937, 2197, 0, 0, 0, 1091, 0, 0, 0, 0, + 0, 0, 0, 1092, 2736, 0, 0, 0, 0, 0, + 2741, 0, 2743, 0, 0, 0, 0, 0, 0, 2747, + 0, 0, 0, 0, 2750, 0, 1431, 0, 0, 2753, + 1977, 0, 0, 1980, 1981, 0, 0, 0, 0, 0, + 0, 0, 0, 1989, 1093, 0, 0, 0, 0, 0, + 0, 0, 0, 2209, 0, 1094, 2213, 0, 0, 1624, + 0, 0, 0, 0, 1359, 0, 0, 0, 0, 1408, + 1095, 0, 1408, 2775, 0, 0, 2776, 0, 1408, 2778, + 2266, 0, 2267, 0, 0, 0, 0, 0, 0, 0, + 2784, 2785, 0, 0, 0, 0, 0, 0, 1648, 0, + 0, 2795, 0, 0, 2798, 0, 0, 0, 0, 0, + 2801, 2802, 0, 1658, 2018, 0, 0, 0, 0, 0, + 0, 2022, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1408, 0, 1408, 0, 0, 2268, 0, 0, 2038, + 0, 0, 0, 0, 2625, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2047, 0, 0, 0, 0, + 0, 0, 0, 0, 2643, 0, 0, 0, 2647, 0, + 0, 0, 0, 0, 2054, 0, 0, 0, 0, 2059, + 0, 0, 2061, 0, 2062, 2063, 2064, 2066, 0, 0, + 2068, 0, 0, 2069, 0, 0, 2070, 2072, 0, 2073, + 2074, 2075, 2077, 0, 2078, 2079, 0, 0, 0, 0, + 2081, 2082, 2083, 0, 2084, 2085, 0, 0, 0, 0, + 2086, 2087, 0, 0, 0, 2088, 0, 0, 0, 0, + 2093, 0, 0, 2331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, - 0, 875, 876, 115, 0, 0, 0, 0, 0, 0, - 0, 2052, 0, 0, 880, 0, 0, 0, 0, 883, - 2058, 0, 0, 0, 2063, 0, 0, 1758, 895, 897, - 0, 0, 0, 0, 0, 0, 0, 938, 0, 1768, - 0, 2197, 0, 0, 0, 2577, 0, 0, 0, 2579, - 0, 0, 0, 0, 0, 0, 0, 1829, 1830, 2580, - 2581, 0, 0, 0, 0, 121, 2585, 0, 0, 0, - 0, 0, 0, 2588, 0, 0, 2223, 0, 0, 0, - 0, 1407, 0, 2594, 0, 0, 2598, 2599, 0, 1407, - 0, 0, 940, 941, 942, 0, 0, 0, 0, 0, - 0, 0, 1407, 0, 0, 2616, 2617, 1407, 2619, 2620, - 2621, 2622, 2623, 0, 0, 2625, 0, 0, 0, 2628, + 0, 0, 2371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2636, 0, 0, 0, 0, 2640, 0, 1121, 0, 0, - 0, 0, 0, 0, 1127, 0, 0, 0, 0, 0, - 0, 1083, 2649, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 0, 0, 0, 0, 0, 2196, 2660, 0, 2200, - 0, 0, 0, 2665, 0, 2667, 0, 0, 0, 0, - 0, 2671, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1407, 2678, 0, 0, 2603, 0, - 0, 0, 0, 0, 1742, 1743, 1744, 0, 0, 0, - 0, 2720, 1407, 2689, 1746, 1747, 1748, 2693, 0, 0, - 0, 1759, 1760, 1761, 2627, 0, 1762, 1763, 0, 1765, - 1766, 0, 0, 0, 0, 0, 2711, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 109, 0, 2367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1225, 0, 0, 0, 0, 0, 0, 1227, 1838, - 1839, 2723, 109, 1841, 1842, 0, 0, 2728, 0, 2730, - 0, 0, 0, 0, 0, 0, 2734, 110, 0, 0, - 0, 2737, 0, 0, 0, 0, 2740, 0, 0, 0, - 1226, 0, 0, 0, 0, 0, 0, 0, 111, 0, - 0, 0, 1231, 0, 1244, 0, 0, 0, 0, 1248, - 0, 0, 1251, 0, 112, 0, 0, 0, 0, 2675, - 2676, 0, 0, 2679, 1260, 2681, 1407, 0, 0, 1407, - 2762, 0, 0, 2763, 0, 1407, 2765, 2686, 2687, 1241, - 1242, 0, 2691, 2692, 2318, 0, 2695, 2771, 2772, 0, - 0, 2696, 2697, 0, 0, 0, 0, 0, 2782, 113, - 0, 2785, 0, 1261, 0, 0, 0, 2788, 2789, 0, - 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1407, 2354, - 1407, 0, 0, 0, 0, 0, 0, 2731, 0, 0, - 2732, 0, 0, 0, 0, 2735, 0, 0, 0, 0, - 1330, 2738, 115, 0, 0, 0, 2741, 0, 0, 0, - 2097, 0, 1397, 0, 0, 0, 0, 0, 2103, 2104, + 0, 110, 2403, 2404, 2405, 2406, 2407, 0, 2409, 2410, + 0, 0, 0, 2414, 2415, 2416, 2417, 2418, 0, 2420, + 2421, 0, 111, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 112, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, + 68, 0, 0, 0, 0, 0, 0, 0, 0, 1926, + 2200, 0, 0, 0, 2203, 110, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2208, 0, 0, 2212, + 0, 0, 0, 113, 0, 285, 0, 0, 0, 0, + 0, 0, 0, 2438, 0, 0, 0, 0, 0, 0, + 114, 0, 112, 0, 0, 0, 0, 0, 0, 2232, + 0, 0, 0, 0, 0, 2781, 0, 0, 0, 1978, + 0, 0, 2459, 0, 0, 1984, 0, 0, 0, 0, + 0, 0, 2469, 0, 0, 0, 0, 115, 2476, 0, + 0, 0, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2506, 0, 2140, 2141, 0, 0, 0, 0, 116, - 0, 0, 0, 0, 2151, 2152, 0, 117, 0, 0, - 0, 0, 0, 118, 119, 2162, 2163, 0, 0, 120, - 0, 0, 0, 0, 121, 2172, 2173, 0, 0, 0, - 0, 2178, 0, 0, 2781, 1472, 0, 2784, 0, 0, - 0, 2181, 0, 0, 2425, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2793, 0, 0, 2795, + 0, 1767, 0, 0, 0, 0, 0, 0, 0, 0, + 2286, 0, 0, 1777, 116, 0, 0, 0, 0, 0, + 0, 0, 117, 0, 0, 0, 0, 0, 118, 119, + 0, 1838, 1839, 0, 120, 0, 0, 0, 0, 121, + 0, 115, 0, 0, 0, 2020, 0, 0, 0, 0, + 0, 2025, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2550, 0, 0, 2552, 2553, 2554, + 2555, 2556, 0, 2558, 2559, 2040, 0, 0, 286, 0, + 0, 0, 2046, 2323, 0, 2563, 2564, 2565, 2566, 2567, + 0, 2569, 2570, 0, 2572, 0, 0, 0, 120, 0, + 0, 0, 0, 121, 2575, 2576, 0, 0, 2060, 0, + 0, 122, 0, 287, 0, 2579, 2067, 0, 0, 0, + 0, 0, 0, 0, 2353, 0, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 0, 0, 0, 0, 0, + 152, 0, 0, 0, 153, 154, 0, 2586, 0, 0, + 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2800, 2801, 2446, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2456, 646, 647, 0, 1532, 0, 2463, - 0, 0, 0, 0, 0, 0, 122, 1538, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 648, 0, 0, 0, 0, 152, 649, 0, 0, 153, - 154, 0, 0, 650, 0, 651, 0, 0, 0, 0, - 652, 0, 0, 653, 2088, 0, 1619, 0, 0, 654, - 0, 0, 0, 0, 0, 0, 0, 2096, 0, 655, - 0, 0, 0, 0, 0, 656, 0, 2099, 0, 0, - 0, 0, 0, 657, 2612, 0, 2249, 0, 0, 1616, - 0, 0, 0, 0, 0, 1643, 0, 2250, 658, 0, - 0, 0, 0, 0, 2630, 0, 1624, 0, 2634, 527, - 1653, 0, 0, 0, 0, 0, 0, 659, 0, 0, - 0, 0, 1085, 2251, 110, 0, 0, 0, 0, 0, - 1086, 0, 0, 660, 0, 0, 1087, 0, 0, 1648, - 0, 0, 661, 662, 0, 0, 0, 0, 0, 2184, - 1655, 0, 0, 0, 0, 1088, 0, 0, 0, 2252, - 0, 112, 663, 0, 0, 0, 0, 0, 2573, 0, - 0, 0, 0, 0, 0, 0, 0, 1681, 1089, 0, - 0, 0, 1688, 664, 0, 0, 1090, 0, 0, 0, - 0, 0, 0, 0, 2359, 0, 665, 0, 666, 0, - 0, 0, 0, 0, 2361, 0, 113, 0, 2365, 2366, - 0, 667, 0, 0, 0, 0, 668, 2374, 2375, 0, - 0, 0, 669, 1091, 0, 0, 2383, 2384, 0, 670, - 0, 1092, 2389, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2399, 2400, 0, 0, 0, 671, 0, 0, - 0, 0, 0, 2410, 2411, 0, 0, 0, 0, 115, - 672, 673, 0, 674, 2414, 0, 0, 0, 0, 0, - 0, 0, 1093, 2416, 0, 2417, 0, 0, 0, 0, - 0, 0, 0, 1094, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1095, 0, - 0, 0, 0, 675, 0, 0, 0, 0, 2253, 0, - 2254, 0, 0, 0, 0, 1845, 120, 0, 0, 0, - 2663, 121, 0, 0, 0, 0, 0, 0, 2669, 0, + 0, 0, 0, 0, 0, 0, 2437, 0, 0, 2441, + 0, 0, 2664, 0, 0, 0, 0, 0, 0, 2445, + 0, 0, 0, 2667, 0, 2668, 0, 0, 0, 2670, + 0, 0, 0, 0, 0, 2458, 2199, 0, 2462, 0, + 0, 0, 0, 0, 0, 2468, 0, 0, 0, 0, + 2474, 2475, 0, 0, 0, 0, 0, 0, 2214, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1913, 0, 1865, 0, 2768, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2676, + 0, 0, 0, 0, 0, 0, 0, 2682, 0, 0, + 0, 0, 2237, 0, 2239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2255, 0, 0, 0, 0, 0, - 0, 1898, 0, 0, 1900, 0, 0, 0, 0, 0, - 0, 0, 0, 1916, 1918, 0, 0, 0, 0, 0, - 0, 1922, 0, 0, 0, 0, 0, 0, 1924, 0, - 0, 1965, 0, 0, 0, 0, 2358, 1971, 0, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 0, 1964, 0, - 0, 1967, 1968, 0, 0, 0, 2390, 2391, 2392, 2393, - 2394, 1976, 2396, 2397, 0, 0, 2538, 2401, 2402, 2403, - 2404, 2405, 0, 2407, 2408, 0, 2547, 0, 0, 0, - 2758, 0, 0, 0, 0, 2549, 0, 0, 0, 0, - 0, 0, 0, 0, 2558, 0, 0, 2007, 0, 0, - 0, 2560, 0, 2012, 0, 0, 0, 0, 0, 0, - 0, 2777, 2564, 0, 2780, 0, 0, 0, 2567, 0, - 0, 2569, 0, 0, 2570, 0, 0, 2027, 0, 0, - 0, 0, 2005, 0, 2033, 0, 0, 0, 0, 2009, + 0, 2244, 0, 2246, 0, 2729, 0, 2248, 2730, 2250, + 0, 2731, 0, 2732, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2537, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2025, 0, 0, - 2047, 0, 0, 0, 0, 0, 0, 2054, 0, 0, - 0, 0, 0, 2034, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2294, + 0, 0, 2298, 2299, 0, 0, 0, 2546, 0, 0, + 0, 2303, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2110, 0, 0, 0, 0, 0, 0, 0, + 2116, 2117, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2310, 2153, 2154, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2164, 2165, 646, 647, + 2322, 0, 0, 0, 0, 0, 0, 2175, 2176, 2771, + 0, 0, 0, 0, 0, 0, 0, 2185, 2186, 0, + 2585, 2336, 0, 2191, 0, 0, 2340, 0, 0, 0, + 0, 0, 2345, 2194, 0, 0, 0, 2349, 0, 0, + 2790, 2352, 0, 2793, 2355, 0, 0, 2358, 0, 2360, + 0, 0, 0, 0, 648, 2365, 0, 0, 0, 0, + 649, 2605, 0, 0, 0, 0, 0, 650, 0, 651, + 0, 0, 0, 2617, 652, 0, 0, 653, 0, 0, + 0, 0, 0, 654, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 655, 0, 0, 0, 0, 0, 656, + 0, 0, 0, 0, 0, 0, 0, 657, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2041, 0, 0, 0, 0, 2046, 0, 0, - 2048, 2049, 2050, 2051, 2053, 0, 2055, 0, 0, 2056, - 0, 0, 2057, 2059, 2060, 2061, 2062, 2064, 0, 2065, - 2066, 0, 0, 0, 2068, 2069, 2070, 0, 2071, 2072, - 0, 0, 0, 0, 2073, 2074, 0, 0, 0, 2075, - 0, 0, 0, 0, 2080, 0, 0, 0, 0, 0, - 2650, 0, 0, 0, 2652, 0, 0, 0, 0, 0, - 0, 2653, 0, 0, 0, 0, 0, 2656, 0, 0, - 0, 2658, 0, 0, 2659, 0, 0, 0, 2537, 0, - 0, 2539, 2540, 2541, 2542, 2543, 0, 2545, 2546, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2550, - 2551, 2552, 2553, 2554, 0, 2556, 2557, 0, 2559, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2562, 2563, - 2314, 0, 0, 0, 2186, 0, 0, 67, 68, 2566, - 0, 0, 0, 0, 2324, 2325, 2326, 0, 0, 2328, - 0, 2330, 2331, 110, 2201, 2333, 2334, 2335, 0, 0, - 2337, 2338, 0, 0, 2341, 0, 2343, 2344, 0, 2346, - 67, 68, 0, 0, 2187, 0, 0, 2190, 0, 0, - 0, 0, 0, 0, 0, 0, 110, 2224, 2195, 2226, - 112, 2199, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2231, 0, 2233, 0, 0, - 0, 2235, 0, 2237, 0, 0, 0, 0, 0, 0, - 2219, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, + 0, 0, 2658, 658, 0, 0, 0, 0, 0, 0, + 0, 2661, 0, 0, 0, 0, 0, 67, 68, 0, + 0, 0, 659, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 110, 0, 0, 0, 0, 660, 0, + 0, 0, 0, 0, 0, 0, 0, 661, 662, 0, + 0, 0, 2675, 2677, 0, 2679, 0, 67, 68, 0, + 2681, 2683, 0, 0, 0, 2685, 0, 663, 0, 0, + 112, 0, 0, 110, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 527, 664, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2707, + 0, 665, 110, 666, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 113, 667, 0, 2726, 0, + 0, 668, 0, 2727, 0, 0, 0, 669, 2511, 0, + 0, 0, 0, 0, 670, 0, 0, 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2281, 0, 0, 2285, 2286, 0, 0, - 0, 0, 0, 0, 0, 2290, 0, 0, 113, 0, - 0, 0, 0, 0, 0, 0, 2651, 0, 0, 0, - 2273, 0, 0, 2422, 0, 0, 2426, 2654, 115, 2655, - 0, 2430, 0, 2657, 0, 2431, 0, 0, 2297, 0, + 0, 0, 671, 0, 0, 113, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 672, 673, 0, 674, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2309, 2447, 0, 0, 0, 0, - 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 604, 110, 0, 2323, 0, 0, 0, 0, - 2327, 0, 0, 0, 0, 120, 2332, 0, 0, 0, - 121, 2336, 0, 2310, 0, 2339, 0, 0, 2342, 0, - 0, 2345, 0, 2347, 0, 0, 0, 0, 0, 2352, - 0, 0, 605, 0, 0, 0, 0, 0, 0, 2716, - 0, 0, 2717, 121, 0, 2718, 0, 2719, 0, 0, - 0, 0, 0, 0, 2340, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2520, 0, 0, 0, - 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 606, 0, - 0, 0, 0, 0, 0, 0, 2527, 0, 124, 125, + 2372, 0, 0, 0, 113, 0, 0, 0, 0, 0, + 2374, 0, 0, 0, 2378, 2379, 0, 0, 0, 0, + 0, 0, 2770, 2387, 2388, 896, 0, 0, 675, 115, + 0, 0, 2396, 2397, 0, 0, 0, 0, 2402, 2779, + 110, 0, 0, 0, 0, 0, 120, 0, 2412, 2413, + 0, 121, 0, 2789, 0, 0, 2792, 0, 115, 2423, + 2424, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2427, 0, 0, 0, 0, 0, 0, 0, 0, 2429, + 0, 2430, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 121, 0, 0, 0, 0, 2584, 0, 0, 0, + 0, 0, 0, 2589, 0, 0, 0, 2591, 0, 0, + 0, 0, 0, 0, 0, 120, 0, 0, 0, 0, + 121, 0, 113, 0, 2597, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 115, 0, 0, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 0, 0, 115, 0, + 146, 147, 148, 149, 150, 151, 0, 0, 121, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2551, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2560, 0, 0, 0, 0, 0, 0, 2695, + 0, 2562, 0, 0, 0, 0, 0, 0, 0, 0, + 2571, 0, 0, 0, 0, 0, 0, 2573, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2577, 0, + 0, 0, 0, 0, 2580, 0, 0, 2582, 0, 0, + 2583, 0, 0, 0, 0, 0, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2755, + 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, + 4, 0, 0, 0, 0, 0, 0, 343, 2766, 2767, + 0, 0, 0, 5, 344, 0, 0, 0, 6, 7, + 0, 8, 9, 10, 0, 0, 0, 0, 0, 0, + 0, 11, 0, 0, 0, 0, 0, 0, 12, 0, + 13, 14, 0, 0, 0, 0, 0, 0, 110, 15, + 16, 0, 2791, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2663, 0, 0, 0, + 2665, 2803, 0, 0, 2804, 0, 0, 2666, 17, 110, + 0, 0, 0, 2669, 0, 112, 0, 2671, 0, 18, + 2672, 0, 0, 19, 0, 0, 20, 0, 0, 0, + 0, 21, 22, 0, 0, 0, 0, 0, 23, 0, + 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 500, 501, 0, 25, 502, + 113, 26, 27, 28, 604, 110, 29, 30, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, + 0, 503, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 113, 0, 0, 32, 33, 34, 0, 0, 0, + 0, 0, 0, 0, 605, 0, 0, 0, 35, 0, + 0, 0, 0, 0, 115, 0, 36, 0, 0, 37, + 0, 0, 38, 0, 39, 0, 40, 0, 0, 0, + 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 42, 115, 0, 113, 0, 43, + 0, 0, 0, 0, 0, 0, 0, 345, 504, 346, + 606, 0, 0, 0, 0, 44, 45, 0, 0, 0, + 0, 120, 0, 0, 0, 505, 121, 46, 0, 47, + 0, 0, 0, 0, 0, 48, 0, 0, 49, 50, + 0, 0, 0, 0, 506, 0, 0, 0, 0, 0, + 0, 115, 0, 0, 0, 0, 0, 121, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, + 0, 0, 0, 0, 0, 52, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 0, 507, 0, 0, 0, 0, + 0, 0, 0, 121, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 0, 0, 0, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 0, 508, 0, 0, 0, 607, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 994, + 995, 996, 0, 0, 0, 0, 0, 0, 0, 0, + 1269, 1270, 1271, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 997, 998, 0, + 0, 999, 0, 0, 1000, 0, 0, 0, 1272, 1273, + 0, 1001, 1274, 110, 0, 1002, 0, 0, 0, 1275, + 0, 0, 1276, 1003, 1004, 0, 1277, 0, 0, 0, + 0, 1005, 1006, 0, 1278, 1279, 0, 0, 0, 0, + 0, 0, 1280, 0, 0, 0, 0, 0, 1007, 0, + 112, 0, 0, 0, 1008, 0, 0, 1009, 1010, 0, + 0, 1011, 0, 0, 110, 0, 0, 0, 1281, 1282, + 0, 0, 1283, 0, 0, 0, 0, 0, 1012, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1284, + 0, 0, 110, 0, 0, 113, 0, 1013, 0, 0, + 0, 0, 0, 0, 514, 0, 0, 0, 1285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1501, 0, 0, 2424, 0, 1502, 2428, - 2574, 0, 0, 0, 0, 0, 0, 0, 0, 2432, - 121, 0, 0, 0, 0, 0, 0, 0, 0, 1503, - 1504, 2582, 1505, 1506, 0, 2445, 0, 0, 2449, 0, - 0, 2587, 0, 1507, 0, 2455, 0, 2590, 2591, 0, - 2461, 2462, 2498, 0, 0, 1508, 1509, 0, 0, 0, - 0, 0, 0, 1510, 0, 0, 1511, 0, 0, 0, + 1014, 0, 0, 0, 0, 0, 0, 0, 0, 1330, + 110, 1286, 0, 0, 0, 0, 0, 0, 0, 0, + 1287, 0, 1015, 0, 0, 0, 113, 0, 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1512, 0, 607, 0, 0, 0, 1513, - 1514, 0, 0, 1515, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1516, 0, 0, 0, 0, 0, 0, 2661, 0, - 0, 0, 0, 0, 0, 0, 0, 2533, 0, 0, - 1, 0, 0, 0, 0, 0, 0, 0, 2673, 0, + 1016, 0, 1017, 0, 113, 0, 0, 1018, 1019, 0, + 0, 1288, 0, 1289, 0, 0, 0, 0, 1290, 1291, + 0, 1020, 1021, 0, 0, 0, 0, 0, 0, 0, + 115, 1022, 1023, 1292, 0, 0, 120, 0, 0, 0, + 0, 121, 113, 1293, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1024, 115, 1025, + 0, 0, 0, 0, 0, 0, 0, 0, 1294, 0, + 1295, 1026, 0, 1027, 0, 0, 0, 0, 0, 1028, + 1296, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1297, 0, 121, 0, 0, 0, 115, 518, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 0, 0, 3, 0, 4, 0, 0, 0, - 2571, 0, 0, 1517, 0, 0, 0, 2576, 1518, 5, - 0, 2578, 0, 0, 6, 7, 0, 8, 9, 10, - 110, 0, 0, 1519, 0, 0, 0, 11, 2584, 0, - 0, 0, 1520, 0, 12, 0, 13, 14, 0, 0, - 2572, 0, 0, 0, 0, 15, 16, 0, 2721, 0, - 2722, 0, 2724, 0, 2726, 0, 2727, 0, 2729, 1521, - 1522, 0, 0, 0, 0, 0, 500, 501, 0, 0, - 502, 0, 0, 17, 0, 0, 0, 0, 0, 0, - 1523, 2592, 0, 0, 18, 0, 0, 0, 19, 0, - 0, 20, 503, 2604, 0, 0, 21, 22, 0, 0, - 0, 0, 113, 23, 0, 0, 2755, 0, 0, 0, - 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 25, 1524, 0, 26, 27, 28, 0, - 0, 29, 30, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2645, 0, 31, 0, 0, 0, 0, 0, - 0, 2648, 2786, 0, 0, 115, 0, 0, 0, 32, - 33, 34, 0, 0, 0, 0, 0, 0, 504, 0, - 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, - 0, 36, 0, 2682, 37, 505, 0, 38, 0, 39, - 0, 40, 2662, 2664, 0, 2666, 41, 0, 0, 0, - 2668, 2670, 0, 0, 506, 2672, 0, 0, 0, 42, - 0, 0, 0, 0, 43, 0, 0, 121, 0, 0, + 0, 0, 0, 1029, 0, 0, 0, 0, 0, 0, + 121, 0, 0, 0, 1298, 0, 0, 0, 0, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 515, 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 44, 45, 0, 0, 0, 0, 0, 0, 0, 2694, - 0, 0, 46, 0, 47, 0, 0, 0, 0, 0, - 48, 0, 0, 49, 50, 0, 0, 0, 2713, 0, - 0, 0, 0, 2714, 0, 507, 0, 0, 0, 0, - 0, 0, 0, 2742, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, - 52, 0, 2753, 2754, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 0, 508, 0, 2778, 994, 995, 996, - 0, 0, 2757, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2790, 0, 0, 2791, 2766, - 0, 0, 0, 0, 0, 997, 998, 0, 0, 999, - 0, 0, 1000, 2776, 0, 0, 2779, 0, 0, 1001, - 0, 0, 0, 1002, 0, 0, 0, 0, 0, 0, - 0, 1003, 1004, 0, 0, 0, 0, 0, 0, 1005, - 1006, 110, 0, 0, 1269, 1270, 1271, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1007, 0, 0, 0, - 0, 0, 1008, 0, 0, 1009, 1010, 0, 0, 1011, - 0, 0, 1272, 1273, 0, 110, 1274, 0, 112, 0, - 0, 0, 0, 1275, 0, 1012, 1276, 0, 0, 0, - 1277, 0, 0, 0, 0, 0, 0, 0, 1278, 1279, - 0, 0, 0, 0, 1013, 110, 1280, 0, 0, 0, - 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 113, 0, 0, 0, 1014, 0, 0, - 0, 0, 1281, 1282, 0, 0, 1283, 0, 0, 0, - 0, 0, 1329, 0, 0, 0, 0, 0, 0, 1015, - 0, 0, 1284, 0, 0, 0, 0, 113, 0, 0, - 0, 110, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1285, 0, 0, 0, 0, 115, 1016, 0, 1017, - 0, 0, 0, 0, 1018, 1019, 0, 113, 0, 0, - 0, 0, 0, 0, 1286, 0, 0, 0, 1020, 1021, - 0, 514, 0, 1287, 0, 0, 0, 0, 1022, 1023, - 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 110, 0, 0, 0, 0, 0, - 0, 0, 0, 120, 1024, 0, 1025, 0, 121, 0, - 115, 0, 0, 113, 1288, 0, 0, 0, 1026, 0, - 1027, 1289, 1290, 0, 0, 0, 1028, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1291, 120, 0, 0, - 0, 0, 121, 0, 0, 0, 1292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1029, 0, 0, 0, 518, 0, 115, 0, 0, 0, - 0, 1293, 121, 1294, 0, 0, 113, 0, 0, 0, - 0, 0, 0, 1295, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1296, 0, 0, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 0, 0, 0, 1297, 121, 115, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 0, 0, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 0, 0, - 0, 121, 0, 515, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 144, 145, 146, 147, 148, 149, 150, 151, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 0, 0, 0, 0, 0, 0, 0, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 179, 0, 0, - 180, 0, 181, 0, 0, 0, 0, 0, 0, 0, + 148, 149, 150, 151, 179, 0, 0, 180, 0, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 182, 0, 183, 184, 185, 0, 0, 0, 0, - 0, 0, 0, 186, 0, 187, 0, 0, 0, 0, - 188, 0, 189, 190, 191, 0, 0, 0, 0, 192, - 0, 193, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 182, 0, + 183, 184, 185, 0, 0, 0, 0, 0, 0, 0, + 186, 0, 187, 0, 0, 0, 0, 188, 0, 189, + 190, 191, 0, 0, 0, 0, 192, 0, 193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 196, 197, 0, 0, 198, - 0, 972, 0, 199, 0, 0, 200, 973, 0, 0, + 0, 0, 0, 0, 0, 0, 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 201, 202, 0, - 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, - 204, 0, 0, 1366, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 205, 206, 0, 0, 0, - 0, 0, 0, 207, 0, 0, 0, 0, 0, 0, + 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 196, 197, 0, 0, 198, 0, 972, + 0, 199, 0, 0, 200, 973, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 208, 0, 209, 0, 0, + 0, 0, 0, 0, 0, 201, 202, 0, 0, 203, + 0, 0, 0, 0, 0, 0, 0, 0, 204, 0, + 0, 1367, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 205, 206, 0, 0, 0, 0, 0, + 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 208, 0, 209, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 211, 212, 0, 0, - 0, 0, 0, 0, 0, 213, 0, 0, 0, 0, - 0, 0, 214, 0, 0, 0, 0, 0, 215, 0, - 216, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, - 0, 0, 0, 0, 0, 0, 217, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 1367 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 211, 212, 0, 0, 0, 0, + 0, 0, 0, 213, 0, 0, 0, 0, 0, 0, + 214, 0, 0, 0, 0, 0, 215, 0, 216, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 0, 0, + 0, 0, 0, 0, 217, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 1368, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151 }; static const yytype_int16 yycheck[] = { - 4, 50, 1450, 1650, 491, 1652, 5, 4, 12, 661, - 662, 666, 4, 5, 3, 4, 5, 0, 5, 5, - 5, 14, 1141, 61, 1143, 4, 4, 966, 5, 33, - 969, 3, 4, 50, 4, 5, 40, 5, 3, 4, - 3, 4, 3, 4, 32, 49, 27, 986, 52, 5, - 1169, 1170, 1171, 5, 58, 4, 3, 4, 62, 66, - 4, 65, 3, 4, 36, 69, 70, 48, 61, 73, - 51, 36, 76, 77, 995, 40, 80, 17, 3, 4, - 84, 62, 99, 3, 4, 89, 3, 4, 4, 36, - 27, 3, 4, 3, 4, 97, 66, 103, 102, 21, - 104, 105, 106, 107, 85, 3, 4, 3, 4, 17, - 61, 12, 17, 61, 99, 147, 133, 66, 88, 123, - 105, 102, 190, 22, 4, 17, 118, 27, 6, 93, - 116, 3, 4, 87, 130, 190, 166, 877, 878, 879, - 4, 131, 40, 46, 277, 110, 110, 2700, 118, 48, - 49, 87, 53, 32, 158, 5, 154, 129, 3, 4, - 163, 59, 21, 62, 129, 6, 136, 164, 119, 118, - 71, 119, 208, 180, 255, 243, 3, 4, 182, 185, - 261, 31, 129, 187, 182, 4, 66, 33, 20, 2533, - 220, 2744, 20, 98, 187, 250, 167, 66, 938, 100, - 154, 61, 66, 189, 175, 27, 154, 199, 21, 108, - 109, 56, 110, 205, 206, 21, 117, 4, 154, 120, - 252, 185, 3, 4, 185, 57, 191, 141, 191, 199, - 131, 16, 61, 21, 225, 205, 206, 275, 118, 21, - 4, 119, 246, 233, 240, 275, 295, 88, 156, 121, - 199, 78, 254, 239, 118, 258, 205, 206, 262, 263, - 298, 297, 917, 256, 241, 165, 222, 207, 27, 5, - 287, 239, 265, 277, 190, 185, 262, 284, 119, 443, - 190, 285, 286, 220, 288, 289, 274, 291, 239, 185, - 119, 278, 456, 191, 277, 239, 288, 301, 297, 118, - 279, 279, 294, 220, 297, 309, 310, 304, 297, 294, - 262, 233, 304, 285, 265, 207, 226, 265, 288, 199, - 285, 220, 285, 222, 294, 205, 206, 243, 332, 333, - 334, 118, 336, 233, 295, 199, 340, 341, 285, 288, - 250, 205, 206, 170, 285, 337, 286, 351, 352, 341, - 342, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 285, 264, 343, 367, 1019, 285, 211, 337, 372, 373, - 340, 341, 342, 285, 233, 275, 380, 338, 339, 383, - 199, 63, 1037, 281, 285, 295, 205, 206, 337, 221, - 4, 5, 341, 342, 286, 274, 400, 401, 220, 295, - 299, 229, 234, 407, 408, 409, 165, 411, 288, 2753, - 2754, 16, 199, 4, 61, 275, 243, 1069, 205, 206, - 233, 425, 104, 63, 288, 429, 190, 233, 338, 339, - 434, 435, 436, 437, 438, 439, 265, 441, 298, 220, - 444, 445, 338, 339, 1383, 233, 60, 1386, 1100, 40, - 40, 233, 66, 457, 30, 37, 66, 337, 1577, 78, - 279, 341, 342, 295, 104, 47, 61, 166, 4, 288, - 34, 88, 119, 337, 233, 40, 5, 341, 342, 64, - 30, 66, 122, 4, 83, 88, 5, 56, 3, 4, - 135, 1412, 74, 63, 30, 14, 15, 5, 37, 113, - 99, 288, 61, 220, 1244, 105, 61, 511, 512, 17, - 61, 1251, 115, 13, 128, 40, 275, 1438, 337, 110, - 110, 220, 341, 342, 119, 529, 140, 56, 692, 174, - 4, 237, 146, 147, 104, 56, 65, 586, 152, 1460, - 3, 4, 61, 107, 94, 110, 225, 4, 230, 255, - 337, 170, 556, 0, 341, 342, 14, 15, 275, 4, - 119, 37, 244, 245, 119, 147, 5, 12, 119, 61, - 252, 47, 3, 4, 15, 14, 15, 626, 66, 583, - 183, 22, 5, 159, 283, 110, 27, 261, 193, 203, - 230, 61, 192, 34, 197, 180, 645, 27, 74, 56, - 191, 191, 184, 61, 244, 245, 3, 4, 222, 3, - 4, 161, 226, 617, 228, 42, 43, 5, 265, 54, - 5, 4, 61, 159, 243, 4, 191, 119, 255, 14, - 15, 27, 208, 74, 261, 1290, 200, 251, 252, 643, - 128, 241, 211, 40, 226, 259, 1301, 61, 239, 119, - 253, 61, 5, 335, 336, 90, 660, 233, 121, 663, - 230, 2308, 201, 277, 152, 247, 191, 257, 187, 188, - 265, 147, 208, 837, 244, 245, 61, 681, 682, 683, - 684, 135, 211, 687, 5, 689, 186, 691, 203, 693, - 211, 294, 257, 243, 5, 335, 336, 233, 248, 284, - 282, 304, 137, 14, 15, 119, 265, 31, 184, 119, - 265, 5, 82, 110, 265, 5, 298, 881, 191, 333, - 174, 770, 163, 164, 165, 166, 167, 168, 169, 187, - 188, 172, 173, 174, 175, 4, 166, 256, 33, 122, - 228, 168, 169, 5, 4, 5, 265, 266, 187, 188, - 61, 270, 14, 15, 211, 759, 760, 761, 762, 763, - 116, 765, 766, 767, 768, 335, 336, 26, 195, 66, - 166, 247, 203, 265, 82, 117, 780, 781, 297, 149, - 784, 785, 786, 787, 788, 789, 790, 791, 792, 277, - 220, 277, 796, 797, 191, 265, 14, 15, 256, 61, - 14, 15, 187, 188, 239, 167, 105, 265, 266, 3, - 4, 815, 816, 817, 40, 1754, 33, 256, 201, 260, - 261, 116, 298, 220, 220, 40, 265, 266, 832, 833, - 834, 270, 836, 5, 838, 1774, 840, 70, 83, 297, - 66, 149, 26, 61, 3, 4, 287, 61, 218, 219, - 1789, 265, 111, 1792, 99, 265, 200, 861, 297, 863, - 89, 1800, 232, 122, 1803, 1984, 1985, 1986, 24, 25, - 874, 256, 1811, 99, 147, 1814, 187, 188, 882, 105, - 265, 266, 1821, 887, 110, 270, 327, 328, 329, 16, - 3, 4, 187, 192, 189, 110, 191, 192, 902, 903, - 66, 271, 128, 226, 199, 276, 910, 89, 912, 913, - 218, 219, 297, 1653, 72, 919, 31, 185, 5, 214, - 924, 147, 190, 972, 232, 187, 188, 111, 173, 933, - 3, 4, 1853, 4, 167, 44, 4, 163, 122, 4, - 213, 97, 241, 202, 948, 256, 59, 1868, 14, 15, - 5, 45, 5, 82, 265, 266, 215, 1121, 226, 270, - 3, 4, 121, 271, 5, 59, 192, 40, 213, 187, - 188, 5, 156, 187, 188, 1896, 191, 5, 87, 252, - 0, 29, 250, 3, 4, 4, 297, 81, 3, 4, - 4, 995, 336, 288, 256, 61, 44, 341, 46, 343, - 4, 246, 228, 265, 266, 238, 100, 5, 270, 14, - 15, 1015, 14, 15, 247, 241, 59, 290, 202, 4, - 149, 5, 116, 4, 5, 119, 252, 295, 76, 2477, - 4, 215, 1036, 3, 4, 297, 84, 110, 256, 14, - 15, 1045, 256, 97, 59, 3, 4, 265, 266, 143, - 144, 265, 266, 279, 5, 1059, 61, 1061, 119, 61, - 262, 19, 1066, 1067, 1068, 291, 4, 293, 294, 4, - 40, 339, 1076, 3, 4, 1079, 4, 1081, 4, 297, - 189, 39, 4, 297, 1248, 5, 61, 17, 4, 218, - 219, 139, 4, 1097, 4, 1099, 3, 4, 56, 1103, - 1104, 4, 196, 232, 3, 4, 5, 333, 4, 2598, - 204, 3, 4, 1117, 1118, 5, 66, 5, 1122, 1123, - 12, 187, 188, 9, 1128, 5, 1130, 2616, 11, 1133, - 80, 1135, 167, 40, 4, 3, 4, 1186, 261, 89, - 110, 189, 271, 101, 12, 3, 4, 442, 4, 99, - 175, 9, 10, 11, 167, 3, 4, 205, 206, 7, - 8, 3, 4, 5, 212, 4, 214, 261, 262, 193, - 611, 1175, 1176, 1177, 1178, 2114, 1180, 1181, 128, 5, - 1184, 193, 187, 188, 2123, 187, 188, 22, 28, 5, - 256, 239, 22, 2132, 4, 1199, 154, 147, 193, 265, - 266, 4, 5, 110, 3, 4, 1210, 66, 1212, 1213, - 1214, 1215, 187, 188, 49, 1219, 1220, 52, 5, 49, - 55, 191, 52, 1227, 665, 1965, 3, 4, 5, 670, - 1234, 297, 66, 191, 1238, 1239, 1240, 4, 5, 333, - 535, 66, 192, 220, 2733, 1249, 5, 82, 1252, 221, - 2739, 256, 82, 211, 256, 4, 304, 4, 216, 1263, - 265, 266, 1266, 265, 266, 87, 2469, 4, 226, 2472, - 193, 2474, 567, 6, 109, 4, 5, 112, 228, 109, - 5, 256, 112, 87, 2487, 2488, 431, 432, 5, 28, - 265, 266, 297, 2033, 4, 297, 4, 99, 5, 17, - 5, 2504, 252, 2792, 1308, 2794, 4, 1311, 148, 1473, - 1314, 1315, 5, 1317, 2054, 1319, 4, 17, 5, 4, - 17, 1325, 297, 1327, 2245, 4, 4, 285, 97, 5, - 1334, 171, 3, 4, 5, 175, 7, 8, 5, 87, - 2261, 291, 4, 293, 5, 2266, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 5, 1539, 87, 5, 819, 53, - 4, 164, 5, 5, 224, 91, 4, 222, 5, 5, - 5, 4, 222, 99, 4, 20, 5, 71, 12, 105, - 12, 4, 4, 4, 4, 1409, 1410, 1411, 1412, 148, - 4, 263, 5, 5, 88, 5, 251, 4, 124, 4, - 260, 251, 5, 4, 251, 279, 100, 1431, 268, 269, - 251, 1435, 171, 5, 1438, 4, 175, 5, 5, 5, - 5, 147, 277, 117, 4, 4, 120, 5, 5, 155, - 263, 5, 5, 5, 1458, 1459, 1460, 131, 3, 4, - 5, 4, 7, 8, 1468, 4, 4, 1471, 3, 4, - 5, 5, 7, 8, 1478, 5, 5, 5, 5, 5, - 4, 233, 5, 5, 4, 224, 192, 5, 1492, 5, - 233, 233, 233, 1497, 200, 5, 135, 1501, 172, 1503, - 1504, 105, 1506, 1507, 1508, 233, 1510, 105, 40, 1513, - 1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, 1522, 1523, - 233, 260, 1526, 1527, 1528, 1529, 105, 16, 5, 268, - 269, 40, 1536, 1537, 23, 241, 237, 1541, 1542, 1543, - 5, 2281, 1546, 1547, 2465, 237, 252, 207, 207, 4, - 2290, 5, 2473, 35, 1558, 1559, 5, 1561, 1562, 207, - 207, 267, 4, 4, 110, 2486, 861, 5, 5, 5, - 2491, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 2339, - 5, 1042, 2342, 110, 4, 2345, 5, 2347, 1612, 1613, - 5, 5, 4, 1617, 5, 5, 4, 4, 1622, 1623, - 5, 1625, 1626, 1627, 106, 1629, 1630, 5, 1632, 5, - 5, 1635, 1636, 4, 6, 5, 5, 4, 12, 12, - 1644, 38, 5, 125, 126, 127, 4, 1651, 4, 4, - 132, 4, 4, 1657, 1658, 1096, 38, 5, 4, 0, - 5, 1665, 233, 145, 135, 1106, 166, 1671, 4, 151, - 233, 233, 233, 4, 4, 4, 193, 233, 61, 4, - 162, 4, 233, 5, 203, 5, 241, 5, 263, 5, - 5, 5, 4, 4, 301, 5, 4, 4, 4, 4, - 1704, 5, 5, 5, 301, 4, 4, 4, 233, 4, - 4, 4, 233, 301, 4, 301, 5, 220, 233, 220, - 5, 220, 220, 1018, 220, 5, 1730, 1731, 5, 5, - 4, 1735, 5, 116, 5, 1899, 119, 1741, 4, 4, - 4, 277, 5, 5, 4, 4, 235, 5, 237, 1913, - 1914, 5, 4, 1917, 5, 5, 4, 0, 5, 1923, - 4, 1925, 344, 4, 6, 4, 4, 12, 5, 5, - 5, 154, 5, 5, 5, 5, 5, 4, 263, 5, - 4, 4, 1223, 1224, 5, 1080, 5, 5, 4, 263, - 5, 273, 4, 263, 5, 5, 5, 4, 4, 277, - 5, 5, 5, 5, 4, 4, 189, 1971, 5, 2730, - 5, 5, 5, 4, 4, 304, 305, 306, 307, 308, + 4, 1655, 1453, 1657, 50, 14, 4, 491, 12, 1141, + 5, 1143, 4, 666, 877, 878, 879, 0, 661, 662, + 4, 3, 4, 5, 5, 3, 4, 32, 5, 33, + 3, 4, 4, 4, 5, 4, 40, 1169, 1170, 1171, + 3, 4, 3, 4, 4, 49, 5, 21, 52, 17, + 20, 40, 61, 20, 58, 97, 3, 4, 62, 5, + 4, 65, 5, 36, 5, 69, 70, 995, 66, 73, + 27, 40, 76, 77, 4, 938, 80, 3, 4, 966, + 84, 56, 969, 6, 16, 89, 37, 57, 5, 167, + 17, 48, 3, 4, 51, 66, 3, 4, 102, 986, + 104, 105, 106, 107, 105, 62, 3, 4, 4, 5, + 36, 167, 443, 120, 40, 132, 164, 88, 99, 123, + 118, 110, 87, 131, 105, 456, 3, 4, 85, 209, + 238, 4, 120, 21, 148, 66, 50, 2047, 17, 4, + 32, 110, 87, 221, 221, 102, 278, 118, 256, 103, + 33, 2061, 2062, 2063, 158, 105, 2066, 130, 2068, 2069, + 3, 4, 2072, 2073, 2074, 221, 137, 2077, 2078, 21, + 116, 2081, 4, 2083, 2084, 83, 2086, 61, 182, 188, + 2546, 165, 21, 187, 110, 99, 17, 46, 3, 4, + 155, 99, 193, 66, 3, 4, 119, 40, 276, 276, + 214, 66, 200, 192, 130, 3, 4, 21, 206, 207, + 155, 259, 2713, 255, 192, 122, 59, 234, 298, 98, + 134, 36, 118, 192, 56, 21, 3, 4, 284, 200, + 157, 238, 186, 241, 61, 206, 207, 212, 142, 253, + 208, 242, 246, 193, 190, 118, 234, 191, 257, 295, + 201, 27, 222, 118, 3, 4, 2757, 266, 262, 263, + 234, 191, 194, 230, 917, 235, 192, 110, 240, 258, + 275, 240, 4, 277, 64, 186, 66, 291, 3, 4, + 223, 285, 286, 242, 288, 289, 263, 291, 280, 298, + 2200, 289, 242, 2203, 240, 278, 4, 301, 2208, 240, + 244, 78, 2212, 298, 200, 309, 310, 27, 286, 186, + 206, 207, 27, 286, 295, 130, 298, 263, 289, 287, + 280, 305, 2232, 286, 295, 286, 296, 200, 332, 333, + 334, 15, 336, 206, 207, 200, 340, 341, 22, 286, + 338, 206, 207, 27, 342, 343, 234, 351, 352, 192, + 34, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 286, 692, 279, 367, 14, 15, 1019, 338, 372, 373, + 341, 342, 343, 63, 288, 27, 380, 208, 66, 383, + 212, 1244, 234, 275, 1037, 296, 118, 344, 1251, 286, + 74, 181, 276, 289, 171, 234, 400, 401, 148, 295, + 2766, 2767, 4, 407, 408, 409, 265, 411, 5, 305, + 118, 61, 221, 2323, 104, 299, 289, 14, 15, 296, + 234, 425, 28, 221, 289, 429, 1069, 6, 339, 340, + 434, 435, 436, 437, 438, 439, 66, 441, 234, 282, + 444, 445, 338, 2353, 4, 221, 342, 343, 13, 276, + 1582, 166, 61, 457, 30, 204, 287, 1100, 16, 34, + 226, 186, 339, 340, 61, 338, 191, 244, 200, 342, + 343, 286, 299, 338, 206, 207, 35, 342, 343, 163, + 164, 165, 166, 167, 168, 169, 1414, 61, 172, 173, + 174, 175, 200, 181, 44, 285, 56, 1384, 206, 207, + 1387, 221, 227, 253, 61, 136, 837, 511, 512, 5, + 119, 3, 4, 1441, 166, 61, 3, 4, 94, 234, + 61, 123, 120, 24, 25, 529, 251, 2437, 3, 4, + 191, 5, 107, 88, 63, 31, 1464, 87, 188, 189, + 586, 231, 191, 149, 175, 119, 155, 106, 2458, 4, + 881, 120, 556, 40, 226, 245, 246, 289, 2468, 3, + 4, 276, 119, 253, 2474, 2475, 172, 126, 127, 128, + 176, 296, 280, 119, 133, 104, 260, 261, 119, 583, + 626, 289, 234, 0, 59, 5, 162, 146, 3, 4, + 251, 188, 189, 152, 123, 244, 97, 285, 136, 645, + 202, 70, 40, 287, 163, 120, 338, 257, 120, 262, + 342, 343, 56, 617, 339, 340, 266, 267, 5, 225, + 168, 63, 187, 110, 276, 4, 201, 5, 176, 31, + 338, 66, 61, 5, 342, 343, 234, 175, 1291, 643, + 190, 5, 61, 327, 328, 329, 336, 337, 298, 1302, + 14, 15, 212, 61, 5, 261, 660, 266, 27, 663, + 257, 37, 104, 269, 270, 234, 240, 2321, 244, 266, + 267, 47, 110, 249, 271, 2585, 256, 681, 682, 683, + 684, 5, 262, 687, 56, 689, 5, 691, 120, 693, + 119, 5, 266, 65, 129, 2605, 30, 61, 74, 168, + 119, 298, 231, 17, 5, 192, 192, 122, 61, 266, + 27, 119, 204, 14, 15, 274, 245, 246, 153, 234, + 266, 4, 234, 78, 770, 266, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 5, 1848, 1849, 5, 1851, 2012, 1853, - 5, 5, 4, 236, 4, 4, 239, 5, 5, 5, - 5, 4, 297, 5, 1868, 1869, 1870, 1871, 1872, 1873, - 1874, 1875, 1876, 1877, 4, 4, 4, 4, 4, 262, - 5, 5, 265, 5, 5, 5, 4, 4, 1892, 5, - 1894, 4, 1896, 276, 5, 5, 4, 1901, 4, 4, - 33, 4, 6, 5, 1199, 5, 4, 4, 1912, 5, - 5, 5, 5, 5, 5, 1919, 5, 5, 5, 4, - 344, 5, 4, 4, 344, 5, 1930, 1931, 1932, 1933, - 1934, 1935, 1936, 1937, 1938, 1939, 5, 5, 1942, 1943, - 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, - 4, 1955, 4, 1957, 1958, 1959, 5, 5, 5, 5, - 1255, 4, 4, 1404, 5, 5, 5, 5, 4, 1973, - 4, 6, 5, 4, 4, 1270, 4, 2632, 4, 4, - 4, 4, 4, 116, 4, 4, 4, 4, 4, 4, - 344, 4, 1433, 344, 344, 344, 1437, 344, 4, 2003, - 5, 5, 2006, 4, 2008, 5, 2010, 4, 4, 2013, - 5, 2015, 5, 5, 5, 5, 4, 344, 2022, 2023, - 4, 965, 1463, 4, 4, 2029, 4, 2031, 4, 4, - 4, 2035, 19, 1474, 2038, 4, 2640, 5, 4, 2256, - 5, 1482, 1483, 5, 5, 4, 4, 2702, 5, 5, - 5, 5, 1493, 186, 5, 188, 189, 44, 191, 192, - 2224, 2225, 2226, 5, 4, 2229, 4, 2231, 2232, 5, - 4, 2235, 4, 2237, 4, 2630, 5, 5, 4, 4, - 4, 4, 4, 2087, 5, 5, 219, 5, 4, 4, - 77, 4, 430, 5, 5, 5, 4, 84, 5, 4, - 4, 387, 5, 236, 237, 5, 2702, 94, 95, 2698, - -1, -1, -1, 1408, 101, 726, -1, -1, -1, 290, + 329, 330, 331, 332, 192, 759, 760, 761, 762, 763, + 61, 765, 766, 767, 768, 2675, 119, 2677, 212, 2679, + 239, 2681, 148, 2683, 22, 2685, 780, 781, 116, 248, + 784, 785, 786, 787, 788, 789, 790, 791, 792, 231, + 1121, 4, 796, 797, 229, 1658, 66, 61, 167, 155, + 48, 49, 234, 245, 246, 3, 4, 336, 337, 185, + 40, 815, 816, 817, 62, 61, 171, 30, 117, 61, + 258, 3, 4, 2733, 188, 189, 160, 183, 832, 833, + 834, 40, 836, 12, 838, 5, 840, 266, 14, 15, + 212, 201, 40, 278, 14, 15, 6, 266, 4, 33, + 167, 278, 221, 3, 4, 119, 12, 861, 266, 863, + 108, 109, 93, 3, 4, 1997, 1998, 1999, 168, 2779, + 874, 5, 248, 119, 53, 209, 1763, 119, 882, 110, + 110, 3, 4, 887, 33, 61, 89, 188, 189, 244, + 16, 61, 71, 257, 336, 337, 1783, 66, 902, 903, + 234, 110, 266, 267, 221, 227, 910, 271, 912, 913, + 277, 1798, 110, 266, 1801, 919, 45, 1248, 40, 59, + 924, 100, 1809, 299, 54, 1812, 972, 611, 88, 933, + 59, 4, 5, 1820, 298, 1863, 1823, 88, 117, 72, + 122, 89, 121, 1830, 948, 4, 5, 160, 256, 3, + 4, 1879, 81, 132, 262, 186, 257, 3, 4, 119, + 90, 26, 192, 17, 115, 266, 267, 116, 5, 186, + 271, 100, 4, 221, 191, 223, 31, 337, 4, 5, + 1908, 665, 342, 192, 344, 4, 670, 116, 110, 5, + 119, 995, 3, 4, 192, 5, 209, 298, 5, 82, + 4, 60, 266, 66, 14, 15, 5, 66, 138, 5, + 227, 1015, 188, 189, 29, 144, 145, 80, 188, 189, + 266, 234, 5, 221, 266, 4, 89, 4, 5, 44, + 5, 46, 1036, 184, 251, 4, 99, 4, 187, 2490, + 189, 1045, 191, 192, 3, 4, 111, 198, 59, 4, + 199, 61, 300, 12, 113, 1059, 0, 1061, 123, 3, + 4, 76, 1066, 1067, 1068, 214, 129, 150, 197, 84, + 129, 5, 1076, 4, 37, 1079, 205, 1081, 119, 296, + 97, 257, 141, 19, 47, 148, 5, 257, 147, 148, + 266, 267, 157, 1097, 153, 1099, 266, 267, 4, 1103, + 1104, 271, 2611, 254, 3, 4, 28, 286, 44, 263, + 240, 74, 4, 1117, 1118, 1978, 4, 26, 1122, 1123, + 2629, 4, 298, 340, 1128, 140, 1130, 4, 298, 1133, + 193, 1135, 5, 262, 263, 819, 219, 220, 203, 288, + 1186, 77, 431, 432, 295, 204, 5, 1478, 84, 4, + 233, 216, 14, 15, 305, 42, 43, 4, 94, 95, + 3, 4, 4, 5, 223, 101, 229, 4, 227, 12, + 229, 1175, 1176, 1177, 1178, 190, 1180, 1181, 188, 189, + 1184, 4, 5, 2046, 4, 148, 4, 123, 5, 272, + 253, 206, 207, 252, 253, 1199, 9, 33, 213, 61, + 215, 260, 111, 139, 2067, 334, 1210, 11, 1212, 1213, + 1214, 1215, 22, 1544, 123, 1219, 1220, 5, 154, 278, + 262, 168, 185, 1227, 82, 240, 162, 149, 4, 292, + 1234, 294, 194, 4, 1238, 1239, 1240, 2746, 176, 49, + 2127, 168, 52, 2752, 4, 1249, 182, 257, 1252, 2136, + 172, 194, 5, 83, 176, 5, 266, 267, 2145, 1263, + 2482, 271, 1266, 2485, 227, 2487, 4, 3, 4, 99, + 194, 66, 82, 66, 66, 334, 221, 5, 2500, 2501, + 116, 217, 169, 170, 5, 248, 4, 222, 298, 4, + 305, 4, 150, 442, 203, 2517, 2805, 194, 2807, 109, + 87, 5, 112, 225, 40, 1309, 87, 216, 1312, 196, + 82, 1315, 1316, 5, 1318, 4, 1320, 3, 4, 5, + 283, 4, 1326, 5, 1328, 5, 188, 189, 4, 265, + 2258, 1335, 5, 3, 4, 5, 299, 7, 8, 261, + 276, 3, 4, 5, 174, 99, 2274, 269, 270, 17, + 186, 2279, 188, 189, 4, 191, 192, 5, 1042, 3, + 4, 219, 220, 22, 17, 9, 10, 11, 27, 305, + 17, 4, 3, 4, 110, 233, 7, 8, 150, 3, + 4, 5, 4, 219, 214, 4, 535, 97, 5, 48, + 49, 5, 51, 52, 87, 257, 61, 4, 165, 5, + 236, 237, 5, 62, 266, 267, 1410, 5, 1412, 1413, + 1414, 4, 1096, 223, 272, 74, 75, 247, 567, 5, + 87, 5, 1106, 82, 4, 4, 85, 5, 5, 5, + 1434, 2294, 4, 4, 1438, 5, 298, 1441, 12, 12, + 2303, 4, 252, 102, 4, 4, 4, 219, 220, 108, + 109, 116, 288, 112, 119, 5, 5, 5, 1462, 1463, + 1464, 233, 3, 4, 5, 4, 7, 8, 1472, 4, + 306, 5, 1476, 3, 4, 5, 4, 7, 8, 1483, + 20, 280, 252, 252, 5, 4, 264, 5, 5, 2352, + 155, 5, 2355, 1497, 5, 2358, 4, 2360, 1502, 4, + 272, 5, 1506, 5, 1508, 1509, 264, 1511, 1512, 1513, + 5, 1515, 171, 5, 1518, 1519, 1520, 1521, 1522, 1523, + 1524, 1525, 1526, 1527, 1528, 190, 4, 1531, 1532, 1533, + 1534, 5, 4, 234, 5, 14, 15, 1541, 1542, 1223, + 1224, 5, 1546, 1547, 1548, 5, 234, 1551, 1552, 5, + 2478, 5, 5, 4, 4, 14, 15, 5, 2486, 1563, + 1564, 5, 1566, 1567, 223, 4, 208, 5, 5, 228, + 5, 2499, 237, 105, 136, 240, 2504, 40, 105, 234, + 1911, 105, 61, 5, 243, 40, 422, 238, 14, 15, + 208, 5, 4, 252, 5, 1926, 1927, 433, 263, 1930, + 208, 266, 61, 5, 208, 1936, 442, 1938, 4, 4, + 110, 5, 277, 1617, 1618, 14, 15, 22, 1622, 5, + 279, 280, 53, 1627, 1628, 5, 1630, 1631, 1632, 5, + 1634, 1635, 4, 1637, 110, 61, 1640, 1641, 5, 5, + 71, 300, 5, 4, 49, 1649, 5, 52, 5, 4, + 55, 5, 1656, 1984, 5, 4, 4, 88, 1662, 1663, + 5, 5, 61, 5, 5, 12, 1670, 4, 6, 100, + 5, 4, 1676, 12, 4, 511, 4, 82, 514, 515, + 4, 4, 38, 5, 4, 344, 117, 0, 38, 5, + 121, 527, 234, 136, 2025, 120, 532, 234, 234, 167, + 4, 132, 4, 204, 109, 541, 542, 112, 1712, 188, + 189, 242, 861, 194, 4, 4, 4, 4, 264, 5, + 5, 1405, 5, 5, 5, 5, 4, 1411, 4, 188, + 189, 5, 4, 4, 4, 1739, 1740, 5, 5, 5, + 1744, 234, 173, 234, 234, 302, 1750, 302, 4, 1433, + 4, 4, 1436, 4, 4, 4, 1440, 302, 302, 4, + 4, 4, 188, 189, 5, 953, 5, 5, 5, 605, + 606, 607, 221, 5, 221, 221, 221, 1461, 257, 221, + 5, 5, 4, 1467, 4, 4, 4, 266, 267, 188, + 189, 1475, 5, 5, 4, 1479, 5, 985, 257, 5, + 4, 0, 5, 1487, 1488, 5, 4, 266, 267, 5, + 4, 6, 4, 4, 1498, 2743, 4, 4, 223, 298, + 5, 5, 5, 5, 5, 5, 5, 5, 664, 5, + 4, 257, 290, 5, 5, 5, 4, 4, 4, 298, + 266, 267, 5, 5, 5, 5, 4, 252, 4, 264, + 5, 5, 5, 1857, 5, 1859, 4, 1861, 257, 1863, + 4, 264, 5, 5, 5, 5, 4, 266, 267, 1018, + 4, 264, 298, 278, 5, 1879, 1880, 1881, 1882, 1883, + 1884, 1885, 1886, 1887, 1888, 5, 5, 5, 4, 347, + 4, 12, 5, 5, 5, 5, 4, 4, 4, 298, + 1904, 5, 1906, 4, 1908, 4, 2237, 2238, 2239, 1913, + 4, 2242, 5, 2244, 2245, 5, 91, 2248, 5, 2250, + 5, 1925, 5, 4, 99, 4, 345, 5, 1932, 4, + 105, 1080, 4, 298, 5, 5, 4, 4, 4, 1943, + 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 4, + 125, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, + 1964, 1965, 1966, 5, 1968, 5, 1970, 1971, 1972, 4, + 4, 345, 5, 148, 5, 5, 5, 5, 5, 2310, + 5, 156, 1986, 5, 5, 4, 4, 823, 5, 4, + 6, 5, 2645, 5, 5, 4, 4, 430, 5, 835, + 5, 5, 5, 4, 4, 345, 5, 5, 5, 5, + 4, 4, 2016, 5, 4, 2019, 4, 2021, 193, 2023, + 4, 4, 2026, 4, 2028, 4, 201, 4, 4, 4, + 4, 2035, 2036, 4, 4, 4, 872, 873, 2042, 4, + 2044, 4, 345, 4, 2048, 345, 345, 2051, 345, 345, + 1199, 509, 5, 5, 4, 278, 5, 4, 516, 5, + 896, 519, 2715, 5, 4, 4, 524, 242, 5, 5, + 528, 5, 4, 4, 4, 4, 4, 4, 253, 4, + 4, 278, 5, 4, 6, 5, 5, 5, 4, 387, + 5, 5, 5, 268, 5, 4, 2100, 5, 5, 4, + 4, 2653, 5, 4, 4, 4, 1255, 943, 5, 5, + 4, 4, 4, 4, 2269, 5, 4, 345, 5, 5, + 4, 1270, 4, 4, 2643, 5, 5, 5, 4, 4, + 588, 5, 4, 2464, 5, 5, 2715, 2711, 726, -1, + -1, 2472, -1, -1, -1, -1, -1, -1, 1336, 1337, + 1338, -1, 2198, -1, -1, -1, -1, -1, 1346, 1347, + 1348, -1, -1, -1, -1, 1353, 1354, 1355, -1, -1, + 1358, 1359, -1, 1361, 1362, -1, -1, -1, -1, -1, + 2511, -1, 1018, -1, -1, -1, -1, -1, -1, 1873, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 2297, -1, 122, 2185, -1, -1, -1, + 2204, -1, -1, 1391, 1392, -1, -1, 1395, 1396, -1, + -1, -1, -1, 2217, 2218, 2219, 2220, 2221, 2222, 2223, + 2224, 2225, 2226, 2227, -1, 1909, -1, -1, -1, 2233, + 688, -1, -1, 2488, 1070, -1, 2240, 695, -1, 2243, + 2724, 2725, -1, -1, 1080, 2249, -1, -1, 2252, 2253, + 2254, 2255, 2256, 2257, 2258, 2259, 2260, 2261, -1, 2514, + 1409, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2274, 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, 2283, + 2284, 2285, -1, 2287, -1, 2289, 2290, 2291, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 138, -1, -1, -1, 288, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 153, -1, -1, 1464, - -1, -1, 1467, 306, 161, -1, 347, -1, -1, -1, - -1, 1476, -1, -1, -1, -1, -1, 2191, -1, 1484, - -1, -1, -1, -1, 181, -1, 1491, -1, -1, -1, - 2204, 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, 2213, - 2214, -1, -1, -1, -1, -1, 2220, -1, -1, -1, - -1, -1, 953, 2227, 2711, 2712, 2230, -1, -1, 216, - -1, -1, 2236, 4, -1, 2239, 2240, 2241, 2242, 2243, - 2244, 2245, 2246, 2247, 2248, -1, -1, -1, 19, -1, - -1, -1, -1, -1, 985, -1, -1, 2261, 2262, 2263, - 2264, 2265, 2266, 2267, 2268, 2269, 2270, 2271, 2272, -1, - 2274, -1, 2276, 2277, 2278, -1, -1, 264, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2451, 275, 422, - 2294, -1, -1, -1, 2298, 2459, -1, -1, 2302, -1, - 433, -1, 2306, -1, -1, -1, -1, -1, -1, 442, - -1, -1, -1, -1, -1, -1, -1, 304, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1622, -1, -1, - 101, -1, -1, -1, 2498, -1, -1, -1, 509, -1, - -1, -1, -1, -1, -1, 516, -1, -1, 519, -1, - -1, -1, 2356, 524, -1, -1, -1, 528, -1, -1, + -1, -1, -1, 2307, -1, -1, -1, 2311, -1, -1, + -1, 2315, -1, -1, -1, 2319, -1, -1, -1, 1468, + -1, -1, 1471, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1481, -1, -1, -1, -1, -1, -1, -1, + 1489, -1, -1, -1, -1, -1, 1182, 1496, -1, -1, + -1, -1, -1, -1, 2609, 2610, -1, -1, 2613, -1, + 2615, -1, -1, 1199, 822, 2369, -1, -1, -1, -1, + -1, 829, 2627, 2628, -1, -1, -1, 2632, 2633, -1, + -1, 2636, -1, -1, -1, -1, 2641, 2642, -1, -1, + -1, -1, -1, -1, -1, -1, 1232, -1, -1, -1, + -1, -1, 40, -1, -1, -1, -1, 1243, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 875, -1, -1, + -1, -1, 880, -1, -1, 883, -1, -1, 66, -1, + -1, -1, 2687, -1, 1270, 2690, -1, 895, 2442, 1275, + 2695, -1, 2446, -1, -1, -1, 2701, -1, -1, -1, + -1, 2706, 2456, 2457, -1, -1, -1, -1, -1, 2463, + -1, 99, -1, -1, -1, -1, 2470, 105, -1, -1, + -1, -1, 110, -1, 2478, -1, 2480, -1, 1627, 2483, + 2484, -1, 2486, -1, -1, -1, -1, -1, -1, -1, + -1, 129, -1, -1, -1, 2499, -1, -1, 2502, 2503, + 2504, 2505, 2506, 2507, 2508, 2509, -1, -1, 2512, -1, + 148, -1, 2516, -1, -1, -1, -1, -1, -1, 2774, + -1, -1, 2777, 2527, -1, -1, 164, 55, 2532, -1, + -1, -1, -1, -1, -1, 993, -1, -1, 66, -1, + -1, 2796, -1, 1692, 2799, 2549, -1, -1, -1, -1, + -1, -1, -1, 1702, -1, 193, 2811, 2812, 1707, -1, + -1, -1, -1, 91, 92, -1, 1754, -1, -1, -1, + -1, 99, -1, 1409, -1, -1, -1, 105, -1, 1767, + 2584, -1, -1, -1, -1, -1, 2590, -1, 2592, 1777, + -1, 229, -1, -1, 2598, -1, -1, 125, -1, -1, + -1, 129, -1, 1439, 242, -1, -1, 2611, 2612, -1, + -1, 2295, -1, -1, -1, 253, -1, -1, -1, -1, + 148, -1, -1, -1, -1, 2629, 2630, 2673, 156, -1, + 2634, -1, 1468, -1, -1, 1471, -1, -1, -1, -1, + -1, -1, 280, -1, -1, 1481, 1482, -1, -1, 2653, + -1, -1, -1, 1489, 292, -1, 294, 295, -1, -1, + 1496, 1849, -1, -1, -1, 193, -1, -1, -1, -1, + -1, -1, -1, 201, 2678, -1, -1, -1, -1, -1, + 2684, -1, 2686, -1, -1, -1, -1, -1, -1, 2693, + -1, -1, -1, -1, 2698, -1, 334, -1, -1, 2703, + 1536, -1, -1, 1539, 1540, -1, -1, -1, -1, -1, + -1, -1, -1, 1549, 242, -1, -1, -1, -1, -1, + -1, -1, -1, 1872, -1, 253, 1875, -1, -1, 1187, + -1, -1, -1, -1, 965, -1, -1, -1, -1, 2743, + 268, -1, 2746, 2747, -1, -1, 2750, -1, 2752, 2753, + 278, -1, 280, -1, -1, -1, -1, -1, -1, -1, + 2764, 2765, -1, -1, -1, -1, -1, -1, 1226, -1, + -1, 2775, -1, -1, 2778, -1, -1, -1, -1, -1, + 2784, 2785, -1, 1241, 1620, -1, -1, -1, -1, -1, + -1, 1627, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2805, -1, 2807, -1, -1, 334, -1, -1, 1645, + -1, -1, -1, -1, 2498, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1661, -1, -1, -1, -1, + -1, -1, -1, -1, 2518, -1, -1, -1, 2522, -1, + -1, -1, -1, -1, 1680, -1, -1, -1, -1, 1685, + -1, -1, 1688, -1, 1690, 1691, 1692, 1693, -1, -1, + 1696, -1, -1, 1699, -1, -1, 1702, 1703, -1, 1705, + 1706, 1707, 1708, -1, 1710, 1711, -1, -1, -1, -1, + 1716, 1717, 1718, -1, 1720, 1721, -1, -1, -1, -1, + 1726, 1727, -1, -1, -1, 1731, -1, -1, -1, -1, + 1736, -1, -1, 2052, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 511, -1, - -1, 514, 515, 154, -1, -1, -1, -1, -1, -1, - -1, 1686, -1, -1, 527, -1, -1, -1, -1, 532, - 1695, -1, -1, -1, 1699, -1, -1, 1351, 541, 542, - -1, -1, -1, -1, -1, -1, -1, 588, -1, 1363, - -1, 1862, -1, -1, -1, 2429, -1, -1, -1, 2433, - -1, -1, -1, -1, -1, -1, -1, 1381, 1382, 2443, - 2444, -1, -1, -1, -1, 216, 2450, -1, -1, -1, - -1, -1, -1, 2457, -1, -1, 1897, -1, -1, -1, - -1, 2465, -1, 2467, -1, -1, 2470, 2471, -1, 2473, - -1, -1, 605, 606, 607, -1, -1, -1, -1, -1, - -1, -1, 2486, -1, -1, 2489, 2490, 2491, 2492, 2493, - 2494, 2495, 2496, -1, -1, 2499, -1, -1, -1, 2503, + -1, -1, 2110, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2514, -1, -1, -1, -1, 2519, -1, 688, -1, -1, - -1, -1, -1, -1, 695, -1, -1, -1, -1, -1, - -1, 664, 2536, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, -1, -1, -1, -1, -1, 1861, 2571, -1, 1864, - -1, -1, -1, 2577, -1, 2579, -1, -1, -1, -1, - -1, 2585, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 2598, 2599, -1, -1, 2475, -1, - -1, -1, -1, -1, 1335, 1336, 1337, -1, -1, -1, - -1, 2660, 2616, 2617, 1345, 1346, 1347, 2621, -1, -1, - -1, 1352, 1353, 1354, 2501, -1, 1357, 1358, -1, 1360, - 1361, -1, -1, -1, -1, -1, 2640, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4, -1, 2097, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 19, 2150, 2151, 2152, 2153, 2154, -1, 2156, 2157, + -1, -1, -1, 2161, 2162, 2163, 2164, 2165, -1, 2167, + 2168, -1, 40, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 56, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, + 4, -1, -1, -1, -1, -1, -1, -1, -1, 1477, + 1856, -1, -1, -1, 1860, 19, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1872, -1, -1, 1875, + -1, -1, -1, 101, -1, 39, -1, -1, -1, -1, + -1, -1, -1, 2202, -1, -1, -1, -1, -1, -1, + 118, -1, 56, -1, -1, -1, -1, -1, -1, 1905, + -1, -1, -1, -1, -1, 2759, -1, -1, -1, 1537, + -1, -1, 2231, -1, -1, 1543, -1, -1, -1, -1, + -1, -1, 2241, -1, -1, -1, -1, 155, 2247, -1, + -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 822, -1, -1, -1, -1, -1, -1, 829, 1390, - 1391, 2665, 4, 1394, 1395, -1, -1, 2671, -1, 2673, - -1, -1, -1, -1, -1, -1, 2680, 19, -1, -1, - -1, 2685, -1, -1, -1, -1, 2690, -1, -1, -1, - 823, -1, -1, -1, -1, -1, -1, -1, 40, -1, - -1, -1, 835, -1, 875, -1, -1, -1, -1, 880, - -1, -1, 883, -1, 56, -1, -1, -1, -1, 2596, - 2597, -1, -1, 2600, 895, 2602, 2730, -1, -1, 2733, - 2734, -1, -1, 2737, -1, 2739, 2740, 2614, 2615, 872, - 873, -1, 2619, 2620, 2039, -1, 2623, 2751, 2752, -1, - -1, 2628, 2629, -1, -1, -1, -1, -1, 2762, 101, - -1, 2765, -1, 896, -1, -1, -1, 2771, 2772, -1, - -1, -1, -1, -1, -1, -1, 118, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2792, 2084, - 2794, -1, -1, -1, -1, -1, -1, 2674, -1, -1, - 2677, -1, -1, -1, -1, 2682, -1, -1, -1, -1, - 943, 2688, 154, -1, -1, -1, 2693, -1, -1, -1, - 1764, -1, 993, -1, -1, -1, -1, -1, 1772, 1773, + -1, 1352, -1, -1, -1, -1, -1, -1, -1, -1, + 1966, -1, -1, 1364, 192, -1, -1, -1, -1, -1, + -1, -1, 200, -1, -1, -1, -1, -1, 206, 207, + -1, 1382, 1383, -1, 212, -1, -1, -1, -1, 217, + -1, 155, -1, -1, -1, 1623, -1, -1, -1, -1, + -1, 1629, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2372, -1, -1, 2375, 2376, 2377, + 2378, 2379, -1, 2381, 2382, 1653, -1, -1, 192, -1, + -1, -1, 1660, 2039, -1, 2393, 2394, 2395, 2396, 2397, + -1, 2399, 2400, -1, 2402, -1, -1, -1, 212, -1, + -1, -1, -1, 217, 2412, 2413, -1, -1, 1686, -1, + -1, 289, -1, 227, -1, 2423, 1694, -1, -1, -1, + -1, -1, -1, -1, 2080, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 330, 331, 332, -1, -1, -1, -1, -1, + 338, -1, -1, -1, 342, 343, -1, 2436, -1, -1, + -1, -1, 286, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2282, -1, 1787, 1788, -1, -1, -1, -1, 191, - -1, -1, -1, -1, 1798, 1799, -1, 199, -1, -1, - -1, -1, -1, 205, 206, 1809, 1810, -1, -1, 211, - -1, -1, -1, -1, 216, 1819, 1820, -1, -1, -1, - -1, 1825, -1, -1, 2761, 1018, -1, 2764, -1, -1, - -1, 1835, -1, -1, 2189, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2783, -1, -1, 2786, + -1, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2798, 2799, 2218, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 2228, 4, 5, -1, 1070, -1, 2234, - -1, -1, -1, -1, -1, -1, 288, 1080, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 60, -1, -1, -1, -1, 337, 66, -1, -1, 341, - 342, -1, -1, 73, -1, 75, -1, -1, -1, -1, - 80, -1, -1, 83, 1745, -1, 1187, -1, -1, 89, - -1, -1, -1, -1, -1, -1, -1, 1758, -1, 99, - -1, -1, -1, -1, -1, 105, -1, 1768, -1, -1, - -1, -1, -1, 113, 2485, -1, 55, -1, -1, 1182, - -1, -1, -1, -1, -1, 1226, -1, 66, 128, -1, - -1, -1, -1, -1, 2505, -1, 1199, -1, 2509, 4, - 1241, -1, -1, -1, -1, -1, -1, 147, -1, -1, - -1, -1, 91, 92, 19, -1, -1, -1, -1, -1, - 99, -1, -1, 163, -1, -1, 105, -1, -1, 1232, - -1, -1, 172, 173, -1, -1, -1, -1, -1, 1840, - 1243, -1, -1, -1, -1, 124, -1, -1, -1, 128, - -1, 56, 192, -1, -1, -1, -1, -1, 2423, -1, - -1, -1, -1, -1, -1, -1, -1, 1270, 147, -1, - -1, -1, 1275, 213, -1, -1, 155, -1, -1, -1, - -1, -1, -1, -1, 2098, -1, 226, -1, 228, -1, - -1, -1, -1, -1, 2108, -1, 101, -1, 2112, 2113, - -1, 241, -1, -1, -1, -1, 246, 2121, 2122, -1, - -1, -1, 252, 192, -1, -1, 2130, 2131, -1, 259, - -1, 200, 2136, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2146, 2147, -1, -1, -1, 277, -1, -1, - -1, -1, -1, 2157, 2158, -1, -1, -1, -1, 154, - 290, 291, -1, 293, 2168, -1, -1, -1, -1, -1, - -1, -1, 241, 2177, -1, 2179, -1, -1, -1, -1, - -1, -1, -1, 252, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 267, -1, - -1, -1, -1, 333, -1, -1, -1, -1, 277, -1, - 279, -1, -1, -1, -1, 1408, 211, -1, -1, -1, - 2575, 216, -1, -1, -1, -1, -1, -1, 2583, -1, + -1, -1, -1, -1, -1, -1, 2202, -1, -1, 2205, + -1, -1, 2560, -1, -1, -1, -1, -1, -1, 2215, + -1, -1, -1, 2571, -1, 2573, -1, -1, -1, 2577, + -1, -1, -1, -1, -1, 2231, 1854, -1, 2234, -1, + -1, -1, -1, -1, -1, 2241, -1, -1, -1, -1, + 2246, 2247, -1, -1, -1, -1, -1, -1, 1876, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1472, -1, 1436, -1, 2746, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2588, + -1, -1, -1, -1, -1, -1, -1, 2596, -1, -1, + -1, -1, 1910, -1, 1912, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 333, -1, -1, -1, -1, -1, - -1, 1464, -1, -1, 1467, -1, -1, -1, -1, -1, - -1, -1, -1, 1476, 1477, -1, -1, -1, -1, -1, - -1, 1484, -1, -1, -1, -1, -1, -1, 1491, -1, - -1, 1532, -1, -1, -1, -1, 2097, 1538, -1, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, -1, 1531, -1, - -1, 1534, 1535, -1, -1, -1, 2137, 2138, 2139, 2140, - 2141, 1544, 2143, 2144, -1, -1, 2360, 2148, 2149, 2150, - 2151, 2152, -1, 2154, 2155, -1, 2370, -1, -1, -1, - 2725, -1, -1, -1, -1, 2379, -1, -1, -1, -1, - -1, -1, -1, -1, 2388, -1, -1, 1618, -1, -1, - -1, 2395, -1, 1624, -1, -1, -1, -1, -1, -1, - -1, 2756, 2406, -1, 2759, -1, -1, -1, 2412, -1, - -1, 2415, -1, -1, 2418, -1, -1, 1648, -1, -1, - -1, -1, 1615, -1, 1655, -1, -1, -1, -1, 1622, + -1, 1929, -1, 1931, -1, 2663, -1, 1935, 2666, 1937, + -1, 2669, -1, 2671, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2334, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1640, -1, -1, - 1681, -1, -1, -1, -1, -1, -1, 1688, -1, -1, - -1, -1, -1, 1656, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1977, + -1, -1, 1980, 1981, -1, -1, -1, 2363, -1, -1, + -1, 1989, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1773, -1, -1, -1, -1, -1, -1, -1, + 1781, 1782, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2022, 1796, 1797, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1807, 1808, 4, 5, + 2038, -1, -1, -1, -1, -1, -1, 1818, 1819, 2738, + -1, -1, -1, -1, -1, -1, -1, 1828, 1829, -1, + 2436, 2059, -1, 1834, -1, -1, 2064, -1, -1, -1, + -1, -1, 2070, 1844, -1, -1, -1, 2075, -1, -1, + 2769, 2079, -1, 2772, 2082, -1, -1, 2085, -1, 2087, + -1, -1, -1, -1, 60, 2093, -1, -1, -1, -1, + 66, 2477, -1, -1, -1, -1, -1, 73, -1, 75, + -1, -1, -1, 2489, 80, -1, -1, 83, -1, -1, + -1, -1, -1, 89, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 99, -1, -1, -1, -1, -1, 105, + -1, -1, -1, -1, -1, -1, -1, 113, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1675, -1, -1, -1, -1, 1680, -1, -1, - 1683, 1684, 1685, 1686, 1687, -1, 1689, -1, -1, 1692, - -1, -1, 1695, 1696, 1697, 1698, 1699, 1700, -1, 1702, - 1703, -1, -1, -1, 1707, 1708, 1709, -1, 1711, 1712, - -1, -1, -1, -1, 1717, 1718, -1, -1, -1, 1722, - -1, -1, -1, -1, 1727, -1, -1, -1, -1, -1, - 2544, -1, -1, -1, 2548, -1, -1, -1, -1, -1, - -1, 2555, -1, -1, -1, -1, -1, 2561, -1, -1, - -1, 2565, -1, -1, 2568, -1, -1, -1, 2359, -1, - -1, 2362, 2363, 2364, 2365, 2366, -1, 2368, 2369, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2380, - 2381, 2382, 2383, 2384, -1, 2386, 2387, -1, 2389, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2399, 2400, - 2034, -1, -1, -1, 1845, -1, -1, 3, 4, 2410, - -1, -1, -1, -1, 2048, 2049, 2050, -1, -1, 2053, - -1, 2055, 2056, 19, 1865, 2059, 2060, 2061, -1, -1, - 2064, 2065, -1, -1, 2068, -1, 2070, 2071, -1, 2073, - 3, 4, -1, -1, 1847, -1, -1, 1850, -1, -1, - -1, -1, -1, -1, -1, -1, 19, 1898, 1861, 1900, - 56, 1864, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1916, -1, 1918, -1, -1, - -1, 1922, -1, 1924, -1, -1, -1, -1, -1, -1, - 1893, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, + -1, -1, 2538, 129, -1, -1, -1, -1, -1, -1, + -1, 2547, -1, -1, -1, -1, -1, 3, 4, -1, + -1, -1, 148, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 19, -1, -1, -1, -1, 164, -1, + -1, -1, -1, -1, -1, -1, -1, 173, 174, -1, + -1, -1, 2588, 2589, -1, 2591, -1, 3, 4, -1, + 2596, 2597, -1, -1, -1, 2601, -1, 193, -1, -1, + 56, -1, -1, 19, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4, 214, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2635, + -1, 227, 19, 229, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 101, 242, -1, 2654, -1, + -1, 247, -1, 2659, -1, -1, -1, 253, 2286, -1, + -1, -1, -1, -1, 260, -1, -1, -1, -1, 56, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1964, -1, -1, 1967, 1968, -1, -1, - -1, -1, -1, -1, -1, 1976, -1, -1, 101, -1, - -1, -1, -1, -1, -1, -1, 2547, -1, -1, -1, - 1953, -1, -1, 2187, -1, -1, 2190, 2558, 154, 2560, - -1, 2195, -1, 2564, -1, 2199, -1, -1, 2009, -1, + -1, -1, 278, -1, -1, 101, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 291, 292, -1, 294, 155, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 2025, 2219, -1, -1, -1, -1, - -1, 154, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 18, 19, -1, 2046, -1, -1, -1, -1, - 2051, -1, -1, -1, -1, 211, 2057, -1, -1, -1, - 216, 2062, -1, 2026, -1, 2066, -1, -1, 2069, -1, - -1, 2072, -1, 2074, -1, -1, -1, -1, -1, 2080, - -1, -1, 58, -1, -1, -1, -1, -1, -1, 2650, - -1, -1, 2653, 216, -1, 2656, -1, 2658, -1, -1, - -1, -1, -1, -1, 2067, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2310, -1, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 114, -1, - -1, -1, -1, -1, -1, -1, 2340, -1, 304, 305, + 2111, -1, -1, -1, 101, -1, -1, -1, -1, -1, + 2121, -1, -1, -1, 2125, 2126, -1, -1, -1, -1, + -1, -1, 2738, 2134, 2135, 4, -1, -1, 334, 155, + -1, -1, 2143, 2144, -1, -1, -1, -1, 2149, 2755, + 19, -1, -1, -1, -1, -1, 212, -1, 2159, 2160, + -1, 217, -1, 2769, -1, -1, 2772, -1, 155, 2170, + 2171, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2181, -1, -1, -1, -1, -1, -1, -1, -1, 2190, + -1, 2192, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 217, -1, -1, -1, -1, 2434, -1, -1, -1, + -1, -1, -1, 2441, -1, -1, -1, 2445, -1, -1, + -1, -1, -1, -1, -1, 212, -1, -1, -1, -1, + 217, -1, 101, -1, 2462, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, -1, -1, 154, -1, - -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, -1, -1, 2189, -1, 27, 2192, - 2424, -1, -1, -1, -1, -1, -1, -1, -1, 2202, - 216, -1, -1, -1, -1, -1, -1, -1, -1, 48, - 49, 2445, 51, 52, -1, 2218, -1, -1, 2221, -1, - -1, 2455, -1, 62, -1, 2228, -1, 2461, 2462, -1, - 2233, 2234, 2273, -1, -1, 74, 75, -1, -1, -1, - -1, -1, -1, 82, -1, -1, 85, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 102, -1, 281, -1, -1, -1, 108, - 109, -1, -1, 112, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 304, 305, + 326, 327, 328, 329, 330, 331, 332, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 155, -1, -1, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, -1, -1, 2321, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 170, -1, -1, -1, -1, -1, -1, 2572, -1, - -1, -1, -1, -1, -1, -1, -1, 2350, -1, -1, - 20, -1, -1, -1, -1, -1, -1, -1, 2592, -1, + 326, 327, 328, 329, 330, 331, 332, -1, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 332, -1, -1, 217, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 41, -1, -1, 44, -1, 46, -1, -1, -1, - 2421, -1, -1, 222, -1, -1, -1, 2428, 227, 59, - -1, 2432, -1, -1, 64, 65, -1, 67, 68, 69, - 19, -1, -1, 242, -1, -1, -1, 77, 2449, -1, - -1, -1, 251, -1, 84, -1, 86, 87, -1, -1, - 2423, -1, -1, -1, -1, 95, 96, -1, 2662, -1, - 2664, -1, 2666, -1, 2668, -1, 2670, -1, 2672, 278, - 279, -1, -1, -1, -1, -1, 65, 66, -1, -1, - 69, -1, -1, 123, -1, -1, -1, -1, -1, -1, - 299, 2464, -1, -1, 134, -1, -1, -1, 138, -1, - -1, 141, 91, 2476, -1, -1, 146, 147, -1, -1, - -1, -1, 101, 153, -1, -1, 2720, -1, -1, -1, - 160, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 173, 343, -1, 176, 177, 178, -1, - -1, 181, 182, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2525, -1, 194, -1, -1, -1, -1, -1, - -1, 2534, 2766, -1, -1, 154, -1, -1, -1, 209, - 210, 211, -1, -1, -1, -1, -1, -1, 167, -1, - -1, -1, -1, 223, -1, -1, -1, -1, -1, -1, - -1, 231, -1, 2604, 234, 184, -1, 237, -1, 239, - -1, 241, 2575, 2576, -1, 2578, 246, -1, -1, -1, - 2583, 2584, -1, -1, 203, 2588, -1, -1, -1, 259, - -1, -1, -1, -1, 264, -1, -1, 216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 280, 281, -1, -1, -1, -1, -1, -1, -1, 2622, - -1, -1, 292, -1, 294, -1, -1, -1, -1, -1, - 300, -1, -1, 303, 304, -1, -1, -1, 2641, -1, - -1, -1, -1, 2646, -1, 264, -1, -1, -1, -1, - -1, -1, -1, 2694, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 334, -1, -1, -1, -1, -1, - 340, -1, 2713, 2714, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 304, 305, 306, 307, 308, + -1, -1, 2373, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2383, -1, -1, -1, -1, -1, -1, 2617, + -1, 2392, -1, -1, -1, -1, -1, -1, -1, -1, + 2401, -1, -1, -1, -1, -1, -1, 2408, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2419, -1, + -1, -1, -1, -1, 2425, -1, -1, 2428, -1, -1, + 2431, -1, -1, -1, -1, -1, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, -1, 333, -1, 2757, 20, 21, 22, - -1, -1, 2725, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 2776, -1, -1, 2779, 2742, - -1, -1, -1, -1, -1, 48, 49, -1, -1, 52, - -1, -1, 55, 2756, -1, -1, 2759, -1, -1, 62, - -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, - -1, 74, 75, -1, -1, -1, -1, -1, -1, 82, - 83, 19, -1, -1, 20, 21, 22, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 99, -1, -1, -1, - -1, -1, 105, -1, -1, 108, 109, -1, -1, 112, - -1, -1, 48, 49, -1, 19, 52, -1, 56, -1, - -1, -1, -1, 59, -1, 128, 62, -1, -1, -1, - 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, - -1, -1, -1, -1, 147, 19, 82, -1, -1, -1, - -1, -1, 56, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 101, -1, -1, -1, 170, -1, -1, - -1, -1, 108, 109, -1, -1, 112, -1, -1, -1, - -1, -1, 56, -1, -1, -1, -1, -1, -1, 192, - -1, -1, 128, -1, -1, -1, -1, 101, -1, -1, - -1, 19, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 147, -1, -1, -1, -1, 154, 220, -1, 222, - -1, -1, -1, -1, 227, 228, -1, 101, -1, -1, - -1, -1, -1, -1, 170, -1, -1, -1, 241, 242, - -1, 59, -1, 179, -1, -1, -1, -1, 251, 252, - 154, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 19, -1, -1, -1, -1, -1, - -1, -1, -1, 211, 277, -1, 279, -1, 216, -1, - 154, -1, -1, 101, 220, -1, -1, -1, 291, -1, - 293, 227, 228, -1, -1, -1, 299, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 242, 211, -1, -1, - -1, -1, 216, -1, -1, -1, 252, -1, -1, -1, + 329, 330, 331, 332, 20, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2707, + -1, -1, -1, -1, -1, 41, -1, -1, 44, -1, + 46, -1, -1, -1, -1, -1, -1, 16, 2726, 2727, + -1, -1, -1, 59, 23, -1, -1, -1, 64, 65, + -1, 67, 68, 69, -1, -1, -1, -1, -1, -1, + -1, 77, -1, -1, -1, -1, -1, -1, 84, -1, + 86, 87, -1, -1, -1, -1, -1, -1, 19, 95, + 96, -1, 2770, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 2557, -1, -1, -1, + 2561, 2789, -1, -1, 2792, -1, -1, 2568, 124, 19, + -1, -1, -1, 2574, -1, 56, -1, 2578, -1, 135, + 2581, -1, -1, 139, -1, -1, 142, -1, -1, -1, + -1, 147, 148, -1, -1, -1, -1, -1, 154, -1, + -1, -1, -1, -1, -1, 161, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 65, 66, -1, 174, 69, + 101, 177, 178, 179, 18, 19, 182, 183, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, + -1, 91, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 101, -1, -1, 210, 211, 212, -1, -1, -1, + -1, -1, -1, -1, 58, -1, -1, -1, 224, -1, + -1, -1, -1, -1, 155, -1, 232, -1, -1, 235, + -1, -1, 238, -1, 240, -1, 242, -1, -1, -1, + -1, 247, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 260, 155, -1, 101, -1, 265, + -1, -1, -1, -1, -1, -1, -1, 236, 168, 238, + 114, -1, -1, -1, -1, 281, 282, -1, -1, -1, + -1, 212, -1, -1, -1, 185, 217, 293, -1, 295, + -1, -1, -1, -1, -1, 301, -1, -1, 304, 305, + -1, -1, -1, -1, 204, -1, -1, -1, -1, -1, + -1, 155, -1, -1, -1, -1, -1, 217, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 335, + -1, -1, -1, -1, -1, 341, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, -1, 265, -1, -1, -1, -1, + -1, -1, -1, 217, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 331, 332, -1, -1, -1, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, -1, 334, -1, -1, -1, 282, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 333, -1, -1, -1, 272, -1, 154, -1, -1, -1, - -1, 277, 216, 279, -1, -1, 101, -1, -1, -1, - -1, -1, -1, 289, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 299, -1, -1, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, -1, -1, -1, 333, 216, 154, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, -1, -1, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, -1, -1, - -1, 216, -1, 281, -1, -1, -1, -1, -1, -1, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 20, + 21, 22, -1, -1, -1, -1, -1, -1, -1, -1, + 20, 21, 22, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 48, 49, -1, + -1, 52, -1, -1, 55, -1, -1, -1, 48, 49, + -1, 62, 52, 19, -1, 66, -1, -1, -1, 59, + -1, -1, 62, 74, 75, -1, 66, -1, -1, -1, + -1, 82, 83, -1, 74, 75, -1, -1, -1, -1, + -1, -1, 82, -1, -1, -1, -1, -1, 99, -1, + 56, -1, -1, -1, 105, -1, -1, 108, 109, -1, + -1, 112, -1, -1, 19, -1, -1, -1, 108, 109, + -1, -1, 112, -1, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 129, + -1, -1, 19, -1, -1, 101, -1, 148, -1, -1, + -1, -1, -1, -1, 59, -1, -1, -1, 148, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 171, -1, -1, -1, -1, -1, -1, -1, -1, 56, + 19, 171, -1, -1, -1, -1, -1, -1, -1, -1, + 180, -1, 193, -1, -1, -1, 101, -1, -1, 155, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 221, -1, 223, -1, 101, -1, -1, 228, 229, -1, + -1, 221, -1, 223, -1, -1, -1, -1, 228, 229, + -1, 242, 243, -1, -1, -1, -1, -1, -1, -1, + 155, 252, 253, 243, -1, -1, 212, -1, -1, -1, + -1, 217, 101, 253, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 278, 155, 280, + -1, -1, -1, -1, -1, -1, -1, -1, 278, -1, + 280, 292, -1, 294, -1, -1, -1, -1, -1, 300, + 290, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 300, -1, 217, -1, -1, -1, 155, 273, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 334, -1, -1, -1, -1, -1, -1, + 217, -1, -1, -1, 334, -1, -1, -1, -1, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 282, 217, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, -1, -1, -1, -1, -1, -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 41, -1, -1, - 44, -1, 46, -1, -1, -1, -1, -1, -1, -1, + 325, 326, 327, 328, 329, 330, 331, 332, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 332, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 41, -1, -1, 44, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 65, -1, 67, 68, 69, -1, -1, -1, -1, - -1, -1, -1, 77, -1, 79, -1, -1, -1, -1, - 84, -1, 86, 87, 88, -1, -1, -1, -1, 93, - -1, 95, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 65, -1, + 67, 68, 69, -1, -1, -1, -1, -1, -1, -1, + 77, -1, 79, -1, -1, -1, -1, 84, -1, 86, + 87, 88, -1, -1, -1, -1, 93, -1, 95, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 122, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 138, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 149, 150, -1, -1, 153, - -1, 154, -1, 157, -1, -1, 160, 160, -1, -1, + -1, -1, -1, -1, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 181, 182, -1, - -1, 185, -1, -1, -1, -1, -1, -1, -1, -1, - 194, -1, -1, 160, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, -1, -1, -1, - -1, -1, -1, 217, -1, -1, -1, -1, -1, -1, + -1, -1, 139, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 150, 151, -1, -1, 154, -1, 155, + -1, 158, -1, -1, 161, 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 239, -1, 241, -1, -1, + -1, -1, -1, -1, -1, 182, 183, -1, -1, 186, + -1, -1, -1, -1, -1, -1, -1, -1, 195, -1, + -1, 161, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 210, 211, -1, -1, -1, -1, -1, + -1, 218, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 240, -1, 242, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 264, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 280, 281, -1, -1, - -1, -1, -1, -1, -1, 289, -1, -1, -1, -1, - -1, -1, 296, -1, -1, -1, -1, -1, 302, -1, - 304, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, -1, - -1, -1, -1, -1, -1, -1, 340, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332 + -1, -1, -1, -1, -1, -1, -1, -1, 265, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 281, 282, -1, -1, -1, -1, + -1, -1, -1, 290, -1, -1, -1, -1, -1, -1, + 297, -1, -1, -1, -1, -1, 303, -1, 305, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, -1, -1, -1, + -1, -1, -1, -1, 341, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, 333, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 331, 332 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -4043,286 +4068,287 @@ static const yytype_int16 yycheck[] = static const yytype_uint16 yystos[] = { 0, 20, 41, 44, 46, 59, 64, 65, 67, 68, - 69, 77, 84, 86, 87, 95, 96, 123, 134, 138, - 141, 146, 147, 153, 160, 173, 176, 177, 178, 181, - 182, 194, 209, 210, 211, 223, 231, 234, 237, 239, - 241, 246, 259, 264, 280, 281, 292, 294, 300, 303, - 304, 334, 340, 346, 237, 255, 378, 66, 12, 53, - 71, 100, 117, 120, 131, 285, 380, 3, 4, 285, - 347, 385, 185, 190, 226, 250, 295, 339, 387, 277, - 4, 40, 110, 191, 239, 392, 28, 148, 171, 175, - 224, 260, 268, 269, 360, 394, 83, 99, 173, 213, - 246, 395, 40, 59, 110, 191, 281, 347, 404, 4, - 19, 40, 56, 101, 118, 154, 191, 199, 205, 206, - 211, 216, 288, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 337, 341, 342, 349, 357, 358, 359, 406, - 33, 407, 349, 29, 44, 46, 76, 84, 139, 189, - 205, 206, 212, 214, 239, 304, 348, 141, 408, 41, + 69, 77, 84, 86, 87, 95, 96, 124, 135, 139, + 142, 147, 148, 154, 161, 174, 177, 178, 179, 182, + 183, 195, 210, 211, 212, 224, 232, 235, 238, 240, + 242, 247, 260, 265, 281, 282, 293, 295, 301, 304, + 305, 335, 341, 347, 238, 256, 379, 66, 12, 53, + 71, 100, 117, 121, 132, 286, 381, 3, 4, 286, + 348, 386, 186, 191, 227, 251, 296, 340, 388, 278, + 4, 40, 110, 192, 240, 393, 28, 149, 172, 176, + 225, 261, 269, 270, 361, 395, 83, 99, 174, 214, + 247, 396, 40, 59, 110, 192, 282, 348, 405, 4, + 19, 40, 56, 101, 118, 155, 192, 200, 206, 207, + 212, 217, 289, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 338, 342, 343, 350, 358, 359, 360, 407, + 33, 408, 350, 29, 44, 46, 76, 84, 140, 190, + 206, 207, 213, 215, 240, 305, 349, 142, 409, 41, 44, 46, 65, 67, 68, 69, 77, 79, 84, 86, - 87, 88, 93, 95, 122, 138, 149, 150, 153, 157, - 160, 181, 182, 185, 194, 209, 210, 217, 239, 241, - 264, 280, 281, 289, 296, 302, 304, 340, 409, 83, - 99, 451, 19, 44, 77, 84, 94, 95, 101, 122, - 138, 153, 161, 181, 216, 264, 275, 304, 454, 349, - 88, 115, 183, 197, 253, 294, 304, 460, 16, 26, - 111, 122, 156, 202, 215, 463, 225, 481, 5, 66, - 88, 136, 294, 340, 349, 482, 5, 483, 20, 57, - 221, 234, 295, 499, 64, 66, 180, 284, 518, 66, - 200, 336, 341, 343, 519, 39, 191, 226, 285, 347, - 357, 359, 520, 5, 294, 304, 349, 523, 70, 167, - 238, 247, 524, 88, 499, 61, 275, 298, 531, 191, - 285, 347, 532, 26, 111, 122, 202, 215, 534, 50, - 99, 133, 287, 549, 550, 4, 37, 47, 74, 147, - 184, 226, 247, 282, 298, 373, 4, 122, 201, 551, - 285, 347, 553, 16, 23, 235, 237, 358, 554, 225, - 558, 285, 347, 559, 0, 22, 48, 49, 62, 108, - 109, 220, 222, 299, 379, 5, 59, 347, 381, 261, - 5, 4, 285, 347, 382, 5, 32, 274, 383, 121, - 347, 384, 121, 347, 386, 347, 4, 190, 243, 390, - 185, 295, 338, 339, 347, 389, 349, 135, 174, 388, - 347, 78, 170, 243, 347, 391, 5, 347, 4, 239, - 393, 347, 347, 5, 222, 396, 31, 397, 5, 398, - 5, 402, 5, 31, 403, 347, 9, 10, 11, 347, - 353, 354, 355, 356, 347, 347, 40, 110, 191, 347, - 405, 347, 191, 357, 359, 347, 35, 106, 125, 126, - 127, 132, 145, 151, 162, 273, 362, 347, 4, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 116, 66, 53, 71, 88, 100, 117, 120, 131, 172, - 410, 117, 412, 185, 190, 226, 250, 295, 338, 339, - 347, 399, 413, 277, 416, 167, 417, 167, 175, 419, - 65, 66, 69, 91, 167, 184, 203, 264, 333, 357, - 421, 347, 359, 424, 59, 281, 357, 425, 272, 357, - 359, 426, 33, 427, 357, 359, 428, 4, 357, 359, - 429, 45, 59, 81, 100, 116, 119, 143, 144, 196, - 204, 261, 262, 333, 433, 208, 297, 439, 5, 89, - 6, 88, 119, 431, 5, 65, 359, 430, 16, 499, - 66, 180, 284, 440, 66, 226, 441, 276, 61, 275, - 298, 442, 131, 233, 443, 37, 47, 74, 147, 184, - 247, 298, 444, 359, 89, 16, 193, 449, 357, 452, - 72, 455, 31, 456, 44, 87, 189, 457, 147, 213, - 252, 290, 458, 357, 18, 58, 114, 281, 357, 459, - 4, 190, 462, 5, 4, 6, 119, 347, 4, 5, - 239, 464, 5, 466, 5, 116, 189, 239, 262, 467, - 93, 110, 185, 480, 5, 478, 5, 262, 479, 4, - 5, 349, 349, 347, 347, 5, 4, 5, 60, 66, - 73, 75, 80, 83, 89, 99, 105, 113, 128, 147, - 163, 172, 173, 192, 213, 226, 228, 241, 246, 252, - 259, 277, 290, 291, 293, 333, 484, 5, 4, 347, - 5, 347, 40, 110, 347, 522, 349, 347, 357, 359, - 521, 347, 362, 347, 4, 358, 54, 90, 137, 239, - 525, 4, 4, 347, 147, 252, 526, 5, 357, 4, - 40, 110, 347, 533, 347, 97, 61, 119, 239, 265, - 535, 119, 548, 61, 116, 119, 154, 189, 236, 239, - 262, 265, 276, 537, 538, 61, 119, 265, 547, 5, - 4, 34, 107, 200, 530, 66, 349, 374, 66, 349, - 375, 66, 349, 376, 13, 186, 529, 347, 347, 40, - 110, 191, 220, 347, 377, 347, 262, 4, 347, 347, - 4, 557, 4, 279, 555, 4, 279, 556, 4, 362, - 121, 347, 560, 347, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 347, 4, 5, 347, 12, 347, 347, - 347, 30, 94, 161, 243, 248, 361, 361, 4, 347, - 347, 4, 4, 4, 347, 347, 347, 347, 4, 4, - 5, 5, 357, 5, 347, 347, 353, 355, 355, 357, - 347, 347, 347, 347, 347, 347, 347, 357, 359, 356, - 347, 347, 356, 347, 5, 261, 103, 185, 411, 190, - 243, 414, 167, 78, 170, 243, 415, 135, 174, 400, - 400, 4, 418, 4, 420, 190, 250, 422, 175, 423, - 167, 362, 347, 357, 347, 357, 357, 362, 362, 362, - 357, 362, 347, 357, 4, 436, 4, 359, 434, 193, - 4, 164, 304, 435, 193, 357, 4, 357, 438, 5, - 5, 4, 193, 347, 4, 5, 60, 66, 113, 128, - 140, 146, 147, 152, 203, 222, 226, 228, 251, 252, - 259, 277, 333, 493, 359, 66, 445, 66, 446, 66, - 447, 220, 448, 347, 5, 221, 450, 358, 362, 5, - 357, 357, 357, 4, 349, 4, 4, 193, 347, 14, - 15, 61, 187, 188, 256, 265, 266, 297, 87, 5, - 5, 14, 15, 61, 187, 188, 256, 265, 266, 270, - 297, 87, 154, 160, 358, 470, 474, 87, 154, 5, - 468, 4, 4, 14, 61, 187, 256, 265, 297, 5, - 5, 4, 347, 358, 20, 21, 22, 48, 49, 52, + 87, 88, 93, 95, 123, 139, 150, 151, 154, 158, + 161, 182, 183, 186, 195, 210, 211, 218, 240, 242, + 265, 281, 282, 290, 297, 303, 305, 341, 410, 83, + 99, 452, 19, 44, 77, 84, 94, 95, 101, 123, + 139, 154, 162, 182, 217, 265, 276, 305, 455, 350, + 88, 115, 184, 198, 254, 295, 305, 461, 16, 26, + 111, 123, 157, 203, 216, 464, 226, 482, 5, 66, + 88, 137, 295, 341, 350, 483, 5, 484, 20, 57, + 222, 235, 296, 500, 64, 66, 181, 285, 519, 66, + 201, 337, 342, 344, 520, 39, 192, 227, 286, 348, + 358, 360, 521, 5, 295, 305, 350, 524, 70, 168, + 239, 248, 525, 88, 500, 61, 276, 299, 532, 192, + 286, 348, 533, 26, 111, 123, 203, 216, 535, 50, + 99, 134, 288, 550, 551, 4, 37, 47, 74, 148, + 185, 227, 248, 283, 299, 374, 4, 123, 202, 552, + 286, 348, 554, 16, 23, 236, 238, 359, 555, 226, + 559, 286, 348, 560, 0, 22, 48, 49, 62, 108, + 109, 221, 223, 300, 380, 5, 59, 348, 382, 262, + 5, 4, 286, 348, 383, 5, 32, 275, 384, 122, + 348, 385, 122, 348, 387, 348, 4, 191, 244, 391, + 186, 296, 339, 340, 348, 390, 350, 136, 175, 389, + 348, 78, 171, 244, 348, 392, 5, 348, 4, 240, + 394, 348, 348, 5, 223, 397, 31, 398, 5, 399, + 5, 403, 5, 31, 404, 348, 9, 10, 11, 348, + 354, 355, 356, 357, 348, 348, 40, 110, 192, 348, + 406, 348, 192, 358, 360, 348, 35, 106, 126, 127, + 128, 133, 146, 152, 163, 274, 363, 348, 4, 350, + 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, + 116, 66, 53, 71, 88, 100, 117, 121, 132, 173, + 411, 117, 413, 186, 191, 227, 251, 296, 339, 340, + 348, 400, 414, 278, 417, 168, 418, 168, 176, 420, + 65, 66, 69, 91, 168, 185, 204, 265, 334, 358, + 422, 348, 360, 425, 59, 282, 358, 426, 273, 358, + 360, 427, 33, 428, 358, 360, 429, 4, 358, 360, + 430, 45, 59, 81, 100, 116, 119, 144, 145, 197, + 205, 262, 263, 334, 434, 209, 298, 440, 5, 89, + 6, 88, 119, 432, 5, 65, 360, 431, 16, 500, + 66, 181, 285, 441, 66, 227, 442, 277, 61, 276, + 299, 443, 132, 234, 444, 37, 47, 74, 148, 185, + 248, 299, 445, 360, 89, 16, 194, 450, 358, 453, + 72, 456, 31, 457, 44, 87, 190, 458, 148, 214, + 253, 291, 459, 358, 18, 58, 114, 282, 358, 460, + 4, 191, 463, 5, 4, 6, 119, 348, 4, 5, + 240, 465, 5, 467, 5, 116, 190, 240, 263, 468, + 93, 110, 186, 481, 5, 479, 5, 263, 480, 4, + 5, 350, 350, 348, 348, 5, 4, 5, 60, 66, + 73, 75, 80, 83, 89, 99, 105, 113, 129, 148, + 164, 173, 174, 193, 214, 227, 229, 242, 247, 253, + 260, 278, 291, 292, 294, 334, 485, 5, 4, 348, + 5, 348, 40, 110, 348, 523, 350, 348, 358, 360, + 522, 348, 363, 348, 4, 359, 54, 90, 138, 240, + 526, 4, 4, 348, 148, 253, 527, 5, 358, 4, + 40, 110, 348, 534, 348, 97, 61, 119, 240, 266, + 536, 119, 549, 61, 116, 119, 155, 190, 237, 240, + 263, 266, 277, 538, 539, 61, 119, 266, 548, 5, + 4, 34, 107, 201, 531, 66, 350, 375, 66, 350, + 376, 66, 350, 377, 13, 187, 530, 348, 348, 40, + 110, 192, 221, 348, 378, 348, 263, 4, 348, 348, + 4, 558, 4, 280, 556, 4, 280, 557, 4, 363, + 122, 348, 561, 348, 348, 348, 348, 348, 348, 348, + 348, 348, 348, 348, 4, 5, 348, 12, 348, 348, + 348, 30, 94, 162, 244, 249, 362, 362, 4, 348, + 348, 4, 4, 4, 348, 348, 348, 348, 4, 4, + 5, 5, 358, 5, 348, 348, 354, 356, 356, 358, + 348, 348, 348, 348, 348, 348, 348, 358, 360, 357, + 348, 348, 357, 348, 5, 262, 103, 186, 412, 191, + 244, 415, 168, 78, 171, 244, 416, 136, 175, 401, + 401, 4, 419, 4, 421, 191, 251, 423, 176, 424, + 168, 363, 348, 358, 348, 358, 358, 363, 363, 363, + 358, 363, 348, 358, 4, 437, 4, 360, 435, 194, + 4, 165, 305, 436, 194, 358, 4, 358, 439, 5, + 5, 4, 194, 348, 4, 5, 60, 66, 113, 129, + 141, 147, 148, 153, 204, 223, 227, 229, 252, 253, + 260, 278, 334, 494, 360, 66, 446, 66, 447, 66, + 448, 221, 449, 348, 5, 222, 451, 359, 363, 5, + 358, 358, 358, 4, 350, 4, 4, 194, 348, 14, + 15, 61, 188, 189, 257, 266, 267, 298, 87, 5, + 5, 14, 15, 61, 188, 189, 257, 266, 267, 271, + 298, 87, 155, 161, 359, 471, 475, 87, 155, 5, + 469, 4, 4, 14, 61, 188, 257, 266, 298, 5, + 5, 4, 348, 359, 20, 21, 22, 48, 49, 52, 55, 62, 66, 74, 75, 82, 83, 99, 105, 108, - 109, 112, 128, 147, 170, 192, 220, 222, 227, 228, - 241, 242, 251, 252, 277, 279, 291, 293, 299, 333, - 66, 80, 89, 99, 128, 147, 192, 228, 252, 291, - 293, 4, 30, 159, 208, 233, 487, 5, 63, 104, - 230, 244, 245, 335, 336, 492, 99, 485, 17, 40, - 110, 191, 491, 4, 5, 17, 207, 286, 347, 252, - 492, 500, 122, 492, 501, 36, 40, 110, 129, 191, - 285, 347, 502, 357, 349, 91, 99, 105, 124, 147, - 155, 192, 200, 241, 252, 267, 505, 40, 110, 191, - 5, 278, 17, 207, 286, 509, 279, 349, 510, 5, - 99, 105, 294, 17, 17, 4, 347, 347, 347, 347, - 347, 362, 347, 347, 356, 347, 4, 362, 40, 110, - 191, 257, 527, 40, 110, 191, 257, 528, 4, 97, - 5, 5, 87, 4, 5, 5, 87, 5, 538, 61, - 119, 154, 265, 542, 61, 119, 265, 546, 87, 154, - 61, 119, 265, 540, 4, 61, 119, 265, 539, 5, - 5, 4, 5, 5, 5, 347, 347, 347, 347, 347, - 347, 4, 347, 552, 347, 347, 6, 358, 4, 5, - 4, 4, 5, 4, 97, 254, 363, 347, 347, 12, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 5, - 12, 347, 347, 12, 4, 12, 4, 4, 347, 347, - 347, 4, 349, 4, 4, 362, 357, 362, 347, 347, - 347, 357, 347, 356, 347, 347, 5, 5, 347, 359, - 347, 357, 357, 347, 362, 363, 363, 363, 362, 356, - 347, 362, 347, 130, 240, 350, 437, 164, 5, 4, - 362, 357, 4, 5, 4, 4, 347, 432, 347, 20, + 109, 112, 129, 148, 171, 193, 221, 223, 228, 229, + 242, 243, 252, 253, 278, 280, 292, 294, 300, 334, + 66, 80, 89, 99, 129, 148, 193, 229, 253, 292, + 294, 4, 30, 160, 209, 234, 488, 5, 63, 104, + 231, 245, 246, 336, 337, 493, 99, 486, 17, 40, + 110, 192, 492, 4, 5, 17, 208, 287, 348, 253, + 493, 501, 123, 493, 502, 36, 40, 110, 130, 192, + 286, 348, 503, 358, 350, 91, 99, 105, 125, 148, + 156, 193, 201, 242, 253, 268, 506, 40, 110, 192, + 5, 279, 17, 208, 287, 510, 280, 350, 511, 5, + 99, 105, 295, 17, 17, 4, 348, 348, 348, 348, + 348, 363, 348, 348, 357, 348, 4, 363, 40, 110, + 192, 258, 528, 40, 110, 192, 258, 529, 4, 97, + 5, 5, 87, 4, 5, 5, 87, 5, 539, 61, + 119, 155, 266, 543, 61, 119, 266, 547, 87, 155, + 61, 119, 266, 541, 4, 61, 119, 266, 540, 5, + 5, 4, 5, 5, 5, 348, 348, 348, 348, 348, + 348, 4, 348, 553, 348, 348, 6, 359, 4, 5, + 4, 4, 5, 4, 97, 255, 364, 348, 348, 12, + 348, 348, 348, 348, 348, 348, 348, 348, 348, 5, + 12, 348, 348, 12, 4, 12, 4, 4, 348, 348, + 348, 4, 350, 4, 4, 363, 358, 363, 348, 348, + 348, 358, 348, 357, 348, 348, 5, 5, 348, 360, + 348, 358, 358, 348, 363, 364, 364, 364, 363, 357, + 348, 363, 348, 131, 241, 351, 438, 165, 5, 4, + 363, 358, 4, 5, 4, 4, 348, 433, 348, 20, 21, 22, 48, 49, 52, 59, 62, 66, 74, 75, - 82, 108, 109, 112, 128, 147, 170, 179, 220, 227, - 228, 242, 252, 277, 279, 289, 299, 333, 66, 128, - 152, 228, 277, 30, 159, 208, 233, 494, 347, 20, - 203, 347, 495, 17, 347, 251, 505, 251, 203, 347, - 496, 279, 497, 17, 98, 347, 347, 5, 363, 56, - 357, 4, 5, 461, 347, 5, 5, 5, 154, 182, - 367, 367, 163, 258, 365, 4, 4, 5, 5, 465, - 263, 263, 5, 5, 5, 17, 156, 366, 366, 365, - 4, 4, 365, 5, 5, 469, 160, 332, 358, 473, - 5, 472, 5, 5, 476, 5, 477, 5, 14, 15, - 61, 187, 188, 256, 265, 266, 270, 297, 4, 4, - 5, 5, 367, 365, 4, 5, 5, 362, 82, 149, - 218, 219, 232, 271, 370, 7, 8, 347, 352, 233, - 233, 233, 105, 40, 66, 99, 105, 110, 128, 147, - 163, 192, 228, 241, 252, 279, 291, 293, 294, 333, - 486, 233, 5, 27, 165, 233, 275, 135, 105, 22, - 49, 52, 82, 109, 112, 222, 251, 22, 49, 52, - 55, 82, 109, 112, 222, 251, 277, 40, 233, 233, - 105, 5, 207, 27, 220, 36, 129, 285, 347, 255, - 261, 237, 357, 359, 505, 40, 220, 275, 237, 207, - 5, 5, 241, 27, 220, 4, 5, 5, 207, 36, - 129, 285, 347, 505, 207, 349, 4, 4, 347, 5, - 297, 22, 27, 48, 49, 51, 52, 62, 74, 75, - 82, 85, 102, 108, 109, 112, 170, 222, 227, 242, - 251, 278, 279, 299, 343, 488, 347, 347, 347, 347, - 347, 492, 357, 5, 4, 5, 347, 347, 357, 359, - 347, 349, 347, 347, 492, 5, 347, 347, 349, 5, - 17, 5, 5, 347, 347, 356, 347, 347, 347, 347, - 110, 347, 347, 110, 4, 42, 43, 168, 169, 195, - 372, 372, 61, 119, 265, 536, 372, 5, 61, 119, - 265, 541, 5, 5, 61, 119, 265, 543, 4, 5, - 5, 4, 61, 119, 265, 545, 61, 119, 265, 544, - 5, 5, 4, 5, 5, 4, 372, 372, 372, 347, - 347, 347, 347, 347, 4, 347, 357, 347, 358, 362, - 5, 5, 12, 347, 357, 359, 347, 12, 347, 347, - 347, 59, 347, 6, 4, 347, 347, 46, 264, 401, - 5, 349, 349, 362, 347, 4, 4, 4, 357, 347, - 347, 347, 347, 362, 4, 357, 363, 356, 347, 4, - 363, 347, 38, 38, 4, 359, 5, 24, 25, 97, - 364, 347, 4, 347, 5, 82, 149, 218, 219, 232, - 271, 357, 359, 233, 233, 233, 21, 233, 357, 233, - 27, 165, 233, 275, 135, 21, 233, 233, 233, 21, - 233, 27, 166, 220, 166, 255, 261, 166, 220, 283, - 505, 166, 220, 275, 4, 241, 27, 166, 220, 505, - 203, 347, 82, 149, 218, 219, 232, 271, 347, 347, - 347, 347, 347, 193, 347, 347, 20, 229, 453, 4, - 4, 347, 367, 367, 367, 4, 367, 367, 367, 14, - 15, 61, 187, 188, 256, 265, 266, 297, 366, 367, - 367, 367, 367, 367, 4, 367, 367, 4, 366, 14, - 15, 61, 187, 188, 256, 265, 266, 297, 5, 471, - 5, 475, 5, 5, 14, 15, 61, 187, 188, 256, - 265, 266, 270, 297, 5, 14, 15, 61, 187, 188, - 256, 265, 266, 270, 297, 5, 14, 15, 61, 187, - 188, 256, 265, 266, 270, 297, 14, 15, 61, 187, - 188, 256, 265, 266, 297, 263, 5, 5, 5, 366, - 366, 365, 4, 4, 365, 5, 4, 4, 367, 367, - 4, 367, 367, 5, 349, 357, 359, 5, 347, 347, - 5, 347, 5, 352, 105, 192, 241, 105, 192, 241, - 5, 347, 349, 5, 347, 357, 349, 5, 352, 233, - 233, 21, 233, 21, 233, 233, 21, 233, 301, 301, - 4, 4, 4, 486, 4, 4, 4, 301, 301, 4, - 5, 4, 347, 5, 347, 5, 352, 349, 357, 359, - 357, 359, 347, 27, 48, 51, 62, 85, 102, 343, - 368, 4, 347, 362, 356, 349, 357, 359, 357, 347, - 349, 349, 357, 359, 357, 359, 347, 349, 347, 5, - 347, 220, 220, 347, 347, 220, 347, 220, 347, 347, - 498, 506, 347, 220, 220, 347, 347, 347, 347, 347, - 347, 347, 347, 5, 297, 347, 489, 347, 347, 220, - 347, 347, 347, 347, 357, 362, 5, 357, 357, 347, - 347, 362, 356, 347, 347, 347, 357, 347, 347, 5, - 347, 347, 347, 347, 5, 5, 4, 372, 5, 5, - 4, 4, 4, 5, 5, 4, 4, 5, 5, 4, - 5, 5, 4, 347, 347, 357, 347, 362, 347, 357, - 359, 347, 362, 347, 347, 347, 347, 347, 5, 347, - 4, 6, 347, 347, 4, 357, 347, 362, 175, 360, - 347, 360, 363, 362, 357, 347, 347, 4, 347, 347, - 4, 357, 5, 5, 5, 5, 357, 362, 357, 357, - 357, 357, 359, 357, 362, 357, 357, 357, 359, 357, - 357, 357, 357, 359, 357, 357, 357, 347, 357, 357, - 357, 357, 357, 357, 357, 357, 5, 5, 5, 5, - 357, 347, 347, 4, 347, 5, 4, 347, 367, 5, - 5, 5, 365, 4, 4, 5, 367, 366, 4, 367, - 5, 5, 5, 366, 366, 365, 4, 4, 5, 14, - 15, 61, 187, 188, 256, 265, 266, 297, 14, 15, - 61, 187, 188, 256, 265, 266, 297, 14, 15, 61, - 187, 188, 256, 265, 266, 297, 263, 5, 5, 5, - 366, 366, 365, 4, 4, 365, 5, 263, 5, 5, - 5, 366, 366, 365, 4, 4, 365, 5, 263, 5, - 5, 5, 366, 366, 365, 4, 4, 365, 5, 5, - 5, 5, 366, 366, 365, 4, 4, 5, 366, 4, - 4, 366, 4, 4, 367, 5, 362, 357, 347, 347, - 357, 347, 5, 352, 5, 357, 359, 349, 5, 357, - 359, 362, 5, 352, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 4, 4, 5, 4, 4, 347, 357, - 347, 5, 352, 349, 362, 356, 362, 347, 347, 356, - 356, 362, 356, 362, 347, 362, 356, 362, 356, 347, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 55, - 66, 92, 128, 277, 279, 333, 503, 504, 505, 516, - 517, 347, 347, 347, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 357, 5, 347, 347, 347, 347, 4, - 4, 362, 363, 4, 490, 362, 362, 356, 347, 4, - 362, 372, 372, 372, 347, 347, 347, 362, 347, 356, - 347, 347, 12, 5, 5, 4, 347, 347, 4, 362, - 357, 347, 347, 363, 364, 347, 5, 347, 359, 5, - 5, 5, 5, 362, 364, 364, 364, 362, 364, 363, - 364, 364, 362, 364, 364, 364, 362, 364, 364, 362, - 357, 364, 362, 364, 364, 362, 364, 362, 5, 5, - 5, 5, 362, 4, 359, 5, 347, 4, 367, 366, - 4, 366, 5, 5, 5, 366, 366, 365, 4, 4, - 5, 5, 5, 5, 366, 366, 365, 4, 4, 5, - 5, 5, 5, 366, 366, 365, 4, 4, 5, 366, - 367, 367, 367, 367, 367, 4, 367, 367, 4, 366, - 366, 367, 367, 367, 367, 367, 4, 367, 367, 4, - 366, 366, 4, 4, 366, 4, 366, 366, 4, 4, - 4, 358, 364, 4, 357, 359, 364, 347, 357, 4, - 364, 364, 357, 4, 347, 347, 347, 347, 347, 347, - 347, 347, 347, 347, 347, 357, 359, 364, 347, 357, - 4, 356, 356, 356, 347, 357, 359, 356, 347, 356, - 356, 357, 357, 359, 356, 347, 356, 347, 347, 347, - 347, 347, 347, 352, 347, 347, 347, 344, 344, 344, - 344, 344, 344, 344, 504, 344, 352, 347, 347, 347, - 347, 352, 347, 347, 347, 347, 347, 347, 362, 347, - 297, 351, 352, 347, 347, 363, 349, 4, 4, 363, - 347, 356, 347, 59, 347, 5, 5, 347, 4, 360, - 364, 5, 4, 5, 357, 5, 363, 364, 363, 363, - 363, 4, 5, 357, 5, 5, 347, 367, 366, 367, - 367, 367, 367, 367, 4, 367, 367, 366, 4, 366, - 367, 367, 367, 367, 367, 4, 367, 367, 366, 367, - 366, 4, 367, 367, 366, 4, 367, 366, 4, 366, - 366, 362, 357, 359, 364, 4, 362, 347, 362, 347, - 347, 347, 364, 4, 362, 347, 356, 364, 347, 356, - 364, 364, 357, 352, 347, 4, 369, 369, 347, 347, - 369, 352, 369, 506, 357, 486, 5, 4, 5, 5, - 5, 4, 349, 352, 369, 369, 347, 347, 352, 347, - 347, 347, 347, 347, 356, 347, 5, 506, 347, 369, - 349, 507, 508, 5, 349, 5, 347, 5, 4, 6, - 347, 5, 32, 274, 371, 357, 5, 371, 357, 347, - 366, 367, 366, 366, 367, 367, 366, 367, 366, 366, - 347, 364, 357, 359, 357, 347, 357, 347, 357, 359, - 357, 347, 357, 364, 4, 506, 506, 351, 347, 506, - 4, 506, 362, 5, 4, 4, 506, 506, 351, 347, - 4, 506, 506, 347, 357, 506, 506, 506, 507, 513, - 514, 505, 511, 512, 5, 5, 6, 4, 185, 295, - 339, 347, 399, 357, 357, 4, 367, 367, 367, 367, - 358, 364, 364, 347, 364, 4, 364, 364, 347, 364, - 347, 506, 506, 4, 347, 506, 5, 347, 506, 4, - 347, 506, 362, 513, 515, 516, 344, 512, 5, 5, - 4, 400, 400, 362, 362, 364, 4, 357, 359, 4, - 352, 351, 347, 347, 351, 347, 357, 516, 349, 5, - 5, 347, 347, 371, 371, 5, 357, 359, 362, 357, - 359, 506, 347, 4, 506, 347, 364, 5, 347, 347, - 362, 362, 4, 506, 4, 506, 5, 5, 351, 351, - 506, 506 + 82, 108, 109, 112, 129, 148, 171, 180, 221, 223, + 228, 229, 243, 253, 278, 280, 290, 300, 334, 66, + 129, 153, 229, 278, 30, 160, 209, 234, 495, 348, + 20, 204, 348, 496, 17, 348, 252, 506, 252, 204, + 348, 497, 280, 498, 17, 98, 348, 348, 5, 364, + 56, 358, 4, 5, 462, 348, 5, 5, 5, 155, + 183, 368, 368, 164, 259, 366, 4, 4, 5, 5, + 466, 264, 264, 5, 5, 5, 17, 157, 367, 367, + 366, 4, 4, 366, 5, 5, 470, 161, 333, 359, + 474, 5, 473, 5, 5, 477, 5, 478, 5, 14, + 15, 61, 188, 189, 257, 266, 267, 271, 298, 4, + 4, 5, 5, 368, 366, 4, 5, 5, 363, 82, + 150, 219, 220, 233, 272, 371, 7, 8, 348, 353, + 234, 120, 234, 234, 105, 40, 66, 99, 105, 110, + 129, 148, 164, 193, 229, 242, 253, 280, 292, 294, + 295, 334, 487, 120, 234, 5, 27, 166, 234, 276, + 136, 105, 22, 49, 52, 82, 109, 112, 223, 252, + 22, 49, 52, 55, 82, 109, 112, 223, 252, 278, + 40, 120, 234, 234, 105, 5, 208, 27, 221, 36, + 130, 286, 348, 256, 262, 120, 238, 358, 360, 506, + 40, 221, 276, 238, 208, 5, 5, 242, 27, 221, + 4, 5, 5, 208, 36, 130, 286, 348, 506, 208, + 350, 4, 4, 348, 5, 298, 22, 27, 48, 49, + 51, 52, 62, 74, 75, 82, 85, 102, 108, 109, + 112, 171, 223, 228, 243, 252, 279, 280, 300, 344, + 489, 348, 348, 348, 348, 348, 493, 358, 5, 4, + 5, 348, 348, 358, 360, 348, 350, 348, 348, 493, + 5, 348, 348, 350, 5, 17, 5, 5, 348, 348, + 357, 348, 348, 348, 348, 110, 348, 348, 110, 4, + 42, 43, 169, 170, 196, 373, 373, 61, 119, 266, + 537, 373, 5, 61, 119, 266, 542, 5, 5, 61, + 119, 266, 544, 4, 5, 5, 4, 61, 119, 266, + 546, 61, 119, 266, 545, 5, 5, 4, 5, 5, + 4, 373, 373, 373, 348, 348, 348, 348, 348, 4, + 348, 358, 348, 359, 363, 5, 5, 12, 348, 358, + 360, 348, 12, 348, 348, 348, 59, 348, 6, 4, + 348, 348, 46, 265, 402, 5, 350, 350, 363, 348, + 4, 4, 4, 358, 348, 348, 348, 348, 363, 4, + 358, 364, 357, 348, 4, 364, 348, 38, 38, 4, + 360, 5, 24, 25, 97, 365, 348, 4, 348, 5, + 82, 150, 219, 220, 233, 272, 358, 360, 234, 120, + 234, 234, 21, 234, 358, 120, 234, 27, 166, 234, + 276, 136, 21, 234, 120, 234, 234, 21, 234, 27, + 167, 221, 167, 256, 262, 120, 167, 221, 284, 506, + 167, 221, 276, 4, 242, 27, 167, 221, 506, 204, + 348, 82, 150, 219, 220, 233, 272, 348, 348, 348, + 348, 348, 194, 348, 348, 20, 230, 454, 4, 4, + 348, 368, 368, 368, 4, 368, 368, 368, 14, 15, + 61, 188, 189, 257, 266, 267, 298, 367, 368, 368, + 368, 368, 368, 4, 368, 368, 4, 367, 14, 15, + 61, 188, 189, 257, 266, 267, 298, 5, 472, 5, + 476, 5, 5, 14, 15, 61, 188, 189, 257, 266, + 267, 271, 298, 5, 14, 15, 61, 188, 189, 257, + 266, 267, 271, 298, 5, 14, 15, 61, 188, 189, + 257, 266, 267, 271, 298, 14, 15, 61, 188, 189, + 257, 266, 267, 298, 264, 5, 5, 5, 367, 367, + 366, 4, 4, 366, 5, 4, 4, 368, 368, 4, + 368, 368, 5, 350, 358, 360, 5, 348, 350, 348, + 5, 348, 5, 353, 105, 193, 242, 105, 193, 242, + 5, 350, 348, 350, 5, 348, 358, 350, 5, 353, + 234, 234, 21, 234, 21, 234, 234, 21, 234, 302, + 302, 4, 4, 4, 487, 4, 4, 4, 302, 302, + 4, 5, 4, 350, 348, 5, 348, 5, 353, 350, + 358, 360, 358, 360, 348, 27, 48, 51, 62, 85, + 102, 344, 369, 4, 350, 348, 363, 357, 350, 358, + 360, 358, 348, 350, 350, 358, 360, 358, 360, 348, + 350, 348, 5, 348, 221, 221, 348, 348, 221, 348, + 221, 348, 348, 499, 507, 348, 221, 221, 348, 348, + 348, 348, 348, 348, 348, 348, 5, 298, 348, 490, + 348, 348, 221, 348, 348, 348, 348, 358, 363, 5, + 358, 358, 348, 348, 363, 357, 348, 348, 348, 358, + 348, 348, 5, 348, 348, 348, 348, 5, 5, 4, + 373, 5, 5, 4, 4, 4, 5, 5, 4, 4, + 5, 5, 4, 5, 5, 4, 348, 348, 358, 348, + 363, 348, 358, 360, 348, 363, 348, 348, 348, 348, + 348, 5, 348, 4, 6, 348, 348, 4, 358, 348, + 363, 176, 361, 348, 361, 364, 363, 358, 348, 348, + 4, 348, 348, 4, 358, 5, 5, 5, 5, 358, + 363, 358, 358, 358, 358, 360, 358, 363, 358, 358, + 358, 360, 358, 358, 358, 358, 360, 358, 358, 358, + 348, 358, 358, 358, 358, 358, 358, 358, 358, 5, + 5, 5, 5, 358, 348, 348, 4, 348, 5, 4, + 348, 368, 5, 5, 5, 366, 4, 4, 5, 368, + 367, 4, 368, 5, 5, 5, 367, 367, 366, 4, + 4, 5, 14, 15, 61, 188, 189, 257, 266, 267, + 298, 14, 15, 61, 188, 189, 257, 266, 267, 298, + 14, 15, 61, 188, 189, 257, 266, 267, 298, 264, + 5, 5, 5, 367, 367, 366, 4, 4, 366, 5, + 264, 5, 5, 5, 367, 367, 366, 4, 4, 366, + 5, 264, 5, 5, 5, 367, 367, 366, 4, 4, + 366, 5, 5, 5, 5, 367, 367, 366, 4, 4, + 5, 367, 4, 4, 367, 4, 4, 368, 5, 363, + 358, 348, 348, 358, 348, 5, 353, 5, 358, 360, + 350, 5, 358, 360, 363, 5, 353, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 4, 4, 5, 4, + 4, 348, 358, 348, 5, 353, 350, 363, 357, 363, + 348, 348, 357, 357, 363, 357, 363, 348, 363, 357, + 363, 357, 348, 348, 348, 348, 348, 348, 348, 348, + 348, 348, 55, 66, 92, 129, 278, 280, 334, 504, + 505, 506, 517, 518, 348, 348, 348, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 358, 5, 348, 348, + 348, 348, 4, 4, 363, 364, 4, 491, 363, 363, + 357, 348, 4, 363, 373, 373, 373, 348, 348, 348, + 363, 348, 357, 348, 348, 12, 5, 5, 4, 348, + 348, 4, 363, 358, 348, 348, 364, 365, 348, 5, + 348, 360, 5, 5, 5, 5, 363, 365, 365, 365, + 363, 365, 364, 365, 365, 363, 365, 365, 365, 363, + 365, 365, 363, 358, 365, 363, 365, 365, 363, 365, + 363, 5, 5, 5, 5, 363, 4, 360, 5, 348, + 4, 368, 367, 4, 367, 5, 5, 5, 367, 367, + 366, 4, 4, 5, 5, 5, 5, 367, 367, 366, + 4, 4, 5, 5, 5, 5, 367, 367, 366, 4, + 4, 5, 367, 368, 368, 368, 368, 368, 4, 368, + 368, 4, 367, 367, 368, 368, 368, 368, 368, 4, + 368, 368, 4, 367, 367, 4, 4, 367, 4, 367, + 367, 4, 4, 4, 359, 365, 4, 358, 360, 365, + 348, 358, 4, 365, 365, 358, 4, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 348, 348, 358, 360, + 365, 348, 358, 4, 357, 357, 357, 348, 358, 360, + 357, 348, 357, 357, 358, 358, 360, 357, 348, 357, + 348, 348, 348, 348, 348, 348, 353, 348, 348, 348, + 345, 345, 345, 345, 345, 345, 345, 505, 345, 353, + 348, 348, 348, 348, 353, 348, 348, 348, 348, 348, + 348, 363, 348, 298, 352, 353, 348, 348, 364, 350, + 4, 4, 364, 348, 357, 348, 59, 348, 5, 5, + 348, 4, 361, 365, 5, 4, 5, 358, 5, 364, + 365, 364, 364, 364, 4, 5, 358, 5, 5, 348, + 368, 367, 368, 368, 368, 368, 368, 4, 368, 368, + 367, 4, 367, 368, 368, 368, 368, 368, 4, 368, + 368, 367, 368, 367, 4, 368, 368, 367, 4, 368, + 367, 4, 367, 367, 363, 358, 360, 365, 4, 363, + 348, 363, 348, 348, 348, 365, 4, 363, 348, 357, + 365, 348, 357, 365, 365, 358, 353, 348, 4, 370, + 370, 348, 348, 370, 353, 370, 507, 358, 487, 5, + 4, 5, 5, 5, 4, 350, 353, 370, 370, 348, + 348, 353, 348, 348, 348, 348, 348, 357, 348, 5, + 507, 348, 370, 350, 508, 509, 5, 350, 5, 348, + 5, 4, 6, 348, 5, 32, 275, 372, 358, 5, + 372, 358, 348, 367, 368, 367, 367, 368, 368, 367, + 368, 367, 367, 348, 365, 358, 360, 358, 348, 358, + 348, 358, 360, 358, 348, 358, 365, 4, 507, 507, + 352, 348, 507, 4, 507, 363, 5, 4, 4, 507, + 507, 352, 348, 4, 507, 507, 348, 358, 507, 507, + 507, 508, 514, 515, 506, 512, 513, 5, 5, 6, + 4, 186, 296, 340, 348, 400, 358, 358, 4, 368, + 368, 368, 368, 359, 365, 365, 348, 365, 4, 365, + 365, 348, 365, 348, 507, 507, 4, 348, 507, 5, + 348, 507, 4, 348, 507, 363, 514, 516, 517, 345, + 513, 5, 5, 4, 401, 401, 363, 363, 365, 4, + 358, 360, 4, 353, 352, 348, 348, 352, 348, 358, + 517, 350, 5, 5, 348, 348, 372, 372, 5, 358, + 360, 363, 358, 360, 507, 348, 4, 507, 348, 365, + 5, 348, 348, 363, 363, 4, 507, 4, 507, 5, + 5, 352, 352, 507, 507 }; #define yyerrok (yyerrstatus = 0) @@ -5150,267 +5176,267 @@ yyreduce: switch (yyn) { case 5: -#line 449 "frame/parser.Y" +#line 450 "frame/parser.Y" {fr->bgColorCmd((yyvsp[(3) - (3)].str));;} break; case 7: -#line 451 "frame/parser.Y" +#line 452 "frame/parser.Y" {fr->centerCmd();;} break; case 8: -#line 452 "frame/parser.Y" +#line 453 "frame/parser.Y" {fr->clearCmd();;} break; case 10: -#line 454 "frame/parser.Y" +#line 455 "frame/parser.Y" {fr->colorbarTagCmd((yyvsp[(3) - (3)].str));;} break; case 17: -#line 461 "frame/parser.Y" +#line 462 "frame/parser.Y" {fr->DATASECCmd((yyvsp[(2) - (2)].integer));;} break; case 22: -#line 466 "frame/parser.Y" +#line 467 "frame/parser.Y" {fr->hideCmd();;} break; case 23: -#line 467 "frame/parser.Y" +#line 468 "frame/parser.Y" {fr->highliteCmd((yyvsp[(2) - (2)].integer));;} break; case 25: -#line 469 "frame/parser.Y" +#line 470 "frame/parser.Y" {fr->irafAlignCmd((yyvsp[(3) - (3)].integer));;} break; case 32: -#line 476 "frame/parser.Y" +#line 477 "frame/parser.Y" {fr->nanColorCmd((yyvsp[(3) - (3)].str));;} break; case 36: -#line 480 "frame/parser.Y" +#line 481 "frame/parser.Y" {fr->queryCursorCmd();;} break; case 38: -#line 482 "frame/parser.Y" +#line 483 "frame/parser.Y" {fr->resetCmd();;} break; case 43: -#line 487 "frame/parser.Y" +#line 488 "frame/parser.Y" {fr->showCmd();;} break; case 45: -#line 489 "frame/parser.Y" +#line 490 "frame/parser.Y" {fr->threadsCmd((yyvsp[(2) - (2)].integer));;} break; case 47: -#line 491 "frame/parser.Y" +#line 492 "frame/parser.Y" {fr->unloadFitsCmd();;} break; case 49: -#line 493 "frame/parser.Y" +#line 494 "frame/parser.Y" {fr->msg("Frame 1.0");;} break; case 54: -#line 500 "frame/parser.Y" +#line 501 "frame/parser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 55: -#line 501 "frame/parser.Y" +#line 502 "frame/parser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 56: -#line 504 "frame/parser.Y" +#line 505 "frame/parser.Y" {yydebug=1;;} break; case 57: -#line 505 "frame/parser.Y" +#line 506 "frame/parser.Y" {yydebug=0;;} break; case 58: -#line 506 "frame/parser.Y" +#line 507 "frame/parser.Y" {DebugAST=(yyvsp[(2) - (2)].integer);;} break; case 59: -#line 507 "frame/parser.Y" +#line 508 "frame/parser.Y" {DebugMosaic=(yyvsp[(2) - (2)].integer);;} break; case 60: -#line 508 "frame/parser.Y" +#line 509 "frame/parser.Y" {yydebug=(yyvsp[(2) - (2)].integer);;} break; case 61: -#line 509 "frame/parser.Y" +#line 510 "frame/parser.Y" {DebugPerf=(yyvsp[(2) - (2)].integer);;} break; case 62: -#line 510 "frame/parser.Y" +#line 511 "frame/parser.Y" {DebugWCS=(yyvsp[(2) - (2)].integer);;} break; case 63: -#line 511 "frame/parser.Y" +#line 512 "frame/parser.Y" {DebugBin=(yyvsp[(2) - (2)].integer);;} break; case 64: -#line 512 "frame/parser.Y" +#line 513 "frame/parser.Y" {DebugBlock=(yyvsp[(2) - (2)].integer);;} break; case 65: -#line 513 "frame/parser.Y" +#line 514 "frame/parser.Y" {DebugCompress=(yyvsp[(2) - (2)].integer);;} break; case 66: -#line 514 "frame/parser.Y" +#line 515 "frame/parser.Y" {DebugCrop=(yyvsp[(2) - (2)].integer);;} break; case 67: -#line 515 "frame/parser.Y" +#line 516 "frame/parser.Y" {DebugGZ=(yyvsp[(2) - (2)].integer);;} break; case 68: -#line 516 "frame/parser.Y" +#line 517 "frame/parser.Y" {DebugRGB=(yyvsp[(2) - (2)].integer);;} break; case 69: -#line 519 "frame/parser.Y" +#line 520 "frame/parser.Y" {(yyval.integer)=((yyvsp[(1) - (1)].integer) ? 1 : 0);;} break; case 70: -#line 521 "frame/parser.Y" +#line 522 "frame/parser.Y" {(yyval.integer)=1;;} break; case 71: -#line 522 "frame/parser.Y" +#line 523 "frame/parser.Y" {(yyval.integer)=1;;} break; case 72: -#line 523 "frame/parser.Y" +#line 524 "frame/parser.Y" {(yyval.integer)=1;;} break; case 73: -#line 524 "frame/parser.Y" +#line 525 "frame/parser.Y" {(yyval.integer)=1;;} break; case 74: -#line 526 "frame/parser.Y" +#line 527 "frame/parser.Y" {(yyval.integer)=0;;} break; case 75: -#line 527 "frame/parser.Y" +#line 528 "frame/parser.Y" {(yyval.integer)=0;;} break; case 76: -#line 528 "frame/parser.Y" +#line 529 "frame/parser.Y" {(yyval.integer)=0;;} break; case 77: -#line 529 "frame/parser.Y" +#line 530 "frame/parser.Y" {(yyval.integer)=0;;} break; case 78: -#line 532 "frame/parser.Y" +#line 533 "frame/parser.Y" {(yyval.integer) = Base::ROOTBASE;;} break; case 79: -#line 533 "frame/parser.Y" +#line 534 "frame/parser.Y" {(yyval.integer) = Base::ROOTBASE;;} break; case 80: -#line 534 "frame/parser.Y" +#line 535 "frame/parser.Y" {(yyval.integer) = Base::FULLBASE;;} break; case 81: -#line 535 "frame/parser.Y" +#line 536 "frame/parser.Y" {(yyval.integer) = Base::ROOT;;} break; case 82: -#line 536 "frame/parser.Y" +#line 537 "frame/parser.Y" {(yyval.integer) = Base::FULL;;} break; case 83: -#line 539 "frame/parser.Y" +#line 540 "frame/parser.Y" {(yyval.real) = 0;;} break; case 84: -#line 540 "frame/parser.Y" +#line 541 "frame/parser.Y" {(yyval.real) = (yyvsp[(1) - (1)].real);;} break; case 85: -#line 543 "frame/parser.Y" +#line 544 "frame/parser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 86: -#line 544 "frame/parser.Y" +#line 545 "frame/parser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 87: -#line 545 "frame/parser.Y" +#line 546 "frame/parser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 88: -#line 548 "frame/parser.Y" +#line 549 "frame/parser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 89: -#line 551 "frame/parser.Y" +#line 552 "frame/parser.Y" {(yyval.real) = parseHMSStr((yyvsp[(1) - (1)].str));;} break; case 90: -#line 554 "frame/parser.Y" +#line 555 "frame/parser.Y" {(yyval.real) = parseDMSStr((yyvsp[(1) - (1)].str));;} break; case 91: -#line 558 "frame/parser.Y" +#line 559 "frame/parser.Y" { Vector r; if (currentSky == Coord::GALACTIC || currentSky == Coord::ECLIPTIC) @@ -5425,7 +5451,7 @@ yyreduce: break; case 92: -#line 570 "frame/parser.Y" +#line 571 "frame/parser.Y" { Vector r = Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)); (yyval.vector)[0] = r[0]; @@ -5435,7 +5461,7 @@ yyreduce: break; case 93: -#line 577 "frame/parser.Y" +#line 578 "frame/parser.Y" { Vector r = Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)); (yyval.vector)[0] = r[0]; @@ -5445,7 +5471,7 @@ yyreduce: break; case 94: -#line 584 "frame/parser.Y" +#line 585 "frame/parser.Y" { (yyval.vector)[0] = (yyvsp[(1) - (2)].real); (yyval.vector)[1] = (yyvsp[(2) - (2)].real); @@ -5454,835 +5480,835 @@ yyreduce: break; case 95: -#line 591 "frame/parser.Y" +#line 592 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::IMAGE;;} break; case 96: -#line 592 "frame/parser.Y" +#line 593 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::PHYSICAL;;} break; case 97: -#line 593 "frame/parser.Y" +#line 594 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::DETECTOR;;} break; case 98: -#line 594 "frame/parser.Y" +#line 595 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::AMPLIFIER;;} break; case 99: -#line 595 "frame/parser.Y" +#line 596 "frame/parser.Y" {(yyval.integer) = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer);;} break; case 100: -#line 598 "frame/parser.Y" +#line 599 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCS;;} break; case 101: -#line 599 "frame/parser.Y" +#line 600 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSA;;} break; case 102: -#line 600 "frame/parser.Y" +#line 601 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSB;;} break; case 103: -#line 601 "frame/parser.Y" +#line 602 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSC;;} break; case 104: -#line 602 "frame/parser.Y" +#line 603 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSD;;} break; case 105: -#line 603 "frame/parser.Y" +#line 604 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSE;;} break; case 106: -#line 604 "frame/parser.Y" +#line 605 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSF;;} break; case 107: -#line 605 "frame/parser.Y" +#line 606 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSG;;} break; case 108: -#line 606 "frame/parser.Y" +#line 607 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSH;;} break; case 109: -#line 607 "frame/parser.Y" +#line 608 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSI;;} break; case 110: -#line 608 "frame/parser.Y" +#line 609 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSJ;;} break; case 111: -#line 609 "frame/parser.Y" +#line 610 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSK;;} break; case 112: -#line 610 "frame/parser.Y" +#line 611 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSL;;} break; case 113: -#line 611 "frame/parser.Y" +#line 612 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSM;;} break; case 114: -#line 612 "frame/parser.Y" +#line 613 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSN;;} break; case 115: -#line 613 "frame/parser.Y" +#line 614 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSO;;} break; case 116: -#line 614 "frame/parser.Y" +#line 615 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSP;;} break; case 117: -#line 615 "frame/parser.Y" +#line 616 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSQ;;} break; case 118: -#line 616 "frame/parser.Y" +#line 617 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSR;;} break; case 119: -#line 617 "frame/parser.Y" +#line 618 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSS;;} break; case 120: -#line 618 "frame/parser.Y" +#line 619 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCST;;} break; case 121: -#line 619 "frame/parser.Y" +#line 620 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSU;;} break; case 122: -#line 620 "frame/parser.Y" +#line 621 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSV;;} break; case 123: -#line 621 "frame/parser.Y" +#line 622 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSW;;} break; case 124: -#line 622 "frame/parser.Y" +#line 623 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSX;;} break; case 125: -#line 623 "frame/parser.Y" +#line 624 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSY;;} break; case 126: -#line 624 "frame/parser.Y" +#line 625 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCSZ;;} break; case 127: -#line 625 "frame/parser.Y" +#line 626 "frame/parser.Y" {(yyval.integer) = currentCoord = Coord::WCS0;;} break; case 128: -#line 628 "frame/parser.Y" +#line 629 "frame/parser.Y" {(yyval.integer) = Coord::CANVAS;;} break; case 129: -#line 629 "frame/parser.Y" +#line 630 "frame/parser.Y" {(yyval.integer) = Coord::PANNER;;} break; case 130: -#line 632 "frame/parser.Y" +#line 633 "frame/parser.Y" {(yyval.integer) = FrScale::LINEARSCALE;;} break; case 131: -#line 633 "frame/parser.Y" +#line 634 "frame/parser.Y" {(yyval.integer) = FrScale::LOGSCALE;;} break; case 132: -#line 634 "frame/parser.Y" +#line 635 "frame/parser.Y" {(yyval.integer) = FrScale::POWSCALE;;} break; case 133: -#line 635 "frame/parser.Y" +#line 636 "frame/parser.Y" {(yyval.integer) = FrScale::SQRTSCALE;;} break; case 134: -#line 636 "frame/parser.Y" +#line 637 "frame/parser.Y" {(yyval.integer) = FrScale::SQUAREDSCALE;;} break; case 135: -#line 637 "frame/parser.Y" +#line 638 "frame/parser.Y" {(yyval.integer) = FrScale::ASINHSCALE;;} break; case 136: -#line 638 "frame/parser.Y" +#line 639 "frame/parser.Y" {(yyval.integer) = FrScale::SINHSCALE;;} break; case 137: -#line 639 "frame/parser.Y" +#line 640 "frame/parser.Y" {(yyval.integer) = FrScale::HISTEQUSCALE;;} break; case 138: -#line 642 "frame/parser.Y" +#line 643 "frame/parser.Y" {(yyval.integer)=FrScale::SCAN;;} break; case 139: -#line 643 "frame/parser.Y" +#line 644 "frame/parser.Y" {(yyval.integer)=FrScale::SCAN;;} break; case 140: -#line 644 "frame/parser.Y" +#line 645 "frame/parser.Y" {(yyval.integer)=FrScale::SAMPLE;;} break; case 141: -#line 645 "frame/parser.Y" +#line 646 "frame/parser.Y" {(yyval.integer)=FrScale::DATAMIN;;} break; case 142: -#line 646 "frame/parser.Y" +#line 647 "frame/parser.Y" {(yyval.integer)=FrScale::IRAFMIN;;} break; case 143: -#line 649 "frame/parser.Y" +#line 650 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK5;;} break; case 144: -#line 650 "frame/parser.Y" +#line 651 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK4;;} break; case 145: -#line 651 "frame/parser.Y" +#line 652 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK4_NO_E;;} break; case 146: -#line 652 "frame/parser.Y" +#line 653 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK4;;} break; case 147: -#line 653 "frame/parser.Y" +#line 654 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK5;;} break; case 148: -#line 654 "frame/parser.Y" +#line 655 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::FK5;;} break; case 149: -#line 655 "frame/parser.Y" +#line 656 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::ICRS;;} break; case 150: -#line 656 "frame/parser.Y" +#line 657 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::GALACTIC;;} break; case 151: -#line 657 "frame/parser.Y" +#line 658 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::SUPERGALACTIC;;} break; case 152: -#line 658 "frame/parser.Y" +#line 659 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::ECLIPTIC;;} break; case 153: -#line 659 "frame/parser.Y" +#line 660 "frame/parser.Y" {(yyval.integer) = currentSky = Coord::HELIOECLIPTIC;;} break; case 154: -#line 662 "frame/parser.Y" +#line 663 "frame/parser.Y" {(yyval.integer)=Coord::DEGREES;;} break; case 155: -#line 663 "frame/parser.Y" +#line 664 "frame/parser.Y" {(yyval.integer)=Coord::DEGREES;;} break; case 156: -#line 664 "frame/parser.Y" +#line 665 "frame/parser.Y" {(yyval.integer)=Coord::SEXAGESIMAL;;} break; case 157: -#line 667 "frame/parser.Y" +#line 668 "frame/parser.Y" {(yyval.integer)=Coord::DEGREE;;} break; case 158: -#line 668 "frame/parser.Y" +#line 669 "frame/parser.Y" {(yyval.integer)=Coord::DEGREE;;} break; case 159: -#line 669 "frame/parser.Y" +#line 670 "frame/parser.Y" {(yyval.integer)=Coord::ARCMIN;;} break; case 160: -#line 670 "frame/parser.Y" +#line 671 "frame/parser.Y" {(yyval.integer)=Coord::ARCSEC;;} break; case 161: -#line 673 "frame/parser.Y" +#line 674 "frame/parser.Y" {(yyval.integer) = Base::SHMID;;} break; case 162: -#line 674 "frame/parser.Y" +#line 675 "frame/parser.Y" {(yyval.integer) = Base::SHMID;;} break; case 163: -#line 675 "frame/parser.Y" +#line 676 "frame/parser.Y" {(yyval.integer) = Base::KEY;;} break; case 164: -#line 678 "frame/parser.Y" +#line 679 "frame/parser.Y" {;} break; case 165: -#line 679 "frame/parser.Y" +#line 680 "frame/parser.Y" {;} break; case 166: -#line 680 "frame/parser.Y" +#line 681 "frame/parser.Y" {;} break; case 167: -#line 683 "frame/parser.Y" +#line 684 "frame/parser.Y" {(yyval.integer) = Base::IMG;;} break; case 168: -#line 684 "frame/parser.Y" +#line 685 "frame/parser.Y" {(yyval.integer) = Base::IMG;;} break; case 169: -#line 685 "frame/parser.Y" +#line 686 "frame/parser.Y" {(yyval.integer) = Base::MASK;;} break; case 170: -#line 688 "frame/parser.Y" +#line 689 "frame/parser.Y" {(yyval.integer) = Point::CIRCLE;;} break; case 171: -#line 689 "frame/parser.Y" +#line 690 "frame/parser.Y" {(yyval.integer) = Point::CIRCLE;;} break; case 172: -#line 690 "frame/parser.Y" +#line 691 "frame/parser.Y" {(yyval.integer) = Point::BOX;;} break; case 173: -#line 691 "frame/parser.Y" +#line 692 "frame/parser.Y" {(yyval.integer) = Point::DIAMOND;;} break; case 174: -#line 692 "frame/parser.Y" +#line 693 "frame/parser.Y" {(yyval.integer) = Point::CROSS;;} break; case 175: -#line 693 "frame/parser.Y" +#line 694 "frame/parser.Y" {(yyval.integer) = Point::EX;;} break; case 176: -#line 694 "frame/parser.Y" +#line 695 "frame/parser.Y" {(yyval.integer) = Point::ARROW;;} break; case 177: -#line 695 "frame/parser.Y" +#line 696 "frame/parser.Y" {(yyval.integer) = Point::BOXCIRCLE;;} break; case 178: -#line 698 "frame/parser.Y" +#line 699 "frame/parser.Y" {(yyval.integer) = POINTSIZE;;} break; case 179: -#line 699 "frame/parser.Y" +#line 700 "frame/parser.Y" {(yyval.integer) = (yyvsp[(1) - (1)].integer);;} break; case 180: -#line 702 "frame/parser.Y" +#line 703 "frame/parser.Y" {(yyval.integer) = Marker::PANDA;;} break; case 181: -#line 703 "frame/parser.Y" +#line 704 "frame/parser.Y" {(yyval.integer) = Marker::HISTOGRAM;;} break; case 182: -#line 704 "frame/parser.Y" +#line 705 "frame/parser.Y" {(yyval.integer) = Marker::PLOT2D;;} break; case 183: -#line 705 "frame/parser.Y" +#line 706 "frame/parser.Y" {(yyval.integer) = Marker::PLOT3D;;} break; case 184: -#line 706 "frame/parser.Y" +#line 707 "frame/parser.Y" {(yyval.integer) = Marker::RADIAL;;} break; case 185: -#line 707 "frame/parser.Y" +#line 708 "frame/parser.Y" {(yyval.integer) = Marker::STATS;;} break; case 186: -#line 710 "frame/parser.Y" +#line 711 "frame/parser.Y" {(yyval.integer) = Marker::AVERAGE;;} break; case 187: -#line 711 "frame/parser.Y" +#line 712 "frame/parser.Y" {(yyval.integer) = Marker::AVERAGE;;} break; case 188: -#line 712 "frame/parser.Y" +#line 713 "frame/parser.Y" {(yyval.integer) = Marker::SUM;;} break; case 189: -#line 715 "frame/parser.Y" +#line 716 "frame/parser.Y" {(yyval.integer) = FitsFile::NATIVE;;} break; case 190: -#line 716 "frame/parser.Y" +#line 717 "frame/parser.Y" {(yyval.integer) = FitsFile::NATIVE;;} break; case 191: -#line 717 "frame/parser.Y" +#line 718 "frame/parser.Y" {(yyval.integer) = FitsFile::BIG;;} break; case 192: -#line 718 "frame/parser.Y" +#line 719 "frame/parser.Y" {(yyval.integer) = FitsFile::BIG;;} break; case 193: -#line 719 "frame/parser.Y" +#line 720 "frame/parser.Y" {(yyval.integer) = FitsFile::LITTLE;;} break; case 194: -#line 720 "frame/parser.Y" +#line 721 "frame/parser.Y" {(yyval.integer) = FitsFile::LITTLE;;} break; case 199: -#line 727 "frame/parser.Y" +#line 728 "frame/parser.Y" {fr->set3dRenderMethodCmd((yyvsp[(2) - (2)].integer));;} break; case 200: -#line 728 "frame/parser.Y" +#line 729 "frame/parser.Y" {fr->set3dRenderBackgroundCmd((yyvsp[(2) - (2)].integer));;} break; case 201: -#line 729 "frame/parser.Y" +#line 730 "frame/parser.Y" {fr->set3dScaleCmd((yyvsp[(2) - (2)].real));;} break; case 202: -#line 730 "frame/parser.Y" +#line 731 "frame/parser.Y" {fr->set3dPreserveCmd();;} break; case 203: -#line 732 "frame/parser.Y" +#line 733 "frame/parser.Y" {/* needed for compatibility with old version of backup */;} break; case 204: -#line 735 "frame/parser.Y" +#line 736 "frame/parser.Y" {fr->set3dBorderCmd((yyvsp[(1) - (1)].integer));;} break; case 205: -#line 736 "frame/parser.Y" +#line 737 "frame/parser.Y" {fr->set3dBorderColorCmd((yyvsp[(2) - (2)].str));;} break; case 206: -#line 739 "frame/parser.Y" +#line 740 "frame/parser.Y" {fr->set3dCompassCmd((yyvsp[(1) - (1)].integer));;} break; case 207: -#line 740 "frame/parser.Y" +#line 741 "frame/parser.Y" {fr->set3dCompassColorCmd((yyvsp[(2) - (2)].str));;} break; case 208: -#line 743 "frame/parser.Y" +#line 744 "frame/parser.Y" {fr->set3dHighliteCmd((yyvsp[(1) - (1)].integer));;} break; case 209: -#line 744 "frame/parser.Y" +#line 745 "frame/parser.Y" {fr->set3dHighliteColorCmd((yyvsp[(2) - (2)].str));;} break; case 210: -#line 747 "frame/parser.Y" +#line 748 "frame/parser.Y" {fr->set3dViewCmd((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real));;} break; case 211: -#line 749 "frame/parser.Y" +#line 750 "frame/parser.Y" {fr->set3dViewPointCmd(Vector3d((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 212: -#line 750 "frame/parser.Y" +#line 751 "frame/parser.Y" {fr->view3dBeginCmd((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real));;} break; case 213: -#line 751 "frame/parser.Y" +#line 752 "frame/parser.Y" {fr->view3dMotionCmd((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real));;} break; case 214: -#line 752 "frame/parser.Y" +#line 753 "frame/parser.Y" {fr->view3dEndCmd((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real));;} break; case 215: -#line 755 "frame/parser.Y" +#line 756 "frame/parser.Y" {fr->analysisMarkersResetCmd();;} break; case 217: -#line 760 "frame/parser.Y" +#line 761 "frame/parser.Y" {fr->analysisMarkersSelectCmd("circle", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 218: -#line 762 "frame/parser.Y" +#line 763 "frame/parser.Y" {fr->analysisMarkersSelectCmd("ellipse", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 219: -#line 764 "frame/parser.Y" +#line 765 "frame/parser.Y" {fr->analysisMarkersSelectCmd("box", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 220: -#line 766 "frame/parser.Y" +#line 767 "frame/parser.Y" {fr->analysisMarkersSelectCmd("polygon", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 221: -#line 768 "frame/parser.Y" +#line 769 "frame/parser.Y" {fr->analysisMarkersSelectCmd("point", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 222: -#line 770 "frame/parser.Y" +#line 771 "frame/parser.Y" {fr->analysisMarkersSelectCmd("vector", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 223: -#line 772 "frame/parser.Y" +#line 773 "frame/parser.Y" {fr->analysisMarkersSelectCmd("annulus", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 224: -#line 774 "frame/parser.Y" +#line 775 "frame/parser.Y" {fr->analysisMarkersSelectCmd("ellipseannulus", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 225: -#line 776 "frame/parser.Y" +#line 777 "frame/parser.Y" {fr->analysisMarkersSelectCmd("boxannulus", fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::CANVAS));;} break; case 227: -#line 780 "frame/parser.Y" +#line 781 "frame/parser.Y" {fr->binColsCmd((yyvsp[(2) - (4)].str),(yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].str));;} break; case 228: -#line 781 "frame/parser.Y" +#line 782 "frame/parser.Y" {fr->binDepthCmd((yyvsp[(2) - (2)].integer));;} break; case 231: -#line 784 "frame/parser.Y" +#line 785 "frame/parser.Y" {fr->binBufferSizeCmd((yyvsp[(3) - (3)].integer));;} break; case 233: -#line 786 "frame/parser.Y" +#line 787 "frame/parser.Y" {fr->binFilterCmd((yyvsp[(2) - (2)].str));;} break; case 234: -#line 789 "frame/parser.Y" +#line 790 "frame/parser.Y" {fr->binAboutCmd();;} break; case 235: -#line 790 "frame/parser.Y" +#line 791 "frame/parser.Y" {fr->binAboutCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 236: -#line 793 "frame/parser.Y" +#line 794 "frame/parser.Y" {fr->binFactorCmd(Vector((yyvsp[(1) - (1)].real),(yyvsp[(1) - (1)].real)));;} break; case 237: -#line 794 "frame/parser.Y" +#line 795 "frame/parser.Y" {fr->binFactorCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 238: -#line 796 "frame/parser.Y" +#line 797 "frame/parser.Y" {fr->binFactorAboutCmd(Vector((yyvsp[(1) - (4)].real),(yyvsp[(1) - (4)].real)), Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; case 239: -#line 798 "frame/parser.Y" +#line 799 "frame/parser.Y" {fr->binFactorAboutCmd(Vector((yyvsp[(1) - (5)].real),(yyvsp[(2) - (5)].real)), Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)));;} break; case 240: -#line 799 "frame/parser.Y" +#line 800 "frame/parser.Y" {fr->binFactorToCmd(Vector((yyvsp[(2) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 241: -#line 800 "frame/parser.Y" +#line 801 "frame/parser.Y" {fr->binFactorToCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; case 242: -#line 802 "frame/parser.Y" +#line 803 "frame/parser.Y" {fr->binFactorToAboutCmd(Vector((yyvsp[(2) - (5)].real),(yyvsp[(2) - (5)].real)), Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)));;} break; case 243: -#line 804 "frame/parser.Y" +#line 805 "frame/parser.Y" {fr->binFactorToAboutCmd(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)), Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 244: -#line 807 "frame/parser.Y" +#line 808 "frame/parser.Y" {fr->binFunctionCmd(FitsHist::AVERAGE);;} break; case 245: -#line 808 "frame/parser.Y" +#line 809 "frame/parser.Y" {fr->binFunctionCmd(FitsHist::SUM);;} break; case 246: -#line 811 "frame/parser.Y" +#line 812 "frame/parser.Y" {fr->binToFitCmd();;} break; case 247: -#line 813 "frame/parser.Y" +#line 814 "frame/parser.Y" {fr->binCmd(Vector((yyvsp[(1) - (7)].real),(yyvsp[(2) - (7)].real)), (yyvsp[(5) - (7)].str), (yyvsp[(6) - (7)].str), (yyvsp[(7) - (7)].str));;} break; case 248: -#line 816 "frame/parser.Y" +#line 817 "frame/parser.Y" {fr->binCmd(Vector((yyvsp[(1) - (11)].real),(yyvsp[(2) - (11)].real)), (yyvsp[(3) - (11)].integer), Vector((yyvsp[(4) - (11)].real),(yyvsp[(5) - (11)].real)), (yyvsp[(8) - (11)].str), (yyvsp[(9) - (11)].str), (yyvsp[(10) - (11)].str), (yyvsp[(11) - (11)].str));;} break; case 249: -#line 818 "frame/parser.Y" +#line 819 "frame/parser.Y" {fr->binCmd(Vector((yyvsp[(1) - (8)].real),(yyvsp[(2) - (8)].real)), Vector((yyvsp[(4) - (8)].real),(yyvsp[(5) - (8)].real)), (yyvsp[(6) - (8)].str), (yyvsp[(7) - (8)].str), (yyvsp[(8) - (8)].str));;} break; case 250: -#line 821 "frame/parser.Y" +#line 822 "frame/parser.Y" {fr->binCmd(Vector((yyvsp[(1) - (12)].real),(yyvsp[(2) - (12)].real)), (yyvsp[(3) - (12)].integer), Vector((yyvsp[(4) - (12)].real),(yyvsp[(5) - (12)].real)), Vector((yyvsp[(7) - (12)].real),(yyvsp[(8) - (12)].real)), (yyvsp[(9) - (12)].str), (yyvsp[(10) - (12)].str), (yyvsp[(11) - (12)].str), (yyvsp[(12) - (12)].str));;} break; case 251: -#line 825 "frame/parser.Y" +#line 826 "frame/parser.Y" {fr->blockCmd(Vector((yyvsp[(1) - (1)].real),(yyvsp[(1) - (1)].real)));;} break; case 252: -#line 826 "frame/parser.Y" +#line 827 "frame/parser.Y" {fr->blockCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 254: -#line 830 "frame/parser.Y" +#line 831 "frame/parser.Y" {fr->blockToFitCmd();;} break; case 255: -#line 831 "frame/parser.Y" +#line 832 "frame/parser.Y" {fr->blockToCmd(Vector((yyvsp[(1) - (1)].real),(yyvsp[(1) - (1)].real)));;} break; case 256: -#line 832 "frame/parser.Y" +#line 833 "frame/parser.Y" {fr->blockToCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 260: -#line 838 "frame/parser.Y" +#line 839 "frame/parser.Y" {fr->clipUserCmd((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real));;} break; case 262: -#line 841 "frame/parser.Y" +#line 842 "frame/parser.Y" { // backward compatibility with backup ;} break; case 263: -#line 846 "frame/parser.Y" +#line 847 "frame/parser.Y" {fr->clipScopeCmd(FrScale::GLOBAL);;} break; case 264: -#line 847 "frame/parser.Y" +#line 848 "frame/parser.Y" {fr->clipScopeCmd(FrScale::LOCAL);;} break; case 265: -#line 850 "frame/parser.Y" +#line 851 "frame/parser.Y" {fr->clipModeCmd((yyvsp[(1) - (1)].real));;} break; case 266: -#line 851 "frame/parser.Y" +#line 852 "frame/parser.Y" {fr->clipModeCmd(FrScale::MINMAX);;} break; case 267: -#line 852 "frame/parser.Y" +#line 853 "frame/parser.Y" {fr->clipModeCmd(FrScale::ZSCALE);;} break; case 268: -#line 853 "frame/parser.Y" +#line 854 "frame/parser.Y" {fr->clipModeCmd(FrScale::ZMAX);;} break; case 269: -#line 854 "frame/parser.Y" +#line 855 "frame/parser.Y" {fr->clipModeCmd(FrScale::USERCLIP);;} break; case 270: -#line 857 "frame/parser.Y" +#line 858 "frame/parser.Y" {fr->clipMinMaxCmd((FrScale::MinMaxMode)(yyvsp[(2) - (2)].integer),(yyvsp[(1) - (2)].integer));;} break; case 271: -#line 858 "frame/parser.Y" +#line 859 "frame/parser.Y" {fr->clipMinMaxModeCmd((FrScale::MinMaxMode)(yyvsp[(2) - (2)].integer));;} break; case 272: -#line 859 "frame/parser.Y" +#line 860 "frame/parser.Y" {fr->clipMinMaxSampleCmd((yyvsp[(2) - (2)].integer));;} break; case 273: -#line 862 "frame/parser.Y" +#line 863 "frame/parser.Y" {fr->clipZScaleCmd((yyvsp[(1) - (3)].real),(yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; case 274: -#line 864 "frame/parser.Y" +#line 865 "frame/parser.Y" { // backward compatibility with backup fr->clipZScaleContrastCmd((yyvsp[(2) - (2)].real)); @@ -6290,7 +6316,7 @@ yyreduce: break; case 275: -#line 869 "frame/parser.Y" +#line 870 "frame/parser.Y" { // backward compatibility with backup fr->clipZScaleSampleCmd((yyvsp[(2) - (2)].integer)); @@ -6298,7 +6324,7 @@ yyreduce: break; case 276: -#line 874 "frame/parser.Y" +#line 875 "frame/parser.Y" { // backward compatibility with backup fr->clipZScaleLineCmd((yyvsp[(2) - (2)].integer)); @@ -6306,82 +6332,82 @@ yyreduce: break; case 277: -#line 881 "frame/parser.Y" +#line 882 "frame/parser.Y" {fr->colormapCmd((yyvsp[(1) - (6)].integer), (yyvsp[(2) - (6)].real), (yyvsp[(3) - (6)].real), (yyvsp[(4) - (6)].integer), (unsigned char*)(yyvsp[(5) - (6)].ptr), (yyvsp[(6) - (6)].integer));;} break; case 278: -#line 883 "frame/parser.Y" +#line 884 "frame/parser.Y" {fr->colormapCmd((yyvsp[(2) - (10)].real),(yyvsp[(3) - (10)].real),(yyvsp[(4) - (10)].real),(yyvsp[(5) - (10)].real),(yyvsp[(6) - (10)].real),(yyvsp[(7) - (10)].real),(yyvsp[(8) - (10)].integer),(unsigned char*)(yyvsp[(9) - (10)].ptr),(yyvsp[(10) - (10)].integer));;} break; case 279: -#line 884 "frame/parser.Y" +#line 885 "frame/parser.Y" {fr->colormapBeginCmd();;} break; case 281: -#line 886 "frame/parser.Y" +#line 887 "frame/parser.Y" {fr->colormapEndCmd();;} break; case 282: -#line 890 "frame/parser.Y" +#line 891 "frame/parser.Y" {fr->colormapMotionCmd((yyvsp[(1) - (6)].integer), (yyvsp[(2) - (6)].real), (yyvsp[(3) - (6)].real), (yyvsp[(4) - (6)].integer), (unsigned char*)(yyvsp[(5) - (6)].ptr), (yyvsp[(6) - (6)].integer));;} break; case 283: -#line 892 "frame/parser.Y" +#line 893 "frame/parser.Y" {fr->colormapMotionCmd((yyvsp[(2) - (10)].real),(yyvsp[(3) - (10)].real),(yyvsp[(4) - (10)].real),(yyvsp[(5) - (10)].real),(yyvsp[(6) - (10)].real),(yyvsp[(7) - (10)].real),(yyvsp[(8) - (10)].integer),(unsigned char*)(yyvsp[(9) - (10)].ptr),(yyvsp[(10) - (10)].integer));;} break; case 284: -#line 894 "frame/parser.Y" +#line 895 "frame/parser.Y" {fr->colorScaleCmd((FrScale::ColorScaleType)(yyvsp[(1) - (1)].integer));;} break; case 285: -#line 895 "frame/parser.Y" +#line 896 "frame/parser.Y" {fr->colorScaleLogCmd((yyvsp[(2) - (2)].real));;} break; case 291: -#line 906 "frame/parser.Y" +#line 907 "frame/parser.Y" {fr->contourCreateCmd((yyvsp[(1) - (13)].str),(yyvsp[(2) - (13)].integer),(yyvsp[(3) - (13)].integer),(FVContour::Method)(yyvsp[(4) - (13)].integer),(yyvsp[(5) - (13)].integer),(yyvsp[(6) - (13)].integer),(FrScale::ColorScaleType)(yyvsp[(7) - (13)].integer),(yyvsp[(8) - (13)].real),(FrScale::ClipMode)(yyvsp[(9) - (13)].integer),100,(FrScale::ClipScope)(yyvsp[(10) - (13)].integer),(yyvsp[(11) - (13)].real),(yyvsp[(12) - (13)].real),(yyvsp[(13) - (13)].str));;} break; case 292: -#line 908 "frame/parser.Y" +#line 909 "frame/parser.Y" {fr->contourCreateCmd((yyvsp[(1) - (13)].str),(yyvsp[(2) - (13)].integer),(yyvsp[(3) - (13)].integer),(FVContour::Method)(yyvsp[(4) - (13)].integer),(yyvsp[(5) - (13)].integer),(yyvsp[(6) - (13)].integer),(FrScale::ColorScaleType)(yyvsp[(7) - (13)].integer),(yyvsp[(8) - (13)].real),FrScale::AUTOCUT,(yyvsp[(9) - (13)].real),(FrScale::ClipScope)(yyvsp[(10) - (13)].integer),(yyvsp[(11) - (13)].real),(yyvsp[(12) - (13)].real),(yyvsp[(13) - (13)].str));;} break; case 293: -#line 909 "frame/parser.Y" +#line 910 "frame/parser.Y" {fr->contourCreatePolygonCmd();;} break; case 294: -#line 912 "frame/parser.Y" +#line 913 "frame/parser.Y" {fr->contourDeleteCmd();;} break; case 295: -#line 913 "frame/parser.Y" +#line 914 "frame/parser.Y" {fr->contourDeleteAuxCmd();;} break; case 296: -#line 916 "frame/parser.Y" +#line 917 "frame/parser.Y" {fr->contourLoadCmd((yyvsp[(1) - (1)].str));;} break; case 297: -#line 917 "frame/parser.Y" +#line 918 "frame/parser.Y" {fr->contourLoadCmd((yyvsp[(1) - (4)].str),(yyvsp[(2) - (4)].str),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 298: -#line 919 "frame/parser.Y" +#line 920 "frame/parser.Y" { // backward compatibility with backup fr->contourLoadCmd((yyvsp[(4) - (6)].str),(Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyFrame)(yyvsp[(6) - (6)].integer),(yyvsp[(1) - (6)].str),(yyvsp[(2) - (6)].integer),(yyvsp[(3) - (6)].integer)); @@ -6389,333 +6415,333 @@ yyreduce: break; case 299: -#line 925 "frame/parser.Y" +#line 926 "frame/parser.Y" {(yyval.integer) = FrScale::MINMAX;;} break; case 300: -#line 926 "frame/parser.Y" +#line 927 "frame/parser.Y" {(yyval.integer) = FrScale::ZSCALE;;} break; case 301: -#line 927 "frame/parser.Y" +#line 928 "frame/parser.Y" {(yyval.integer) = FrScale::ZMAX;;} break; case 302: -#line 928 "frame/parser.Y" +#line 929 "frame/parser.Y" {(yyval.integer) = FrScale::USERCLIP;;} break; case 303: -#line 931 "frame/parser.Y" +#line 932 "frame/parser.Y" {(yyval.integer) = FrScale::GLOBAL;;} break; case 304: -#line 932 "frame/parser.Y" +#line 933 "frame/parser.Y" {(yyval.integer) = FrScale::LOCAL;;} break; case 305: -#line 935 "frame/parser.Y" +#line 936 "frame/parser.Y" {(yyval.integer) = FVContour::SMOOTH;;} break; case 306: -#line 936 "frame/parser.Y" +#line 937 "frame/parser.Y" {(yyval.integer) = FVContour::BLOCK;;} break; case 307: -#line 939 "frame/parser.Y" +#line 940 "frame/parser.Y" {fr->contourPasteCmd((yyvsp[(1) - (1)].str));;} break; case 308: -#line 940 "frame/parser.Y" +#line 941 "frame/parser.Y" {fr->contourPasteCmd((yyvsp[(1) - (4)].str),(yyvsp[(2) - (4)].str),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 309: -#line 944 "frame/parser.Y" +#line 945 "frame/parser.Y" {fr->contourSaveCmd((yyvsp[(1) - (3)].str), (Coord::CoordSystem)(yyvsp[(2) - (3)].integer), (Coord::SkyFrame)(yyvsp[(3) - (3)].integer));;} break; case 310: -#line 946 "frame/parser.Y" +#line 947 "frame/parser.Y" {fr->contourSaveAuxCmd((yyvsp[(2) - (4)].str),(Coord::CoordSystem)(yyvsp[(3) - (4)].integer),(Coord::SkyFrame)(yyvsp[(4) - (4)].integer));;} break; case 311: -#line 949 "frame/parser.Y" +#line 950 "frame/parser.Y" {fr->cropCmd();;} break; case 312: -#line 951 "frame/parser.Y" +#line 952 "frame/parser.Y" {fr->cropCmd(Vector((yyvsp[(1) - (6)].real),(yyvsp[(2) - (6)].real)), Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer), (Coord::SkyFrame)(yyvsp[(6) - (6)].integer));;} break; case 313: -#line 954 "frame/parser.Y" +#line 955 "frame/parser.Y" {fr->cropCenterCmd(Vector((yyvsp[(2) - (8)].vector)), (Coord::CoordSystem)(yyvsp[(3) - (8)].integer), (Coord::SkyFrame)(yyvsp[(4) - (8)].integer), Vector((yyvsp[(5) - (8)].real),(yyvsp[(6) - (8)].real)), (Coord::CoordSystem)(yyvsp[(7) - (8)].integer), (Coord::SkyDist)(yyvsp[(8) - (8)].integer));;} break; case 315: -#line 956 "frame/parser.Y" +#line 957 "frame/parser.Y" {fr->cropBeginCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; case 316: -#line 957 "frame/parser.Y" +#line 958 "frame/parser.Y" {fr->cropMotionCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; case 317: -#line 958 "frame/parser.Y" +#line 959 "frame/parser.Y" {fr->cropEndCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; case 318: -#line 961 "frame/parser.Y" +#line 962 "frame/parser.Y" {fr->crop3dCmd();;} break; case 319: -#line 962 "frame/parser.Y" +#line 963 "frame/parser.Y" {fr->crop3dCmd((yyvsp[(1) - (3)].real), (yyvsp[(2) - (3)].real), (Coord::CoordSystem)(yyvsp[(3) - (3)].integer));;} break; case 320: -#line 963 "frame/parser.Y" +#line 964 "frame/parser.Y" {fr->crop3dBeginCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)),(yyvsp[(4) - (4)].integer));;} break; case 321: -#line 964 "frame/parser.Y" +#line 965 "frame/parser.Y" {fr->crop3dMotionCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)),(yyvsp[(4) - (4)].integer));;} break; case 322: -#line 965 "frame/parser.Y" +#line 966 "frame/parser.Y" {fr->crop3dEndCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)),(yyvsp[(4) - (4)].integer));;} break; case 323: -#line 969 "frame/parser.Y" +#line 970 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)), (Coord::InternalSystem)(yyvsp[(1) - (3)].integer));;} break; case 324: -#line 971 "frame/parser.Y" +#line 972 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(3) - (3)].vector)), (Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer));;} break; case 325: -#line 972 "frame/parser.Y" +#line 973 "frame/parser.Y" {fr->crosshairCmd((yyvsp[(1) - (1)].integer));;} break; case 326: -#line 973 "frame/parser.Y" +#line 974 "frame/parser.Y" {fr->crosshairWarpCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; case 327: -#line 976 "frame/parser.Y" +#line 977 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)), (Coord::InternalSystem)(yyvsp[(3) - (5)].integer));;} break; case 328: -#line 978 "frame/parser.Y" +#line 979 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)), (Coord::InternalSystem)(yyvsp[(2) - (4)].integer));;} break; case 329: -#line 980 "frame/parser.Y" +#line 981 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(4) - (4)].vector)), (Coord::CoordSystem)(yyvsp[(3) - (4)].integer));;} break; case 330: -#line 982 "frame/parser.Y" +#line 983 "frame/parser.Y" {fr->crosshairCmd(Vector((yyvsp[(3) - (3)].vector)), (Coord::CoordSystem)(yyvsp[(2) - (3)].integer));;} break; case 331: -#line 985 "frame/parser.Y" +#line 986 "frame/parser.Y" {fr->axesOrderCmd((yyvsp[(2) - (2)].integer));;} break; case 332: -#line 988 "frame/parser.Y" +#line 989 "frame/parser.Y" {fr->fitsyHasExtCmd((yyvsp[(3) - (3)].str));;} break; case 333: -#line 991 "frame/parser.Y" +#line 992 "frame/parser.Y" {fr->getBgColorCmd();;} break; case 347: -#line 1005 "frame/parser.Y" +#line 1006 "frame/parser.Y" {fr->getDATASECCmd();;} break; case 350: -#line 1008 "frame/parser.Y" +#line 1009 "frame/parser.Y" {fr->getHistogramCmd((yyvsp[(2) - (4)].str),(yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].integer));;} break; case 351: -#line 1010 "frame/parser.Y" +#line 1011 "frame/parser.Y" {fr->getHorzCutCmd((yyvsp[(3) - (7)].str),(yyvsp[(4) - (7)].str),Vector((yyvsp[(5) - (7)].real),(yyvsp[(6) - (7)].real)),(Coord::InternalSystem)(yyvsp[(7) - (7)].integer));;} break; case 354: -#line 1013 "frame/parser.Y" +#line 1014 "frame/parser.Y" {fr->getIRAFAlignCmd();;} break; case 355: -#line 1014 "frame/parser.Y" +#line 1015 "frame/parser.Y" {fr->getMinMaxCmd();;} break; case 358: -#line 1017 "frame/parser.Y" +#line 1018 "frame/parser.Y" {fr->getNANColorCmd();;} break; case 359: -#line 1018 "frame/parser.Y" +#line 1019 "frame/parser.Y" {fr->getOrientCmd();;} break; case 361: -#line 1021 "frame/parser.Y" +#line 1022 "frame/parser.Y" {fr->getPixelTableCmd(Vector((yyvsp[(4) - (8)].real),(yyvsp[(5) - (8)].real)), (Coord::InternalSystem)(yyvsp[(3) - (8)].integer), (yyvsp[(6) - (8)].integer), (yyvsp[(7) - (8)].integer), (yyvsp[(8) - (8)].str));;} break; case 363: -#line 1023 "frame/parser.Y" +#line 1024 "frame/parser.Y" {fr->getRotateCmd();;} break; case 365: -#line 1025 "frame/parser.Y" +#line 1026 "frame/parser.Y" {fr->getThreadsCmd();;} break; case 367: -#line 1027 "frame/parser.Y" +#line 1028 "frame/parser.Y" {fr->getTypeCmd();;} break; case 368: -#line 1029 "frame/parser.Y" +#line 1030 "frame/parser.Y" {fr->getValueCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)),(Coord::InternalSystem)(yyvsp[(2) - (4)].integer));;} break; case 369: -#line 1031 "frame/parser.Y" +#line 1032 "frame/parser.Y" {fr->getVertCutCmd((yyvsp[(3) - (7)].str),(yyvsp[(4) - (7)].str),Vector((yyvsp[(5) - (7)].real),(yyvsp[(6) - (7)].real)),(Coord::InternalSystem)(yyvsp[(7) - (7)].integer));;} break; case 371: -#line 1033 "frame/parser.Y" +#line 1034 "frame/parser.Y" {fr->getZoomCmd();;} break; case 372: -#line 1036 "frame/parser.Y" +#line 1037 "frame/parser.Y" {fr->getBinDepthCmd();;} break; case 373: -#line 1037 "frame/parser.Y" +#line 1038 "frame/parser.Y" {fr->getBinFactorCmd();;} break; case 374: -#line 1038 "frame/parser.Y" +#line 1039 "frame/parser.Y" {fr->getBinFunctionCmd();;} break; case 375: -#line 1039 "frame/parser.Y" +#line 1040 "frame/parser.Y" {fr->getBinBufferSizeCmd();;} break; case 376: -#line 1040 "frame/parser.Y" +#line 1041 "frame/parser.Y" {fr->getBinCursorCmd();;} break; case 377: -#line 1041 "frame/parser.Y" +#line 1042 "frame/parser.Y" {fr->getBinFilterCmd();;} break; case 379: -#line 1043 "frame/parser.Y" +#line 1044 "frame/parser.Y" {fr->getBinListCmd();;} break; case 380: -#line 1046 "frame/parser.Y" +#line 1047 "frame/parser.Y" {fr->getBinColsCmd();;} break; case 381: -#line 1047 "frame/parser.Y" +#line 1048 "frame/parser.Y" {fr->getBinColsMinMaxCmd((yyvsp[(2) - (2)].str));;} break; case 382: -#line 1048 "frame/parser.Y" +#line 1049 "frame/parser.Y" {fr->getBinColsDimCmd((yyvsp[(2) - (2)].str));;} break; case 383: -#line 1051 "frame/parser.Y" +#line 1052 "frame/parser.Y" {fr->getBlockCmd();;} break; case 384: -#line 1054 "frame/parser.Y" +#line 1055 "frame/parser.Y" {fr->getClipCmd();;} break; case 385: -#line 1056 "frame/parser.Y" +#line 1057 "frame/parser.Y" {fr->getClipCmd((FrScale::ClipMode)(yyvsp[(1) - (2)].integer), (FrScale::ClipScope)(yyvsp[(2) - (2)].integer));;} break; case 386: -#line 1058 "frame/parser.Y" +#line 1059 "frame/parser.Y" {fr->getClipCmd((yyvsp[(1) - (2)].real), (FrScale::ClipScope)(yyvsp[(2) - (2)].integer));;} break; case 387: -#line 1059 "frame/parser.Y" +#line 1060 "frame/parser.Y" {fr->getClipScopeCmd();;} break; case 388: -#line 1060 "frame/parser.Y" +#line 1061 "frame/parser.Y" {fr->getClipModeCmd();;} break; case 390: -#line 1062 "frame/parser.Y" +#line 1063 "frame/parser.Y" {fr->getClipUserCmd();;} break; case 392: -#line 1065 "frame/parser.Y" +#line 1066 "frame/parser.Y" { // backward compatibility with backup fr->getClipPreserveCmd(); @@ -6723,142 +6749,142 @@ yyreduce: break; case 393: -#line 1071 "frame/parser.Y" +#line 1072 "frame/parser.Y" {fr->getClipMinMaxModeCmd();;} break; case 394: -#line 1072 "frame/parser.Y" +#line 1073 "frame/parser.Y" {fr->getClipMinMaxSampleCmd();;} break; case 395: -#line 1075 "frame/parser.Y" +#line 1076 "frame/parser.Y" {fr->getClipZScaleContrastCmd();;} break; case 396: -#line 1076 "frame/parser.Y" +#line 1077 "frame/parser.Y" {fr->getClipZScaleSampleCmd();;} break; case 397: -#line 1077 "frame/parser.Y" +#line 1078 "frame/parser.Y" {fr->getClipZScaleLineCmd();;} break; case 398: -#line 1080 "frame/parser.Y" +#line 1081 "frame/parser.Y" {fr->getColorbarCmd();;} break; case 399: -#line 1081 "frame/parser.Y" +#line 1082 "frame/parser.Y" {fr->getColorbarTagCmd();;} break; case 401: -#line 1087 "frame/parser.Y" +#line 1088 "frame/parser.Y" {fr->getColorMapLevelCmd((yyvsp[(1) - (1)].integer));;} break; case 402: -#line 1089 "frame/parser.Y" +#line 1090 "frame/parser.Y" {fr->getColorMapLevelCmd((yyvsp[(1) - (4)].integer),Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)),(Coord::InternalSystem)(yyvsp[(2) - (4)].integer));;} break; case 403: -#line 1091 "frame/parser.Y" +#line 1092 "frame/parser.Y" {fr->getColorMapLevelCmd((yyvsp[(1) - (5)].integer),(yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real),(FrScale::ColorScaleType)(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].real));;} break; case 404: -#line 1094 "frame/parser.Y" +#line 1095 "frame/parser.Y" {fr->getColorScaleCmd();;} break; case 406: -#line 1096 "frame/parser.Y" +#line 1097 "frame/parser.Y" {fr->getColorScaleLogCmd();;} break; case 407: -#line 1100 "frame/parser.Y" +#line 1101 "frame/parser.Y" {fr->getColorScaleLevelCmd((yyvsp[(1) - (5)].integer),(yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real),(FrScale::ColorScaleType)(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].real));;} break; case 408: -#line 1104 "frame/parser.Y" +#line 1105 "frame/parser.Y" {fr->getContourCmd((Coord::CoordSystem)(yyvsp[(1) - (2)].integer),(Coord::SkyFrame)(yyvsp[(2) - (2)].integer));;} break; case 410: -#line 1106 "frame/parser.Y" +#line 1107 "frame/parser.Y" {fr->getContourColorNameCmd();;} break; case 411: -#line 1107 "frame/parser.Y" +#line 1108 "frame/parser.Y" {fr->getContourDashCmd();;} break; case 412: -#line 1108 "frame/parser.Y" +#line 1109 "frame/parser.Y" {fr->getContourLevelCmd();;} break; case 413: -#line 1109 "frame/parser.Y" +#line 1110 "frame/parser.Y" {fr->getContourNumLevelCmd();;} break; case 414: -#line 1110 "frame/parser.Y" +#line 1111 "frame/parser.Y" {fr->getContourMethodCmd();;} break; case 416: -#line 1112 "frame/parser.Y" +#line 1113 "frame/parser.Y" {fr->getContourSmoothCmd();;} break; case 417: -#line 1113 "frame/parser.Y" +#line 1114 "frame/parser.Y" {fr->getContourLineWidthCmd();;} break; case 418: -#line 1116 "frame/parser.Y" +#line 1117 "frame/parser.Y" {fr->getContourClipCmd();;} break; case 419: -#line 1117 "frame/parser.Y" +#line 1118 "frame/parser.Y" {fr->getContourClipModeCmd();;} break; case 420: -#line 1118 "frame/parser.Y" +#line 1119 "frame/parser.Y" {fr->getContourClipScopeCmd();;} break; case 421: -#line 1121 "frame/parser.Y" +#line 1122 "frame/parser.Y" {fr->getContourScaleCmd();;} break; case 422: -#line 1122 "frame/parser.Y" +#line 1123 "frame/parser.Y" {fr->getContourScaleLogCmd();;} break; case 423: -#line 1126 "frame/parser.Y" +#line 1127 "frame/parser.Y" {fr->getCoordCmd(Vector((yyvsp[(1) - (5)].real),(yyvsp[(2) - (5)].real)), (Coord::CoordSystem)(yyvsp[(3) - (5)].integer), (Coord::SkyFrame)(yyvsp[(4) - (5)].integer), (Coord::SkyFormat)(yyvsp[(5) - (5)].integer));;} break; case 424: -#line 1128 "frame/parser.Y" +#line 1129 "frame/parser.Y" { // backward compatibility fr->getCoordCmd(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer), @@ -6867,381 +6893,381 @@ yyreduce: break; case 425: -#line 1134 "frame/parser.Y" +#line 1135 "frame/parser.Y" {fr->getCoord3axisCmd((yyvsp[(1) - (4)].real), (Coord::CoordSystem)(yyvsp[(2) - (4)].integer), (Coord::CoordSystem)(yyvsp[(3) - (4)].integer), (yyvsp[(4) - (4)].integer));;} break; case 426: -#line 1138 "frame/parser.Y" +#line 1139 "frame/parser.Y" {fr->getCropCmd((Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer), (Coord::SkyFormat)(yyvsp[(3) - (3)].integer));;} break; case 427: -#line 1140 "frame/parser.Y" +#line 1141 "frame/parser.Y" {fr->getCropCenterCmd((Coord::CoordSystem)(yyvsp[(2) - (6)].integer), (Coord::SkyFrame)(yyvsp[(3) - (6)].integer), (Coord::SkyFormat)(yyvsp[(4) - (6)].integer), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer), (Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; case 428: -#line 1141 "frame/parser.Y" +#line 1142 "frame/parser.Y" {fr->getCrop3dCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 429: -#line 1144 "frame/parser.Y" +#line 1145 "frame/parser.Y" {fr->getCrosshairCmd((Coord::InternalSystem)(yyvsp[(1) - (1)].integer));;} break; case 430: -#line 1146 "frame/parser.Y" +#line 1147 "frame/parser.Y" {fr->getCrosshairCmd((Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer), (Coord::SkyFormat)(yyvsp[(3) - (3)].integer));;} break; case 431: -#line 1147 "frame/parser.Y" +#line 1148 "frame/parser.Y" {fr->getCrosshairStatusCmd();;} break; case 432: -#line 1150 "frame/parser.Y" +#line 1151 "frame/parser.Y" {fr->getAxesOrderCmd();;} break; case 433: -#line 1153 "frame/parser.Y" +#line 1154 "frame/parser.Y" {fr->getCursorCmd((Coord::InternalSystem)(yyvsp[(1) - (1)].integer));;} break; case 434: -#line 1155 "frame/parser.Y" +#line 1156 "frame/parser.Y" {fr->getCursorCmd((Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer), (Coord::SkyFormat)(yyvsp[(3) - (3)].integer));;} break; case 435: -#line 1159 "frame/parser.Y" +#line 1160 "frame/parser.Y" {fr->getDataValuesCmd(1, Vector((yyvsp[(3) - (6)].vector)), (Coord::CoordSystem)(yyvsp[(1) - (6)].integer), (Coord::SkyFrame)(yyvsp[(2) - (6)].integer), Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)), (yyvsp[(6) - (6)].str));;} break; case 436: -#line 1161 "frame/parser.Y" +#line 1162 "frame/parser.Y" {fr->getDataValuesCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(4) - (7)].vector)), (Coord::CoordSystem)(yyvsp[(2) - (7)].integer), (Coord::SkyFrame)(yyvsp[(3) - (7)].integer), Vector((yyvsp[(5) - (7)].real),(yyvsp[(6) - (7)].real)), (yyvsp[(7) - (7)].str));;} break; case 437: -#line 1164 "frame/parser.Y" +#line 1165 "frame/parser.Y" {fr->getDataValuesCmd(Vector((yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real)),(Coord::InternalSystem)(yyvsp[(1) - (5)].integer), Vector((yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].integer)));;} break; case 438: -#line 1168 "frame/parser.Y" +#line 1169 "frame/parser.Y" {fr->getInfoCmd((yyvsp[(1) - (1)].str));;} break; case 439: -#line 1169 "frame/parser.Y" +#line 1170 "frame/parser.Y" {fr->getInfoClipCmd();;} break; case 440: -#line 1171 "frame/parser.Y" +#line 1172 "frame/parser.Y" {fr->getInfoCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)), (Coord::InternalSystem)(yyvsp[(1) - (4)].integer), (yyvsp[(4) - (4)].str));;} break; case 441: -#line 1174 "frame/parser.Y" +#line 1175 "frame/parser.Y" {fr->iisGetCmd((char*)(yyvsp[(1) - (5)].ptr),(yyvsp[(2) - (5)].integer),(yyvsp[(3) - (5)].integer),(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].integer));;} break; case 442: -#line 1175 "frame/parser.Y" +#line 1176 "frame/parser.Y" {fr->iisGetCursorCmd();;} break; case 444: -#line 1179 "frame/parser.Y" +#line 1180 "frame/parser.Y" {fr->iisGetFileNameCmd();;} break; case 445: -#line 1180 "frame/parser.Y" +#line 1181 "frame/parser.Y" {fr->iisGetFileNameCmd((yyvsp[(1) - (1)].integer));;} break; case 446: -#line 1181 "frame/parser.Y" +#line 1182 "frame/parser.Y" {fr->iisGetFileNameCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; case 447: -#line 1184 "frame/parser.Y" +#line 1185 "frame/parser.Y" {fr->getFitsNAxesCmd();;} break; case 448: -#line 1186 "frame/parser.Y" +#line 1187 "frame/parser.Y" {fr->getFitsCenterCmd((Coord::CoordSystem)(yyvsp[(2) - (4)].integer),(Coord::SkyFrame)(yyvsp[(3) - (4)].integer),(Coord::SkyFormat)(yyvsp[(4) - (4)].integer));;} break; case 449: -#line 1187 "frame/parser.Y" +#line 1188 "frame/parser.Y" {fr->getFitsCountCmd();;} break; case 451: -#line 1189 "frame/parser.Y" +#line 1190 "frame/parser.Y" {fr->getBitpixCmd();;} break; case 455: -#line 1193 "frame/parser.Y" +#line 1194 "frame/parser.Y" {fr->getFitsHeightCmd();;} break; case 456: -#line 1194 "frame/parser.Y" +#line 1195 "frame/parser.Y" {fr->getFitsObjectNameCmd();;} break; case 457: -#line 1195 "frame/parser.Y" +#line 1196 "frame/parser.Y" {fr->getFitsSizeCmd();;} break; case 458: -#line 1197 "frame/parser.Y" +#line 1198 "frame/parser.Y" {fr->getFitsSizeCmd((Coord::CoordSystem)(yyvsp[(2) - (4)].integer),(Coord::SkyFrame)(yyvsp[(3) - (4)].integer),(Coord::SkyDist)(yyvsp[(4) - (4)].integer));;} break; case 460: -#line 1199 "frame/parser.Y" +#line 1200 "frame/parser.Y" {fr->getFitsWidthCmd();;} break; case 461: -#line 1202 "frame/parser.Y" +#line 1203 "frame/parser.Y" {fr->getFitsExtCmd((yyvsp[(1) - (1)].integer));;} break; case 462: -#line 1204 "frame/parser.Y" +#line 1205 "frame/parser.Y" {fr->getFitsExtCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)),(Coord::InternalSystem)(yyvsp[(1) - (3)].integer));;} break; case 463: -#line 1206 "frame/parser.Y" +#line 1207 "frame/parser.Y" {fr->getFitsHeaderCmd((yyvsp[(1) - (1)].integer));;} break; case 464: -#line 1207 "frame/parser.Y" +#line 1208 "frame/parser.Y" {fr->getFitsHeaderKeywordCmd(1,(yyvsp[(2) - (2)].str));;} break; case 465: -#line 1208 "frame/parser.Y" +#line 1209 "frame/parser.Y" {fr->getFitsHeaderKeywordCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; case 466: -#line 1209 "frame/parser.Y" +#line 1210 "frame/parser.Y" {fr->getFitsHeaderWCSCmd((yyvsp[(2) - (2)].integer));;} break; case 467: -#line 1212 "frame/parser.Y" +#line 1213 "frame/parser.Y" {fr->getFitsDepthCmd(2);;} break; case 468: -#line 1213 "frame/parser.Y" +#line 1214 "frame/parser.Y" {fr->getFitsDepthCmd((yyvsp[(1) - (1)].integer));;} break; case 469: -#line 1217 "frame/parser.Y" +#line 1218 "frame/parser.Y" {fr->getFitsFileNameCmd((Base::FileNameType)(yyvsp[(1) - (1)].integer));;} break; case 470: -#line 1219 "frame/parser.Y" +#line 1220 "frame/parser.Y" {fr->getFitsFileNameCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)), (Coord::InternalSystem)(yyvsp[(2) - (4)].integer), (Base::FileNameType)(yyvsp[(1) - (4)].integer));;} break; case 471: -#line 1222 "frame/parser.Y" +#line 1223 "frame/parser.Y" {fr->getFitsFileNameCmd((yyvsp[(2) - (2)].integer), (Base::FileNameType)(yyvsp[(1) - (2)].integer));;} break; case 472: -#line 1225 "frame/parser.Y" +#line 1226 "frame/parser.Y" {fr->getFitsSliceCmd(2);;} break; case 473: -#line 1226 "frame/parser.Y" +#line 1227 "frame/parser.Y" {fr->getFitsSliceCmd((yyvsp[(1) - (1)].integer));;} break; case 474: -#line 1227 "frame/parser.Y" +#line 1228 "frame/parser.Y" {fr->getFitsSliceCmd(2, (Coord::CoordSystem)(yyvsp[(1) - (1)].integer));;} break; case 475: -#line 1228 "frame/parser.Y" +#line 1229 "frame/parser.Y" {fr->getFitsSliceCmd((yyvsp[(1) - (2)].integer), (Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 476: -#line 1231 "frame/parser.Y" +#line 1232 "frame/parser.Y" {fr->getGridCmd();;} break; case 477: -#line 1232 "frame/parser.Y" +#line 1233 "frame/parser.Y" {fr->getGridOptionCmd();;} break; case 478: -#line 1233 "frame/parser.Y" +#line 1234 "frame/parser.Y" {fr->getGridVarsCmd();;} break; case 479: -#line 1236 "frame/parser.Y" +#line 1237 "frame/parser.Y" {fr->getMaskColorCmd();;} break; case 480: -#line 1237 "frame/parser.Y" +#line 1238 "frame/parser.Y" {fr->getMaskMarkCmd();;} break; case 481: -#line 1238 "frame/parser.Y" +#line 1239 "frame/parser.Y" {fr->getMaskTransparencyCmd();;} break; case 482: -#line 1241 "frame/parser.Y" +#line 1242 "frame/parser.Y" {fr->getPanPreserveCmd();;} break; case 483: -#line 1244 "frame/parser.Y" +#line 1245 "frame/parser.Y" {fr->getRGBChannelCmd();;} break; case 484: -#line 1245 "frame/parser.Y" +#line 1246 "frame/parser.Y" {fr->getRGBSystemCmd();;} break; case 485: -#line 1246 "frame/parser.Y" +#line 1247 "frame/parser.Y" {fr->getRGBViewCmd();;} break; case 486: -#line 1249 "frame/parser.Y" +#line 1250 "frame/parser.Y" {fr->getSmoothFunctionCmd();;} break; case 487: -#line 1250 "frame/parser.Y" +#line 1251 "frame/parser.Y" {fr->getSmoothRadiusCmd();;} break; case 492: -#line 1257 "frame/parser.Y" +#line 1258 "frame/parser.Y" {fr->get3dRenderMethodCmd();;} break; case 493: -#line 1258 "frame/parser.Y" +#line 1259 "frame/parser.Y" {fr->get3dRenderBackgroundCmd();;} break; case 494: -#line 1259 "frame/parser.Y" +#line 1260 "frame/parser.Y" {fr->get3dScaleCmd();;} break; case 495: -#line 1262 "frame/parser.Y" +#line 1263 "frame/parser.Y" {fr->get3dBorderCmd();;} break; case 496: -#line 1263 "frame/parser.Y" +#line 1264 "frame/parser.Y" {fr->get3dBorderColorCmd();;} break; case 497: -#line 1266 "frame/parser.Y" +#line 1267 "frame/parser.Y" {fr->get3dCompassCmd();;} break; case 498: -#line 1267 "frame/parser.Y" +#line 1268 "frame/parser.Y" {fr->get3dCompassColorCmd();;} break; case 499: -#line 1270 "frame/parser.Y" +#line 1271 "frame/parser.Y" {fr->get3dHighliteCmd();;} break; case 500: -#line 1271 "frame/parser.Y" +#line 1272 "frame/parser.Y" {fr->get3dHighliteColorCmd();;} break; case 501: -#line 1274 "frame/parser.Y" +#line 1275 "frame/parser.Y" {fr->get3dViewCmd();;} break; case 502: -#line 1275 "frame/parser.Y" +#line 1276 "frame/parser.Y" {fr->get3dViewPointCmd();;} break; case 503: -#line 1278 "frame/parser.Y" +#line 1279 "frame/parser.Y" {fr->getWCSCmd();;} break; case 505: -#line 1280 "frame/parser.Y" +#line 1281 "frame/parser.Y" {fr->getWCSNameCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 506: -#line 1283 "frame/parser.Y" +#line 1284 "frame/parser.Y" {fr->getWCSAlignCmd();;} break; case 507: -#line 1284 "frame/parser.Y" +#line 1285 "frame/parser.Y" {fr->getWCSAlignPointerCmd();;} break; case 509: -#line 1288 "frame/parser.Y" +#line 1289 "frame/parser.Y" {fr->gridDeleteCmd();;} break; case 510: -#line 1292 "frame/parser.Y" +#line 1293 "frame/parser.Y" {fr->gridCmd((Coord::CoordSystem)(yyvsp[(1) - (6)].integer), (Coord::SkyFrame)(yyvsp[(2) - (6)].integer), (Coord::SkyFormat)(yyvsp[(3) - (6)].integer), (Grid2d::GridType)(yyvsp[(4) - (6)].integer), (yyvsp[(5) - (6)].str), (yyvsp[(6) - (6)].str));;} break; case 511: -#line 1295 "frame/parser.Y" +#line 1296 "frame/parser.Y" { // backward compatibility with backup fr->gridCmd((Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (Coord::SkyFrame)(yyvsp[(2) - (5)].integer), @@ -7250,898 +7276,898 @@ yyreduce: break; case 512: -#line 1302 "frame/parser.Y" +#line 1303 "frame/parser.Y" {(yyval.integer)=Grid2d::ANALYSIS;;} break; case 513: -#line 1303 "frame/parser.Y" +#line 1304 "frame/parser.Y" {(yyval.integer)=Grid2d::PUBLICATION;;} break; case 514: -#line 1306 "frame/parser.Y" +#line 1307 "frame/parser.Y" {fr->hasAmplifierCmd();;} break; case 517: -#line 1309 "frame/parser.Y" +#line 1310 "frame/parser.Y" {fr->hasCropCmd();;} break; case 518: -#line 1310 "frame/parser.Y" +#line 1311 "frame/parser.Y" {fr->hasDATAMINCmd();;} break; case 519: -#line 1311 "frame/parser.Y" +#line 1312 "frame/parser.Y" {fr->hasDATASECCmd();;} break; case 520: -#line 1312 "frame/parser.Y" +#line 1313 "frame/parser.Y" {fr->hasDetectorCmd();;} break; case 522: -#line 1314 "frame/parser.Y" +#line 1315 "frame/parser.Y" {fr->hasGridCmd();;} break; case 523: -#line 1315 "frame/parser.Y" +#line 1316 "frame/parser.Y" {fr->hasIISCmd();;} break; case 524: -#line 1316 "frame/parser.Y" +#line 1317 "frame/parser.Y" {fr->hasIRAFMINCmd();;} break; case 526: -#line 1318 "frame/parser.Y" +#line 1319 "frame/parser.Y" {fr->hasPhysicalCmd();;} break; case 527: -#line 1319 "frame/parser.Y" +#line 1320 "frame/parser.Y" {fr->hasSmoothCmd();;} break; case 528: -#line 1320 "frame/parser.Y" +#line 1321 "frame/parser.Y" {fr->hasSystemCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 530: -#line 1324 "frame/parser.Y" +#line 1325 "frame/parser.Y" {fr->hasBinColCmd((yyvsp[(2) - (2)].str));;} break; case 531: -#line 1327 "frame/parser.Y" +#line 1328 "frame/parser.Y" {fr->hasContourCmd();;} break; case 532: -#line 1328 "frame/parser.Y" +#line 1329 "frame/parser.Y" {fr->hasContourAuxCmd();;} break; case 533: -#line 1331 "frame/parser.Y" +#line 1332 "frame/parser.Y" {fr->hasFitsCmd();;} break; case 534: -#line 1332 "frame/parser.Y" +#line 1333 "frame/parser.Y" {fr->hasFitsBinCmd();;} break; case 535: -#line 1333 "frame/parser.Y" +#line 1334 "frame/parser.Y" {fr->hasFitsCubeCmd();;} break; case 536: -#line 1334 "frame/parser.Y" +#line 1335 "frame/parser.Y" {fr->hasFitsMosaicCmd();;} break; case 537: -#line 1337 "frame/parser.Y" +#line 1338 "frame/parser.Y" {fr->hasMarkerHighlitedCmd();;} break; case 538: -#line 1338 "frame/parser.Y" +#line 1339 "frame/parser.Y" {fr->hasMarkerSelectedCmd();;} break; case 539: -#line 1339 "frame/parser.Y" +#line 1340 "frame/parser.Y" {fr->hasMarkerPasteCmd();;} break; case 540: -#line 1340 "frame/parser.Y" +#line 1341 "frame/parser.Y" {fr->hasMarkerUndoCmd();;} break; case 541: -#line 1343 "frame/parser.Y" +#line 1344 "frame/parser.Y" {fr->hasWCSCmd((Coord::CoordSystem)(yyvsp[(1) - (1)].integer));;} break; case 542: -#line 1344 "frame/parser.Y" +#line 1345 "frame/parser.Y" {fr->hasWCSEquCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 543: -#line 1345 "frame/parser.Y" +#line 1346 "frame/parser.Y" {fr->hasWCSCelCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 544: -#line 1346 "frame/parser.Y" +#line 1347 "frame/parser.Y" {fr->hasWCSAltCmd();;} break; case 545: -#line 1347 "frame/parser.Y" +#line 1348 "frame/parser.Y" {fr->hasWCSxCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 546: -#line 1350 "frame/parser.Y" +#line 1351 "frame/parser.Y" {fr->iisCmd((yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; case 547: -#line 1351 "frame/parser.Y" +#line 1352 "frame/parser.Y" {fr->iisEraseCmd();;} break; case 548: -#line 1352 "frame/parser.Y" +#line 1353 "frame/parser.Y" {fr->iisMessageCmd((yyvsp[(2) - (2)].str));;} break; case 551: -#line 1356 "frame/parser.Y" +#line 1357 "frame/parser.Y" {fr->iisSetCmd((const char*)(yyvsp[(2) - (6)].ptr),(yyvsp[(3) - (6)].integer),(yyvsp[(4) - (6)].integer),(yyvsp[(5) - (6)].integer),(yyvsp[(6) - (6)].integer));;} break; case 552: -#line 1357 "frame/parser.Y" +#line 1358 "frame/parser.Y" {fr->iisUpdateCmd();;} break; case 553: -#line 1360 "frame/parser.Y" +#line 1361 "frame/parser.Y" {fr->iisWCSCmd(Matrix((yyvsp[(2) - (10)].real),(yyvsp[(3) - (10)].real),(yyvsp[(4) - (10)].real),(yyvsp[(5) - (10)].real),(yyvsp[(6) - (10)].real),(yyvsp[(7) - (10)].real)),Vector((yyvsp[(8) - (10)].real),(yyvsp[(9) - (10)].real)),(yyvsp[(10) - (10)].integer));;} break; case 554: -#line 1363 "frame/parser.Y" +#line 1364 "frame/parser.Y" {fr->iisSetFileNameCmd((yyvsp[(1) - (1)].str));;} break; case 555: -#line 1364 "frame/parser.Y" +#line 1365 "frame/parser.Y" {fr->iisSetFileNameCmd((yyvsp[(1) - (2)].str),(yyvsp[(2) - (2)].integer));;} break; case 556: -#line 1368 "frame/parser.Y" +#line 1369 "frame/parser.Y" {fr->iisSetCursorCmd(Vector((yyvsp[(1) - (3)].integer),(yyvsp[(2) - (3)].integer)),Coord::CANVAS);;} break; case 557: -#line 1370 "frame/parser.Y" +#line 1371 "frame/parser.Y" {fr->iisSetCursorCmd(Vector((yyvsp[(1) - (3)].integer),(yyvsp[(2) - (3)].integer)),(Coord::CoordSystem)(yyvsp[(3) - (3)].integer));;} break; case 558: -#line 1371 "frame/parser.Y" +#line 1372 "frame/parser.Y" {fr->iisCursorModeCmd((yyvsp[(2) - (2)].integer));;} break; case 565: -#line 1383 "frame/parser.Y" +#line 1384 "frame/parser.Y" {fr->loadArrAllocCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 566: -#line 1385 "frame/parser.Y" +#line 1386 "frame/parser.Y" {fr->loadArrAllocGZCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 567: -#line 1387 "frame/parser.Y" +#line 1388 "frame/parser.Y" {fr->loadArrChannelCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 568: -#line 1388 "frame/parser.Y" +#line 1389 "frame/parser.Y" {fr->loadArrMMapCmd((yyvsp[(1) - (3)].str), (Base::LayerType)(yyvsp[(3) - (3)].integer));;} break; case 569: -#line 1390 "frame/parser.Y" +#line 1391 "frame/parser.Y" {fr->loadArrMMapIncrCmd((yyvsp[(1) - (3)].str), (Base::LayerType)(yyvsp[(3) - (3)].integer));;} break; case 570: -#line 1392 "frame/parser.Y" +#line 1393 "frame/parser.Y" {fr->loadArrShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 571: -#line 1394 "frame/parser.Y" +#line 1395 "frame/parser.Y" {fr->loadArrSocketCmd((yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 572: -#line 1396 "frame/parser.Y" +#line 1397 "frame/parser.Y" {fr->loadArrSocketGZCmd((yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 573: -#line 1398 "frame/parser.Y" +#line 1399 "frame/parser.Y" {fr->loadArrVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 575: -#line 1402 "frame/parser.Y" +#line 1403 "frame/parser.Y" {fr->loadArrayRGBCubeAllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 576: -#line 1403 "frame/parser.Y" +#line 1404 "frame/parser.Y" {fr->loadArrayRGBCubeAllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 577: -#line 1404 "frame/parser.Y" +#line 1405 "frame/parser.Y" {fr->loadArrayRGBCubeChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 578: -#line 1405 "frame/parser.Y" +#line 1406 "frame/parser.Y" {fr->loadArrayRGBCubeMMapCmd((yyvsp[(1) - (2)].str));;} break; case 579: -#line 1406 "frame/parser.Y" +#line 1407 "frame/parser.Y" {fr->loadArrayRGBCubeMMapIncrCmd((yyvsp[(1) - (2)].str));;} break; case 580: -#line 1408 "frame/parser.Y" +#line 1409 "frame/parser.Y" {fr->loadArrayRGBCubeShareCmd((Base::ShmType)(yyvsp[(3) - (4)].integer), (yyvsp[(4) - (4)].integer), (yyvsp[(1) - (4)].str));;} break; case 581: -#line 1409 "frame/parser.Y" +#line 1410 "frame/parser.Y" {fr->loadArrayRGBCubeSocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 582: -#line 1410 "frame/parser.Y" +#line 1411 "frame/parser.Y" {fr->loadArrayRGBCubeSocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 583: -#line 1411 "frame/parser.Y" +#line 1412 "frame/parser.Y" {fr->loadArrayRGBCubeVarCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 584: -#line 1414 "frame/parser.Y" +#line 1415 "frame/parser.Y" {fr->loadENVISMMapCmd((yyvsp[(1) - (3)].str),(yyvsp[(2) - (3)].str));;} break; case 585: -#line 1418 "frame/parser.Y" +#line 1419 "frame/parser.Y" {fr->loadFitsAllocCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 586: -#line 1420 "frame/parser.Y" +#line 1421 "frame/parser.Y" {fr->loadFitsAllocGZCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 587: -#line 1422 "frame/parser.Y" +#line 1423 "frame/parser.Y" {fr->loadFitsChannelCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 588: -#line 1424 "frame/parser.Y" +#line 1425 "frame/parser.Y" {fr->loadFitsMMapCmd((yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 589: -#line 1426 "frame/parser.Y" +#line 1427 "frame/parser.Y" {fr->loadFitsSMMapCmd((yyvsp[(1) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 590: -#line 1428 "frame/parser.Y" +#line 1429 "frame/parser.Y" {fr->loadFitsMMapIncrCmd((yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 591: -#line 1430 "frame/parser.Y" +#line 1431 "frame/parser.Y" {fr->loadFitsShareCmd((Base::ShmType)(yyvsp[(3) - (6)].integer), (yyvsp[(4) - (6)].integer), (yyvsp[(1) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 592: -#line 1432 "frame/parser.Y" +#line 1433 "frame/parser.Y" {fr->loadFitsSShareCmd((Base::ShmType)(yyvsp[(3) - (7)].integer), (yyvsp[(4) - (7)].integer), (yyvsp[(5) - (7)].integer), (yyvsp[(1) - (7)].str), (Base::LayerType)(yyvsp[(7) - (7)].integer));;} break; case 593: -#line 1435 "frame/parser.Y" +#line 1436 "frame/parser.Y" {fr->loadFitsSocketCmd((yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 594: -#line 1437 "frame/parser.Y" +#line 1438 "frame/parser.Y" {fr->loadFitsSocketGZCmd((yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 595: -#line 1439 "frame/parser.Y" +#line 1440 "frame/parser.Y" {fr->loadFitsVarCmd((yyvsp[(3) - (5)].str), (yyvsp[(1) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 601: -#line 1447 "frame/parser.Y" +#line 1448 "frame/parser.Y" {fr->loadSliceAllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 602: -#line 1448 "frame/parser.Y" +#line 1449 "frame/parser.Y" {fr->loadSliceAllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 603: -#line 1449 "frame/parser.Y" +#line 1450 "frame/parser.Y" {fr->loadSliceChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 604: -#line 1450 "frame/parser.Y" +#line 1451 "frame/parser.Y" {fr->loadSliceMMapCmd((yyvsp[(1) - (3)].str));;} break; case 605: -#line 1451 "frame/parser.Y" +#line 1452 "frame/parser.Y" {fr->loadSliceSMMapCmd((yyvsp[(1) - (4)].str), (yyvsp[(2) - (4)].str));;} break; case 606: -#line 1452 "frame/parser.Y" +#line 1453 "frame/parser.Y" {fr->loadSliceMMapIncrCmd((yyvsp[(1) - (3)].str));;} break; case 607: -#line 1454 "frame/parser.Y" +#line 1455 "frame/parser.Y" {fr->loadSliceShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str));;} break; case 608: -#line 1456 "frame/parser.Y" +#line 1457 "frame/parser.Y" {fr->loadSliceSShareCmd((Base::ShmType)(yyvsp[(3) - (6)].integer), (yyvsp[(4) - (6)].integer), (yyvsp[(5) - (6)].integer), (yyvsp[(1) - (6)].str));;} break; case 609: -#line 1457 "frame/parser.Y" +#line 1458 "frame/parser.Y" {fr->loadSliceSocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 610: -#line 1458 "frame/parser.Y" +#line 1459 "frame/parser.Y" {fr->loadSliceSocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 611: -#line 1459 "frame/parser.Y" +#line 1460 "frame/parser.Y" {fr->loadSliceVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str));;} break; case 612: -#line 1462 "frame/parser.Y" +#line 1463 "frame/parser.Y" {fr->loadExtCubeAllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 613: -#line 1463 "frame/parser.Y" +#line 1464 "frame/parser.Y" {fr->loadExtCubeAllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 614: -#line 1464 "frame/parser.Y" +#line 1465 "frame/parser.Y" {fr->loadExtCubeChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 615: -#line 1465 "frame/parser.Y" +#line 1466 "frame/parser.Y" {fr->loadExtCubeMMapCmd((yyvsp[(1) - (3)].str));;} break; case 616: -#line 1466 "frame/parser.Y" +#line 1467 "frame/parser.Y" {fr->loadExtCubeMMapIncrCmd((yyvsp[(1) - (3)].str));;} break; case 617: -#line 1468 "frame/parser.Y" +#line 1469 "frame/parser.Y" {fr->loadExtCubeShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str));;} break; case 618: -#line 1469 "frame/parser.Y" +#line 1470 "frame/parser.Y" {fr->loadExtCubeSocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 619: -#line 1470 "frame/parser.Y" +#line 1471 "frame/parser.Y" {fr->loadExtCubeSocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 620: -#line 1471 "frame/parser.Y" +#line 1472 "frame/parser.Y" {fr->loadExtCubeVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str));;} break; case 626: -#line 1482 "frame/parser.Y" +#line 1483 "frame/parser.Y" {fr->loadMosaicImageAllocCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 627: -#line 1485 "frame/parser.Y" +#line 1486 "frame/parser.Y" {fr->loadMosaicImageAllocGZCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str),(Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 628: -#line 1488 "frame/parser.Y" +#line 1489 "frame/parser.Y" {fr->loadMosaicImageChannelCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str),(Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 629: -#line 1491 "frame/parser.Y" +#line 1492 "frame/parser.Y" {fr->loadMosaicImageMMapCmd(Base::IRAF, Coord::WCS, (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 630: -#line 1494 "frame/parser.Y" +#line 1495 "frame/parser.Y" {fr->loadMosaicImageMMapIncrCmd(Base::IRAF, Coord::WCS, (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 631: -#line 1497 "frame/parser.Y" +#line 1498 "frame/parser.Y" {fr->loadMosaicImageShareCmd(Base::IRAF, Coord::WCS, (Base::ShmType)(yyvsp[(3) - (6)].integer), (yyvsp[(4) - (6)].integer), (yyvsp[(1) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 632: -#line 1500 "frame/parser.Y" +#line 1501 "frame/parser.Y" {fr->loadMosaicImageSocketCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 633: -#line 1503 "frame/parser.Y" +#line 1504 "frame/parser.Y" {fr->loadMosaicImageSocketGZCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 634: -#line 1506 "frame/parser.Y" +#line 1507 "frame/parser.Y" {fr->loadMosaicImageVarCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (5)].str), (yyvsp[(1) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 635: -#line 1511 "frame/parser.Y" +#line 1512 "frame/parser.Y" {fr->loadMosaicAllocCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 636: -#line 1514 "frame/parser.Y" +#line 1515 "frame/parser.Y" {fr->loadMosaicAllocGZCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 637: -#line 1517 "frame/parser.Y" +#line 1518 "frame/parser.Y" {fr->loadMosaicChannelCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 638: -#line 1520 "frame/parser.Y" +#line 1521 "frame/parser.Y" {fr->loadMosaicMMapCmd(Base::IRAF, Coord::WCS, (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 639: -#line 1523 "frame/parser.Y" +#line 1524 "frame/parser.Y" {fr->loadMosaicSMMapCmd(Base::IRAF, Coord::WCS, (yyvsp[(1) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 640: -#line 1526 "frame/parser.Y" +#line 1527 "frame/parser.Y" {fr->loadMosaicMMapIncrCmd(Base::IRAF, Coord::WCS, (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 641: -#line 1529 "frame/parser.Y" +#line 1530 "frame/parser.Y" {fr->loadMosaicShareCmd(Base::IRAF, Coord::WCS, (Base::ShmType)(yyvsp[(3) - (6)].integer), (yyvsp[(4) - (6)].integer), (yyvsp[(1) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 642: -#line 1532 "frame/parser.Y" +#line 1533 "frame/parser.Y" {fr->loadMosaicSShareCmd(Base::IRAF, Coord::WCS, (Base::ShmType)(yyvsp[(3) - (7)].integer), (yyvsp[(4) - (7)].integer), (yyvsp[(5) - (7)].integer), (yyvsp[(1) - (7)].str), (Base::LayerType)(yyvsp[(7) - (7)].integer));;} break; case 643: -#line 1535 "frame/parser.Y" +#line 1536 "frame/parser.Y" {fr->loadMosaicSocketCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 644: -#line 1538 "frame/parser.Y" +#line 1539 "frame/parser.Y" {fr->loadMosaicSocketGZCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 645: -#line 1541 "frame/parser.Y" +#line 1542 "frame/parser.Y" {fr->loadMosaicVarCmd(Base::IRAF, Coord::WCS, (yyvsp[(3) - (5)].str), (yyvsp[(1) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 646: -#line 1546 "frame/parser.Y" +#line 1547 "frame/parser.Y" {fr->loadMosaicImageAllocCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 647: -#line 1549 "frame/parser.Y" +#line 1550 "frame/parser.Y" {fr->loadMosaicImageAllocGZCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 648: -#line 1552 "frame/parser.Y" +#line 1553 "frame/parser.Y" {fr->loadMosaicImageChannelCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 649: -#line 1555 "frame/parser.Y" +#line 1556 "frame/parser.Y" {fr->loadMosaicImageMMapCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 650: -#line 1558 "frame/parser.Y" +#line 1559 "frame/parser.Y" {fr->loadMosaicImageMMapIncrCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 651: -#line 1561 "frame/parser.Y" +#line 1562 "frame/parser.Y" {fr->loadMosaicImageShareCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (7)].integer), (Base::ShmType)(yyvsp[(4) - (7)].integer), (yyvsp[(5) - (7)].integer), (yyvsp[(2) - (7)].str), (Base::LayerType)(yyvsp[(7) - (7)].integer));;} break; case 652: -#line 1564 "frame/parser.Y" +#line 1565 "frame/parser.Y" {fr->loadMosaicImageSocketCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 653: -#line 1567 "frame/parser.Y" +#line 1568 "frame/parser.Y" {fr->loadMosaicImageSocketGZCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 654: -#line 1570 "frame/parser.Y" +#line 1571 "frame/parser.Y" {fr->loadMosaicImageVarCmd(Base::WCSMOSAIC, (Coord::CoordSystem)(yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].str), (yyvsp[(2) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 655: -#line 1575 "frame/parser.Y" +#line 1576 "frame/parser.Y" {fr->loadMosaicAllocCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 656: -#line 1578 "frame/parser.Y" +#line 1579 "frame/parser.Y" {fr->loadMosaicAllocGZCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 657: -#line 1581 "frame/parser.Y" +#line 1582 "frame/parser.Y" {fr->loadMosaicChannelCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].str), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 658: -#line 1584 "frame/parser.Y" +#line 1585 "frame/parser.Y" {fr->loadMosaicMMapCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 659: -#line 1587 "frame/parser.Y" +#line 1588 "frame/parser.Y" {fr->loadMosaicSMMapCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (6)].integer), (yyvsp[(2) - (6)].str), (yyvsp[(3) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 660: -#line 1590 "frame/parser.Y" +#line 1591 "frame/parser.Y" {fr->loadMosaicMMapIncrCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 661: -#line 1593 "frame/parser.Y" +#line 1594 "frame/parser.Y" {fr->loadMosaicShareCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (7)].integer), (Base::ShmType)(yyvsp[(4) - (7)].integer), (yyvsp[(5) - (7)].integer), (yyvsp[(2) - (7)].str), (Base::LayerType)(yyvsp[(7) - (7)].integer));;} break; case 662: -#line 1596 "frame/parser.Y" +#line 1597 "frame/parser.Y" {fr->loadMosaicSShareCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (8)].integer), (Base::ShmType)(yyvsp[(4) - (8)].integer), (yyvsp[(5) - (8)].integer), (yyvsp[(6) - (8)].integer), (yyvsp[(2) - (8)].str), (Base::LayerType)(yyvsp[(8) - (8)].integer));;} break; case 663: -#line 1599 "frame/parser.Y" +#line 1600 "frame/parser.Y" {fr->loadMosaicSocketCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 664: -#line 1602 "frame/parser.Y" +#line 1603 "frame/parser.Y" {fr->loadMosaicSocketGZCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(2) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 665: -#line 1605 "frame/parser.Y" +#line 1606 "frame/parser.Y" {fr->loadMosaicVarCmd((Base::WCSMOSAIC), (Coord::CoordSystem)(yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].str), (yyvsp[(2) - (6)].str), (Base::LayerType)(yyvsp[(6) - (6)].integer));;} break; case 666: -#line 1610 "frame/parser.Y" +#line 1611 "frame/parser.Y" {fr->loadMosaicImageWFPC2AllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 667: -#line 1611 "frame/parser.Y" +#line 1612 "frame/parser.Y" {fr->loadMosaicImageWFPC2AllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 668: -#line 1612 "frame/parser.Y" +#line 1613 "frame/parser.Y" {fr->loadMosaicImageWFPC2ChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 669: -#line 1613 "frame/parser.Y" +#line 1614 "frame/parser.Y" {fr->loadMosaicImageWFPC2MMapCmd((yyvsp[(1) - (3)].str));;} break; case 670: -#line 1614 "frame/parser.Y" +#line 1615 "frame/parser.Y" {fr->loadMosaicImageWFPC2MMapIncrCmd((yyvsp[(1) - (3)].str));;} break; case 671: -#line 1616 "frame/parser.Y" +#line 1617 "frame/parser.Y" {fr->loadMosaicImageWFPC2ShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str));;} break; case 672: -#line 1617 "frame/parser.Y" +#line 1618 "frame/parser.Y" {fr->loadMosaicImageWFPC2SocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 673: -#line 1618 "frame/parser.Y" +#line 1619 "frame/parser.Y" {fr->loadMosaicImageWFPC2SocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 674: -#line 1619 "frame/parser.Y" +#line 1620 "frame/parser.Y" {fr->loadMosaicImageWFPC2VarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str));;} break; case 675: -#line 1621 "frame/parser.Y" +#line 1622 "frame/parser.Y" {fr->loadRGBCubeAllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 676: -#line 1622 "frame/parser.Y" +#line 1623 "frame/parser.Y" {fr->loadRGBCubeAllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 677: -#line 1623 "frame/parser.Y" +#line 1624 "frame/parser.Y" {fr->loadRGBCubeChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 678: -#line 1624 "frame/parser.Y" +#line 1625 "frame/parser.Y" {fr->loadRGBCubeMMapCmd((yyvsp[(1) - (3)].str));;} break; case 679: -#line 1625 "frame/parser.Y" +#line 1626 "frame/parser.Y" {fr->loadRGBCubeSMMapCmd((yyvsp[(1) - (4)].str), (yyvsp[(2) - (4)].str));;} break; case 680: -#line 1626 "frame/parser.Y" +#line 1627 "frame/parser.Y" {fr->loadRGBCubeMMapIncrCmd((yyvsp[(1) - (3)].str));;} break; case 681: -#line 1628 "frame/parser.Y" +#line 1629 "frame/parser.Y" {fr->loadRGBCubeShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str));;} break; case 682: -#line 1630 "frame/parser.Y" +#line 1631 "frame/parser.Y" {fr->loadRGBCubeSShareCmd((Base::ShmType)(yyvsp[(3) - (6)].integer), (yyvsp[(4) - (6)].integer), (yyvsp[(5) - (6)].integer), (yyvsp[(1) - (6)].str));;} break; case 683: -#line 1631 "frame/parser.Y" +#line 1632 "frame/parser.Y" {fr->loadRGBCubeSocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 684: -#line 1632 "frame/parser.Y" +#line 1633 "frame/parser.Y" {fr->loadRGBCubeSocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 685: -#line 1633 "frame/parser.Y" +#line 1634 "frame/parser.Y" {fr->loadRGBCubeVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str));;} break; case 686: -#line 1636 "frame/parser.Y" +#line 1637 "frame/parser.Y" {fr->loadRGBImageAllocCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 687: -#line 1637 "frame/parser.Y" +#line 1638 "frame/parser.Y" {fr->loadRGBImageAllocGZCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 688: -#line 1638 "frame/parser.Y" +#line 1639 "frame/parser.Y" {fr->loadRGBImageChannelCmd((yyvsp[(3) - (3)].str), (yyvsp[(1) - (3)].str));;} break; case 689: -#line 1639 "frame/parser.Y" +#line 1640 "frame/parser.Y" {fr->loadRGBImageMMapCmd((yyvsp[(1) - (3)].str));;} break; case 690: -#line 1640 "frame/parser.Y" +#line 1641 "frame/parser.Y" {fr->loadRGBImageMMapIncrCmd((yyvsp[(1) - (3)].str));;} break; case 691: -#line 1642 "frame/parser.Y" +#line 1643 "frame/parser.Y" {fr->loadRGBImageShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str));;} break; case 692: -#line 1643 "frame/parser.Y" +#line 1644 "frame/parser.Y" {fr->loadRGBImageSocketCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 693: -#line 1644 "frame/parser.Y" +#line 1645 "frame/parser.Y" {fr->loadRGBImageSocketGZCmd((yyvsp[(3) - (3)].integer), (yyvsp[(1) - (3)].str));;} break; case 694: -#line 1645 "frame/parser.Y" +#line 1646 "frame/parser.Y" {fr->loadRGBImageVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str));;} break; case 695: -#line 1649 "frame/parser.Y" +#line 1650 "frame/parser.Y" {fr->loadNRRDAllocCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 696: -#line 1651 "frame/parser.Y" +#line 1652 "frame/parser.Y" {fr->loadNRRDChannelCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 697: -#line 1652 "frame/parser.Y" +#line 1653 "frame/parser.Y" {fr->loadNRRDMMapCmd((yyvsp[(1) - (3)].str), (Base::LayerType)(yyvsp[(3) - (3)].integer));;} break; case 698: -#line 1654 "frame/parser.Y" +#line 1655 "frame/parser.Y" {fr->loadNRRDShareCmd((Base::ShmType)(yyvsp[(3) - (5)].integer), (yyvsp[(4) - (5)].integer), (yyvsp[(1) - (5)].str), (Base::LayerType)(yyvsp[(5) - (5)].integer));;} break; case 699: -#line 1656 "frame/parser.Y" +#line 1657 "frame/parser.Y" {fr->loadNRRDSocketCmd((yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 700: -#line 1658 "frame/parser.Y" +#line 1659 "frame/parser.Y" {fr->loadNRRDVarCmd((yyvsp[(3) - (4)].str), (yyvsp[(1) - (4)].str), (Base::LayerType)(yyvsp[(4) - (4)].integer));;} break; case 701: -#line 1661 "frame/parser.Y" +#line 1662 "frame/parser.Y" {fr->loadPhotoCmd((yyvsp[(1) - (2)].str),(yyvsp[(2) - (2)].str));;} break; case 702: -#line 1662 "frame/parser.Y" +#line 1663 "frame/parser.Y" {fr->loadSlicePhotoCmd((yyvsp[(2) - (3)].str),(yyvsp[(3) - (3)].str));;} break; case 703: -#line 1665 "frame/parser.Y" +#line 1666 "frame/parser.Y" {fr->loadIncrDataCmd((yyvsp[(2) - (6)].integer),(yyvsp[(3) - (6)].integer),(yyvsp[(4) - (6)].integer),(yyvsp[(5) - (6)].integer),(yyvsp[(6) - (6)].integer));;} break; case 704: -#line 1666 "frame/parser.Y" +#line 1667 "frame/parser.Y" {fr->loadIncrMinMaxCmd((yyvsp[(2) - (6)].integer),(yyvsp[(3) - (6)].integer),(yyvsp[(4) - (6)].integer),(yyvsp[(5) - (6)].integer),(yyvsp[(6) - (6)].integer));;} break; case 705: -#line 1667 "frame/parser.Y" +#line 1668 "frame/parser.Y" {fr->loadIncrEndCmd();;} break; case 706: -#line 1670 "frame/parser.Y" +#line 1671 "frame/parser.Y" { #ifdef MAC_OSX_TK fr->macosxPrintCmd(); @@ -8150,42 +8176,42 @@ yyreduce: break; case 707: -#line 1677 "frame/parser.Y" +#line 1678 "frame/parser.Y" {fr->magnifierCmd((yyvsp[(1) - (1)].integer));;} break; case 708: -#line 1678 "frame/parser.Y" +#line 1679 "frame/parser.Y" {fr->magnifierGraphicsCmd((yyvsp[(2) - (2)].integer));;} break; case 709: -#line 1679 "frame/parser.Y" +#line 1680 "frame/parser.Y" {fr->magnifierCursorCmd((yyvsp[(2) - (2)].integer));;} break; case 710: -#line 1680 "frame/parser.Y" +#line 1681 "frame/parser.Y" {fr->magnifierColorCmd((yyvsp[(2) - (2)].str));;} break; case 711: -#line 1681 "frame/parser.Y" +#line 1682 "frame/parser.Y" {fr->magnifierCmd((yyvsp[(1) - (3)].str), (yyvsp[(2) - (3)].integer), (yyvsp[(3) - (3)].integer));;} break; case 712: -#line 1682 "frame/parser.Y" +#line 1683 "frame/parser.Y" {fr->updateMagnifierCmd(Vector((yyvsp[(2) - (3)].real), (yyvsp[(3) - (3)].real)));;} break; case 713: -#line 1683 "frame/parser.Y" +#line 1684 "frame/parser.Y" {fr->magnifierZoomCmd((yyvsp[(2) - (2)].real));;} break; case 714: -#line 1687 "frame/parser.Y" +#line 1688 "frame/parser.Y" { fr->matchCmd((yyvsp[(1) - (12)].str),(yyvsp[(2) - (12)].str),(Coord::CoordSystem)(yyvsp[(3) - (12)].integer),(Coord::SkyFrame)(yyvsp[(4) - (12)].integer), (yyvsp[(5) - (12)].str),(yyvsp[(6) - (12)].str),(Coord::CoordSystem)(yyvsp[(7) - (12)].integer),(Coord::SkyFrame)(yyvsp[(8) - (12)].integer), @@ -8195,973 +8221,993 @@ yyreduce: break; case 716: -#line 1695 "frame/parser.Y" +#line 1696 "frame/parser.Y" {fr->markerColorCmd((yyvsp[(2) - (2)].str));;} break; case 717: -#line 1696 "frame/parser.Y" +#line 1697 "frame/parser.Y" {fr->markerCopyCmd();;} break; case 718: -#line 1698 "frame/parser.Y" +#line 1699 "frame/parser.Y" {fr->markerCommandCmd((Base::MarkerFormat)(yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; case 719: -#line 1700 "frame/parser.Y" +#line 1701 "frame/parser.Y" {fr->markerCommandVarCmd((Base::MarkerFormat)(yyvsp[(2) - (4)].integer),(yyvsp[(4) - (4)].str));;} break; case 720: -#line 1701 "frame/parser.Y" +#line 1702 "frame/parser.Y" {fr->markerCompositeDeleteCmd();;} break; case 721: -#line 1702 "frame/parser.Y" +#line 1703 "frame/parser.Y" {maperr =0;;} break; case 723: -#line 1703 "frame/parser.Y" +#line 1704 "frame/parser.Y" {fr->markerCutCmd();;} break; case 724: -#line 1704 "frame/parser.Y" +#line 1705 "frame/parser.Y" {fr->markerDeleteCmd();;} break; case 725: -#line 1705 "frame/parser.Y" +#line 1706 "frame/parser.Y" {fr->markerDeleteAllCmd();;} break; case 727: -#line 1707 "frame/parser.Y" +#line 1708 "frame/parser.Y" {fr->markerEpsilonCmd((yyvsp[(2) - (2)].integer));;} break; case 728: -#line 1708 "frame/parser.Y" +#line 1709 "frame/parser.Y" {fr->markerFontCmd((yyvsp[(2) - (2)].str));;} break; case 729: -#line 1710 "frame/parser.Y" +#line 1711 "frame/parser.Y" {fr->markerHighliteAllCmd();;} break; case 730: -#line 1712 "frame/parser.Y" +#line 1713 "frame/parser.Y" {fr->markerHighliteOnlyCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; case 731: -#line 1714 "frame/parser.Y" +#line 1715 "frame/parser.Y" {fr->markerHighliteToggleCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; case 732: -#line 1717 "frame/parser.Y" +#line 1718 "frame/parser.Y" {fr->markerAnalysisCmd((yyvsp[(1) - (4)].integer), (Marker::AnalysisTask)(yyvsp[(3) - (4)].integer), (yyvsp[(4) - (4)].integer));;} break; case 733: -#line 1719 "frame/parser.Y" +#line 1720 "frame/parser.Y" {fr->markerAngleCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].real));;} break; case 734: -#line 1720 "frame/parser.Y" +#line 1721 "frame/parser.Y" {fr->markerAngleCmd((yyvsp[(1) - (4)].integer),(yyvsp[(3) - (4)].real));;} break; case 735: -#line 1722 "frame/parser.Y" +#line 1723 "frame/parser.Y" {fr->markerAngleCmd((yyvsp[(1) - (5)].integer),(yyvsp[(3) - (5)].real),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; case 736: -#line 1725 "frame/parser.Y" +#line 1726 "frame/parser.Y" {fr->markerAnnulusRadiusCmd((yyvsp[(1) - (7)].integer), (yyvsp[(4) - (7)].real), (yyvsp[(5) - (7)].real), (yyvsp[(6) - (7)].integer), (Coord::InternalSystem)(yyvsp[(7) - (7)].integer));;} break; case 737: -#line 1727 "frame/parser.Y" +#line 1728 "frame/parser.Y" {fr->markerAnnulusRadiusCmd((yyvsp[(1) - (8)].integer), (yyvsp[(4) - (8)].real), (yyvsp[(5) - (8)].real), (yyvsp[(6) - (8)].integer), (Coord::CoordSystem)(yyvsp[(7) - (8)].integer), (Coord::SkyDist)(yyvsp[(8) - (8)].integer));;} break; case 738: -#line 1730 "frame/parser.Y" +#line 1731 "frame/parser.Y" {fr->markerAnnulusRadiusCmd((yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].str),(Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; case 739: #line 1733 "frame/parser.Y" + {fr->markerBoxFillCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + break; + + case 740: +#line 1735 "frame/parser.Y" {fr->markerBoxAnnulusRadiusCmd((yyvsp[(1) - (8)].integer), Vector((yyvsp[(4) - (8)].real), (yyvsp[(5) - (8)].real)), Vector((yyvsp[(6) - (8)].real), (yyvsp[(6) - (8)].real)*(yyvsp[(5) - (8)].real)/(yyvsp[(4) - (8)].real)), (yyvsp[(7) - (8)].integer), (Coord::InternalSystem)(yyvsp[(8) - (8)].integer));;} break; - case 740: -#line 1737 "frame/parser.Y" + case 741: +#line 1739 "frame/parser.Y" {fr->markerBoxAnnulusRadiusCmd((yyvsp[(1) - (9)].integer), Vector((yyvsp[(4) - (9)].real), (yyvsp[(5) - (9)].real)), Vector((yyvsp[(6) - (9)].real), (yyvsp[(6) - (9)].real)*(yyvsp[(5) - (9)].real)/(yyvsp[(4) - (9)].real)), (yyvsp[(7) - (9)].integer), (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; - case 741: -#line 1740 "frame/parser.Y" + case 742: +#line 1742 "frame/parser.Y" {fr->markerBoxAnnulusRadiusCmd((yyvsp[(1) - (6)].integer),(yyvsp[(4) - (6)].str),(Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; - case 742: -#line 1743 "frame/parser.Y" + case 743: +#line 1745 "frame/parser.Y" {fr->markerBoxRadiusCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)), (Coord::InternalSystem)(yyvsp[(6) - (6)].integer));;} break; - case 743: -#line 1745 "frame/parser.Y" + case 744: +#line 1747 "frame/parser.Y" {fr->markerBoxRadiusCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)), (Coord::CoordSystem)(yyvsp[(6) - (7)].integer), (Coord::SkyDist)(yyvsp[(7) - (7)].integer));;} break; - case 744: -#line 1748 "frame/parser.Y" + case 745: +#line 1750 "frame/parser.Y" {fr->markerBpandaEditCmd((yyvsp[(1) - (10)].integer), (yyvsp[(4) - (10)].real), (yyvsp[(5) - (10)].real), (yyvsp[(6) - (10)].integer), Vector((yyvsp[(7) - (10)].real),(yyvsp[(8) - (10)].real)), Vector((yyvsp[(9) - (10)].real),(yyvsp[(9) - (10)].real)*(yyvsp[(8) - (10)].real)/(yyvsp[(7) - (10)].real)), (yyvsp[(10) - (10)].integer));;} break; - case 745: -#line 1752 "frame/parser.Y" + case 746: +#line 1754 "frame/parser.Y" {fr->markerBpandaEditCmd((yyvsp[(1) - (11)].integer), (yyvsp[(4) - (11)].real), (yyvsp[(5) - (11)].real), (yyvsp[(6) - (11)].integer), Vector((yyvsp[(7) - (11)].real),(yyvsp[(8) - (11)].real)), Vector((yyvsp[(9) - (11)].real),(yyvsp[(9) - (11)].real)*(yyvsp[(8) - (11)].real)/(yyvsp[(7) - (11)].real)), (yyvsp[(10) - (11)].integer));;} break; - case 746: -#line 1756 "frame/parser.Y" + case 747: +#line 1758 "frame/parser.Y" {fr->markerBpandaEditCmd((yyvsp[(1) - (12)].integer), (yyvsp[(4) - (12)].real), (yyvsp[(5) - (12)].real), (yyvsp[(6) - (12)].integer), Vector((yyvsp[(7) - (12)].real),(yyvsp[(8) - (12)].real)), Vector((yyvsp[(9) - (12)].real),(yyvsp[(9) - (12)].real)*(yyvsp[(8) - (12)].real)/(yyvsp[(7) - (12)].real)), (yyvsp[(10) - (12)].integer), (Coord::CoordSystem)(yyvsp[(11) - (12)].integer), (Coord::SkyFrame)(yyvsp[(12) - (12)].integer));;} break; - case 747: -#line 1761 "frame/parser.Y" + case 748: +#line 1763 "frame/parser.Y" {fr->markerBpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].str), (yyvsp[(5) - (9)].str), (Coord::CoordSystem)(yyvsp[(6) - (9)].integer), (Coord::SkyFrame)(yyvsp[(7) - (9)].integer), (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; - case 748: -#line 1765 "frame/parser.Y" - {fr->markerCallBackCmd((yyvsp[(1) - (5)].integer),(CallBack::Type)(yyvsp[(3) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str));;} - break; - case 749: #line 1767 "frame/parser.Y" - {fr->markerCircleRadiusCmd((yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].real), (Coord::InternalSystem)(yyvsp[(5) - (5)].integer));;} + {fr->markerCallBackCmd((yyvsp[(1) - (5)].integer),(CallBack::Type)(yyvsp[(3) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str));;} break; case 750: -#line 1769 "frame/parser.Y" - {fr->markerCircleRadiusCmd((yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].real), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer), (Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} +#line 1768 "frame/parser.Y" + {fr->markerCircleFillCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 751: #line 1770 "frame/parser.Y" - {fr->markerColorCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} + {fr->markerCircleRadiusCmd((yyvsp[(1) - (5)].integer), (yyvsp[(4) - (5)].real), (Coord::InternalSystem)(yyvsp[(5) - (5)].integer));;} break; case 752: #line 1772 "frame/parser.Y" - {fr->markerCompassArrowCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].integer));;} + {fr->markerCircleRadiusCmd((yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].real), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer), (Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; case 753: -#line 1774 "frame/parser.Y" - {fr->markerCompassLabelCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str));;} +#line 1773 "frame/parser.Y" + {fr->markerColorCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; case 754: -#line 1776 "frame/parser.Y" - {fr->markerCompassRadiusCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].real),(Coord::InternalSystem)(yyvsp[(5) - (5)].integer));;} +#line 1775 "frame/parser.Y" + {fr->markerCompassArrowCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].integer));;} break; case 755: -#line 1778 "frame/parser.Y" - {fr->markerCompassRadiusCmd((yyvsp[(1) - (6)].integer),(yyvsp[(4) - (6)].real),(Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} +#line 1777 "frame/parser.Y" + {fr->markerCompassLabelCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str));;} break; case 756: -#line 1780 "frame/parser.Y" - {fr->markerCompassSystemCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} +#line 1779 "frame/parser.Y" + {fr->markerCompassRadiusCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].real),(Coord::InternalSystem)(yyvsp[(5) - (5)].integer));;} break; case 757: #line 1781 "frame/parser.Y" - {fr->markerCompositeCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + {fr->markerCompassRadiusCmd((yyvsp[(1) - (6)].integer),(yyvsp[(4) - (6)].real),(Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; case 758: #line 1783 "frame/parser.Y" - {fr->markerCpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].real), (yyvsp[(5) - (9)].real), (yyvsp[(6) - (9)].integer), (yyvsp[(7) - (9)].real), (yyvsp[(8) - (9)].real), (yyvsp[(9) - (9)].integer));;} + {fr->markerCompassSystemCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; case 759: -#line 1785 "frame/parser.Y" - {fr->markerCpandaEditCmd((yyvsp[(1) - (10)].integer), (yyvsp[(4) - (10)].real), (yyvsp[(5) - (10)].real), (yyvsp[(6) - (10)].integer), (yyvsp[(7) - (10)].real), (yyvsp[(8) - (10)].real), (yyvsp[(9) - (10)].integer));;} +#line 1784 "frame/parser.Y" + {fr->markerCompositeCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 760: -#line 1788 "frame/parser.Y" - {fr->markerCpandaEditCmd((yyvsp[(1) - (11)].integer), (yyvsp[(4) - (11)].real), (yyvsp[(5) - (11)].real), (yyvsp[(6) - (11)].integer), (yyvsp[(7) - (11)].real), (yyvsp[(8) - (11)].real), (yyvsp[(9) - (11)].integer), - (Coord::CoordSystem)(yyvsp[(10) - (11)].integer), (Coord::SkyFrame)(yyvsp[(11) - (11)].integer));;} +#line 1786 "frame/parser.Y" + {fr->markerCpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].real), (yyvsp[(5) - (9)].real), (yyvsp[(6) - (9)].integer), (yyvsp[(7) - (9)].real), (yyvsp[(8) - (9)].real), (yyvsp[(9) - (9)].integer));;} break; case 761: -#line 1792 "frame/parser.Y" - {fr->markerCpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].str), (yyvsp[(5) - (9)].str), (Coord::CoordSystem)(yyvsp[(6) - (9)].integer), (Coord::SkyFrame)(yyvsp[(7) - (9)].integer), - (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} +#line 1788 "frame/parser.Y" + {fr->markerCpandaEditCmd((yyvsp[(1) - (10)].integer), (yyvsp[(4) - (10)].real), (yyvsp[(5) - (10)].real), (yyvsp[(6) - (10)].integer), (yyvsp[(7) - (10)].real), (yyvsp[(8) - (10)].real), (yyvsp[(9) - (10)].integer));;} break; case 762: -#line 1796 "frame/parser.Y" - {fr->markerAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1791 "frame/parser.Y" + {fr->markerCpandaEditCmd((yyvsp[(1) - (11)].integer), (yyvsp[(4) - (11)].real), (yyvsp[(5) - (11)].real), (yyvsp[(6) - (11)].integer), (yyvsp[(7) - (11)].real), (yyvsp[(8) - (11)].real), (yyvsp[(9) - (11)].integer), + (Coord::CoordSystem)(yyvsp[(10) - (11)].integer), (Coord::SkyFrame)(yyvsp[(11) - (11)].integer));;} break; case 763: -#line 1798 "frame/parser.Y" - {fr->markerBoxAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1795 "frame/parser.Y" + {fr->markerCpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].str), (yyvsp[(5) - (9)].str), (Coord::CoordSystem)(yyvsp[(6) - (9)].integer), (Coord::SkyFrame)(yyvsp[(7) - (9)].integer), + (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; case 764: -#line 1800 "frame/parser.Y" - {fr->markerBpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1799 "frame/parser.Y" + {fr->markerAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 765: -#line 1802 "frame/parser.Y" - {fr->markerBpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1801 "frame/parser.Y" + {fr->markerBoxAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 766: -#line 1804 "frame/parser.Y" - {fr->markerEllipseAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1803 "frame/parser.Y" + {fr->markerBpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 767: -#line 1806 "frame/parser.Y" - {fr->markerEpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1805 "frame/parser.Y" + {fr->markerBpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 768: -#line 1808 "frame/parser.Y" - {fr->markerEpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1807 "frame/parser.Y" + {fr->markerEllipseAnnulusCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 769: -#line 1810 "frame/parser.Y" - {fr->markerCpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1809 "frame/parser.Y" + {fr->markerEpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 770: -#line 1812 "frame/parser.Y" - {fr->markerCpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} +#line 1811 "frame/parser.Y" + {fr->markerEpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 771: -#line 1814 "frame/parser.Y" - {fr->markerPolygonCreateVertexCmd((yyvsp[(1) - (7)].integer),(yyvsp[(5) - (7)].integer),Vector((yyvsp[(6) - (7)].real),(yyvsp[(7) - (7)].real)));;} +#line 1813 "frame/parser.Y" + {fr->markerCpandaCreateAnglesCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 772: -#line 1816 "frame/parser.Y" - {fr->markerSegmentCreateVertexCmd((yyvsp[(1) - (7)].integer),(yyvsp[(5) - (7)].integer),Vector((yyvsp[(6) - (7)].real),(yyvsp[(7) - (7)].real)));;} +#line 1815 "frame/parser.Y" + {fr->markerCpandaCreateRadiusCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)));;} break; case 773: -#line 1818 "frame/parser.Y" - {fr->markerDeleteCmd((yyvsp[(1) - (2)].integer));;} +#line 1817 "frame/parser.Y" + {fr->markerPolygonCreateVertexCmd((yyvsp[(1) - (7)].integer),(yyvsp[(5) - (7)].integer),Vector((yyvsp[(6) - (7)].real),(yyvsp[(7) - (7)].real)));;} break; case 774: -#line 1820 "frame/parser.Y" - {fr->markerAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} +#line 1819 "frame/parser.Y" + {fr->markerSegmentCreateVertexCmd((yyvsp[(1) - (7)].integer),(yyvsp[(5) - (7)].integer),Vector((yyvsp[(6) - (7)].real),(yyvsp[(7) - (7)].real)));;} break; case 775: -#line 1822 "frame/parser.Y" - {fr->markerBoxAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} +#line 1821 "frame/parser.Y" + {fr->markerDeleteCmd((yyvsp[(1) - (2)].integer));;} break; case 776: #line 1823 "frame/parser.Y" - {fr->markerBpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + {fr->markerAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 777: #line 1825 "frame/parser.Y" - {fr->markerEllipseAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + {fr->markerBoxAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 778: -#line 1827 "frame/parser.Y" - {fr->markerDeleteCallBackCmd((yyvsp[(1) - (5)].integer),(CallBack::Type)(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].str));;} +#line 1826 "frame/parser.Y" + {fr->markerBpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 779: #line 1828 "frame/parser.Y" - {fr->markerEpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + {fr->markerEllipseAnnulusDeleteRadiusCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 780: -#line 1829 "frame/parser.Y" - {fr->markerCpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} +#line 1830 "frame/parser.Y" + {fr->markerDeleteCallBackCmd((yyvsp[(1) - (5)].integer),(CallBack::Type)(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].str));;} break; case 781: #line 1831 "frame/parser.Y" - {fr->markerPolygonDeleteVertexCmd((yyvsp[(1) - (5)].integer),(yyvsp[(5) - (5)].integer));;} + {fr->markerEpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 782: -#line 1833 "frame/parser.Y" - {fr->markerSegmentDeleteVertexCmd((yyvsp[(1) - (5)].integer),(yyvsp[(5) - (5)].integer));;} +#line 1832 "frame/parser.Y" + {fr->markerCpandaDeleteCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 783: #line 1834 "frame/parser.Y" - {fr->markerDeleteTagCmd((yyvsp[(1) - (3)].integer));;} + {fr->markerPolygonDeleteVertexCmd((yyvsp[(1) - (5)].integer),(yyvsp[(5) - (5)].integer));;} break; case 784: -#line 1835 "frame/parser.Y" - {fr->markerDeleteTagCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].str));;} +#line 1836 "frame/parser.Y" + {fr->markerSegmentDeleteVertexCmd((yyvsp[(1) - (5)].integer),(yyvsp[(5) - (5)].integer));;} break; case 785: -#line 1836 "frame/parser.Y" - {fr->markerDeleteTagCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} +#line 1837 "frame/parser.Y" + {fr->markerDeleteTagCmd((yyvsp[(1) - (3)].integer));;} break; case 786: #line 1838 "frame/parser.Y" - {fr->markerEditBeginCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + {fr->markerDeleteTagCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].str));;} break; case 787: -#line 1840 "frame/parser.Y" - {fr->markerEllipseRadiusCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].real), (yyvsp[(5) - (6)].real)), (Coord::InternalSystem)(yyvsp[(6) - (6)].integer));;} +#line 1839 "frame/parser.Y" + {fr->markerDeleteTagCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 788: +#line 1841 "frame/parser.Y" + {fr->markerEditBeginCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + break; + + case 789: #line 1842 "frame/parser.Y" + {fr->markerEllipseFillCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + break; + + case 790: +#line 1844 "frame/parser.Y" + {fr->markerEllipseRadiusCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].real), (yyvsp[(5) - (6)].real)), (Coord::InternalSystem)(yyvsp[(6) - (6)].integer));;} + break; + + case 791: +#line 1846 "frame/parser.Y" {fr->markerEllipseRadiusCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(4) - (7)].real), (yyvsp[(5) - (7)].real)), (Coord::CoordSystem)(yyvsp[(6) - (7)].integer), (Coord::SkyDist)(yyvsp[(7) - (7)].integer));;} break; - case 789: -#line 1846 "frame/parser.Y" + case 792: +#line 1850 "frame/parser.Y" {fr->markerEllipseAnnulusRadiusCmd((yyvsp[(1) - (8)].integer), Vector((yyvsp[(4) - (8)].real),(yyvsp[(5) - (8)].real)), Vector((yyvsp[(6) - (8)].real),(yyvsp[(6) - (8)].real)*(yyvsp[(5) - (8)].real)/(yyvsp[(4) - (8)].real)), (yyvsp[(7) - (8)].integer), (Coord::InternalSystem)(yyvsp[(8) - (8)].integer));;} break; - case 790: -#line 1850 "frame/parser.Y" + case 793: +#line 1854 "frame/parser.Y" {fr->markerEllipseAnnulusRadiusCmd((yyvsp[(1) - (9)].integer), Vector((yyvsp[(4) - (9)].real),(yyvsp[(5) - (9)].real)), Vector((yyvsp[(6) - (9)].real),(yyvsp[(6) - (9)].real)*(yyvsp[(5) - (9)].real)/(yyvsp[(4) - (9)].real)), (yyvsp[(7) - (9)].integer), (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; - case 791: -#line 1853 "frame/parser.Y" + case 794: +#line 1857 "frame/parser.Y" {fr->markerEllipseAnnulusRadiusCmd((yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].str), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer), (Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; - case 792: -#line 1856 "frame/parser.Y" + case 795: +#line 1860 "frame/parser.Y" {fr->markerEpandaEditCmd((yyvsp[(1) - (10)].integer), (yyvsp[(4) - (10)].real), (yyvsp[(5) - (10)].real), (yyvsp[(6) - (10)].integer), Vector((yyvsp[(7) - (10)].real),(yyvsp[(8) - (10)].real)), Vector((yyvsp[(9) - (10)].real),(yyvsp[(9) - (10)].real)*(yyvsp[(8) - (10)].real)/(yyvsp[(7) - (10)].real)), (yyvsp[(10) - (10)].integer));;} break; - case 793: -#line 1860 "frame/parser.Y" + case 796: +#line 1864 "frame/parser.Y" {fr->markerEpandaEditCmd((yyvsp[(1) - (11)].integer), (yyvsp[(4) - (11)].real), (yyvsp[(5) - (11)].real), (yyvsp[(6) - (11)].integer), Vector((yyvsp[(7) - (11)].real),(yyvsp[(8) - (11)].real)), Vector((yyvsp[(9) - (11)].real),(yyvsp[(9) - (11)].real)*(yyvsp[(8) - (11)].real)/(yyvsp[(7) - (11)].real)), (yyvsp[(10) - (11)].integer));;} break; - case 794: -#line 1864 "frame/parser.Y" + case 797: +#line 1868 "frame/parser.Y" {fr->markerEpandaEditCmd((yyvsp[(1) - (12)].integer), (yyvsp[(4) - (12)].real), (yyvsp[(5) - (12)].real), (yyvsp[(6) - (12)].integer), Vector((yyvsp[(7) - (12)].real),(yyvsp[(8) - (12)].real)), Vector((yyvsp[(9) - (12)].real),(yyvsp[(9) - (12)].real)*(yyvsp[(8) - (12)].real)/(yyvsp[(7) - (12)].real)), (yyvsp[(10) - (12)].integer), (Coord::CoordSystem)(yyvsp[(11) - (12)].integer), (Coord::SkyFrame)(yyvsp[(12) - (12)].integer));;} break; - case 795: -#line 1869 "frame/parser.Y" + case 798: +#line 1873 "frame/parser.Y" {fr->markerEpandaEditCmd((yyvsp[(1) - (9)].integer), (yyvsp[(4) - (9)].str), (yyvsp[(5) - (9)].str), (Coord::CoordSystem)(yyvsp[(6) - (9)].integer), (Coord::SkyFrame)(yyvsp[(7) - (9)].integer), (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; - case 796: -#line 1873 "frame/parser.Y" + case 799: +#line 1877 "frame/parser.Y" {fr->markerFontCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; - case 797: -#line 1874 "frame/parser.Y" + case 800: +#line 1878 "frame/parser.Y" {fr->markerHighliteCmd((yyvsp[(1) - (2)].integer));;} break; - case 798: -#line 1875 "frame/parser.Y" + case 801: +#line 1879 "frame/parser.Y" {fr->markerHighliteOnlyCmd((yyvsp[(1) - (3)].integer));;} break; - case 799: -#line 1877 "frame/parser.Y" + case 802: +#line 1881 "frame/parser.Y" {fr->markerLineArrowCmd((yyvsp[(1) - (5)].integer),(yyvsp[(4) - (5)].integer),(yyvsp[(5) - (5)].integer));;} break; - case 800: -#line 1879 "frame/parser.Y" + case 803: +#line 1883 "frame/parser.Y" {fr->markerLineCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(5) - (6)].vector)), Vector((yyvsp[(6) - (6)].vector)), (Coord::InternalSystem)(yyvsp[(4) - (6)].integer));;} break; - case 801: -#line 1881 "frame/parser.Y" + case 804: +#line 1885 "frame/parser.Y" {fr->markerLineCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(6) - (7)].vector)), Vector((yyvsp[(7) - (7)].vector)), (Coord::CoordSystem)(yyvsp[(4) - (7)].integer), (Coord::SkyFrame)(yyvsp[(5) - (7)].integer));;} break; - case 802: -#line 1885 "frame/parser.Y" + case 805: +#line 1889 "frame/parser.Y" {fr->markerMoveCmd((yyvsp[(1) - (4)].integer), Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; - case 803: -#line 1886 "frame/parser.Y" + case 806: +#line 1890 "frame/parser.Y" {fr->markerFrontCmd((yyvsp[(1) - (3)].integer));;} break; - case 804: -#line 1887 "frame/parser.Y" + case 807: +#line 1891 "frame/parser.Y" {fr->markerBackCmd((yyvsp[(1) - (3)].integer));;} break; - case 805: -#line 1889 "frame/parser.Y" + case 808: +#line 1893 "frame/parser.Y" {fr->markerMoveToCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)), (Coord::InternalSystem)(yyvsp[(4) - (6)].integer));;} break; - case 806: -#line 1891 "frame/parser.Y" + case 809: +#line 1895 "frame/parser.Y" {fr->markerMoveToCmd((yyvsp[(1) - (6)].integer),Vector((yyvsp[(6) - (6)].vector)),(Coord::CoordSystem)(yyvsp[(4) - (6)].integer),(Coord::SkyFrame)(yyvsp[(5) - (6)].integer));;} break; - case 807: -#line 1894 "frame/parser.Y" + case 810: +#line 1898 "frame/parser.Y" {fr->markerPolygonResetCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)),(Coord::InternalSystem)(yyvsp[(6) - (6)].integer));;} break; - case 808: -#line 1896 "frame/parser.Y" + case 811: +#line 1900 "frame/parser.Y" {fr->markerPolygonResetCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)), (Coord::CoordSystem)(yyvsp[(6) - (7)].integer), (Coord::SkyDist)(yyvsp[(7) - (7)].integer));;} break; - case 809: -#line 1899 "frame/parser.Y" + case 812: +#line 1903 "frame/parser.Y" {fr->markerSegmentResetCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)),(Coord::InternalSystem)(yyvsp[(6) - (6)].integer));;} break; - case 810: -#line 1901 "frame/parser.Y" + case 813: +#line 1905 "frame/parser.Y" {fr->markerSegmentResetCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)), (Coord::CoordSystem)(yyvsp[(6) - (7)].integer), (Coord::SkyDist)(yyvsp[(7) - (7)].integer));;} break; - case 811: -#line 1904 "frame/parser.Y" + case 814: +#line 1908 "frame/parser.Y" {fr->markerPointShapeCmd((yyvsp[(1) - (4)].integer),(Point::PointShape)(yyvsp[(4) - (4)].integer));;} break; - case 812: -#line 1905 "frame/parser.Y" + case 815: +#line 1909 "frame/parser.Y" {fr->markerPointSizeCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; - case 813: -#line 1908 "frame/parser.Y" + case 816: +#line 1911 "frame/parser.Y" + {fr->markerPolygonFillCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} + break; + + case 817: +#line 1913 "frame/parser.Y" {fr->markerProjectionCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(4) - (6)].vector)), Vector((yyvsp[(5) - (6)].vector)), (Coord::InternalSystem)(yyvsp[(3) - (6)].integer), (yyvsp[(6) - (6)].real));;} break; - case 814: -#line 1912 "frame/parser.Y" + case 818: +#line 1917 "frame/parser.Y" {fr->markerProjectionCmd((yyvsp[(1) - (9)].integer), Vector((yyvsp[(5) - (9)].vector)), Vector((yyvsp[(6) - (9)].vector)), (Coord::CoordSystem)(yyvsp[(3) - (9)].integer), (Coord::SkyFrame)(yyvsp[(4) - (9)].integer), (yyvsp[(7) - (9)].real), (Coord::CoordSystem)(yyvsp[(8) - (9)].integer), (Coord::SkyDist)(yyvsp[(9) - (9)].integer));;} break; - case 815: -#line 1916 "frame/parser.Y" + case 819: +#line 1921 "frame/parser.Y" {fr->markerPropertyCmd((yyvsp[(1) - (4)].integer),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; - case 816: -#line 1918 "frame/parser.Y" + case 820: +#line 1923 "frame/parser.Y" {fr->markerRotateBeginCmd((yyvsp[(1) - (3)].integer));;} break; - case 817: -#line 1920 "frame/parser.Y" + case 821: +#line 1925 "frame/parser.Y" {fr->markerRulerPointCmd((yyvsp[(1) - (6)].integer), Vector((yyvsp[(5) - (6)].vector)), Vector((yyvsp[(6) - (6)].vector)), (Coord::InternalSystem)(yyvsp[(4) - (6)].integer));;} break; - case 818: -#line 1923 "frame/parser.Y" + case 822: +#line 1928 "frame/parser.Y" {fr->markerRulerPointCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(6) - (7)].vector)), Vector((yyvsp[(7) - (7)].vector)), (Coord::CoordSystem)(yyvsp[(4) - (7)].integer), (Coord::SkyFrame)(yyvsp[(5) - (7)].integer));;} break; - case 819: -#line 1926 "frame/parser.Y" + case 823: +#line 1931 "frame/parser.Y" {fr->markerRulerSystemCmd((yyvsp[(1) - (7)].integer), (Coord::CoordSystem)(yyvsp[(4) - (7)].integer), (Coord::SkyFrame)(yyvsp[(5) - (7)].integer), (Coord::CoordSystem)(yyvsp[(6) - (7)].integer), (Coord::SkyDist)(yyvsp[(7) - (7)].integer));;} break; - case 820: -#line 1929 "frame/parser.Y" + case 824: +#line 1934 "frame/parser.Y" {fr->markerSelectCmd((yyvsp[(1) - (2)].integer));;} break; - case 821: -#line 1930 "frame/parser.Y" + case 825: +#line 1935 "frame/parser.Y" {fr->markerSelectOnlyCmd((yyvsp[(1) - (3)].integer));;} break; - case 822: -#line 1932 "frame/parser.Y" + case 826: +#line 1937 "frame/parser.Y" {fr->markerTagCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; - case 823: -#line 1933 "frame/parser.Y" + case 827: +#line 1938 "frame/parser.Y" {fr->markerTextCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; - case 824: -#line 1934 "frame/parser.Y" + case 828: +#line 1939 "frame/parser.Y" {fr->markerTextRotateCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; - case 825: -#line 1936 "frame/parser.Y" + case 829: +#line 1941 "frame/parser.Y" {fr->markerUnhighliteCmd((yyvsp[(1) - (2)].integer));;} break; - case 826: -#line 1937 "frame/parser.Y" + case 830: +#line 1942 "frame/parser.Y" {fr->markerUnselectCmd((yyvsp[(1) - (2)].integer));;} break; - case 827: -#line 1939 "frame/parser.Y" + case 831: +#line 1944 "frame/parser.Y" {fr->markerVectorArrowCmd((yyvsp[(1) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; - case 828: -#line 1941 "frame/parser.Y" + case 832: +#line 1946 "frame/parser.Y" {fr->markerVectorCmd((yyvsp[(1) - (7)].integer), Vector((yyvsp[(5) - (7)].vector)), (Coord::InternalSystem)(yyvsp[(4) - (7)].integer), (yyvsp[(6) - (7)].real), (yyvsp[(7) - (7)].real));;} break; - case 829: -#line 1944 "frame/parser.Y" + case 833: +#line 1949 "frame/parser.Y" {fr->markerVectorCmd((yyvsp[(1) - (10)].integer), Vector((yyvsp[(6) - (10)].vector)), (Coord::CoordSystem)(yyvsp[(4) - (10)].integer), (Coord::SkyFrame)(yyvsp[(5) - (10)].integer), (yyvsp[(9) - (10)].real), (Coord::CoordSystem)(yyvsp[(7) - (10)].integer), (Coord::SkyDist)(yyvsp[(8) - (10)].integer), (yyvsp[(10) - (10)].real));;} break; - case 830: -#line 1947 "frame/parser.Y" + case 834: +#line 1952 "frame/parser.Y" {fr->markerLineWidthCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 831: -#line 1949 "frame/parser.Y" + case 835: +#line 1954 "frame/parser.Y" {fr->markerKeyCmd();;} break; - case 832: -#line 1950 "frame/parser.Y" + case 836: +#line 1955 "frame/parser.Y" {fr->markerKeyCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 836: -#line 1955 "frame/parser.Y" + case 840: +#line 1960 "frame/parser.Y" {fr->markerPreserveCmd((yyvsp[(2) - (2)].integer));;} break; - case 837: -#line 1956 "frame/parser.Y" + case 841: +#line 1961 "frame/parser.Y" {fr->markerPropertyCmd((yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 838: -#line 1958 "frame/parser.Y" + case 842: +#line 1963 "frame/parser.Y" {fr->markerPropertyCmd((yyvsp[(2) - (5)].integer),(yyvsp[(3) - (5)].integer),Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)));;} break; - case 839: -#line 1960 "frame/parser.Y" + case 843: +#line 1965 "frame/parser.Y" {fr->markerRotateBeginCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; - case 840: -#line 1962 "frame/parser.Y" + case 844: +#line 1967 "frame/parser.Y" {fr->markerRotateMotionCmd(Vector((yyvsp[(3) - (5)].real),(yyvsp[(4) - (5)].real)),(yyvsp[(5) - (5)].integer));;} break; - case 841: -#line 1963 "frame/parser.Y" + case 845: +#line 1968 "frame/parser.Y" {fr->markerRotateEndCmd();;} break; - case 842: -#line 1965 "frame/parser.Y" - {fr->markerSaveCmd((yyvsp[(2) - (7)].str), (Base::MarkerFormat)(yyvsp[(3) - (7)].integer), (Coord::CoordSystem)(yyvsp[(4) - (7)].integer), (Coord::SkyFrame)(yyvsp[(5) - (7)].integer), (Coord::SkyFormat)(yyvsp[(6) - (7)].integer), (yyvsp[(7) - (7)].integer));;} - break; - - case 843: -#line 1966 "frame/parser.Y" - {fr->markerSaveTemplateCmd((yyvsp[(3) - (3)].str));;} - break; - case 846: -#line 1971 "frame/parser.Y" - {fr->markerColorCmd((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str));;} +#line 1970 "frame/parser.Y" + {fr->markerSaveCmd((yyvsp[(2) - (7)].str), (Base::MarkerFormat)(yyvsp[(3) - (7)].integer), (Coord::CoordSystem)(yyvsp[(4) - (7)].integer), (Coord::SkyFrame)(yyvsp[(5) - (7)].integer), (Coord::SkyFormat)(yyvsp[(6) - (7)].integer), (yyvsp[(7) - (7)].integer));;} break; case 847: -#line 1972 "frame/parser.Y" - {fr->markerCopyCmd((yyvsp[(1) - (2)].str));;} - break; - - case 848: -#line 1973 "frame/parser.Y" - {fr->markerDeleteCmd((yyvsp[(1) - (2)].str));;} - break; - - case 849: -#line 1974 "frame/parser.Y" - {fr->markerCutCmd((yyvsp[(1) - (2)].str));;} +#line 1971 "frame/parser.Y" + {fr->markerSaveTemplateCmd((yyvsp[(3) - (3)].str));;} break; case 850: -#line 1975 "frame/parser.Y" - {fr->markerFontCmd((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str));;} +#line 1976 "frame/parser.Y" + {fr->markerColorCmd((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str));;} break; case 851: -#line 1976 "frame/parser.Y" - {fr->markerHighliteCmd((yyvsp[(1) - (2)].str));;} +#line 1977 "frame/parser.Y" + {fr->markerCopyCmd((yyvsp[(1) - (2)].str));;} break; case 852: -#line 1977 "frame/parser.Y" - {fr->markerHighliteOnlyCmd((yyvsp[(1) - (3)].str));;} +#line 1978 "frame/parser.Y" + {fr->markerDeleteCmd((yyvsp[(1) - (2)].str));;} break; case 853: -#line 1978 "frame/parser.Y" - {fr->markerMoveCmd((yyvsp[(1) - (4)].str),Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} +#line 1979 "frame/parser.Y" + {fr->markerCutCmd((yyvsp[(1) - (2)].str));;} break; case 854: -#line 1979 "frame/parser.Y" - {fr->markerFrontCmd((yyvsp[(1) - (3)].str));;} +#line 1980 "frame/parser.Y" + {fr->markerFontCmd((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str));;} break; case 855: -#line 1980 "frame/parser.Y" - {fr->markerBackCmd((yyvsp[(1) - (3)].str));;} +#line 1981 "frame/parser.Y" + {fr->markerHighliteCmd((yyvsp[(1) - (2)].str));;} break; case 856: #line 1982 "frame/parser.Y" - {fr->markerMoveToCmd((yyvsp[(1) - (5)].str),Vector((yyvsp[(5) - (5)].vector)),(Coord::InternalSystem)(yyvsp[(4) - (5)].integer));;} + {fr->markerHighliteOnlyCmd((yyvsp[(1) - (3)].str));;} break; case 857: -#line 1984 "frame/parser.Y" - {fr->markerMoveToCmd((yyvsp[(1) - (6)].str),Vector((yyvsp[(6) - (6)].vector)),(Coord::CoordSystem)(yyvsp[(4) - (6)].integer),(Coord::SkyFrame)(yyvsp[(5) - (6)].integer));;} +#line 1983 "frame/parser.Y" + {fr->markerMoveCmd((yyvsp[(1) - (4)].str),Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; case 858: -#line 1986 "frame/parser.Y" - {fr->markerPropertyCmd((yyvsp[(1) - (4)].str),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} +#line 1984 "frame/parser.Y" + {fr->markerFrontCmd((yyvsp[(1) - (3)].str));;} break; case 859: -#line 1987 "frame/parser.Y" - {fr->markerSelectCmd((yyvsp[(1) - (2)].str));;} +#line 1985 "frame/parser.Y" + {fr->markerBackCmd((yyvsp[(1) - (3)].str));;} break; case 860: -#line 1988 "frame/parser.Y" - {fr->markerSelectOnlyCmd((yyvsp[(1) - (3)].str));;} +#line 1987 "frame/parser.Y" + {fr->markerMoveToCmd((yyvsp[(1) - (5)].str),Vector((yyvsp[(5) - (5)].vector)),(Coord::InternalSystem)(yyvsp[(4) - (5)].integer));;} break; case 861: #line 1989 "frame/parser.Y" - {fr->markerUnhighliteCmd((yyvsp[(1) - (2)].str));;} + {fr->markerMoveToCmd((yyvsp[(1) - (6)].str),Vector((yyvsp[(6) - (6)].vector)),(Coord::CoordSystem)(yyvsp[(4) - (6)].integer),(Coord::SkyFrame)(yyvsp[(5) - (6)].integer));;} break; case 862: -#line 1990 "frame/parser.Y" - {fr->markerUnselectCmd((yyvsp[(1) - (2)].str));;} +#line 1991 "frame/parser.Y" + {fr->markerPropertyCmd((yyvsp[(1) - (4)].str),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; case 863: #line 1992 "frame/parser.Y" - {fr->markerTagEditCmd((yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].str));;} + {fr->markerSelectCmd((yyvsp[(1) - (2)].str));;} break; case 864: #line 1993 "frame/parser.Y" - {fr->markerTagDeleteCmd((yyvsp[(3) - (3)].str));;} + {fr->markerSelectOnlyCmd((yyvsp[(1) - (3)].str));;} break; case 865: #line 1994 "frame/parser.Y" - {fr->markerTagDeleteAllCmd();;} + {fr->markerUnhighliteCmd((yyvsp[(1) - (2)].str));;} break; case 866: #line 1995 "frame/parser.Y" - {fr->markerTagCmd((yyvsp[(2) - (2)].str));;} + {fr->markerUnselectCmd((yyvsp[(1) - (2)].str));;} break; case 867: -#line 1996 "frame/parser.Y" - {fr->markerTagUpdateCmd((yyvsp[(3) - (3)].str));;} +#line 1997 "frame/parser.Y" + {fr->markerTagEditCmd((yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].str));;} break; case 868: #line 1998 "frame/parser.Y" - {fr->markerPasteCmd();;} + {fr->markerTagDeleteCmd((yyvsp[(3) - (3)].str));;} break; case 869: #line 1999 "frame/parser.Y" - {fr->markerPasteCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} + {fr->markerTagDeleteAllCmd();;} break; case 870: #line 2000 "frame/parser.Y" - {fr->markerUndoCmd();;} + {fr->markerTagCmd((yyvsp[(2) - (2)].str));;} break; case 871: #line 2001 "frame/parser.Y" - {fr->markerUnhighliteAllCmd();;} + {fr->markerTagUpdateCmd((yyvsp[(3) - (3)].str));;} break; case 872: -#line 2002 "frame/parser.Y" - {fr->markerUnselectAllCmd();;} +#line 2003 "frame/parser.Y" + {fr->markerPasteCmd();;} break; case 873: -#line 2003 "frame/parser.Y" - {fr->markerLineWidthCmd((yyvsp[(2) - (2)].integer));;} +#line 2004 "frame/parser.Y" + {fr->markerPasteCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; case 874: -#line 2006 "frame/parser.Y" - {(yyval.integer) = CallBack::SELECTCB;;} +#line 2005 "frame/parser.Y" + {fr->markerUndoCmd();;} break; case 875: -#line 2007 "frame/parser.Y" - {(yyval.integer) = CallBack::UNSELECTCB;;} +#line 2006 "frame/parser.Y" + {fr->markerUnhighliteAllCmd();;} break; case 876: -#line 2008 "frame/parser.Y" - {(yyval.integer) = CallBack::HIGHLITECB;;} +#line 2007 "frame/parser.Y" + {fr->markerUnselectAllCmd();;} break; case 877: -#line 2009 "frame/parser.Y" - {(yyval.integer) = CallBack::UNHIGHLITECB;;} +#line 2008 "frame/parser.Y" + {fr->markerLineWidthCmd((yyvsp[(2) - (2)].integer));;} break; case 878: -#line 2010 "frame/parser.Y" - {(yyval.integer) = CallBack::MOVEBEGINCB;;} +#line 2011 "frame/parser.Y" + {(yyval.integer) = CallBack::SELECTCB;;} break; case 879: -#line 2011 "frame/parser.Y" - {(yyval.integer) = CallBack::MOVECB;;} +#line 2012 "frame/parser.Y" + {(yyval.integer) = CallBack::UNSELECTCB;;} break; case 880: -#line 2012 "frame/parser.Y" - {(yyval.integer) = CallBack::MOVEENDCB;;} +#line 2013 "frame/parser.Y" + {(yyval.integer) = CallBack::HIGHLITECB;;} break; case 881: -#line 2013 "frame/parser.Y" - {(yyval.integer) = CallBack::EDITBEGINCB;;} +#line 2014 "frame/parser.Y" + {(yyval.integer) = CallBack::UNHIGHLITECB;;} break; case 882: -#line 2014 "frame/parser.Y" - {(yyval.integer) = CallBack::EDITCB;;} +#line 2015 "frame/parser.Y" + {(yyval.integer) = CallBack::MOVEBEGINCB;;} break; case 883: -#line 2015 "frame/parser.Y" - {(yyval.integer) = CallBack::EDITENDCB;;} +#line 2016 "frame/parser.Y" + {(yyval.integer) = CallBack::MOVECB;;} break; case 884: -#line 2016 "frame/parser.Y" - {(yyval.integer) = CallBack::ROTATEBEGINCB;;} +#line 2017 "frame/parser.Y" + {(yyval.integer) = CallBack::MOVEENDCB;;} break; case 885: -#line 2017 "frame/parser.Y" - {(yyval.integer) = CallBack::ROTATECB;;} +#line 2018 "frame/parser.Y" + {(yyval.integer) = CallBack::EDITBEGINCB;;} break; case 886: -#line 2018 "frame/parser.Y" - {(yyval.integer) = CallBack::ROTATEENDCB;;} +#line 2019 "frame/parser.Y" + {(yyval.integer) = CallBack::EDITCB;;} break; case 887: -#line 2019 "frame/parser.Y" - {(yyval.integer) = CallBack::DELETECB;;} +#line 2020 "frame/parser.Y" + {(yyval.integer) = CallBack::EDITENDCB;;} break; case 888: -#line 2020 "frame/parser.Y" - {(yyval.integer) = CallBack::TEXTCB;;} +#line 2021 "frame/parser.Y" + {(yyval.integer) = CallBack::ROTATEBEGINCB;;} break; case 889: -#line 2021 "frame/parser.Y" - {(yyval.integer) = CallBack::COLORCB;;} +#line 2022 "frame/parser.Y" + {(yyval.integer) = CallBack::ROTATECB;;} break; case 890: -#line 2022 "frame/parser.Y" - {(yyval.integer) = CallBack::LINEWIDTHCB;;} +#line 2023 "frame/parser.Y" + {(yyval.integer) = CallBack::ROTATEENDCB;;} break; case 891: -#line 2023 "frame/parser.Y" - {(yyval.integer) = CallBack::PROPERTYCB;;} +#line 2024 "frame/parser.Y" + {(yyval.integer) = CallBack::DELETECB;;} break; case 892: -#line 2024 "frame/parser.Y" - {(yyval.integer) = CallBack::FONTCB;;} +#line 2025 "frame/parser.Y" + {(yyval.integer) = CallBack::TEXTCB;;} break; case 893: -#line 2025 "frame/parser.Y" - {(yyval.integer) = CallBack::KEYCB;;} +#line 2026 "frame/parser.Y" + {(yyval.integer) = CallBack::COLORCB;;} break; case 894: -#line 2026 "frame/parser.Y" - {(yyval.integer) = CallBack::UPDATECB;;} +#line 2027 "frame/parser.Y" + {(yyval.integer) = CallBack::LINEWIDTHCB;;} break; case 895: -#line 2029 "frame/parser.Y" - {fr->markerCentroidCmd();;} +#line 2028 "frame/parser.Y" + {(yyval.integer) = CallBack::PROPERTYCB;;} break; case 896: -#line 2030 "frame/parser.Y" - {fr->markerCentroidCmd((yyvsp[(1) - (1)].integer));;} +#line 2029 "frame/parser.Y" + {(yyval.integer) = CallBack::FONTCB;;} break; case 897: -#line 2031 "frame/parser.Y" - {fr->markerCentroidAutoCmd((yyvsp[(2) - (2)].integer));;} +#line 2030 "frame/parser.Y" + {(yyval.integer) = CallBack::KEYCB;;} break; case 898: -#line 2032 "frame/parser.Y" - {fr->markerCentroidRadiusCmd((yyvsp[(2) - (2)].real));;} +#line 2031 "frame/parser.Y" + {(yyval.integer) = CallBack::UPDATECB;;} break; case 899: -#line 2033 "frame/parser.Y" - {fr->markerCentroidIterationCmd((yyvsp[(2) - (2)].integer));;} +#line 2034 "frame/parser.Y" + {fr->markerCentroidCmd();;} break; case 900: #line 2035 "frame/parser.Y" + {fr->markerCentroidCmd((yyvsp[(1) - (1)].integer));;} + break; + + case 901: +#line 2036 "frame/parser.Y" + {fr->markerCentroidAutoCmd((yyvsp[(2) - (2)].integer));;} + break; + + case 902: +#line 2037 "frame/parser.Y" + {fr->markerCentroidRadiusCmd((yyvsp[(2) - (2)].real));;} + break; + + case 903: +#line 2038 "frame/parser.Y" + {fr->markerCentroidIterationCmd((yyvsp[(2) - (2)].integer));;} + break; + + case 904: +#line 2040 "frame/parser.Y" { fr->markerCentroidIterationCmd((yyvsp[(2) - (3)].integer)); fr->markerCentroidRadiusCmd((yyvsp[(3) - (3)].real)); ;} break; - case 901: -#line 2045 "frame/parser.Y" + case 905: +#line 2050 "frame/parser.Y" {fr->createCircleCmd(fr->mapToRef(Vector((yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real)),Coord::CANVAS), - (yyvsp[(4) - (5)].real), + (yyvsp[(4) - (5)].real), 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 902: -#line 2053 "frame/parser.Y" + case 906: +#line 2058 "frame/parser.Y" {fr->createEllipseCmd(fr->mapToRef(Vector((yyvsp[(2) - (7)].real),(yyvsp[(3) - (7)].real)),Coord::CANVAS), Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)), - (yyvsp[(6) - (7)].real), + (yyvsp[(6) - (7)].real), 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 903: -#line 2062 "frame/parser.Y" + case 907: +#line 2067 "frame/parser.Y" {fr->createBoxCmd(fr->mapToRef(Vector((yyvsp[(2) - (7)].real),(yyvsp[(3) - (7)].real)),Coord::CANVAS), Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)), - (yyvsp[(6) - (7)].real), + (yyvsp[(6) - (7)].real), 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 904: -#line 2070 "frame/parser.Y" + case 908: +#line 2075 "frame/parser.Y" {fr->createPolygonCmd(fr->mapToRef(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)),Coord::CANVAS), - Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)), + Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)), 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 905: -#line 2077 "frame/parser.Y" + case 909: +#line 2082 "frame/parser.Y" {fr->createSegmentCmd(fr->mapToRef(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)),Coord::CANVAS), Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 906: -#line 2084 "frame/parser.Y" + case 910: +#line 2089 "frame/parser.Y" {fr->createLineCmd(fr->mapToRef(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)),Coord::CANVAS), fr->mapToRef(Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)),Coord::CANVAS), 0, 0, @@ -9169,8 +9215,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 907: -#line 2092 "frame/parser.Y" + case 911: +#line 2097 "frame/parser.Y" {fr->createVectCmd(fr->mapToRef(Vector((yyvsp[(2) - (6)].real),(yyvsp[(3) - (6)].real)),Coord::CANVAS), fr->mapToRef(Vector((yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real)),Coord::CANVAS), 1, @@ -9178,72 +9224,72 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 908: -#line 2100 "frame/parser.Y" + case 912: +#line 2105 "frame/parser.Y" {fr->createTextCmd(fr->mapToRef(Vector((yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real)),Coord::CANVAS), (yyvsp[(4) - (5)].real), 1, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 909: -#line 2105 "frame/parser.Y" + case 913: +#line 2110 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::CIRCLE, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 910: -#line 2110 "frame/parser.Y" + case 914: +#line 2115 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::BOX, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 911: -#line 2115 "frame/parser.Y" + case 915: +#line 2120 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::DIAMOND, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 912: -#line 2120 "frame/parser.Y" + case 916: +#line 2125 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::CROSS, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 913: -#line 2125 "frame/parser.Y" + case 917: +#line 2130 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::EX, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 914: -#line 2130 "frame/parser.Y" + case 918: +#line 2135 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::ARROW, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 915: -#line 2135 "frame/parser.Y" + case 919: +#line 2140 "frame/parser.Y" {fr->createPointCmd(fr->mapToRef(Vector((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real)),Coord::CANVAS), Point::BOXCIRCLE, (yyvsp[(5) - (6)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 916: -#line 2144 "frame/parser.Y" + case 920: +#line 2149 "frame/parser.Y" {fr->createRulerCmd(fr->mapToRef(Vector((yyvsp[(2) - (10)].real),(yyvsp[(3) - (10)].real)),Coord::CANVAS), fr->mapToRef(Vector((yyvsp[(4) - (10)].real),(yyvsp[(5) - (10)].real)),Coord::CANVAS), (Coord::CoordSystem)(yyvsp[(6) - (10)].integer), (Coord::SkyFrame)(yyvsp[(7) - (10)].integer), (Coord::CoordSystem)(yyvsp[(8) - (10)].integer), (Coord::SkyDist)(yyvsp[(9) - (10)].integer), @@ -9251,8 +9297,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 917: -#line 2153 "frame/parser.Y" + case 921: +#line 2158 "frame/parser.Y" {fr->createCompassCmd(fr->mapToRef(Vector((yyvsp[(2) - (7)].real),(yyvsp[(3) - (7)].real)),Coord::CANVAS), (yyvsp[(4) - (7)].real), "N", "E", 1, 1, @@ -9261,8 +9307,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 918: -#line 2163 "frame/parser.Y" + case 922: +#line 2168 "frame/parser.Y" {fr->createProjectionCmd(fr->mapToRef(Vector((yyvsp[(2) - (7)].real),(yyvsp[(3) - (7)].real)),Coord::CANVAS), fr->mapToRef(Vector((yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real)),Coord::CANVAS), (yyvsp[(6) - (7)].real), @@ -9270,16 +9316,16 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 919: -#line 2172 "frame/parser.Y" + case 923: +#line 2177 "frame/parser.Y" {fr->createAnnulusCmd(fr->mapToRef(Vector((yyvsp[(2) - (7)].real),(yyvsp[(3) - (7)].real)),Coord::CANVAS), (yyvsp[(4) - (7)].real),(yyvsp[(5) - (7)].real),(yyvsp[(6) - (7)].integer), currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 920: -#line 2180 "frame/parser.Y" + case 924: +#line 2185 "frame/parser.Y" {fr->createEllipseAnnulusCmd(fr->mapToRef(Vector((yyvsp[(2) - (9)].real),(yyvsp[(3) - (9)].real)),Coord::CANVAS), Vector((yyvsp[(4) - (9)].real),(yyvsp[(5) - (9)].real)), Vector((yyvsp[(6) - (9)].real),(yyvsp[(6) - (9)].real)*(yyvsp[(4) - (9)].real)/(yyvsp[(5) - (9)].real)),(yyvsp[(7) - (9)].integer), @@ -9288,8 +9334,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 921: -#line 2190 "frame/parser.Y" + case 925: +#line 2195 "frame/parser.Y" {fr->createBoxAnnulusCmd(fr->mapToRef(Vector((yyvsp[(2) - (9)].real),(yyvsp[(3) - (9)].real)),Coord::CANVAS), Vector((yyvsp[(4) - (9)].real),(yyvsp[(5) - (9)].real)),Vector((yyvsp[(6) - (9)].real),(yyvsp[(6) - (9)].real)*(yyvsp[(4) - (9)].real)/(yyvsp[(5) - (9)].real)),(yyvsp[(7) - (9)].integer), (yyvsp[(8) - (9)].real), @@ -9297,8 +9343,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 922: -#line 2200 "frame/parser.Y" + case 926: +#line 2205 "frame/parser.Y" {fr->createCpandaCmd(fr->mapToRef(Vector((yyvsp[(2) - (10)].real),(yyvsp[(3) - (10)].real)),Coord::CANVAS), (yyvsp[(4) - (10)].real),(yyvsp[(5) - (10)].real),(yyvsp[(6) - (10)].integer), (yyvsp[(7) - (10)].real),(yyvsp[(8) - (10)].real),(yyvsp[(9) - (10)].integer), @@ -9306,8 +9352,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 923: -#line 2210 "frame/parser.Y" + case 927: +#line 2215 "frame/parser.Y" {fr->createEpandaCmd(fr->mapToRef(Vector((yyvsp[(2) - (12)].real),(yyvsp[(3) - (12)].real)),Coord::CANVAS), (yyvsp[(4) - (12)].real),(yyvsp[(5) - (12)].real),(yyvsp[(6) - (12)].integer), Vector((yyvsp[(7) - (12)].real),(yyvsp[(8) - (12)].real)), @@ -9317,8 +9363,8 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 924: -#line 2222 "frame/parser.Y" + case 928: +#line 2227 "frame/parser.Y" {fr->createBpandaCmd(fr->mapToRef(Vector((yyvsp[(2) - (12)].real),(yyvsp[(3) - (12)].real)),Coord::CANVAS), (yyvsp[(4) - (12)].real),(yyvsp[(5) - (12)].real),(yyvsp[(6) - (12)].integer), Vector((yyvsp[(7) - (12)].real),(yyvsp[(8) - (12)].real)), @@ -9328,591 +9374,611 @@ yyreduce: currentText,currentProps,NULL,taglist,cblist);;} break; - case 925: -#line 2231 "frame/parser.Y" + case 929: +#line 2236 "frame/parser.Y" {fr->createCompositeCmd( currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);;} break; - case 927: -#line 2239 "frame/parser.Y" + case 931: +#line 2244 "frame/parser.Y" {fr->createTemplateCmd(fr->mapToRef(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)),Coord::CANVAS), (yyvsp[(1) - (3)].str));;} break; - case 928: -#line 2241 "frame/parser.Y" + case 932: +#line 2246 "frame/parser.Y" {fr->createTemplateVarCmd(fr->mapToRef(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)),Coord::CANVAS), (yyvsp[(2) - (4)].str));;} break; - case 929: -#line 2243 "frame/parser.Y" + case 933: +#line 2248 "frame/parser.Y" { // backward compatibility fr->createTemplateVarCmd(fr->mapToRef(Vector((yyvsp[(1) - (4)].real),(yyvsp[(2) - (4)].real)),Coord::CANVAS), (yyvsp[(4) - (4)].str)); ;} break; - case 930: -#line 2248 "frame/parser.Y" + case 934: +#line 2253 "frame/parser.Y" {fr->createTemplateCmd(Vector((yyvsp[(4) - (4)].vector)),(Coord::CoordSystem)(yyvsp[(2) - (4)].integer),(Coord::SkyFrame)(yyvsp[(3) - (4)].integer), (yyvsp[(1) - (4)].str));;} break; - case 931: -#line 2251 "frame/parser.Y" + case 935: +#line 2256 "frame/parser.Y" {(yyval.dash)[0] = (yyvsp[(1) - (2)].integer); (yyval.dash)[1] = (yyvsp[(2) - (2)].integer);;} break; - case 932: -#line 2255 "frame/parser.Y" + case 936: +#line 2260 "frame/parser.Y" {fr->markerEditBeginCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)),(yyvsp[(4) - (4)].integer));;} break; - case 933: -#line 2257 "frame/parser.Y" + case 937: +#line 2262 "frame/parser.Y" {fr->markerEditMotionCmd(Vector((yyvsp[(2) - (4)].real),(yyvsp[(3) - (4)].real)),(yyvsp[(4) - (4)].integer));;} break; - case 934: -#line 2258 "frame/parser.Y" + case 938: +#line 2263 "frame/parser.Y" {fr->markerEditEndCmd();;} break; - case 935: -#line 2261 "frame/parser.Y" + case 939: +#line 2266 "frame/parser.Y" {(yyval.integer) = Base::DS9;;} break; - case 936: -#line 2262 "frame/parser.Y" + case 940: +#line 2267 "frame/parser.Y" {(yyval.integer) = Base::XML;;} break; - case 937: -#line 2263 "frame/parser.Y" + case 941: +#line 2268 "frame/parser.Y" {(yyval.integer) = Base::CIAO;;} break; - case 938: -#line 2264 "frame/parser.Y" + case 942: +#line 2269 "frame/parser.Y" {(yyval.integer) = Base::SAOTNG;;} break; - case 939: -#line 2265 "frame/parser.Y" + case 943: +#line 2270 "frame/parser.Y" {(yyval.integer) = Base::SAOIMAGE;;} break; - case 940: -#line 2266 "frame/parser.Y" + case 944: +#line 2271 "frame/parser.Y" {(yyval.integer) = Base::PROS;;} break; - case 941: -#line 2267 "frame/parser.Y" + case 945: +#line 2272 "frame/parser.Y" {(yyval.integer) = Base::RAWXY;;} break; - case 943: -#line 2271 "frame/parser.Y" + case 947: +#line 2276 "frame/parser.Y" {fr->getMarkerColorCmd();;} break; - case 944: -#line 2272 "frame/parser.Y" + case 948: +#line 2277 "frame/parser.Y" {fr->getMarkerFontCmd();;} break; - case 945: -#line 2273 "frame/parser.Y" + case 949: +#line 2278 "frame/parser.Y" {fr->getMarkerEpsilonCmd();;} break; - case 946: -#line 2274 "frame/parser.Y" + case 950: +#line 2279 "frame/parser.Y" {fr->getMarkerHandleCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 947: -#line 2275 "frame/parser.Y" + case 951: +#line 2280 "frame/parser.Y" {fr->getMarkerIdCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 948: -#line 2278 "frame/parser.Y" + case 952: +#line 2283 "frame/parser.Y" {fr->getMarkerAnalysisPandaCmd((Coord::CoordSystem)(yyvsp[(4) - (4)].integer));;} break; - case 949: -#line 2280 "frame/parser.Y" + case 953: +#line 2285 "frame/parser.Y" {fr->getMarkerAnalysisHistogramCmd((yyvsp[(4) - (6)].str),(yyvsp[(5) - (6)].str),(yyvsp[(6) - (6)].integer));;} break; - case 950: -#line 2282 "frame/parser.Y" + case 954: +#line 2287 "frame/parser.Y" {fr->getMarkerAnalysisPlot2dCmd((yyvsp[(4) - (10)].str),(yyvsp[(5) - (10)].str),(yyvsp[(6) - (10)].str),(yyvsp[(7) - (10)].str),(Coord::CoordSystem)(yyvsp[(8) - (10)].integer), (Coord::SkyFrame)(yyvsp[(9) - (10)].integer), (Marker::AnalysisMethod)(yyvsp[(10) - (10)].integer));;} break; - case 951: -#line 2284 "frame/parser.Y" + case 955: +#line 2289 "frame/parser.Y" {fr->getMarkerAnalysisPlot3dCmd((yyvsp[(4) - (7)].str),(yyvsp[(5) - (7)].str),(Coord::CoordSystem)(yyvsp[(6) - (7)].integer),(Marker::AnalysisMethod)(yyvsp[(7) - (7)].integer));;} break; - case 952: -#line 2286 "frame/parser.Y" + case 956: +#line 2291 "frame/parser.Y" {fr->getMarkerAnalysisRadialCmd((yyvsp[(4) - (7)].str),(yyvsp[(5) - (7)].str),(yyvsp[(6) - (7)].str),(Coord::CoordSystem)(yyvsp[(7) - (7)].integer));;} break; - case 953: -#line 2288 "frame/parser.Y" + case 957: +#line 2293 "frame/parser.Y" {fr->getMarkerAnalysisStatsCmd((Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; - case 954: -#line 2291 "frame/parser.Y" + case 958: +#line 2296 "frame/parser.Y" {fr->getMarkerAnalysisPandaCmd((yyvsp[(1) - (4)].integer),(Coord::CoordSystem)(yyvsp[(4) - (4)].integer));;} break; - case 955: -#line 2293 "frame/parser.Y" + case 959: +#line 2298 "frame/parser.Y" {fr->getMarkerAnalysisHistogramCmd((yyvsp[(1) - (6)].integer),(yyvsp[(4) - (6)].str),(yyvsp[(5) - (6)].str),(yyvsp[(6) - (6)].integer));;} break; - case 956: -#line 2295 "frame/parser.Y" + case 960: +#line 2300 "frame/parser.Y" {fr->getMarkerAnalysisPlot2dCmd((yyvsp[(1) - (10)].integer),(yyvsp[(4) - (10)].str),(yyvsp[(5) - (10)].str),(yyvsp[(6) - (10)].str),(yyvsp[(7) - (10)].str),(Coord::CoordSystem)(yyvsp[(8) - (10)].integer), (Coord::SkyFrame)(yyvsp[(9) - (10)].integer), (Marker::AnalysisMethod)(yyvsp[(10) - (10)].integer));;} break; - case 957: -#line 2297 "frame/parser.Y" + case 961: +#line 2302 "frame/parser.Y" {fr->getMarkerAnalysisPlot3dCmd((yyvsp[(1) - (7)].integer),(yyvsp[(4) - (7)].str),(yyvsp[(5) - (7)].str),(Coord::CoordSystem)(yyvsp[(6) - (7)].integer),(Marker::AnalysisMethod)(yyvsp[(7) - (7)].integer));;} break; - case 958: -#line 2299 "frame/parser.Y" + case 962: +#line 2304 "frame/parser.Y" {fr->getMarkerAnalysisRadialCmd((yyvsp[(1) - (7)].integer),(yyvsp[(4) - (7)].str),(yyvsp[(5) - (7)].str),(yyvsp[(6) - (7)].str),(Coord::CoordSystem)(yyvsp[(7) - (7)].integer));;} break; - case 959: -#line 2301 "frame/parser.Y" + case 963: +#line 2306 "frame/parser.Y" {fr->getMarkerAnalysisStatsCmd((yyvsp[(1) - (5)].integer),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; - case 960: -#line 2303 "frame/parser.Y" + case 964: +#line 2308 "frame/parser.Y" {fr->getMarkerIdAllCmd();;} break; - case 961: -#line 2304 "frame/parser.Y" + case 965: +#line 2309 "frame/parser.Y" {fr->getMarkerAngleCmd((yyvsp[(1) - (2)].integer));;} break; - case 962: -#line 2305 "frame/parser.Y" + case 966: +#line 2310 "frame/parser.Y" {fr->getMarkerAngleCmd((yyvsp[(1) - (3)].integer));;} break; - case 963: -#line 2307 "frame/parser.Y" + case 967: +#line 2312 "frame/parser.Y" {fr->getMarkerAngleCmd((yyvsp[(1) - (4)].integer),(Coord::CoordSystem)(yyvsp[(3) - (4)].integer), (Coord::SkyFrame)(yyvsp[(4) - (4)].integer));;} break; - case 964: -#line 2309 "frame/parser.Y" + case 968: +#line 2314 "frame/parser.Y" {fr->getMarkerAnnulusRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 965: -#line 2312 "frame/parser.Y" + case 969: +#line 2316 "frame/parser.Y" + {fr->getMarkerBoxFillCmd((yyvsp[(1) - (3)].integer));;} + break; + + case 970: +#line 2318 "frame/parser.Y" {fr->getMarkerBoxAnnulusRadiusCmd((yyvsp[(1) - (5)].integer),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer),(Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 966: -#line 2314 "frame/parser.Y" + case 971: +#line 2320 "frame/parser.Y" {fr->getMarkerBoxRadiusCmd((yyvsp[(1) - (5)].integer),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 967: -#line 2315 "frame/parser.Y" + case 972: +#line 2321 "frame/parser.Y" {fr->getMarkerBpandaAnglesCmd((yyvsp[(1) - (3)].integer));;} break; - case 968: -#line 2316 "frame/parser.Y" + case 973: +#line 2322 "frame/parser.Y" {fr->getMarkerBpandaAnglesCmd((yyvsp[(1) - (4)].integer));;} break; - case 969: -#line 2318 "frame/parser.Y" + case 974: +#line 2324 "frame/parser.Y" {fr->getMarkerBpandaAnglesCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; - case 970: -#line 2320 "frame/parser.Y" + case 975: +#line 2326 "frame/parser.Y" {fr->getMarkerBpandaRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 971: -#line 2323 "frame/parser.Y" + case 976: +#line 2329 "frame/parser.Y" {fr->getMarkerCenterCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(3) - (5)].integer), (Coord::SkyFrame)(yyvsp[(4) - (5)].integer), (Coord::SkyFormat)(yyvsp[(5) - (5)].integer));;} break; - case 972: -#line 2326 "frame/parser.Y" + case 977: +#line 2331 "frame/parser.Y" + {fr->getMarkerCircleFillCmd((yyvsp[(1) - (3)].integer));;} + break; + + case 978: +#line 2333 "frame/parser.Y" {fr->getMarkerCircleRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 973: -#line 2327 "frame/parser.Y" + case 979: +#line 2334 "frame/parser.Y" {fr->getMarkerColorCmd((yyvsp[(1) - (2)].integer));;} break; - case 974: -#line 2328 "frame/parser.Y" + case 980: +#line 2335 "frame/parser.Y" {fr->getMarkerCompassArrowCmd((yyvsp[(1) - (3)].integer));;} break; - case 975: -#line 2329 "frame/parser.Y" + case 981: +#line 2336 "frame/parser.Y" {fr->getMarkerCompassLabelCmd((yyvsp[(1) - (3)].integer));;} break; - case 976: -#line 2331 "frame/parser.Y" + case 982: +#line 2338 "frame/parser.Y" {fr->getMarkerCompassRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 977: -#line 2332 "frame/parser.Y" + case 983: +#line 2339 "frame/parser.Y" {fr->getMarkerCompassSystemCmd((yyvsp[(1) - (3)].integer));;} break; - case 978: -#line 2333 "frame/parser.Y" + case 984: +#line 2340 "frame/parser.Y" {fr->getMarkerCompositeCmd((yyvsp[(1) - (3)].integer));;} break; - case 979: -#line 2334 "frame/parser.Y" + case 985: +#line 2341 "frame/parser.Y" {fr->getMarkerCpandaAnglesCmd((yyvsp[(1) - (3)].integer));;} break; - case 980: -#line 2335 "frame/parser.Y" + case 986: +#line 2342 "frame/parser.Y" {fr->getMarkerCpandaAnglesCmd((yyvsp[(1) - (4)].integer));;} break; - case 981: -#line 2337 "frame/parser.Y" + case 987: +#line 2344 "frame/parser.Y" {fr->getMarkerCpandaAnglesCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; - case 982: -#line 2339 "frame/parser.Y" + case 988: +#line 2346 "frame/parser.Y" {fr->getMarkerCpandaRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 983: -#line 2341 "frame/parser.Y" + case 989: +#line 2347 "frame/parser.Y" + {fr->getMarkerEllipseFillCmd((yyvsp[(1) - (3)].integer));;} + break; + + case 990: +#line 2349 "frame/parser.Y" {fr->getMarkerEllipseRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 984: -#line 2343 "frame/parser.Y" + case 991: +#line 2351 "frame/parser.Y" {fr->getMarkerEllipseAnnulusRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 985: -#line 2345 "frame/parser.Y" + case 992: +#line 2353 "frame/parser.Y" {fr->getMarkerEpandaAnglesCmd((yyvsp[(1) - (3)].integer));;} break; - case 986: -#line 2346 "frame/parser.Y" + case 993: +#line 2354 "frame/parser.Y" {fr->getMarkerEpandaAnglesCmd((yyvsp[(1) - (4)].integer));;} break; - case 987: -#line 2348 "frame/parser.Y" + case 994: +#line 2356 "frame/parser.Y" {fr->getMarkerEpandaAnglesCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyFrame)(yyvsp[(5) - (5)].integer));;} break; - case 988: -#line 2350 "frame/parser.Y" + case 995: +#line 2358 "frame/parser.Y" {fr->getMarkerEpandaRadiusCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 989: -#line 2351 "frame/parser.Y" + case 996: +#line 2359 "frame/parser.Y" {fr->getMarkerFontCmd((yyvsp[(1) - (2)].integer));;} break; - case 990: -#line 2352 "frame/parser.Y" + case 997: +#line 2360 "frame/parser.Y" {fr->getMarkerHighlitedCmd((yyvsp[(1) - (2)].integer));;} break; - case 991: -#line 2353 "frame/parser.Y" + case 998: +#line 2361 "frame/parser.Y" {fr->getMarkerLineArrowCmd((yyvsp[(1) - (3)].integer));;} break; - case 992: -#line 2355 "frame/parser.Y" + case 999: +#line 2363 "frame/parser.Y" {fr->getMarkerLineLengthCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 993: -#line 2357 "frame/parser.Y" + case 1000: +#line 2365 "frame/parser.Y" {fr->getMarkerLineCmd((yyvsp[(1) - (6)].integer), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer), (Coord::SkyFormat)(yyvsp[(6) - (6)].integer));;} break; - case 994: -#line 2360 "frame/parser.Y" + case 1001: +#line 2368 "frame/parser.Y" {fr->getMarkerMapLenFromRefCmd((yyvsp[(1) - (6)].integer), (yyvsp[(4) - (6)].real), (Coord::CoordSystem)(yyvsp[(5) - (6)].integer),(Coord::SkyDist)(yyvsp[(6) - (6)].integer));;} break; - case 995: -#line 2363 "frame/parser.Y" + case 1002: +#line 2371 "frame/parser.Y" + {fr->getMarkerPolygonFillCmd((yyvsp[(1) - (3)].integer));;} + break; + + case 1003: +#line 2372 "frame/parser.Y" {fr->getMarkerPointShapeCmd((yyvsp[(1) - (3)].integer));;} break; - case 996: -#line 2364 "frame/parser.Y" + case 1004: +#line 2373 "frame/parser.Y" {fr->getMarkerPointSizeCmd((yyvsp[(1) - (3)].integer));;} break; - case 997: -#line 2366 "frame/parser.Y" + case 1005: +#line 2375 "frame/parser.Y" {fr->getMarkerProjectionPointsCmd((yyvsp[(1) - (6)].integer), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer), (Coord::SkyFormat)(yyvsp[(6) - (6)].integer));;} break; - case 998: -#line 2369 "frame/parser.Y" + case 1006: +#line 2378 "frame/parser.Y" {fr->getMarkerProjectionLengthCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 999: -#line 2372 "frame/parser.Y" + case 1007: +#line 2381 "frame/parser.Y" {fr->getMarkerProjectionWidthCmd((yyvsp[(1) - (5)].integer),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer),(Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 1000: -#line 2373 "frame/parser.Y" + case 1008: +#line 2382 "frame/parser.Y" {fr->getMarkerPropertyCmd((yyvsp[(1) - (2)].integer));;} break; - case 1001: -#line 2374 "frame/parser.Y" + case 1009: +#line 2383 "frame/parser.Y" {fr->getMarkerPropertyCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 1002: -#line 2376 "frame/parser.Y" + case 1010: +#line 2385 "frame/parser.Y" {fr->getMarkerRulerLengthCmd((yyvsp[(1) - (5)].integer),(Coord::CoordSystem)(yyvsp[(4) - (5)].integer),(Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 1003: -#line 2378 "frame/parser.Y" + case 1011: +#line 2387 "frame/parser.Y" {fr->getMarkerRulerPointCmd((yyvsp[(1) - (6)].integer), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer), (Coord::SkyFormat)(yyvsp[(6) - (6)].integer));;} break; - case 1004: -#line 2380 "frame/parser.Y" + case 1012: +#line 2389 "frame/parser.Y" {fr->getMarkerRulerSystemCmd((yyvsp[(1) - (3)].integer));;} break; - case 1005: -#line 2381 "frame/parser.Y" + case 1013: +#line 2390 "frame/parser.Y" {fr->getMarkerSelectedCmd((yyvsp[(1) - (2)].integer));;} break; - case 1006: -#line 2383 "frame/parser.Y" + case 1014: +#line 2392 "frame/parser.Y" {fr->getMarkerTagCmd((yyvsp[(1) - (2)].integer));;} break; - case 1007: -#line 2384 "frame/parser.Y" + case 1015: +#line 2393 "frame/parser.Y" {fr->getMarkerTagCmd((yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 1008: -#line 2385 "frame/parser.Y" + case 1016: +#line 2394 "frame/parser.Y" {fr->getMarkerTextCmd((yyvsp[(1) - (2)].integer));;} break; - case 1009: -#line 2386 "frame/parser.Y" + case 1017: +#line 2395 "frame/parser.Y" {fr->getMarkerTextRotateCmd((yyvsp[(1) - (3)].integer));;} break; - case 1010: -#line 2387 "frame/parser.Y" + case 1018: +#line 2396 "frame/parser.Y" {fr->getMarkerTypeCmd((yyvsp[(1) - (2)].integer));;} break; - case 1011: -#line 2389 "frame/parser.Y" + case 1019: +#line 2398 "frame/parser.Y" {fr->getMarkerVectorArrowCmd((yyvsp[(1) - (3)].integer));;} break; - case 1012: -#line 2391 "frame/parser.Y" + case 1020: +#line 2400 "frame/parser.Y" {fr->getMarkerVectorLengthCmd((yyvsp[(1) - (5)].integer), (Coord::CoordSystem)(yyvsp[(4) - (5)].integer), (Coord::SkyDist)(yyvsp[(5) - (5)].integer));;} break; - case 1013: -#line 2393 "frame/parser.Y" + case 1021: +#line 2402 "frame/parser.Y" {fr->getMarkerVectorCmd((yyvsp[(1) - (6)].integer), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer), (Coord::SkyFormat)(yyvsp[(6) - (6)].integer));;} break; - case 1014: -#line 2395 "frame/parser.Y" + case 1022: +#line 2404 "frame/parser.Y" {fr->getMarkerLineWidthCmd((yyvsp[(1) - (2)].integer));;} break; - case 1016: -#line 2397 "frame/parser.Y" + case 1024: +#line 2406 "frame/parser.Y" {fr->getMarkerHighlitedNumberCmd();;} break; - case 1017: -#line 2398 "frame/parser.Y" + case 1025: +#line 2407 "frame/parser.Y" {fr->getMarkerNumberCmd();;} break; - case 1018: -#line 2400 "frame/parser.Y" + case 1026: +#line 2409 "frame/parser.Y" {fr->getMarkerPolygonSegmentCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; - case 1019: -#line 2402 "frame/parser.Y" + case 1027: +#line 2411 "frame/parser.Y" {fr->getMarkerSegmentSegmentCmd(Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; - case 1020: -#line 2403 "frame/parser.Y" + case 1028: +#line 2412 "frame/parser.Y" {fr->getMarkerPreserveCmd();;} break; - case 1021: -#line 2404 "frame/parser.Y" + case 1029: +#line 2413 "frame/parser.Y" {fr->getMarkerPropertyCmd((yyvsp[(2) - (2)].integer));;} break; - case 1023: -#line 2406 "frame/parser.Y" + case 1031: +#line 2415 "frame/parser.Y" {fr->getMarkerSelectedNumberCmd();;} break; - case 1025: -#line 2410 "frame/parser.Y" + case 1033: +#line 2419 "frame/parser.Y" {fr->getMarkerColorCmd((yyvsp[(1) - (2)].str));;} break; - case 1026: -#line 2411 "frame/parser.Y" + case 1034: +#line 2420 "frame/parser.Y" {fr->getMarkerFontCmd((yyvsp[(1) - (2)].str));;} break; - case 1027: -#line 2412 "frame/parser.Y" + case 1035: +#line 2421 "frame/parser.Y" {fr->getMarkerIdCmd((yyvsp[(1) - (2)].str));;} break; - case 1028: -#line 2413 "frame/parser.Y" + case 1036: +#line 2422 "frame/parser.Y" {fr->getMarkerPropertyCmd((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].integer));;} break; - case 1029: -#line 2414 "frame/parser.Y" + case 1037: +#line 2423 "frame/parser.Y" {fr->getMarkerTagCmd((yyvsp[(1) - (2)].str));;} break; - case 1030: -#line 2415 "frame/parser.Y" + case 1038: +#line 2424 "frame/parser.Y" {fr->getMarkerTagNumberCmd((yyvsp[(1) - (3)].str));;} break; - case 1031: -#line 2417 "frame/parser.Y" + case 1039: +#line 2426 "frame/parser.Y" {fr->getMarkerTagsCmd();;} break; - case 1032: -#line 2418 "frame/parser.Y" + case 1040: +#line 2427 "frame/parser.Y" {fr->getMarkerTagDefaultNameCmd();;} break; - case 1033: -#line 2420 "frame/parser.Y" + case 1041: +#line 2429 "frame/parser.Y" {fr->getMarkerLineWidthCmd();;} break; - case 1034: -#line 2423 "frame/parser.Y" + case 1042: +#line 2432 "frame/parser.Y" {fr->getMarkerCentroidAutoCmd();;} break; - case 1035: -#line 2424 "frame/parser.Y" + case 1043: +#line 2433 "frame/parser.Y" {fr->getMarkerCentroidRadiusCmd();;} break; - case 1036: -#line 2425 "frame/parser.Y" + case 1044: +#line 2434 "frame/parser.Y" {fr->getMarkerCentroidIterationCmd();;} break; - case 1037: -#line 2426 "frame/parser.Y" + case 1045: +#line 2435 "frame/parser.Y" {fr->getMarkerCentroidOptionCmd();;} break; - case 1038: -#line 2429 "frame/parser.Y" + case 1046: +#line 2438 "frame/parser.Y" {fr->getMarkerHighlitedCmd();;} break; - case 1039: -#line 2430 "frame/parser.Y" + case 1047: +#line 2439 "frame/parser.Y" {fr->getMarkerHighlitedCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1040: -#line 2433 "frame/parser.Y" + case 1048: +#line 2442 "frame/parser.Y" {fr->getMarkerSelectedCmd();;} break; - case 1041: -#line 2434 "frame/parser.Y" + case 1049: +#line 2443 "frame/parser.Y" {fr->getMarkerSelectedCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1042: -#line 2437 "frame/parser.Y" + case 1050: +#line 2446 "frame/parser.Y" {fr->getMarkerShowCmd();;} break; - case 1043: -#line 2438 "frame/parser.Y" + case 1051: +#line 2447 "frame/parser.Y" {fr->getMarkerShowTextCmd();;} break; - case 1044: -#line 2441 "frame/parser.Y" + case 1052: +#line 2450 "frame/parser.Y" { strncpy(currentFont, "helvetica 10 normal roman", 32); strncpy(currentColor, "green", 16); @@ -9926,885 +9992,885 @@ yyreduce: ;} break; - case 1045: -#line 2454 "frame/parser.Y" + case 1053: +#line 2463 "frame/parser.Y" {fr->markerLayerCmd(Base::USER);;} break; - case 1046: -#line 2455 "frame/parser.Y" + case 1054: +#line 2464 "frame/parser.Y" { // backward compatibility fr->markerLayerCmd(Base::USER); ;} break; - case 1047: -#line 2459 "frame/parser.Y" + case 1055: +#line 2468 "frame/parser.Y" {fr->markerLayerCmd(Base::USER);;} break; - case 1048: -#line 2460 "frame/parser.Y" + case 1056: +#line 2469 "frame/parser.Y" { // backward compatibility fr->markerLayerCmd(Base::USER); ;} break; - case 1049: -#line 2464 "frame/parser.Y" + case 1057: +#line 2473 "frame/parser.Y" {fr->markerLayerCmd(Base::CATALOG);;} break; - case 1050: -#line 2465 "frame/parser.Y" + case 1058: +#line 2474 "frame/parser.Y" {fr->markerLayerCmd(Base::ANALYSIS);;} break; - case 1051: -#line 2470 "frame/parser.Y" + case 1059: +#line 2479 "frame/parser.Y" {fr->markerListCmd((Base::MarkerFormat)(yyvsp[(1) - (7)].integer), (Coord::CoordSystem)(yyvsp[(2) - (7)].integer), (Coord::SkyFrame)(yyvsp[(3) - (7)].integer), (Coord::SkyFormat)(yyvsp[(4) - (7)].integer), (yyvsp[(5) - (7)].integer), 0, propQMask, propQValue, taglist);;} break; - case 1052: -#line 2475 "frame/parser.Y" + case 1060: +#line 2484 "frame/parser.Y" {fr->markerListCmd((Base::MarkerFormat)(yyvsp[(2) - (8)].integer), (Coord::CoordSystem)(yyvsp[(3) - (8)].integer), (Coord::SkyFrame)(yyvsp[(4) - (8)].integer), (Coord::SkyFormat)(yyvsp[(5) - (8)].integer), (yyvsp[(6) - (8)].integer), 1, propQMask, propQValue, taglist);;} break; - case 1053: -#line 2481 "frame/parser.Y" + case 1061: +#line 2490 "frame/parser.Y" {fr->markerLoadCmd((Base::MarkerFormat)(yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].str));;} break; - case 1054: -#line 2483 "frame/parser.Y" + case 1062: +#line 2492 "frame/parser.Y" {fr->markerLoadCmd((Base::MarkerFormat)(yyvsp[(1) - (4)].integer),(yyvsp[(2) - (4)].str), (Coord::CoordSystem)(yyvsp[(3) - (4)].integer),(Coord::SkyFrame)(yyvsp[(4) - (4)].integer));;} break; - case 1055: -#line 2486 "frame/parser.Y" + case 1063: +#line 2495 "frame/parser.Y" {fr->markerLoadCmd((Base::MarkerFormat)(yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].integer));;} break; - case 1056: -#line 2488 "frame/parser.Y" + case 1064: +#line 2497 "frame/parser.Y" {fr->markerLoadCmd((Base::MarkerFormat)(yyvsp[(1) - (4)].integer),(yyvsp[(2) - (4)].integer), (Coord::CoordSystem)(yyvsp[(3) - (4)].integer),(Coord::SkyFrame)(yyvsp[(4) - (4)].integer));;} break; - case 1057: -#line 2491 "frame/parser.Y" + case 1065: +#line 2500 "frame/parser.Y" {fr->markerLoadFitsCmd((yyvsp[(2) - (6)].str), (yyvsp[(3) - (6)].str), (yyvsp[(4) - (6)].dash), (yyvsp[(5) - (6)].integer), (yyvsp[(6) - (6)].str));;} break; - case 1058: -#line 2494 "frame/parser.Y" + case 1066: +#line 2503 "frame/parser.Y" {fr->markerMoveCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1059: -#line 2495 "frame/parser.Y" + case 1067: +#line 2504 "frame/parser.Y" {fr->markerFrontCmd();;} break; - case 1060: -#line 2496 "frame/parser.Y" + case 1068: +#line 2505 "frame/parser.Y" {fr->markerBackCmd();;} break; - case 1061: -#line 2497 "frame/parser.Y" + case 1069: +#line 2506 "frame/parser.Y" {fr->markerMoveBeginCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1062: -#line 2498 "frame/parser.Y" + case 1070: +#line 2507 "frame/parser.Y" {fr->markerMoveMotionCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1063: -#line 2499 "frame/parser.Y" + case 1071: +#line 2508 "frame/parser.Y" {fr->markerMoveEndCmd();;} break; - case 1064: -#line 2501 "frame/parser.Y" + case 1072: +#line 2510 "frame/parser.Y" {fr->markerMoveToCmd(Vector((yyvsp[(3) - (3)].vector)), (Coord::InternalSystem)(yyvsp[(2) - (3)].integer));;} break; - case 1065: -#line 2503 "frame/parser.Y" + case 1073: +#line 2512 "frame/parser.Y" {fr->markerMoveToCmd(Vector((yyvsp[(4) - (4)].vector)), (Coord::CoordSystem)(yyvsp[(2) - (4)].integer), (Coord::SkyFrame)(yyvsp[(3) - (4)].integer));;} break; - case 1068: -#line 2510 "frame/parser.Y" + case 1076: +#line 2519 "frame/parser.Y" {setProps(¤tProps,(yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 1069: -#line 2511 "frame/parser.Y" + case 1077: +#line 2520 "frame/parser.Y" {strncpy(currentColor,(yyvsp[(3) - (3)].str),16);;} break; - case 1070: -#line 2512 "frame/parser.Y" + case 1078: +#line 2521 "frame/parser.Y" {currentDash[0]=(yyvsp[(3) - (4)].integer);currentDash[1]=(yyvsp[(4) - (4)].integer);;} break; - case 1071: -#line 2513 "frame/parser.Y" + case 1079: +#line 2522 "frame/parser.Y" {currentWidth = (yyvsp[(3) - (3)].integer);;} break; - case 1072: -#line 2514 "frame/parser.Y" + case 1080: +#line 2523 "frame/parser.Y" {strncpy(currentFont,(yyvsp[(3) - (3)].str),32);;} break; - case 1073: -#line 2515 "frame/parser.Y" + case 1081: +#line 2524 "frame/parser.Y" {strncpy(currentText,(yyvsp[(3) - (3)].str),80);;} break; - case 1076: -#line 2520 "frame/parser.Y" + case 1084: +#line 2529 "frame/parser.Y" {(yyval.integer) = Marker::NONE;;} break; - case 1077: -#line 2521 "frame/parser.Y" + case 1085: +#line 2530 "frame/parser.Y" {(yyval.integer) = Marker::SELECT;;} break; - case 1078: -#line 2522 "frame/parser.Y" + case 1086: +#line 2531 "frame/parser.Y" {(yyval.integer) = Marker::HIGHLITE;;} break; - case 1079: -#line 2523 "frame/parser.Y" + case 1087: +#line 2532 "frame/parser.Y" {(yyval.integer) = Marker::DASH;;} break; - case 1080: -#line 2524 "frame/parser.Y" + case 1088: +#line 2533 "frame/parser.Y" {(yyval.integer) = Marker::FIXED;;} break; - case 1081: -#line 2525 "frame/parser.Y" + case 1089: +#line 2534 "frame/parser.Y" {(yyval.integer) = Marker::EDIT;;} break; - case 1082: -#line 2526 "frame/parser.Y" + case 1090: +#line 2535 "frame/parser.Y" {(yyval.integer) = Marker::MOVE;;} break; - case 1083: -#line 2527 "frame/parser.Y" + case 1091: +#line 2536 "frame/parser.Y" {(yyval.integer) = Marker::ROTATE;;} break; - case 1084: -#line 2528 "frame/parser.Y" + case 1092: +#line 2537 "frame/parser.Y" {(yyval.integer) = Marker::DELETE;;} break; - case 1085: -#line 2529 "frame/parser.Y" + case 1093: +#line 2538 "frame/parser.Y" {(yyval.integer) = Marker::INCLUDE;;} break; - case 1086: -#line 2530 "frame/parser.Y" + case 1094: +#line 2539 "frame/parser.Y" {(yyval.integer) = Marker::SOURCE;;} break; - case 1089: -#line 2537 "frame/parser.Y" + case 1097: +#line 2546 "frame/parser.Y" {propQMask=0;propQValue=0;;} break; - case 1090: -#line 2538 "frame/parser.Y" + case 1098: +#line 2547 "frame/parser.Y" {propQMask=0;propQValue=0;;} break; - case 1092: -#line 2541 "frame/parser.Y" + case 1100: +#line 2550 "frame/parser.Y" {fr->markerSelectAllCmd();;} break; - case 1093: -#line 2542 "frame/parser.Y" + case 1101: +#line 2551 "frame/parser.Y" {fr->markerSelectOnlyCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1094: -#line 2543 "frame/parser.Y" + case 1102: +#line 2552 "frame/parser.Y" {fr->markerSelectToggleCmd();;} break; - case 1095: -#line 2544 "frame/parser.Y" + case 1103: +#line 2553 "frame/parser.Y" {fr->markerSelectToggleCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1096: -#line 2547 "frame/parser.Y" + case 1104: +#line 2556 "frame/parser.Y" {fr->markerShowCmd((yyvsp[(1) - (1)].integer));;} break; - case 1097: -#line 2548 "frame/parser.Y" + case 1105: +#line 2557 "frame/parser.Y" {fr->markerShowTextCmd((yyvsp[(2) - (2)].integer));;} break; - case 1100: -#line 2556 "frame/parser.Y" + case 1108: +#line 2565 "frame/parser.Y" {propQMask |= (yyvsp[(1) - (3)].integer); setProps(&propQValue,(yyvsp[(1) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 1101: -#line 2559 "frame/parser.Y" + case 1109: +#line 2568 "frame/parser.Y" {taglist.deleteAll();;} break; - case 1102: -#line 2560 "frame/parser.Y" + case 1110: +#line 2569 "frame/parser.Y" {taglist.deleteAll();;} break; - case 1106: -#line 2567 "frame/parser.Y" + case 1114: +#line 2576 "frame/parser.Y" {taglist.append(new Tag((yyvsp[(3) - (3)].str)));;} break; - case 1107: -#line 2570 "frame/parser.Y" + case 1115: +#line 2579 "frame/parser.Y" {cblist.append( new CallBack(fr->getInterp(),(CallBack::Type)(yyvsp[(3) - (5)].integer),(yyvsp[(4) - (5)].str),(yyvsp[(5) - (5)].str)));;} break; - case 1108: -#line 2574 "frame/parser.Y" + case 1116: +#line 2583 "frame/parser.Y" {fr->maskClearCmd();;} break; - case 1109: -#line 2575 "frame/parser.Y" + case 1117: +#line 2584 "frame/parser.Y" {fr->maskColorCmd((yyvsp[(2) - (2)].str));;} break; - case 1110: -#line 2576 "frame/parser.Y" + case 1118: +#line 2585 "frame/parser.Y" {fr->maskMarkCmd((yyvsp[(2) - (2)].integer));;} break; - case 1111: -#line 2577 "frame/parser.Y" + case 1119: +#line 2586 "frame/parser.Y" {fr->maskTransparencyCmd((yyvsp[(2) - (2)].real));;} break; - case 1112: -#line 2580 "frame/parser.Y" + case 1120: +#line 2589 "frame/parser.Y" {fr->orientCmd(Coord::XX);;} break; - case 1113: -#line 2581 "frame/parser.Y" + case 1121: +#line 2590 "frame/parser.Y" {fr->orientCmd(Coord::YY);;} break; - case 1114: -#line 2582 "frame/parser.Y" + case 1122: +#line 2591 "frame/parser.Y" {fr->orientCmd(Coord::XY);;} break; - case 1115: -#line 2583 "frame/parser.Y" + case 1123: +#line 2592 "frame/parser.Y" {fr->orientCmd(Coord::NORMAL);;} break; - case 1116: -#line 2587 "frame/parser.Y" + case 1124: +#line 2596 "frame/parser.Y" {fr->panCmd(Vector((yyvsp[(1) - (4)].real),(yyvsp[(2) - (4)].real)),Vector((yyvsp[(3) - (4)].real),(yyvsp[(4) - (4)].real)));;} break; - case 1117: -#line 2588 "frame/parser.Y" + case 1125: +#line 2597 "frame/parser.Y" {fr->panCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1118: -#line 2590 "frame/parser.Y" + case 1126: +#line 2599 "frame/parser.Y" { // backward compatibility fr->panCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real))); ;} break; - case 1119: -#line 2595 "frame/parser.Y" + case 1127: +#line 2604 "frame/parser.Y" {fr->panCmd(Vector((yyvsp[(3) - (3)].vector)), (Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer));;} break; - case 1121: -#line 2597 "frame/parser.Y" + case 1129: +#line 2606 "frame/parser.Y" {fr->panBBoxCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1123: -#line 2599 "frame/parser.Y" + case 1131: +#line 2608 "frame/parser.Y" {fr->panPreserveCmd((yyvsp[(2) - (2)].integer));;} break; - case 1124: -#line 2602 "frame/parser.Y" + case 1132: +#line 2611 "frame/parser.Y" {fr->panToCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1125: -#line 2604 "frame/parser.Y" + case 1133: +#line 2613 "frame/parser.Y" { // backward compatibility fr->panToCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real))); ;} break; - case 1126: -#line 2609 "frame/parser.Y" + case 1134: +#line 2618 "frame/parser.Y" {fr->panToCmd(Vector((yyvsp[(3) - (3)].vector)), (Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer));;} break; - case 1127: -#line 2612 "frame/parser.Y" + case 1135: +#line 2621 "frame/parser.Y" {fr->panBeginCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1128: -#line 2613 "frame/parser.Y" + case 1136: +#line 2622 "frame/parser.Y" {fr->panMotionCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1129: -#line 2614 "frame/parser.Y" + case 1137: +#line 2623 "frame/parser.Y" {fr->panEndCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1130: -#line 2617 "frame/parser.Y" + case 1138: +#line 2626 "frame/parser.Y" {fr->pannerCmd((yyvsp[(1) - (1)].integer));;} break; - case 1131: -#line 2619 "frame/parser.Y" + case 1139: +#line 2628 "frame/parser.Y" { // backward compatibility fr->pannerCmd((Coord::CoordSystem)(yyvsp[(2) - (3)].integer),(Coord::SkyFrame)(yyvsp[(3) - (3)].integer)); ;} break; - case 1132: -#line 2623 "frame/parser.Y" + case 1140: +#line 2632 "frame/parser.Y" {fr->pannerCmd((yyvsp[(1) - (3)].str), (yyvsp[(2) - (3)].integer), (yyvsp[(3) - (3)].integer));;} break; - case 1133: -#line 2624 "frame/parser.Y" + case 1141: +#line 2633 "frame/parser.Y" {fr->updatePannerCmd();;} break; - case 1134: -#line 2628 "frame/parser.Y" + case 1142: +#line 2637 "frame/parser.Y" {fr->psColorSpaceCmd((Widget::PSColorSpace)(yyvsp[(2) - (2)].integer));;} break; - case 1135: -#line 2629 "frame/parser.Y" + case 1143: +#line 2638 "frame/parser.Y" {fr->psLevelCmd((yyvsp[(2) - (2)].integer));;} break; - case 1136: -#line 2630 "frame/parser.Y" + case 1144: +#line 2639 "frame/parser.Y" {fr->psResolutionCmd((yyvsp[(2) - (2)].integer));;} break; - case 1137: -#line 2631 "frame/parser.Y" + case 1145: +#line 2640 "frame/parser.Y" { // backward compatibility with backup ;} break; - case 1138: -#line 2636 "frame/parser.Y" + case 1146: +#line 2645 "frame/parser.Y" {(yyval.integer) = Widget::BW;;} break; - case 1139: -#line 2637 "frame/parser.Y" + case 1147: +#line 2646 "frame/parser.Y" {(yyval.integer) = Widget::GRAY;;} break; - case 1140: -#line 2638 "frame/parser.Y" + case 1148: +#line 2647 "frame/parser.Y" {(yyval.integer) = Widget::RGB;;} break; - case 1141: -#line 2639 "frame/parser.Y" + case 1149: +#line 2648 "frame/parser.Y" {(yyval.integer) = Widget::CMYK;;} break; - case 1144: -#line 2647 "frame/parser.Y" + case 1152: +#line 2656 "frame/parser.Y" {fr->regionHighliteBeginCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1145: -#line 2649 "frame/parser.Y" + case 1153: +#line 2658 "frame/parser.Y" {fr->regionHighliteMotionCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1146: -#line 2650 "frame/parser.Y" + case 1154: +#line 2659 "frame/parser.Y" {fr->regionHighliteEndCmd();;} break; - case 1147: -#line 2651 "frame/parser.Y" + case 1155: +#line 2660 "frame/parser.Y" {fr->regionHighliteShiftEndCmd();;} break; - case 1148: -#line 2655 "frame/parser.Y" + case 1156: +#line 2664 "frame/parser.Y" {fr->regionSelectBeginCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1149: -#line 2656 "frame/parser.Y" + case 1157: +#line 2665 "frame/parser.Y" {fr->regionSelectMotionCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1150: -#line 2657 "frame/parser.Y" + case 1158: +#line 2666 "frame/parser.Y" {fr->regionSelectEndCmd();;} break; - case 1151: -#line 2658 "frame/parser.Y" + case 1159: +#line 2667 "frame/parser.Y" {fr->regionSelectShiftEndCmd();;} break; - case 1152: -#line 2661 "frame/parser.Y" + case 1160: +#line 2670 "frame/parser.Y" {(yyval.integer) = Frame3dBase::MIP;;} break; - case 1153: -#line 2662 "frame/parser.Y" + case 1161: +#line 2671 "frame/parser.Y" {(yyval.integer) = Frame3dBase::AIP;;} break; - case 1154: -#line 2665 "frame/parser.Y" + case 1162: +#line 2674 "frame/parser.Y" {(yyval.integer) = Frame3dBase::NONE;;} break; - case 1155: -#line 2666 "frame/parser.Y" + case 1163: +#line 2675 "frame/parser.Y" {(yyval.integer) = Frame3dBase::AZIMUTH;;} break; - case 1156: -#line 2667 "frame/parser.Y" + case 1164: +#line 2676 "frame/parser.Y" {(yyval.integer) = Frame3dBase::ELEVATION;;} break; - case 1157: -#line 2670 "frame/parser.Y" + case 1165: +#line 2679 "frame/parser.Y" {fr->setRGBChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1158: -#line 2671 "frame/parser.Y" + case 1166: +#line 2680 "frame/parser.Y" {fr->setRGBSystemCmd((Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; - case 1159: -#line 2672 "frame/parser.Y" + case 1167: +#line 2681 "frame/parser.Y" {fr->setRGBViewCmd((yyvsp[(2) - (4)].integer),(yyvsp[(3) - (4)].integer),(yyvsp[(4) - (4)].integer));;} break; - case 1160: -#line 2675 "frame/parser.Y" + case 1168: +#line 2684 "frame/parser.Y" {fr->rotateCmd(degToRad((yyvsp[(1) - (1)].real)));;} break; - case 1161: -#line 2676 "frame/parser.Y" + case 1169: +#line 2685 "frame/parser.Y" {fr->rotateCmd(degToRad((yyvsp[(1) - (2)].real)));;} break; - case 1163: -#line 2678 "frame/parser.Y" + case 1171: +#line 2687 "frame/parser.Y" {fr->rotateToCmd(degToRad((yyvsp[(2) - (2)].real)));;} break; - case 1164: -#line 2679 "frame/parser.Y" + case 1172: +#line 2688 "frame/parser.Y" {fr->rotateToCmd(degToRad((yyvsp[(2) - (3)].real)));;} break; - case 1165: -#line 2682 "frame/parser.Y" + case 1173: +#line 2691 "frame/parser.Y" {fr->rotateBeginCmd();;} break; - case 1166: -#line 2683 "frame/parser.Y" + case 1174: +#line 2692 "frame/parser.Y" {fr->rotateMotionCmd(degToRad((yyvsp[(1) - (1)].real)));;} break; - case 1167: -#line 2684 "frame/parser.Y" + case 1175: +#line 2693 "frame/parser.Y" {fr->rotateEndCmd();;} break; - case 1172: -#line 2691 "frame/parser.Y" + case 1180: +#line 2700 "frame/parser.Y" {fr->savePhotoCmd((yyvsp[(2) - (2)].str));;} break; - case 1173: -#line 2695 "frame/parser.Y" + case 1181: +#line 2704 "frame/parser.Y" {fr->saveArrayFileCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1174: -#line 2697 "frame/parser.Y" + case 1182: +#line 2706 "frame/parser.Y" {fr->saveArrayChannelCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1175: -#line 2699 "frame/parser.Y" + case 1183: +#line 2708 "frame/parser.Y" {fr->saveArraySocketCmd((yyvsp[(2) - (3)].integer), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1177: -#line 2704 "frame/parser.Y" + case 1185: +#line 2713 "frame/parser.Y" {fr->saveArrayRGBCubeFileCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1178: -#line 2706 "frame/parser.Y" + case 1186: +#line 2715 "frame/parser.Y" {fr->saveArrayRGBCubeChannelCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1179: -#line 2708 "frame/parser.Y" + case 1187: +#line 2717 "frame/parser.Y" {fr->saveArrayRGBCubeSocketCmd((yyvsp[(2) - (3)].integer), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1189: -#line 2721 "frame/parser.Y" + case 1197: +#line 2730 "frame/parser.Y" {fr->saveFitsFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1190: -#line 2722 "frame/parser.Y" + case 1198: +#line 2731 "frame/parser.Y" {fr->saveFitsChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1191: -#line 2723 "frame/parser.Y" + case 1199: +#line 2732 "frame/parser.Y" {fr->saveFitsSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1192: -#line 2726 "frame/parser.Y" + case 1200: +#line 2735 "frame/parser.Y" {fr->saveFitsTableFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1193: -#line 2727 "frame/parser.Y" + case 1201: +#line 2736 "frame/parser.Y" {fr->saveFitsTableChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1194: -#line 2728 "frame/parser.Y" + case 1202: +#line 2737 "frame/parser.Y" {fr->saveFitsTableSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1195: -#line 2731 "frame/parser.Y" + case 1203: +#line 2740 "frame/parser.Y" {fr->saveFitsSliceFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1196: -#line 2732 "frame/parser.Y" + case 1204: +#line 2741 "frame/parser.Y" {fr->saveFitsSliceChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1197: -#line 2733 "frame/parser.Y" + case 1205: +#line 2742 "frame/parser.Y" {fr->saveFitsSliceSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1198: -#line 2736 "frame/parser.Y" + case 1206: +#line 2745 "frame/parser.Y" {fr->saveFitsExtCubeFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1199: -#line 2737 "frame/parser.Y" + case 1207: +#line 2746 "frame/parser.Y" {fr->saveFitsExtCubeChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1200: -#line 2738 "frame/parser.Y" + case 1208: +#line 2747 "frame/parser.Y" {fr->saveFitsExtCubeSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1202: -#line 2742 "frame/parser.Y" + case 1210: +#line 2751 "frame/parser.Y" {fr->saveFitsMosaicFileCmd((yyvsp[(2) - (3)].str),(yyvsp[(3) - (3)].integer));;} break; - case 1203: -#line 2743 "frame/parser.Y" + case 1211: +#line 2752 "frame/parser.Y" {fr->saveFitsMosaicChannelCmd((yyvsp[(2) - (3)].str),(yyvsp[(3) - (3)].integer));;} break; - case 1204: -#line 2744 "frame/parser.Y" + case 1212: +#line 2753 "frame/parser.Y" {fr->saveFitsMosaicSocketCmd((yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].integer));;} break; - case 1205: -#line 2747 "frame/parser.Y" + case 1213: +#line 2756 "frame/parser.Y" {fr->saveFitsMosaicImageFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1206: -#line 2748 "frame/parser.Y" + case 1214: +#line 2757 "frame/parser.Y" {fr->saveFitsMosaicImageChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1207: -#line 2749 "frame/parser.Y" + case 1215: +#line 2758 "frame/parser.Y" {fr->saveFitsMosaicImageSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1208: -#line 2752 "frame/parser.Y" + case 1216: +#line 2761 "frame/parser.Y" {fr->saveFitsRGBImageFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1209: -#line 2753 "frame/parser.Y" + case 1217: +#line 2762 "frame/parser.Y" {fr->saveFitsRGBImageChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1210: -#line 2754 "frame/parser.Y" + case 1218: +#line 2763 "frame/parser.Y" {fr->saveFitsRGBImageSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1211: -#line 2757 "frame/parser.Y" + case 1219: +#line 2766 "frame/parser.Y" {fr->saveFitsRGBCubeFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1212: -#line 2758 "frame/parser.Y" + case 1220: +#line 2767 "frame/parser.Y" {fr->saveFitsRGBCubeChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1213: -#line 2759 "frame/parser.Y" + case 1221: +#line 2768 "frame/parser.Y" {fr->saveFitsRGBCubeSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1214: -#line 2762 "frame/parser.Y" + case 1222: +#line 2771 "frame/parser.Y" {fr->saveFitsResampleFileCmd((yyvsp[(2) - (2)].str));;} break; - case 1215: -#line 2763 "frame/parser.Y" + case 1223: +#line 2772 "frame/parser.Y" {fr->saveFitsResampleChannelCmd((yyvsp[(2) - (2)].str));;} break; - case 1216: -#line 2764 "frame/parser.Y" + case 1224: +#line 2773 "frame/parser.Y" {fr->saveFitsResampleSocketCmd((yyvsp[(2) - (2)].integer));;} break; - case 1217: -#line 2768 "frame/parser.Y" + case 1225: +#line 2777 "frame/parser.Y" {fr->saveNRRDFileCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1218: -#line 2770 "frame/parser.Y" + case 1226: +#line 2779 "frame/parser.Y" {fr->saveNRRDChannelCmd((yyvsp[(2) - (3)].str), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1219: -#line 2772 "frame/parser.Y" + case 1227: +#line 2781 "frame/parser.Y" {fr->saveNRRDSocketCmd((yyvsp[(2) - (3)].integer), (FitsFile::ArchType)(yyvsp[(3) - (3)].integer));;} break; - case 1220: -#line 2776 "frame/parser.Y" + case 1228: +#line 2785 "frame/parser.Y" {fr->saveENVIFileCmd((yyvsp[(2) - (4)].str), (yyvsp[(3) - (4)].str), (FitsFile::ArchType)(yyvsp[(4) - (4)].integer));;} break; - case 1221: -#line 2779 "frame/parser.Y" + case 1229: +#line 2788 "frame/parser.Y" {fr->smoothCmd((Context::SmoothFunction)(yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].integer));;} break; - case 1222: -#line 2780 "frame/parser.Y" + case 1230: +#line 2789 "frame/parser.Y" {fr->smoothDeleteCmd();;} break; - case 1223: -#line 2783 "frame/parser.Y" + case 1231: +#line 2792 "frame/parser.Y" {(yyval.integer) = Context::BOXCAR;;} break; - case 1224: -#line 2784 "frame/parser.Y" + case 1232: +#line 2793 "frame/parser.Y" {(yyval.integer) = Context::GAUSSIAN;;} break; - case 1225: -#line 2785 "frame/parser.Y" + case 1233: +#line 2794 "frame/parser.Y" {(yyval.integer) = Context::TOPHAT;;} break; - case 1226: -#line 2788 "frame/parser.Y" + case 1234: +#line 2797 "frame/parser.Y" {fr->updateFitsCmd(0);;} break; - case 1227: -#line 2790 "frame/parser.Y" + case 1235: +#line 2799 "frame/parser.Y" {fr->updateFitsCmd((yyvsp[(1) - (5)].integer),BBox((yyvsp[(2) - (5)].real),(yyvsp[(3) - (5)].real),(yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)),0);;} break; - case 1228: -#line 2791 "frame/parser.Y" + case 1236: +#line 2800 "frame/parser.Y" {fr->updateFitsCmd(1);;} break; - case 1229: -#line 2793 "frame/parser.Y" + case 1237: +#line 2802 "frame/parser.Y" {fr->updateFitsCmd((yyvsp[(2) - (6)].integer),BBox((yyvsp[(3) - (6)].real),(yyvsp[(4) - (6)].real),(yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real)),1);;} break; - case 1231: -#line 2797 "frame/parser.Y" + case 1239: +#line 2806 "frame/parser.Y" {fr->sliceCmd(2, (yyvsp[(1) - (1)].integer));;} break; - case 1232: -#line 2798 "frame/parser.Y" + case 1240: +#line 2807 "frame/parser.Y" {fr->sliceCmd(2, (yyvsp[(1) - (2)].real), (Coord::CoordSystem)(yyvsp[(2) - (2)].integer));;} break; - case 1233: -#line 2799 "frame/parser.Y" + case 1241: +#line 2808 "frame/parser.Y" {fr->sliceCmd((yyvsp[(1) - (2)].integer), (yyvsp[(2) - (2)].integer));;} break; - case 1234: -#line 2800 "frame/parser.Y" + case 1242: +#line 2809 "frame/parser.Y" {fr->sliceCmd((yyvsp[(1) - (3)].integer), (yyvsp[(2) - (3)].real), (Coord::CoordSystem)(yyvsp[(3) - (3)].integer));;} break; - case 1235: -#line 2803 "frame/parser.Y" + case 1243: +#line 2812 "frame/parser.Y" {fr->warpCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1236: -#line 2804 "frame/parser.Y" + case 1244: +#line 2813 "frame/parser.Y" {fr->warpToCmd(Vector((yyvsp[(2) - (3)].real),(yyvsp[(3) - (3)].real)));;} break; - case 1237: -#line 2808 "frame/parser.Y" + case 1245: +#line 2817 "frame/parser.Y" {fr->wcsCmd((Coord::CoordSystem)(yyvsp[(1) - (3)].integer), (Coord::SkyFrame)(yyvsp[(2) - (3)].integer), (Coord::SkyFormat)(yyvsp[(3) - (3)].integer));;} break; - case 1239: -#line 2810 "frame/parser.Y" + case 1247: +#line 2819 "frame/parser.Y" {fr->wcsResetCmd((yyvsp[(2) - (2)].integer));;} break; - case 1242: -#line 2815 "frame/parser.Y" + case 1250: +#line 2824 "frame/parser.Y" {fr->wcsAppendCmd((yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].integer));;} break; - case 1243: -#line 2816 "frame/parser.Y" + case 1251: +#line 2825 "frame/parser.Y" {fr->wcsAppendCmd((yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].str));;} break; - case 1244: -#line 2817 "frame/parser.Y" + case 1252: +#line 2826 "frame/parser.Y" {fr->wcsAppendTxtCmd((yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; - case 1245: -#line 2820 "frame/parser.Y" + case 1253: +#line 2829 "frame/parser.Y" {fr->wcsReplaceCmd((yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].integer));;} break; - case 1246: -#line 2821 "frame/parser.Y" + case 1254: +#line 2830 "frame/parser.Y" {fr->wcsReplaceCmd((yyvsp[(1) - (2)].integer),(yyvsp[(2) - (2)].str));;} break; - case 1247: -#line 2822 "frame/parser.Y" + case 1255: +#line 2831 "frame/parser.Y" {fr->wcsReplaceTxtCmd((yyvsp[(2) - (3)].integer),(yyvsp[(3) - (3)].str));;} break; - case 1248: -#line 2825 "frame/parser.Y" + case 1256: +#line 2834 "frame/parser.Y" {fr->wcsAlignCmd((yyvsp[(1) - (1)].integer));;} break; - case 1249: -#line 2827 "frame/parser.Y" + case 1257: +#line 2836 "frame/parser.Y" { // used by backup fr->wcsAlignCmd((yyvsp[(1) - (3)].integer), (Coord::CoordSystem)(yyvsp[(2) - (3)].integer), (Coord::SkyFrame)(yyvsp[(3) - (3)].integer)); ;} break; - case 1250: -#line 2832 "frame/parser.Y" + case 1258: +#line 2841 "frame/parser.Y" {fr->wcsAlignCmd((yyvsp[(1) - (4)].integer), (FitsImage*)(yyvsp[(2) - (4)].ptr), (Coord::CoordSystem)(yyvsp[(3) - (4)].integer), (Coord::SkyFrame)(yyvsp[(4) - (4)].integer));;} break; - case 1251: -#line 2835 "frame/parser.Y" + case 1259: +#line 2844 "frame/parser.Y" { #ifdef __WIN32 fr->win32PrintCmd(); @@ -10812,66 +10878,66 @@ yyreduce: ;} break; - case 1252: -#line 2842 "frame/parser.Y" + case 1260: +#line 2851 "frame/parser.Y" {fr->zoomCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1253: -#line 2844 "frame/parser.Y" + case 1261: +#line 2853 "frame/parser.Y" {fr->zoomAboutCmd(Vector((yyvsp[(1) - (5)].real),(yyvsp[(2) - (5)].real)),Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)));;} break; - case 1254: -#line 2846 "frame/parser.Y" + case 1262: +#line 2855 "frame/parser.Y" { // backward compatibility fr->zoomAboutCmd(Vector((yyvsp[(1) - (6)].real),(yyvsp[(2) - (6)].real)),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real))); ;} break; - case 1255: -#line 2851 "frame/parser.Y" + case 1263: +#line 2860 "frame/parser.Y" {fr->zoomAboutCmd(Vector((yyvsp[(1) - (6)].real),(yyvsp[(2) - (6)].real)),Vector((yyvsp[(6) - (6)].vector)), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer),(Coord::SkyFrame)(yyvsp[(5) - (6)].integer));;} break; - case 1257: -#line 2855 "frame/parser.Y" + case 1265: +#line 2864 "frame/parser.Y" {fr->zoomToFitCmd(1);;} break; - case 1258: -#line 2856 "frame/parser.Y" + case 1266: +#line 2865 "frame/parser.Y" {fr->zoomToFitCmd((yyvsp[(2) - (2)].real));;} break; - case 1259: -#line 2857 "frame/parser.Y" + case 1267: +#line 2866 "frame/parser.Y" {fr->zoomToCmd(Vector((yyvsp[(1) - (2)].real),(yyvsp[(2) - (2)].real)));;} break; - case 1260: -#line 2859 "frame/parser.Y" + case 1268: +#line 2868 "frame/parser.Y" {fr->zoomToAboutCmd(Vector((yyvsp[(1) - (5)].real),(yyvsp[(2) - (5)].real)),Vector((yyvsp[(4) - (5)].real),(yyvsp[(5) - (5)].real)));;} break; - case 1261: -#line 2861 "frame/parser.Y" + case 1269: +#line 2870 "frame/parser.Y" { // backward compatibility fr->zoomToAboutCmd(Vector((yyvsp[(1) - (6)].real),(yyvsp[(2) - (6)].real)),Vector((yyvsp[(5) - (6)].real),(yyvsp[(6) - (6)].real))); ;} break; - case 1262: -#line 2866 "frame/parser.Y" + case 1270: +#line 2875 "frame/parser.Y" {fr->zoomToAboutCmd(Vector((yyvsp[(1) - (6)].real),(yyvsp[(2) - (6)].real)), Vector((yyvsp[(6) - (6)].vector)), (Coord::CoordSystem)(yyvsp[(4) - (6)].integer), (Coord::SkyFrame)(yyvsp[(5) - (6)].integer));;} break; /* Line 1267 of yacc.c. */ -#line 10875 "frame/parser.C" +#line 10941 "frame/parser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -11085,7 +11151,7 @@ yyreturn: } -#line 2870 "frame/parser.Y" +#line 2879 "frame/parser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/parser.H b/tksao/frame/parser.H index 8f39baf..032da5e 100644 --- a/tksao/frame/parser.H +++ b/tksao/frame/parser.H @@ -156,227 +156,228 @@ FACTOR_ = 372, FALSE_ = 373, FILE_ = 374, - FILTER_ = 375, - FIT_ = 376, - FITS_ = 377, - FITSY_ = 378, - FIXED_ = 379, - FK4_ = 380, - FK4_NO_E_ = 381, - FK5_ = 382, - FONT_ = 383, - FRONT_ = 384, - FULL_ = 385, - FUNCTION_ = 386, - GALACTIC_ = 387, - GAUSSIAN_ = 388, - GET_ = 389, - GLOBAL_ = 390, - GRAPHICS_ = 391, - GRAY_ = 392, - GRID_ = 393, - GZ_ = 394, - HANDLE_ = 395, - HAS_ = 396, - HEAD_ = 397, - HEADER_ = 398, - HEIGHT_ = 399, - HELIOECLIPTIC_ = 400, - HIDE_ = 401, - HIGHLITE_ = 402, - HISTEQU_ = 403, - HISTOGRAM_ = 404, - HORIZONTAL_ = 405, - ICRS_ = 406, - ID_ = 407, - IIS_ = 408, - IMAGE_ = 409, - INCLUDE_ = 410, - INCR_ = 411, - INFO_ = 412, - INTEGER_ = 413, - ITERATION_ = 414, - IRAF_ = 415, - IRAFMIN_ = 416, - J2000_ = 417, - KEY_ = 418, - KEYWORD_ = 419, - LABEL_ = 420, - LENGTH_ = 421, - LEVEL_ = 422, - LITTLE_ = 423, - LITTLEENDIAN_ = 424, - LINE_ = 425, - LINEAR_ = 426, - LIST_ = 427, - LOAD_ = 428, - LOCAL_ = 429, - LOG_ = 430, - MACOSX_ = 431, - MAGNIFIER_ = 432, - MATCH_ = 433, - MAP_ = 434, - MARK_ = 435, - MARKER_ = 436, - MASK_ = 437, - MESSAGE_ = 438, - METHOD_ = 439, - MINMAX_ = 440, - MIP_ = 441, - MMAP_ = 442, - MMAPINCR_ = 443, - MOSAIC_ = 444, - MODE_ = 445, - MOTION_ = 446, - MOVE_ = 447, - NAME_ = 448, - NAN_ = 449, - NATIVE_ = 450, - NAXES_ = 451, - NEW_ = 452, - NEXT_ = 453, - NO_ = 454, - NONE_ = 455, - NOW_ = 456, - NRRD_ = 457, - NUMBER_ = 458, - OBJECT_ = 459, - OFF_ = 460, - ON_ = 461, - ONLY_ = 462, - OPTION_ = 463, - ORIENT_ = 464, - PAN_ = 465, - PANNER_ = 466, - PARSER_ = 467, - PASTE_ = 468, - PERF_ = 469, - PHOTO_ = 470, - PHYSICAL_ = 471, - PIXEL_ = 472, - PLOT2D_ = 473, - PLOT3D_ = 474, - POINT_ = 475, - POINTER_ = 476, - POLYGON_ = 477, - POSTSCRIPT_ = 478, - POW_ = 479, - PRINT_ = 480, - PRESERVE_ = 481, - PROJECTION_ = 482, - PROPERTY_ = 483, - PUBLICATION_ = 484, - PROS_ = 485, - QUERY_ = 486, - RADIAL_ = 487, - RADIUS_ = 488, - REGION_ = 489, - REPLACE_ = 490, - RESAMPLE_ = 491, - RESET_ = 492, - RESOLUTION_ = 493, - RGB_ = 494, - ROOT_ = 495, - ROTATE_ = 496, - RULER_ = 497, - SAMPLE_ = 498, - SAOIMAGE_ = 499, - SAOTNG_ = 500, - SAVE_ = 501, - SCALE_ = 502, - SCAN_ = 503, - SCIENTIFIC_ = 504, - SCOPE_ = 505, - SEGMENT_ = 506, - SELECT_ = 507, - SET_ = 508, - SEXAGESIMAL_ = 509, - SHAPE_ = 510, - SHARED_ = 511, - SHIFT_ = 512, - SHMID_ = 513, - SHOW_ = 514, - SINH_ = 515, - SIZE_ = 516, - SLICE_ = 517, - SMMAP_ = 518, - SMOOTH_ = 519, - SOCKET_ = 520, - SOCKETGZ_ = 521, - SOURCE_ = 522, - SQRT_ = 523, - SQUARED_ = 524, - SSHARED_ = 525, - STATS_ = 526, - STATUS_ = 527, - SUPERGALACTIC_ = 528, - SUM_ = 529, - SYSTEM_ = 530, - TABLE_ = 531, - TAG_ = 532, - TEMPLATE_ = 533, - TEXT_ = 534, - THREADS_ = 535, - THREED_ = 536, - THRESHOLD_ = 537, - THICK_ = 538, - TRANSPARENCY_ = 539, - TO_ = 540, - TOGGLE_ = 541, - TOPHAT_ = 542, - TRUE_ = 543, - TYPE_ = 544, - UNDO_ = 545, - UNHIGHLITE_ = 546, - UNLOAD_ = 547, - UNSELECT_ = 548, - UPDATE_ = 549, - USER_ = 550, - VALUE_ = 551, - VAR_ = 552, - VIEW_ = 553, - VECTOR_ = 554, - VERSION_ = 555, - VERTEX_ = 556, - VERTICAL_ = 557, - WARP_ = 558, - WCS_ = 559, - WCSA_ = 560, - WCSB_ = 561, - WCSC_ = 562, - WCSD_ = 563, - WCSE_ = 564, - WCSF_ = 565, - WCSG_ = 566, - WCSH_ = 567, - WCSI_ = 568, - WCSJ_ = 569, - WCSK_ = 570, - WCSL_ = 571, - WCSM_ = 572, - WCSN_ = 573, - WCSO_ = 574, - WCSP_ = 575, - WCSQ_ = 576, - WCSR_ = 577, - WCSS_ = 578, - WCST_ = 579, - WCSU_ = 580, - WCSV_ = 581, - WCSW_ = 582, - WCSX_ = 583, - WCSY_ = 584, - WCSZ_ = 585, - WCS0_ = 586, - WFPC2_ = 587, - WIDTH_ = 588, - WIN32_ = 589, - XML_ = 590, - XY_ = 591, - YES_ = 592, - ZMAX_ = 593, - ZSCALE_ = 594, - ZOOM_ = 595 + FILL_ = 375, + FILTER_ = 376, + FIT_ = 377, + FITS_ = 378, + FITSY_ = 379, + FIXED_ = 380, + FK4_ = 381, + FK4_NO_E_ = 382, + FK5_ = 383, + FONT_ = 384, + FRONT_ = 385, + FULL_ = 386, + FUNCTION_ = 387, + GALACTIC_ = 388, + GAUSSIAN_ = 389, + GET_ = 390, + GLOBAL_ = 391, + GRAPHICS_ = 392, + GRAY_ = 393, + GRID_ = 394, + GZ_ = 395, + HANDLE_ = 396, + HAS_ = 397, + HEAD_ = 398, + HEADER_ = 399, + HEIGHT_ = 400, + HELIOECLIPTIC_ = 401, + HIDE_ = 402, + HIGHLITE_ = 403, + HISTEQU_ = 404, + HISTOGRAM_ = 405, + HORIZONTAL_ = 406, + ICRS_ = 407, + ID_ = 408, + IIS_ = 409, + IMAGE_ = 410, + INCLUDE_ = 411, + INCR_ = 412, + INFO_ = 413, + INTEGER_ = 414, + ITERATION_ = 415, + IRAF_ = 416, + IRAFMIN_ = 417, + J2000_ = 418, + KEY_ = 419, + KEYWORD_ = 420, + LABEL_ = 421, + LENGTH_ = 422, + LEVEL_ = 423, + LITTLE_ = 424, + LITTLEENDIAN_ = 425, + LINE_ = 426, + LINEAR_ = 427, + LIST_ = 428, + LOAD_ = 429, + LOCAL_ = 430, + LOG_ = 431, + MACOSX_ = 432, + MAGNIFIER_ = 433, + MATCH_ = 434, + MAP_ = 435, + MARK_ = 436, + MARKER_ = 437, + MASK_ = 438, + MESSAGE_ = 439, + METHOD_ = 440, + MINMAX_ = 441, + MIP_ = 442, + MMAP_ = 443, + MMAPINCR_ = 444, + MOSAIC_ = 445, + MODE_ = 446, + MOTION_ = 447, + MOVE_ = 448, + NAME_ = 449, + NAN_ = 450, + NATIVE_ = 451, + NAXES_ = 452, + NEW_ = 453, + NEXT_ = 454, + NO_ = 455, + NONE_ = 456, + NOW_ = 457, + NRRD_ = 458, + NUMBER_ = 459, + OBJECT_ = 460, + OFF_ = 461, + ON_ = 462, + ONLY_ = 463, + OPTION_ = 464, + ORIENT_ = 465, + PAN_ = 466, + PANNER_ = 467, + PARSER_ = 468, + PASTE_ = 469, + PERF_ = 470, + PHOTO_ = 471, + PHYSICAL_ = 472, + PIXEL_ = 473, + PLOT2D_ = 474, + PLOT3D_ = 475, + POINT_ = 476, + POINTER_ = 477, + POLYGON_ = 478, + POSTSCRIPT_ = 479, + POW_ = 480, + PRINT_ = 481, + PRESERVE_ = 482, + PROJECTION_ = 483, + PROPERTY_ = 484, + PUBLICATION_ = 485, + PROS_ = 486, + QUERY_ = 487, + RADIAL_ = 488, + RADIUS_ = 489, + REGION_ = 490, + REPLACE_ = 491, + RESAMPLE_ = 492, + RESET_ = 493, + RESOLUTION_ = 494, + RGB_ = 495, + ROOT_ = 496, + ROTATE_ = 497, + RULER_ = 498, + SAMPLE_ = 499, + SAOIMAGE_ = 500, + SAOTNG_ = 501, + SAVE_ = 502, + SCALE_ = 503, + SCAN_ = 504, + SCIENTIFIC_ = 505, + SCOPE_ = 506, + SEGMENT_ = 507, + SELECT_ = 508, + SET_ = 509, + SEXAGESIMAL_ = 510, + SHAPE_ = 511, + SHARED_ = 512, + SHIFT_ = 513, + SHMID_ = 514, + SHOW_ = 515, + SINH_ = 516, + SIZE_ = 517, + SLICE_ = 518, + SMMAP_ = 519, + SMOOTH_ = 520, + SOCKET_ = 521, + SOCKETGZ_ = 522, + SOURCE_ = 523, + SQRT_ = 524, + SQUARED_ = 525, + SSHARED_ = 526, + STATS_ = 527, + STATUS_ = 528, + SUPERGALACTIC_ = 529, + SUM_ = 530, + SYSTEM_ = 531, + TABLE_ = 532, + TAG_ = 533, + TEMPLATE_ = 534, + TEXT_ = 535, + THREADS_ = 536, + THREED_ = 537, + THRESHOLD_ = 538, + THICK_ = 539, + TRANSPARENCY_ = 540, + TO_ = 541, + TOGGLE_ = 542, + TOPHAT_ = 543, + TRUE_ = 544, + TYPE_ = 545, + UNDO_ = 546, + UNHIGHLITE_ = 547, + UNLOAD_ = 548, + UNSELECT_ = 549, + UPDATE_ = 550, + USER_ = 551, + VALUE_ = 552, + VAR_ = 553, + VIEW_ = 554, + VECTOR_ = 555, + VERSION_ = 556, + VERTEX_ = 557, + VERTICAL_ = 558, + WARP_ = 559, + WCS_ = 560, + WCSA_ = 561, + WCSB_ = 562, + WCSC_ = 563, + WCSD_ = 564, + WCSE_ = 565, + WCSF_ = 566, + WCSG_ = 567, + WCSH_ = 568, + WCSI_ = 569, + WCSJ_ = 570, + WCSK_ = 571, + WCSL_ = 572, + WCSM_ = 573, + WCSN_ = 574, + WCSO_ = 575, + WCSP_ = 576, + WCSQ_ = 577, + WCSR_ = 578, + WCSS_ = 579, + WCST_ = 580, + WCSU_ = 581, + WCSV_ = 582, + WCSW_ = 583, + WCSX_ = 584, + WCSY_ = 585, + WCSZ_ = 586, + WCS0_ = 587, + WFPC2_ = 588, + WIDTH_ = 589, + WIN32_ = 590, + XML_ = 591, + XY_ = 592, + YES_ = 593, + ZMAX_ = 594, + ZSCALE_ = 595, + ZOOM_ = 596 }; #endif /* Tokens. */ @@ -497,227 +498,228 @@ #define FACTOR_ 372 #define FALSE_ 373 #define FILE_ 374 -#define FILTER_ 375 -#define FIT_ 376 -#define FITS_ 377 -#define FITSY_ 378 -#define FIXED_ 379 -#define FK4_ 380 -#define FK4_NO_E_ 381 -#define FK5_ 382 -#define FONT_ 383 -#define FRONT_ 384 -#define FULL_ 385 -#define FUNCTION_ 386 -#define GALACTIC_ 387 -#define GAUSSIAN_ 388 -#define GET_ 389 -#define GLOBAL_ 390 -#define GRAPHICS_ 391 -#define GRAY_ 392 -#define GRID_ 393 -#define GZ_ 394 -#define HANDLE_ 395 -#define HAS_ 396 -#define HEAD_ 397 -#define HEADER_ 398 -#define HEIGHT_ 399 -#define HELIOECLIPTIC_ 400 -#define HIDE_ 401 -#define HIGHLITE_ 402 -#define HISTEQU_ 403 -#define HISTOGRAM_ 404 -#define HORIZONTAL_ 405 -#define ICRS_ 406 -#define ID_ 407 -#define IIS_ 408 -#define IMAGE_ 409 -#define INCLUDE_ 410 -#define INCR_ 411 -#define INFO_ 412 -#define INTEGER_ 413 -#define ITERATION_ 414 -#define IRAF_ 415 -#define IRAFMIN_ 416 -#define J2000_ 417 -#define KEY_ 418 -#define KEYWORD_ 419 -#define LABEL_ 420 -#define LENGTH_ 421 -#define LEVEL_ 422 -#define LITTLE_ 423 -#define LITTLEENDIAN_ 424 -#define LINE_ 425 -#define LINEAR_ 426 -#define LIST_ 427 -#define LOAD_ 428 -#define LOCAL_ 429 -#define LOG_ 430 -#define MACOSX_ 431 -#define MAGNIFIER_ 432 -#define MATCH_ 433 -#define MAP_ 434 -#define MARK_ 435 -#define MARKER_ 436 -#define MASK_ 437 -#define MESSAGE_ 438 -#define METHOD_ 439 -#define MINMAX_ 440 -#define MIP_ 441 -#define MMAP_ 442 -#define MMAPINCR_ 443 -#define MOSAIC_ 444 -#define MODE_ 445 -#define MOTION_ 446 -#define MOVE_ 447 -#define NAME_ 448 -#define NAN_ 449 -#define NATIVE_ 450 -#define NAXES_ 451 -#define NEW_ 452 -#define NEXT_ 453 -#define NO_ 454 -#define NONE_ 455 -#define NOW_ 456 -#define NRRD_ 457 -#define NUMBER_ 458 -#define OBJECT_ 459 -#define OFF_ 460 -#define ON_ 461 -#define ONLY_ 462 -#define OPTION_ 463 -#define ORIENT_ 464 -#define PAN_ 465 -#define PANNER_ 466 -#define PARSER_ 467 -#define PASTE_ 468 -#define PERF_ 469 -#define PHOTO_ 470 -#define PHYSICAL_ 471 -#define PIXEL_ 472 -#define PLOT2D_ 473 -#define PLOT3D_ 474 -#define POINT_ 475 -#define POINTER_ 476 -#define POLYGON_ 477 -#define POSTSCRIPT_ 478 -#define POW_ 479 -#define PRINT_ 480 -#define PRESERVE_ 481 -#define PROJECTION_ 482 -#define PROPERTY_ 483 -#define PUBLICATION_ 484 -#define PROS_ 485 -#define QUERY_ 486 -#define RADIAL_ 487 -#define RADIUS_ 488 -#define REGION_ 489 -#define REPLACE_ 490 -#define RESAMPLE_ 491 -#define RESET_ 492 -#define RESOLUTION_ 493 -#define RGB_ 494 -#define ROOT_ 495 -#define ROTATE_ 496 -#define RULER_ 497 -#define SAMPLE_ 498 -#define SAOIMAGE_ 499 -#define SAOTNG_ 500 -#define SAVE_ 501 -#define SCALE_ 502 -#define SCAN_ 503 -#define SCIENTIFIC_ 504 -#define SCOPE_ 505 -#define SEGMENT_ 506 -#define SELECT_ 507 -#define SET_ 508 -#define SEXAGESIMAL_ 509 -#define SHAPE_ 510 -#define SHARED_ 511 -#define SHIFT_ 512 -#define SHMID_ 513 -#define SHOW_ 514 -#define SINH_ 515 -#define SIZE_ 516 -#define SLICE_ 517 -#define SMMAP_ 518 -#define SMOOTH_ 519 -#define SOCKET_ 520 -#define SOCKETGZ_ 521 -#define SOURCE_ 522 -#define SQRT_ 523 -#define SQUARED_ 524 -#define SSHARED_ 525 -#define STATS_ 526 -#define STATUS_ 527 -#define SUPERGALACTIC_ 528 -#define SUM_ 529 -#define SYSTEM_ 530 -#define TABLE_ 531 -#define TAG_ 532 -#define TEMPLATE_ 533 -#define TEXT_ 534 -#define THREADS_ 535 -#define THREED_ 536 -#define THRESHOLD_ 537 -#define THICK_ 538 -#define TRANSPARENCY_ 539 -#define TO_ 540 -#define TOGGLE_ 541 -#define TOPHAT_ 542 -#define TRUE_ 543 -#define TYPE_ 544 -#define UNDO_ 545 -#define UNHIGHLITE_ 546 -#define UNLOAD_ 547 -#define UNSELECT_ 548 -#define UPDATE_ 549 -#define USER_ 550 -#define VALUE_ 551 -#define VAR_ 552 -#define VIEW_ 553 -#define VECTOR_ 554 -#define VERSION_ 555 -#define VERTEX_ 556 -#define VERTICAL_ 557 -#define WARP_ 558 -#define WCS_ 559 -#define WCSA_ 560 -#define WCSB_ 561 -#define WCSC_ 562 -#define WCSD_ 563 -#define WCSE_ 564 -#define WCSF_ 565 -#define WCSG_ 566 -#define WCSH_ 567 -#define WCSI_ 568 -#define WCSJ_ 569 -#define WCSK_ 570 -#define WCSL_ 571 -#define WCSM_ 572 -#define WCSN_ 573 -#define WCSO_ 574 -#define WCSP_ 575 -#define WCSQ_ 576 -#define WCSR_ 577 -#define WCSS_ 578 -#define WCST_ 579 -#define WCSU_ 580 -#define WCSV_ 581 -#define WCSW_ 582 -#define WCSX_ 583 -#define WCSY_ 584 -#define WCSZ_ 585 -#define WCS0_ 586 -#define WFPC2_ 587 -#define WIDTH_ 588 -#define WIN32_ 589 -#define XML_ 590 -#define XY_ 591 -#define YES_ 592 -#define ZMAX_ 593 -#define ZSCALE_ 594 -#define ZOOM_ 595 +#define FILL_ 375 +#define FILTER_ 376 +#define FIT_ 377 +#define FITS_ 378 +#define FITSY_ 379 +#define FIXED_ 380 +#define FK4_ 381 +#define FK4_NO_E_ 382 +#define FK5_ 383 +#define FONT_ 384 +#define FRONT_ 385 +#define FULL_ 386 +#define FUNCTION_ 387 +#define GALACTIC_ 388 +#define GAUSSIAN_ 389 +#define GET_ 390 +#define GLOBAL_ 391 +#define GRAPHICS_ 392 +#define GRAY_ 393 +#define GRID_ 394 +#define GZ_ 395 +#define HANDLE_ 396 +#define HAS_ 397 +#define HEAD_ 398 +#define HEADER_ 399 +#define HEIGHT_ 400 +#define HELIOECLIPTIC_ 401 +#define HIDE_ 402 +#define HIGHLITE_ 403 +#define HISTEQU_ 404 +#define HISTOGRAM_ 405 +#define HORIZONTAL_ 406 +#define ICRS_ 407 +#define ID_ 408 +#define IIS_ 409 +#define IMAGE_ 410 +#define INCLUDE_ 411 +#define INCR_ 412 +#define INFO_ 413 +#define INTEGER_ 414 +#define ITERATION_ 415 +#define IRAF_ 416 +#define IRAFMIN_ 417 +#define J2000_ 418 +#define KEY_ 419 +#define KEYWORD_ 420 +#define LABEL_ 421 +#define LENGTH_ 422 +#define LEVEL_ 423 +#define LITTLE_ 424 +#define LITTLEENDIAN_ 425 +#define LINE_ 426 +#define LINEAR_ 427 +#define LIST_ 428 +#define LOAD_ 429 +#define LOCAL_ 430 +#define LOG_ 431 +#define MACOSX_ 432 +#define MAGNIFIER_ 433 +#define MATCH_ 434 +#define MAP_ 435 +#define MARK_ 436 +#define MARKER_ 437 +#define MASK_ 438 +#define MESSAGE_ 439 +#define METHOD_ 440 +#define MINMAX_ 441 +#define MIP_ 442 +#define MMAP_ 443 +#define MMAPINCR_ 444 +#define MOSAIC_ 445 +#define MODE_ 446 +#define MOTION_ 447 +#define MOVE_ 448 +#define NAME_ 449 +#define NAN_ 450 +#define NATIVE_ 451 +#define NAXES_ 452 +#define NEW_ 453 +#define NEXT_ 454 +#define NO_ 455 +#define NONE_ 456 +#define NOW_ 457 +#define NRRD_ 458 +#define NUMBER_ 459 +#define OBJECT_ 460 +#define OFF_ 461 +#define ON_ 462 +#define ONLY_ 463 +#define OPTION_ 464 +#define ORIENT_ 465 +#define PAN_ 466 +#define PANNER_ 467 +#define PARSER_ 468 +#define PASTE_ 469 +#define PERF_ 470 +#define PHOTO_ 471 +#define PHYSICAL_ 472 +#define PIXEL_ 473 +#define PLOT2D_ 474 +#define PLOT3D_ 475 +#define POINT_ 476 +#define POINTER_ 477 +#define POLYGON_ 478 +#define POSTSCRIPT_ 479 +#define POW_ 480 +#define PRINT_ 481 +#define PRESERVE_ 482 +#define PROJECTION_ 483 +#define PROPERTY_ 484 +#define PUBLICATION_ 485 +#define PROS_ 486 +#define QUERY_ 487 +#define RADIAL_ 488 +#define RADIUS_ 489 +#define REGION_ 490 +#define REPLACE_ 491 +#define RESAMPLE_ 492 +#define RESET_ 493 +#define RESOLUTION_ 494 +#define RGB_ 495 +#define ROOT_ 496 +#define ROTATE_ 497 +#define RULER_ 498 +#define SAMPLE_ 499 +#define SAOIMAGE_ 500 +#define SAOTNG_ 501 +#define SAVE_ 502 +#define SCALE_ 503 +#define SCAN_ 504 +#define SCIENTIFIC_ 505 +#define SCOPE_ 506 +#define SEGMENT_ 507 +#define SELECT_ 508 +#define SET_ 509 +#define SEXAGESIMAL_ 510 +#define SHAPE_ 511 +#define SHARED_ 512 +#define SHIFT_ 513 +#define SHMID_ 514 +#define SHOW_ 515 +#define SINH_ 516 +#define SIZE_ 517 +#define SLICE_ 518 +#define SMMAP_ 519 +#define SMOOTH_ 520 +#define SOCKET_ 521 +#define SOCKETGZ_ 522 +#define SOURCE_ 523 +#define SQRT_ 524 +#define SQUARED_ 525 +#define SSHARED_ 526 +#define STATS_ 527 +#define STATUS_ 528 +#define SUPERGALACTIC_ 529 +#define SUM_ 530 +#define SYSTEM_ 531 +#define TABLE_ 532 +#define TAG_ 533 +#define TEMPLATE_ 534 +#define TEXT_ 535 +#define THREADS_ 536 +#define THREED_ 537 +#define THRESHOLD_ 538 +#define THICK_ 539 +#define TRANSPARENCY_ 540 +#define TO_ 541 +#define TOGGLE_ 542 +#define TOPHAT_ 543 +#define TRUE_ 544 +#define TYPE_ 545 +#define UNDO_ 546 +#define UNHIGHLITE_ 547 +#define UNLOAD_ 548 +#define UNSELECT_ 549 +#define UPDATE_ 550 +#define USER_ 551 +#define VALUE_ 552 +#define VAR_ 553 +#define VIEW_ 554 +#define VECTOR_ 555 +#define VERSION_ 556 +#define VERTEX_ 557 +#define VERTICAL_ 558 +#define WARP_ 559 +#define WCS_ 560 +#define WCSA_ 561 +#define WCSB_ 562 +#define WCSC_ 563 +#define WCSD_ 564 +#define WCSE_ 565 +#define WCSF_ 566 +#define WCSG_ 567 +#define WCSH_ 568 +#define WCSI_ 569 +#define WCSJ_ 570 +#define WCSK_ 571 +#define WCSL_ 572 +#define WCSM_ 573 +#define WCSN_ 574 +#define WCSO_ 575 +#define WCSP_ 576 +#define WCSQ_ 577 +#define WCSR_ 578 +#define WCSS_ 579 +#define WCST_ 580 +#define WCSU_ 581 +#define WCSV_ 582 +#define WCSW_ 583 +#define WCSX_ 584 +#define WCSY_ 585 +#define WCSZ_ 586 +#define WCS0_ 587 +#define WFPC2_ 588 +#define WIDTH_ 589 +#define WIN32_ 590 +#define XML_ 591 +#define XY_ 592 +#define YES_ 593 +#define ZMAX_ 594 +#define ZSCALE_ 595 +#define ZOOM_ 596 @@ -736,7 +738,7 @@ typedef union YYSTYPE int dash[2]; } /* Line 1529 of yacc.c. */ -#line 740 "frame/parser.H" +#line 742 "frame/parser.H" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/tksao/frame/parser.Y b/tksao/frame/parser.Y index 7e2417c..808427f 100644 --- a/tksao/frame/parser.Y +++ b/tksao/frame/parser.Y @@ -219,6 +219,7 @@ static void setProps(unsigned short* props, unsigned short prop, int value); %token FACTOR_ %token FALSE_ %token FILE_ +%token FILL_ %token FILTER_ %token FIT_ %token FITS_ @@ -1729,6 +1730,7 @@ marker : CENTROID_ markerCentroid | INT ANNULUS_ RADIUS_ STRING coordSystem skyDist {fr->markerAnnulusRadiusCmd($1, $4,(Coord::CoordSystem)$5,(Coord::SkyDist)$6);} + | INT BOX_ FILL_ yesno {fr->markerBoxFillCmd($1,$4);} | INT BOXANNULUS_ RADIUS_ numeric numeric numeric INT internalSystem {fr->markerBoxAnnulusRadiusCmd($1, Vector($4, $5), Vector($6, $6*$5/$4), $7, (Coord::InternalSystem)$8);} @@ -1763,6 +1765,7 @@ marker : CENTROID_ markerCentroid | INT CALLBACK_ markerCallBack STRING STRING {fr->markerCallBackCmd($1,(CallBack::Type)$3,$4,$5);} + | INT CIRCLE_ FILL_ yesno {fr->markerCircleFillCmd($1,$4);} | INT CIRCLE_ RADIUS_ numeric internalSystem {fr->markerCircleRadiusCmd($1, $4, (Coord::InternalSystem)$5);} | INT CIRCLE_ RADIUS_ numeric coordSystem skyDist @@ -1836,6 +1839,7 @@ marker : CENTROID_ markerCentroid | INT DELETE_ TAG_ INT {fr->markerDeleteTagCmd($1,$4);} | INT EDIT_ BEGIN_ INT {fr->markerEditBeginCmd($1,$4);} + | INT ELLIPSE_ FILL_ yesno {fr->markerEllipseFillCmd($1,$4);} | INT ELLIPSE_ RADIUS_ numeric numeric internalSystem {fr->markerEllipseRadiusCmd($1, Vector($4, $5), (Coord::InternalSystem)$6);} | INT ELLIPSE_ RADIUS_ numeric numeric coordSystem skyDist @@ -1904,6 +1908,7 @@ marker : CENTROID_ markerCentroid {fr->markerPointShapeCmd($1,(Point::PointShape)$4);} | INT POINT_ SIZE_ INT {fr->markerPointSizeCmd($1,$4);} + | INT POLYGON_ FILL_ yesno {fr->markerPolygonFillCmd($1,$4);} | INT PROJECTION_ internalSystem coord coord numeric {fr->markerProjectionCmd($1, Vector($4), Vector($5), (Coord::InternalSystem)$3, $6);} @@ -2043,16 +2048,16 @@ markerCreate : numeric markerProperties {fr->createCircleCmd(fr->mapToRef(Vector($2,$3),Coord::CANVAS), - $4, + $4, 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);} | ELLIPSE_ numeric numeric numeric numeric - optangle + optangle markerProperties {fr->createEllipseCmd(fr->mapToRef(Vector($2,$3),Coord::CANVAS), Vector($4,$5), - $6, + $6, 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);} | BOX_ numeric numeric @@ -2061,14 +2066,14 @@ markerCreate : markerProperties {fr->createBoxCmd(fr->mapToRef(Vector($2,$3),Coord::CANVAS), Vector($4,$5), - $6, + $6, 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);} | POLYGON_ numeric numeric numeric numeric markerProperties {fr->createPolygonCmd(fr->mapToRef(Vector($2,$3),Coord::CANVAS), - Vector($4,$5), + Vector($4,$5), 0, currentColor,currentDash,currentWidth,currentFont, currentText,currentProps,NULL,taglist,cblist);} | SEGMENT_ numeric numeric @@ -2308,6 +2313,7 @@ markerGet : CENTROID_ markerGetCentroid | INT ANNULUS_ RADIUS_ coordSystem skyDist {fr->getMarkerAnnulusRadiusCmd($1, (Coord::CoordSystem)$4, (Coord::SkyDist)$5);} + | INT BOX_ FILL_ {fr->getMarkerBoxFillCmd($1);} | INT BOXANNULUS_ RADIUS_ coordSystem skyDist {fr->getMarkerBoxAnnulusRadiusCmd($1,(Coord::CoordSystem)$4,(Coord::SkyDist)$5);} | INT BOX_ RADIUS_ coordSystem skyDist @@ -2322,6 +2328,7 @@ markerGet : CENTROID_ markerGetCentroid | INT CENTER_ coordSystem skyFrame skyFormat {fr->getMarkerCenterCmd($1, (Coord::CoordSystem)$3, (Coord::SkyFrame)$4, (Coord::SkyFormat)$5);} + | INT CIRCLE_ FILL_ {fr->getMarkerCircleFillCmd($1);} | INT CIRCLE_ RADIUS_ coordSystem skyDist {fr->getMarkerCircleRadiusCmd($1, (Coord::CoordSystem)$4, (Coord::SkyDist)$5);} | INT COLOR_ {fr->getMarkerColorCmd($1);} @@ -2337,6 +2344,7 @@ markerGet : CENTROID_ markerGetCentroid {fr->getMarkerCpandaAnglesCmd($1, (Coord::CoordSystem)$4, (Coord::SkyFrame)$5);} | INT CPANDA_ RADIUS_ coordSystem skyDist {fr->getMarkerCpandaRadiusCmd($1, (Coord::CoordSystem)$4, (Coord::SkyDist)$5);} + | INT ELLIPSE_ FILL_ {fr->getMarkerEllipseFillCmd($1);} | INT ELLIPSE_ RADIUS_ coordSystem skyDist {fr->getMarkerEllipseRadiusCmd($1, (Coord::CoordSystem)$4, (Coord::SkyDist)$5);} | INT ELLIPSEANNULUS_ RADIUS_ coordSystem skyDist @@ -2360,6 +2368,7 @@ markerGet : CENTROID_ markerGetCentroid {fr->getMarkerMapLenFromRefCmd($1, $4, (Coord::CoordSystem)$5,(Coord::SkyDist)$6);} + | INT POLYGON_ FILL_ {fr->getMarkerPolygonFillCmd($1);} | INT POINT_ SHAPE_ {fr->getMarkerPointShapeCmd($1);} | INT POINT_ SIZE_ {fr->getMarkerPointSizeCmd($1);} | INT PROJECTION_ POINT_ coordSystem skyFrame skyFormat diff --git a/tksao/frame/polygon.C b/tksao/frame/polygon.C index dd494db..2302f1b 100644 --- a/tksao/frame/polygon.C +++ b/tksao/frame/polygon.C @@ -7,32 +7,35 @@ #include "polygon.h" #include "fitsimage.h" -Polygon::Polygon(Base* p, const Vector& ctr, - const Vector& b) - : BasePolygon(p,ctr,b) +Polygon::Polygon(const Polygon& a) : BasePolygon(a), BaseFill(a) {} + +Polygon::Polygon(Base* p, const Vector& ctr, const Vector& b, int fill) + : BasePolygon(p,ctr,b), BaseFill(fill) { strcpy(type_, "polygon"); reset(b); } Polygon::Polygon(Base* p, const Vector& ctr, - const Vector& b, + const Vector& b, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb) - : BasePolygon(p, ctr, b, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb) + : BasePolygon(p, ctr, b, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb), + BaseFill(fill) { strcpy(type_, "polygon"); reset(b); } -Polygon::Polygon(Base* p, const List<Vertex>& v, +Polygon::Polygon(Base* p, const List<Vertex>& v, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb) - : BasePolygon(p, v, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb) + : BasePolygon(p, v, clr, dsh, wth, fnt, txt, prop, cmt, tg, cb), + BaseFill(fill) { strcpy(type_, "polygon"); @@ -368,6 +371,51 @@ void Polygon::list(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, listPost(str, conj, strip); } +void Polygon::listPost(ostream& str, int conj, int strip) +{ + // no props for semicolons + if (!strip) { + if (conj) + str << " ||"; + + if (fill_) + str << " # fill=" << fill_; + + listProperties(str, !fill_); + } + else { + if (conj) + str << "||"; + else + str << ';'; + } +} + +void Polygon::listXML(ostream& str, Coord::CoordSystem sys, + Coord::SkyFrame sky, Coord::SkyFormat format) +{ + FitsImage* ptr = parent->findFits(sys,center); + Matrix mm = fwdMatrix(); + Vector* vv = new Vector[vertex.count()]; + + XMLRowInit(); + XMLRow(XMLSHAPE,type_); + + vertex.head(); + int cnt =0; + do + vv[cnt++] =vertex.current()->vector*mm; + while (vertex.next()); + XMLRowPoint(ptr,sys,sky,format,vv,vertex.count()); + delete [] vv; + + if (fill_) + XMLRow(XMLPARAM,fill_); + + XMLRowProps(ptr,sys); + XMLRowEnd(str); +} + void Polygon::listCiao(ostream& str, Coord::CoordSystem sys, int strip) { FitsImage* ptr = parent->findFits(); diff --git a/tksao/frame/polygon.h b/tksao/frame/polygon.h index 30d82e6..27b661d 100644 --- a/tksao/frame/polygon.h +++ b/tksao/frame/polygon.h @@ -6,10 +6,11 @@ #define __polygon_h__ #include "basepolygon.h" +#include "basefill.h" #include "marker.h" #include "list.h" -class Polygon : public BasePolygon { +class Polygon : public BasePolygon, public BaseFill { protected: int isInRef(const Vector& v); void renderX(Drawable, Coord::InternalSystem, RenderMode); @@ -23,19 +24,19 @@ class Polygon : public BasePolygon { public: Polygon(Base* p, const Vector& ctr, - const Vector& b); + const Vector& b, int fill); Polygon(Base* p, const Vector& ctr, - const Vector& b, + const Vector& b, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb); - Polygon(Base* p, const List<Vertex>& v, + Polygon(Base* p, const List<Vertex>& v, int fill, const char* clr, int* dsh, int wth, const char* fnt, const char* txt, unsigned short prop, const char* cmt, const List<Tag>& tg, const List<CallBack>& cb); - Polygon(const Polygon& a) : BasePolygon(a) {} + Polygon(const Polygon& a); Marker* dup() {return new Polygon(*this);} @@ -55,6 +56,8 @@ public: void reset(const Vector&); void list(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int, int); + virtual void listPost(ostream&, int, int); + void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); void listCiao(ostream&, Coord::CoordSystem, int); void listSAOtng(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int); void listSAOimage(ostream&, int); diff --git a/tksao/frame/prosparser.C b/tksao/frame/prosparser.C index 13b8715..ca71056 100644 --- a/tksao/frame/prosparser.C +++ b/tksao/frame/prosparser.C @@ -175,6 +175,7 @@ static unsigned short localProps; static const char *color = "green"; static int dash[] ={8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; @@ -218,7 +219,7 @@ static Coord::SkyFrame checkWCSSky(); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 65 "frame/prosparser.Y" +#line 66 "frame/prosparser.Y" { #define PROSBUFSIZE 2048 double real; @@ -227,7 +228,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 231 "frame/prosparser.C" +#line 232 "frame/prosparser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -240,7 +241,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 244 "frame/prosparser.C" +#line 245 "frame/prosparser.C" #ifdef short # undef short @@ -563,16 +564,16 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 125, 125, 128, 129, 132, 133, 134, 135, 135, - 136, 136, 137, 138, 141, 142, 143, 146, 147, 150, - 151, 154, 155, 158, 159, 162, 163, 166, 167, 170, - 171, 172, 175, 176, 177, 178, 181, 188, 195, 202, - 211, 214, 217, 220, 223, 236, 244, 252, 259, 269, - 270, 273, 274, 275, 276, 277, 280, 281, 284, 295, - 307, 308, 309, 313, 317, 321, 321, 330, 335, 351, - 358, 374, 379, 386, 390, 390, 395, 396, 399, 402, - 403, 406, 410, 437, 438, 438, 441, 441, 444, 445, - 445 + 0, 126, 126, 129, 130, 133, 134, 135, 136, 136, + 137, 137, 138, 139, 142, 143, 144, 147, 148, 151, + 152, 155, 156, 159, 160, 163, 164, 167, 168, 171, + 172, 173, 176, 177, 178, 179, 182, 189, 196, 203, + 212, 215, 218, 221, 224, 237, 245, 253, 260, 270, + 271, 274, 275, 276, 277, 278, 281, 282, 285, 296, + 308, 309, 310, 314, 317, 321, 321, 330, 335, 349, + 356, 370, 373, 380, 384, 384, 389, 390, 393, 396, + 397, 400, 404, 431, 432, 432, 435, 435, 438, 439, + 439 }; #endif @@ -1619,92 +1620,92 @@ yyreduce: switch (yyn) { case 7: -#line 134 "frame/prosparser.Y" +#line 135 "frame/prosparser.Y" {cerr << "PROS" << endl;;} break; case 8: -#line 135 "frame/prosparser.Y" +#line 136 "frame/prosparser.Y" {globalSystem = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer);;} break; case 10: -#line 136 "frame/prosparser.Y" +#line 137 "frame/prosparser.Y" {globalSystem = Coord::WCS; globalSky = (Coord::SkyFrame)(yyvsp[(1) - (1)].integer);;} break; case 16: -#line 143 "frame/prosparser.Y" +#line 144 "frame/prosparser.Y" {YYACCEPT;;} break; case 17: -#line 146 "frame/prosparser.Y" +#line 147 "frame/prosparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 18: -#line 147 "frame/prosparser.Y" +#line 148 "frame/prosparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 19: -#line 150 "frame/prosparser.Y" +#line 151 "frame/prosparser.Y" {yydebug=1;;} break; case 20: -#line 151 "frame/prosparser.Y" +#line 152 "frame/prosparser.Y" {yydebug=0;;} break; case 27: -#line 166 "frame/prosparser.Y" +#line 167 "frame/prosparser.Y" {(yyval.real) = 0;;} break; case 28: -#line 167 "frame/prosparser.Y" +#line 168 "frame/prosparser.Y" {(yyval.real) = (yyvsp[(1) - (1)].real);;} break; case 29: -#line 170 "frame/prosparser.Y" +#line 171 "frame/prosparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 30: -#line 171 "frame/prosparser.Y" +#line 172 "frame/prosparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 31: -#line 172 "frame/prosparser.Y" +#line 173 "frame/prosparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 32: -#line 175 "frame/prosparser.Y" +#line 176 "frame/prosparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::IMAGE);;} break; case 33: -#line 176 "frame/prosparser.Y" +#line 177 "frame/prosparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::DEGREE);;} break; case 34: -#line 177 "frame/prosparser.Y" +#line 178 "frame/prosparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::ARCMIN);;} break; case 35: -#line 178 "frame/prosparser.Y" +#line 179 "frame/prosparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), checkWCSSystem(), Coord::ARCSEC);;} break; case 36: -#line 182 "frame/prosparser.Y" +#line 183 "frame/prosparser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -1714,7 +1715,7 @@ yyreduce: break; case 37: -#line 189 "frame/prosparser.Y" +#line 190 "frame/prosparser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::DEGREE); (yyval.vector)[0] = r[0]; @@ -1724,7 +1725,7 @@ yyreduce: break; case 38: -#line 196 "frame/prosparser.Y" +#line 197 "frame/prosparser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::ARCMIN); (yyval.vector)[0] = r[0]; @@ -1734,7 +1735,7 @@ yyreduce: break; case 39: -#line 203 "frame/prosparser.Y" +#line 204 "frame/prosparser.Y" { Vector r=FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),checkWCSSystem(),Coord::ARCSEC); (yyval.vector)[0] = r[0]; @@ -1744,27 +1745,27 @@ yyreduce: break; case 40: -#line 211 "frame/prosparser.Y" +#line 212 "frame/prosparser.Y" {(yyval.integer) = (yyvsp[(3) - (3)].integer);;} break; case 41: -#line 214 "frame/prosparser.Y" +#line 215 "frame/prosparser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 42: -#line 217 "frame/prosparser.Y" +#line 218 "frame/prosparser.Y" {(yyval.real) = parseHMSStr((yyvsp[(1) - (1)].str));;} break; case 43: -#line 220 "frame/prosparser.Y" +#line 221 "frame/prosparser.Y" {(yyval.real) = parseDMSStr((yyvsp[(1) - (1)].str));;} break; case 44: -#line 224 "frame/prosparser.Y" +#line 225 "frame/prosparser.Y" { Vector r; Coord::CoordSystem sys = checkWCSSystem(); @@ -1780,7 +1781,7 @@ yyreduce: break; case 45: -#line 237 "frame/prosparser.Y" +#line 238 "frame/prosparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -1791,7 +1792,7 @@ yyreduce: break; case 46: -#line 245 "frame/prosparser.Y" +#line 246 "frame/prosparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -1802,7 +1803,7 @@ yyreduce: break; case 47: -#line 253 "frame/prosparser.Y" +#line 254 "frame/prosparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), localSystem, localSky); (yyval.vector)[0] = r[0]; @@ -1812,7 +1813,7 @@ yyreduce: break; case 48: -#line 260 "frame/prosparser.Y" +#line 261 "frame/prosparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -1823,52 +1824,52 @@ yyreduce: break; case 49: -#line 269 "frame/prosparser.Y" +#line 270 "frame/prosparser.Y" {(yyval.integer) = Coord::IMAGE;;} break; case 50: -#line 270 "frame/prosparser.Y" +#line 271 "frame/prosparser.Y" {(yyval.integer) = Coord::PHYSICAL;;} break; case 51: -#line 273 "frame/prosparser.Y" +#line 274 "frame/prosparser.Y" {(yyval.integer) = (yyvsp[(2) - (2)].integer);;} break; case 52: -#line 274 "frame/prosparser.Y" +#line 275 "frame/prosparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 53: -#line 275 "frame/prosparser.Y" +#line 276 "frame/prosparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 54: -#line 276 "frame/prosparser.Y" +#line 277 "frame/prosparser.Y" {(yyval.integer) = Coord::GALACTIC;;} break; case 55: -#line 277 "frame/prosparser.Y" +#line 278 "frame/prosparser.Y" {(yyval.integer) = Coord::ECLIPTIC;;} break; case 56: -#line 280 "frame/prosparser.Y" +#line 281 "frame/prosparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 57: -#line 281 "frame/prosparser.Y" +#line 282 "frame/prosparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 58: -#line 284 "frame/prosparser.Y" +#line 285 "frame/prosparser.Y" { // global properties globalSystem = Coord::IMAGE; @@ -1881,7 +1882,7 @@ yyreduce: break; case 59: -#line 295 "frame/prosparser.Y" +#line 296 "frame/prosparser.Y" { // reset maperr flag maperr =0; @@ -1895,24 +1896,23 @@ yyreduce: break; case 60: -#line 307 "frame/prosparser.Y" +#line 308 "frame/prosparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 61: -#line 308 "frame/prosparser.Y" +#line 309 "frame/prosparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 62: -#line 309 "frame/prosparser.Y" +#line 310 "frame/prosparser.Y" {setProps(&localProps, Marker::INCLUDE, 0);;} break; case 63: -#line 314 "frame/prosparser.Y" - {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), - (yyvsp[(5) - (7)].real), +#line 315 "frame/prosparser.Y" + {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), (yyvsp[(5) - (7)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; @@ -1958,15 +1958,13 @@ yyreduce: strncpy(aComment,localComment,80); aProps = localProps; - fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), + fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); ;} break; case 69: -#line 353 "frame/prosparser.Y" +#line 351 "frame/prosparser.Y" { aStatus = 2; aVector[aNum++] = Vector((yyvsp[(5) - (18)].vector)); @@ -1974,7 +1972,7 @@ yyreduce: break; case 70: -#line 359 "frame/prosparser.Y" +#line 357 "frame/prosparser.Y" { // for box annulus aStatus = 3; @@ -1985,23 +1983,19 @@ yyreduce: strncpy(aComment,localComment,80); aProps = localProps; - fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), + fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); ;} break; case 71: -#line 375 "frame/prosparser.Y" - {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), +#line 371 "frame/prosparser.Y" + {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 72: -#line 381 "frame/prosparser.Y" +#line 375 "frame/prosparser.Y" { aStatus = 4; aVector[aNum++] = Vector((yyvsp[(5) - (18)].vector)); @@ -2009,34 +2003,34 @@ yyreduce: break; case 73: -#line 387 "frame/prosparser.Y" +#line 381 "frame/prosparser.Y" {fr->createPointCmd(Vector((yyvsp[(3) - (5)].vector)), Point::BOXCIRCLE, POINTSIZE, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 74: -#line 390 "frame/prosparser.Y" +#line 384 "frame/prosparser.Y" {polylist.deleteAll();;} break; case 75: -#line 391 "frame/prosparser.Y" - {fr->createPolygonCmd(polylist, +#line 385 "frame/prosparser.Y" + {fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 78: -#line 399 "frame/prosparser.Y" +#line 393 "frame/prosparser.Y" {polylist.append(new Vertex((yyvsp[(1) - (1)].vector)));;} break; case 81: -#line 406 "frame/prosparser.Y" +#line 400 "frame/prosparser.Y" {aAnnuli[aNum++] = (yyvsp[(1) - (1)].real);;} break; case 82: -#line 410 "frame/prosparser.Y" +#line 404 "frame/prosparser.Y" { switch (aStatus) { case 0: // do nothing @@ -2065,28 +2059,28 @@ yyreduce: break; case 84: -#line 438 "frame/prosparser.Y" +#line 432 "frame/prosparser.Y" {DISCARD_(1);;} break; case 86: -#line 441 "frame/prosparser.Y" +#line 435 "frame/prosparser.Y" {DISCARD_(1);;} break; case 89: -#line 445 "frame/prosparser.Y" +#line 439 "frame/prosparser.Y" {DISCARD_(0);;} break; case 90: -#line 446 "frame/prosparser.Y" +#line 440 "frame/prosparser.Y" {strncpy(localComment,(yyvsp[(3) - (4)].str),80);;} break; /* Line 1267 of yacc.c. */ -#line 2090 "frame/prosparser.C" +#line 2084 "frame/prosparser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2300,7 +2294,7 @@ yyreturn: } -#line 449 "frame/prosparser.Y" +#line 443 "frame/prosparser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/prosparser.H b/tksao/frame/prosparser.H index 91ffecb..edbab7d 100644 --- a/tksao/frame/prosparser.H +++ b/tksao/frame/prosparser.H @@ -108,7 +108,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 65 "frame/prosparser.Y" +#line 66 "frame/prosparser.Y" { #define PROSBUFSIZE 2048 double real; diff --git a/tksao/frame/prosparser.Y b/tksao/frame/prosparser.Y index 26c62ef..ad8c748 100644 --- a/tksao/frame/prosparser.Y +++ b/tksao/frame/prosparser.Y @@ -39,6 +39,7 @@ static unsigned short localProps; static const char *color = "green"; static int dash[] ={8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; @@ -311,8 +312,7 @@ include : /* empty */ {setProps(&localProps, Marker::INCLUDE, 1);} shape : CIRCLE_ bp coord sp value ep shapeComment - {fr->createCircleCmd(Vector($3), - $5, + {fr->createCircleCmd(Vector($3), $5, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} | ANNULUS_ bp coord sp value sp value ep shapeComment {fr->createAnnulusCmd(Vector($3), @@ -343,9 +343,7 @@ shape : strncpy(aComment,localComment,80); aProps = localProps; - fr->createEllipseCmd(Vector($3), - Vector($5), - $7, + fr->createEllipseCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); } | ELLIPSE_ bp coord sp vvalue sp optangle ep '&' '!' @@ -366,15 +364,11 @@ shape : strncpy(aComment,localComment,80); aProps = localProps; - fr->createBoxCmd(Vector($3), - Vector($5), - $7, + fr->createBoxCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); } | ROTBOX_ bp coord sp vvalue sp optangle ep shapeComment - {fr->createBoxCmd(Vector($3), - Vector($5), - $7, + {fr->createBoxCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} | BOX_ bp coord sp vvalue sp optangle ep '&' '!' BOX_ bp coord sp vvalue sp optangle ep @@ -388,7 +382,7 @@ shape : color,dash,1,font,text,localProps,localComment,taglist,cblist);} | POLYGON_ {polylist.deleteAll();} bp polyNodes ep shapeComment - {fr->createPolygonCmd(polylist, + {fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} ; diff --git a/tksao/frame/saoparser.C b/tksao/frame/saoparser.C index d8f1158..9d05768 100644 --- a/tksao/frame/saoparser.C +++ b/tksao/frame/saoparser.C @@ -142,6 +142,7 @@ static unsigned short localProps; static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; @@ -184,7 +185,7 @@ static void setProps(unsigned short* props, unsigned short prop, int value); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 59 "frame/saoparser.Y" +#line 60 "frame/saoparser.Y" { #define SAOBUFSIZE 2048 double real; @@ -193,7 +194,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 197 "frame/saoparser.C" +#line 198 "frame/saoparser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -206,7 +207,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 210 "frame/saoparser.C" +#line 211 "frame/saoparser.C" #ifdef short # undef short @@ -517,12 +518,12 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 97, 97, 100, 101, 104, 105, 106, 107, 108, - 111, 112, 113, 116, 117, 120, 121, 124, 125, 128, - 129, 132, 133, 136, 137, 140, 143, 146, 155, 158, - 167, 175, 183, 184, 185, 188, 192, 196, 196, 205, - 211, 227, 234, 250, 255, 262, 266, 266, 271, 272, - 275, 278, 279, 282, 286, 313, 313, 316, 317, 317 + 0, 98, 98, 101, 102, 105, 106, 107, 108, 109, + 112, 113, 114, 117, 118, 121, 122, 125, 126, 129, + 130, 133, 134, 137, 138, 141, 144, 147, 156, 159, + 168, 176, 184, 185, 186, 189, 192, 196, 196, 205, + 211, 225, 232, 246, 249, 256, 260, 260, 265, 266, + 269, 272, 273, 276, 280, 307, 307, 310, 311, 311 }; #endif @@ -1528,57 +1529,57 @@ yyreduce: switch (yyn) { case 7: -#line 106 "frame/saoparser.Y" +#line 107 "frame/saoparser.Y" {cerr << "SAOimage" << endl;;} break; case 12: -#line 113 "frame/saoparser.Y" +#line 114 "frame/saoparser.Y" {YYACCEPT;;} break; case 13: -#line 116 "frame/saoparser.Y" +#line 117 "frame/saoparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 14: -#line 117 "frame/saoparser.Y" +#line 118 "frame/saoparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 15: -#line 120 "frame/saoparser.Y" +#line 121 "frame/saoparser.Y" {yydebug=1;;} break; case 16: -#line 121 "frame/saoparser.Y" +#line 122 "frame/saoparser.Y" {yydebug=0;;} break; case 23: -#line 136 "frame/saoparser.Y" +#line 137 "frame/saoparser.Y" {(yyval.real) = 0;;} break; case 24: -#line 137 "frame/saoparser.Y" +#line 138 "frame/saoparser.Y" {(yyval.real) = (yyvsp[(1) - (1)].real);;} break; case 25: -#line 140 "frame/saoparser.Y" +#line 141 "frame/saoparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 26: -#line 143 "frame/saoparser.Y" +#line 144 "frame/saoparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real), Coord::IMAGE);;} break; case 27: -#line 147 "frame/saoparser.Y" +#line 148 "frame/saoparser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -1588,12 +1589,12 @@ yyreduce: break; case 28: -#line 155 "frame/saoparser.Y" +#line 156 "frame/saoparser.Y" {(yyval.integer) = (yyvsp[(3) - (3)].integer);;} break; case 29: -#line 159 "frame/saoparser.Y" +#line 160 "frame/saoparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -1603,7 +1604,7 @@ yyreduce: break; case 30: -#line 167 "frame/saoparser.Y" +#line 168 "frame/saoparser.Y" { globalProps = Marker::SELECT | Marker::EDIT | Marker::MOVE | @@ -1613,7 +1614,7 @@ yyreduce: break; case 31: -#line 175 "frame/saoparser.Y" +#line 176 "frame/saoparser.Y" { // reset maperr flag maperr =0; @@ -1623,24 +1624,23 @@ yyreduce: break; case 32: -#line 183 "frame/saoparser.Y" +#line 184 "frame/saoparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 33: -#line 184 "frame/saoparser.Y" +#line 185 "frame/saoparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 34: -#line 185 "frame/saoparser.Y" +#line 186 "frame/saoparser.Y" {setProps(&localProps, Marker::INCLUDE, 0);;} break; case 35: -#line 189 "frame/saoparser.Y" - {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), - (yyvsp[(5) - (7)].real), +#line 190 "frame/saoparser.Y" + {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), (yyvsp[(5) - (7)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; @@ -1686,15 +1686,13 @@ yyreduce: strncpy(aComment,localComment,80); aProps = localProps; - fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), + fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); ;} break; case 41: -#line 229 "frame/saoparser.Y" +#line 227 "frame/saoparser.Y" { aStatus = 2; aVector[aNum++] = Vector((yyvsp[(5) - (18)].vector)); @@ -1702,7 +1700,7 @@ yyreduce: break; case 42: -#line 235 "frame/saoparser.Y" +#line 233 "frame/saoparser.Y" { // for box annulus aStatus = 3; @@ -1713,23 +1711,19 @@ yyreduce: strncpy(aComment,localComment,80); aProps = localProps; - fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), + fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); ;} break; case 43: -#line 251 "frame/saoparser.Y" - {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), +#line 247 "frame/saoparser.Y" + {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 44: -#line 257 "frame/saoparser.Y" +#line 251 "frame/saoparser.Y" { aStatus = 4; aVector[aNum++] = Vector((yyvsp[(5) - (18)].vector)); @@ -1737,34 +1731,34 @@ yyreduce: break; case 45: -#line 263 "frame/saoparser.Y" +#line 257 "frame/saoparser.Y" {fr->createPointCmd(Vector((yyvsp[(3) - (5)].vector)), Point::BOXCIRCLE, POINTSIZE, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 46: -#line 266 "frame/saoparser.Y" +#line 260 "frame/saoparser.Y" {polylist.deleteAll();;} break; case 47: -#line 267 "frame/saoparser.Y" - {fr->createPolygonCmd(polylist, +#line 261 "frame/saoparser.Y" + {fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);;} break; case 50: -#line 275 "frame/saoparser.Y" +#line 269 "frame/saoparser.Y" {polylist.append(new Vertex((yyvsp[(1) - (1)].vector)));;} break; case 53: -#line 282 "frame/saoparser.Y" +#line 276 "frame/saoparser.Y" {aAnnuli[aNum++] = (yyvsp[(1) - (1)].real);;} break; case 54: -#line 286 "frame/saoparser.Y" +#line 280 "frame/saoparser.Y" { switch (aStatus) { case 0: // do nothing @@ -1793,23 +1787,23 @@ yyreduce: break; case 55: -#line 313 "frame/saoparser.Y" +#line 307 "frame/saoparser.Y" {DISCARD_(1);;} break; case 58: -#line 317 "frame/saoparser.Y" +#line 311 "frame/saoparser.Y" {DISCARD_(0);;} break; case 59: -#line 318 "frame/saoparser.Y" +#line 312 "frame/saoparser.Y" {strncpy(localComment,(yyvsp[(3) - (4)].str),80);;} break; /* Line 1267 of yacc.c. */ -#line 1813 "frame/saoparser.C" +#line 1807 "frame/saoparser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2023,7 +2017,7 @@ yyreturn: } -#line 321 "frame/saoparser.Y" +#line 315 "frame/saoparser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/saoparser.H b/tksao/frame/saoparser.H index b3fcf10..541f58d 100644 --- a/tksao/frame/saoparser.H +++ b/tksao/frame/saoparser.H @@ -80,7 +80,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 59 "frame/saoparser.Y" +#line 60 "frame/saoparser.Y" { #define SAOBUFSIZE 2048 double real; diff --git a/tksao/frame/saoparser.Y b/tksao/frame/saoparser.Y index 6440ea6..7c4f0d9 100644 --- a/tksao/frame/saoparser.Y +++ b/tksao/frame/saoparser.Y @@ -34,6 +34,7 @@ static unsigned short localProps; static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; @@ -186,11 +187,10 @@ include : /* empty */ {setProps(&localProps, Marker::INCLUDE, 1);} ; shape : CIRCLE_ bp coord sp value ep shapeComment - {fr->createCircleCmd(Vector($3), - $5, + {fr->createCircleCmd(Vector($3), $5, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} | ANNULUS_ bp coord sp value sp value ep shapeComment - {fr->createAnnulusCmd(Vector($3), + {fr->createAnnulusCmd(Vector($3), $5,$7,1, color,dash,1,font,text,localProps,localComment,taglist,cblist);} | ANNULUS_ bp coord sp value sp value sp {aNum=2;} aRads ep @@ -219,9 +219,7 @@ shape : CIRCLE_ bp coord sp value ep shapeComment strncpy(aComment,localComment,80); aProps = localProps; - fr->createEllipseCmd(Vector($3), - Vector($5), - $7, + fr->createEllipseCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); } | ELLIPSE_ bp coord sp vvalue sp optangle ep '&' '!' @@ -242,15 +240,11 @@ shape : CIRCLE_ bp coord sp value ep shapeComment strncpy(aComment,localComment,80); aProps = localProps; - fr->createBoxCmd(Vector($3), - Vector($5), - $7, + fr->createBoxCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist); } | ROTBOX_ bp coord sp vvalue sp optangle ep shapeComment - {fr->createBoxCmd(Vector($3), - Vector($5), - $7, + {fr->createBoxCmd(Vector($3), Vector($5), $7, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} | BOX_ bp coord sp vvalue sp optangle ep '&' '!' BOX_ bp coord sp vvalue sp optangle ep @@ -264,7 +258,7 @@ shape : CIRCLE_ bp coord sp value ep shapeComment color,dash,1,font,text,localProps,localComment,taglist,cblist);} | POLYGON_ {polylist.deleteAll();} bp polyNodes ep shapeComment - {fr->createPolygonCmd(polylist, + {fr->createPolygonCmd(polylist, fill_, color,dash,1,font,text,localProps,localComment,taglist,cblist);} ; diff --git a/tksao/frame/segment.C b/tksao/frame/segment.C index ce99203..059ca4b 100644 --- a/tksao/frame/segment.C +++ b/tksao/frame/segment.C @@ -171,3 +171,26 @@ void Segment::list(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, listProperties(str, 0); } } + +void Segment::listXML(ostream& str, Coord::CoordSystem sys, + Coord::SkyFrame sky, Coord::SkyFormat format) +{ + FitsImage* ptr = parent->findFits(sys,center); + Matrix mm = fwdMatrix(); + Vector* vv = new Vector[vertex.count()]; + + XMLRowInit(); + XMLRow(XMLSHAPE,type_); + + vertex.head(); + int cnt =0; + do + vv[cnt++] =vertex.current()->vector*mm; + while (vertex.next()); + XMLRowPoint(ptr,sys,sky,format,vv,vertex.count()); + delete [] vv; + + XMLRowProps(ptr,sys); + XMLRowEnd(str); +} + diff --git a/tksao/frame/segment.h b/tksao/frame/segment.h index ae331e4..e2ed163 100644 --- a/tksao/frame/segment.h +++ b/tksao/frame/segment.h @@ -42,6 +42,7 @@ public: void reset(const Vector&); void list(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat, int, int); + void listXML(ostream&, Coord::CoordSystem, Coord::SkyFrame, Coord::SkyFormat); }; #endif diff --git a/tksao/frame/tngparser.C b/tksao/frame/tngparser.C index 40af2ff..83f4d72 100644 --- a/tksao/frame/tngparser.C +++ b/tksao/frame/tngparser.C @@ -205,6 +205,7 @@ static char globalColor[16]; static char localColor[16]; static int dash[] = {8,3}; +static int fill_ =0; static char globalFont[32]; @@ -242,7 +243,7 @@ static Coord::SkyFrame checkWCSSky(); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 61 "frame/tngparser.Y" +#line 62 "frame/tngparser.Y" { #define TNGBUFSIZE 2048 double real; @@ -251,7 +252,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 255 "frame/tngparser.C" +#line 256 "frame/tngparser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -264,7 +265,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 268 "frame/tngparser.C" +#line 269 "frame/tngparser.C" #ifdef short # undef short @@ -582,15 +583,15 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 130, 130, 133, 134, 137, 138, 139, 140, 141, - 144, 145, 146, 149, 150, 153, 154, 157, 158, 161, - 162, 165, 166, 169, 170, 173, 174, 177, 180, 189, - 192, 206, 213, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 235, 249, 265, 266, 267, 270, 276, - 283, 290, 297, 302, 302, 308, 308, 314, 315, 318, - 321, 322, 322, 323, 323, 324, 324, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 341, 346, 346, - 349, 350, 351, 352, 356, 360 + 0, 131, 131, 134, 135, 138, 139, 140, 141, 142, + 145, 146, 147, 150, 151, 154, 155, 158, 159, 162, + 163, 166, 167, 170, 171, 174, 175, 178, 181, 190, + 193, 207, 214, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 233, 236, 250, 266, 267, 268, 271, 276, + 281, 286, 293, 298, 298, 304, 304, 310, 311, 314, + 317, 318, 318, 319, 319, 320, 320, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 337, 342, 342, + 345, 346, 347, 348, 352, 356 }; #endif @@ -1611,62 +1612,62 @@ yyreduce: switch (yyn) { case 7: -#line 139 "frame/tngparser.Y" +#line 140 "frame/tngparser.Y" {cerr << "SAOtng" << endl;;} break; case 12: -#line 146 "frame/tngparser.Y" +#line 147 "frame/tngparser.Y" {YYACCEPT;;} break; case 13: -#line 149 "frame/tngparser.Y" +#line 150 "frame/tngparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 14: -#line 150 "frame/tngparser.Y" +#line 151 "frame/tngparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 15: -#line 153 "frame/tngparser.Y" +#line 154 "frame/tngparser.Y" {yydebug=1;;} break; case 16: -#line 154 "frame/tngparser.Y" +#line 155 "frame/tngparser.Y" {yydebug=0;;} break; case 23: -#line 169 "frame/tngparser.Y" +#line 170 "frame/tngparser.Y" {(yyval.real) = 0;;} break; case 24: -#line 170 "frame/tngparser.Y" +#line 171 "frame/tngparser.Y" {(yyval.real) = (yyvsp[(1) - (1)].real);;} break; case 25: -#line 173 "frame/tngparser.Y" +#line 174 "frame/tngparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 26: -#line 174 "frame/tngparser.Y" +#line 175 "frame/tngparser.Y" {(yyval.real) = degToRad((yyvsp[(1) - (1)].real));;} break; case 27: -#line 177 "frame/tngparser.Y" +#line 178 "frame/tngparser.Y" {(yyval.real) = FITSPTR->mapLenToRef((yyvsp[(1) - (1)].real),Coord::IMAGE);;} break; case 28: -#line 181 "frame/tngparser.Y" +#line 182 "frame/tngparser.Y" { Vector r = FITSPTR->mapLenToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), Coord::IMAGE); (yyval.vector)[0] = r[0]; @@ -1676,12 +1677,12 @@ yyreduce: break; case 29: -#line 189 "frame/tngparser.Y" +#line 190 "frame/tngparser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 30: -#line 193 "frame/tngparser.Y" +#line 194 "frame/tngparser.Y" { Vector r; Coord::CoordSystem sys = checkWCSSystem(); @@ -1698,7 +1699,7 @@ yyreduce: break; case 31: -#line 207 "frame/tngparser.Y" +#line 208 "frame/tngparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), localSystem, localSky); (yyval.vector)[0] = r[0]; @@ -1708,7 +1709,7 @@ yyreduce: break; case 32: -#line 214 "frame/tngparser.Y" +#line 215 "frame/tngparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)), checkWCSSystem(), checkWCSSky()); @@ -1719,57 +1720,57 @@ yyreduce: break; case 33: -#line 223 "frame/tngparser.Y" +#line 224 "frame/tngparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 34: -#line 224 "frame/tngparser.Y" +#line 225 "frame/tngparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 35: -#line 225 "frame/tngparser.Y" +#line 226 "frame/tngparser.Y" {(yyval.integer) = Coord::FK4_NO_E;;} break; case 36: -#line 226 "frame/tngparser.Y" +#line 227 "frame/tngparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 37: -#line 227 "frame/tngparser.Y" +#line 228 "frame/tngparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 38: -#line 228 "frame/tngparser.Y" +#line 229 "frame/tngparser.Y" {(yyval.integer) = Coord::ICRS;;} break; case 39: -#line 229 "frame/tngparser.Y" +#line 230 "frame/tngparser.Y" {(yyval.integer) = Coord::GALACTIC;;} break; case 40: -#line 230 "frame/tngparser.Y" +#line 231 "frame/tngparser.Y" {(yyval.integer) = Coord::SUPERGALACTIC;;} break; case 41: -#line 231 "frame/tngparser.Y" +#line 232 "frame/tngparser.Y" {(yyval.integer) = Coord::ECLIPTIC;;} break; case 42: -#line 232 "frame/tngparser.Y" +#line 233 "frame/tngparser.Y" {(yyval.integer) = Coord::HELIOECLIPTIC;;} break; case 43: -#line 235 "frame/tngparser.Y" +#line 236 "frame/tngparser.Y" { // global properties globalSystem = Coord::IMAGE; @@ -1785,7 +1786,7 @@ yyreduce: break; case 44: -#line 249 "frame/tngparser.Y" +#line 250 "frame/tngparser.Y" { // reset maperr flag maperr =0; @@ -1803,48 +1804,43 @@ yyreduce: break; case 45: -#line 265 "frame/tngparser.Y" +#line 266 "frame/tngparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 46: -#line 266 "frame/tngparser.Y" +#line 267 "frame/tngparser.Y" {setProps(&localProps, Marker::INCLUDE, 1);;} break; case 47: -#line 267 "frame/tngparser.Y" +#line 268 "frame/tngparser.Y" {setProps(&localProps, Marker::INCLUDE, 0);;} break; case 48: -#line 271 "frame/tngparser.Y" - {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), - (yyvsp[(5) - (7)].real), +#line 272 "frame/tngparser.Y" + {fr->createCircleCmd(Vector((yyvsp[(3) - (7)].vector)), (yyvsp[(5) - (7)].real), fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);;} break; case 49: #line 277 "frame/tngparser.Y" - {fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), + {fr->createEllipseCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);;} break; case 50: -#line 284 "frame/tngparser.Y" - {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), - Vector((yyvsp[(5) - (9)].vector)), - (yyvsp[(7) - (9)].real), +#line 282 "frame/tngparser.Y" + {fr->createBoxCmd(Vector((yyvsp[(3) - (9)].vector)), Vector((yyvsp[(5) - (9)].vector)), (yyvsp[(7) - (9)].real), fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);;} break; case 51: -#line 291 "frame/tngparser.Y" +#line 287 "frame/tngparser.Y" {fr->createLineCmd(Vector((yyvsp[(3) - (7)].vector)), Vector((yyvsp[(5) - (7)].vector)), 0,0, @@ -1853,19 +1849,19 @@ yyreduce: break; case 52: -#line 298 "frame/tngparser.Y" +#line 294 "frame/tngparser.Y" {fr->createPointCmd(Vector((yyvsp[(3) - (5)].vector)), Point::BOXCIRCLE, POINTSIZE, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);;} break; case 53: -#line 302 "frame/tngparser.Y" +#line 298 "frame/tngparser.Y" {strncpy(localText,(yyvsp[(5) - (6)].str),80);;} break; case 54: -#line 303 "frame/tngparser.Y" +#line 299 "frame/tngparser.Y" {fr->createTextCmd(Vector((yyvsp[(3) - (8)].vector)), 0, 1, localColor,dash,1,globalFont,localText, @@ -1873,84 +1869,84 @@ yyreduce: break; case 55: -#line 308 "frame/tngparser.Y" +#line 304 "frame/tngparser.Y" {polylist.deleteAll();;} break; case 56: -#line 309 "frame/tngparser.Y" - {fr->createPolygonCmd(polylist, - localColor,dash,1,globalFont,localText, - localProps,localComment,taglist,cblist);;} +#line 305 "frame/tngparser.Y" + {fr->createPolygonCmd(polylist, fill_, + localColor,dash,1,globalFont,localText, + localProps,localComment,taglist,cblist);;} break; case 59: -#line 318 "frame/tngparser.Y" +#line 314 "frame/tngparser.Y" {polylist.append(new Vertex((yyvsp[(1) - (1)].vector)));;} break; case 61: -#line 322 "frame/tngparser.Y" +#line 318 "frame/tngparser.Y" {DISCARD_(0);;} break; case 63: -#line 323 "frame/tngparser.Y" +#line 319 "frame/tngparser.Y" {DISCARD_(0);;} break; case 65: -#line 324 "frame/tngparser.Y" +#line 320 "frame/tngparser.Y" {DISCARD_(1);;} break; case 66: -#line 324 "frame/tngparser.Y" +#line 320 "frame/tngparser.Y" {strncpy(globalText,(yyvsp[(3) - (3)].str),80);;} break; case 68: -#line 328 "frame/tngparser.Y" +#line 324 "frame/tngparser.Y" {strcpy(localColor,"white");;} break; case 69: -#line 329 "frame/tngparser.Y" +#line 325 "frame/tngparser.Y" {strcpy(localColor,"black");;} break; case 70: -#line 330 "frame/tngparser.Y" +#line 326 "frame/tngparser.Y" {strcpy(localColor,"red");;} break; case 71: -#line 331 "frame/tngparser.Y" +#line 327 "frame/tngparser.Y" {strcpy(localColor,"green");;} break; case 72: -#line 332 "frame/tngparser.Y" +#line 328 "frame/tngparser.Y" {strcpy(localColor,"blue");;} break; case 73: -#line 333 "frame/tngparser.Y" +#line 329 "frame/tngparser.Y" {strcpy(localColor,"cyan");;} break; case 74: -#line 334 "frame/tngparser.Y" +#line 330 "frame/tngparser.Y" {strcpy(localColor,"magenta");;} break; case 75: -#line 335 "frame/tngparser.Y" +#line 331 "frame/tngparser.Y" {strcpy(localColor,"yellow");;} break; case 76: -#line 337 "frame/tngparser.Y" +#line 333 "frame/tngparser.Y" { strcpy(localColor,"green"); setProps(&localProps,Marker::SOURCE,1); @@ -1958,7 +1954,7 @@ yyreduce: break; case 77: -#line 342 "frame/tngparser.Y" +#line 338 "frame/tngparser.Y" { strcpy(localColor,"red"); setProps(&localProps,Marker::SOURCE,0); @@ -1966,27 +1962,27 @@ yyreduce: break; case 78: -#line 346 "frame/tngparser.Y" +#line 342 "frame/tngparser.Y" {DISCARD_(1);;} break; case 79: -#line 346 "frame/tngparser.Y" +#line 342 "frame/tngparser.Y" {strncpy(localComment,(yyvsp[(3) - (3)].str),80);;} break; case 82: -#line 351 "frame/tngparser.Y" +#line 347 "frame/tngparser.Y" {globalSystem = localSystem = Coord::IMAGE;;} break; case 83: -#line 352 "frame/tngparser.Y" +#line 348 "frame/tngparser.Y" {globalSystem = localSystem = Coord::IMAGE;;} break; case 84: -#line 356 "frame/tngparser.Y" +#line 352 "frame/tngparser.Y" { globalSystem = localSystem = Coord::WCS; globalSky = localSky = Coord::FK5; @@ -1994,7 +1990,7 @@ yyreduce: break; case 85: -#line 361 "frame/tngparser.Y" +#line 357 "frame/tngparser.Y" { globalSystem = localSystem = Coord::WCS; globalSky = localSky = (Coord::SkyFrame)(yyvsp[(2) - (3)].integer); @@ -2003,7 +1999,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 2007 "frame/tngparser.C" +#line 2003 "frame/tngparser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2217,7 +2213,7 @@ yyreturn: } -#line 367 "frame/tngparser.Y" +#line 363 "frame/tngparser.Y" static void setProps(unsigned short* props, unsigned short prop, int value) diff --git a/tksao/frame/tngparser.H b/tksao/frame/tngparser.H index 864c0e7..044dbae 100644 --- a/tksao/frame/tngparser.H +++ b/tksao/frame/tngparser.H @@ -136,7 +136,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 61 "frame/tngparser.Y" +#line 62 "frame/tngparser.Y" { #define TNGBUFSIZE 2048 double real; diff --git a/tksao/frame/tngparser.Y b/tksao/frame/tngparser.Y index b3887e1..9c7530f 100644 --- a/tksao/frame/tngparser.Y +++ b/tksao/frame/tngparser.Y @@ -41,6 +41,7 @@ static char globalColor[16]; static char localColor[16]; static int dash[] = {8,3}; +static int fill_ =0; static char globalFont[32]; @@ -268,47 +269,42 @@ include : /* empty */ {setProps(&localProps, Marker::INCLUDE, 1);} ; shape : CIRCLE_ bp coord sp value ep shapeComment - {fr->createCircleCmd(Vector($3), - $5, + {fr->createCircleCmd(Vector($3), $5, fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | ELLIPSE_ bp coord sp vvalue sp optangle ep shapeComment - {fr->createEllipseCmd(Vector($3), - Vector($5), - $7, + {fr->createEllipseCmd(Vector($3), Vector($5), $7, fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | BOX_ bp coord sp vvalue sp optangle ep shapeComment - {fr->createBoxCmd(Vector($3), - Vector($5), - $7, + {fr->createBoxCmd(Vector($3), Vector($5), $7, fill_, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | LINE_ bp coord sp coord ep shapeComment - {fr->createLineCmd(Vector($3), + {fr->createLineCmd(Vector($3), Vector($5), 0,0, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | POINT_ bp coord ep shapeComment - {fr->createPointCmd(Vector($3), Point::BOXCIRCLE, POINTSIZE, + {fr->createPointCmd(Vector($3), Point::BOXCIRCLE, POINTSIZE, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | TEXT_ bp coord sp STRING ep {strncpy(localText,$5,80);} shapeComment - {fr->createTextCmd(Vector($3), + {fr->createTextCmd(Vector($3), 0, 1, localColor,dash,1,globalFont,localText, localProps,localComment,taglist,cblist);} | POLYGON_ {polylist.deleteAll();} bp polyNodes ep shapeComment - {fr->createPolygonCmd(polylist, - localColor,dash,1,globalFont,localText, - localProps,localComment,taglist,cblist);} + {fr->createPolygonCmd(polylist, fill_, + localColor,dash,1,globalFont,localText, + localProps,localComment,taglist,cblist);} ; polyNodes : polyNodes sp polyNode diff --git a/tksao/frame/xyparser.C b/tksao/frame/xyparser.C index f69bd18..8dc9ff3 100644 --- a/tksao/frame/xyparser.C +++ b/tksao/frame/xyparser.C @@ -213,6 +213,7 @@ extern void xyerror(Base*, xyFlexLexer*, const char*); static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; @@ -245,7 +246,7 @@ static List<CallBack> cblist; #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 44 "frame/xyparser.Y" +#line 45 "frame/xyparser.Y" { #define XYBUFSIZE 2048 double real; @@ -254,7 +255,7 @@ typedef union YYSTYPE double vector[3]; } /* Line 193 of yacc.c. */ -#line 258 "frame/xyparser.C" +#line 259 "frame/xyparser.C" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -267,7 +268,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 271 "frame/xyparser.C" +#line 272 "frame/xyparser.C" #ifdef short # undef short @@ -578,14 +579,14 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 122, 122, 122, 128, 129, 132, 133, 134, 135, - 136, 138, 138, 141, 142, 145, 146, 149, 152, 153, - 154, 157, 158, 161, 162, 165, 166, 169, 172, 175, - 178, 189, 196, 203, 210, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 266 + 0, 123, 123, 123, 129, 130, 133, 134, 135, 136, + 137, 139, 139, 142, 143, 146, 147, 150, 153, 154, + 155, 158, 159, 162, 163, 166, 167, 170, 173, 176, + 179, 190, 197, 204, 211, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 267 }; #endif @@ -1576,7 +1577,7 @@ yyreduce: switch (yyn) { case 2: -#line 122 "frame/xyparser.Y" +#line 123 "frame/xyparser.Y" { globalSystem = fr->xySystem(); globalSky = fr->xySky(); @@ -1584,72 +1585,72 @@ yyreduce: break; case 8: -#line 134 "frame/xyparser.Y" +#line 135 "frame/xyparser.Y" {cerr << "X Y Format 1.0" << endl;;} break; case 9: -#line 135 "frame/xyparser.Y" +#line 136 "frame/xyparser.Y" {globalSystem = (Coord::CoordSystem)(yyvsp[(1) - (1)].integer);;} break; case 10: -#line 137 "frame/xyparser.Y" +#line 138 "frame/xyparser.Y" {globalSystem = (Coord::CoordSystem)(yyvsp[(1) - (2)].integer); globalSky = (Coord::SkyFrame)(yyvsp[(2) - (2)].integer);;} break; case 11: -#line 138 "frame/xyparser.Y" +#line 139 "frame/xyparser.Y" {localSystem = globalSystem; localSky = globalSky; maperr = 0;;} break; case 17: -#line 149 "frame/xyparser.Y" +#line 150 "frame/xyparser.Y" {;} break; case 20: -#line 154 "frame/xyparser.Y" +#line 155 "frame/xyparser.Y" {YYACCEPT;;} break; case 21: -#line 157 "frame/xyparser.Y" +#line 158 "frame/xyparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].real);;} break; case 22: -#line 158 "frame/xyparser.Y" +#line 159 "frame/xyparser.Y" {(yyval.real)=(yyvsp[(1) - (1)].integer);;} break; case 23: -#line 161 "frame/xyparser.Y" +#line 162 "frame/xyparser.Y" {yydebug=1;;} break; case 24: -#line 162 "frame/xyparser.Y" +#line 163 "frame/xyparser.Y" {yydebug=0;;} break; case 27: -#line 169 "frame/xyparser.Y" +#line 170 "frame/xyparser.Y" {(yyval.real) = parseSEXStr((yyvsp[(1) - (1)].str));;} break; case 28: -#line 172 "frame/xyparser.Y" +#line 173 "frame/xyparser.Y" {(yyval.real) = parseHMSStr((yyvsp[(1) - (1)].str));;} break; case 29: -#line 175 "frame/xyparser.Y" +#line 176 "frame/xyparser.Y" {(yyval.real) = parseDMSStr((yyvsp[(1) - (1)].str));;} break; case 30: -#line 179 "frame/xyparser.Y" +#line 180 "frame/xyparser.Y" { Vector r; if (localSky == Coord::GALACTIC || localSky == Coord::ECLIPTIC) @@ -1663,7 +1664,7 @@ yyreduce: break; case 31: -#line 190 "frame/xyparser.Y" +#line 191 "frame/xyparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),localSystem,localSky); (yyval.vector)[0] = r[0]; @@ -1673,7 +1674,7 @@ yyreduce: break; case 32: -#line 197 "frame/xyparser.Y" +#line 198 "frame/xyparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),localSystem,localSky); (yyval.vector)[0] = r[0]; @@ -1683,7 +1684,7 @@ yyreduce: break; case 33: -#line 204 "frame/xyparser.Y" +#line 205 "frame/xyparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),localSystem,localSky); (yyval.vector)[0] = r[0]; @@ -1693,7 +1694,7 @@ yyreduce: break; case 34: -#line 211 "frame/xyparser.Y" +#line 212 "frame/xyparser.Y" { Vector r = FITSPTR->mapToRef(Vector((yyvsp[(1) - (3)].real),(yyvsp[(3) - (3)].real)),localSystem,localSky); (yyval.vector)[0] = r[0]; @@ -1703,222 +1704,222 @@ yyreduce: break; case 35: -#line 219 "frame/xyparser.Y" +#line 220 "frame/xyparser.Y" {(yyval.integer) = Coord::IMAGE;;} break; case 36: -#line 220 "frame/xyparser.Y" +#line 221 "frame/xyparser.Y" {(yyval.integer) = Coord::IMAGE;;} break; case 37: -#line 221 "frame/xyparser.Y" +#line 222 "frame/xyparser.Y" {(yyval.integer) = Coord::PHYSICAL;;} break; case 38: -#line 222 "frame/xyparser.Y" +#line 223 "frame/xyparser.Y" {(yyval.integer) = Coord::PHYSICAL;;} break; case 39: -#line 223 "frame/xyparser.Y" +#line 224 "frame/xyparser.Y" {(yyval.integer) = Coord::AMPLIFIER;;} break; case 40: -#line 224 "frame/xyparser.Y" +#line 225 "frame/xyparser.Y" {(yyval.integer) = Coord::DETECTOR;;} break; case 41: -#line 225 "frame/xyparser.Y" +#line 226 "frame/xyparser.Y" {(yyval.integer) = Coord::WCS;;} break; case 42: -#line 226 "frame/xyparser.Y" +#line 227 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSA;;} break; case 43: -#line 227 "frame/xyparser.Y" +#line 228 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSB;;} break; case 44: -#line 228 "frame/xyparser.Y" +#line 229 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSC;;} break; case 45: -#line 229 "frame/xyparser.Y" +#line 230 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSD;;} break; case 46: -#line 230 "frame/xyparser.Y" +#line 231 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSE;;} break; case 47: -#line 231 "frame/xyparser.Y" +#line 232 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSF;;} break; case 48: -#line 232 "frame/xyparser.Y" +#line 233 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSG;;} break; case 49: -#line 233 "frame/xyparser.Y" +#line 234 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSH;;} break; case 50: -#line 234 "frame/xyparser.Y" +#line 235 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSI;;} break; case 51: -#line 235 "frame/xyparser.Y" +#line 236 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSJ;;} break; case 52: -#line 236 "frame/xyparser.Y" +#line 237 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSK;;} break; case 53: -#line 237 "frame/xyparser.Y" +#line 238 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSL;;} break; case 54: -#line 238 "frame/xyparser.Y" +#line 239 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSM;;} break; case 55: -#line 239 "frame/xyparser.Y" +#line 240 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSN;;} break; case 56: -#line 240 "frame/xyparser.Y" +#line 241 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSO;;} break; case 57: -#line 241 "frame/xyparser.Y" +#line 242 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSP;;} break; case 58: -#line 242 "frame/xyparser.Y" +#line 243 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSQ;;} break; case 59: -#line 243 "frame/xyparser.Y" +#line 244 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSR;;} break; case 60: -#line 244 "frame/xyparser.Y" +#line 245 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSS;;} break; case 61: -#line 245 "frame/xyparser.Y" +#line 246 "frame/xyparser.Y" {(yyval.integer) = Coord::WCST;;} break; case 62: -#line 246 "frame/xyparser.Y" +#line 247 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSU;;} break; case 63: -#line 247 "frame/xyparser.Y" +#line 248 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSV;;} break; case 64: -#line 248 "frame/xyparser.Y" +#line 249 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSW;;} break; case 65: -#line 249 "frame/xyparser.Y" +#line 250 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSX;;} break; case 66: -#line 250 "frame/xyparser.Y" +#line 251 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSY;;} break; case 67: -#line 251 "frame/xyparser.Y" +#line 252 "frame/xyparser.Y" {(yyval.integer) = Coord::WCSZ;;} break; case 68: -#line 254 "frame/xyparser.Y" +#line 255 "frame/xyparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 69: -#line 255 "frame/xyparser.Y" +#line 256 "frame/xyparser.Y" {(yyval.integer) = Coord::FK4;;} break; case 70: -#line 256 "frame/xyparser.Y" +#line 257 "frame/xyparser.Y" {(yyval.integer) = Coord::FK4_NO_E;;} break; case 71: -#line 257 "frame/xyparser.Y" +#line 258 "frame/xyparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 72: -#line 258 "frame/xyparser.Y" +#line 259 "frame/xyparser.Y" {(yyval.integer) = Coord::FK5;;} break; case 73: -#line 259 "frame/xyparser.Y" +#line 260 "frame/xyparser.Y" {(yyval.integer) = Coord::ICRS;;} break; case 74: -#line 260 "frame/xyparser.Y" +#line 261 "frame/xyparser.Y" {(yyval.integer) = Coord::GALACTIC;;} break; case 75: -#line 261 "frame/xyparser.Y" +#line 262 "frame/xyparser.Y" {(yyval.integer) = Coord::SUPERGALACTIC;;} break; case 76: -#line 262 "frame/xyparser.Y" +#line 263 "frame/xyparser.Y" {(yyval.integer) = Coord::ECLIPTIC;;} break; case 77: -#line 263 "frame/xyparser.Y" +#line 264 "frame/xyparser.Y" {(yyval.integer) = Coord::HELIOECLIPTIC;;} break; case 78: -#line 266 "frame/xyparser.Y" +#line 267 "frame/xyparser.Y" {fr->createPointCmd(Vector((yyvsp[(1) - (1)].vector)), Point::BOXCIRCLE, POINTSIZE, color,dash,1,font,text, Marker::SELECT | Marker::EDIT | Marker::MOVE | Marker::ROTATE | @@ -1930,7 +1931,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 1934 "frame/xyparser.C" +#line 1935 "frame/xyparser.C" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2144,6 +2145,6 @@ yyreturn: } -#line 275 "frame/xyparser.Y" +#line 276 "frame/xyparser.Y" diff --git a/tksao/frame/xyparser.H b/tksao/frame/xyparser.H index 8e4aec6..9023362 100644 --- a/tksao/frame/xyparser.H +++ b/tksao/frame/xyparser.H @@ -156,7 +156,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 44 "frame/xyparser.Y" +#line 45 "frame/xyparser.Y" { #define XYBUFSIZE 2048 double real; diff --git a/tksao/frame/xyparser.Y b/tksao/frame/xyparser.Y index eb711ac..f4e83a7 100644 --- a/tksao/frame/xyparser.Y +++ b/tksao/frame/xyparser.Y @@ -29,6 +29,7 @@ extern void xyerror(Base*, xyFlexLexer*, const char*); static const char *color = "green"; static int dash[] = {8,3}; +static int fill_ =0; static const char *font = "helvetica 10 normal roman"; static const char *text = ""; |