PK ݈56  Color.class-q()VColorblackLjava/awt/Color; java/awt/Color (Ljava/awt/Color;)V  BLACKLColor;  blue  BLUE  cyan  CYAN  darkGray   DARK_GRAY " #gray % &GRAY ( )green + ,GREEN . / lightGray 1 2 LIGHT_GRAY 4 5magenta 7 8MAGENTA : ;orange = >ORANGE @ Apink C DPINK F Gred I JRED L Mwhite O PWHITE R Syellow U VYELLOW X YCode(III)V \ ](I)V _ `(FFF)V b cgetRed()I ef ggetGreen if jgetBlue lf m SourceFilePatchColor.java! "(.4:@FLRX[Y YYY!$Y'*Y-0Y36Y9<Y?BYEHYKNYQTYWZ \[*^ _[*a b[*#$%d [*+h+k+n^opPK ݈5 acm/graphics/PK ݈5QPacm/graphics/G3DRect.class-G()V(DD)V(DDDDZ)V acm/graphics/G3DRect Code(DDDD)V  acm/graphics/GRect  isRaisedZ  paint(Ljava/awt/Graphics;)V getAWTBounds()Ljava/awt/Rectangle;  isFilled()Z   getFillColor()Ljava/awt/Color;   setColor(Ljava/awt/Color;)V "#java/awt/Graphics% &$xI ()java/awt/Rectangle+ ,*y .) ,/width 1) ,2height 4) ,5 fill3DRect(IIIIZ)V 78 &9getColor ;acm/graphics/GObject= >< draw3DRect @8 &A setRaised(Z)V SourceFile G3DRect.java!   *')    *')   *')*  YM*M*++*!'+,-,0,3,6*:+*?'+,-,0,3,6*BCD * *EFPK ݈5kY acm/graphics/ArcRenderer.class-()V(Lacm/graphics/GObject;)V java/lang/Object targetLacm/graphics/GObject; acm/graphics/ArcRenderer java/awt/Polygon polyLjava/awt/Polygon;   cacheValidZ  Codedraw(Ljava/awt/Graphics;)V validateCache  acm/graphics/GFillable isFilled()Z "# !$ getFillColor()Ljava/awt/Color; &' !(setColor(Ljava/awt/Color;)V *+java/awt/Graphics- .,xpoints[I 01 2ypoints 41 5npointsI 78 9 fillPolygon([I[II)V ;< .=getColor ?'acm/graphics/GObjectA B@ drawPolygon D< .Eacm/graphics/GArcG drawPolyline I< .J@vacm/graphics/GOvalNacm/graphics/GRoundRectP getBounds()Lacm/graphics/GRectangle; RS BTgetFrameRectangle VS HW getStartAngle()D YZ H[ getSweepAngle ]Z H^oldStartD `a boldSweep da egetX gZacm/graphics/GRectanglei jhgetY lZ jmgetWidth oZ jp getHeight rZ js oldBoundsLacm/graphics/GRectangle; uv w getArcWidth yZ Qzround(D)I |}acm/graphics/GMath ~ getArcHeight Z Q@>haddPoint(II)V @VaddArc (DDDDDD)V @f@px0 8 y0 8 movePoly @v =pmax(DD)D java/lang/Math atan2  toRadians(D)D cos sin EPSILON ConstantValue SourceFile GArc.java  a 88uv`ada&**+*Y***!%S+*!)/+*3*6*:>+*C/+*3*6*:FD*H!+*3*6*:dK+*3*6*:F LIL9*O *Q*UL7*H:XL\I_9(*c *f*++k9+n9+q9 +t9    * *xq *xt-*:*Q*Q:{99*occc** cg* cg cg* cgN*  (*H5* occ occ*(c*f**3.g**6.g*+x*xk*xn*cc*+x*!o9 o9o9'c9)c9   c9  w9  L9 9 o6 o9 96Ckc9k kg9*ccc9bV*3.*dd>*6.*dd66#*3\.`O*6\.`O*:ױPK ݈5*acm/graphics/GArc.class-()V ARC_TOLERANCED@(DDDD)V (DDDDDD)V  acm/graphics/GArc Code acm/graphics/GObject  frameWidth   frameHeight  arcStart  arcSweep   setLocation(DD)V  !acm/graphics/ArcRenderer#(Lacm/graphics/GObject;)V % $&rendererLacm/graphics/ArcRenderer; () * setStartAngle(D)Vrepaint . / getStartAngle()D setSweepAngle getSweepAngle getStartPoint()Lacm/graphics/GPoint; getArcPoint(D)Lacm/graphics/GPoint; 78 9 getEndPointpaint(Ljava/awt/Graphics;)V getComponent()Ljava/awt/Component; >? @acm/graphics/GCanvasBgetNativeArcFlag()Z DE CFdraw H= $I getAWTBounds()Ljava/awt/Rectangle; KL MgetX O2 P@round(D)I TUacm/graphics/GMathW XVgetY Z2 [isFilled ]E ^ getFillColor()Ljava/awt/Color; `a bsetColor(Ljava/awt/Color;)V dejava/awt/Graphicsg hfxI jkjava/awt/Rectanglem nly pk nqwidth sk ntheight vk nwfillArc (IIIIII)V yz h{getColor }a ~drawArc z htoPoint()Ljava/awt/Point; acm/graphics/GPoint java/awt/Point l qdrawLine(IIII)V h getBounds()Lacm/graphics/GRectangle; cosDegrees(D)D X sinDegrees Xmin(DD)D java/lang/Math max  containsAngle(D)Z @V@f@pacm/graphics/GRectangle  contains(DD)Zabs atan2  toDegrees XsetFrameRectangle(Lacm/graphics/GRectangle;)V P [getWidth 2  getHeight 2  getFrameRectanglescale  setFilled(Z)VZ ]  setFillColor fillColorLjava/awt/Color;  n paramString()Ljava/lang/String; indexOf(I)I java/lang/String  substring(I)Ljava/lang/String; java/lang/StringBufferframe=((Ljava/lang/String;)V  append(D)Ljava/lang/StringBuffer; , ,(Ljava/lang/String;)Ljava/lang/StringBuffer; )toString valueOf&(Ljava/lang/Object;)Ljava/lang/String; , start=, sweep=   12  42  @v ConstantValue SourceFileacm/graphics/GFillableacm/graphics/GScalable GArc.java!  ]() *')  ; /**** * *')"*$Y*'+,- *'*012*3- *'*042*56 **:;6***c:<=  *AM,C,CG*++J*NN*Q*RocY6*\*RocY6*Y6*Y6*_+*ci+-o-r-u-x|+*i+-o-r-u-x*::+*`:: +  +-o-r-u-x  *RoH*RoJ*Q'c9*\)c9*'kc9 *)kg9 **c'kc9 **c)kg9  9  9 9 9* 'c9* )g9* 'g9* )c9*_'9999Ygcgc*Ro9*Ro9 '*Qcg9 )*\cg9   kko  kkoc9 *_  #cRoo9 g* w  ***')"! *++++ŶDZ$ Y*Q*\** %*Y'k*Y)k*0-*''˱ **0]E*Ьe *+*0`a* **հKL0$nY*QY*\Y*Y*Yװ*L++)`L*MY,,,¶,ŶNY-**NY-+78K ?*RoJ*Ro9*Q)c9*\c9 Y)'kc 'kg*** cJ* 9 ' 'w sg' sH) )w sg) sJ)c ')')c g') ')cPK ݈5X66acm/graphics/GMouseEvent.class-a()V1(Ljava/lang/Object;ILjava/awt/event/MouseEvent;)V getComponent()Ljava/awt/Component; java/awt/event/ComponentEvent getWhen()J java/awt/event/InputEvent   getModifiers()I  getX java/awt/event/MouseEvent getY   getClickCount  isPopupTrigger()Z ! "(Ljava/awt/Component;IJIIIIZ)V $ %effectiveSourceLjava/lang/Object; '(acm/graphics/GMouseEvent* +)Code getSource()Ljava/lang/Object; ./java/util/EventObject1 20java/awt/Component4toString()Ljava/lang/String;java/lang/StringBuffer8getClass()Ljava/lang/Class; :;java/lang/Object= ><getName @7java/lang/ClassB CAvalueOf&(Ljava/lang/Object;)Ljava/lang/String; EFjava/lang/StringH IG(Ljava/lang/String;)V K 9L[Nappend,(Ljava/lang/String;)Ljava/lang/StringBuffer; PQ 9R paramString T7 U] on W +0,(Ljava/lang/Object;)Ljava/lang/StringBuffer; PZ 9[ 67 9] SourceFile GCanvas.java +'(-3 '*- ------#&*+,./-*,-*3567-9-9Y*?DJMOS*VSXS*Y\^_`PK ݈5QBLL"acm/graphics/GCanvasListener.class->()V(Lacm/graphics/GCanvas;)V java/lang/Object gCanvasLacm/graphics/GCanvas; acm/graphics/GCanvasListener Code mouseClicked(Ljava/awt/event/MouseEvent;)VdispatchMouseEvent acm/graphics/GCanvas  mousePressed requestFocus java/awt/Component  mouseReleased mouseEntered mouseExited mouseDragged mouseMoved focusGained(Ljava/awt/event/FocusEvent;)V focusLostcomponentResized"(Ljava/awt/event/ComponentEvent;)VinitOffscreenImage ' ( isShowing()Z *+ ,repaint . /componentHiddencomponentMovedcomponentShown SourceFilejava/awt/event/FocusListener5java/awt/event/MouseListener7"java/awt/event/MouseMotionListener9 java/awt/event/ComponentListener; GCanvas.java 68:<  **+ *+**+ *+ *+ *+  *+! *+"# $# %&%*)*- *01& 2& 3& 4=PK ݈5@00acm/graphics/GCanvas.class-J()V java/awt/Container acm/graphics/ArrayList contentsLacm/graphics/ArrayList; acm/graphics/GCanvas   enabledList  whiteLjava/awt/Color; java/awt/Color  setBackground(Ljava/awt/Color;)V java/awt/Component  setOpaque(Z)V ! "setAutoRepaintFlag $! % setLayout(Ljava/awt/LayoutManager;)V '( )acm/graphics/GCanvasListener+(Lacm/graphics/GCanvas;)V - ,.gCanvasListenerLacm/graphics/GCanvasListener; 01 2addFocusListener!(Ljava/awt/event/FocusListener;)V 45 6addComponentListener%(Ljava/awt/event/ComponentListener;)V 89 :addMouseListener!(Ljava/awt/event/MouseListener;)V <= >addMouseMotionListener'(Ljava/awt/event/MouseMotionListener;)V @A BCodeadd(Lacm/graphics/GObject;)V getParent()Lacm/graphics/GContainer; GHacm/graphics/GObjectJ KIremove MFacm/graphics/GContainerO PN setParent(Lacm/graphics/GContainer;)V RS KT(Ljava/lang/Object;)Z EV ArrayListX YWareMouseListenersEnabled()Z [\ K]conditionalRepaint _ `(Lacm/graphics/GObject;DD)V EF c setLocation(DD)V ef Kg.(Lacm/graphics/GObject;Lacm/graphics/GPoint;)VgetX()D jkacm/graphics/GPointm nlgetY pk nq Eb s(Ljava/lang/Object;)V Mu Yv removeAllclear y Yz x |repaint ~ *(Ljava/awt/Component;)Ljava/awt/Component; E getSize()Ljava/awt/Dimension; widthI java/awt/Dimension height getPreferredSize setSize(Ljava/awt/Dimension;)V (Ljava/awt/Component;DD)Vround(D)I acm/graphics/GMath (II)V e  ,(Ljava/awt/Component;Lacm/graphics/GPoint;)V E (Ljava/awt/Component;)V M getElementCount()Isize java/util/Vector  getElement(I)Lacm/graphics/GObject;get(I)Ljava/lang/Object; Y getElementAt(DD)Lacm/graphics/GObject;2(Lacm/graphics/ArrayList;DD)Lacm/graphics/GObject; -(Lacm/graphics/GPoint;)Lacm/graphics/GObject; iterator()Lacm/graphics/Iterator;(I)Lacm/graphics/Iterator; createIterator3(Lacm/graphics/GContainer;I)Lacm/graphics/Iterator; acm/graphics/GCompound opaqueZ isOpaquegetWidth getHeightpaint(Ljava/awt/Graphics;)V \ offscreenImageLjava/awt/Image; initOffscreenImage   getGraphics()Ljava/awt/Graphics; java/awt/Image  getBackground()Ljava/awt/Color; setColor java/awt/Graphics fillRect(IIII)V  getForeground  paintObject K drawImage3(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z update  autoRepaint getAutoRepaintFlagsetNativeArcFlag nativeArcFlag  getNativeArcFlag sendToFrontindexOf(Ljava/lang/Object;)I   M Y  sendToBack(ILjava/lang/Object;)V E Y sendForwardmin(II)I java/lang/Math  sendBackwardmax  dispatchMouseEvent(Ljava/awt/event/MouseEvent;)V jjava/awt/event/MouseEvent  p ! lastObjectLacm/graphics/GObject; #$ %acm/graphics/GMouseEvent'1(Ljava/lang/Object;ILjava/awt/event/MouseEvent;)V ) (*fireMouseListeners , K- dragObject /$ 0getID 2java/awt/AWTEvent4 53 isConsumed 7\java/awt/event/InputEvent9 :8consume < := createImage(II)Ljava/awt/Image; ?@ AupdateEnabledListcontains(DD)Z DE KF SourceFile GCanvas.java!P 01#$/$  #Di]** Y * Y **#*&***,Y*/3**37**3;**3?**3CEFDWC*M,+L +L+Q+*U*+ZW+^ *+ZW,ç,ÿ*a6;EbD *+d+(hEiD*+,o,rtMFD=)*M,*+w*+w+U,ç,ÿ*a!xD:&*L+*{*{+ç+ÿ*}*EDOC*+W+M, ,++N, ,-, ,-+,+ED +(*+WED*+,o,rMD-*M,*+,ç,ÿ*a D*D *KD **')D *+o+rD*°D*Ȱ !D **a\D*̬D*D*D+M*ә@*** *׶L*N+*+--+**N-*66*K+-ç-ÿ*ә*,**W*,Mv{D*+$!D*\D*!D*\D*FDJ6*M,*+ 6* W*+ZW,ç,ÿ*a). FDJ6*M,*+ 6* W*+,ç,ÿ*a).FDWC*M,*+ 6#* W**`+,ç,ÿ*a6;FDQ=*M,*+ 6* W*d+,ç,ÿ*a05D**+ +"MN,*&8*&(Y*&++N*&-.,(Y,++N,-.*,&*1*1M,V+66H@ *11 *,1*1(Y,++N,-.--;+>DQ=*L+*N- -**--B+ç +ÿ:+é.3_D **CDE9*{*<="*KN-^ *-ZW߱Dc O*:+d6 &+ K:  (G  :  çÿ:é <BHIPK ݈5|0}}acm/graphics/GCompound.class-()V acm/graphics/GObject acm/graphics/ArrayList contentsLacm/graphics/ArrayList; acm/graphics/GCompound  completeZ  Codeadd(Lacm/graphics/GObject;)Vacm/util/ErrorExceptionFYou can't add objects to a GCompound that has been marked as complete.(Ljava/lang/String;)V   getParent()Lacm/graphics/GContainer;  !remove #acm/graphics/GContainer% &$ setParent(Lacm/graphics/GContainer;)V () *(Ljava/lang/Object;)Z , ArrayList. /-repaint 1 2(Lacm/graphics/GObject;DD)V  5 setLocation(DD)V 78 9.(Lacm/graphics/GObject;Lacm/graphics/GPoint;)VgetX()D <=acm/graphics/GPoint? @>getY B= @C 4 EKYou can't remove objects from a GCompound that has been marked as complete.G(Ljava/lang/Object;)V #I /J removeAllclear M /NgetElementCount()Isize RQjava/util/VectorT US getElement(I)Lacm/graphics/GObject;get(I)Ljava/lang/Object; YZ /[ getElementAt(DD)Lacm/graphics/GObject; PQ _ WX acontains(DD)Z cd e-(Lacm/graphics/GPoint;)Lacm/graphics/GObject; ]^ hiterator()Lacm/graphics/Iterator;(I)Lacm/graphics/Iterator; jl mcreateIterator3(Lacm/graphics/GContainer;I)Lacm/graphics/Iterator; op qpaint(Ljava/awt/Graphics;)Vcreate()Ljava/awt/Graphics; uvjava/awt/Graphicsx yw >round(D)I |}acm/graphics/GMath ~ C translate(II)V y paintObject t scale getComponent()Ljava/awt/Component; acm/graphics/GCanvasgetAutoRepaintFlag()Z setAutoRepaintFlag(Z)V acm/graphics/GScalable 8 (D)V  getBounds()Lacm/graphics/GRectangle;acm/graphics/GRectangle  (Lacm/graphics/GRectangle;)V   8 getCanvasPoint,(Lacm/graphics/GPoint;)Lacm/graphics/GPoint;(DD)Lacm/graphics/GPoint;  8 @ getLocalPoint markAsComplete sendToFrontindexOf(Ljava/lang/Object;)I U #Z / sendToBack(ILjava/lang/Object;)V  / sendForwardmin(II)I java/lang/Math  sendBackwardmax fireMouseListeners(Ljava/awt/event/MouseEvent;)VareMouseListenersEnabled   <Qjava/awt/event/MouseEvent BQ ]g  lastObjectLacm/graphics/GObject; acm/graphics/GMouseEvent1(Ljava/lang/Object;ILjava/awt/event/MouseEvent;)V   dragObject getID Qjava/awt/AWTEvent  isConsumed java/awt/event/InputEvent consume  java/lang/Exceptionacm.graphics.GIteratorforName%(Ljava/lang/String;)Ljava/lang/Class; java/lang/Class acm.graphics.GContainerTYPELjava/lang/Class; java/lang/Integer java/lang/Object(I)V   getConstructor3([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;    newInstance'([Ljava/lang/Object;)Ljava/lang/Object; java/lang/reflect/Constructor acm/graphics/Iterator.Unable to create an Iterator on this platform. SourceFileGCompound.java!& !** Y *XD* Y*M,+" +"+'+*+*+0W,ç,ÿ*37<4 *+6+(:;*+,A,DF#F2* YH*M,*+K++,ç,ÿ*3%*L@,* YH*L+*O+ç+ÿ*3$PQ*VWX *\]^_ K*:*`d6"*b:  ')f  :çÿ:é 8>]g *+A+Dijk*njl*rstdP+zL+*{**M,*V66*\+,ç,ÿGL8 }*:66*`d65*b:'{k)k:') *3*''pYL*M,*V668Y*\L+*\,ç,ÿ+*{*+Z_cdxd'*{g9)*g9*:  *V6 6 %* \f 6     ç ÿ:  é QW *+A+DB6*:!:'{cH)cJ":ݻ@Y') *+A+DB6*:!:'{gH)gJ":ݻ@Y')*J6*M,*+6*W*+0W,ç,ÿ*3).J6*M,*+6*W*+,ç,ÿ*3).WC*M,*+6#*W**V`+,ç,ÿ*36;Q=*M,*+6*W*d+,ç,ÿ*305*ҙ *+Ա@Y+؇*{g+ڇ*gM*,N:-*<*Y*+:*-Y-+:-*-**N-I+6;3 *-*Y-+:-+jV*ҙ*M,*V66#*\:ҙ <,ç ,ÿ:,éFK opaMMYSYSN Y*SYY S:,-:WYAAPK ݈5B;mNNacm/graphics/GIterator.class-=()V(Lacm/graphics/GContainer;I)V java/lang/Object dirI acm/graphics/GIterator acm/util/ErrorExceptionIllegal direction for iterator(Ljava/lang/String;)V  contLacm/graphics/GContainer;  index  getElementCount()I acm/graphics/GContainer ! nElements # $CodehasNext()Znext()Ljava/lang/Object; getElement(I)Lacm/graphics/GObject; +, !- nextElement()Lacm/graphics/GObject; )* 1acm/graphics/GObject3remove(Lacm/graphics/GObject;)V 56 !7 SourceFileacm/graphics/Iterator:GCompound.java ;  # &OC** Y*+**+"%'(&**%)*&E9***%*YZ`dd.**YZ`./0&*245&cW*****%*YdZdd.8 ***YdZ.8*Y%d%9()V BACK_TO_FRONTI FRONT_TO_BACKadd(Lacm/graphics/GObject;)V(Lacm/graphics/GObject;DD)V.(Lacm/graphics/GObject;Lacm/graphics/GPoint;)Vremove removeAllgetElementCount()I getElement(I)Lacm/graphics/GObject; getElementAt(DD)Lacm/graphics/GObject;-(Lacm/graphics/GPoint;)Lacm/graphics/GObject; ConstantValue SourceFileacm/graphics/GContainerjava/lang/ObjectGContainer.java      PK ݈5C޵acm/graphics/GDimension.class-V()V(DD)V acm/graphics/GDimension Code java/lang/Object myWidthD  myHeight  (Lacm/graphics/GDimension;)V(Ljava/awt/Dimension;)VwidthI java/awt/Dimension height  getWidth()D getHeightsetSize # $getSize()Lacm/graphics/GDimension; toDimension()Ljava/awt/Dimension;round(D)J *+java/lang/Math- .,(II)V 0 1hashCode()Ijava/lang/Float5(F)V 7 68 34 6:equals(Ljava/lang/Object;)ZtoString()Ljava/lang/String;java/lang/StringBuffer@(B(Ljava/lang/String;)V D AEappend(F)Ljava/lang/StringBuffer; GH AIxK,(Ljava/lang/String;)Ljava/lang/StringBuffer; GM AN)P >? AR SourceFileGDimension.java!   * * *'*)  *++ *++ ! *"! *#  *'*)#  *++%&' Y**() $Y*/*/234 , 6Y*9;6Y*9;<= <0++M*,*,>? 3'AYCF*JLO*JQOSTUPK ݈5RTaacm/graphics/GFillable.class-()V setFilled(Z)VisFilled()Z setFillColor(Ljava/awt/Color;)V getFillColor()Ljava/awt/Color; SourceFileacm/graphics/GFillable java/lang/ObjectGFillable.java   PK ݈5-Y Y acm/graphics/GImage.class-()V(Ljava/awt/Image;)V(Ljava/awt/Image;DD)V acm/graphics/GImage Code(Ljava/lang/String;)V(Ljava/lang/String;DD)V   acm/graphics/GObject setImage   setLocation(DD)V   loadImage$(Ljava/lang/String;)Ljava/awt/Image; acm/util/MediaTools "(Ljava/awt/Image;)Ljava/awt/Image;  !myImageLjava/awt/Image; #$ % determineSize ' (getImage()Ljava/awt/Image;paint(Ljava/awt/Graphics;)V getComponent()Ljava/awt/Component; ./ 0getImageObserver 2/ 3 getAWTBounds()Ljava/awt/Rectangle; 56 7getObjectColor()Ljava/awt/Color; 9: ;xI =>java/awt/Rectangle@ A?y C> ADwidth F> AGheight I> AJ drawImage5(Ljava/awt/Image;IIIILjava/awt/image/ImageObserver;)Z LMjava/awt/GraphicsO PNE(Ljava/awt/Image;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z LR PSsetSizemyWidthD VW XmyHeight ZW [repaint ] ^(Lacm/graphics/GDimension;)VgetWidth()D abacm/graphics/GDimensiond ec getHeight gb eh U jgetSize()Lacm/graphics/GDimension;  en setBounds(DDDD)V(Lacm/graphics/GRectangle;)VgetX sbacm/graphics/GRectangleu vtgetY xb vy vc vh pq } getBounds()Lacm/graphics/GRectangle; t y q vscale(D)V  round(D)I acm/graphics/GMath (IIII)V  AsizeDeterminedZ !(Ljava/awt/image/ImageObserver;)I ajava/awt/Image g  SourceFileacm/graphics/GResizableacm/graphics/GScalable GImage.java!#$VWZW *+   *+ **+*(   *+(   *+"&*)   *+*+ *&,- nb*1M,4M*&P,L*8N*<: +*&-B-E-H-K,QW+*&-B-E-H-K,TWU *'Y*)\*_U`  *+f+iklm eY*Y*\opq  *Y*\*')pr ! *+w+z+{+|~ ( *)vY***Y*\ %*YY'kY*Y\)k\*_ *''56 4(*)AY***Y*\' A5**1L+4L**&+Y**&+\*PK ݈5:v v acm/graphics/GLabel.class-()V java/awt/FontDefault(Ljava/lang/String;II)V    DEFAULT_FONTLjava/awt/Font; acm/graphics/GLabel  getImageObserver()Ljava/awt/Component; acm/util/MediaTools DUMMY_COMPONENTLjava/awt/Component;  Code(Ljava/lang/String;)V(Ljava/lang/String;DD)V   acm/graphics/GObject! " labelLjava/lang/String; $% &setFont(Ljava/awt/Font;)V () * setLocation(DD)V ,- ".getStandardFont (Ljava/awt/Font;)Ljava/awt/Font; 01acm/util/JTFTools3 42 labelFont 6 7repaint 9 ":getFont()Ljava/awt/Font; <= > decodeFont2(Ljava/lang/String;Ljava/awt/Font;)Ljava/awt/Font; @A 4BsetLabelgetLabel()Ljava/lang/String;paint(Ljava/awt/Graphics;)Vjava/awt/GraphicsI J*getX()D LM "Nround(D)I PQacm/graphics/GMathS TRgetY VM "W drawString Y JZgetWidthgetFontMetrics()Ljava/awt/FontMetrics; ]^ _ stringWidth(Ljava/lang/String;)I abjava/awt/FontMetricsd ec getHeight()I gh ei getAscent kh el getDescent nh eo getComponent q "r'(Ljava/awt/Font;)Ljava/awt/FontMetrics; ]tjava/awt/Componentv wu getBounds()Lacm/graphics/GRectangle;acm/graphics/GRectangle{ kM } \M  gM (DDDD)V  | paramStringjava/lang/StringBuffer F "valueOf&(Ljava/lang/Object;)Ljava/lang/String; java/lang/String   , string="append,(Ljava/lang/String;)Ljava/lang/StringBuffer; "toString F  SourceFile GLabel.java!" $%6 "Y *+$*#*+'*+*(/() *+58*;( *+*?C+<=*8D *+'*;EF*'GH++*8K+*'*OU*XU[\M *`*'fgM *`jkM *`mnM *`p]^"*sL+L+*8xyz) |Y*O*X*~g**F/#Y**'PK ݈5&_1 1 acm/graphics/GLine.class-()VLINE_TOLERANCED?(DDDD)V acm/graphics/GObject  setLocation(DD)V  dx acm/graphics/GLine dy  Codepaint(Ljava/awt/Graphics;)VgetX()D  getY  !round(D)I #$acm/graphics/GMath& '%drawLine(IIII)V )*java/awt/Graphics, -+ getBounds()Lacm/graphics/GRectangle;min(DD)D 12java/lang/Math4 53acm/graphics/GRectangle7abs(D)D 9: 5;  8= setStartPoint getStartPoint()Lacm/graphics/GPoint; getLocation BA C setEndPointrepaint F G getEndPointacm/graphics/GPointJ  KLscale(D)V N Pcontains(DD)Z@distanceSquared(DDDD)D VW Xmax Z2 5[ paramString()Ljava/lang/String; ]^ _indexOf(I)I abjava/lang/Stringd ec substring(I)Ljava/lang/String; gh ei @A kjava/lang/StringBuffermstart=(o(Ljava/lang/String;)V q nr Kappend(D)Ljava/lang/StringBuffer; uv nw, y,(Ljava/lang/String;)Ljava/lang/StringBuffer; u{ n| K!)toString ^ n IA valueOf&(Ljava/lang/Object;)Ljava/lang/String; e, end=( ConstantValue SourceFileacm/graphics/GScalable GLine.java!  ' * *')*'g*)g8,*I*"9+((((*c(*c(./0J >***c6H*"*"*c6J8Y')*<c*<c>?1%*Y*'gc*Y*")gc*')@A*DE%*'*g*)*"g*HIA&KY**c*"*cMN%*Y'k*Y)k*HNO*''QRS*9*"9*c9 *c9 T9 *')Y *')  Y ' 6g' \c) 6g) \c f  f 'g gk)g gkc*  Yo9*') gkc gkcY ]^*`L++)f`jL*lMnYps,txz},~x}N*MnY-s},txz},~x}NnY-s+}VW  'g'gk)g)gkcPK ݈5,UUacm/graphics/GMath.class-:()V java/lang/Object Coderound(D)I(D)J java/lang/Math   sinDegrees(D)D toRadians acm/graphics/GMath sin   cosDegreescos   tanDegrees    ! toDegrees@f@ !TD-distance(DD)Dsqrt * +(DDDD)D () .angleatan2 1) 2 # 4 0) 6 SourceFile GMath.java! * & & &  & &"o # &$k&o  &&k$o () &&k((kc, (- &g(g/ 0)$& ((w&35 0- &g(g789PK ݈5;. . acm/graphics/GObject.class-()V java/lang/Object  isVisibleZ  acm/graphics/GObject mouseListenersEnabled  Codepaint(Ljava/awt/Graphics;)V getBounds()Lacm/graphics/GRectangle; setLocation(DD)VxcD  yc  repaint  (Lacm/graphics/GPoint;)VgetX()D #$acm/graphics/GPoint& '%getY )$ '*  , getLocation()Lacm/graphics/GPoint;  '0move movePolar@ !TD-@fcos(D)D 89java/lang/Math; <:sin >9 <? 2 AgetSize()Lacm/graphics/GDimension;  Eacm/graphics/GDimensionGgetWidth I$acm/graphics/GRectangleK LJ getHeight N$ LO H0contains(DD)Zround(D)I TUacm/graphics/GMathW XV RS LZ(Lacm/graphics/GPoint;)Z Z sendToFrontmyParentLacm/graphics/GContainer; _` aacm/graphics/GCanvasc(Lacm/graphics/GObject;)V ^e dfacm/graphics/GCompoundh ifjava/lang/ExceptionkgetClass()Ljava/lang/Class; mn ojava/lang/Classqacm.graphics.GObjectsforName%(Ljava/lang/String;)Ljava/lang/Class; uv rw^ getMethod@(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; z{ r|invoke9(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; ~java/lang/reflect/Method updateEnabledList   sendToBack e d i sendForward e d i sendBackward e d isetColor(Ljava/awt/Color;)VcolorLjava/awt/Color; getColor()Ljava/awt/Color; getParent()Lacm/graphics/GContainer; java/awt/Component getForeground black java/awt/Color  setVisible(Z)V()ZtoString()Ljava/lang/String;getName r acm.graphics. startsWith(Ljava/lang/String;)Z java/lang/String length()I  substring(I)Ljava/lang/String; java/lang/StringBuffervalueOf&(Ljava/lang/Object;)Ljava/lang/String; (Ljava/lang/String;)V  [append,(Ljava/lang/String;)Ljava/lang/StringBuffer;  paramString ] pause(D)V acm/util/JTFTools addMouseListener!(Ljava/awt/event/MouseListener;)V mouseListenerLjava/awt/event/MouseListener; add\(Ljava/awt/event/MouseListener;Ljava/awt/event/MouseListener;)Ljava/awt/event/MouseListener; java/awt/AWTEventMulticaster removeMouseListenerremove addMouseMotionListener'(Ljava/awt/event/MouseMotionListener;)VmouseMotionListener$Ljava/awt/event/MouseMotionListener; n(Ljava/awt/event/MouseMotionListener;Ljava/awt/event/MouseMotionListener;)Ljava/awt/event/MouseMotionListener; removeMouseMotionListener addActionListener"(Ljava/awt/event/ActionListener;)VactionListenerLjava/awt/event/ActionListener; _(Ljava/awt/event/ActionListener;Ljava/awt/event/ActionListener;)Ljava/awt/event/ActionListener;  removeActionListener  fireActionEventjava/awt/event/ActionEvent ((Ljava/lang/Object;ILjava/lang/String;)V    (Ljava/awt/event/ActionEvent;)V  actionPerformed java/awt/event/ActionListener  setParent(Lacm/graphics/GContainer;)VfireMouseListeners(Ljava/awt/event/MouseEvent;)VgetID java/awt/AWTEvent  mousePressed java/awt/event/MouseListener! "  mouseReleased $ "% mouseClicked ' "( mouseExited * "+ mouseEntered - ". mouseMoved 0"java/awt/event/MouseMotionListener2 31 mouseDragged 5 36areMouseListenersEnabledstart([Ljava/lang/String;)V 9: ;acm.program.GraphicsProgram=startGraphicsProgram?acm/util/ErrorExceptionA(Ljava/lang/Exception;)V C BDgetObjectColorGacm/graphics/GResizableIbounds=(K L%(D)Ljava/lang/StringBuffer; N O, Q L*)T ./ V location=(X, color=Z colorName$(Ljava/awt/Color;)Ljava/lang/String; \] ^acm/graphics/GFillable` , filled=bisFilled d ae(Z)Ljava/lang/StringBuffer; g h getFillColor j ak , fillColor=mequals(Ljava/lang/Object;)Z op qBLACKsblue u vBLUExcyan z {CYAN}darkGray   DARK_GRAYgray  GRAYgreen  GREEN lightGray   LIGHT_GRAYmagenta  MAGENTAorange  ORANGEpink  PINKred  REDwhite  WHITEyellow  YELLOW0xgetRGB  (II)Ljava/lang/String; java/lang/Integer  toUpperCase   paintObject   java/awt/Graphics     getComponent()Ljava/awt/Component;   dconditionalRepaint  d SourceFilejava/lang/Cloneable GObject.java!  _`  .** **'*)*!" *+(++-./'Y**1#$*)$*2**'c*)c-3+)4k6o9*'=k'w@kBCD!*FLHY+M+PQI$*FMN$*FPRS*F'Y)Y[R\ *+(++]^*b*bd*bd*gY*bi*bi*jA*bpLrYtxSMY*SN+y,}:*b-WW**8orl*b*bd*bd*Y*bi*bi*A*bpLrYtxSMY*SN+,}:*b-WW**8orl*b*bd*bd*Y*bi*bi*A*bpLrYtxSMY*SN+,}:*b-WW**8orl*b*bd*bd*Y*bi*bi*A*bpLrYtxSMY*SN+,}:*b-WW**8orl *+*!D8*L*+M, , L, ,++ * *!* G;*pL+ +LY+ɷζ*ն׶Ҷٰ*b'߱"**+** **+"**+** **+ **+ **+* Y*+ * *+*+b+T,@|h**+#{*t*+&g*`*+)S*L*+,?*8*+/+*$*+4**+78*9*<9:bN>xMtxNrY-SY+pS:Y*SY+S:,@}:W MBY,E@ClF*HL*JT*FMY+ɷL,MPR,SPR,MPR,PPUҶL7*WMY+ɷY,(PR,+PUҶL*"Y+ɷ[*_ҶL*aVY+ɷc*afiL*alM,',*Y+ɷn,_ҶL+ \]*rt*wry*|r~*r*r*r*r*r*r*r*r*r*rY*~Ҷٰ:.*+M* +**+*+,DZ3'*L + L+ + + *L+d +dα2&*L + L+ +d +dѱPK ݈5#Y  acm/graphics/GOval.class-()V(DD)V(DDDD)V acm/graphics/GOval Code acm/graphics/GObject checkForArcRendering()Z  useArcsZ   frameWidthD   frameHeight   setLocation  acm/graphics/ArcRenderer!(Lacm/graphics/GObject;)V # "$rendererLacm/graphics/ArcRenderer; &' (contains(DD)Z@getX()D ./ 0getY 2/ 3paint(Ljava/awt/Graphics;)V getComponent()Ljava/awt/Component; 78 9acm/graphics/GCanvas;getNativeArcFlag = <>draw @6 "A getAWTBounds()Ljava/awt/Rectangle; CD EisFilled G H getFillColor()Ljava/awt/Color; JK LsetColor(Ljava/awt/Color;)V NOjava/awt/GraphicsQ RPxI TUjava/awt/RectangleW XVy ZU X[width ]U X^height `U XafillArc (IIIIII)V cd RegetColor gK hdrawArc jd RkfillOval(IIII)V mn RodrawOval qn Rr setFilled(Z)V G vrepaint x y setFillColor fillColorLjava/awt/Color; |} ~setSize(Lacm/graphics/GDimension;)VgetWidth /acm/graphics/GDimension  getHeight /  getSize()Lacm/graphics/GDimension;   setBounds(Lacm/graphics/GRectangle;)Vacm/graphics/GRectangle 0 3   getBounds()Lacm/graphics/GRectangle; scale(D)V  round(D)I acm/graphics/GMath n XisMac acm/util/Platform  SourceFileacm/graphics/GFillableacm/graphics/GResizableacm/graphics/GScalable GOval.java! G|}&'   *')  7 +******') *"Y*%)*+ h \*,o9*,o9 '*1cg9 )*4cg9   kko  kkoc56 *:M,<,<?*)+B*FN*M*I++*MS+-Y-\-_-bhf+*iS+-Y-\-_-bhlB*I'+*MS+-Y-\-_-bp+*iS+-Y-\-_-bstu  *w*zG *w{O  *+*zJK * *i* *'*)*z  *++ Y**  ***')  ! *++++ ( Y*1*4*c*c/ */ * %*Y'k*Y)k*z *''CD 0$XY*1*4** PK ݈5{8acm/graphics/PenImage.class-()Vjava/lang/StringP4749463839614F006500F70000FFFFFF980098339999989800111111222222000054CBFFCB003298P0033660033CC0033FE00323266330066660000659800989800CC9900FE99329800659800CC0099FEP0098659898999999CC9900FE98009800329800659900CC9800FE3399CB3399FF9999339898659832 P0098650099339998659833CB9833FF9999CC0099FE00336699656698CC9898FF9999323200336600 P32003233006632009833339965009866339900663300983200666600986500CC3300FE3200CC6600 PFE65CCCC98CCFF99FFCC99FFFF993300CC3200FE6600CC6500FECC0033CC0066FE0032FE00653399P33339966669933669865CC00CCCB00FEFE00CBFE00FE6699CC6598FF9898CC9999FFCB9833CC9966PFF9933FF9865333333326532323265326565660033653232660066653265CC3300CC6600FE3200FEP65000066CC0099CC0066FE0098FE00CCCC00FECB00CCFE00FEFE33CC0033FE0066CC0066FE00CB33P98CC6699FF3399FF659866CC9965FF9898CC9899FF99CCCC00CCFE00FECB00FEFE00993333996633P9933669865659833CB9966CC9933FF9865FF33CBCB33FFCC33CCFF33FFFF99CB3399FF3399CC6698PFF65CC98CCCCCCCCCC99FFCBCBFFFF99CCFFCBCBFF99FFFFCBFF3333CB3366CB3333FF3366FF6533PCB6666CC6633FF6565FFCB3333CB6533CB3365CC6666FF3333FF6633FF3366FF656533CB3333FF33P33CB6633FF6666CB3366FF3366CC6665FF65CB33CBCC66CCCC33FFCC65FFFF33CCFF65CCFF33FFFFP65FF66CCCC65FFCC65CCFF65FFFF98CCCC99FFCC99CCFF99FFFFCBCB33CCFF33CCCC66CCFF65FFCC!P33FFFF33FFCC65FFFF65444444656532DDDDDDCBFFFFFFFFCBEEEEEE100000980000001000660000#P000098000066777777888888AAAAAABBBBBB5555556666660000100000224400005400000000CC00%P00DC0000EE0000FE00003200004400880000980000AA0000BA0000CC0000DC0000EE0000FE00CC00'P00DC0000EE0000FE0000004400005400006600007600220000320000AA0000BA0000002200003200)P7600008800000000AA0000BA00007600008800000021F90401000000002C000000004F006500C7FF+PFFFF980098339999989800111111222222000054CBFFCB0032980033660033CC0033FE0032326633-P0066660000659800989800CC9900FE99329800659800CC0099FE0098659898999999CC9900FE9800/P9800329800659900CC9800FE3399CB3399FF99993398986598320098650099339998659833CB98331PFF9999CC0099FE00336699656698CC9898FF999932320033660032003233006632009833339965003P9866339900663300983200666600986500CC3300FE3200CC6600FE65CCCC98CCFF99FFCC99FFFF995P3300CC3200FE6600CC6500FECC0033CC0066FE0032FE0065339933339966669933669865CC00CCCB7P00FEFE00CBFE00FE6699CC6598FF9898CC9999FFCB9833CC9966FF9933FF986533333332653232329P65326565660033653232660066653265CC3300CC6600FE3200FE65000066CC0099CC0066FE0098FE;P00CCCC00FECB00CCFE00FEFE33CC0033FE0066CC0066FE00CB3398CC6699FF3399FF659866CC9965=PFF9898CC9899FF99CCCC00CCFE00FECB00FEFE009933339966339933669865659833CB9966CC9933?PFF9865FF33CBCB33FFCC33CCFF33FFFF99CB3399FF3399CC6698FF65CC98CCCCCCCCCC99FFCBCBFFAPFF99CCFFCBCBFF99FFFFCBFF3333CB3366CB3333FF3366FF6533CB6666CC6633FF6565FFCB3333CBCP6533CB3365CC6666FF3333FF6633FF3366FF656533CB3333FF3333CB6633FF6666CB3366FF3366CCEP6665FF65CB33CBCC66CCCC33FFCC65FFFF33CCFF65CCFF33FFFF65FF66CCCC65FFCC65CCFF65FFFFGP98CCCC99FFCC99CCFF99FFFFCBCB33CCFF33CCCC66CCFF65FFCC33FFFF33FFCC65FFFF6544444465IP6532DDDDDDCBFFFFFFFFCBEEEEEE100000980000001000660000000098000066777777888888AAAAKPAABBBBBB5555556666660000100000224400005400000000CC0000DC0000EE0000FE000032000044MP00880000980000AA0000BA0000CC0000DC0000EE0000FE00CC0000DC0000EE0000FE000000440000OP5400006600007600220000320000AA0000BA00000022000032007600008800000000AA0000BA0000QP7600008800000008FF0001081C48B0A0C18308132A5CA81012248610234A640809DBBF2DD830E431SPD1451B868920432684C4022306483F5AB0E882ADE5968F226386C40026E38F479030E8C45072CB0FUP9940252EEB226265476D0CFE29C5F630A8538818B6B4C00869D9D3AB22B7FC636115ABD7AF60C38AWP1D4BB6ACD9B368D3AA5DCB166B450334E23280D916E48F2D1E7F406AA11792096D2CEA4A848491C5YP8FBE3FF23CFA81C10B5DC10A317089CAC221DF9C5E5E428EF8A30B06315D0C30D0267573C8652CA2[P3E36CDBAB5EBD7B063CB9E4DBBB6EDC1D80C6CD9D2F4B6418E09BAD0B04143B3EF81183A62435CA5]P4B8CC0C73B6364BCF3824E9FBE519BD49B27A76516CB6F57FFC4963AE70A315EC0E0DD52597C4B9D_P7A5B3844597235ED962CE2D2E8D245065E6C941C0700249E61D3C50CA46504C901020A74D7671D79aPD15B830E7A661C850661808D18D860E8E187208628E288249668E28928A6A8E28A6C2D13156F2326cP275C0C4C819887180CE8C7D28402A2C6400C5BD8E0455C5D74D5E00F167551194A5EF0C7608384BDeP601824BBC8971C76024615C305F275F74877D878F1D37184B177521E3AB160020BE859729C760A22gPF6C32E4876C1236D5191E7D04D7BE6D4451E6416261F75D571E8E66DA8BDA7174F8CB2B09591B60DiP95D1231718888D132C8077E16D26607381097ACD199F81F6D1462084CFB17041A65B743126996068kP5728DC51EBDD699B8618C4B5C58F5B00D95E83B8CEFADF931882975C71A086F81E035B98606B8382mP8057638C196D11E088E3C148A2815892F8CFB42C862BEEB8E4966BEEB9E8A6ABEEBAECB6EBEEBBF0oPC62BEFBCF4CA1B100021FF0B4D414347436F6E2004031039000000015772697474656E2062792047qP4946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D61792032352C20313939s38003BuHEX_DATA[Ljava/lang/String; wxacm/graphics/PenImagez {yCodegetImage()Ljava/awt/Image; createImage%([Ljava/lang/String;)Ljava/awt/Image; acm/util/MediaTools  java/lang/Object  SourceFile GPen.java {wx}eY9YSYSY SY SYSYSYSYSYSY SY SY SY SY  SY"SY$SY&SY(SY*SY,SY.SY0SY2SY4SY6SY8SY:SYSY@SYBSYDSY FSY!HSY"JSY#LSY$NSY%PSY&RSY'TSY(VSY)XSY*ZSY+\SY,^SY-`SY.bSY/dSY0fSY1hSY2jSY3lSY4nSY5pSY6rSY7tSY8vS| ~}|}*PK 5΅v#acm/graphics/EndRegionElement.class-7()V acm/graphics/PathElement Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)VgetColor()Ljava/awt/Color; java/awt/Graphics   fillColorLjava/awt/Color; acm/graphics/PathState setColor(Ljava/awt/Color;)V  regionLjava/awt/Polygon;  xpoints[I  java/awt/Polygon" #!ypoints % #&npointsI () #* fillPolygon([I[II)V ,- . drawPolygon 0- 1 SourceFileacm/graphics/EndRegionElement4 GPen.java 5* VJ+N+,+,$,',+/+-+,$,',+2,36PK 5="acm/graphics/SetColorElement.class-()V(Ljava/awt/Color;)V acm/graphics/PathElement myColorLjava/awt/Color; acm/graphics/SetColorElement Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)VsetColor java/awt/Graphics  SourceFile GPen.java   **+ +*PK 5K#acm/graphics/FinalPathElement.class-(()V acm/graphics/PathElement Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)VregionLjava/awt/Polygon; acm/graphics/PathState  xpoints[I java/awt/Polygon ypoints  npointsI   drawPolyline([I[II)V java/awt/Graphics! "  SourceFileacm/graphics/FinalPathElement% GPen.java &* -!,+,,,#$'PK 5L#U::acm/graphics/PathState.class-()VcxDcysxsyregionLjava/awt/Polygon; fillColorLjava/awt/Color; java/lang/Object  Code SourceFileacm/graphics/PathState GPen.java   *PK 5<7%acm/graphics/StartRegionElement.class- ()V(Ljava/awt/Color;)V acm/graphics/PathElement myColorLjava/awt/Color; acm/graphics/StartRegionElement Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)Vjava/awt/Polygon regionLjava/awt/Polygon; acm/graphics/PathState  fillColor   SourceFile GPen.java   **+ ,Y,*PK 5Rt!!"acm/graphics/DrawLineElement.class-J()V(DD)V acm/graphics/PathElement deltaXD acm/graphics/DrawLineElement deltaY  Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)Vsx  acm/graphics/PathState cx  round(D)I acm/graphics/GMath !sy # $cy & 'regionLjava/awt/Polygon; )* +drawLine(IIII)V -.java/awt/Graphics0 1/addPoint(II)V 34java/awt/Polygon6 75 updateBounds4(Lacm/graphics/GRectangle;Lacm/graphics/PathState;)VgetWidth()D ;<acm/graphics/GRectangle> ?= setBounds(DDDD)V AB ?Cadd E ?F SourceFile GPen.java   **'*)~r,,k">,%,(k"6,Y*c,Y(*c(,,k"6,%,(k"6,,+2,,89:w k+@+,,k,%,(kD+,,k,%,(kG,Y*c,Y(*c(+,,k,%,(kGHIPK 5$%acm/graphics/SetLocationElement.class-3()V(DD)V acm/graphics/PathElement cxD acm/graphics/SetLocationElement cy  Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)Vacm/graphics/PathState  regionLjava/awt/Polygon;  sx  round(D)I !acm/graphics/GMath# $"sy & 'addPoint(II)V )*java/awt/Polygon, -+ updateBounds4(Lacm/graphics/GRectangle;Lacm/graphics/PathState;)V SourceFile GPen.java   **'*)C7,*,*,",,*k%,(*k%./0,*,*12PK 52$acm/graphics/GPen.class-()Vacm/graphics/FinalPathElement   finalElementLacm/graphics/PathElement;  acm/graphics/GPen Codeacm/graphics/GObject  penVisibleZ  acm/graphics/ArrayList pathLacm/graphics/ArrayList;  acm/util/Animator animatorLacm/util/Animator; ! "setSpeed(D)V $% & erasePath ( )(DD)V  setLocation -+ .xScaleD 01 2yScale 41 5 regionOpen 7 8 regionStarted : ;repaint = >acm/util/ErrorException@EIt is illegal to move the pen while you are defining a filled region.B(Ljava/lang/String;)V D AE .delay H IdrawLinegetX()D LM NgetY PM Qacm/graphics/SetLocationElementS + TUadd(Ljava/lang/Object;)Z WX ArrayListZ [Yacm/graphics/DrawLineElement] ^U drawPolarLine@ !TD-@fcos(D)D efjava/lang/Mathh igsin kf il K+ nsetColor(Ljava/awt/Color;)VIIt is illegal to change the color while you are defining a filled region.racm/graphics/SetColorElementt q uv pq x setFillColorNIt is illegal to change the fill color while you are defining a filled region.{ fillColorLjava/awt/Color; }~  getFillColor()Ljava/awt/Color;getColor startFilledRegion!You are already filling a region.acm/graphics/StartRegionElement vendFilledRegionCYou need to call startFilledRegion before you call endFilledRegion.acm/graphics/EndRegionElement showPenhidePen isPenVisible()Z &getSpeed M scalepaint(Ljava/awt/Graphics;)Vacm/graphics/PathState sx 1 sy 1 size()I java/util/Vector get(I)Ljava/lang/Object; [acm/graphics/PathElement.(Ljava/awt/Graphics;Lacm/graphics/PathState;)V drawPen  getBounds()Lacm/graphics/GRectangle;acm/graphics/GRectangle(DDDD)V   updateBounds4(Lacm/graphics/GRectangle;Lacm/graphics/PathState;)V contains(DD)Z setPenImage(Ljava/awt/Image;)V loadImage"(Ljava/awt/Image;)Ljava/awt/Image; acm/util/MediaTools penImageLjava/awt/Image;  getPenImage()Ljava/awt/Image;getImage acm/graphics/PenImage  getComponent()Ljava/awt/Component; getWidth!(Ljava/awt/image/ImageObserver;)I java/awt/Image  getHeight round(D)J i drawImage3(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z java/awt/Graphics  getPenBounds()Ljava/awt/Rectangle;java/awt/Rectangle (IIII)V  getAWTRectangle(DDDD)Ljava/awt/Rectangle;min(DD)D iabs f i delayCountI SourceFile GPen.java!    !01417:}~ Y 5)***Y*Y#*'**+ *,*')/(0$*Y*3*6*9*<*?-++*< AYCF*')G*#JK+z f*O9*R9*:  *<*TYV\W**9<*^Y')_\W ç ÿ*'c)cG*#JHN`++)akco9*'jk'wmkopqJ6*< AYsF*M,*uY+w\W,ç,ÿ*+y(-zq#*< AY|F*+* **R>*9 AYF*9*<*L+*Y*\W+ç+ÿ"5:R>*9 AYF*9*<*L+*Y\W+ç+ÿ*?"16**?*#J**?*#J*$% *#'M*#+*'3*)6*?~jYM,*3,*6*N-*66*:+,-ç-ÿ +,**+MR kYLYM+*3+*6*N-*66*:,+Ą-ç-ÿ,3af *+εұ* *ٵ*ҰcW*M,* *ٵ*,>*,6*O6*R6+*ldld,Wg[*L+ Y* *ٵ*+=*+>*O6*R6Yldld2 &Y''c))cPK 5`ullacm/graphics/PathElement.class-()V java/lang/Object Codepaint.(Ljava/awt/Graphics;Lacm/graphics/PathState;)V updateBounds4(Lacm/graphics/GRectangle;Lacm/graphics/PathState;)V SourceFileacm/graphics/PathElement GPen.java *     PK 5j acm/graphics/GPoint.class-W()V(DD)V acm/graphics/GPoint Code java/lang/Object xcD  yc  (Lacm/graphics/GPoint;)V(Ljava/awt/Point;)VxI java/awt/Point y  getX()DgetY setLocation # $ getLocation()Lacm/graphics/GPoint; translatetoPoint()Ljava/awt/Point;round(D)J +,java/lang/Math. /-(II)V 1 2hashCode()Ijava/lang/Float6(F)V 8 79 45 7;equals(Ljava/lang/Object;)ZtoString()Ljava/lang/String;java/lang/StringBufferA(C(Ljava/lang/String;)V E BFappend(F)Ljava/lang/StringBuffer; HI BJ, L,(Ljava/lang/String;)Ljava/lang/StringBuffer; HN BO)Q ?@ BS SourceFile GPoint.java!  * * *'*)  *++ *++ ! *"! *#  *'*)#  *++%&' Y**( !*Y'c*Y)c)* $Y*0*0345 , 7Y*:<7Y*:<=> <0++M*,*,?@ 3'BYDG*KMP*KRPTUVPK 5Г{acm/graphics/GPolygon.class- ()V(DD)V acm/graphics/GPolygon Code acm/graphics/GObject clear  java/lang/Object  lockLjava/lang/Object;   setLocation  ([Lacm/graphics/GPoint;)V vertexListLacm/graphics/ArrayList;  acm/graphics/GPoint getX()D "# !$getY &# !' !add(Ljava/lang/Object;)Z *+ ArrayList- .,markAsComplete 0 1rotationD 34 5xScale 74 8yScale :4 ; addVertexcompleteZ >? @acm/util/ErrorExceptionBFYou can't add vertices to a GPolygon that has been marked as complete.D(Ljava/lang/String;)V F CGcx I4 Jcy L4 MaddEdgeCYou can't add edges to a GPolygon that has been marked as complete.P addPolarEdge cosDegrees(D)D STacm/graphics/GMathV WU sinDegrees YT WZaddArc(DDDD)V@@v =p@vv =pvmax(DD)D hijava/lang/Mathk ljatan2 ni loabs qT lr toRadians tT Wucos wT lxsin zT l{ = }getCurrentPoint()Lacm/graphics/GPoint;isEmpty()Z java/util/Vector scalerepaint  (D)V  rotate setFilled(Z)VisFilled ?  setFillColor(Ljava/awt/Color;)V fillColorLjava/awt/Color;  getFillColor()Ljava/awt/Color;getColor  getBounds()Lacm/graphics/GRectangle;size()I acm/graphics/GRectangle $ 'get(I)Ljava/lang/Object; .min i l ] contains(DD)Z getPolygon()Ljava/awt/Polygon; round(D)I W(II)Z java/awt/Polygon paint(Ljava/awt/Graphics;)V  setColor java/awt/Graphics xpoints[I ypoints npointsI  fillPolygon([I[II)V  drawPolygon recenter translate  ! cacheValid ? clone()Ljava/lang/Object;java/lang/Exception copyVertexList  Impossible exception polyLjava/awt/Polygon;  addPoint(II)V h ConstantValue SourceFileacm/graphics/GFillableacm/graphics/GScalable GPolygon.java!  4I4L474:434?>?? * &* **Y*') }i* **M,6#*!Y+2%+2()/W+,ç,ÿ*2*6*9*<*Y*<A= T@*A CYEH*:*!Y'))/W*'K*)Nçÿ5;O dP*A CYQH*:*YK'cK*YN)cN*!Y*K*N)/WçÿEKR nZ*A CYQH*:*YK')XkcK*YN')[kgN*!Y*K*N)/WçÿOU\] *A CYQH*:  )'o9 '^o9 )^o9*K Xkg9*N[kc9`b9df9')mp9svo6vo9v962c9 ykc9 |k kg9*~ ç ÿ **!Y*K*N) %*Y9'k9*Y<)k<* *'' *Y6'c6*  ** *  *+* * **  *< YI999*:  *9 *9*6[9*6X966*!: *9%k(kckc9*<(k%kgkc9I9996%(Im99m9*t ç ÿY((gg( *') TH**M*ř#+*Ƕ+,,,׶+*+,,,׶ޱ HJ996 6 e* !:  # %H %J (9 (96 /' %H) %mJ (9 %m9  *')c^o9 c^o9 6*!: w w** -*L++WCYH  ** ***M,*9*9*6[9*6X9 *Y6 [* !: *9  %k (kckc9*<  (k %kgkc9*  ***L+,ÿ:,é0 *A G;*A CYH*Y*K*N*6*9*<* :.YL=+*/W**+ PK 5AwKKacm/graphics/GRect.class-()V(DD)V(DDDD)V acm/graphics/GRect Code acm/graphics/GObject  frameWidthD   frameHeight   setLocation  paint(Ljava/awt/Graphics;)V getAWTBounds()Ljava/awt/Rectangle;  isFilled()Z  ! getFillColor()Ljava/awt/Color; #$ %setColor(Ljava/awt/Color;)V '(java/awt/Graphics* +)xI -.java/awt/Rectangle0 1/y 3. 14width 6. 17height 9. 1:fillRect(IIII)V <= +>getColor @$ AdrawRect C= +D setFilled(Z)VZ H Irepaint K L setFillColor fillColorLjava/awt/Color; OP QsetSize(Lacm/graphics/GDimension;)VgetWidth()D UVacm/graphics/GDimensionX YW getHeight [V Y\ S ^getSize()Lacm/graphics/GDimension;  Yb setBounds(Lacm/graphics/GRectangle;)VgetX fVacm/graphics/GRectangleh iggetY kV il iW i\ d p getBounds()Lacm/graphics/GRectangle; g l iscale(D)V w yround(D)I {|acm/graphics/GMath~ } = 1 SourceFileacm/graphics/GFillableacm/graphics/GResizableacm/graphics/GScalable GRect.java! HOP   *')  # ****') QE*M*"'+*&,+,2,5,8,;?+*B,+,2,5,8,;EFG  *J*M  *JN(  *+R*M#$ *R *B*RS *'*)*MST  *+Z+]_`a YY**cd  ***')de ! *+j+m+n+oqrs ( iY*t*u*c*cvUV *[V *w %*Y'k*Y)k*Mwx *''z 0$1Y*t*u**PK 5<<acm/graphics/GRectangle.class-()V(DDDD)V acm/graphics/GRectangle Code java/lang/Object xcD  yc  myWidth  myHeight  (DD)V1(Lacm/graphics/GPoint;Lacm/graphics/GDimension;)VgetX()D acm/graphics/GPoint !getY # !$getWidth &acm/graphics/GDimension( )' getHeight + ),(Lacm/graphics/GPoint;)V(Lacm/graphics/GDimension;)V(Lacm/graphics/GRectangle;)V setBounds 1 2 getBounds()Lacm/graphics/GRectangle; 0 6 setLocation 8 9 getLocation()Lacm/graphics/GPoint;  != translatesetSize @ AgetSize()Lacm/graphics/GDimension; )=grow@isEmpty()Zcontains(DD)Z(Lacm/graphics/GPoint;)Z KL N intersects(Lacm/graphics/GRectangle;)Z intersection4(Lacm/graphics/GRectangle;)Lacm/graphics/GRectangle;max(DD)D TUjava/lang/MathW XVmin ZU X[union IJ ^add 10 a toRectangle()Ljava/awt/Rectangle;java/awt/Rectangleeround(D)J gh Xi(IIII)V k flhashCode()Ijava/lang/Floatp(F)V r qs no quequals(Ljava/lang/Object;)ZtoString()Ljava/lang/String;java/lang/StringBuffer{[}(Ljava/lang/String;)V  |append(F)Ljava/lang/StringBuffer; |, ,(Ljava/lang/String;)Ljava/lang/StringBuffer; |x] yz | SourceFileGRectangle.java! #   * ' * *'*)**   *') ! *+"+%,*,-.  *+"+%/  *+*+-0 ! *++++ *# *& *+ *1 # *'*)**1 ! *+"+%,*,-310 ! *++++345  Y*78  *'*)8.  *+"+%:;< !Y**>? !*Y'c*Y)c@  *'*)@/  *+*+-BCD )Y**EF =1*Y'g*Y)g*YG'kc*YG)kcIJ $**KL @4'*()*'**c)**cKM  *+"+%OPQ ZN*++c*++c+**c+**cRS g [*+YI*+Y9**c++c\9**c++c\9Y((gg]S {*_ Y+7+_ Y*7*+\I*+\9**c++cY9**c++cY9Y((gg`0 v+_*_ *+b**c++cYI**c++cY9*+*\*+*\*(*g**g` c W*_ *')3'*c'Y9)*c)Y9*'*\*)*\**g**gcd 4(fY*j*j*j*jmno L@qY*tvqY*tvqY*tvqY*tvwx \P++M*,*,*,*,yz MA|Y~****PK 5N  acm/graphics/GResizable.class-()VsetSize(DD)V(Lacm/graphics/GDimension;)V setBounds(DDDD)V(Lacm/graphics/GRectangle;)V SourceFileacm/graphics/GResizable java/lang/Object GResizable.java  PK 5!2acm/graphics/GRoundRect.class-m()V DEFAULT_ARCD@$(DD)V(DDDDD)V  acm/graphics/GRoundRect Code(DDDD)V (DDDDDD)V   acm/graphics/GRect aWidth  aHeight  acm/graphics/ArcRenderer(Lacm/graphics/GObject;)V   rendererLacm/graphics/ArcRenderer; "# $ getArcWidth()D getArcHeightpaint(Ljava/awt/Graphics;)V getComponent()Ljava/awt/Component; +,acm/graphics/GObject. /-acm/graphics/GCanvas1getNativeArcFlag()Z 34 25draw 7* 8 getAWTBounds()Ljava/awt/Rectangle; :; <round(D)I >?acm/graphics/GMathA B@isFilled D4 E getFillColor()Ljava/awt/Color; GH IsetColor(Ljava/awt/Color;)V KLjava/awt/GraphicsN OMxI QRjava/awt/RectangleT USy WR UXwidth ZR U[height ]R U^ fillRoundRect (IIIIII)V `a ObgetColor dH /e drawRoundRect ga Oh ConstantValue SourceFileGRoundRect.java! j"#  *')  *')   *')  / #*')* * *Y*!%&'*('*)**0M,2,26*%+9a*=N*C6*C6*F++*JP+-V-Y-\-_c+*fP+-V-Y-\-_iklPK 557acm/graphics/GScalable.class- ()Vscale(DD)V(D)V SourceFileacm/graphics/GScalablejava/lang/Object GScalable.java  PK 5hhacm/graphics/GTurtle.class- ()Vjava/awt/Image turtleImage[Ljava/awt/Image; acm/graphics/GTurtle java/lang/String P47494638396144004400D50000FFFFFF989800111111222222003232666600659800639696999999 P99993396966399CC00636496323200336600CCCC98FFFF996699336496639898CC33333330633030P306330636398CC98CCCC0099CB3399CC66CCCCCCFFCBFF66CB33CBCB33CCCC66FFFF33FFFF654444P44636330DDDDDDFFFFCB100000001000777777888888AAAAAABBBBBB555555666666000010000022P000032000044EE0000002200003200000000C30000C30000C30000C30000C30000C30000C30000C3P0000C3000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A9F50P26C5A548143E9F42A311DD4AAA8D07686B8B3A6DB66D438B22A9B7A40269FE5E6F296A371A6D2EDAP1008247B693614786B0956050101200958201F22108F8C8C1F018A115A700D3604147D46680D8788P05090D018B979699AB8C19AC8B725B3114853624098D201B05654B6120060FB978B8C877CA9ECD84P0D28692428052E9E36167CA2DBDC42368B0FE1DADDE4E5E6E7E84B85B8DB36E20D35E94286355B2EPB8681687EBEB142486A5F00822344EDE214369E4CC51B0A68001588958F16AE02001094673FA15E4!PD62086344F78221628902141B84C1052524A04E20104478C12A9C9B58684015E1F1E2850106C490D#PFF2D5340D6C933D2D2485546676542B18C10471B1830F44C32C8068CAB5607791C54C3860B182E48%PB46C29559ED9B368D3AA5D6B161781B4261AEC04616DEA93060850396A26CFAB1B031515180051B5'P30D73D734884F574164D0D17D86C7834B46F269966FBD294BA865617B26761B514CD34D2CA2A1215)PB658D4437963943D44345B7BA3C5C1482C3131BD5AC50A16273203B9E90204D9CDA1A2A978997C90+P008402959112B914016251751723073598C392611F819A6B6E19193DC007102941C03409E1BCDEDF-P7812EACD0941DCEB349FE1A4DAEEDB34AAFF123D74071A75D9D5852373DC4306324C0D751453BF35/P68077EF8B0C31102835D634807F818A6FF86294C31151E415EE9734E2E691532472F2D3D00035B301PC628E38C34D668E38D38E6A8E38E333650C103A1A8E589020800294A032054649F596834A241001A3P7C104F172EB8D05C010A2C898E5C0A6C9080061BE464A0120D545926960C7565D66617B8104329835PE0A26140FC1416DF98E614E2020393DD22E77682DCD10C6D025DE31A3AB98477591A12DAF19B509A7PB9C15963F85936DE8A015CC44B6905540021196820C405A203D5818A0271ACE1DB68A824609B25979PC16901A27436B80B43B06492812BB9FAC68802BFC1260A369095B187862389561A7A38A987852CE6;PF1028B1D9759D887570848A0182983A2E2062BE831128E4BED3DF21C0801409BFFE982C7C2E3C994=P67F858AC036AC8818AAA01A4B4AB4B26982042262DF9AB1BBA6FE0A300060AA897C04E7852A59929?P47D99B6F161F34A712C0CFFDCBD2519625ACF0C23BC1EBC49D85A896CA6D582C0249CA9754CC2B27AP68C06041048AF082AA20F7691629091100ABCA22CA25421AD0406FA7051A196555D813921D24CD9FCPF55EA41B2D9B320234697A90722814362C4C4795485B0AA80374AC1101CFDF729775850D338DAE15EP36B4592C62F8E4F18C40920E182A3FE4D4C05C230D1050419555C627AA9C07C9F90F19B6226DAD70GP558C21AC1F7BE0D3952E9EA5562C059707A5183C0F1FE94EDBDDE82917CD1180DACE8B29E2358B53IP3C9209C320B1D76E07FBEDB8E77E56100021FF0B4D414347436F6E20040310390000000157726974KP74656E20627920474946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D6179M2032352C2031393938003BO TURTLE_00[Ljava/lang/String; QR SP000032000044EE000000220000320000000078000078000078000078000078000078000078000078UP000078000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A871CWP15EAF2AC1639A39142451A55152357C35548911A366B95C21EC16C9498804D69A0EDF6023EEFA0D1YP1A7A0D27730D033631136A4A08761402367F80760E05092220011F1F202222091F01190A1020A005[P2005628D36362412060999200A0A354D2C2A1C0D31368D78056780059A1F05A1190101B105C609CD]PCC76AC272736298A45287A1467238F03767E76277B82D3D37B2728E3D4362314232D0D3524F4696A_P2A0D121815D6D7FEFF00030A1C48B0A0120505227C2A7082820A831D5C6851904083860F1A22A460aPC5D186804674F6D43933084D358842586C1C5747D01812818CC964962C19CD9B7B7A391A8180C390cPFF142C9AD8B090C2A4B471BD00296B402219080821323C85402AC127109C3E58D59AF3458C91B112eP90A87042D1461BEBC6D98109A829A800D09219D0034C924E01020C095440028481072708D47041D8gP5147568620BD786183718AC748588C6860A692581227516ADECCB9B3E7CF4CCC48E8650B7494A05FiPC29070062281A07E10539CD210404381D247549E3D2CCD246C8329B651A8500186510B2D1B7C2C24kPA857D28677989A7C94ABE046140304A825B776E64CB8F428D5AC57E7913D827696E3A1879066820CmPC86ADACC549319343BD959ADB57AF97C1216A875C0025ACAC1218C33C604F094535491A2D5070F98oP20C25B5691338D65C46075C66F46A4D0FF420B292010DC7679C0649F8222C0B509555825A8492C70qP81374D3D3630C0E1352D21660782269E58DF8934D5D44721780D4041411C0CD20B09149058A2036CsPA12009776B8D308D23372AC2C507F4B8D3820B144863647A8524B58794358CC18A0028D850830D2DuPBCA380421AD0F30005013A51C3031114B36696020215500344097A0D0770F807DAA28C36EAE8A390wP462AE9A49406A400057756EA440311607567759A1EC1174556817027A004A520400B233C54C51912yP20448202F21CB9D9A820C886C2131234D40A9393D990A741ED28A3093023A0A65B986B7AE4C8206A{PA1C511AA008D4A4204942450810368E035CD0086D4F10D77FA3530996F103540FF410D7580E9D123}PE84443A52F78AC6918B56AD860E405792D96D676CCD0639F7D15E4816039EA866B1D81F3E691205CP411AD3800362258350BD98290A50511F852948257CE961408CF225F8B07D545223000935D4700209P29F864C53B576AD79658347D101F313ACB07DF7C0104D3912B0A6095C02C0A68AC440A2C9D9B8730PCAB4A689A7543DF80004131A83091EBE327555A9A6C29C042B1404D7C15163022296520A3E70F453P2648F8E0531326A35520E29C50C1C015454099123688181C092ED8BC074E4E3D00CA8A55478DF55BPF5D9F195472F18F5D8B091B1DA40051E37E7705BC36815CA07971C9B60060932A5072B62C0319047PF2E2516190762763BE954D3E422CCE23D3E05B850AE71C4E4F0474DD943BC410AF9E68A20BEB5426P393EC6140109DC4AC935D9FA1A82B92271D4116C72B11F9E37390CD7FBCE000808A1820208A4AF06P0BABD1D3451DD44CD3CB08D951498121CC99D9261C85A387A9EA94B17B9000140968081BD4B54038P18821A76A8817630430201B88C17D510942346123AB1F4CE0A7B8A0508D2C1860E944D836CE80805P18C08027E06232C0A04709ADC00505700966BEA354141A72A9503D61283E0CA2108748C421060100P21FF0B4D414347436F6E2004031039000000015772697474656E20627920474946436F6E76657274D657220322E342E33206F66204D6F6E6461792C204D61792032352C2031393938003B TURTLE_01 R P000032000044EE0000002200003200000000DEAB00DE0000DE0000DE0000DE0000DE0000DE0000DEP0000DE000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C365D92P1449E2AC5A9D0AD7A841228D6CB6D4D58A6829129A48244172D85E8286DC3697DB1B854285D64814P0272277127843614452C122C63422914740D71725D24790119010109202022201FA01F0F10221F99P0909770D821411240901240D614B292F0323278F02607779957979A07E011F98A7C17FB09A36BA60P032D8B8C49BD140D1427AAAA2474DD7627036028601286235DCB090F2487571C29201A1A09348608PD3F8F9FAFBFCFDFEFF5D0A7C28A04056BB7F45B8814821471A111629C0F0A260CD4EB86C5C66D9E0PD5C0213F041406506000231C0C6D052A650A106C65A63F2C8345283087970D121836C042A5008402PFF1B64E450B4930CA628109B4641800042D30710104CADCCA3D1C5AC7D143878693607639F02AE68PB27C19CC409706282C9E6047670405170A2ADC2C97C263951A29BD6C69106E235F8A60BAA17841B8P2EC226B32A3CB061F7B0E3C790F571887CD8C6064E0AB029A0AC8F4405096CCE1E8CCC424548154DP1C8DEB05E644E0308DFB358D37905B0747AF05885C556756C54060863E7AE1CF86D50A2E44BE19A0PDB4E5A2E9560FDC9E3A700B1587720B9E6C325C107050ABE5479848263F67334F118B0B43241863FP984CBDCF242B50B8060A407D422A4B4C1586AC4D4215759F18F380529F780755299A6C925E03B76CPF48205B159D11A384469824726103C80FFCA53A47C02D325CAA4E79A4D8C3142810A2DA490820A29P7C818203B3C841958D236A32D67431E54553338F3C02D43FD61812881DF515250B0DDCD9D18C0D28P6403460B149110C1066A90F0C04FD36875CD2CBC1894D62E77FCB6D60035D860817F882CC2100C86P31C242034DF921000AB8B8909C214106C7266748D49042042074F127A0FA94A626A28C36EAE8A390P462AE93E201130D9A45668B5C14D4362CA84561FB29199A74B8C90022A9B3880C2A1A40EC1410315P90E042015274D4280B152251CF93521A02280B24ACA080004AB0206438CD7D33C01C86B0CA8F560APC8F38103241011915F148DB0D71DAE4D328B48BC8C70293F360CC0522820B8B2FFD120155504094AP19757B0D18B992418202331950035FCF2C7B245138B25181030EC094D28374847300050828B02F25PCE22C18E4521C52000057140A25251A700E2404C2C692324749C6C02DE674E94FB56B2DAE0C1A326P3CB287CC1FB2D024081D60698014548576CA040BBD7C59E32BC02813DF25C6ACD489297F98F24D8DPC92848C2095740940B515D28E0F253A684B25454A83C6002830D22FCC62373C479850D5B84644393P2E67B2F426509900B6C9108430D054720C208BAFFB40F2C8B2D46DA8C952987CBDD432A08C058841PACD1320644B842C495942E5BB761069C64F294278DCBACC97A1619E2B3852E20C08EAC71D078871FP9917980926A8BC6CC230208484A4DB6855A790CD0815A08D121B6235B063327C9B5D08C66C16E402P3E1059E3DABB94D094924B38B69C9D0D2D8C306B4F05E912716A8109F52ED604A7E78DD072EC8A02P05DAE26740824FD6BB04365CA9829157BC5D7342935F308434AC061DEBB0657C4A28D735BAE78267P4CCF0E71C0861CC2151804126133F960C1192831800B740F63454291006C42A148D9A0291B20C1C5P2A9082150C406DB721150714E31D8DA4A8554850C12B362001DEE1F0085AC198002CF8C3221AF188PFE08020021FF0B4D414347436F6E2004031039000000015772697474656E20627920474946436F6EL76657274657220322E342E33206F66204D6F6E6461792C204D61792032352C2031393938003B TURTLE_02 R P000032000044EE000000220000320000000022AB0022000022000022000022000022000022000022P000022000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C223995P548396E238AF5827A7E52291280D9B384B162A6CA054A1401AA6C4B6810D7CB235EE8D4285960FF8P4905780D27246176120A1F011F0A200F24364D1C14940C313103772877236B8106011901091F2022P1FA809090F262209A3A46B770385362965462D279C717705AA7D09A6AFA88AA301BFC80501240986P620314912C738F622C572C292C1C2A14996177768278857876D19B603616D8B8D9CD5E0D0328142DP2DD1EEEFFB4C1C1C2323D8F11B48B0A0412C1CD47C280082048D480709BE1120E0049875BB1A90A8P4369C08017108D48E086250505051A12188840428E8D18784E6C5A4342D9323FCA7026B81948DC20PFF3BBF9641BA45C664343C6CE43958564A110810104C4038F56A518635C802DCD925604EC82CD4BAP8A1110D05C0301BECCCACAAA2C4F843BB5EAA0B0215700178D581F9CA1C06FC480AE720AC9014717P8E8D17ED225E69A02081864214F4299E4CB9F21515562C47B4B12102880223CE681ED8C045E3040AP068DDEC7A282981375A0897BDD66320B172D462038C2425A344A787C0B3217675D401B2A5C74D108P42817312159C3C60A8C1294BD98332E6F1B52CE9D29C9E7A1A66FEF4832A679291A44E017D0405BFP31E66867D3DD4FD5AA37458030A64AD6BCC32F7C145919D4D8501139BBFC024801C590F2D4035329P228C0211FAD1DD33BBF045DA1DD26CB2FF9D277E4025C228A544A8085638D9379747D17CD5C16E65P48534738793443D32FA8D86753556669E2402D68790142029E81B04E7A45B0F0020229A8200102B9P8D0386203BB1546377C49DC549187574750B366F2840412144F1238D1D1765A4269AC111224699ABPA500D37B0035701C6186D9B2DA1227BCF25803F5C0B8272E5E908081688326AAE8A28C36EAE8A346PFC43810B4842AA84028890F0801D955A4A040743AAF2DC089D7ADA01095D244002085394EA290770P79A18B0DAE5ADA808C623C3307057042DA1B1CE4D8F9538B36B430016508B858C444BB0A92494670 PA075AB189410A100215ED8B042ADCBA6B002244648831625D00AC287AAC89030FFC239D0DAD14C79 P7A89D96B122928B041001ADCC14281684E394E4F4955B0544D1692439118CE1920CC2A10A83BEF11 P1478A2C1060A1810C6511B9553537F5981689350FEC98197274F85C1EDA40ABC55004CD41E350E20PF685871583A48812A256E4B05381467364F15E03359C65200CDA7137738AA888920185229CE2C742P3D35F002051CBD830F250109B24BBD0B22FD41D3119202210427E267880B613C9C4D8119FE2BCF1APC2EC9781235199605EDC0F9857F06C5D35A0B6CF59C386541E37399240061F40A0380443A6B8934AP0538C0E1582A0CC482B4DF70074C320140F0C0D3A68090C12BE15918089A714C3D446ABC726BC438P2778A479E9398602CC4B77B89B655118235860C1080E34E285022E68B804981DBCC6613951A3D831PEE069020391F39DB8575C5FB25A56C1114C4D0027B15A07AA0E48204A56A2005646073B0456B6243P051408100D096A144089EB29A480807630D06567AEC3411F4DB6C325916DA2055E1A0D0206A09DBFP8C235810FCDF8006552008AAE328223384EA1885B616D8492CB9FAC699BC422B478121292E18016EP6EE50239F02A32C67BD49840308AD811200AFE30156F5052C337E9100912A800F626F84324B0A00E!P0378C3DF8A48842532D15241000021FF0B4D414347436F6E2004031039000000015772697474656E#P20627920474946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D6179203235%2C2031393938003B' TURTLE_03 )R *P000032000044EE000000220000320000000018AB0018000018000018000018000018000018000018,P000018000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C125D14.P4583C6E238AFD82BA7511991280D9B9842A6A814CB6A164BB10DC88D70BCE0A8340A8580BE70E7C70P6D6D270D2478790D146C0D098B0E0D03636F71837801947A1F1F099909200F1010987B950D026E022P6F6B472C2D24823628927D797A0F201F0198B78B099501B1BF80508384015F884D29362D62232EA54P36248EB10524D592D1BF92A52CA9DD43168723642D2D6F2E80DEE94E242924180F64EAF2F3F4F5476P1C0ABB8B35C7F6F66D6EFED89074C28D200A05473C42018B04275C0A6AB1BBC262848214091C90E88PC0C28680820304C521C46B56C90009326408B01253023F61DE88E1966AC4A11A0C46BCC8E6504121:PFF10223E64F8A00082894F1078E959CAB4C1090A8F1E8DE820A18102290AA064011367C0A33E0EE7<P14CA336B541CAE609E51A0E9AF0807310329608B83E284CD678F6CA4689B4551A60705E0F21D4CB8>PB05BC36D2382006195840DB688536D71F15241B47E915349816BA320578F50C5BCD84B84C5201057@P2D57E0DB51001C495CA945B326091A4012963FD8BAB5A10066261C28A4180099054001AEE7CCA994BP8084835985F4CC1569C302F2C7A95228D0902B4204375C1BC032894729CB59202004D5F37054E765DPE8B204BF48A202390A02628C148BC7C0524C9DA8A7CB620F64924749B5C1C5D61623B00059120085FPF715352F3D97876E20B4B41804B69414FF5D317C0012C608AC9000C2222014A300764DAC721618B1HP2DC2C72CB9B0F71225CE0D12464153A0F0580A66D8C0410A1C58919D18228131C01C0E15D0DC4864JP11F207057571519D3FCAA4D04E0A71C03090535FF2F8476D8E7C69C30B16648644326DE01590479CLP3DA866690E58160D332D0060E49C5A90F08026099C20279F585831240BA411AAE8A28C36EA680723NP10C0D1A3575453CD8A0D0C4A29113678879A14536D9A043B95DD292A125B48E05335339D6A04072DPP8C30028F487226860A0C20C1950BE72056019224D8B41F6887E4158F0B080C82226A20C4D3967162RPBCC18748C00830A64056E9D3C965FEB4F6542C82D070875261C502A718052860FF202787689AC45BTP7B12D146195F4A8247050E3870A321B2E1E1541B714460CD6F4EE825C56A427474C2094B3A75821FVPBD9065094A78DCF24B411EBDE0EE1283DC424D14D10E22EC30638952C02DBA8582D24BB17811DF1AXP2638A9C906CD891143BD2389629E501968929E0927BEE461189D0D9428162D6817816F6FC0508A1CZPD3F8A7A1089F04E5735199ECE1C74051B57018130A0CD0C25930BCB093784EB960D91DB864A29B27\P46D9F29F4A07B20CDA297A256CD5232F30010505FCE0CCA47315039532DC1C82309625D4105D4A19^P1438F0A789771EAD0AB4624C834D749CA88752CAB7885249E38788EC9123B845A00B3C042B311020`PAFF4B14834BCF40CC24A25BA1CA887C0B0C441434105A1E01A05B2525080C66B94731672FCED7B72bPE8A3FBEBEF5C7130CC623D1D75462D7FD334C0D24AD80CC4A3B80DC4D0BA3C6BC13E17CE2F85450DdP358DC81149056D582E4F0A68AA9042D20838136667D908E021424301E4B1661CCBC08783C080B3AFfP38E510C9094918D0D4A8EC894958000C8D8228158D1650606C445B1220D6B2B139E1671850100739hP0450C245B180049B981501C8102F5771840229AA44AB6C58840AE08613A8E0A11158B0B0111A5088jP8E0A020021FF0B4D414347436F6E2004031039000000015772697474656E20627920474946436F6El TURTLE_04 nR oP000032000044EE0000002200003200000000B70000B70000B70000B70000B70000B70000B70000B7qP0000B7000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C762E1CsP96734AAD0A152D498A446AD8BE6030652025561A89CF07047A90525627C546A134EE785AA3400AF8uP0B05115C7877272F5F7071422E0A2909050D297336772494807E7E097E6A6A09096D20101F9B019BwP053427021402032F70151420240A0A5E65470A7403352E2394840D248F7B99A20F9B6A9A01057E11yP78C00D0336B88A4873787627767705095C5DC17776362F16D6E8442A0D14232DEC03032DD4E9F54A{P0DB506201275F6FEFF00ADA4D8100104A85B01137640F1E5CE08425F4ED81870C7C6094B5F481450}P40AA19090A015980894708932966DE028050666A25332F0DD92932D1AC8006071507AC3AD10D50B3PFF00A4D43C8000C10451833E7D06E05280120989ED620853A1114635272C469C18806D0FA6474951P32CB54B1228D313614B26A41224B8A163180456397E7A2B430571536A9306C980D02040624D24BB8PB0E1C38A5C5852F0B11F62744CBFD93A9177090570B62A18B6E5A28144895C61D6616751950D86B4P3EA521A5E1046191132940C2C307D0A060BB8009B254D9DE9CD1C1F84428E02093B7660635E27931PE2293D6B2E5A902142E1C4369E9592D61CABF2810911204CFD9C4DE7CB2A225CBEBCE8DD81032D0DP1F348030508E62759E1A7F66000A2204510822A8564A069B9C62897594B46081621180A292022021PA102235D3CD40A30A9A0C11833A07C10FFA01FE01D655C4D849C21910D34D8A0C208834DC1011802PC4149C721AEDD78926C74102884376FC122140226543474F6075B3873080E0548044D03CF75A0A02P08601D0D5DF044913839B173E239868D3142752D7040C43C1611424E455FB0D0E2634958C00E1703P8C30800B2520C0A6152C70115E005EFC78A722F781C1DE9F84166AE8A18826AA440B9779C185A24DP34B0011BF85802E9122A80E00D09202044050B2C3422C9616F38B2D12FD448012A07628A69849EB5PD46229611C34504173E49409DA34608CDA99300699F20063AE1536428C4C5682911D7594E9994524P6C60C01AA474EA67422CA478A58C783C44C889653EF24901D786141B3457A6A4FF89573A7A41910DP028CF0C27A85CD314095D8155041050EE4A8D44B784C531D1DAF51A24D49803CC2DD1F9A1083C709P2E40954E0AAE0E015B2B9E1D790AC33F7D00E0879FFC71D744515E4B01A84C8C30C2030DD050C61CP3C69D5537E0AA7B1DF270F0C25024B3B8EF3C53489A86C0B634E1A610347CCC83A51305C300CD41AP00BA040A1B1F64D08C6A4D91F6C2182914800C7CF8107C0407058000DF06107E310676841890894AP6D14350A296FFF64CAB3303DD49C0263255074116328B081BE318C119730F8D9028887CA7C30D47FP2BA9F6071F776C1BDB68291C5D3112BE6C718705305044DE1E5DF4DB8CE30F7CF0B44BE26542821EP65A1C0D0A04B7050C90705354C53394FB585E5471B1D01851220CF08F33022FEA420527514E9EED5P375DF8B4DA58244273070A9E71195236BFA4EB136D3BBEAD114FDBF84C3B3A2F5ACF36E98F442088P57E10473EC9A7A4D12CDFAB38963254F34A0A0FD6B9378C32F8EE799CF988924F04A936132670104PA4400529E0910B02D5A380ED22460A7C0CFDA8639E8984811C28BBD410D8D1822FB5805113DCA0A2P28F0023E0C221E14B093088D7099F0A00D26E753D40ABE968006E45051796A810224400B1BFC6F86P465000070010428504010021FF0B4D414347436F6E2004031039000000015772697474656E206279P20474946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D61792032352C2031 393938003B TURTLE_05 R P000032000044EE00000022000032000000004FAB004F00004F00004F00004F00004F00004F00004FP00004F000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A9FD0PE8B0A14A90488A91CD46A16CBF602EC1868D68409F04A8C19246B78D7843D0A0350AF840411FD017PE47103240D36276D45081D876E1D5E360372577E097D1F9696091F209B1F197B0978245B5A5C2331P2357820A4C0A7B05110E0D1430312771362D090A2478941F0F1010A01F01197E7F117F711571308BP8C482C2971142D02039077770524A0DD807236843629D04F14312D2A29230D1C442C5ED703140D23P032D5DE6FB4E2C0A2011126050D0E519BF8308131EA1206A17961352182A98A8E00109830A8534B0P76A2103838E2006DA120A010850A365E6434C2824BBD90DB0A50EA1540844D62A0F40C6A60ABE400PFF2E1D38D40098C00A41251452A4F846E6911C5B78F2500AA0099889606870BAFA38871C341227BAPD47031828EAC7A8064EE8CEA6A4FB100BC60CEB1B01289BC1327ECF00C89CD56839FB67E72C158D7P89B82B7109A0F05AB8B1E3C790997020C0A182BF77D0A4D920ACD09F830F3213D0B001A506894B09P20EC32D498430B0988C7C5E9484F16DE708F42F7DA0C99C362BF70E2844A20FC8FB2D96020B7AC2DP074F05120EDCF631D627D3D62FD806949B42F00A6329291E318F13602A5BAA2080411041ACBC013CP8428FCECC29044C0F224283069816F11C9385A6CD3875B9AD8148C0899F471CC567FE9F5C50814B0PC0D9115750A2411A5BD033805FE77D20FF4C796920080108D5B915811C28DCC21B23D54CD4C0050DPC0900D20DD18974725ECB5C7C71F8BDDF217690921100636B2C8C556730D0C12D54EB2CCF1025D90P09D9911C2F8123D26C1BDA50D276CAB1D011092A54E008720052E3942C911DC125122ED823CB0502PB4B0669A51308486011FF034219D4F88224E5273F229E8A084166AE8A1883606210962BA24050BCCPC41661632448B0891A75ECC952036980F00F08A234E64F511FEC62CF22D25CD1420B6DB4D1669220P909A46044016A6800B297833CE16B4C93726051D89B34BACBDE8E718078C26C96B58836879C28C7FP7E215C048318FB18415B0C721B8DC709C7132427C05092B58FA5301A05DDCAA4FF6000714410C0ABPE1C4D02CB985A520005A68D571474E6C69028A48E2E0B5A2100A08E6CC3E5EB81949850D28980131PED91EA8717039434AE101215F0C048D0D4530F54022AE8566AEB81F0F08071349B9D055CE41A2B31P0F4CEA4686B61C768CC3E565921E081080B687019410F2AC386DBA50211E072F2161112D7DEB1709PE5AD4B954D68E43C95D4A0D832EF08100AA2E9101C8CF0405EABB464164F345CE18A316AFC028109P2688D0335B472619C7682828021E09206850C03FB4CE67E51E1990AA8B7AEBE998470329A2E05749P5F2960890656CC77362A4A16A0898726537549D43F0F0296C7F79AC34203096C5040051096040E37PD0DD9880080F104BCC5551F005C2570DF44A11B6A9358CC03270C2ADB56F019E5862CC8D3B75F4F1P098132C2427E15D340474827A4B80D25A0D01D8A1EB1FCE1D709027CED461B2900C0D35973145723PEAAFECC464BE3524ED987C4FCD38E31D4C86036EB082F2C2946281966CC8C56E8E000A9F944201B2P04273E650AC7AEA2E7181BA02205EB6046845C5012713C220C5E305F4696438F141046051BC907D7P1AE082DE256A082C80C41508310031BD3009D3284A004005C01B4663102F238ECC7C780405986617PB0A1C00B4488280E38712541000021FF0B4D414347436F6E2004031039000000015772697474656E TURTLE_06 R P000032000044EE0000002200003200000000EEAB00EE0000EE0000EE0000EE0000EE0000EE0000EEP0000EE000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A8D9CP94AB814AB19ED861E35100750B34D59095B299CFA7C1C9DC2025120512C996AD0F3923DBA941D953P1A09010582058501201F8585246B3614660336291D12242009890F747642297E0D0D05808A01011FPA71F6F9881A58624A0A08D149C1D2D292970230A0936318EB071A1050920200F0F228982A98A0D34P28B10D79B4441CA014140323356A366A14027BC06E717072B00D2702DD029BD459650229081502B3 P0867EB1423232D0D2A08DE0974C2818402040924381A7165A0C3870E397460C142818A864F580002 P1120C183001B1A608478A7810B12270534B0D1660E1A74A15682F2D66D921117652CD87CE7E80F4B PFF6124042D0B00418408441F4A9532508865BE06305A8C686085E71A99A15A15C860CA1884AF5F41P707D3328429B99235E8CB4D32051020730B08583B5875C4C45A4400D2AE000D61F1A2F18904492E2PD1D59FA022ED39910DD64F496B071F61412132111871DCBC5AB353B2E7CFA0437F4E615081E90773P3EAB209142D7163E4FFE1834508C6C67C9C212B076C9A6279F743FDBB5636961C00BD15A5CE81187P8E441C05A12214980213548B136B660D3128C7A5652C2CD8F0D953A1818302069406E05AEA4DA957P7E0708284EE164044203BEC71EF087F9A056429D62CC034511D2CA2B2C3172C608B7D112DE2FA0C8P0187521F800016040924A3082BE85CD5FF0E4F380DF1C8003039D7407A199C624A85A724D31121D2PA153430D0DC23302080B9CA240248F9CD5866EE6FD1748862A1A22C866B04C331005DC55808D2FD7PA804CC308114A25701D0F9180B768E7846191964F8F5488F0D9058DD96AF3C021972458427C0708EPA5F3879A666453A368E15980400A2B4566CD542E1060839362B0C9891C88AC32476586BEC3820A0A!P342AE9A494566AA91D145D9A85040D98A6C0032269CAC48F151663D69D031140410D8FCC81AA1108#P28304C2A2A82E0CE601C54908202209856030A6B6994420B311466C30828D8400206964C18EA6824%P44F086692B49A2A63DFC4502DF197A4550CFAB0E1DE482397DE83193378C75A8FF477F2FBC301C72'PAF94572D3A3F99080C4CBD2078C25A0A38498102660844829A08D6FB9F2059E1E5D819FC3134840D)P20340082411480DB440DDE8802531C7B25C01E261C59C9639D2FD880804198A4C29A40E0FC018C03+P152490D57A482565882871249BCDB15275774E03029591EE94FF0969A1094531F322C23499D1820B-P2344F2504FFE09A5D458C41483087B0796E9580D994EDD8E1A27DC3C4C29154290A87A785939D34C/P16C3E38D94331B9DB60948AB9D0A1C83C047C3625D42145E5D2740E31C7A5757A840586A7774B6C61P7282721C357BF25903090FBA8CDD94A660980A57A8B067A5C666D0F0887E4EFCAB800654D26003B63PE27067E02161A5A2DBD45EB17893CE0B712F81E829310A10C30B54A453CE95EA1D92D450CD006E415PB8C34807B50D16D0A5975EBAE1DCB63090C342030C0F0DABC02B353CDD073AD0DC55081CA12410817P59F4F2E18D0DA863AA429967B4EA0889105617CCDB7F8884197A3710E6A4E31A58E98F78A8B08E3A9P518A32672041FA5662265820C827970A0F6B5C50329534620DEDE0437D1845A98A3188342490C818;PF824150A5C601F2950E1A452F0827DD80209FE1881890640800F890A092C80C62E02A081889DE087=P4BA8880D786580046CE0011478C1F3908884F19D80112BA3A2A182000021FF0B4D414347436F6E20?P04031039000000015772697474656E20627920474946436F6E76657274657220322E342E33206F66A.204D6F6E6461792C204D61792032352C2031393938003BC TURTLE_07 ER FP000032000044EE000000220000320000000083AB0083000083000083000083000083000083000083HP000083000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A5929JP9242015234482CA796C821202A14CAA39132A61AB6B4AD4141A74F8D8645F02A1F392ACAEB65CB6ELP8D562314277068710505018A8888010909201F01887168140236242E6C23240D7F4B36022368050DNP8D8A01191FAC8E098B8DA6340D84B43676A04A296B9587A6891F221F100F1092938B8A2405368536PP30B948241F0509062414312F9503BDA7A705CB88099E95850D9814D1EB442C99292E313608081469RP0D23821728602DECFFB958283803B0A0C183EC385C01010944810F3610DE211101520305244EDC8BTP6363C0466FDE0650187142C0283B12486CD0F0218102750059A0E0D5A681830A09C04982C05384B0VPFF04A8AA151050298D1F84BB885622914A112B103CA30A83152082A942F60A525831E243830706D2XP84B9726244382B8C80324AF48B529C01846E21E490118EC734291078EBC8C61C2F7CF8ECD9181151ZPA2160A035CB868818B480A1A245E1970E449EC51C39833237457834263CDFF1AB06AF9C0E265D05B\PB21C4071A522504F9F25D64BA1E0110812344664D925AA26DC5A6906744343548D91AF5F6D3C289C^P8B6E0ADA244814371727FAA90893187D2B6943B0F08E9D1E515251D04DDF36B3AA350DD092EA5A53`P1D3D0A403C22F6BF14F369C1599B6CD507100046924C00E534C05A5686A570C258E064F70A7B5199bP005524AF34120159A4A0915933021422FF8E220F4A224924AC64004B0334A070423727BCC0404136dPB89082041C74608F70C355074E22A940526253A6784383050645C1D2071A143080003028B59427D5fP440654250958D54B771AA521D12D183550830B8419B2E01A6B60B51756CDA0611F6A2CA880891A71hP9CA31F2DDDE4535F8DA8E97202095190704475CBD850839679EAC24414CA559180041EE956E8A390jP462AE9A494562A0407514CA1E0699626916980205CB866A744D4008923233247EA117A352041042ClP3102136A129C41A811355AE0991AF784B38C74A376C0E91F5174121D6E141C05851A97F0828D286AnPC4F026120D54700246DD45D3C0061150534565BC760712487450408247645C76FF02080E38B4DC3ApP7D8A076E4DF714E82B48599A64925C18AD240919098DE0420595C9790588BFB0D7522C1CB1619248rP161C4B0202367080273B24B480499CBCB0C5882A4D55A85D33DF89D2C200237824D14C14C0E7A54DtP0EF0F89F08218CD6E32286CC3BEC7D7C558208538B98A8C0032644F5410689BC52201A836E389837vP3CF2086202AC3C989D5BFA6934EB9661FC75B553C3801002D54039D2C8D20B7A869982C27578C5C7xPEC81204231454320203204C649023FAA222496CF5499F81F8076CB6D6276BD9CC01AC086B9430809zP36B026CE64190898C0E182AB15242D3A060B6FCFB5EC58CD533C3D603322262E43121BCF18448102|P27C007820DD2DA53C29D4B36A1D2D4BF6B79A391E74EA430426D4EF1268F81B544F68BCFCB5B7125~P471EED0C4ABF2C19D0D92506337FF515AF2DDDC69B7DFF6345021B3470811C1B17B5B82FDF8C4B03PC97849C4828CC20FD0190D1E95D51D052E60D9303A68585251DA103EC3E021057E60410BCC113A07PC44929237143775C20005289057C1C7BC348EC94828B55CA1E13AB40034E0398FE51800098B0540AP3C9382169C20360CB842745C5280B2582A38C18A42435AA2810D3C003FC02355B54810A65519F188P4808020021FF0B4D414347436F6E2004031039000000015772697474656E20627920474946436F6E TURTLE_08 R P000032000044EE00000022000032000000001EAB001E00001E00001E00001E00001E00001E00001EP00001E000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C2A6B0APC54301516C6CCEAC1669B179290DAFD8061B638B36500414789CB7C37421912890C0B686BE410AF8PFD05057F7401050D850961362E245E3570593614787A828001191F9A01099C827582117C36242815P6F904B5F797C248106011F1009100FB51F091F8505BA0E7B7A5EA94714082E1ABC0A14363131BF0DP86CF8176A0CFCECAC0C2D9688B2E2E31A81D0D1424AE79C1DAE8E9EAEBECED427C0A06207509E046P64E79004600F0DFD356FC44C12E70CDA2F815F2C50B040C2059F06EC1AB8F042100C8A060E1C7C0AP000182898E103E64E8E487C41E73F6D64902F3AC4FA04E1F407CB0D51144484F851AA0F832CA5D1CPFF4904F5908882511A28578614389334A6DDA1041B1A5C68C06062186593268261A90CE8D63C0E5DPF8DCB2A858CA38611E3C40A020CFD8B770E1D888F2A051DC740D12B0C9A5F7EC5D2704F228283038P0299240D30F8B3E1069DA22302BBA20C236E59C3AB5DDFA9D9051112850A0FF41698D28822B03CAEP9E4528E44950A09393C47453B64EA28451A428CE09E0EA4F00999DD8F8E934A700858B3600BE05B8P351A0992967081980EDDB5CEEB8B62BCF562D286A1D67E6475FC0841A6A74E118C7B4161772CD33DP7D766508FF9BD3265C96CAE55106633BEA3D8648B31B2704CA64083976EC81955F7229534318207CP0146232DD591D77316E6658749949994FF193B7369F081060EC43091057A0C64C3452CA5E8E24A7CP7435917B2E28E0C224927540CA49615078124F375E604305B4FD9584171220D059113110D6092CD3P61F04091460A2146955866A9E5965CAA935C3E5D3AD14014529413661369F0F5C06F0C9E29440D7APE90582206D9E39210624CC99407BC378D10F987799C14A030A013A843F0DCCD9185C8A7017238C57P75F7D8103584265C7FC200C45818DB0CD46225CE34DAD5A88C28400202751EE946680A80701A45ABP0C6A8743D524784D6CA43804C38DA92AE18F037A8DE9D017E4B0325480BFCD335D497CEC4459ACB5P15636369CEC4B74B02195852C7700674D21D34863A2691A3FB5542522C208820FF42BAF86DC46129P958DA5080586E45141058914A28B146A49A1CB2EAF5136A94FA6ED010A749CD041C8B5CC7A888D7BP030168897DB4A45B312E04F2664DAF90AC34E8C17EA46B0B79E51118A08261604AB038D790736E2EP204C618B5EFF52B394CAEEF054896F9DE4C2C97CAEF9C69BAD0DD480733BE63472516A82C4349D2DPB66CF24782950D9C738BAC24B88B6FD9069213D5405DE99E0D5D5C23D19E4A051C8D1E09449008CAP1FAA43413F1FF863C02AD8B5F20C21C561C8A11E3BC5ED65ABB16C90486CD50C5ACDDA4B0DEAB13BP63EA698043DF287ECD7B020FDADD1737FA64C25CA616ED420D5D51C8122B0E9844214A6151D0F958P9408CE94A0128A2131D1B81404C6F176A756B0E410133EF780AB8D1E6D242908F049447272CED32DP06E1066A01AA623EE8969BD867AF7D2A41000021FF0B4D414347436F6E2004031039000000015772P697474656E20627920474946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D61792032352C2031393938003B TURTLE_09 R P000032000044EE000000220000320000000067AB0067000067000067000067000067000067000067P000067000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C165929P12680AD290524C28D6C965DA04279BD8763ABD28A446794011A7102D92E23AEA1A2F94C6A3004A34P1A637F80270D72058787018A098A018C01878284025B764D0A6102820D88058D011FA11F091F20A3P908A11056A03802F965D3680829E8D09197D100FBA22A190052491926EB04D508002797F659C7F9DPAB9B276C0D0362142E14C54C29230A731414D5292C421408E3622E29150D463105A4A509110A1227P1CDAF9FAFBC52995FC0091D490636014B006FF88CC21412241822B018FA4F8326D93454E6904D900P1766E346802938CD51E082841893B238C16B9401020413104040F8A008510314164F248CF8254F4APFF4F89404D7119D354869ABF36D5A0912D229189842C023BE400511A61C032DAA0D1A08D0DA71D04P2800014A4301182E6C0C88FA87828011025A5DECA8A9C108700450D8D80956090B0AFE5A90EB4BB8PB0531BDE1EA43931D8B0BE1309C892F2F4150902310F4E90A0D0D8F110049A1806ABE076A33F2335P1E4C5EE598438A1827FF5453134D8C00011429DC4DA6BBB336151C9B0A19932C0C2D540E1F052BE0P00908DC5627CC3022EA14F0260DC066DAA155494A8EBB502646426C6A982110DD2CACA9387EBD55AP19BC33EA14C040F34D940A7FF9F3333C28112EC1E4926449A1C08C1A2F3040580AC9D0120C4BA0D0P04C25140FD42D37DB39447581B0380F1FF4730CE38F24823CF58D44A35C2F5D5535751B9F0901F0DPBCF84B43D7E574825B7CFD36C272246850811831BCA0911A5C29C3DF915D75A50936D8E4A8CD8ED6P4540DA0817AC9552546564691B052AF8C341570C25F00008C054A0401B11B9A0809343B401D8082AP20C1820A2A2850430D74E2E3191263ECE9E79F80062A284F032134A8251CC831160852B279E85334P8E324A029525B1511829FE594364917D004FA54620209A688E829568031248E0D02A0922A1428F1AP8C428205818E30862C65C036C68D5F0DD600A307F939815779E0060E7F3190E042266A7538C08EE8P3510A7632A88D1A118170D43061BB8DD38820B2D08205D311C7499D0440D2629FF88B2CE34905403P34C862037A62D410500D149CF0400335D8A085BC5F68068D2753C403894A07B385020AA53281C203P369812D91CCEBD95517841D53222899BE0F4913E1CCC114104AB16902F5B9C30F26000B888E0B2CBP1F64009E30F2BA10434473B820412129ADC7950355811280020F8C39454DDC6D32C09D0D7731C75DP642CD38003159040E222C9FD829478CBD8808249844910F57657CB1C93083299E24824AB949107D8P846D64A44ADD89B08B80108870D4BBB4352040AB7D4D144E54F445488529310BDD08881A811A110BPEBCDF6E0217BD394400896D394C841B2A9E56FDC71D1828801FF1D3E852FAB0873C26DD68CCB0F54P483A83C82790F0A8BECA26E8B95918E475F5ADE87BB2FF715D467FC4DBCAE7FAD960C1A50E2EB7D2P54D0F087A5DC4D3B31E70828D43042040E7CE161B6E0B742481A64E4E182531CB4D0A559A3744581P90EEFB2D6F1BCB78459B1877B54001BEF981D44DAC1AA05A0360701B35DCE6467938506DC8B02312P8C404B576803AD40A6004F7C035F14D08B3FECA206E280033645789BD548170A0CA02920F3DA4C57 PF662291220A0017A2242064755B4344C6B502149410B04F3A82E40CE02E7E8A1108748C441050100  TURTLE_10 R P000032000044EE0000002200003200000000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FFP0000FF000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C0A498AP2824016AB0922EDBE9617B50AECE30F3602B9B4FB601C9D5300B2894512B4E4989EFC3547940D116P1A0D0505018401098385090124800D270D03231678481C36242429128C8F900D140D15158A018201P1FA81F2010201F86A57F348D0D022F93944D146FB32483828AA8220F10ACAABEB39F9F6FB861BA02P03030280368098817F828D688014686C17287D36762C29B7CC2C2C360A20051A05159F1428E3E536P08427A242A231CCCFF00030A1C48504C0D12201268F85080D1392315146C30902053C1242C469441P432D10B26CD338326A63030C400E9814246087C9CC8059BE107D1001C1040476AE4C111A09880689PFF921789D09B0648905142AD1E801886AA50A1020E1AF5116023E8107536FA9C40E1F19A51907F1A!P24A8880C8D0017032EB25021CD01421203D2740405884FB7470EB89E8063A703234C8434248890E0#P525004F898A418E0428549AB902353B21191535F8C7AB25E965C64D387B1093E07A88A44019408AE%P12C0E07C04410312180A28280087AA191B73C6B970F1D70A6B22EA5EEA3A417C961979DDCCA090F0'PBB831E691F018F0541289001427F5E722D53F0848206E1CAF569D411518104194EA10AE12ABD51F0)PDC00D5D84C8982840D093FF722B16D1B2007500D92DE679F29320829011810563223BC70112359A4+P01D321D885B64A4DC44020427AB02CD2FF1079E358A5471C6D00720822867C90C1582BA658482F7F-P9C20806D144446CD4B8D7C3588684E65534004D60032541B8F5DA48771D554345B20069270883670/P9014C90829205064413FA5011D32B2BCD491366750D0C208FB25F09A040F08A0024014AC90C2421F1P445003343050D58646E49935421C45DA50C377E35450C39A057100C20051B800475648B0704226273P3437107D92566AE9A598664A84045A50AAC49592A630023B20B4B4440A1428F0286995B2004542205PB4621112246CE264459E4AC68258D4C57A9E6F48D8004204D4FDA180A5DF91B0016A3FDAF0428D297P5C61D26C11984602A614C8C2532D1D9541013436BCB1E708E4822A9956653C33FFCD0B71851B57BB9P6DE466AE551CBCA00579C848F50871C4816286A46DC0D149BEA67CF86B1BFBD2100E6B2CE812E596;P11105220826395C2133565E44A89027C1171DBBD98E858484E288244CD23ACFEC329059844451235=P983CFA944C22D44C8C2BA5C0926F5CFF7040801EAD9C97C9088E0C7CDE794E2DA5542BD81D35D246?P6868DC0402BC6D70C858BC9581704F003690F329A0A548B2513468DDC60BF38A81D208A268F42535AP0D211D4006197CC04A86225077E2825A8042CF451C2850F696453935374D19B2D2CA8AE6B9EC082DCP3506F52D5D8DC0024C52B1BE629E2F3CBD2C3533658CD0C951A57088CA2A4A355514DF9F7067953AEP708C474221D76510D86B2B8A64F05E2FDAD4C5286429CCC80BEF5FCD9CCD7EB34CF5EDE7FF6C4470GP90D98CF5559EAFC545810B2B48166EBE6486EC1548F9D2424D0B0354D007F0CE464339DCE197E82DIPC60D901B8D0065933055CAE8FC148103CEC6004323D2D09A84FE639CAC7C021309D8C04240B001F3KPA58D092C40540318F2197940034C514299E788C081019CE7760F480123FC0110152044030B898001MPD8C0001750A50EF17BD9595250816B1D211D1DE00009B1343B4344A02E710155C36018B94CE1E627OP24484CA346808016304F53466081BD8A08C52A5AF18AAC09020021FF0B4D414347436F6E20040310QP39000000015772697474656E20627920474946436F6E76657274657220322E342E33206F66204D6FS(6E6461792C204D61792032352C2031393938003BU TURTLE_11 WR XP000032000044EE0000002200003200000000F80000F80000F80000F80000F80000F80000F80000F8ZP0000F8000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C95CAE488A\P0729D148291B52D027506834BFE08EABD150906DB61785E4B20904B6011A2D4055C2F8E329DEA090^P1B05010120090109815C88055D3464232814365679452C340F050A20200A2D670D27277F0E0E8B8B`P011FA91F2210222086A601245D673691944D1402147E366482850519A89B9BB08B0D0911247F0D72bP032E031CB85F68CDD705CC80D77D23A068DE6B24821A090A2427D3D442082D2B29A81A0605DE0CBAdP92422C432936242A27FAD6091C48B0A01116916C190C238184B14D8B485050328244381B0BBF446AfP40020E36640D1C502183A24149340117A614E22B942F45813280106102822641A602198840E6C480hPFF6F16D671E0A0C00688142EC6B4F145C60F20415C04CD04F1404B21A83867F5FC1969524621FC1AjP3025436256CE525D12A80529F6A733010D5CA02080C2168B395E07B2608626068C3F4E79F5DC2360lP040C155FC13CE0358682BA240857269E4C9909BF142C241BE1A7604DE7CA4838407910250108894AnP6C2848302FC544D046CC98330062510539D6FAEC5263A14F0B01B091A898C3C7592D1BA27CD96276pPA26EF0212D5ECCF9436BD1165306B8680325B6850DCD19230DB8372227A20F09567D18165596833FrP364EBE165A86040D1A7BD00CF0465616D442ABA1A7567A6BB125167C1851A2020529281001810994tP851C1903FC54415938A1F20104109850FFD326EB5D35CC76DF7C67D0500D5430E181801C524021E9vPAD6788080F88904A22DC8C27167803A5B04B2F1C29921D7AFF9942865A67884282352DA480405E05xPDD654B28A2909149845AB948CB277FC035C218274CE11006FB2DA45F0C3A96F447736D5DE3130244zPC4C0113A2C3420C14208D8D00527CC8C60430C2DEDD7932D6E908040033C52C60267B569B04C1F72|P80C782002D3CF9DCA59866AAE9A60225CAE912778DB1A4A78A56B086370922818038B52D066570AA~P69028169A91ED1190811D4964DA67B29904A7A819888040B0EF00985A6615A551B156AA4E01A3FC3P45628144D1BC1A5C59129CC38C052F54995F1C158E40E92EA44EB6D41CC9BD80FF9B2F148CC7145EP9A6ED480476371531772EFF92280B5934D004E28565A794A000D44F5227CA00810146C4BEA48DD2CP8608F81F54DAD43BDF64FC08E61620886085DE8B89D082CE1F7E56969035187251C82AAC40F0C075P2F06A28D003A92F042B94CDCE5A73E5292D50F54E7B1F24055AF60758C584C4572F33AFC8C70CEA0PB91D69DE1619A815B116C31CC2053748F3BB0407A212924D8409B178DF851D67C0724D1CDA98E1D6P4DAD7B3118235420C10687405116C0406673CA8B2C3FC02104AAE0244C44629D3C771E4369D34242P4E51178B86C5B01723C11C03E68C4219DDB50B75C90C0C4C2A8243F08A8B65D1D21C53E37D252505P0067334EC71F6881D3553602738306052D3C66E67891E7C4B179996B45C6E7E03C6EAAB0292C2C90P2EE3895292296551B756F5D7F432C2F61572478102298C5090BC7C399282EC9977590BD203B450D1P141A0420CF92BE0BC48F8EB00FB60D8572F8F11E8514D0C7185E44080528E042380B83940855A503PED613F7BE0487EE6E61A845486191130C0336806987A81C3059EA81F686C509102C46F031188812EP6230823D08865243B081DDAA902917A400041BD0C0C12A50035E08CB08927012A7C0B70803868F77P89FAD30BBC7629D728E053508CA214A7688420000021FF0B4D414347436F6E200403103900000001P5772697474656E20627920474946436F6E76657274657220322E342E33206F66204D6F6E6461792C204D61792032352C2031393938003B TURTLE_12 R P000032000044EE000000220000320000000017000017000017000017000017000017000017000017P000017000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C94C525214P0A4BC9692812894FE1D9EC7A3B0D1296A420352C360AA9751A0CD2034163D438A16CD3AFDEC878D9PFE0D812424011F5805010105888B05618F36288114167B4979422C36278F6109059F881F01581F1FP2010A9A6A4881901660D69026F14961D2E643665810D2DB136038136BCA18AAE1F222086898B8187PB1C1B1BD2336047F6D0F5CB645149B36B0BC9C0DCD0D14B3BC7F78DBB61CC19F1F1B0E142D140C35P69483616F4EBFDFEFFFE58BC7061250AC03D2E148050B8AC0126222C528C5033204AAD837AEEFCA1P7042DCB8668B5E390AC4498E8D141891748B72E2DB2745090A8930014121B344CFD09513A6CE120BPFF1A0AAC245050A69B0D6A27283470D028512264201E281855C8941672B1EC001BE0420087941D34P09B028AE000947681D3005158AD7AF5FC3D48839F560D043809AD20988E1B6CE309E4753A4B001B6P0B8B06291CA550306044E1C74552DC85FC6F443010A448BCF84AF9C8371020486C28B74482838524PA87536721844CC04AECD0AF0D3AD819BAD14468C453179B5100482BCF9FD256098B7BF9C5A5EF42DP84423012C3468654C4D629B87234CAF57CAC60A3D2402111E1B4EA2ABC4861C1DEBC4009D628A006P37036438057A19EC51A1100DE275FB4FEF2655985103607FB9E5C0598964904102A9404093325A38PF50A38B9FDB25C171C10500608116031FFD408488DE35623A03C65CA7CA83C10533309ECE7D61B03PB4404F4F14ACB7CD4ADF8D3388530618405D23E31C32122F464541D0080F14D2E209FF68624E1D0DP4802DE156280D7575F3D5920C0810E719692581501138894C6A5A154473608409002CC1941020511P9050518D7EC4D2820D320ED18D602DB42904074F4CA50116719613C57F1DB0E727158B36EAE8A39DP1509A91E9A94414236884E4A441544918099225EFA59811AE35C78C4612AC63942A8CC25A4C00349P82409A127295A3C2A29C2A93C522D0B130C513F3A4334F035D29DAA61AB065A145040214A7D71FCEPA6E35FA38791A1C0487F34D6D25F63A561C6093454D4A80B1A6D74E5B94AD160FF5C0C951C1B5771P7D2922EF8AE01458C176940D46C75F2361E19A844E398202382754305B672A00E39159558D874579PE245E04039492965C30BED8295703472F0B2C87CA7A4F2C0284D3123CD24BF646A4B37CD3E474848P19A002C103A031F3DA8F220AD3C61F29D5062521F292F214168540501F292F2932313AD3DAA2C944P6908EBF1226A91389F0833A5521F550564C06B20729863AA179552E922277FD1504105AF89F2C1CCP222F5388225686230EBE5D84015A7E24B444F074002B237806C940608A23625C67610B00B08AE844P977698820B1254400D303906C24C89E3258319C41FC1320C35BDE466140B16A9FC67071CB4CE8102PF7A6E1F147C514A2CC8C53098868964E6608404F37272C021B0636B0AA8739490DC309D024362F86P59437A94540B230C42F450299C603CA59877CC8B196695D12F9030A2F9470AB04C95801A15606494P1B74B8858B59E00BB3132C14842A85EAEB70E451378A43812466B1BC34C1807F60C9CB0062E0B340P44230A3CA1800B80B33DE62820027F80C16CD0018B8A4444132D5803B52A702043D8A60530984837PA6709716A8000A8B3A89025250954F54A0013558211252E007046284034721031666E80B1768AA0BP269847FE8EC8C4263A913941000021FF0B4D414347436F6E2004031039000000015772697474656E TURTLE_13 R P000032000044EE00000022000032000000007EAB007E00007E00007E00007E00007E00007E00007EP00007E000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C1E4923P50221150A59C58A782A4F80412D204E965B39D4E8D41994241931A27949A92AD27298206095D68E8PC10905010105818283110D7D707E0D34652C764C2C65958A8387545F091F22109F10205E8483248BP7E27360D142D140846169149366F62A6247B688A8D7E82058719019D2083016FBFBF7E037E66AA6CP2460242B0DB2924714650214236FBA67AACC362314CC0229290D1CD6EB422C34BF1A1B0E15230D35PD857ECFAFBFCFD1D2F6F1428B051CD1F960AB8486858A524058501161A8CB361B04E053DB85229E3PD52B909846CE50B0B191AF62116C6C1A21FBD5C913082984A85041668C63834A05ADB1D85969192FPFF1A15224CF9C5094408100FBC7C7890D45081086F18316BD062C400027EC04838A10E490B170D52PA8C0A580838276360650E8A6B280A95DC756728CEAC224166C36C80C8801EEE6897A36BA76608560P84DD26235CD0FA35C0C588B387F9EDA413B922A5065D3041AEDCAF82DB37DB381F492110E9879904PDBB1112060C08017372BA5163D84C55A400614246820E0C5B65465E0944935A082AABFA972567681PA212365EC50A4DC1E448CF54892F2C54A6F4AD178900C48A7D188F29107554DE789729C98F435A72PE2A01112040202D3301F5E869F8F296ADA3490F47399757FFCE2C07C0564D009281088E005271F20P838B4DEFB9F0900D14D83690724390B0FF5623F53032822ACBD0C41F79E389F000311924D3802152PDD340237D06CF08502AD24C10109368010C12F294850810B0294E1932EDE1563008212CEB70A1CA9PA44299052F5490A141B661F8904D8A40F359236A35924A0C86D1460477488609E6467EB091820D2DPA8708299A32960003978C060559148A044E71029B4F0400A1F68A041011BE0C286607F36EAE8A390 P46DA01256B702829129408D4801430307A699F5C2804825B147DCAC4380F44B0455890927406654B PA4E0580C14A8E028390A3CA01B081E2A37926F553D4483A591A5C08514E315328643C1156983B3CDPD8D01C7B9CB140822853241BC1882790A098967968C44B19DA99F906171B2CD2FF0C6CFF39E2D62EP36A9416C457E19E9532FC97C514A547ED443C34D0294CB59B47DB154CCC11282F4E44D28C4522C1AP489A32C5C4A765108C2F88F4A18A33B1CDE60F076A04D74B040783E152794CE2AB0C5E1EB717DC96PF852D18909F7513C8847C538808A6B0314396F1D94A8D5861E988817C6171F80A2D44C4EB6E92133PD4AE43F025F2FD6234042698104AB2E7714443C88D9580400AB2E0F5F399667CA8481F0E583DC878P9F3C60DFCDE379D107541CA1D4826B040427018F0028C1327022F785D021468BF285DCC4B8580833PDBA4D1CA323628108006B99DB099111E2AF092401E8A7C535B4469823479087629E693DAB4901078PBA92A0040B98BD34BE710A80BD874A238690F2B6797D78B99BC2C0A9E01D2E4D5CB0D6061BF01A68PBF283C92924AA65067B5CE6E39056523AC1001AB3F948639802E5F16007A206BA342CEBF18D2F95C P5ADD21A91248C19931420B0D344A29926D74FB2F23420B870048208140392A4B69514B91E095065D"P948A12247048A4D6D213D7386727056141C0061035DAD0CE73BB8941032CE0821AB4AC081D140DC8$P5E248C422D422DA53215111C2310CF0540206FF2940C8BC0010E98A05675D9A1108748C475040100& TURTLE_14 (R )P000032000044EE000000220000320000000057AB0057000057000057000057000057000057000057+P000057000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C761003-P852292A892482CA7D6C96A3C408A042861A30C29A7D3C0661BB847A486BC6113C0CCDBFC91CE2E9F/PE60D051F018405050186880106110D28747336277D297A4B246D0D6B050988871901091FA21F22261P1010A482198657098072360D23176C241F1F110A361C4D2C36237D7F930D028124860989011909193PB8CA050D249E056B14732E96431C23145859492C14B26E6F737F91D88036422927242A03DBF4432C5P34CA1A1A11D20D141408EA091C4870DB2F1B0AFE852BC850C9BF59C11A6E6910669486310528C0B07P11634D99698738C14A27ABC18917302A492C52B2E4A1008360828000620CA298CA943133048844BA9PFF7F78548EA3A0528BA47472A23968500866A90F63C44010B1B35F1C58C5E690487085CB37651FB6;PC611D0879D5664C88E29103B47801B3A274654A8D06BA52F727D6CC0705B876C51BBF43810BDA260=P5C5DC088136BF945E2412765241433A450832B096F78241B61F16BD2C2222C52B0B1802D2F9BCF8A?P539090A2AA0026369106F061A3260E5237272CA06E386EDA6A05D24ACE69D5C080814E8860C9163EAP9BC26E8268FCD9E0C9A90A295C9E3A19DA7E05901B0AD79E77E09CA7056D5886408980F065D4079ACP22407C78A6286D2C4D7C64B7A8804252030C1234701813A2B94156209E34754829A8B0F71808227CEPB01D716D8C30821B2DF826930235E841FF8E3F80D0404305C81062E228A19042C82BC9F4C3C72478GPFCF217138229D000576BBD168734EBCCB16221132E15888BFE3840031B9959C20126203890800A2EIPB41087021C88E616883D3640C31C236438477F1464D8C7372A8C30636AB0A923005274C8964292BFKPC4D08E6648D830461C23CCE20259E2D179040B033C90C218832420C5097DFAA9E8A28C364AE79BCEMP396A090C983446020C0A486A14059C0C624DA29A0E612309354570C500A086CA8D6A2EC46061AA89OPA5FA4F192ECC8AC299927D7345239112F1CB006E7954120D0290D5AB6236AC36D32822BD809724C0QPBA85862C5B96844D0D36E0CA100BCA8E82510415907585305AB988020A145420FFC709C5EA661789SPB88060EA2B691023473F9C8424CD2371C8B28E00D866BB120B354CA3491DB2F9989D89DB05606A70UPC3ACC36E192BB940405E8008A21322A04C4848C63CAEDB8744BF64D9800B0580606206EBA9AC4828WP0912E2C055FE4142B11114BCA02D1207215540048A94B2DE179DE01213CC2FB9C64E1B36B4E0C29BYPA751B056924C98F7102041B78C6202EBA172B42758C9418E856E11F08715BC6881C93F7F5C61E28F[PA140058109A744D8A9A70D988A4E2C400502C2712074B5986908E65BCD332288F0C0030ACCC79E84]P3C55D14FC26DB400C7562034C042A6797C785520726CA59D893561E7603543CA21DBB350267CEC16_P07F967EF314923B7D1224D40DEA8F4DEC5C09A041A22CE120B9B1927B84C35C94483950DBE23B10BaPA986A2E59324264BE336D8D6DB37393A1FD5339702F25591820415B440010A47FE93E71F2EA5E51AcP6444AE6992002EA89082E6DB10F08D045250C4C1801D104D19C0338CA344021027E85B028992AD37ePD1691CE4125BC2E6808D01FC61000111020BBA34809D01861CC5320705E464925800E039AF5B14B7gP22D0867FC0C002233892AA9C47915138A00217A8410DD6304323B4001E1A8049013630B5C8F4D057iP9653CD6AA46139231EF189508CA2141B12040021FF0B4D414347436F6E2004031039000000015772k TURTLE_15 mR nP000032000044EE00000022000032000000005F00005F00005F00005F00005F00005F00005F00005FpP00005F000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C954DA2824rPD0E75320A59AD8AC7648190D28029B6D406A9C1AE651A326BE6EB59C8622213590120DDB19DD2814tP027F80807F7E807C24057C360268038D14081C2A3657360F36245B29627B7D7D090120105209091FvP10261010530553207E05097E666714278C6889242C6F5C360D6568140D150E85B00182C97E0EB989xP68BFC0362E15BBBD422C140A2020B22E2E68241C1DD9625F7960C0C28E7CD094D7F058290D091A0BzP54090A0A0DBCF1FEFF009BB07013B0601309245C9080E1C2463F8358503C780022192812025EE869|PD042CC2F147E48040B07AD013B3427068421581001051462C23C6B052AC00711A340B5CA902C804E~PFF58ED0EFD1A718100300D741464D2828EC2805F8448182094CCD507293629EAFC84A7111F04FF52PBCA4010C8C9E32CFA2F5A91212ADC8670D5008387782020B1636462018F1F08D8A71D7CA25A0E1A8P0B8516239E405CCCB8B1E3379B6C287840C2D1E380D4B6758B40C20BCBCBF1360D6811C6A318BBA0P87DC8D46A96F8A13294F0F3387B25603B22712BF80813A200B17FABA5D9515C1C28B0131F2EC2960PA0A72112113CA180CDA7EE098F9F89B07831A2C9BC3E22F308A010CD4FB73FA078FA294528D0A076P27609E6E30A2028133A5129050A1654C50F7368960825601E0A48A0854F4D487029C4153D8786A88P44870D8069D11105189E508002CAD8D4FFD329AA40A0C00719E0F413490DD8E288180FF5059969BFPDCD180033539E75355A32C038C2C7029428141A6417346279FDC68882E7774E5CE198B58314F7658PA840C203DB28550038306238CC907CA0604650B79811CD8FBEBCE0621614A490026572548844647APA444410CE3D169C1134F41991A139D9912813115A4D8C09E6F509282022394A1409A6E12EAE8A390P462AE9A4589CD61AA55958A01422B2F08329136295614A0065D8F0E9124A61B229627C9DCA844B6AP7454439AAE1E81D70B1624B6D12F61BCF0420A673A062C12789137C653278991C71A5D686401038CPCD03DD06AFE45109274FCCA6161FB82987120D346017EC162CC8B1CD031FC842FF42052A9191877FP880C82485025D525A647BD2161C1B8431C3AA24FDC74AA51348894616421CB445000599EF031C017PE21AA1A59E432094A4021894FA9F7308C7120B8FB014D00C4A503082A10B2A8815C609246C20C109P0A08B48F699DF8916E2B377DB00C28A50CE2611542FAD802798ED481C009FC1E31C21E675C594045P36894291CE577143A2CE7FD0DB8E182350E0422C362915B316B690A096C2056490C14DA374538A2AP52E86C0AD6057056EA30798C3642A262F712837FED20C39329A688924A8E5789F05E2C60B6C1410BP30A0008F68628AB4CCE5695F35CAD4093C00C132212B82AD6F8B180B4C7B7D7478D5D574F4744C19P4FF121804178A1D8D44E3581801D004F6B83FC315CC3C0F482008D86B65149CE1C13B2015365EDC9P2C18BE2B400A0898FD0F0B93EC2A8CA0FF91003A3073BC8592A0A64D9F420B81FD52C3862984775DP4AF08DAF352D7C449F473F6A5A80612F0AFCA2C0C7FAA9800BBAC086F1D40543ECD8C89048E02541PB9EB049F1948606A3082FF290C01C0388258F41086D841833C2F605A5D92D60B0E10605D0DA098ADPE0543EF2C4C0056C20E1A4583087FF3184023578980C25B53E9C25C06E14E04FAD88E0023569860AP2468C1A0865804040CAD7D4C8CA214A748457804010021FF0B4D414347436F6E2004031039000000P015772697474656E20627920474946436F6E76657274657220322E342E33206F66204D6F6E646179 2C204D61792032352C2031393938003B TURTLE_16 R P000032000044EE000000220000320000000037000037000037000037000037000037000037000037P000037000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C934DA6C8FP87A2D15035AFD8EC3165A3909E545BE374A2342AE65703C64EA55857D67B494929408940A1402209PFE1403640D7B05797A0588887B018B546334661436232317368606200F0D5A080762248F248D891FP22100F1F79212626101020011F0FB27B54058F830D085A4A5C024F362784B96724898B7A0106850DP0A09A28F2E634F2C1427292E0329BE426234240A0A7C2414C1282836C1021481ED02C40D03ED3130P022F0223343670DEFF595C2858A1A08FB80EFE002A5CC8B0A1C3862A2AD4DAB0215AA511091F6A14PF3A7CB305C8FA8481B4346DE80311D8509E0C0A1C593110D364810F34BDC07102022442870C2C649PFF5C05F014F8F0215629A21F3264F8D02800210511A4F96C6046CC231ADDFE4D12F0B301893CC90AP05587A1329D2525E115131D3C0868B0A24B2361466559E1962B98CF1094992CA4F982D3232940017P6A54121CBC41F9A0C18001AF234E689C4CB9B2E5CB987DBD50508B6801046D333F94A06084A81693P84D5912B3ACE08AE7F0674ED6BBA018A47774F0C785247890D2E4C5848EDE2868BCF11C2702DD3E3P356A8406348A3DE24D7212854A1508D43094A0A0822436C6E149006295288ECA9717C850EA5053B1PB7F83E1A70DDEBD7684DE434A8313D39AE558D9C12CB2A45C1521E7B48DD9240027CF56443432CD4PF5485E013682202C0F0C9840866825B0FFD724FD090610186D51D19E030D94D2948563ADE28C3354P09D2451F29B4D00243115A259F74619552C857C684E10E15021091C2240BB1001331C1D8C5177A61P8C51A27CBF514615907868E31512C5D1E5257D66D450C300564C4680390D24F68F0443CDA281216EP90D0DA42ACCD69E79D78E6A9E79E7CE6790D6F29A8A0669F4CBCF085217A3C48E812D710E380061AP444302378B26C101152718648E6C148858A9110358E0424A35A496DA6F0CD4A92717B23D31803428P1043CC6D637C61033F743171CE080CA5D0513BBBADA30B4964CC560D5DAA0E01C549C1CDE1C430EDP84B187A4D04D685B5B30E1E6171523B8E0C639C39010E908C90A91023111E0F4FF412EF884B21550P8D80954C23A38C14929795A030C903B3805081A742D470C726371562410C36A80114230C17E27022PECC5C717720D8C40810B7D040082A2490877075309447A1E5F6D26920051CBB8170058CC1122CD09PFA44764225F6C5C504072990609E04E77135E18201A282C7CA388920025343B1E794875261FA8410PA97A73A93A1E89D4E6CA21406042790B82602053B3206D3591C296E150175212B2D37A1A43A00081P5E1B38162CF23A2C5F2F0D1927CFC2012A4D140422E0D488512B37E0A1C40EF41443270C5980765BP192FC3C88A613702C2D18B7888E9DE02A4800009D92874691781849248010EB0AC877B87EC816290P6D3DE1E01371794BBA278921D15083030F33CC5C2E05F541853A6C717CE46EBD8A517CD52467CC87P31244416524F549439598E62D8650C31120E9F3609B486710202002B746438061DEBEA75160782A9P3460AEC3BD4F1C3F0405093819AE400523B4D0891CC619868306211B84AD83023110D524CA059023P7DC53C2918C177F2F32D1018200505A801092E308F34510601E4DA405C0695854BA5882809D88002PCE55199CE1AD81330BD9063ED0161790F053CA7207B92688C31EFAF087400C626B82000021FF0B4DP414347436F6E2004031039000000015772697474656E20627920474946436F6E7665727465722032<2E342E33206F66204D6F6E6461792C204D61792032352C2031393938003B TURTLE_17 R P000032000044EE000000220000320000000084000084000084000084000084000084000084000084P000084000021F9040100001D002C00000000440044004506FFC08E70482C1A8FC8A472C96C3A9FD0P26A5D1B0D51A2E129662B3726DAE468542B295ADDD6FF7D8B5354009852D5AEC56EDA44222B02F04P027E097E7E011F01795489366455530D1431734D360A0A0920200A18728B890D01207F1F22260F70P01A426100F011910107F050D8288540E5D2E15557446169D55547F800E0982B10583800D052496B2P9E5D65BC4E766A6D8B5C14535F8DD753312E178F0DD34C140FBAE5EAEBECEDEEEFEC6E36840508BB PF0463092ED