/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: August 23, 1993 5:42:49 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: GGEventImplE, module: GGEventImplE */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [976830488,2695789925] GGEventImplE";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W8 f; word r;} W9;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {W8 f; W4 r;} W12;
typedef struct {word f0, f1, f2;} W3;
typedef struct {W8 f; W7 r;} W15;
typedef struct {W8 f; W8 r;} W16;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {W8 f; W5 r;} W13;
typedef struct {W16 f; W13 r;} W29;
typedef struct {W16 f; W12 r;} W28;
typedef struct {W8 f; W3 r;} W11;
typedef struct {W16 f; W11 r;} W27;
typedef W27 *W27Pt;
typedef W28 *W28Pt;
typedef struct {W8 f; W2 r;} W10;
typedef W3 *W3Pt;
typedef W4 *W4Pt;
static float fc1 = 0.33;
static float fc2 = 33.0;
#define SOURCE(p, l) /* source p, l */
static float fc276 = 0.5;
static float fc283 = 1.0;
static float fc285 = 3.0;
static float fc290 = 2.0;
static float fc296 = 90.0;
static float fc300 = 6.0;
static float fc316 = 0.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc534 = 1.0e37;
#define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) )
static float fc650 = -1.0;
static void NoName←Q7620();
static void GGEventImplE←P0();
static void SelectEntireSlice←P60();
static void SelectSlice←P120();
static void UndoOne←P180();
static void BuildAHistoryTool←P240();
static void GetSelectedWrapRule←P300();
static word DoCheckWrapRule←P3588();
static void ShowWrapRule←P360();
static void SetOddWrap←P420();
static void SetNonZeroWrap←P480();
static void SetWrapSlice←P540();
static word DoSetWrap←P3696();
static void SetWrapAux←P600();
static word DoSetWrap←P3756();
static void GetSelectedOrientation←P660();
static word DoCheckOrientation←P3816();
static void ShowOrientation←P720();
static void OrientCW←P780();
static void OrientCCW←P840();
static void Reorient←P900();
static void OrientAux←P960();
static word DoOrient←P3924();
static void GetPt←P1020();
static void SetStraight←P1080();
static word MakeStraightAux←P3984();
static void SetArc←P1140();
static word MakeArcAux←P4044();
static void SetSnowflake←P1200();
static word MakeSnowflakeAux←P4104();
static void SetConic←P1260();
static word MakeConicAux←P4164();
static void SetConstraintType←P1320();
static void SetMakeConstrained←P1380();
static word DoConstrain←P4224();
static void ShowConstraintType←P1440();
static void SetBezier←P1500();
static word MakeBezierAux←P4332();
static word ForEachOutlineRun←P1560();
static word DoSaveSelections←P4392();
static word DoReplaceRuns←P4452();
static word DoRestoreSelections←P4512();
static void SetCurveAux←P1620();
static word RunOfSegs←P4620();
static void SetPatternAux←P1680();
static word RunOfSegs←P4728();
static void SetNaturalSpline←P1740();
static void SetBSpline←P1800();
static void SetSpline←P1860();
static word RunToSpline←P4836();
static void SelectMatchingCurve←P1920();
static word DoSelectMatching←P4992();
static void TiogaFillFromSelection←P1980();
static word CheckParent←P5292();
static void EditTiogaFill←P2040();
static void MakeViewer←P5400();
static word CheckParent←P5508();
static word CopyDocument←P2100();
static word CopyAction←P5664();
static void PrintStyleKind←P2160();
static void ScreenStyleKind←P2220();
static void SetStyleKind←P2280();
static word DoSetStyleKind←P5772();
static void ShowStyleKind←P2340();
static word CheckStyleKind←P5832();
static void SetNewlineFactor←P2400();
static word DoSetNewlineFactor←P5940();
static void ShowNewlineFactor←P2460();
static word CheckNewlineFactor←P6000();
static void ConvertTextToSplines←P2520();
static word ConvertToSplines←P6060();
static void RGBFromColor←P2580();
static void CreateColorWash←P2640();
static word NoName←Q7680();
static word NoName←Q7740();
static word FillSampleMap←P6312();
static void SetWash←P2700();
static word SetWashSlice←P6516();
static void UpdateCaretPosition←P2760();
static void CaretPositionFromSelection←P2820();
static word NoName←Q7800();
static void CaretAngleFromSelection←P2880();
static void ShowValuesOfCaret←P2940();
static void ShowCaretValues←P3000();
static void ShowAnchorValues←P3060();
static void GrabInputFocus←P3120();
static void SceneState←P3180();
static word DescendASlice←P6864();
static word CheckTrashed←P7032();
static word AddEmUp←P6924();
static void SceneBagState←P3240();
static word IsObsolete←P7092();
static word DescendAFeature←P7152();
static void DrawPolylines←P3300();
static void UserTraceOn←P3360();
static void UserTraceOff←P3420();
static void RegisterEventProcs←P3480();
static void NoName←Q7860();
static void NoName←Q7920();
static void NoName←Q7980();
static struct {unsigned f; char r[4];} string3 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"};
static struct {unsigned f; char r[4];} string5 = {65540, "\251\000\000"};
static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\100\310\000\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\004\003\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"};
static struct {unsigned f; char r[24];} string9 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"};
static struct {unsigned f; char r[16];} string10 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[44];} string11 = {2752556, "\260\006\005\146\151\162\163\164\257\300\015\277\004\146\300\034\367\146\045\112\114\005\004\162\145\163\164\214\257\300\015\277\004\146\300\034\367\146\045\112\114\261\000"};
static struct {unsigned f; char r[28];} string12 = {1572888, "\006\002\000\007\000\040\016\000\003\001\000\000\000\000\014\014\000\014\014\014\014\000\010\001\000\000\000"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\017\106\176\051\300\361\373\025\153\100\214\000\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\106\354\000\000"};
static struct {unsigned f; char r[8];} string15 = {262148, "\004\200@\034\000\000\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\050\000\000"};
static struct {unsigned f; char r[4];} string17 = {131074, "\004\007\000"};
static struct {unsigned f; char r[4];} string18 = {65540, "\256\000\000"};
static struct {unsigned f; char r[4];} string19 = {196612, "odd"};
static struct {unsigned f; char r[12];} string20 = {524300, "non-zero\000\000\000"};
static struct {unsigned f; char r[32];} string21 = {1900576, "ObjectChangedBoundBoxProvided\000\000"};
static struct {unsigned f; char r[80];} string22 = {5177424, "ShowOrientation failed: select at least one oriented object for ShowOrientation"};
static struct {unsigned f; char r[60];} string23 = {3801148, "ShowOrientation failed: multiple orientations are selected\000"};
static struct {unsigned f; char r[36];} string24 = {2228260, "ShowOrientation: orientation is %g\000"};
static struct {unsigned f; char r[4];} string25 = {131076, "cw\000"};
static struct {unsigned f; char r[4];} string26 = {196612, "ccw"};
static struct {unsigned f; char r[8];} string27 = {262152, "none\000\000\000"};
static struct {unsigned f; char r[72];} string28 = {4456520, "SetOrientation failed: select at least one object for SetOrientation\000\000\000"};
static struct {unsigned f; char r[8];} string29 = {393224, "Orient\000"};
static struct {unsigned f; char r[36];} string30 = {2162724, "SetOrientation: orientation is %g\000\000"};
static struct {unsigned f; char r[8];} string31 = {262152, "← cw\000\000\000"};
static struct {unsigned f; char r[8];} string32 = {327688, "← ccw\000\000"};
static struct {unsigned f; char r[12];} string33 = {524300, "reversed\000\000\000"};
static struct {unsigned f; char r[8];} string34 = {262152, "Line\000\000\000"};
static struct {unsigned f; char r[4];} string35 = {196612, "Arc"};
static struct {unsigned f; char r[28];} string36 = {1572892, "SetWrapRule: %g wrap set\000\000\000"};
static struct {unsigned f; char r[76];} string37 = {4849740, "SetConic failed: select a real number in [0.0 .. 1.0] for conic pointiness\000"};
static struct {unsigned f; char r[8];} string38 = {327688, "Conic\000\000"};
static struct {unsigned f; char r[12];} string39 = {524300, "Feedback\000\000\000"};
static struct {unsigned f; char r[8];} string40 = {393224, "length\000"};
static struct {unsigned f; char r[8];} string41 = {458760, "tangent"};
static struct {unsigned f; char r[8];} string42 = {262152, "Traj\000\000\000"};
static struct {unsigned f; char r[48];} string43 = {2949168, "SetConstraints: curve constrained to type: %g\000\000"};
static struct {unsigned f; char r[8];} string44 = {327688, "error\000\000"};
static struct {unsigned f; char r[16];} string45 = {851984, "Set wrap rule\000\000"};
static struct {unsigned f; char r[64];} string46 = {4128832, "SetWrapRule failed: select at least one outline for SetWrapRule"};
static struct {unsigned f; char r[48];} string47 = {2883632, "ShowConstraint: Bezier edit constraint is %g\000\000\000"};
static struct {unsigned f; char r[8];} string48 = {393224, "Bezier\000"};
static struct {unsigned f; char r[40];} string49 = {2555944, "SetCurveType failed: select some curves"};
static struct {unsigned f; char r[16];} string50 = {917520, "Set curve type\000"};
static struct {unsigned f; char r[36];} string51 = {2097188, "SetCurve: curves modified to %gs\000\000\000"};
static struct {unsigned f; char r[12];} string52 = {720908, "CubicSpline"};
static struct {unsigned f; char r[20];} string53 = {1048596, "Pattern modified\000\000\000"};
static struct {unsigned f; char r[44];} string54 = {2621484, "SetSplineType failed: select some curves\000\000\000"};
static struct {unsigned f; char r[16];} string55 = {983056, "Set spline type"};
static struct {unsigned f; char r[28];} string56 = {1769500, "MakeSpline: splines created"};
static struct {unsigned f; char r[8];} string57 = {458760, "Cluster"};
static struct {unsigned f; char r[48];} string58 = {3080240, "SelectMatchingCurve: curves of type %g selected"};
static struct {unsigned f; char r[20];} string59 = {1048596, "SelectionChanged\000\000\000"};
static struct {unsigned f; char r[88];} string60 = {5636184, "FillBoxesFromSelection failed: select exactly one leaf object (with boxes) for filling\000"};
static struct {unsigned f; char r[24];} string61 = {1441816, "FillBoxesFromSelection\000"};
static struct {unsigned f; char r[4];} string62 = {196612, "Box"};
static struct {unsigned f; char r[36];} string63 = {2162724, "FillBoxesFromSelection: completed\000\000"};
static struct {unsigned f; char r[80];} string64 = {4980816, "EditTiogaFill failed: select exactly one filled box object for EditTiogaFill\000\000\000"};
static struct {unsigned f; char r[40];} string65 = {2359336, "EditTiogaFill: Tioga document opened\000\000\000"};
static struct {unsigned f; char r[24];} string66 = {1310744, "ObjectChangedInPlace\000\000\000"};
static struct {unsigned f; char r[20];} string67 = {1114132, "TiogaFromGargoyle\000\000"};
static struct {unsigned f; char r[16];} string68 = {851984, "TiogaDocument\000\000"};
static struct {unsigned f; char r[60];} string69 = {3670076, "SetStyleKind failed: select some boxes to set style kind\000\000\000"};
static struct {unsigned f; char r[16];} string70 = {917520, "Set style kind\000"};
static struct {unsigned f; char r[36];} string71 = {2228260, "SetStyleKind: style kind set to %g\000"};
static struct {unsigned f; char r[8];} string72 = {393224, "screen\000"};
static struct {unsigned f; char r[8];} string73 = {327688, "print\000\000"};
static struct {unsigned f; char r[52];} string74 = {3276852, "ShowStyleKind failed: no boxes in selected objects\000"};
static struct {unsigned f; char r[56];} string75 = {3604536, "ShowStyleKind failed: multiple style kinds are selected"};
static struct {unsigned f; char r[24];} string76 = {1507352, "ShowStyleKind: %g style"};
static struct {unsigned f; char r[80];} string77 = {4980816, "SetNewlineFactor failed: select some text objects for setting newline factor\000\000\000"};
static struct {unsigned f; char r[56];} string78 = {3604536, "SetNewlineFactor failed: select a reasonable multiplier"};
static struct {unsigned f; char r[20];} string79 = {1179668, "Set newline factor\000"};
static struct {unsigned f; char r[8];} string80 = {262152, "Text\000\000\000"};
static struct {unsigned f; char r[44];} string81 = {2818092, "SetNewlineFactor: newline spacing set to %g"};
static struct {unsigned f; char r[52];} string82 = {3276852, "ShowNewlineFactor failed: no text objects selected\000"};
static struct {unsigned f; char r[56];} string83 = {3604536, "ShowNewlineFactor failed: multiple factors are selected"};
static struct {unsigned f; char r[24];} string84 = {1376280, "ShowNewlineFactor: %g\000\000"};
static struct {unsigned f; char r[64];} string85 = {3932224, "ConvertTextToSplines failed: select at least one text object\000\000\000"};
static struct {unsigned f; char r[16];} string86 = {983056, "Text to splines"};
static struct {unsigned f; char r[32];} string87 = {2031648, "ConvertTextToSplines: completed"};
static struct {unsigned f; char r[8];} string88 = {327688, "White\000\000"};
static struct {unsigned f; char r[8];} string89 = {327688, "Black\000\000"};
static struct {unsigned f; char r[12];} string90 = {589836, "ColorTool\000\000"};
static struct {unsigned f; char r[56];} string91 = {3604536, "SetColorWash failed: please install ColorTool and retry"};
static struct {unsigned f; char r[56];} string92 = {3604536, "SetColorWash failed: select at least one colored object"};
static struct {unsigned f; char r[12];} string93 = {655372, "Wash color\000"};
static struct {unsigned f; char r[40];} string94 = {2424872, "SetColorWash: fill color washed to %g\000\000"};
static struct {unsigned f; char r[72];} string95 = {4456520, "SetColorWash failed: select only shapes filled with a constant color\000\000\000"};
static struct {unsigned f; char r[16];} string96 = {851984, "non-zero wrap\000\000"};
static struct {unsigned f; char r[4];} string97 = {196612, "Set"};
static struct {unsigned f; char r[60];} string98 = {3670076, "SetColorWash failed: Imager ERROR during CreateColorWash\000\000\000"};
static struct {unsigned f; char r[20];} string99 = {1048596, "CaretMovedStatic\000\000\000"};
static struct {unsigned f; char r[92];} string100 = {5767260, "Set caret position failed: select a legal caret position [<x>, <y>] (including brackets)\000\000\000"};
static struct {unsigned f; char r[72];} string101 = {4653128, "Set caret angle failed: select a reasonable real number for caret angle"};
static struct {unsigned f; char r[60];} string102 = {3801148, "Set caret angle failed: caret required for set caret angle\000"};
static struct {unsigned f; char r[36];} string103 = {2097188, "%g position: [%g, %g], angle: %g\000\000\000"};
static struct {unsigned f; char r[12];} string104 = {524300, "odd wrap\000\000\000"};
static struct {unsigned f; char r[32];} string105 = {1900576, "ShowWrapRule: wrap rule is %g\000\000"};
static struct {unsigned f; char r[8];} string106 = {262152, "Show\000\000\000"};
static struct {unsigned f; char r[56];} string107 = {3473464, "ShowWrapRule failed: multiple wrap rules are selected\000\000"};
static struct {unsigned f; char r[16];} string108 = {851984, "Show%g: no %g\000\000"};
static struct {unsigned f; char r[8];} string109 = {327688, "Caret\000\000"};
static struct {unsigned f; char r[8];} string110 = {393224, "Anchor\000"};
static struct {unsigned f; char r[76];} string111 = {4915276, "Scene: %g objects, %g trashed objects, %g trashed children, %g leaf objects"};
static struct {unsigned f; char r[68];} string112 = {4259908, "ShowWrapRule failed: select at least one outline for ShowWrapRule\000\000"};
static struct {unsigned f; char r[120];} string113 = {7667832, "SceneBag: %g objects, %g obsolete outline descriptors, %g obsolete sequences, %g trashed objects, %g trashed children\000\000"};
static struct {unsigned f; char r[12];} string114 = {589836, "Complaint\000\000"};
static struct {unsigned f; char r[16];} string115 = {917520, "PaintPolylines\000"};
static struct {unsigned f; char r[28];} string116 = {1703964, "CaretPositionFromSelection\000"};
static struct {unsigned f; char r[24];} string117 = {1507352, "CaretAngleFromSelection"};
static struct {unsigned f; char r[16];} string118 = {983056, "ShowCaretValues"};
static struct {unsigned f; char r[20];} string119 = {1048596, "ShowAnchorValues\000\000\000"};
static struct {unsigned f; char r[16];} string120 = {917520, "GrabInputFocus\000"};
static struct {unsigned f; char r[12];} string121 = {655372, "SceneState\000"};
static struct {unsigned f; char r[16];} string122 = {851984, "SceneBagState\000\000"};
static struct {unsigned f; char r[16];} string123 = {851984, "DrawPolylines\000\000"};
static struct {unsigned f; char r[12];} string124 = {720908, "UserTraceOn"};
static struct {unsigned f; char r[16];} string125 = {786448, "UserTraceOff\000\000\000"};
static struct {unsigned f; char r[12];} string126 = {720908, "SetStraight"};
static struct {unsigned f; char r[8];} string127 = {393224, "SetArc\000"};
static struct {unsigned f; char r[16];} string128 = {786448, "SetSnowflake\000\000\000"};
static struct {unsigned f; char r[12];} string129 = {524300, "SetConic\000\000\000"};
static struct {unsigned f; char r[12];} string130 = {589836, "SetBezier\000\000"};
static struct {unsigned f; char r[20];} string131 = {1114132, "SetConstraintType\000\000"};
static struct {unsigned f; char r[20];} string132 = {1179668, "SetMakeConstrained\000"};
static struct {unsigned f; char r[20];} string133 = {1179668, "ShowConstraintType\000"};
static struct {unsigned f; char r[20];} string134 = {1048596, "SetNaturalSpline\000\000\000"};
static struct {unsigned f; char r[12];} string135 = {655372, "SetBSpline\000"};
static struct {unsigned f; char r[20];} string136 = {1245204, "SelectMatchingCurve"};
static struct {unsigned f; char r[12];} string137 = {524300, "OrientCW\000\000\000"};
static struct {unsigned f; char r[12];} string138 = {589836, "OrientCCW\000\000"};
static struct {unsigned f; char r[12];} string139 = {524300, "Reorient\000\000\000"};
static struct {unsigned f; char r[16];} string140 = {983056, "ShowOrientation"};
static struct {unsigned f; char r[12];} string141 = {655372, "SetOddWrap\000"};
static struct {unsigned f; char r[16];} string142 = {917520, "SetNonZeroWrap\000"};
static struct {unsigned f; char r[16];} string143 = {786448, "ShowWrapRule\000\000\000"};
static struct {unsigned f; char r[12];} string144 = {720908, "HistoryTool"};
static struct {unsigned f; char r[8];} string145 = {458760, "UndoOne"};
static struct {unsigned f; char r[24];} string146 = {1310744, "ConvertTextToSplines\000\000\000"};
static struct {unsigned f; char r[24];} string147 = {1441816, "TiogaFillFromSelection\000"};
static struct {unsigned f; char r[16];} string148 = {851984, "EditTiogaFill\000\000"};
static struct {unsigned f; char r[16];} string149 = {983056, "ScreenStyleKind"};
static struct {unsigned f; char r[16];} string150 = {917520, "PrintStyleKind\000"};
static struct {unsigned f; char r[16];} string151 = {851984, "ShowStyleKind\000\000"};
static struct {unsigned f; char r[20];} string152 = {1048596, "SetNewlineFactor\000\000\000"};
static struct {unsigned f; char r[20];} string153 = {1114132, "ShowNewlineFactor\000\000"};
static struct {unsigned f; char r[8];} string154 = {458760, "SetWash"};
static struct {unsigned f; char r[8];} string155 = {458760, "Outline"};
static struct {unsigned f; char r[16];} string156 = {851984, "\257\300\072\071\100\030\300\240\256\175\145\100\164\000\000"};
static struct {unsigned f; char r[12];} string157 = {655370, "\006\001\100\150\010\000\004\100\211\001\000"};
static struct {unsigned f; char r[16];} string158 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"};
static struct {unsigned f; char r[16];} string159 = {851984, "\257\300\207\224\334\150\300\367\303\105\360\100\150\000\000"};
static struct {unsigned f; char r[16];} string160 = {851984, "\257\300\355\261\315\203\300\373\164\347\341\100\150\000\000"};
static struct {unsigned f; char r[16];} string161 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"};
static struct {unsigned f; char r[16];} string162 = {851984, "\257\300\136\002\175\264\300\016\031\370\241\100\150\000\000"};
static struct {unsigned f; char r[16];} string163 = {851984, "\257\300\265\217\206\011\300\172\271\371\033\100\150\000\000"};
static struct {unsigned f; char r[16];} string164 = {851984, "\257\300\223\031\346\162\300\275\253\133\335\100\150\000\000"};
static struct {unsigned f; char r[16];} string165 = {851984, "\257\300\252\050\175\356\300\250\337\044\120\100\150\000\000"};
static struct {unsigned f; char r[16];} string166 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\150\000\000"};
static struct {unsigned f; char r[16];} string167 = {851984, "\257\300\301\241\007\150\300\032\111\265\237\100\150\000\000"};
static struct {unsigned f; char r[16];} string168 = {851984, "\257\300\236\155\220\261\300\040\017\026\014\100\150\000\000"};
static struct {unsigned f; char r[16];} string169 = {851984, "\257\300\207\142\037\125\300\254\056\012\025\100\150\000\000"};
static struct {unsigned f; char r[16];} string170 = {851984, "\257\300\347\101\365\007\300\150\102\366\020\100\150\000\000"};
static struct {unsigned f; char r[16];} string171 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\150\000\000"};
static struct {unsigned f; char r[16];} string172 = {851984, "\257\300\011\245\206\305\300\112\326\356\245\100\150\000\000"};
static struct {unsigned f; char r[16];} string173 = {851984, "\257\300\261\002\056\176\300\055\321\222\125\100\150\000\000"};
static struct {unsigned f; char r[16];} string174 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"};
static struct {unsigned f; char r[16];} string175 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string176 = {851984, "\257\300\206\055\004\241\300\261\334\001\116\100\150\000\000"};
static struct {unsigned f; char r[16];} string177 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"};
static struct {unsigned f; char r[16];} string178 = {851984, "\257\300\355\324\264\170\300\276\334\312\210\100\150\000\000"};
static struct {unsigned f; char r[16];} string179 = {851984, "\257\300\370\132\042\205\300\045\133\011\125\100\150\000\000"};
static struct {unsigned f; char r[16];} string180 = {851984, "\257\300\144\143\124\312\300\122\224\357\133\100\150\000\000"};
static struct {unsigned f; char r[16];} string181 = {851984, "\257\300\356\024\243\250\300\175\157\203\227\100\150\000\000"};
static struct {unsigned f; char r[16];} string182 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string183 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"};
static struct {unsigned f; char r[16];} string184 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\150\000\000"};
static struct {unsigned f; char r[16];} string185 = {851984, "\257\300\230\052\311\306\300\242\375\035\324\100\150\000\000"};
static struct {unsigned f; char r[16];} string186 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"};
static struct {unsigned f; char r[16];} string187 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string188 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string189 = {851984, "\257\300\234\060\361\073\300\103\025\207\123\100\150\000\000"};
static struct {unsigned f; char r[16];} string190 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string191 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string192 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string193 = {851984, "\257\300\042\224\360\026\300\243\254\175\360\100\150\000\000"};
static struct {unsigned f; char r[16];} string194 = {851984, "\257\300\056\236\052\251\300\206\175\213\250\100\150\000\000"};
static struct {unsigned f; char r[16];} string195 = {851984, "\257\300\160\267\337\115\300\374\200\221\327\100\150\000\000"};
static struct {unsigned f; char r[16];} string196 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"};
static struct {unsigned f; char r[16];} string197 = {851984, "\257\300\354\332\367\333\300\361\203\205\173\100\150\000\000"};
static struct {unsigned f; char r[16];} string198 = {851984, "\257\300\045\005\337\143\300\252\356\334\244\100\150\000\000"};
static struct {unsigned f; char r[16];} string199 = {851984, "\257\300\003\033\274\104\300\263\246\312\006\100\150\000\000"};
static struct {unsigned f; char r[16];} string200 = {851984, "\257\300\252\043\023\037\300\070\056\113\065\100\150\000\000"};
static struct {unsigned f; char r[12];} string201 = {1214870388, "oryToolObj"};
static struct {unsigned f; char r[28];} string202 = {1769500, "\211\017\016HistoryToolObj\300\252#\023\037\3008.K5"};
static struct {unsigned f; char r[16];} string203 = {851984, "\257\300\252\050\175\356\300\250\337\044\120\100\164\000\000"};
static struct {unsigned f; char r[4];} string204 = {131074, "\004\017\000"};
static struct {unsigned f; char r[16];} string205 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\150\000\000"};
static struct {unsigned f; char r[28];} string206 = {1572892, "\211\014\013\104\162\141\147\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003\000\000\000"};
static struct {unsigned f; char r[16];} string207 = {851984, "\257\300\333\030\273\126\300\173\036\033\131\100\200\000\000"};
static struct {unsigned f; char r[20];} string208 = {1114129, "\006\006\050\001\054\001\060\001\064\001\100\100\001\100\110\004\030\000\000"};
static struct {unsigned f; char r[28];} string209 = {1769500, "\211\017\016\122\145\146\162\145\163\150\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003"};
static struct {unsigned f; char r[16];} string210 = {851984, "\257\300\026\355\016\312\300\171\207\041\370\100\200\000\000"};
static struct {unsigned f; char r[44];} string211 = {2752554, "\006\020\000\001\014\001\020\001\024\001\030\001\034\001\070\001\074\001\100\100\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\144\001\000"};
static struct {
   word f0[324]; 
   } globalframe = {
   {0}
   };

static void NoName←Q7620()
   {
   register ptr gf←c0768 =  (ptr) &globalframe;
   word var←c89864;
   (* (( (ptr) gf←c0768)+4)/* gScale←v7256 */  ) = (*  (ptr) &fc1 );
   (* (( (ptr) gf←c0768)+5)/* gAngle←v7284 */  ) = (*  (ptr) &fc2 );
   (* (( (ptr) gf←c0768)+279) ) = ( ((word)  (fPt) GGEventImplE←P0) );
   (* (( (ptr) gf←c0768)+277) ) = ( ((word)  (fPt) SelectEntireSlice←P60) );
   (* (( (ptr) gf←c0768)+275) ) = ( ((word)  (fPt) SelectSlice←P120) );
   (* (( (ptr) gf←c0768)+273) ) = ( ((word)  (fPt) UndoOne←P180) );
   (* (( (ptr) gf←c0768)+271) ) = ( ((word)  (fPt) BuildAHistoryTool←P240) );
   (* (( (ptr) gf←c0768)+269) ) = ( ((word)  (fPt) GetSelectedWrapRule←P300) );
   (* (( (ptr) gf←c0768)+267) ) = ( ((word)  (fPt) ShowWrapRule←P360) );
   (* (( (ptr) gf←c0768)+265) ) = ( ((word)  (fPt) SetOddWrap←P420) );
   (* (( (ptr) gf←c0768)+263) ) = ( ((word)  (fPt) SetNonZeroWrap←P480) );
   (* (( (ptr) gf←c0768)+261) ) = ( ((word)  (fPt) SetWrapSlice←P540) );
   (* (( (ptr) gf←c0768)+259) ) = ( ((word)  (fPt) SetWrapAux←P600) );
   (* (( (ptr) gf←c0768)+257) ) = ( ((word)  (fPt) GetSelectedOrientation←P660) );
   (* (( (ptr) gf←c0768)+255) ) = ( ((word)  (fPt) ShowOrientation←P720) );
   (* (( (ptr) gf←c0768)+253) ) = ( ((word)  (fPt) OrientCW←P780) );
   (* (( (ptr) gf←c0768)+251) ) = ( ((word)  (fPt) OrientCCW←P840) );
   (* (( (ptr) gf←c0768)+249) ) = ( ((word)  (fPt) Reorient←P900) );
   (* (( (ptr) gf←c0768)+247) ) = ( ((word)  (fPt) OrientAux←P960) );
   (* (( (ptr) gf←c0768)+245) ) = ( ((word)  (fPt) GetPt←P1020) );
   (* (( (ptr) gf←c0768)+243) ) = ( ((word)  (fPt) SetStraight←P1080) );
   (* (( (ptr) gf←c0768)+241) ) = ( ((word)  (fPt) SetArc←P1140) );
   (* (( (ptr) gf←c0768)+239) ) = ( ((word)  (fPt) SetSnowflake←P1200) );
   (* (( (ptr) gf←c0768)+237) ) = ( ((word)  (fPt) SetConic←P1260) );
   (* (( (ptr) gf←c0768)+235) ) = ( ((word)  (fPt) SetConstraintType←P1320) );
   (* (( (ptr) gf←c0768)+233) ) = ( ((word)  (fPt) SetMakeConstrained←P1380) );
   (* (( (ptr) gf←c0768)+231) ) = ( ((word)  (fPt) ShowConstraintType←P1440) );
   (* (( (ptr) gf←c0768)+229) ) = ( ((word)  (fPt) SetBezier←P1500) );
   (* (( (ptr) gf←c0768)+227) ) = ( ((word)  (fPt) ForEachOutlineRun←P1560) );
   (* (( (ptr) gf←c0768)+225) ) = ( ((word)  (fPt) SetCurveAux←P1620) );
   (* (( (ptr) gf←c0768)+223) ) = ( ((word)  (fPt) SetPatternAux←P1680) );
   (* (( (ptr) gf←c0768)+221) ) = ( ((word)  (fPt) SetNaturalSpline←P1740) );
   (* (( (ptr) gf←c0768)+219) ) = ( ((word)  (fPt) SetBSpline←P1800) );
   (* (( (ptr) gf←c0768)+217) ) = ( ((word)  (fPt) SetSpline←P1860) );
   (* (( (ptr) gf←c0768)+215) ) = ( ((word)  (fPt) SelectMatchingCurve←P1920) );
   (* (( (ptr) gf←c0768)+213) ) = ( ((word)  (fPt) TiogaFillFromSelection←P1980) );
   (* (( (ptr) gf←c0768)+211) ) = ( ((word)  (fPt) EditTiogaFill←P2040) );
   (* (( (ptr) gf←c0768)+209) ) = ( ((word)  (fPt) CopyDocument←P2100) );
   (* (( (ptr) gf←c0768)+207) ) = ( ((word)  (fPt) PrintStyleKind←P2160) );
   (* (( (ptr) gf←c0768)+205) ) = ( ((word)  (fPt) ScreenStyleKind←P2220) );
   (* (( (ptr) gf←c0768)+203) ) = ( ((word)  (fPt) SetStyleKind←P2280) );
   (* (( (ptr) gf←c0768)+201) ) = ( ((word)  (fPt) ShowStyleKind←P2340) );
   (* (( (ptr) gf←c0768)+199) ) = ( ((word)  (fPt) SetNewlineFactor←P2400) );
   (* (( (ptr) gf←c0768)+197) ) = ( ((word)  (fPt) ShowNewlineFactor←P2460) );
   (* (( (ptr) gf←c0768)+195) ) = ( ((word)  (fPt) ConvertTextToSplines←P2520) );
   (* (( (ptr) gf←c0768)+193) ) = ( ((word)  (fPt) RGBFromColor←P2580) );
   (* (( (ptr) gf←c0768)+191) ) = ( ((word)  (fPt) CreateColorWash←P2640) );
   (* (( (ptr) gf←c0768)+189) ) = ( ((word)  (fPt) SetWash←P2700) );
   (* (( (ptr) gf←c0768)+187) ) = ( ((word)  (fPt) UpdateCaretPosition←P2760) );
   (* (( (ptr) gf←c0768)+185) ) = ( ((word)  (fPt) CaretPositionFromSelection←P2820) );
   (* (( (ptr) gf←c0768)+183) ) = ( ((word)  (fPt) CaretAngleFromSelection←P2880) );
   (* (( (ptr) gf←c0768)+181) ) = ( ((word)  (fPt) ShowValuesOfCaret←P2940) );
   (* (( (ptr) gf←c0768)+179) ) = ( ((word)  (fPt) ShowCaretValues←P3000) );
   (* (( (ptr) gf←c0768)+177) ) = ( ((word)  (fPt) ShowAnchorValues←P3060) );
   (* (( (ptr) gf←c0768)+175) ) = ( ((word)  (fPt) GrabInputFocus←P3120) );
   (* (( (ptr) gf←c0768)+173) ) = ( ((word)  (fPt) SceneState←P3180) );
   (* (( (ptr) gf←c0768)+171) ) = ( ((word)  (fPt) SceneBagState←P3240) );
   (* (( (ptr) gf←c0768)+169) ) = ( ((word)  (fPt) DrawPolylines←P3300) );
   (* (( (ptr) gf←c0768)+167) ) = ( ((word)  (fPt) UserTraceOn←P3360) );
   (* (( (ptr) gf←c0768)+165) ) = ( ((word)  (fPt) UserTraceOff←P3420) );
   (* (( (ptr) gf←c0768)+163) ) = ( ((word)  (fPt) RegisterEventProcs←P3480) );
   (* (( (ptr) gf←c0768)+9) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (* (( (ptr) gf←c0768)+11) ) = (word) XR←GetTypeIndexS((word) (&string5));
   (* (( (ptr) gf←c0768)+12) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
   (* (( (ptr) gf←c0768)+13) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
   (* (( (ptr) gf←c0768)+14) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string4);
   (* (( (ptr) gf←c0768)+19) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
   (* (( (ptr) gf←c0768)+21) ) = (word) XR←GetTypeIndexS((word) (&string13));
   (* (( (ptr) gf←c0768)+22) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15);
   (* (( (ptr) gf←c0768)+23) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17);
   (* (( (ptr) gf←c0768)+25) ) = (word) XR←GetTypeIndexS((word) (&string18));
   (*  (ptr) (( (bPt) gf←c0768)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string19);
   (*  (ptr) (( (bPt) gf←c0768)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string20);
   (*  (ptr) (( (bPt) gf←c0768)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string21);
   (*  (ptr) (( (bPt) gf←c0768)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string22);
   (*  (ptr) (( (bPt) gf←c0768)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string23);
   (*  (ptr) (( (bPt) gf←c0768)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string24);
   (*  (ptr) (( (bPt) gf←c0768)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string25);
   (*  (ptr) (( (bPt) gf←c0768)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string26);
   (*  (ptr) (( (bPt) gf←c0768)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string27);
   (*  (ptr) (( (bPt) gf←c0768)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string28);
   (*  (ptr) (( (bPt) gf←c0768)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string29);
   (*  (ptr) (( (bPt) gf←c0768)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string30);
   (*  (ptr) (( (bPt) gf←c0768)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string31);
   (*  (ptr) (( (bPt) gf←c0768)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string32);
   (*  (ptr) (( (bPt) gf←c0768)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string33);
   (*  (ptr) (( (bPt) gf←c0768)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string34);
   (*  (ptr) (( (bPt) gf←c0768)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string35);
   (*  (ptr) (( (bPt) gf←c0768)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string36);
   (*  (ptr) (( (bPt) gf←c0768)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string37);
   (*  (ptr) (( (bPt) gf←c0768)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string38);
   (*  (ptr) (( (bPt) gf←c0768)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string39);
   (*  (ptr) (( (bPt) gf←c0768)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string40);
   (*  (ptr) (( (bPt) gf←c0768)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string41);
   (*  (ptr) (( (bPt) gf←c0768)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string42);
   (*  (ptr) (( (bPt) gf←c0768)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string43);
   (*  (ptr) (( (bPt) gf←c0768)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string44);
   (*  (ptr) (( (bPt) gf←c0768)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string45);
   (*  (ptr) (( (bPt) gf←c0768)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string46);
   (*  (ptr) (( (bPt) gf←c0768)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string47);
   (*  (ptr) (( (bPt) gf←c0768)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string48);
   (*  (ptr) (( (bPt) gf←c0768)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string49);
   (*  (ptr) (( (bPt) gf←c0768)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string50);
   (*  (ptr) (( (bPt) gf←c0768)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string51);
   (*  (ptr) (( (bPt) gf←c0768)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string52);
   (*  (ptr) (( (bPt) gf←c0768)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string53);
   (*  (ptr) (( (bPt) gf←c0768)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string54);
   (*  (ptr) (( (bPt) gf←c0768)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string55);
   (*  (ptr) (( (bPt) gf←c0768)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string56);
   (*  (ptr) (( (bPt) gf←c0768)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string57);
   (*  (ptr) (( (bPt) gf←c0768)+260) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string58);
   (*  (ptr) (( (bPt) gf←c0768)+264) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string59);
   (*  (ptr) (( (bPt) gf←c0768)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string60);
   (*  (ptr) (( (bPt) gf←c0768)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string61);
   (*  (ptr) (( (bPt) gf←c0768)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string62);
   (*  (ptr) (( (bPt) gf←c0768)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string63);
   (*  (ptr) (( (bPt) gf←c0768)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string64);
   (*  (ptr) (( (bPt) gf←c0768)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string65);
   (*  (ptr) (( (bPt) gf←c0768)+292) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string66);
   (*  (ptr) (( (bPt) gf←c0768)+296) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string67);
   (*  (ptr) (( (bPt) gf←c0768)+300) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string68);
   (*  (ptr) (( (bPt) gf←c0768)+304) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string69);
   (*  (ptr) (( (bPt) gf←c0768)+308) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string70);
   (*  (ptr) (( (bPt) gf←c0768)+312) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string71);
   (*  (ptr) (( (bPt) gf←c0768)+316) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string72);
   (*  (ptr) (( (bPt) gf←c0768)+320) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string73);
   (*  (ptr) (( (bPt) gf←c0768)+324) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string74);
   (*  (ptr) (( (bPt) gf←c0768)+328) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string75);
   (*  (ptr) (( (bPt) gf←c0768)+332) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string76);
   (*  (ptr) (( (bPt) gf←c0768)+336) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string77);
   (*  (ptr) (( (bPt) gf←c0768)+340) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string78);
   (*  (ptr) (( (bPt) gf←c0768)+344) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string79);
   (*  (ptr) (( (bPt) gf←c0768)+348) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string80);
   (*  (ptr) (( (bPt) gf←c0768)+352) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string81);
   (*  (ptr) (( (bPt) gf←c0768)+356) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string82);
   (*  (ptr) (( (bPt) gf←c0768)+360) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string83);
   (*  (ptr) (( (bPt) gf←c0768)+364) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string84);
   (*  (ptr) (( (bPt) gf←c0768)+368) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string85);
   (*  (ptr) (( (bPt) gf←c0768)+372) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string86);
   (*  (ptr) (( (bPt) gf←c0768)+376) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string87);
   (*  (ptr) (( (bPt) gf←c0768)+380) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string88);
   (*  (ptr) (( (bPt) gf←c0768)+384) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string89);
   (*  (ptr) (( (bPt) gf←c0768)+388) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string90);
   (*  (ptr) (( (bPt) gf←c0768)+392) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string91);
   (*  (ptr) (( (bPt) gf←c0768)+396) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string92);
   (*  (ptr) (( (bPt) gf←c0768)+400) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string93);
   (*  (ptr) (( (bPt) gf←c0768)+404) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string94);
   (*  (ptr) (( (bPt) gf←c0768)+408) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string95);
   (*  (ptr) (( (bPt) gf←c0768)+412) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string96);
   (*  (ptr) (( (bPt) gf←c0768)+416) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string97);
   (*  (ptr) (( (bPt) gf←c0768)+420) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string98);
   (*  (ptr) (( (bPt) gf←c0768)+424) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string99);
   (*  (ptr) (( (bPt) gf←c0768)+428) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string100);
   (*  (ptr) (( (bPt) gf←c0768)+432) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string101);
   (*  (ptr) (( (bPt) gf←c0768)+436) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string102);
   (*  (ptr) (( (bPt) gf←c0768)+440) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string103);
   (*  (ptr) (( (bPt) gf←c0768)+444) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string104);
   (*  (ptr) (( (bPt) gf←c0768)+448) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string105);
   (*  (ptr) (( (bPt) gf←c0768)+452) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string106);
   (*  (ptr) (( (bPt) gf←c0768)+456) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string107);
   (*  (ptr) (( (bPt) gf←c0768)+460) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string108);
   (*  (ptr) (( (bPt) gf←c0768)+464) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string109);
   (*  (ptr) (( (bPt) gf←c0768)+468) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string110);
   (*  (ptr) (( (bPt) gf←c0768)+472) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string111);
   (*  (ptr) (( (bPt) gf←c0768)+476) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string112);
   (*  (ptr) (( (bPt) gf←c0768)+480) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+14) ), (word) &string113);
   (*  (ptr) (( (bPt) gf←c0768)+484) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string114);
   (*  (ptr) (( (bPt) gf←c0768)+488) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string115);
   (*  (ptr) (( (bPt) gf←c0768)+492) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string116);
   (*  (ptr) (( (bPt) gf←c0768)+496) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string117);
   (*  (ptr) (( (bPt) gf←c0768)+500) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string118);
   (*  (ptr) (( (bPt) gf←c0768)+504) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string119);
   (*  (ptr) (( (bPt) gf←c0768)+508) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string120);
   (*  (ptr) (( (bPt) gf←c0768)+512) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string121);
   (*  (ptr) (( (bPt) gf←c0768)+516) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string122);
   (*  (ptr) (( (bPt) gf←c0768)+520) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string123);
   (*  (ptr) (( (bPt) gf←c0768)+524) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string124);
   (*  (ptr) (( (bPt) gf←c0768)+528) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string125);
   (*  (ptr) (( (bPt) gf←c0768)+532) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string126);
   (*  (ptr) (( (bPt) gf←c0768)+536) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string127);
   (*  (ptr) (( (bPt) gf←c0768)+540) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string128);
   (*  (ptr) (( (bPt) gf←c0768)+544) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string129);
   (*  (ptr) (( (bPt) gf←c0768)+548) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string130);
   (*  (ptr) (( (bPt) gf←c0768)+552) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string131);
   (*  (ptr) (( (bPt) gf←c0768)+556) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string132);
   (*  (ptr) (( (bPt) gf←c0768)+560) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string133);
   (*  (ptr) (( (bPt) gf←c0768)+564) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string134);
   (*  (ptr) (( (bPt) gf←c0768)+568) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string135);
   (*  (ptr) (( (bPt) gf←c0768)+572) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string136);
   (*  (ptr) (( (bPt) gf←c0768)+576) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string137);
   (*  (ptr) (( (bPt) gf←c0768)+580) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string138);
   (*  (ptr) (( (bPt) gf←c0768)+584) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string139);
   (*  (ptr) (( (bPt) gf←c0768)+588) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string140);
   (*  (ptr) (( (bPt) gf←c0768)+592) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string141);
   (*  (ptr) (( (bPt) gf←c0768)+596) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string142);
   (*  (ptr) (( (bPt) gf←c0768)+600) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string143);
   (*  (ptr) (( (bPt) gf←c0768)+604) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string144);
   (*  (ptr) (( (bPt) gf←c0768)+608) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string145);
   (*  (ptr) (( (bPt) gf←c0768)+612) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string146);
   (*  (ptr) (( (bPt) gf←c0768)+616) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string147);
   (*  (ptr) (( (bPt) gf←c0768)+620) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string148);
   (*  (ptr) (( (bPt) gf←c0768)+624) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string149);
   (*  (ptr) (( (bPt) gf←c0768)+628) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string150);
   (*  (ptr) (( (bPt) gf←c0768)+632) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string151);
   (*  (ptr) (( (bPt) gf←c0768)+636) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string152);
   (*  (ptr) (( (bPt) gf←c0768)+640) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string153);
   (*  (ptr) (( (bPt) gf←c0768)+644) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string154);
   (*  (ptr) (( (bPt) gf←c0768)+648) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0768)+9) ), (word) &string155);
   (void) XR←DeclareGlobalFrame((word) "GGEventImplE", &globalframe, (word) XR←GetTypeIndex((word) &string156, 0, (word) &string157)
      , (word) (( (bPt) gf←c0768)+1116)/* var←c82728 */ );
   var←c89864 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string158)), 16);
   (* (( (ptr) gf←c0768)+300)/* var←c85480 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67372289);
   var←c89864 = (word) XR←ImportInterface((word) "ColorTool", (word) XR←GetTypeIndexS((word) (&string159)), 10);
   (* (( (ptr) gf←c0768)+313)/* var←c88232 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67372289);
   var←c89864 = (word) XR←ImportInterface((word) "EditSpanSupport", (word) XR←GetTypeIndexS((word) (&string160)), 27);
   (* (( (ptr) gf←c0768)+307)/* var←c87144 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 269487361);
   var←c89864 = (word) XR←ImportInterface((word) "Feedback", (word) XR←GetTypeIndexS((word) (&string161)), 25);
   (* (( (ptr) gf←c0768)+287)/* var←c83016 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1313029);
   (void) XR←ImportProcS(var←c89864, 1575429);
   (void) XR←ImportProcS(var←c89864, 1050628);
   var←c89864 = (word) XR←ImportInterface((word) "GGAlign", (word) XR←GetTypeIndexS((word) (&string162)), 46);
   (* (( (ptr) gf←c0768)+320)/* var←c89672 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 525570);
   var←c89864 = (word) XR←ImportInterface((word) "GGBoundBox", (word) XR←GetTypeIndexS((word) (&string163)), 24);
   (* (( (ptr) gf←c0768)+298)/* var←c85320 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 526850);
   var←c89864 = (word) XR←ImportInterface((word) "GGCaret", (word) XR←GetTypeIndexS((word) (&string164)), 13);
   (* (( (ptr) gf←c0768)+299)/* var←c85416 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 134482945);
   (void) XR←ImportProcS(var←c89864, 134482689);
   (void) XR←ImportProcS(var←c89864, 67371777);
   (void) XR←ImportProcS(var←c89864, 1574916);
   (void) XR←ImportProcS(var←c89864, 525570);
   (void) XR←ImportProcS(var←c89864, 264449);
   var←c89864 = (word) XR←ImportInterface((word) "GGHistory", (word) XR←GetTypeIndexS((word) (&string165)), 20);
   (* (( (ptr) gf←c0768)+284)/* var←c82856 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67633154);
   (void) XR←ImportProcS(var←c89864, 262657);
   (void) XR←ImportProcS(var←c89864, 525058);
   (void) XR←ImportProcS(var←c89864, 67637506);
   (void) XR←ImportProcS(var←c89864, 526338);
   var←c89864 = (word) XR←ImportInterface((word) "GGOutline", (word) XR←GetTypeIndexS((word) (&string166)), 19);
   (* (( (ptr) gf←c0768)+286)/* var←c82984 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1050628);
   (void) XR←ImportProcS(var←c89864, 68158724);
   (void) XR←ImportProcS(var←c89864, 525826);
   (void) XR←ImportProcS(var←c89864, 67372801);
   var←c89864 = (word) XR←ImportInterface((word) "GGParent", (word) XR←GetTypeIndexS((word) (&string167)), 83);
   (* (( (ptr) gf←c0768)+288)/* var←c83176 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67913475);
   (void) XR←ImportProcS(var←c89864, 68175876);
   (void) XR←ImportProcS(var←c89864, 68175108);
   (void) XR←ImportProcS(var←c89864, 67649026);
   (void) XR←ImportProcS(var←c89864, 67386369);
   (void) XR←ImportProcS(var←c89864, 68437509);
   var←c89864 = (word) XR←ImportInterface((word) "GGParseIn", (word) XR←GetTypeIndexS((word) (&string168)), 26);
   (* (( (ptr) gf←c0768)+318)/* var←c88840 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 134483713);
   var←c89864 = (word) XR←ImportInterface((word) "GGRefresh", (word) XR←GetTypeIndexS((word) (&string169)), 30);
   (* (( (ptr) gf←c0768)+289)/* var←c83304 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 788227);
   (void) XR←ImportProcS(var←c89864, 264193);
   (void) XR←ImportProcS(var←c89864, 2622986);
   var←c89864 = (word) XR←ImportInterface((word) "GGScene", (word) XR←GetTypeIndexS((word) (&string170)), 50);
   (* (( (ptr) gf←c0768)+285)/* var←c82952 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 787971);
   (void) XR←ImportProcS(var←c89864, 68165892);
   (void) XR←ImportProcS(var←c89864, 787715);
   (void) XR←ImportProcS(var←c89864, 526594);
   (void) XR←ImportProcS(var←c89864, 67637506);
   (void) XR←ImportProcS(var←c89864, 67379969);
   (void) XR←ImportProcS(var←c89864, 68164356);
   (void) XR←ImportProcS(var←c89864, 67905795);
   (void) XR←ImportProcS(var←c89864, 68165636);
   (void) XR←ImportProcS(var←c89864, 68426757);
   var←c89864 = (word) XR←ImportInterface((word) "GGSegment", (word) XR←GetTypeIndexS((word) (&string171)), 47);
   (* (( (ptr) gf←c0768)+292)/* var←c83944 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 527874);
   (void) XR←ImportProcS(var←c89864, 67896579);
   (void) XR←ImportProcS(var←c89864, 67374337);
   (void) XR←ImportProcS(var←c89864, 69468677);
   (void) XR←ImportProcS(var←c89864, 69206789);
   (void) XR←ImportProcS(var←c89864, 68944900);
   (void) XR←ImportProcS(var←c89864, 68419843);
   var←c89864 = (word) XR←ImportInterface((word) "GGSelect", (word) XR←GetTypeIndexS((word) (&string172)), 23);
   (* (( (ptr) gf←c0768)+281)/* var←c82760 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 526594);
   (void) XR←ImportProcS(var←c89864, 791043);
   (void) XR←ImportProcS(var←c89864, 525570);
   (void) XR←ImportProcS(var←c89864, 525314);
   (void) XR←ImportProcS(var←c89864, 67636994);
   (void) XR←ImportProcS(var←c89864, 786947);
   (void) XR←ImportProcS(var←c89864, 786691);
   var←c89864 = (word) XR←ImportInterface((word) "GGSequence", (word) XR←GetTypeIndexS((word) (&string173)), 58);
   (* (( (ptr) gf←c0768)+296)/* var←c84712 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67634434);
   (void) XR←ImportProcS(var←c89864, 134490881);
   (void) XR←ImportProcS(var←c89864, 67380225);
   (void) XR←ImportProcS(var←c89864, 67643650);
   (void) XR←ImportProcS(var←c89864, 67376641);
   (void) XR←ImportProcS(var←c89864, 67381761);
   (void) XR←ImportProcS(var←c89864, 67642882);
   (void) XR←ImportProcS(var←c89864, 201600769);
   (void) XR←ImportProcS(var←c89864, 67644418);
   (void) XR←ImportProcS(var←c89864, 67385601);
   (void) XR←ImportProcS(var←c89864, 67383553);
   var←c89864 = (word) XR←ImportInterface((word) "GGSlice", (word) XR←GetTypeIndexS((word) (&string174)), 128);
   (* (( (ptr) gf←c0768)+297)/* var←c85224 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 788483);
   (void) XR←ImportProcS(var←c89864, 134489601);
   (void) XR←ImportProcS(var←c89864, 67379969);
   (void) XR←ImportProcS(var←c89864, 795651);
   (void) XR←ImportProcS(var←c89864, 201600001);
   (void) XR←ImportProcS(var←c89864, 1321732);
   (void) XR←ImportProcS(var←c89864, 67634178);
   (void) XR←ImportProcS(var←c89864, 788227);
   (void) XR←ImportProcS(var←c89864, 67635458);
   var←c89864 = (word) XR←ImportInterface((word) "GGSliceOps", (word) XR←GetTypeIndexS((word) (&string175)), 73);
   (* (( (ptr) gf←c0768)+283)/* var←c82824 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1325317);
   (void) XR←ImportProcS(var←c89864, 67634434);
   (void) XR←ImportProcS(var←c89864, 134756866);
   (void) XR←ImportProcS(var←c89864, 1062148);
   (void) XR←ImportProcS(var←c89864, 67633922);
   (void) XR←ImportProcS(var←c89864, 68173572);
   (void) XR←ImportProcS(var←c89864, 134758402);
   (void) XR←ImportProcS(var←c89864, 67371521);
   (void) XR←ImportProcS(var←c89864, 67901699);
   var←c89864 = (word) XR←ImportInterface((word) "GGState", (word) XR←GetTypeIndexS((word) (&string176)), 119);
   (* (( (ptr) gf←c0768)+282)/* var←c82792 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 290049);
   (void) XR←ImportProcS(var←c89864, 67395073);
   (void) XR←ImportProcS(var←c89864, 67371521);
   (void) XR←ImportProcS(var←c89864, 67398145);
   (void) XR←ImportProcS(var←c89864, 549122);
   (void) XR←ImportProcS(var←c89864, 67395585);
   (void) XR←ImportProcS(var←c89864, 550146);
   var←c89864 = (word) XR←ImportInterface((word) "GGTraj", (word) XR←GetTypeIndexS((word) (&string177)), 55);
   (* (( (ptr) gf←c0768)+294)/* var←c84296 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67379969);
   (void) XR←ImportProcS(var←c89864, 1050884);
   (void) XR←ImportProcS(var←c89864, 1050628);
   (void) XR←ImportProcS(var←c89864, 67633153);
   (void) XR←ImportProcS(var←c89864, 68163332);
   (void) XR←ImportProcS(var←c89864, 67900931);
   (void) XR←ImportProcS(var←c89864, 68157956);
   var←c89864 = (word) XR←ImportInterface((word) "GGUserInput", (word) XR←GetTypeIndexS((word) (&string178)), 13);
   (* (( (ptr) gf←c0768)+321)/* var←c89832 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1312261);
   (void) XR←ImportProcS(var←c89864, 264705);
   var←c89864 = (word) XR←ImportInterface((word) "GGUtility", (word) XR←GetTypeIndexS((word) (&string179)), 42);
   (* (( (ptr) gf←c0768)+309)/* var←c87848 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 135008515);
   (void) XR←ImportProcS(var←c89864, 134221824);
   (void) XR←ImportProcS(var←c89864, 67637762);
   var←c89864 = (word) XR←ImportInterface((word) "GGViewerOps", (word) XR←GetTypeIndexS((word) (&string180)), 8);
   (* (( (ptr) gf←c0768)+301)/* var←c86376 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67108864);
   var←c89864 = (word) XR←ImportInterface((word) "GGWindow", (word) XR←GetTypeIndexS((word) (&string181)), 12);
   (* (( (ptr) gf←c0768)+290)/* var←c83368 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 262657);
   (void) XR←ImportProcS(var←c89864, 1572870);
   var←c89864 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string182)), 84);
   (* (( (ptr) gf←c0768)+311)/* var←c88104 */  ) = var←c89864;
   var←c89864 = (word) XR←ImportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string183)), 32);
   (* (( (ptr) gf←c0768)+310)/* var←c88008 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 68161284);
   (void) XR←ImportProcS(var←c89864, 67896835);
   (void) XR←ImportProcS(var←c89864, 67372033);
   (void) XR←ImportProcS(var←c89864, 201592321);
   var←c89864 = (word) XR←ImportInterface((word) "ImagerPixel", (word) XR←GetTypeIndexS((word) (&string184)), 9);
   (* (( (ptr) gf←c0768)+314)/* var←c88264 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 68420869);
   var←c89864 = (word) XR←ImportInterface((word) "ImagerPixelArray", (word) XR←GetTypeIndexS((word) (&string185)), 13);
   (* (( (ptr) gf←c0768)+315)/* var←c88296 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 68946948);
   var←c89864 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string186)), 60);
   (* (( (ptr) gf←c0768)+317)/* var←c88424 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1320708);
   (void) XR←ImportProcS(var←c89864, 68685571);
   var←c89864 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string187)), 55);
   (* (( (ptr) gf←c0768)+316)/* var←c88360 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67634689);
   (void) XR←ImportProcS(var←c89864, 67635970);
   var←c89864 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string188)), 103);
   (* (( (ptr) gf←c0768)+319)/* var←c88936 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67640578);
   var←c89864 = (word) XR←ImportInterface((word) "NodeProps", (word) XR←GetTypeIndexS((word) (&string189)), 28);
   (* (( (ptr) gf←c0768)+308)/* var←c87176 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 786435);
   (void) XR←ImportProcS(var←c89864, 67639042);
   (void) XR←ImportProcS(var←c89864, 68158212);
   var←c89864 = (word) XR←ImportInterface((word) "Real", (word) XR←GetTypeIndexS((word) (&string190)), 11);
   (* (( (ptr) gf←c0768)+312)/* var←c88136 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67372033);
   var←c89864 = (word) XR←ImportInterface((word) "RealFns", (word) XR←GetTypeIndexS((word) (&string191)), 36);
   (* (( (ptr) gf←c0768)+293)/* var←c84200 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67372289);
   var←c89864 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string192)), 43);
   (* (( (ptr) gf←c0768)+295)/* var←c84488 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67373569);
   (void) XR←ImportProcS(var←c89864, 67896323);
   var←c89864 = (word) XR←ImportInterface((word) "TextNode", (word) XR←GetTypeIndexS((word) (&string193)), 34);
   (* (( (ptr) gf←c0768)+304)/* var←c86504 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 134485761);
   (void) XR←ImportProcS(var←c89864, 67377153);
   (void) XR←ImportProcS(var←c89864, 67372289);
   var←c89864 = (word) XR←ImportInterface((word) "TiogaAccess", (word) XR←GetTypeIndexS((word) (&string194)), 32);
   (* (( (ptr) gf←c0768)+303)/* var←c86440 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 134486785);
   (void) XR←ImportProcS(var←c89864, 67372801);
   var←c89864 = (word) XR←ImportInterface((word) "TiogaAccessViewers", (word) XR←GetTypeIndexS((word) (&string195)), 4);
   (* (( (ptr) gf←c0768)+302)/* var←c86408 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67108864);
   var←c89864 = (word) XR←ImportInterface((word) "Vectors2d", (word) XR←GetTypeIndexS((word) (&string196)), 21);
   (* (( (ptr) gf←c0768)+291)/* var←c83848 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 67633665);
   (void) XR←ImportProcS(var←c89864, 134479873);
   (void) XR←ImportProcS(var←c89864, 134744577);
   (void) XR←ImportProcS(var←c89864, 68161282);
   (void) XR←ImportProcS(var←c89864, 135268098);
   (void) XR←ImportProcS(var←c89864, 67636737);
   (void) XR←ImportProcS(var←c89864, 135004418);
   (void) XR←ImportProcS(var←c89864, 135006210);
   (void) XR←ImportProcS(var←c89864, 135267842);
   var←c89864 = (word) XR←ImportInterface((word) "ViewerOps", (word) XR←GetTypeIndexS((word) (&string197)), 43);
   (* (( (ptr) gf←c0768)+306)/* var←c87016 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 1049348);
   var←c89864 = (word) XR←ImportInterface((word) "ViewerTools", (word) XR←GetTypeIndexS((word) (&string198)), 12);
   (* (( (ptr) gf←c0768)+305)/* var←c86952 */  ) = var←c89864;
   (void) XR←ImportProcS(var←c89864, 74711298);
   var←c89864 = (word) XR←ExportInterface((word) "GGEvent", (word) XR←GetTypeIndexS((word) (&string199)), 38);
   (* (( (ptr) gf←c0768)+322)/* var←c89896 */  ) = var←c89864;
   (void) XR←ExportProcS(var←c89864, (word) (( (bPt) gf←c0768)+1108)/* var←c82696 */ , 1052164, (word) "SelectEntireSlice");
   (void) XR←ExportProcS(var←c89864, (word) (( (bPt) gf←c0768)+1100)/* var←c82664 */ , 1052420, (word) "SelectSlice");
   var←c89864 = (word) XR←ExportInterface((word) "GGHistoryTypes", (word) XR←GetTypeIndexS((word) (&string200)), 2);
   (* (( (ptr) gf←c0768)+323)/* var←c89928 */  ) = var←c89864;
   (void) XR←ExportType((word) &string201, (word) XR←GetTypeIndexS((word) (&string202)), (word) XR←GetTypeIndex((word) &string203, 0, (word) &string204)
      );
   var←c89864 = (word) XR←ExportInterface((word) "GGInterfaceTypes", (word) XR←GetTypeIndexS((word) (&string205)), 6);
   (* (( (ptr) gf←c0768)+323)/* var←c89928 */  ) = var←c89864;
   (void) XR←ExportType((word) &string201, (word) XR←GetTypeIndexS((word) (&string202)), (word) XR←GetTypeIndex((word) &string203, 0, (word) &string204)
      );
   (void) XR←ExportType((word) "DragDataObj", (word) XR←GetTypeIndexS((word) (&string206)), (word) XR←GetTypeIndex((word) &string207, 0, (word) &string208)
      );
   (void) XR←ExportType((word) "RefreshDataObj", (word) XR←GetTypeIndexS((word) (&string209)), (word) XR←GetTypeIndex((word) &string210, 0, (word) &string211)
      );
   }

static void GGEventImplE←P0(formal←c0114, formal←c0113)
   word formal←c0114;
   word formal←c0113;
   {
   /* GGEventImplE: */ 
SOURCE(816, 46702)
   /* moved to installation proc */ 
   /* moved to installation proc */ 
SOURCE(47498, 20)
   (void) RegisterEventProcs←P3480();
   }

static void SelectEntireSlice←P60(slice←v8592, scene←v8620, selectClass←v8648, ggData←v8676)
   word slice←v8592;
   word scene←v8620;
   word selectClass←v8648;
   word ggData←v8676;
   {
   register ptr gf←c89960 =  (ptr) &globalframe;
   word extender←v11188 = 0;
   /* SelectEntireSlice: */ 
SOURCE(3631, 422)
SOURCE(3766, 53)
   {
      word pd212;
      pd212 = (* (( (ptr) (* (( (ptr) gf←c89960)+281)/* var←c82760 */  ))+5) );
      (void) ( *( (fPt) ((*  (ptr) pd212 ))))(slice←v8592, scene←v8620, selectClass←v8648, pd212);
      };
SOURCE(3821, 39)
   {
      word pd213;
      pd213 = (* (( (ptr) (* (( (ptr) gf←c89960)+282)/* var←c82792 */  ))+105) );
      (void) ( *( (fPt) ((*  (ptr) pd213 ))))(ggData←v8676, 7, pd213);
      };
SOURCE(3862, 191)
   {
      word tc214;
      {
         word pd215;
         pd215 = (* (( (ptr) (* (( (ptr) gf←c89960)+282)/* var←c82792 */  ))+100) );
         extender←v11188 = (word) ( *( (fPt) ((*  (ptr) pd215 ))))(ggData←v8676, pd215);
         };
      if ((extender←v11188 != 0)) {
         tc214 =  (word) ((*  (ptr) extender←v11188 ) != slice←v8592);
         }
      else {
         tc214 =  (word) 0;
         };
      if (tc214) {
SOURCE(3945, 110)
         {
            word sliceD←v11232;
SOURCE(3947, 64)
            {
               word pd216;
               pd216 = (* (( (ptr) (* (( (ptr) gf←c89960)+283)/* var←c82824 */  ))+29) );
               sliceD←v11232 = (word) ( *( (fPt) ((*  (ptr) pd216 ))))(slice←v8592, 0, 6, pd216);
               };
SOURCE(4013, 40)
            {
               word pd217;
               pd217 = (* (( (ptr) (* (( (ptr) gf←c89960)+282)/* var←c82792 */  ))+101) );
               (void) ( *( (fPt) ((*  (ptr) pd217 ))))(ggData←v8676, sliceD←v11232, pd217);
               };
            };
         };
      };
   }

static void SelectSlice←P120(sliceD←v8736, scene←v8764, selectClass←v8792, ggData←v8820)
   word sliceD←v8736;
   word scene←v8764;
   word selectClass←v8792;
   word ggData←v8820;
   {
   register ptr gf←c89992 =  (ptr) &globalframe;
   word extender←v11276 = 0;
   /* SelectSlice: */ 
SOURCE(4062, 363)
SOURCE(4202, 48)
   {
      word pd218;
      pd218 = (* (( (ptr) (* (( (ptr) gf←c89992)+281)/* var←c82760 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd218 ))))(sliceD←v8736, scene←v8764, selectClass←v8792, pd218);
      };
SOURCE(4252, 39)
   {
      word pd219;
      pd219 = (* (( (ptr) (* (( (ptr) gf←c89992)+282)/* var←c82792 */  ))+105) );
      (void) ( *( (fPt) ((*  (ptr) pd219 ))))(ggData←v8820, 7, pd219);
      };
SOURCE(4293, 132)
   {
      word tc220;
      {
         word pd221;
         pd221 = (* (( (ptr) (* (( (ptr) gf←c89992)+282)/* var←c82792 */  ))+100) );
         extender←v11276 = (word) ( *( (fPt) ((*  (ptr) pd221 ))))(ggData←v8820, pd221);
         };
      if ((extender←v11276 != 0)) {
         tc220 =  (word) ((*  (ptr) extender←v11276 ) != (*  (ptr) sliceD←v8736 ));
         }
      else {
         tc220 =  (word) 0;
         };
      if (tc220) {
SOURCE(4385, 40)
         {
            word pd222;
            pd222 = (* (( (ptr) (* (( (ptr) gf←c89992)+282)/* var←c82792 */  ))+101) );
            (void) ( *( (fPt) ((*  (ptr) pd222 ))))(ggData←v8820, sliceD←v8736, pd222);
            };
         };
      };
   }

static void UndoOne←P180(ggData←v32052, event←v32080)
   word ggData←v32052;
   word event←v32080;
   {
   register ptr gf←c90024 =  (ptr) &globalframe;
   /* UndoOne: */ 
SOURCE(4434, 53)
SOURCE(4461, 26)
   {
      word pd223;
      pd223 = (* (( (ptr) (* (( (ptr) gf←c90024)+284)/* var←c82856 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd223 ))))(ggData←v32052, 1, pd223);
      };
   }

static void BuildAHistoryTool←P240(ggData←v32140, event←v32168)
   word ggData←v32140;
   word event←v32168;
   {
   register ptr gf←c90056 =  (ptr) &globalframe;
   /* BuildAHistoryTool: */ 
SOURCE(4493, 115)
SOURCE(4530, 78)
   {
      word var←c82888;
      {
         word pd224;
         pd224 = (* (( (ptr) (* (( (ptr) gf←c90056)+282)/* var←c82792 */  ))+110) );
         var←c82888 = (word) ( *( (fPt) ((*  (ptr) pd224 ))))(ggData←v32140, pd224);
         };
      {
         word pd225;
         pd225 = (* (( (ptr) (* (( (ptr) gf←c90056)+284)/* var←c82856 */  ))+21) );
         (* (( (ptr) ggData←v32140)+45) ) = (word) ( *( (fPt) ((*  (ptr) pd225 ))))(var←c82888, ggData←v32140, pd225);
         };
      };
   }

static void GetSelectedWrapRule←P300(formal←c0137, ggData←v8880)
   word formal←c0137;
   word ggData←v8880;
   {
   W8 var←c90088;
   register ptr gf←c90120 =  (ptr) &globalframe;
   /* declaration of odd←v8924 skipped */ 
   word success←v8952;
   /* declaration of var←c82920 skipped */ 
   word scene←v11348;
   /* declaration of found←v11376 skipped */ 
   /* GetSelectedWrapRule: */ 
SOURCE(4614, 450)
   {
      word tmpAddr226;
      tmpAddr226 = (word) (( (ptr) &var←c90088)+5)/* var←c82920 */ ;
      (*  (ptr) tmpAddr226 ) = ( ((word)  (fPt) DoCheckWrapRule←P3588) );
      (* (( (ptr) tmpAddr226) + 1) ) = 1;
      };
SOURCE(4614, 450)
   var←c90088.f4/* odd←v8924 */  = 0;
SOURCE(4614, 450)
   success←v8952 = 1;
SOURCE(4923, 27)
   scene←v11348 = (* (( (ptr) ggData←v8880)+11) );
SOURCE(4952, 19)
   var←c90088.f7/* found←v11376 */  = 0;
SOURCE(4973, 91)
   {
      word pd227;
      pd227 = (* (( (ptr) (* (( (ptr) gf←c90120)+285)/* var←c82952 */  ))+32) );
      success←v8952 =  (unsigned) (0 == (word) ( *( (fPt) ((*  (ptr) pd227 ))))(scene←v11348, 3, (word) (( (bPt) &var←c90088)+20)
         /* var←c82920 */ , 0, (* (( (ptr) gf←c90120)+162) ), pd227));
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0137 ) = var←c90088.f4/* odd←v8924 */ ;
   (* (( (ptr) formal←c0137)+1) ) = success←v8952;
   return;
   }

static word DoCheckWrapRule←P3588(sliceD←v11452, formal←c90184)
   word sliceD←v11452;
   word formal←c90184;
   {
   register ptr gf←c90152 =  (ptr) &globalframe;
   word done←v11496;
   word thisOdd←v11524;
   formal←c90184 = (formal←c90184 - 20);
   /* DoCheckWrapRule: */ 
SOURCE(4711, 204)
SOURCE(4711, 204)
   done←v11496 = 0;
SOURCE(4792, 51)
   {
      word pd228;
      pd228 = (* (( (ptr) (* (( (ptr) gf←c90152)+286)/* var←c82984 */  ))+11) );
      thisOdd←v11524 = (word) ( *( (fPt) ((*  (ptr) pd228 ))))((*  (ptr) (sliceD←v11452) ), pd228);
      };
SOURCE(4845, 70)
   if ((0 != (* (( (ptr) formal←c90184)+7) ))) {
SOURCE(4860, 26)
      done←v11496 =  (unsigned) (thisOdd←v11524 != (* (( (ptr) formal←c90184)+4) ));
      }
   else {
SOURCE(4888, 12)
      (* (( (ptr) formal←c90184)+7) ) = 1;
SOURCE(4902, 13)
      (* (( (ptr) formal←c90184)+4) ) = thisOdd←v11524;
      };
SOURCE(4711, 204)
   return(done←v11496);
   }

static void ShowWrapRule←P360(ggData←v32228, event←v32256)
   word ggData←v32228;
   word event←v32256;
   {
   register ptr gf←c90216 =  (ptr) &globalframe;
   word scene←v11568;
   word odd←v11596 = 0;
   word success←v11624 = 0;
   /* ShowWrapRule: */ 
SOURCE(5070, 627)
SOURCE(5109, 27)
   scene←v11568 = (* (( (ptr) ggData←v32228)+11) );
SOURCE(5180, 517)
   {
      word pd229;
      pd229 = (* (( (ptr) (* (( (ptr) gf←c90216)+285)/* var←c82952 */  ))+36) );
      if (((word) ( *( (fPt) ((*  (ptr) pd229 ))))(scene←v11568, 3, 0, (* (( (ptr) gf←c90216)+162) ), pd229) == 0)) {
SOURCE(5254, 127)
         {
            word pd230;
            pd230 = (* (( (ptr) (* (( (ptr) gf←c90216)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd230 ))))((* (( (ptr) ggData←v32228)+3) ), 0, (* (( (ptr) gf←c90216)+121) ), (* (( (ptr) gf←c90216)+119)
                ), pd230);
            };
         }
      else {
SOURCE(5383, 44)
         {
            W2 var←c83048;
            (void) GetSelectedWrapRule←P300((word) &var←c83048, ggData←v32228);
            success←v11624 = var←c83048.f1;
            odd←v11596 = var←c83048.f0;
            };
SOURCE(5429, 268)
         if ((0 == success←v11624)) {
SOURCE(5449, 115)
            {
               word pd231;
               pd231 = (* (( (ptr) (* (( (ptr) gf←c90216)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd231 ))))((* (( (ptr) ggData←v32228)+3) ), 0, (* (( (ptr) gf←c90216)+121) ), (* (( (ptr) gf←c90216)+114)
                   ), pd231);
               };
            }
         else {
SOURCE(5564, 133)
            {
               W2 var←c83080;
               var←c83080.f0 = 11;
               if ((0 != odd←v11596)) {
                  var←c83080.f1 = (* (( (ptr) gf←c90216)+111) );
                  }
               else {
                  var←c83080.f1 = (* (( (ptr) gf←c90216)+103) );
                  };
               {
                  word pd232;
                  pd232 = (* (( (ptr) (* (( (ptr) gf←c90216)+287)/* var←c83016 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd232 ))))((* (( (ptr) ggData←v32228)+3) ), 0, (* (( (ptr) gf←c90216)+113) ), (* (( (ptr) gf←c90216)+112)
                      ), var←c83080, pd232);
                  };
               };
            };
         };
      };
   }

static void SetOddWrap←P420(ggData←v32316, event←v32344)
   word ggData←v32316;
   word event←v32344;
   {
   /* SetOddWrap: */ 
SOURCE(5706, 61)
SOURCE(5736, 31)
   (void) SetWrapAux←P600(event←v32344, ggData←v32316, 1);
   }

static void SetNonZeroWrap←P480(ggData←v32404, event←v32432)
   word ggData←v32404;
   word event←v32432;
   {
   /* SetNonZeroWrap: */ 
SOURCE(5773, 66)
SOURCE(5807, 32)
   (void) SetWrapAux←P600(event←v32432, ggData←v32404, 0);
   }

static void SetWrapSlice←P540(slice←v9012, parts←v9040, formal←c0954)
   word slice←v9012;
   word parts←v9040;
   word formal←c0954;
   {
   W7 var←c90248;
   /* declaration of odd←v9068 skipped */ 
   register ptr gf←c90280 =  (ptr) &globalframe;
   /* declaration of var←c83112 skipped */ 
   var←c90248.f4/* odd←v9068 */  = formal←c0954;
   /* SetWrapSlice: */ 
SOURCE(5845, 375)
   {
      word tmpAddr233;
      tmpAddr233 = (word) (( (ptr) &var←c90248)+5)/* var←c83112 */ ;
      (*  (ptr) tmpAddr233 ) = ( ((word)  (fPt) DoSetWrap←P3696) );
      (* (( (ptr) tmpAddr233) + 1) ) = 1;
      };
SOURCE(5913, 307)
   {
      word var←c83144;
      {
         word pd234;
         pd234 = (* (( (ptr) (* (( (ptr) gf←c90280)+283)/* var←c82824 */  ))+6) );
         var←c83144 = (word) ( *( (fPt) ((*  (ptr) pd234 ))))(slice←v9012, pd234);
         };
      if ((var←c83144 == (* (( (ptr) gf←c90280)+64) ))) {
SOURCE(5963, 207)
SOURCE(6090, 78)
         {
            word var←c83208;
            word pd235;
            pd235 = (* (( (ptr) (* (( (ptr) gf←c90280)+288)/* var←c83176 */  ))+74) );
            var←c83208 = (word) ( *( (fPt) ((*  (ptr) pd235 ))))(slice←v9012, parts←v9040, 3, (word) (( (bPt) &var←c90248)+20)/* var←c83112 */ , (* (
                  ( (ptr) gf←c90280)+162) ), pd235);
            };
         }
      else {
         if ((var←c83144 == (* (( (ptr) gf←c90280)+162) ))) {
SOURCE(6187, 33)
            {
               word pd236;
               pd236 = (* (( (ptr) (* (( (ptr) gf←c90280)+286)/* var←c82984 */  ))+10) );
               (void) ( *( (fPt) ((*  (ptr) pd236 ))))(slice←v9012, var←c90248.f4/* odd←v9068 */ , pd236);
               };
            };
         };
      };
   }

static word DoSetWrap←P3696(childD←v11744, formal←c90312)
   word childD←v11744;
   word formal←c90312;
   {
   word done←v11788;
   formal←c90312 = (formal←c90312 - 20);
   /* DoSetWrap: */ 
SOURCE(5965, 17)
SOURCE(5965, 17)
   done←v11788 = 0;
SOURCE(6040, 45)
   (void) SetWrapSlice←P540((*  (ptr) childD←v11744 ), (* (( (ptr) childD←v11744)+1) ), (* (( (ptr) formal←c90312)+4) ));
SOURCE(5965, 17)
   return(done←v11788);
   }

static void SetWrapAux←P600(event←v9128, ggData←v9156, formal←c0955)
   word event←v9128;
   word ggData←v9156;
   word formal←c0955;
   {
   W7 var←c90344;
   /* declaration of odd←v9184 skipped */ 
   register ptr gf←c90376 =  (ptr) &globalframe;
   /* declaration of var←c83240 skipped */ 
   word scene←v11816;
   var←c90344.f4/* odd←v9184 */  = formal←c0955;
   /* SetWrapAux: */ 
SOURCE(6244, 973)
   {
      word tmpAddr237;
      tmpAddr237 = (word) (( (ptr) &var←c90344)+5)/* var←c83240 */ ;
      (*  (ptr) tmpAddr237 ) = ( ((word)  (fPt) DoSetWrap←P3756) );
      (* (( (ptr) tmpAddr237) + 1) ) = 1;
      };
SOURCE(6320, 27)
   scene←v11816 = (* (( (ptr) ggData←v9156)+11) );
SOURCE(6474, 743)
   {
      word pd238;
      pd238 = (* (( (ptr) (* (( (ptr) gf←c90376)+285)/* var←c82952 */  ))+36) );
      if (((word) ( *( (fPt) ((*  (ptr) pd238 ))))(scene←v11816, 3, 0, (* (( (ptr) gf←c90376)+162) ), pd238) == 0)) {
SOURCE(6548, 125)
         {
            word pd239;
            pd239 = (* (( (ptr) (* (( (ptr) gf←c90376)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd239 ))))((* (( (ptr) ggData←v9156)+3) ), 0, (* (( (ptr) gf←c90376)+121) ), (* (( (ptr) gf←c90376)+53)
                ), pd239);
            };
         }
      else {
SOURCE(6675, 45)
         {
            word pd240;
            pd240 = (* (( (ptr) (* (( (ptr) gf←c90376)+284)/* var←c82856 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd240 ))))((* (( (ptr) gf←c90376)+52) ), ggData←v9156, pd240);
            };
SOURCE(6753, 76)
         {
            word var←c83272;
            word pd241;
            pd241 = (* (( (ptr) (* (( (ptr) gf←c90376)+285)/* var←c82952 */  ))+32) );
            var←c83272 = (word) ( *( (fPt) ((*  (ptr) pd241 ))))(scene←v11816, 3, (word) (( (bPt) &var←c90344)+20)/* var←c83240 */ , 0, (* (
                  ( (ptr) gf←c90376)+162) ), pd241);
            };
SOURCE(6831, 81)
         {
            word pd242;
            pd242 = (* (( (ptr) (* (( (ptr) gf←c90376)+289)/* var←c83304 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd242 ))))(ggData←v9156, 0, 0, 0, 1, 0
               , 0, 0, 0, 0, pd242);
            };
SOURCE(6914, 29)
         {
            word pd243;
            pd243 = (* (( (ptr) (* (( (ptr) gf←c90376)+284)/* var←c82856 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd243 ))))(ggData←v9156, pd243);
            };
SOURCE(6945, 122)
         {
            W2 var←c83336;
            var←c83336.f0 = 11;
            if ((0 != var←c90344.f4/* odd←v9184 */ )) {
               var←c83336.f1 = (* (( (ptr) gf←c90376)+26) );
               }
            else {
               var←c83336.f1 = (* (( (ptr) gf←c90376)+27) );
               };
            {
               word pd244;
               pd244 = (* (( (ptr) (* (( (ptr) gf←c90376)+287)/* var←c83016 */  ))+14) );
               (void) ( *( (fPt) ((*  (ptr) pd244 ))))((* (( (ptr) ggData←v9156)+3) ), 0, (* (( (ptr) gf←c90376)+46) ), (* (( (ptr) gf←c90376)+43)
                   ), var←c83336, pd244);
               };
            };
SOURCE(7069, 148)
         {
            word pd245;
            pd245 = (* (( (ptr) (* (( (ptr) gf←c90376)+290)/* var←c83368 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd245 ))))((* (( (ptr) gf←c90376)+28) ), ggData←v9156, 4, 1, 0, 0, pd245);
            };
         };
      };
   }

static word DoSetWrap←P3756(nextSD←v11920, formal←c90408)
   word nextSD←v11920;
   word formal←c90408;
   {
   word done←v11964;
   formal←c90408 = (formal←c90408 - 20);
   /* DoSetWrap: */ 
SOURCE(6349, 120)
SOURCE(6349, 120)
   done←v11964 = 0;
SOURCE(6424, 45)
   (void) SetWrapSlice←P540((*  (ptr) nextSD←v11920 ), (* (( (ptr) nextSD←v11920)+1) ), (* (( (ptr) formal←c90408)+4) ));
SOURCE(6349, 120)
   return(done←v11964);
   }

static void GetSelectedOrientation←P660(formal←c0176, ggData←v9344)
   word formal←c0176;
   word ggData←v9344;
   {
   W8 var←c90440;
   register ptr gf←c90472 =  (ptr) &globalframe;
   /* declaration of orientation←v9388 skipped */ 
   word success←v9416;
   /* declaration of var←c83400 skipped */ 
   word scene←v12020;
   /* declaration of found←v12048 skipped */ 
   /* GetSelectedOrientation: */ 
SOURCE(7226, 623)
   {
      word tmpAddr246;
      tmpAddr246 = (word) (( (ptr) &var←c90440)+5)/* var←c83400 */ ;
      (*  (ptr) tmpAddr246 ) = ( ((word)  (fPt) DoCheckOrientation←P3816) );
      (* (( (ptr) tmpAddr246) + 1) ) = 1;
      };
SOURCE(7226, 623)
   var←c90440.f4/* orientation←v9388 */  = 0;
SOURCE(7226, 623)
   success←v9416 = 1;
SOURCE(7717, 27)
   scene←v12020 = (* (( (ptr) ggData←v9344)+11) );
SOURCE(7746, 19)
   var←c90440.f7/* found←v12048 */  = 0;
SOURCE(7767, 82)
   {
      word pd247;
      pd247 = (* (( (ptr) (* (( (ptr) gf←c90472)+285)/* var←c82952 */  ))+32) );
      success←v9416 =  (unsigned) (0 == (word) ( *( (fPt) ((*  (ptr) pd247 ))))(scene←v12020, 0, (word) (( (bPt) &var←c90440)+20)
         /* var←c83400 */ , 0, 0, pd247));
      };
   /* removed tail goto */ 
   (*  (ptr) formal←c0176 ) = var←c90440.f4/* orientation←v9388 */ ;
   (* (( (ptr) formal←c0176)+1) ) = success←v9416;
   return;
   }

static word DoCheckOrientation←P3816(sliceD←v12124, formal←c90536)
   word sliceD←v12124;
   word formal←c90536;
   {
   register ptr gf←c90504 =  (ptr) &globalframe;
   word done←v12168;
   word thisOrient←v12196;
   word isUnique←v12224 = 0;
   formal←c90536 = (formal←c90536 - 20);
   /* DoCheckOrientation: */ 
SOURCE(7338, 371)
SOURCE(7338, 371)
   done←v12168 = 0;
SOURCE(7471, 78)
   {
      W2 var←c83432;
      {
         word pd248;
         pd248 = (* (( (ptr) (* (( (ptr) gf←c90504)+283)/* var←c82824 */  ))+68) );
         (void) ( *( (fPt) ((*  (ptr) pd248 ))))((word) &var←c83432, (*  (ptr) sliceD←v12124 ), (* (( (ptr) sliceD←v12124)+1) ), pd248)
         ;
         };
      isUnique←v12224 = var←c83432.f1;
      thisOrient←v12196 = var←c83432.f0;
      };
SOURCE(7551, 61)
   if ((0 == isUnique←v12224)) {
SOURCE(7574, 24)
      (* (( (ptr) formal←c90536)+4) ) = thisOrient←v12196;
SOURCE(7600, 12)
      return(1);
      };
SOURCE(7617, 92)
   if ((0 != (* (( (ptr) formal←c90536)+7) ))) {
SOURCE(7632, 37)
      done←v12168 =  (unsigned) (thisOrient←v12196 != (* (( (ptr) formal←c90536)+4) ));
      }
   else {
SOURCE(7671, 12)
      (* (( (ptr) formal←c90536)+7) ) = 1;
SOURCE(7685, 24)
      (* (( (ptr) formal←c90536)+4) ) = thisOrient←v12196;
      };
SOURCE(7338, 371)
   return(done←v12168);
   }

static void ShowOrientation←P720(ggData←v32524, event←v32552)
   word ggData←v32524;
   word event←v32552;
   {
   register ptr gf←c90568 =  (ptr) &globalframe;
   word orientation←v12268 = 2;
   word success←v12296 = 0;
   /* ShowOrientation: */ 
SOURCE(7855, 674)
SOURCE(7956, 573)
   {
      word pd249;
      pd249 = (* (( (ptr) (* (( (ptr) gf←c90568)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd249 ))))((* (( (ptr) ggData←v32524)+11) ), 0, pd249))) {
SOURCE(8008, 141)
         {
            word pd250;
            pd250 = (* (( (ptr) (* (( (ptr) gf←c90568)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd250 ))))((* (( (ptr) ggData←v32524)+3) ), 0, (* (( (ptr) gf←c90568)+121) ), (* (( (ptr) gf←c90568)+29)
                ), pd250);
            };
         }
      else {
SOURCE(8151, 55)
         {
            W2 var←c83464;
            (void) GetSelectedOrientation←P660((word) &var←c83464, ggData←v32524);
            success←v12296 = var←c83464.f1;
            orientation←v12268 = var←c83464.f0;
            };
SOURCE(8208, 321)
         if ((0 == success←v12296)) {
SOURCE(8228, 120)
            {
               word pd251;
               pd251 = (* (( (ptr) (* (( (ptr) gf←c90568)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd251 ))))((* (( (ptr) ggData←v32524)+3) ), 0, (* (( (ptr) gf←c90568)+121) ), (* (( (ptr) gf←c90568)+30)
                   ), pd251);
               };
            }
         else {
SOURCE(8348, 181)
            {
               word var←c83496;
               {
                  word var←c83528;
                  var←c83528 = orientation←v12268;
                  switch (var←c83528) {
                     case 0: 
                        var←c83496 = (* (( (ptr) gf←c90568)+32) );
                        break;
                     case 1: 
                        var←c83496 = (* (( (ptr) gf←c90568)+33) );
                        break;
                     case 2: 
                        var←c83496 = (* (( (ptr) gf←c90568)+34) );
                        break;
                     default: 
                        var←c83496 = (
                           XR←RaiseUnnamedError(), 0
                           );
                        break;
                     };
                  };
               {
                  W2 var←c83560;
                  var←c83560.f0 = 11;
                  var←c83560.f1 = var←c83496;
                  {
                     word pd252;
                     pd252 = (* (( (ptr) (* (( (ptr) gf←c90568)+287)/* var←c83016 */  ))+14) );
                     (void) ( *( (fPt) ((*  (ptr) pd252 ))))((* (( (ptr) ggData←v32524)+3) ), 0, (* (( (ptr) gf←c90568)+113) ), (* (( (ptr) gf←c90568)+31)
                         ), var←c83560, pd252);
                     };
                  };
               };
            };
         };
      };
   }

static void OrientCW←P780(ggData←v32612, event←v32640)
   word ggData←v32612;
   word event←v32640;
   {
   /* OrientCW: */ 
SOURCE(8538, 63)
SOURCE(8573, 28)
   (void) OrientAux←P960(event←v32640, ggData←v32612, 0);
   }

static void OrientCCW←P840(ggData←v32700, event←v32728)
   word ggData←v32700;
   word event←v32728;
   {
   /* OrientCCW: */ 
SOURCE(8607, 65)
SOURCE(8643, 29)
   (void) OrientAux←P960(event←v32728, ggData←v32700, 1);
   }

static void Reorient←P900(ggData←v32788, event←v32816)
   word ggData←v32788;
   word event←v32816;
   {
   /* Reorient: */ 
SOURCE(8678, 68)
SOURCE(8713, 33)
   (void) OrientAux←P960(event←v32816, ggData←v32788, 2);
   }

static void OrientAux←P960(event←v9476, ggData←v9504, formal←c0956)
   word event←v9476;
   word ggData←v9504;
   word formal←c0956;
   {
   W9 var←c90600;
   /* declaration of orientation←v9532 skipped */ 
   register ptr gf←c90632 =  (ptr) &globalframe;
   /* declaration of var←c83592 skipped */ 
   /* declaration of scene←v12340 skipped */ 
   (* (( (ptr) &var←c90600)+4)/* orientation←v9532 */  ) = formal←c0956;
   /* OrientAux: */ 
SOURCE(8752, 1167)
   {
      word tmpAddr253;
      tmpAddr253 = (word) (( (ptr) &var←c90600)+5)/* var←c83592 */ ;
      (*  (ptr) tmpAddr253 ) = ( ((word)  (fPt) DoOrient←P3924) );
      (* (( (ptr) tmpAddr253) + 1) ) = 1;
      };
SOURCE(8835, 27)
   (* (( (ptr) &var←c90600)+7)/* scene←v12340 */  ) = (* (( (ptr) ggData←v9504)+11) );
SOURCE(8864, 1055)
   {
      word pd254;
      pd254 = (* (( (ptr) (* (( (ptr) gf←c90632)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd254 ))))((* (( (ptr) &var←c90600)+7)/* scene←v12340 */  ), 0, pd254))) {
SOURCE(8909, 130)
         {
            word pd255;
            pd255 = (* (( (ptr) (* (( (ptr) gf←c90632)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd255 ))))((* (( (ptr) ggData←v9504)+3) ), 0, (* (( (ptr) gf←c90632)+121) ), (* (( (ptr) gf←c90632)+35)
                ), pd255);
            };
         }
      else {
SOURCE(9039, 882)
         {
            /* declaration of currentEvent←v12412 skipped */ 
SOURCE(9323, 67)
            {
               word pd256;
               pd256 = (* (( (ptr) (* (( (ptr) gf←c90632)+284)/* var←c82856 */  ))+4) );
               (* (( (ptr) &var←c90600)+8)/* currentEvent←v12412 */  ) = (word) ( *( (fPt) ((*  (ptr) pd256 ))))((* (( (ptr) gf←c90632)+36)
                   ), ggData←v9504, pd256);
               };
SOURCE(9392, 63)
            {
               word var←c83624;
               word pd257;
               pd257 = (* (( (ptr) (* (( (ptr) gf←c90632)+285)/* var←c82952 */  ))+32) );
               var←c83624 = (word) ( *( (fPt) ((*  (ptr) pd257 ))))((* (( (ptr) &var←c90600)+7)/* scene←v12340 */  ), 0, (word) (( (bPt) &var←c90600)+20)
                  /* var←c83592 */ , 0, 0, pd257);
               };
SOURCE(9457, 81)
            {
               word pd258;
               pd258 = (* (( (ptr) (* (( (ptr) gf←c90632)+289)/* var←c83304 */  ))+10) );
               (void) ( *( (fPt) ((*  (ptr) pd258 ))))(ggData←v9504, 0, 0, 0, 1, 0
                  , 0, 0, 0, 0, pd258);
               };
SOURCE(9540, 29)
            {
               word pd259;
               pd259 = (* (( (ptr) (* (( (ptr) gf←c90632)+284)/* var←c82856 */  ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd259 ))))(ggData←v9504, pd259);
               };
SOURCE(9571, 192)
            {
               word var←c83656;
               {
                  word var←c83688;
                  var←c83688 = (* (( (ptr) &var←c90600)+4)/* orientation←v9532 */  );
                  switch (var←c83688) {
                     case 0: 
                        var←c83656 = (* (( (ptr) gf←c90632)+38) );
                        break;
                     case 1: 
                        var←c83656 = (* (( (ptr) gf←c90632)+39) );
                        break;
                     case 2: 
                        var←c83656 = (* (( (ptr) gf←c90632)+40) );
                        break;
                     default: 
                        var←c83656 = (
                           XR←RaiseUnnamedError(), 0
                           );
                        break;
                     };
                  };
               {
                  W2 var←c83720;
                  var←c83720.f0 = 11;
                  var←c83720.f1 = var←c83656;
                  {
                     word pd260;
                     pd260 = (* (( (ptr) (* (( (ptr) gf←c90632)+287)/* var←c83016 */  ))+14) );
                     (void) ( *( (fPt) ((*  (ptr) pd260 ))))((* (( (ptr) ggData←v9504)+3) ), 0, (* (( (ptr) gf←c90632)+46) ), (* (( (ptr) gf←c90632)+37)
                         ), var←c83720, pd260);
                     };
                  };
               };
SOURCE(9765, 154)
            {
               word pd261;
               pd261 = (* (( (ptr) (* (( (ptr) gf←c90632)+290)/* var←c83368 */  ))+4) );
               (void) ( *( (fPt) ((*  (ptr) pd261 ))))((* (( (ptr) gf←c90632)+28) ), ggData←v9504, 0, 1, 0, 0, pd261);
               };
            };
         };
      };
   }

static word DoOrient←P3924(sliceD←v12488, formal←c90696)
   word sliceD←v12488;
   word formal←c90696;
   {
   register ptr gf←c90664 =  (ptr) &globalframe;
   word done←v12532;
   formal←c90696 = (formal←c90696 - 20);
   /* DoOrient: */ 
SOURCE(9041, 16)
SOURCE(9041, 16)
   done←v12532 = 0;
SOURCE(9115, 61)
   {
      word pd262;
      pd262 = (* (( (ptr) (* (( (ptr) gf←c90664)+281)/* var←c82760 */  ))+8) );
      (void) ( *( (fPt) ((*  (ptr) pd262 ))))((*  (ptr) sliceD←v12488 ), (* (( (ptr) formal←c90696)+7) ), pd262);
      };
SOURCE(9178, 85)
   {
      word var←c83752;
      word pd263;
      pd263 = (* (( (ptr) (* (( (ptr) gf←c90664)+283)/* var←c82824 */  ))+67) );
      var←c83752 = (word) ( *( (fPt) ((*  (ptr) pd263 ))))((*  (ptr) sliceD←v12488 ), (* (( (ptr) sliceD←v12488)+1) ), (* (( (ptr) formal←c90696)+4)
          ), (* (( (ptr) formal←c90696)+8) ), pd263);
      };
SOURCE(9265, 53)
   {
      word pd264;
      pd264 = (* (( (ptr) (* (( (ptr) gf←c90664)+281)/* var←c82760 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd264 ))))((*  (ptr) sliceD←v12488 ), (* (( (ptr) formal←c90696)+7) ), pd264);
      };
SOURCE(9041, 16)
   return(done←v12532);
   }

static void GetPt←P1020(formal←c0220, p0←v9688, dir←v9716)
   word formal←c0220;
   W2 p0←v9688;
   W2 dir←v9716;
   {
   register ptr gf←c90728 =  (ptr) &globalframe;
   W2 pt←v9760;
   /* GetPt: */ 
SOURCE(9968, 164)
SOURCE(10020, 112)
   {
      W2 var←c83784;
      {
         W2 var←c83816;
         word var←c83880;
         {
            word pd265;
            pd265 = (* (( (ptr) (* (( (ptr) gf←c90728)+291)/* var←c83848 */  ))+5) );
            (void) ( *( (fPt) ((*  (ptr) pd265 ))))((word) &var←c83816, dir←v9716, (* (( (ptr) gf←c90728)+5)/* gAngle←v7284 */  ), pd265)
            ;
            };
         {
            word x266;
            word pd267;
            word x268;
            pd267 = (* (( (ptr) (* (( (ptr) gf←c90728)+291)/* var←c83848 */  ))+18) );
            *(float*)&var←c83880 = (
               x266 = (* (( (ptr) gf←c90728)+4)/* gScale←v7256 */  ),  *(float*)&x266
               ) * (
               x268 = (word) ( *( (fPt) ((*  (ptr) pd267 ))))(dir←v9716, pd267),  *(float*)&x268
               );
            };
         {
            W2 var←c0218;
            {
               word pd269;
               pd269 = (* (( (ptr) (* (( (ptr) gf←c90728)+291)/* var←c83848 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd269 ))))((word) &var←c0218, var←c83816, var←c83880, pd269);
               };
            var←c83784 = var←c0218;
            };
         };
      {
         W2 var←c0219;
         {
            word pd270;
            pd270 = (* (( (ptr) (* (( (ptr) gf←c90728)+291)/* var←c83848 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd270 ))))((word) &var←c0219, var←c83784, p0←v9688, pd270);
            };
         pt←v9760 = var←c0219;
         };
      };
   /* removed tail goto */ 
   (*  (W2Pt) formal←c0220 ) = pt←v9760;
   return;
   }

static void SetStraight←P1080(ggData←v32876, event←v32904)
   word ggData←v32876;
   word event←v32904;
   {
   W6 var←c90760;
   register ptr gf←c90792 =  (ptr) &globalframe;
   /* declaration of var←c83912 skipped */ 
   /* SetStraight: */ 
SOURCE(10138, 160)
   {
      word tmpAddr271;
      tmpAddr271 = (word) (( (ptr) &var←c90760)+4)/* var←c83912 */ ;
      (*  (ptr) tmpAddr271 ) = ( ((word)  (fPt) MakeStraightAux←P3984) );
      (* (( (ptr) tmpAddr271) + 1) ) = 1;
      };
SOURCE(10255, 43)
   (void) SetCurveAux←P1620(ggData←v32876, (word) (( (bPt) &var←c90760)+16)/* var←c83912 */ , (* (( (ptr) gf←c90792)+41) ));
   }

static word MakeStraightAux←P3984(lo←v45592, hi←v45620, props←v45648, formal←c90856)
   W2 lo←v45592;
   W2 hi←v45620;
   word props←v45648;
   word formal←c90856;
   {
   register ptr gf←c90824 =  (ptr) &globalframe;
   word seg←v45692;
   formal←c90856 = (formal←c90856 - 16);
   /* MakeStraightAux: */ 
SOURCE(10176, 74)
SOURCE(10176, 74)
   seg←v45692 = 0;
SOURCE(10211, 39)
   {
      word pd272;
      pd272 = (* (( (ptr) (* (( (ptr) gf←c90824)+292)/* var←c83944 */  ))+5) );
      seg←v45692 = (word) ( *( (fPt) ((*  (ptr) pd272 ))))(lo←v45592, hi←v45620, props←v45648, pd272);
      };
SOURCE(10176, 74)
   return(seg←v45692);
   }

static void SetArc←P1140(ggData←v32964, event←v32992)
   word ggData←v32964;
   word event←v32992;
   {
   W6 var←c90888;
   register ptr gf←c90920 =  (ptr) &globalframe;
   /* declaration of var←c83976 skipped */ 
   /* SetArc: */ 
SOURCE(10323, 226)
   {
      word tmpAddr273;
      tmpAddr273 = (word) (( (ptr) &var←c90888)+4)/* var←c83976 */ ;
      (*  (ptr) tmpAddr273 ) = ( ((word)  (fPt) MakeArcAux←P4044) );
      (* (( (ptr) tmpAddr273) + 1) ) = 1;
      };
SOURCE(10512, 37)
   (void) SetCurveAux←P1620(ggData←v32964, (word) (( (bPt) &var←c90888)+16)/* var←c83976 */ , (* (( (ptr) gf←c90920)+42) ));
   }

static word MakeArcAux←P4044(lo←v46116, hi←v46144, props←v46172, formal←c90984)
   W2 lo←v46116;
   W2 hi←v46144;
   word props←v46172;
   word formal←c90984;
   {
   register ptr gf←c90952 =  (ptr) &globalframe;
   word seg←v46216;
   W2 p1←v12648;
   formal←c90984 = (formal←c90984 - 16);
   /* MakeArcAux: */ 
SOURCE(10356, 151)
SOURCE(10356, 151)
   seg←v46216 = 0;
SOURCE(10397, 66)
   {
      W2 var←c84008;
      {
         W2 var←c84040;
         {
            word pd274;
            pd274 = (* (( (ptr) (* (( (ptr) gf←c90952)+291)/* var←c83848 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd274 ))))((word) &var←c84040, hi←v46144, lo←v46116, pd274);
            };
         {
            W2 var←c0239;
            {
               word pd275;
               pd275 = (* (( (ptr) (* (( (ptr) gf←c90952)+291)/* var←c83848 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd275 ))))((word) &var←c0239, var←c84040, (*  (ptr) &fc276 ), pd275);
               };
            var←c84008 = var←c0239;
            };
         };
      {
         W2 var←c0240;
         {
            word pd277;
            pd277 = (* (( (ptr) (* (( (ptr) gf←c90952)+291)/* var←c83848 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd277 ))))((word) &var←c0240, var←c84008, lo←v46116, pd277);
            };
         p1←v12648 = var←c0240;
         };
      };
SOURCE(10465, 42)
   {
      word pd278;
      pd278 = (* (( (ptr) (* (( (ptr) gf←c90952)+292)/* var←c83944 */  ))+8) );
      seg←v46216 = (word) ( *( (fPt) ((*  (ptr) pd278 ))))(lo←v46116, p1←v12648, hi←v46144, props←v46172, pd278);
      };
SOURCE(10356, 151)
   return(seg←v46216);
   }

static void SetSnowflake←P1200(ggData←v33052, event←v33080)
   word ggData←v33052;
   word event←v33080;
   {
   W6 var←c91016;
   /* declaration of var←c84072 skipped */ 
   /* SetSnowflake: */ 
SOURCE(10569, 1080)
   {
      word tmpAddr279;
      tmpAddr279 = (word) (( (ptr) &var←c91016)+4)/* var←c84072 */ ;
      (*  (ptr) tmpAddr279 ) = ( ((word)  (fPt) MakeSnowflakeAux←P4104) );
      (* (( (ptr) tmpAddr279) + 1) ) = 1;
      };
SOURCE(11610, 39)
   (void) SetPatternAux←P1680(ggData←v33052, (word) (( (bPt) &var←c91016)+16)/* var←c84072 */ );
   }

static word MakeSnowflakeAux←P4104(seg←v12768, traj←v12796, formal←c91080)
   word seg←v12768;
   word traj←v12796;
   word formal←c91080;
   {
   register ptr gf←c91048 =  (ptr) &globalframe;
   word patternTraj←v12840;
   word length←v12868;
   W2 p1←v12896;
   W2 p2←v12924;
   W2 p3←v12952;
   W2 sideVec←v12980;
   W2 dir←v13008;
   W2 x←v13036;
   word seg1←v13064 = 0;
   word seg2←v13092 = 0;
   word seg3←v13120 = 0;
   word seg4←v13148 = 0;
   W2 lo←v13176;
   W2 hi←v13204;
   word success←v13232 = 0;
   formal←c91080 = (formal←c91080 - 16);
   /* MakeSnowflakeAux: */ 
SOURCE(10624, 981)
SOURCE(10624, 981)
   patternTraj←v12840 = 0;
SOURCE(10799, 18)
   lo←v13176 = (*  (W2Pt) (( (ptr) seg←v12768)+9) );
SOURCE(10819, 18)
   hi←v13204 = (*  (W2Pt) (( (ptr) seg←v12768)+11) );
SOURCE(10862, 34)
   {
      word pd280;
      pd280 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+19) );
      length←v12868 = (word) ( *( (fPt) ((*  (ptr) pd280 ))))(lo←v13176, hi←v13204, pd280);
      };
SOURCE(10898, 16)
   {
      word pd281;
      pd281 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd281 ))))((word) &dir←v13008, hi←v13204, lo←v13176, pd281);
      };
SOURCE(10916, 23)
   {
      word pd282;
      word x284;
      word x286;
      float tf287;
      pd282 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd282 ))))((word) &x←v13036, dir←v13008, (
            tf287 = (
               x284 = (*  (ptr) &fc283 ),  *(float*)&x284
               ) / (
               x286 = (*  (ptr) &fc285 ),  *(float*)&x286
               ),  *(word*)&tf287
            ), pd282);
      };
SOURCE(10941, 15)
   {
      word pd288;
      pd288 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd288 ))))((word) &p1←v12896, lo←v13176, x←v13036, pd288);
      };
SOURCE(10958, 33)
   {
      W2 var←c84104;
      {
         word pd289;
         word x291;
         word x292;
         float tf293;
         pd289 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd289 ))))((word) &var←c84104, dir←v13008, (
               tf293 = (
                  x291 = (*  (ptr) &fc290 ),  *(float*)&x291
                  ) / (
                  x292 = (*  (ptr) &fc285 ),  *(float*)&x292
                  ),  *(word*)&tf293
               ), pd289);
         };
      {
         W2 var←c0266;
         {
            word pd294;
            pd294 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd294 ))))((word) &var←c0266, lo←v13176, var←c84104, pd294);
            };
         p3←v12952 = var←c0266;
         };
      };
SOURCE(10993, 69)
   {
      W2 var←c84136;
      word var←c84168;
      {
         word pd295;
         pd295 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+5) );
         (void) ( *( (fPt) ((*  (ptr) pd295 ))))((word) &var←c84136, dir←v13008, (*  (ptr) &fc296 ), pd295);
         };
      {
         word x297;
         word pd298;
         word x299;
         word x301;
         pd298 = (* (( (ptr) (* (( (ptr) gf←c91048)+293)/* var←c84200 */  ))+9) );
         *(float*)&var←c84168 = ((
            x297 = length←v12868,  *(float*)&x297
            ) * (
            x299 = (word) ( *( (fPt) ((*  (ptr) pd298 ))))((*  (ptr) (&fc285) ), pd298),  *(float*)&x299
            )) / (
            x301 = (*  (ptr) &fc300 ),  *(float*)&x301
            );
         };
      {
         W2 var←c0270;
         {
            word pd302;
            pd302 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd302 ))))((word) &var←c0270, var←c84136, var←c84168, pd302);
            };
         sideVec←v12980 = var←c0270;
         };
      };
SOURCE(11064, 53)
   {
      W2 var←c84232;
      {
         W2 var←c84264;
         {
            word pd303;
            pd303 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd303 ))))((word) &var←c84264, dir←v13008, (*  (ptr) &fc276 ), pd303);
            };
         {
            W2 var←c0274;
            {
               word pd304;
               pd304 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+10) );
               (void) ( *( (fPt) ((*  (ptr) pd304 ))))((word) &var←c0274, var←c84264, sideVec←v12980, pd304);
               };
            var←c84232 = var←c0274;
            };
         };
      {
         W2 var←c0275;
         {
            word pd305;
            pd305 = (* (( (ptr) (* (( (ptr) gf←c91048)+291)/* var←c83848 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd305 ))))((word) &var←c0275, lo←v13176, var←c84232, pd305);
            };
         p2←v12924 = var←c0275;
         };
      };
SOURCE(11119, 18)
   patternTraj←v12840 = traj←v12796;
SOURCE(11139, 59)
   {
      word pd306;
      pd306 = (* (( (ptr) (* (( (ptr) gf←c91048)+292)/* var←c83944 */  ))+5) );
      seg1←v13064 = (word) ( *( (fPt) ((*  (ptr) pd306 ))))(lo←v13176, p1←v12896, (* (( (ptr) seg←v12768)+25) ), pd306);
      };
SOURCE(11200, 59)
   {
      word pd307;
      pd307 = (* (( (ptr) (* (( (ptr) gf←c91048)+292)/* var←c83944 */  ))+5) );
      seg2←v13092 = (word) ( *( (fPt) ((*  (ptr) pd307 ))))(p1←v12896, p2←v12924, (* (( (ptr) seg←v12768)+25) ), pd307);
      };
SOURCE(11261, 59)
   {
      word pd308;
      pd308 = (* (( (ptr) (* (( (ptr) gf←c91048)+292)/* var←c83944 */  ))+5) );
      seg3←v13120 = (word) ( *( (fPt) ((*  (ptr) pd308 ))))(p2←v12924, p3←v12952, (* (( (ptr) seg←v12768)+25) ), pd308);
      };
SOURCE(11322, 59)
   {
      word pd309;
      pd309 = (* (( (ptr) (* (( (ptr) gf←c91048)+292)/* var←c83944 */  ))+5) );
      seg4←v13148 = (word) ( *( (fPt) ((*  (ptr) pd309 ))))(p3←v12952, hi←v13204, (* (( (ptr) seg←v12768)+25) ), pd309);
      };
SOURCE(11383, 54)
   {
      word pd310;
      pd310 = (* (( (ptr) (* (( (ptr) gf←c91048)+294)/* var←c84296 */  ))+6) );
      success←v13232 = (word) ( *( (fPt) ((*  (ptr) pd310 ))))(patternTraj←v12840, 1, seg1←v13064, 0, pd310);
      };
SOURCE(11439, 54)
   {
      word pd311;
      pd311 = (* (( (ptr) (* (( (ptr) gf←c91048)+294)/* var←c84296 */  ))+6) );
      success←v13232 = (word) ( *( (fPt) ((*  (ptr) pd311 ))))(patternTraj←v12840, 1, seg2←v13092, 0, pd311);
      };
SOURCE(11495, 54)
   {
      word pd312;
      pd312 = (* (( (ptr) (* (( (ptr) gf←c91048)+294)/* var←c84296 */  ))+6) );
      success←v13232 = (word) ( *( (fPt) ((*  (ptr) pd312 ))))(patternTraj←v12840, 1, seg3←v13120, 0, pd312);
      };
SOURCE(11551, 54)
   {
      word pd313;
      pd313 = (* (( (ptr) (* (( (ptr) gf←c91048)+294)/* var←c84296 */  ))+6) );
      success←v13232 = (word) ( *( (fPt) ((*  (ptr) pd313 ))))(patternTraj←v12840, 1, seg4←v13148, 0, pd313);
      };
SOURCE(10624, 981)
   return(patternTraj←v12840);
   }

static void SetConic←P1260(ggData←v33140, event←v33168)
   word ggData←v33140;
   word event←v33168;
   {
   W7 var←c91112;
   register ptr gf←c91144 =  (ptr) &globalframe;
   /* declaration of var←c84328 skipped */ 
   /* declaration of r←v13304 skipped */ 
   /* SetConic: */ 
SOURCE(11655, 454)
   {
      word tmpAddr314;
      tmpAddr314 = (word) (( (ptr) &var←c91112)+4)/* var←c84328 */ ;
      (*  (ptr) tmpAddr314 ) = ( ((word)  (fPt) MakeConicAux←P4164) );
      (* (( (ptr) tmpAddr314) + 1) ) = 1;
      };
SOURCE(11853, 45)
   var←c91112.f6/* r←v13304 */  = (*  (ptr) XR←Narrow((*  (ptr) (* (( (ptr) event←v33168)+1) ) ), (* (( (ptr) gf←c91144)+25)
       )) );
SOURCE(11900, 163)
   {
      word x315;
      word x317;
      word x318;
      word x319;
      if (((
         x315 = var←c91112.f6/* r←v13304 */ ,  *(float*)&x315
         ) < (
         x317 = (*  (ptr) &fc316 ),  *(float*)&x317
         )) || ((
         x318 = var←c91112.f6/* r←v13304 */ ,  *(float*)&x318
         ) > (
         x319 = (*  (ptr) &fc283 ),  *(float*)&x319
         ))) {
SOURCE(11925, 130)
         {
            word pd320;
            pd320 = (* (( (ptr) (* (( (ptr) gf←c91144)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd320 ))))((* (( (ptr) ggData←v33140)+3) ), 0, (* (( (ptr) gf←c91144)+121) ), (* (( (ptr) gf←c91144)+44)
                ), pd320);
            };
SOURCE(12057, 6)
         return;
         };
      };
SOURCE(12068, 41)
   (void) SetCurveAux←P1620(ggData←v33140, (word) (( (bPt) &var←c91112)+16)/* var←c84328 */ , (* (( (ptr) gf←c91144)+45) ));
   }

static word MakeConicAux←P4164(lo←v47680, hi←v47708, props←v47736, formal←c91208)
   W2 lo←v47680;
   W2 hi←v47708;
   word props←v47736;
   word formal←c91208;
   {
   register ptr gf←c91176 =  (ptr) &globalframe;
   word seg←v47780;
   W2 p1←v13360;
   formal←c91208 = (formal←c91208 - 16);
   /* MakeConicAux: */ 
SOURCE(11690, 158)
SOURCE(11690, 158)
   seg←v47780 = 0;
SOURCE(11733, 66)
   {
      W2 var←c84360;
      {
         W2 var←c84392;
         {
            word pd321;
            pd321 = (* (( (ptr) (* (( (ptr) gf←c91176)+291)/* var←c83848 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd321 ))))((word) &var←c84392, hi←v47708, lo←v47680, pd321);
            };
         {
            W2 var←c0288;
            {
               word pd322;
               pd322 = (* (( (ptr) (* (( (ptr) gf←c91176)+291)/* var←c83848 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd322 ))))((word) &var←c0288, var←c84392, (*  (ptr) &fc276 ), pd322);
               };
            var←c84360 = var←c0288;
            };
         };
      {
         W2 var←c0289;
         {
            word pd323;
            pd323 = (* (( (ptr) (* (( (ptr) gf←c91176)+291)/* var←c83848 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd323 ))))((word) &var←c0289, var←c84360, lo←v47680, pd323);
            };
         p1←v13360 = var←c0289;
         };
      };
SOURCE(11801, 47)
   {
      word pd324;
      pd324 = (* (( (ptr) (* (( (ptr) gf←c91176)+292)/* var←c83944 */  ))+7) );
      seg←v47780 = (word) ( *( (fPt) ((*  (ptr) pd324 ))))(lo←v47680, p1←v13360, hi←v47708, (* (( (ptr) formal←c91208)+6) ), props←v47736, pd324)
      ;
      };
SOURCE(11690, 158)
   return(seg←v47780);
   }

static void SetConstraintType←P1320(ggData←v33228, event←v33256)
   word ggData←v33228;
   word event←v33256;
   {
   register ptr gf←c91240 =  (ptr) &globalframe;
   word constraint←v13404;
   /* SetConstraintType: */ 
SOURCE(12115, 296)
SOURCE(12159, 48)
   constraint←v13404 = XR←Narrow((*  (ptr) (* (( (ptr) event←v33256)+1) ) ), (* (( (ptr) gf←c91240)+13) ));
   if ((constraint←v13404 == 0)) {
      goto lab←L100003;
      };
   if (( (unsigned) (*(int*)constraint←v13404<0) == 0)) {
      goto lab←L100003;
      };
   (void) XR←RaiseError(XR←NarrowFault, 0);
   lab←L100003: ;
SOURCE(12209, 166)
   {
      word var←c84456;
      {
         word pd325;
         word pd326;
         pd325 = (* (( (ptr) (* (( (ptr) gf←c91240)+295)/* var←c84488 */  ))+8) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd325 ))))(constraint←v13404, (* (( (ptr) gf←c91240)+47) ), 0, pd325))) {
            var←c84456 = 2;
            }
         else {
            pd326 = (* (( (ptr) (* (( (ptr) gf←c91240)+295)/* var←c84488 */  ))+8) );
            if ((0 != (word) ( *( (fPt) ((*  (ptr) pd326 ))))(constraint←v13404, (* (( (ptr) gf←c91240)+48) ), 0, pd326))) {
               var←c84456 = 1;
               }
            else {
               var←c84456 = 0;
               };
            };
         };
      (* (( (ptr) (* (( (ptr) ggData←v33228)+16) ))+17) ) = var←c84456;
      };
SOURCE(12378, 33)
   (void) ShowConstraintType←P1440(ggData←v33228, event←v33256);
   }

static void SetMakeConstrained←P1380(formal←c0957, event←v33344)
   word formal←c0957;
   word event←v33344;
   {
   W12 var←c91272;
   /* declaration of ggData←v33316 skipped */ 
   register ptr gf←c91304 =  (ptr) &globalframe;
   /* declaration of var←c84520 skipped */ 
   /* declaration of cpGen←v13448 skipped */ 
   /* declaration of jointGen←v13476 skipped */ 
   /* declaration of thisCPNum←v13504 skipped */ 
   /* declaration of thisSegNum←v13532 skipped */ 
   /* declaration of constrained←v13560 skipped */ 
   word done←v13588 = 0;
   word scene←v13616;
   (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ) = formal←c0957;
   /* SetMakeConstrained: */ 
SOURCE(12417, 1809)
   {
      word tmpAddr327;
      tmpAddr327 = (word) (( (ptr) &var←c91272)+5)/* var←c84520 */ ;
      (*  (ptr) tmpAddr327 ) = ( ((word)  (fPt) DoConstrain←P4224) );
      (* (( (ptr) tmpAddr327) + 1) ) = 1;
      };
SOURCE(12462, 28)
   (* (( (ptr) &var←c91272)+7)/* cpGen←v13448 */  ) = 0;
SOURCE(12492, 24)
   (* (( (ptr) &var←c91272)+8)/* jointGen←v13476 */  ) = 0;
SOURCE(12546, 31)
   (* (( (ptr) &var←c91272)+11)/* constrained←v13560 */  ) = 0;
SOURCE(12579, 27)
   scene←v13616 = (* (( (ptr) (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ))+11) );
SOURCE(13686, 51)
   if (((* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ))+16) ))+17) ) == 0)) {
SOURCE(13729, 8)
      return;
      };
SOURCE(13739, 30)
   {
      word pd328;
      pd328 = (* (( (ptr) (* (( (ptr) gf←c91304)+289)/* var←c83304 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd328 ))))((* ((( (ptr) &var←c91272)+4)/* ggData←v33316 */ ) ), pd328);
      };
SOURCE(13771, 72)
   {
      word var←c84552;
      word pd329;
      pd329 = (* (( (ptr) (* (( (ptr) gf←c91304)+285)/* var←c82952 */  ))+32) );
      var←c84552 = (word) ( *( (fPt) ((*  (ptr) pd329 ))))(scene←v13616, 1, (word) (( (bPt) &var←c91272)+20)/* var←c84520 */ , 0, (* (
            ( (ptr) gf←c91304)+49) ), pd329);
      };
SOURCE(13845, 225)
   {
      W2 var←c84584;
      var←c84584.f0 = 11;
      {
         word var←c84616;
         var←c84616 = (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ))+16) ))+17) );
         switch (var←c84616) {
            case 0: 
               var←c84584.f1 = (* (( (ptr) gf←c91304)+34) );
               break;
            case 1: 
               var←c84584.f1 = (* (( (ptr) gf←c91304)+48) );
               break;
            case 2: 
               var←c84584.f1 = (* (( (ptr) gf←c91304)+47) );
               break;
            default: 
               var←c84584.f1 = (* (( (ptr) gf←c91304)+51) );
               break;
            };
         };
      {
         word pd330;
         pd330 = (* (( (ptr) (* (( (ptr) gf←c91304)+287)/* var←c83016 */  ))+14) );
         (void) ( *( (fPt) ((*  (ptr) pd330 ))))((* (( (ptr) (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ))+3) ), 0, (* (( (ptr) gf←c91304)+46)
             ), (* (( (ptr) gf←c91304)+50) ), var←c84584, pd330);
         };
      };
SOURCE(14072, 154)
   {
      word pd331;
      pd331 = (* (( (ptr) (* (( (ptr) gf←c91304)+290)/* var←c83368 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd331 ))))((* (( (ptr) gf←c91304)+28) ), (* (( (ptr) &var←c91272)+4)/* ggData←v33316 */  ), 0, 1, 0, 0, pd331)
      ;
      };
   }

static word DoConstrain←P4224(nextTrajD←v13720, formal←c91368)
   word nextTrajD←v13720;
   word formal←c91368;
   {
   register ptr gf←c91336 =  (ptr) &globalframe;
   word done←v13764;
   formal←c91368 = (formal←c91368 - 20);
   /* DoConstrain: */ 
SOURCE(12608, 1052)
SOURCE(12608, 1052)
   done←v13764 = 0;
SOURCE(12688, 79)
   {
      word var←c84648;
      {
         word pd332;
         pd332 = (* (( (ptr) (* (( (ptr) gf←c91336)+283)/* var←c82824 */  ))+7) );
         var←c84648 = (word) ( *( (fPt) ((*  (ptr) pd332 ))))((*  (ptr) nextTrajD←v13720 ), 0, pd332);
         };
      {
         word pd333;
         pd333 = (* (( (ptr) (* (( (ptr) gf←c91336)+289)/* var←c83304 */  ))+11) );
         (void) ( *( (fPt) ((*  (ptr) pd333 ))))((* (( (ptr) formal←c91368)+4) ), var←c84648, 0, pd333);
         };
      };
SOURCE(12769, 19)
   (* (( (ptr) formal←c91368)+11) ) = 0;
SOURCE(12790, 63)
   {
      word var←c84680;
      var←c84680 = XR←Narrow((* (( (ptr) nextTrajD←v13720)+1) ), (* (( (ptr) gf←c91336)+23) ));
      {
         word pd334;
         pd334 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+53) );
         (* (( (ptr) formal←c91368)+8) ) = (word) ( *( (fPt) ((*  (ptr) pd334 ))))(var←c84680, pd334);
         };
      };
SOURCE(12855, 224)
   {
      register word thisJointNum←v13792;
      {
         word pd335;
         pd335 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+61) );
         thisJointNum←v13792 = (word) ( *( (fPt) ((*  (ptr) pd335 ))))((* ((( (ptr) formal←c91368)+8)) ), pd335);
         };
      lab←L100007: ;
      if (( (int)thisJointNum←v13792 !=  (int) (word) -1)) {
         }
      else {
         goto lab←L100004;
         };
SOURCE(12969, 110)
      {
         word pd336;
         pd336 = (* (( (ptr) (* (( (ptr) gf←c91336)+294)/* var←c84296 */  ))+26) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd336 ))))((*  (ptr) nextTrajD←v13720 ), (* (( (ptr) (* (( (ptr) (* (( (ptr) formal←c91368)+4)
                   ))+16) ))+17) ), SGNCK(thisJointNum←v13792), pd336))) {
            (* (( (ptr) formal←c91368)+11) ) =  (unsigned) 1;
            }
         else {
            (* (( (ptr) formal←c91368)+11) ) =  (unsigned) (0 != (* (( (ptr) formal←c91368)+11) ));
            };
         };
      {
         word pd337;
         pd337 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+61) );
         thisJointNum←v13792 = (word) ( *( (fPt) ((*  (ptr) pd337 ))))((* ((( (ptr) formal←c91368)+8)) ), pd337);
         };
      goto lab←L100007;
      lab←L100004: ;
      };
SOURCE(13122, 97)
   {
      word var←c84744;
      word var←c84776;
      var←c84744 = XR←Narrow((* (( (ptr) (*  (ptr) nextTrajD←v13720 ))+1) ), (* (( (ptr) gf←c91336)+22) ));
      var←c84776 = XR←Narrow((* (( (ptr) nextTrajD←v13720)+1) ), (* (( (ptr) gf←c91336)+23) ));
      {
         word pd338;
         pd338 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+48) );
         (* (( (ptr) formal←c91368)+7) ) = (word) ( *( (fPt) ((*  (ptr) pd338 ))))(var←c84744, var←c84776, pd338);
         };
      };
SOURCE(13221, 12)
   done←v13764 = 0;
SOURCE(13235, 68)
   {
      W3 var←c84808;
      {
         word pd339;
         pd339 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+51) );
         (void) ( *( (fPt) ((*  (ptr) pd339 ))))((word) &var←c84808, (* (( (ptr) formal←c91368)+7) ), pd339);
         };
      done←v13764 = var←c84808.f2;
      (* (( (ptr) formal←c91368)+9) ) = var←c84808.f1;
      (* (( (ptr) formal←c91368)+10) ) = var←c84808.f0;
      };
SOURCE(13318, 232)
   lab←L100010: ;
   if ((0 == done←v13764)) {
      }
   else {
      goto lab←L100008;
      };
SOURCE(13332, 116)
   {
      word pd340;
      pd340 = (* (( (ptr) (* (( (ptr) gf←c91336)+294)/* var←c84296 */  ))+27) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd340 ))))((*  (ptr) nextTrajD←v13720 ), (* (( (ptr) (* (( (ptr) (* (( (ptr) formal←c91368)+4)
                ))+16) ))+17) ), (* (( (ptr) formal←c91368)+10) ), (* (( (ptr) formal←c91368)+9) ), pd340))) {
         (* (( (ptr) formal←c91368)+11) ) =  (unsigned) 1;
         }
      else {
         (* (( (ptr) formal←c91368)+11) ) =  (unsigned) (0 != (* (( (ptr) formal←c91368)+11) ));
         };
      };
SOURCE(13482, 68)
   {
      W3 var←c84840;
      {
         word pd341;
         pd341 = (* (( (ptr) (* (( (ptr) gf←c91336)+296)/* var←c84712 */  ))+51) );
         (void) ( *( (fPt) ((*  (ptr) pd341 ))))((word) &var←c84840, (* (( (ptr) formal←c91368)+7) ), pd341);
         };
      done←v13764 = var←c84840.f2;
      (* (( (ptr) formal←c91368)+9) ) = var←c84840.f1;
      (* (( (ptr) formal←c91368)+10) ) = var←c84840.f0;
      };
   goto lab←L100010;
   lab←L100008: ;
SOURCE(13561, 99)
   if ((0 != (* (( (ptr) formal←c91368)+11) ))) {
SOURCE(13581, 79)
      {
         word var←c84872;
         {
            word pd342;
            pd342 = (* (( (ptr) (* (( (ptr) gf←c91336)+283)/* var←c82824 */  ))+7) );
            var←c84872 = (word) ( *( (fPt) ((*  (ptr) pd342 ))))((*  (ptr) nextTrajD←v13720 ), 0, pd342);
            };
         {
            word pd343;
            pd343 = (* (( (ptr) (* (( (ptr) gf←c91336)+289)/* var←c83304 */  ))+11) );
            (void) ( *( (fPt) ((*  (ptr) pd343 ))))((* (( (ptr) formal←c91368)+4) ), var←c84872, 0, pd343);
            };
         };
      };
SOURCE(12608, 1052)
   return(done←v13764);
   }

static void ShowConstraintType←P1440(ggData←v33404, event←v33432)
   word ggData←v33404;
   word event←v33432;
   {
   register ptr gf←c91400 =  (ptr) &globalframe;
   /* ShowConstraintType: */ 
SOURCE(14232, 265)
SOURCE(14277, 220)
   {
      W2 var←c84904;
      var←c84904.f0 = 11;
      {
         word var←c84936;
         var←c84936 = (* (( (ptr) (* (( (ptr) ggData←v33404)+16) ))+17) );
         switch (var←c84936) {
            case 0: 
               var←c84904.f1 = (* (( (ptr) gf←c91400)+34) );
               break;
            case 1: 
               var←c84904.f1 = (* (( (ptr) gf←c91400)+48) );
               break;
            case 2: 
               var←c84904.f1 = (* (( (ptr) gf←c91400)+47) );
               break;
            default: 
               var←c84904.f1 = (* (( (ptr) gf←c91400)+51) );
               break;
            };
         };
      {
         word pd344;
         pd344 = (* (( (ptr) (* (( (ptr) gf←c91400)+287)/* var←c83016 */  ))+14) );
         (void) ( *( (fPt) ((*  (ptr) pd344 ))))((* (( (ptr) ggData←v33404)+3) ), 0, (* (( (ptr) gf←c91400)+113) ), (* (( (ptr) gf←c91400)+54)
             ), var←c84904, pd344);
         };
      };
   }

static void SetBezier←P1500(ggData←v33492, event←v33520)
   word ggData←v33492;
   word event←v33520;
   {
   W6 var←c91432;
   register ptr gf←c91464 =  (ptr) &globalframe;
   /* declaration of var←c84968 skipped */ 
   /* SetBezier: */ 
SOURCE(14503, 328)
   {
      word tmpAddr345;
      tmpAddr345 = (word) (( (ptr) &var←c91432)+4)/* var←c84968 */ ;
      (*  (ptr) tmpAddr345 ) = ( ((word)  (fPt) MakeBezierAux←P4332) );
      (* (( (ptr) tmpAddr345) + 1) ) = 1;
      };
SOURCE(14788, 43)
   (void) SetCurveAux←P1620(ggData←v33492, (word) (( (bPt) &var←c91432)+16)/* var←c84968 */ , (* (( (ptr) gf←c91464)+55) ));
   }

static word MakeBezierAux←P4332(lo←v51492, hi←v51520, props←v51548, formal←c91528)
   W2 lo←v51492;
   W2 hi←v51520;
   word props←v51548;
   word formal←c91528;
   {
   register ptr gf←c91496 =  (ptr) &globalframe;
   word seg←v51592;
   word length←v13880;
   W2 dir←v13908;
   W2 p1←v13936;
   W2 p2←v13964;
   formal←c91528 = (formal←c91528 - 16);
   /* MakeBezierAux: */ 
SOURCE(14539, 244)
SOURCE(14539, 244)
   seg←v51592 = 0;
SOURCE(14613, 35)
   {
      word pd346;
      pd346 = (* (( (ptr) (* (( (ptr) gf←c91496)+291)/* var←c83848 */  ))+19) );
      length←v13880 = (word) ( *( (fPt) ((*  (ptr) pd346 ))))(lo←v51492, hi←v51520, pd346);
      };
SOURCE(14650, 26)
   {
      word pd347;
      pd347 = (* (( (ptr) (* (( (ptr) gf←c91496)+291)/* var←c83848 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd347 ))))((word) &dir←v13908, hi←v51520, lo←v51492, pd347);
      };
SOURCE(14678, 19)
   (void) GetPt←P1020((word) &p1←v13936, lo←v51492, dir←v13908);
SOURCE(14699, 33)
   {
      W2 var←c0337;
      {
         W2 var←c85000;
         {
            word x348;
            *(float*)&var←c85000.f0 =  - (
               x348 = dir←v13908.f0,  *(float*)&x348
               );
            };
         {
            word x349;
            *(float*)&var←c85000.f1 =  - (
               x349 = dir←v13908.f1,  *(float*)&x349
               );
            };
         (void) GetPt←P1020((word) &var←c0337, hi←v51520, var←c85000);
         };
      p2←v13964 = var←c0337;
      };
SOURCE(14734, 49)
   {
      word pd350;
      pd350 = (* (( (ptr) (* (( (ptr) gf←c91496)+292)/* var←c83944 */  ))+6) );
      seg←v51592 = (word) ( *( (fPt) ((*  (ptr) pd350 ))))(lo←v51492, p1←v13936, p2←v13964, hi←v51520, props←v51548, pd350);
      };
SOURCE(14539, 244)
   return(seg←v51592);
   }

static word ForEachOutlineRun←P1560(formal←c0958, selectClass←v9848, formal←c0959, formal←c0960, formal←c0961)
   word formal←c0958;
   word selectClass←v9848;
   word formal←c0959;
   word formal←c0960;
   word formal←c0961;
   {
   W15 var←c91560;
   /* declaration of scene←v9820 skipped */ 
   /* declaration of runProc←v9876 skipped */ 
   /* declaration of segmentsOnly←v9904 skipped */ 
   /* declaration of selectNewRuns←v9932 skipped */ 
   register ptr gf←c91592 =  (ptr) &globalframe;
   /* declaration of bBox←v9976 skipped */ 
   /* declaration of var←c85032 skipped */ 
   /* declaration of var←c85064 skipped */ 
   /* declaration of var←c85096 skipped */ 
   (* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ) = formal←c0958;
   (* (( (ptr) &var←c91560)+5)/* runProc←v9876 */  ) = formal←c0959;
   (* (( (ptr) &var←c91560)+6)/* segmentsOnly←v9904 */  ) = formal←c0960;
   (* (( (ptr) &var←c91560)+7)/* selectNewRuns←v9932 */  ) = formal←c0961;
   /* ForEachOutlineRun: */ 
SOURCE(14856, 1641)
   {
      word tmpAddr351;
      tmpAddr351 = (word) (( (ptr) &var←c91560)+9)/* var←c85032 */ ;
      (*  (ptr) tmpAddr351 ) = ( ((word)  (fPt) DoRestoreSelections←P4512) );
      (* (( (ptr) tmpAddr351) + 1) ) = 1;
      };
   {
      word tmpAddr352;
      tmpAddr352 = (word) (( (ptr) &var←c91560)+11)/* var←c85064 */ ;
      (*  (ptr) tmpAddr352 ) = ( ((word)  (fPt) DoReplaceRuns←P4452) );
      (* (( (ptr) tmpAddr352) + 1) ) = 1;
      };
   {
      word tmpAddr353;
      tmpAddr353 = (word) (( (ptr) &var←c91560)+13)/* var←c85096 */ ;
      (*  (ptr) tmpAddr353 ) = ( ((word)  (fPt) DoSaveSelections←P4392) );
      (* (( (ptr) tmpAddr353) + 1) ) = 1;
      };
SOURCE(14856, 1641)
   (* (( (ptr) &var←c91560)+8)/* bBox←v9976 */  ) = 0;
SOURCE(16154, 48)
   {
      word pd354;
      pd354 = (* (( (ptr) (* (( (ptr) gf←c91592)+285)/* var←c82952 */  ))+45) );
      (* (( (ptr) &var←c91560)+8)/* bBox←v9976 */  ) = (word) ( *( (fPt) ((*  (ptr) pd354 ))))((* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ), 0, 0, pd354)
      ;
      };
SOURCE(16204, 51)
   {
      word pd355;
      pd355 = (* (( (ptr) (* (( (ptr) gf←c91592)+281)/* var←c82760 */  ))+22) );
      (void) ( *( (fPt) ((*  (ptr) pd355 ))))((* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ), 0, 2, pd355);
      };
SOURCE(16303, 55)
   {
      word var←c85128;
      word pd356;
      pd356 = (* (( (ptr) (* (( (ptr) gf←c91592)+285)/* var←c82952 */  ))+31) );
      var←c85128 = (word) ( *( (fPt) ((*  (ptr) pd356 ))))((* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ), 0, (word) (( (bPt) &var←c91560)+52)
         /* var←c85096 */ , 0, pd356);
      };
SOURCE(16360, 77)
   {
      word var←c85160;
      word pd357;
      pd357 = (* (( (ptr) (* (( (ptr) gf←c91592)+285)/* var←c82952 */  ))+32) );
      var←c85160 = (word) ( *( (fPt) ((*  (ptr) pd357 ))))((* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ), 1, (word) (( (bPt) &var←c91560)+44)
         /* var←c85064 */ , 2, (* (( (ptr) gf←c91592)+162) ), pd357);
      };
SOURCE(16439, 58)
   {
      word var←c85192;
      word pd358;
      pd358 = (* (( (ptr) (* (( (ptr) gf←c91592)+285)/* var←c82952 */  ))+31) );
      var←c85192 = (word) ( *( (fPt) ((*  (ptr) pd358 ))))((* (( (ptr) &var←c91560)+4)/* scene←v9820 */  ), 0, (word) (( (bPt) &var←c91560)+36)
         /* var←c85032 */ , 0, pd358);
      };
SOURCE(14856, 1641)
   return((* (( (ptr) &var←c91560)+8)/* bBox←v9976 */  ));
   }

static word DoSaveSelections←P4392(slice←v14140, formal←c91656)
   word slice←v14140;
   word formal←c91656;
   {
   register ptr gf←c91624 =  (ptr) &globalframe;
   word done←v14184;
   formal←c91656 = (formal←c91656 - 52);
   /* DoSaveSelections: */ 
SOURCE(15027, 125)
SOURCE(15027, 125)
   done←v14184 = 0;
SOURCE(15098, 54)
   {
      word pd359;
      pd359 = (* (( (ptr) (* (( (ptr) gf←c91624)+281)/* var←c82760 */  ))+8) );
      (void) ( *( (fPt) ((*  (ptr) pd359 ))))(slice←v14140, (* (( (ptr) formal←c91656)+4) ), pd359);
      };
SOURCE(15027, 125)
   return(done←v14184);
   }

static word DoReplaceRuns←P4452(sliceD←v14244, formal←c91720)
   word sliceD←v14244;
   word formal←c91720;
   {
   register ptr gf←c91688 =  (ptr) &globalframe;
   word done←v14288;
   word priority←v14420;
   word newOutline←v14448 = 0;
   formal←c91720 = (formal←c91720 - 44);
   /* DoReplaceRuns: */ 
SOURCE(15157, 867)
SOURCE(15157, 867)
   done←v14288 = 0;
SOURCE(15270, 646)
   {
      word pd360;
      pd360 = (* (( (ptr) (* (( (ptr) gf←c91688)+285)/* var←c82952 */  ))+39) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd360 ))))((*  (ptr) (sliceD←v14244) ), pd360))) {
SOURCE(15313, 51)
         {
            word pd361;
            pd361 = (* (( (ptr) (* (( (ptr) gf←c91688)+285)/* var←c82952 */  ))+21) );
            priority←v14420 = (word) ( *( (fPt) ((*  (ptr) pd361 ))))((* (( (ptr) formal←c91720)+4) ), (*  (ptr) sliceD←v14244 ), pd361)
            ;
            };
SOURCE(15366, 89)
         {
            word pd362;
            pd362 = (* (( (ptr) (* (( (ptr) gf←c91688)+286)/* var←c82984 */  ))+9) );
            newOutline←v14448 = (word) ( *( (fPt) ((*  (ptr) pd362 ))))(sliceD←v14244, (* (( (ptr) formal←c91720)+5) ), (* (( (ptr) formal←c91720)+6)
                ), (* (( (ptr) formal←c91720)+7) ), pd362);
            };
SOURCE(15457, 114)
         if ((newOutline←v14448 != 0)) {
SOURCE(15484, 40)
            {
               word pd363;
               pd363 = (* (( (ptr) (* (( (ptr) gf←c91688)+285)/* var←c82952 */  ))+13) );
               (void) ( *( (fPt) ((*  (ptr) pd363 ))))((* (( (ptr) formal←c91720)+4) ), (*  (ptr) sliceD←v14244 ), pd363);
               };
SOURCE(15526, 45)
            {
               word pd364;
               pd364 = (* (( (ptr) (* (( (ptr) gf←c91688)+285)/* var←c82952 */  ))+9) );
               (void) ( *( (fPt) ((*  (ptr) pd364 ))))((* (( (ptr) formal←c91720)+4) ), newOutline←v14448, priority←v14420, pd364);
               };
            };
         }
      else {
SOURCE(15583, 338)
         {
            word parent←v14492;
SOURCE(15585, 48)
            {
               word pd365;
               pd365 = (* (( (ptr) (* (( (ptr) gf←c91688)+288)/* var←c83176 */  ))+64) );
               parent←v14492 = (word) ( *( (fPt) ((*  (ptr) pd365 ))))((*  (ptr) (sliceD←v14244) ), pd365);
               };
SOURCE(15635, 58)
            {
               word pd366;
               pd366 = (* (( (ptr) (* (( (ptr) gf←c91688)+288)/* var←c83176 */  ))+66) );
               priority←v14420 = (word) ( *( (fPt) ((*  (ptr) pd366 ))))(parent←v14492, (*  (ptr) sliceD←v14244 ), pd366);
               };
SOURCE(15695, 89)
            {
               word pd367;
               pd367 = (* (( (ptr) (* (( (ptr) gf←c91688)+286)/* var←c82984 */  ))+9) );
               newOutline←v14448 = (word) ( *( (fPt) ((*  (ptr) pd367 ))))(sliceD←v14244, (* (( (ptr) formal←c91720)+5) ), (* (( (ptr) formal←c91720)+6)
                   ), (* (( (ptr) formal←c91720)+7) ), pd367);
               };
SOURCE(15786, 130)
            if ((newOutline←v14448 != 0)) {
SOURCE(15813, 46)
               {
                  word var←c85256;
                  word pd368;
                  pd368 = (* (( (ptr) (* (( (ptr) gf←c91688)+297)/* var←c85224 */  ))+13) );
                  var←c85256 = (word) ( *( (fPt) ((*  (ptr) pd368 ))))(parent←v14492, (*  (ptr) sliceD←v14244 ), pd368);
                  };
SOURCE(15861, 55)
               {
                  word pd369;
                  pd369 = (* (( (ptr) (* (( (ptr) gf←c91688)+297)/* var←c85224 */  ))+11) );
                  (void) ( *( (fPt) ((*  (ptr) pd369 ))))(parent←v14492, newOutline←v14448, priority←v14420, pd369);
                  };
               };
            };
         };
      };
SOURCE(15924, 100)
   if ((newOutline←v14448 != 0)) {
SOURCE(15949, 75)
      {
         word var←c85288;
         {
            word pd370;
            pd370 = (* (( (ptr) (* (( (ptr) gf←c91688)+283)/* var←c82824 */  ))+7) );
            var←c85288 = (word) ( *( (fPt) ((*  (ptr) pd370 ))))(newOutline←v14448, 0, pd370);
            };
         {
            word pd371;
            pd371 = (* (( (ptr) (* (( (ptr) gf←c91688)+298)/* var←c85320 */  ))+14) );
            (void) ( *( (fPt) ((*  (ptr) pd371 ))))((* (( (ptr) formal←c91720)+8) ), var←c85288, pd371);
            };
         };
      };
SOURCE(15157, 867)
   return(done←v14288);
   }

static word DoRestoreSelections←P4512(slice←v14348, formal←c91784)
   word slice←v14348;
   word formal←c91784;
   {
   register ptr gf←c91752 =  (ptr) &globalframe;
   word done←v14392;
   formal←c91784 = (formal←c91784 - 36);
   /* DoRestoreSelections: */ 
SOURCE(16029, 120)
SOURCE(16029, 120)
   done←v14392 = 0;
SOURCE(16103, 46)
   {
      word pd372;
      pd372 = (* (( (ptr) (* (( (ptr) gf←c91752)+281)/* var←c82760 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd372 ))))(slice←v14348, (* (( (ptr) formal←c91784)+4) ), pd372);
      };
SOURCE(16029, 120)
   return(done←v14392);
   }

static void SetCurveAux←P1620(ggData←v10036, formal←c0962, formal←c0963)
   word ggData←v10036;
   word formal←c0962;
   word formal←c0963;
   {
   W8 var←c91816;
   /* declaration of makeCurve←v10064 skipped */ 
   /* declaration of type←v10092 skipped */ 
   register ptr gf←c91848 =  (ptr) &globalframe;
   /* declaration of var←c85352 skipped */ 
   var←c91816.f4/* makeCurve←v10064 */  = formal←c0962;
   var←c91816.f5/* type←v10092 */  = formal←c0963;
   /* SetCurveAux: */ 
SOURCE(16503, 1860)
   {
      word tmpAddr373;
      tmpAddr373 = (word) (( (ptr) &var←c91816)+6)/* var←c85352 */ ;
      (*  (ptr) tmpAddr373 ) = ( ((word)  (fPt) RunOfSegs←P4620) );
      (* (( (ptr) tmpAddr373) + 1) ) = 1;
      };
SOURCE(17573, 790)
   {
      word pd374;
      pd374 = (* (( (ptr) (* (( (ptr) gf←c91848)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd374 ))))((* (( (ptr) ggData←v10036)+11) ), 0, pd374))) {
SOURCE(17625, 101)
         {
            word pd375;
            pd375 = (* (( (ptr) (* (( (ptr) gf←c91848)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd375 ))))((* (( (ptr) ggData←v10036)+3) ), 0, (* (( (ptr) gf←c91848)+121) ), (* (( (ptr) gf←c91848)+56)
                ), pd375);
            };
         }
      else {
SOURCE(17728, 46)
         {
            word pd376;
            pd376 = (* (( (ptr) (* (( (ptr) gf←c91848)+284)/* var←c82856 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd376 ))))((* (( (ptr) gf←c91848)+57) ), ggData←v10036, pd376);
            };
SOURCE(17807, 79)
         {
            word pd377;
            pd377 = (* (( (ptr) (* (( (ptr) gf←c91848)+289)/* var←c83304 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd377 ))))(ggData←v10036, 0, 0, 0, 0, 0
               , 1, 0, 0, 0, pd377);
            };
SOURCE(17888, 102)
         {
            word var←c85384;
            var←c85384 = (word) ForEachOutlineRun←P1560((* (( (ptr) ggData←v10036)+11) ), 0, (word) (( (bPt) &var←c91816)+24)/* var←c85352 */ , 1, 1)
            ;
            {
               word pd378;
               pd378 = (* (( (ptr) (* (( (ptr) gf←c91848)+289)/* var←c83304 */  ))+11) );
               (void) ( *( (fPt) ((*  (ptr) pd378 ))))(ggData←v10036, var←c85384, 0, pd378);
               };
            };
SOURCE(17992, 33)
         {
            word pd379;
            pd379 = (* (( (ptr) (* (( (ptr) gf←c91848)+299)/* var←c85416 */  ))+13) );
            (void) ( *( (fPt) ((*  (ptr) pd379 ))))((* ((( (ptr) ggData←v10036)+13)) ), pd379);
            };
SOURCE(18027, 32)
         {
            word pd380;
            pd380 = (* (( (ptr) (* (( (ptr) gf←c91848)+299)/* var←c85416 */  ))+9) );
            (void) ( *( (fPt) ((*  (ptr) pd380 ))))((* (( (ptr) ggData←v10036)+13) ), 0, pd380);
            };
SOURCE(18061, 29)
         {
            word pd381;
            pd381 = (* (( (ptr) (* (( (ptr) gf←c91848)+284)/* var←c82856 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd381 ))))(ggData←v10036, pd381);
            };
SOURCE(18092, 115)
         {
            word var←c85448;
            {
               word pd382;
               pd382 = (* (( (ptr) (* (( (ptr) gf←c91848)+300)/* var←c85480 */  ))+9) );
               var←c85448 = (word) ( *( (fPt) ((*  (ptr) pd382 ))))(var←c91816.f5/* type←v10092 */ , pd382);
               };
            {
               W2 var←c85512;
               var←c85512.f0 = 11;
               var←c85512.f1 = var←c85448;
               {
                  word pd383;
                  pd383 = (* (( (ptr) (* (( (ptr) gf←c91848)+287)/* var←c83016 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd383 ))))((* (( (ptr) ggData←v10036)+3) ), 0, (* (( (ptr) gf←c91848)+46) ), (* (( (ptr) gf←c91848)+58)
                      ), var←c85512, pd383);
                  };
               };
            };
SOURCE(18209, 154)
         {
            word pd384;
            pd384 = (* (( (ptr) (* (( (ptr) gf←c91848)+290)/* var←c83368 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd384 ))))((* (( (ptr) gf←c91848)+28) ), ggData←v10036, 0, 1, 0, 0, pd384);
            };
         };
      };
   }

static word RunOfSegs←P4620(run←v54476, formal←c91912)
   word run←v54476;
   word formal←c91912;
   {
   register ptr gf←c91880 =  (ptr) &globalframe;
   word traj←v54520;
   word runData←v14580;
   word runParts←v14608;
   word segGen←v14636;
   word initialSeg←v14664;
   formal←c91912 = (formal←c91912 - 24);
   /* RunOfSegs: */ 
SOURCE(16580, 987)
SOURCE(16580, 987)
   traj←v54520 = 0;
SOURCE(16603, 42)
   runData←v14580 = XR←Narrow((* (( (ptr) (*  (ptr) run←v54476 ))+1) ), (* (( (ptr) gf←c91880)+22) ));
SOURCE(16647, 39)
   runParts←v14608 = XR←Narrow((* (( (ptr) run←v54476)+1) ), (* (( (ptr) gf←c91880)+23) ));
SOURCE(16688, 75)
   {
      word pd385;
      pd385 = (* (( (ptr) (* (( (ptr) gf←c91880)+296)/* var←c84712 */  ))+42) );
      segGen←v14636 = (word) ( *( (fPt) ((*  (ptr) pd385 ))))(runData←v14580, runParts←v14608, pd385);
      };
SOURCE(16765, 52)
   {
      word pd386;
      pd386 = (* (( (ptr) (* (( (ptr) gf←c91880)+296)/* var←c84712 */  ))+46) );
      initialSeg←v14664 = (word) ( *( (fPt) ((*  (ptr) pd386 ))))(segGen←v14636, pd386);
      };
SOURCE(16819, 36)
   if ((initialSeg←v14664 == 0)) {
SOURCE(16844, 11)
      return(0);
      };
SOURCE(16887, 39)
   {
      word pd387;
      pd387 = (* (( (ptr) (* (( (ptr) gf←c91880)+294)/* var←c84296 */  ))+4) );
      traj←v54520 = (word) ( *( (fPt) ((*  (ptr) pd387 ))))((*  (W2Pt) ((( (ptr) initialSeg←v14664)+9)) ), pd387);
      };
SOURCE(16928, 511)
   {
      register word seg←v14708;
      seg←v14708 = initialSeg←v14664;
      lab←L100014: ;
      if ((seg←v14708 != 0)) {
         }
      else {
         goto lab←L100011;
         };
SOURCE(17009, 430)
      {
         word var←c85544;
         var←c85544 = (*  (ptr) (*  (ptr) seg←v14708 ) );
         if ((((var←c85544 == (* (( (ptr) gf←c91880)+41) )) || (var←c85544 == (* (( (ptr) gf←c91880)+42) ))) || (var←c85544 == (* (
            ( (ptr) gf←c91880)+45) ))) || (var←c85544 == (* (( (ptr) gf←c91880)+55) ))) {
SOURCE(17100, 50)
            {
               word pd388;
               pd388 = (* (( (ptr) (* (( (ptr) gf←c91880)+294)/* var←c84296 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd388 ))))(seg←v14708, traj←v54520, (* (( (ptr) formal←c91912)+4) ), (* (( (ptr) formal←c91912)+5)
                   ), pd388);
               };
            }
         else {
            if ((var←c85544 == (* (( (ptr) gf←c91880)+59) ))) {
SOURCE(17185, 254)
               if (((* (( (ptr) formal←c91912)+5) ) == (* (( (ptr) gf←c91880)+41) )) ||  ( ((* (( (ptr) runData←v14580)+1) ) == 1) ? ((*  (ptr) runData←v14580 ) != 2) : 0 ) ) {
SOURCE(17250, 139)
                  {
                     word pd389;
                     pd389 = (* (( (ptr) (* (( (ptr) gf←c91880)+294)/* var←c84296 */  ))+13) );
                     (void) ( *( (fPt) ((*  (ptr) pd389 ))))(seg←v14708, traj←v54520, (* (( (ptr) formal←c91912)+4) ), (* (( (ptr) formal←c91912)+5)
                         ), pd389);
                     };
                  }
               else {
SOURCE(17389, 50)
                  {
                     word pd390;
                     pd390 = (* (( (ptr) (* (( (ptr) gf←c91880)+294)/* var←c84296 */  ))+12) );
                     (void) ( *( (fPt) ((*  (ptr) pd390 ))))(seg←v14708, traj←v54520, (* (( (ptr) formal←c91912)+4) ), (* (( (ptr) formal←c91912)+5)
                         ), pd390);
                     };
                  };
               }
            else {
SOURCE(17489, 5)
               (void) XR←RaiseUnnamedError();
               };
            };
         };
      {
         word pd391;
         pd391 = (* (( (ptr) (* (( (ptr) gf←c91880)+296)/* var←c84712 */  ))+46) );
         seg←v14708 = (word) ( *( (fPt) ((*  (ptr) pd391 ))))(segGen←v14636, pd391);
         };
      goto lab←L100014;
      lab←L100011: ;
      };
SOURCE(17505, 62)
   {
      word pd392;
      pd392 = (* (( (ptr) (* (( (ptr) gf←c91880)+283)/* var←c82824 */  ))+57) );
      (void) ( *( (fPt) ((*  (ptr) pd392 ))))(traj←v54520, 0, (* (( (ptr) runData←v14580)+6) ), 0, pd392);
      };
SOURCE(16580, 987)
   return(traj←v54520);
   }

static void SetPatternAux←P1680(ggData←v10284, formal←c0964)
   word ggData←v10284;
   word formal←c0964;
   {
   W7 var←c91944;
   /* declaration of pattern←v10312 skipped */ 
   register ptr gf←c91976 =  (ptr) &globalframe;
   /* declaration of var←c85576 skipped */ 
   word bBox←v14780 = 0;
   var←c91944.f4/* pattern←v10312 */  = formal←c0964;
   /* SetPatternAux: */ 
SOURCE(18455, 1250)
   {
      word tmpAddr393;
      tmpAddr393 = (word) (( (ptr) &var←c91944)+5)/* var←c85576 */ ;
      (*  (ptr) tmpAddr393 ) = ( ((word)  (fPt) RunOfSegs←P4728) );
      (* (( (ptr) tmpAddr393) + 1) ) = 1;
      };
SOURCE(19211, 79)
   {
      word pd394;
      pd394 = (* (( (ptr) (* (( (ptr) gf←c91976)+289)/* var←c83304 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd394 ))))(ggData←v10284, 0, 0, 0, 0, 0
         , 1, 0, 0, 0, pd394);
      };
SOURCE(19292, 69)
   bBox←v14780 = (word) ForEachOutlineRun←P1560((* (( (ptr) ggData←v10284)+11) ), 0, (word) (( (bPt) &var←c91944)+20)/* var←c85576 */ , 1, 1)
   ;
SOURCE(19363, 44)
   {
      word pd395;
      pd395 = (* (( (ptr) (* (( (ptr) gf←c91976)+289)/* var←c83304 */  ))+11) );
      (void) ( *( (fPt) ((*  (ptr) pd395 ))))(ggData←v10284, bBox←v14780, 0, pd395);
      };
SOURCE(19409, 33)
   {
      word pd396;
      pd396 = (* (( (ptr) (* (( (ptr) gf←c91976)+299)/* var←c85416 */  ))+13) );
      (void) ( *( (fPt) ((*  (ptr) pd396 ))))((* ((( (ptr) ggData←v10284)+13)) ), pd396);
      };
SOURCE(19444, 32)
   {
      word pd397;
      pd397 = (* (( (ptr) (* (( (ptr) gf←c91976)+299)/* var←c85416 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd397 ))))((* (( (ptr) ggData←v10284)+13) ), 0, pd397);
      };
SOURCE(19478, 71)
   {
      word pd398;
      pd398 = (* (( (ptr) (* (( (ptr) gf←c91976)+287)/* var←c83016 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd398 ))))((* (( (ptr) ggData←v10284)+3) ), 0, (* (( (ptr) gf←c91976)+46) ), (* (( (ptr) gf←c91976)+60)
          ), pd398);
      };
SOURCE(19551, 154)
   {
      word pd399;
      pd399 = (* (( (ptr) (* (( (ptr) gf←c91976)+290)/* var←c83368 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd399 ))))((* (( (ptr) gf←c91976)+28) ), ggData←v10284, 0, 1, 0, 0, pd399);
      };
   }

static word RunOfSegs←P4728(run←v56476, formal←c92040)
   word run←v56476;
   word formal←c92040;
   {
   register ptr gf←c92008 =  (ptr) &globalframe;
   word traj←v56520;
   word runData←v14824;
   word runParts←v14852;
   word segGen←v14880;
   word initialSeg←v14908;
   formal←c92040 = (formal←c92040 - 20);
   /* RunOfSegs: */ 
SOURCE(18518, 672)
SOURCE(18518, 672)
   traj←v56520 = 0;
SOURCE(18541, 42)
   runData←v14824 = XR←Narrow((* (( (ptr) (*  (ptr) run←v56476 ))+1) ), (* (( (ptr) gf←c92008)+22) ));
SOURCE(18585, 39)
   runParts←v14852 = XR←Narrow((* (( (ptr) run←v56476)+1) ), (* (( (ptr) gf←c92008)+23) ));
SOURCE(18626, 75)
   {
      word pd400;
      pd400 = (* (( (ptr) (* (( (ptr) gf←c92008)+296)/* var←c84712 */  ))+42) );
      segGen←v14880 = (word) ( *( (fPt) ((*  (ptr) pd400 ))))(runData←v14824, runParts←v14852, pd400);
      };
SOURCE(18703, 52)
   {
      word pd401;
      pd401 = (* (( (ptr) (* (( (ptr) gf←c92008)+296)/* var←c84712 */  ))+46) );
      initialSeg←v14908 = (word) ( *( (fPt) ((*  (ptr) pd401 ))))(segGen←v14880, pd401);
      };
SOURCE(18757, 36)
   if ((initialSeg←v14908 == 0)) {
SOURCE(18782, 11)
      return(0);
      };
SOURCE(18825, 39)
   {
      word pd402;
      pd402 = (* (( (ptr) (* (( (ptr) gf←c92008)+294)/* var←c84296 */  ))+4) );
      traj←v56520 = (word) ( *( (fPt) ((*  (ptr) pd402 ))))((*  (W2Pt) ((( (ptr) initialSeg←v14908)+9)) ), pd402);
      };
SOURCE(18866, 251)
   {
      register word seg←v14952;
      seg←v14952 = initialSeg←v14908;
      lab←L100018: ;
      if ((seg←v14952 != 0)) {
         }
      else {
         goto lab←L100015;
         };
SOURCE(18947, 170)
      {
         word var←c85608;
         var←c85608 = (*  (ptr) (*  (ptr) seg←v14952 ) );
         if ((var←c85608 == (* (( (ptr) gf←c92008)+41) ))) {
SOURCE(19015, 25)
            {
               word pd403;
               pd403 = (* (( (ptr) formal←c92040)+4) );
               traj←v56520 = (word) ( *( (fPt) ((*  (ptr) pd403 ))))(seg←v14952, traj←v56520, pd403);
               };
            }
         else {
SOURCE(19053, 64)
            {
               word var←c85672;
               {
                  word var←c85640;
                  {
                     word pd404;
                     pd404 = (* (( (ptr) (* (( (ptr) gf←c92008)+292)/* var←c83944 */  ))+17) );
                     var←c85640 = (word) ( *( (fPt) ((*  (ptr) pd404 ))))(seg←v14952, pd404);
                     };
                  {
                     word pd405;
                     pd405 = (* (( (ptr) (* (( (ptr) gf←c92008)+294)/* var←c84296 */  ))+6) );
                     var←c85672 = (word) ( *( (fPt) ((*  (ptr) pd405 ))))(traj←v56520, 1, var←c85640, 0, pd405);
                     };
                  };
               };
            };
         };
      {
         word pd406;
         pd406 = (* (( (ptr) (* (( (ptr) gf←c92008)+296)/* var←c84712 */  ))+46) );
         seg←v14952 = (word) ( *( (fPt) ((*  (ptr) pd406 ))))(segGen←v14880, pd406);
         };
      goto lab←L100018;
      lab←L100015: ;
      };
SOURCE(19128, 62)
   {
      word pd407;
      pd407 = (* (( (ptr) (* (( (ptr) gf←c92008)+283)/* var←c82824 */  ))+57) );
      (void) ( *( (fPt) ((*  (ptr) pd407 ))))(traj←v56520, 0, (* (( (ptr) runData←v14824)+6) ), 0, pd407);
      };
SOURCE(18518, 672)
   return(traj←v56520);
   }

static void SetNaturalSpline←P1740(ggData←v33580, event←v33608)
   word ggData←v33580;
   word event←v33608;
   {
   /* SetNaturalSpline: */ 
SOURCE(19711, 91)
SOURCE(19754, 48)
   (void) SetSpline←P1860(2, ggData←v33580);
   }

static void SetBSpline←P1800(ggData←v33668, event←v33696)
   word ggData←v33668;
   word event←v33696;
   {
   /* SetBSpline: */ 
SOURCE(19808, 83)
SOURCE(19845, 46)
   (void) SetSpline←P1860(6, ggData←v33668);
   }

static void SetSpline←P1860(formal←c0965, ggData←v10400)
   word formal←c0965;
   word ggData←v10400;
   {
   W7 var←c92072;
   /* declaration of splineType←v10372 skipped */ 
   register ptr gf←c92104 =  (ptr) &globalframe;
   /* declaration of var←c85704 skipped */ 
   var←c92072.f4/* splineType←v10372 */  = formal←c0965;
   /* SetSpline: */ 
SOURCE(19897, 2386)
   {
      word tmpAddr408;
      tmpAddr408 = (word) (( (ptr) &var←c92072)+5)/* var←c85704 */ ;
      (*  (ptr) tmpAddr408 ) = ( ((word)  (fPt) RunToSpline←P4836) );
      (* (( (ptr) tmpAddr408) + 1) ) = 1;
      };
SOURCE(21498, 785)
   {
      word pd409;
      pd409 = (* (( (ptr) (* (( (ptr) gf←c92104)+285)/* var←c82952 */  ))+36) );
      if (((word) ( *( (fPt) ((*  (ptr) pd409 ))))((* (( (ptr) ggData←v10400)+11) ), 1, 0, (* (( (ptr) gf←c92104)+162) ), pd409)
       < 1)) {
SOURCE(21574, 102)
         {
            word pd410;
            pd410 = (* (( (ptr) (* (( (ptr) gf←c92104)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd410 ))))((* (( (ptr) ggData←v10400)+3) ), 0, (* (( (ptr) gf←c92104)+121) ), (* (( (ptr) gf←c92104)+61)
                ), pd410);
            };
         }
      else {
SOURCE(21678, 47)
         {
            word pd411;
            pd411 = (* (( (ptr) (* (( (ptr) gf←c92104)+284)/* var←c82856 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd411 ))))((* (( (ptr) gf←c92104)+62) ), ggData←v10400, pd411);
            };
SOURCE(21758, 79)
         {
            word pd412;
            pd412 = (* (( (ptr) (* (( (ptr) gf←c92104)+289)/* var←c83304 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd412 ))))(ggData←v10400, 0, 0, 0, 0, 0
               , 1, 0, 0, 0, pd412);
            };
SOURCE(21839, 104)
         {
            word var←c85736;
            var←c85736 = (word) ForEachOutlineRun←P1560((* (( (ptr) ggData←v10400)+11) ), 0, (word) (( (bPt) &var←c92072)+20)/* var←c85704 */ , 1, 1)
            ;
            {
               word pd413;
               pd413 = (* (( (ptr) (* (( (ptr) gf←c92104)+289)/* var←c83304 */  ))+11) );
               (void) ( *( (fPt) ((*  (ptr) pd413 ))))(ggData←v10400, var←c85736, 0, pd413);
               };
            };
SOURCE(21945, 33)
         {
            word pd414;
            pd414 = (* (( (ptr) (* (( (ptr) gf←c92104)+299)/* var←c85416 */  ))+13) );
            (void) ( *( (fPt) ((*  (ptr) pd414 ))))((* ((( (ptr) ggData←v10400)+13)) ), pd414);
            };
SOURCE(21980, 32)
         {
            word pd415;
            pd415 = (* (( (ptr) (* (( (ptr) gf←c92104)+299)/* var←c85416 */  ))+9) );
            (void) ( *( (fPt) ((*  (ptr) pd415 ))))((* (( (ptr) ggData←v10400)+13) ), 0, pd415);
            };
SOURCE(22014, 29)
         {
            word pd416;
            pd416 = (* (( (ptr) (* (( (ptr) gf←c92104)+284)/* var←c82856 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd416 ))))(ggData←v10400, pd416);
            };
SOURCE(22045, 82)
         {
            word pd417;
            pd417 = (* (( (ptr) (* (( (ptr) gf←c92104)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd417 ))))((* (( (ptr) ggData←v10400)+3) ), 0, (* (( (ptr) gf←c92104)+46) ), (* (( (ptr) gf←c92104)+63)
                ), pd417);
            };
SOURCE(22129, 154)
         {
            word pd418;
            pd418 = (* (( (ptr) (* (( (ptr) gf←c92104)+290)/* var←c83368 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd418 ))))((* (( (ptr) gf←c92104)+28) ), ggData←v10400, 0, 1, 0, 0, pd418);
            };
         };
      };
   }

static word RunToSpline←P4836(run←v56780, formal←c92168)
   word run←v56780;
   word formal←c92168;
   {
   register ptr gf←c92136 =  (ptr) &globalframe;
   word traj←v56824;
   word runData←v15096;
   word runParts←v15124;
   word tSeg←v15152 = 0;
   W2 controlPoint←v15180;
   word cyclic←v15208;
   word cps←v15236;
   word segGen←v15264;
   word initialSeg←v15292;
   word success←v15320 = 0;
   word cpCount←v15348 = 0;
   formal←c92168 = (formal←c92168 - 20);
   /* RunToSpline: */ 
SOURCE(19971, 1522)
SOURCE(19971, 1522)
   traj←v56824 = 0;
SOURCE(20046, 42)
   runData←v15096 = XR←Narrow((* (( (ptr) (*  (ptr) run←v56780 ))+1) ), (* (( (ptr) gf←c92136)+22) ));
SOURCE(20090, 39)
   runParts←v15124 = XR←Narrow((* (( (ptr) run←v56780)+1) ), (* (( (ptr) gf←c92136)+23) ));
SOURCE(20167, 68)
   {
      word tc419;
      word pd420;
      if (((*  (ptr) runData←v15096 ) != 2)) {
         pd420 = (* (( (ptr) (* (( (ptr) gf←c92136)+296)/* var←c84712 */  ))+26) );
         tc419 =  (word) (0 != (word) ( *( (fPt) ((*  (ptr) pd420 ))))(runParts←v15124, pd420));
         }
      else {
         tc419 =  (word) 0;
         };
      cyclic←v15208 =  (unsigned) tc419;
      };
SOURCE(20238, 183)
   {
      word var←c85768;
      word var←c85800;
      word var←c85832;
      {
         word idx421;
         var←c85768 = (
            idx421 = (word)  ( (0 != cyclic←v15208) ? (((* (( (ptr) runParts←v15124)+4) ) + (* (( (ptr) runParts←v15124)+5) )) + 1) : ((* (
               ( (ptr) runParts←v15124)+4) ) + (* (( (ptr) runParts←v15124)+5) )) ) ,
            BCK(idx421, 33554431)
            );
         };
      var←c85800 = ((word) var←c85768 << 3);
      var←c85832 = XR←NewObject((4 + var←c85800), (* (( (ptr) gf←c92136)+21) ));
      (*  (ptr) var←c85832 ) = var←c85768;
      cps←v15236 = var←c85832;
      };
SOURCE(20423, 82)
   {
      word pd422;
      pd422 = (* (( (ptr) (* (( (ptr) gf←c92136)+296)/* var←c84712 */  ))+45) );
      segGen←v15264 = (word) ( *( (fPt) ((*  (ptr) pd422 ))))(runData←v15096, runParts←v15124, pd422);
      };
SOURCE(20507, 52)
   {
      word pd423;
      pd423 = (* (( (ptr) (* (( (ptr) gf←c92136)+296)/* var←c84712 */  ))+46) );
      initialSeg←v15292 = (word) ( *( (fPt) ((*  (ptr) pd423 ))))(segGen←v15264, pd423);
      };
SOURCE(20602, 36)
   if ((initialSeg←v15292 == 0)) {
SOURCE(20627, 11)
      return(0);
      };
SOURCE(20640, 63)
   if ( ( (0 != cyclic←v15208) ? ((* (( (ptr) formal←c92168)+4) ) == 2) : 0 ) ) {
SOURCE(20682, 21)
      (* (( (ptr) formal←c92168)+4) ) = 3;
      };
SOURCE(20705, 39)
   {
      word pd424;
      pd424 = (* (( (ptr) (* (( (ptr) gf←c92136)+294)/* var←c84296 */  ))+4) );
      traj←v56824 = (word) ( *( (fPt) ((*  (ptr) pd424 ))))((*  (W2Pt) ((( (ptr) initialSeg←v15292)+9)) ), pd424);
      };
SOURCE(20746, 49)
   {
      word var←c85864;
      {
         word limit425;
         var←c85864 = (word) (( (W2Pt) (( (bPt) cps←v15236)+4))+(
               limit425 = (*  (ptr) cps←v15236 ),
               BCK(cpCount←v15348, limit425)
               ));
         };
      (*  (ptr) var←c85864 ) = (* (( (ptr) initialSeg←v15292)+9) );
      (* (( (ptr) var←c85864)+1) ) = (* (( (ptr) initialSeg←v15292)+10) );
      };
SOURCE(20797, 21)
   cpCount←v15348 = (cpCount←v15348 + 1);
SOURCE(20820, 324)
   {
      register word seg←v15392;
      seg←v15392 = initialSeg←v15292;
      lab←L100022: ;
      if ((seg←v15392 != 0)) {
         }
      else {
         goto lab←L100019;
         };
SOURCE(20901, 174)
      {
         register word i←v15436 = 0;
         register word noName←c85928;
         {
            word pd426;
            pd426 = (* (( (ptr) (*  (ptr) seg←v15392 ))+17) );
            noName←c85928 = (word) ( *( (fPt) ((*  (ptr) pd426 ))))(seg←v15392, pd426);
            };
         if (( (int)i←v15436 >=  (int)noName←c85928)) {
            goto lab←L100023;
            };
         lab←L100026: ;
SOURCE(20955, 48)
         {
            word pd427;
            pd427 = (* (( (ptr) (*  (ptr) seg←v15392 ))+16) );
            (void) ( *( (fPt) ((*  (ptr) pd427 ))))((word) &controlPoint←v15180, seg←v15392, SGNCK(i←v15436), pd427);
            };
SOURCE(21005, 47)
         {
            word var←c85960;
            {
               word limit428;
               var←c85960 = (word) (( (W2Pt) (( (bPt) cps←v15236)+4))+(
                     limit428 = (*  (ptr) cps←v15236 ),
                     BCK(cpCount←v15348, limit428)
                     ));
               };
            (*  (ptr) var←c85960 ) = controlPoint←v15180.f0;
            (* (( (ptr) var←c85960)+1) ) = controlPoint←v15180.f1;
            };
SOURCE(21054, 21)
         cpCount←v15348 = (cpCount←v15348 + 1);
         i←v15436 = (i←v15436 + 1);
         if (( (int)i←v15436 <  (int)noName←c85928)) {
            goto lab←L100026;
            };
         lab←L100023: ;
         };
SOURCE(21086, 35)
      {
         word var←c85992;
         {
            word limit429;
            var←c85992 = (word) (( (W2Pt) (( (bPt) cps←v15236)+4))+(
                  limit429 = (*  (ptr) cps←v15236 ),
                  BCK(cpCount←v15348, limit429)
                  ));
            };
         (*  (ptr) var←c85992 ) = (* (( (ptr) seg←v15392)+11) );
         (* (( (ptr) var←c85992)+1) ) = (* (( (ptr) seg←v15392)+12) );
         };
SOURCE(21123, 21)
      cpCount←v15348 = (cpCount←v15348 + 1);
      {
         word pd430;
         pd430 = (* (( (ptr) (* (( (ptr) gf←c92136)+296)/* var←c84712 */  ))+46) );
         seg←v15392 = (word) ( *( (fPt) ((*  (ptr) pd430 ))))(segGen←v15264, pd430);
         };
      goto lab←L100022;
      lab←L100019: ;
      };
SOURCE(21155, 41)
   if ((0 != cyclic←v15208)) {
SOURCE(21170, 26)
      {
         word var←c86056;
         var←c86056 = ((*  (ptr) cps←v15236 ) - 1);
         {
            word limit431;
            word limit432;
            (* (( (W2Pt) (( (ptr) cps←v15236)+1))+(
                  limit431 = (*  (ptr) cps←v15236 ),
                  BCK(var←c86056, limit431)
                  )) ) = (* (( (W2Pt) (( (ptr) cps←v15236)+1))+(
                  limit432 = (*  (ptr) cps←v15236 ),
                  BCK(0, limit432)
                  )) );
            };
         };
      };
SOURCE(21260, 54)
   {
      word pd433;
      pd433 = (* (( (ptr) (* (( (ptr) gf←c92136)+292)/* var←c83944 */  ))+9) );
      tSeg←v15152 = (word) ( *( (fPt) ((*  (ptr) pd433 ))))(cps←v15236, (* (( (ptr) formal←c92168)+4) ), 0, pd433);
      };
SOURCE(21316, 37)
   {
      word pd434;
      pd434 = (* (( (ptr) (* (( (ptr) gf←c92136)+292)/* var←c83944 */  ))+18) );
      (void) ( *( (fPt) ((*  (ptr) pd434 ))))(initialSeg←v15292, tSeg←v15152, pd434);
      };
SOURCE(21355, 47)
   {
      word pd435;
      pd435 = (* (( (ptr) (* (( (ptr) gf←c92136)+294)/* var←c84296 */  ))+6) );
      success←v15320 = (word) ( *( (fPt) ((*  (ptr) pd435 ))))(traj←v56824, 1, tSeg←v15152, 0, pd435);
      };
SOURCE(21404, 20)
   if ((0 == success←v15320)) {
SOURCE(21424, 5)
      (void) XR←RaiseUnnamedError();
      };
SOURCE(21431, 62)
   {
      word pd436;
      pd436 = (* (( (ptr) (* (( (ptr) gf←c92136)+283)/* var←c82824 */  ))+57) );
      (void) ( *( (fPt) ((*  (ptr) pd436 ))))(traj←v56824, 0, (* (( (ptr) runData←v15096)+6) ), 0, pd436);
      };
SOURCE(19971, 1522)
   return(traj←v56824);
   }

static void SelectMatchingCurve←P1920(formal←c0966, event←v33784)
   word formal←c0966;
   word event←v33784;
   {
   W8 var←c92200;
   /* declaration of ggData←v33756 skipped */ 
   register ptr gf←c92232 =  (ptr) &globalframe;
   /* declaration of var←c86088 skipped */ 
   /* declaration of name←v15480 skipped */ 
   var←c92200.f4/* ggData←v33756 */  = formal←c0966;
   /* SelectMatchingCurve: */ 
SOURCE(22291, 1170)
   {
      word tmpAddr437;
      tmpAddr437 = (word) (( (ptr) &var←c92200)+5)/* var←c86088 */ ;
      (*  (ptr) tmpAddr437 ) = ( ((word)  (fPt) DoSelectMatching←P4992) );
      (* (( (ptr) tmpAddr437) + 1) ) = 1;
      };
SOURCE(22337, 42)
   var←c92200.f7/* name←v15480 */  = XR←Narrow((*  (ptr) (* (( (ptr) event←v33784)+1) ) ), (* (( (ptr) gf←c92232)+13) ));
   if ((var←c92200.f7/* name←v15480 */  == 0)) {
      goto lab←L100027;
      };
   if (( (unsigned) (*(int*)var←c92200.f7/* name←v15480 */ <0) == 0)) {
      goto lab←L100027;
      };
   (void) XR←RaiseError(XR←NarrowFault, 0);
   lab←L100027: ;
SOURCE(22989, 79)
   {
      word pd438;
      pd438 = (* (( (ptr) (* (( (ptr) gf←c92232)+289)/* var←c83304 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd438 ))))(var←c92200.f4/* ggData←v33756 */ , 0, 0, 0, 0, 0
         , 1, 0, 0, 0, pd438);
      };
SOURCE(23070, 42)
   {
      word pd439;
      pd439 = (* (( (ptr) (* (( (ptr) gf←c92232)+281)/* var←c82760 */  ))+13) );
      (void) ( *( (fPt) ((*  (ptr) pd439 ))))((* (( (ptr) var←c92200.f4/* ggData←v33756 */ )+11) ), 0, pd439);
      };
SOURCE(23114, 68)
   {
      word var←c86152;
      word pd440;
      pd440 = (* (( (ptr) (* (( (ptr) gf←c92232)+285)/* var←c82952 */  ))+31) );
      var←c86152 = (word) ( *( (fPt) ((*  (ptr) pd440 ))))((* (( (ptr) var←c92200.f4/* ggData←v33756 */ )+11) ), 1, (word) (( (bPt) &var←c92200)+20)
         /* var←c86088 */ , (* (( (ptr) gf←c92232)+49) ), pd440);
      };
SOURCE(23184, 115)
   {
      W2 var←c86184;
      var←c86184.f0 = 11;
      var←c86184.f1 = var←c92200.f7/* name←v15480 */ ;
      {
         word pd441;
         pd441 = (* (( (ptr) (* (( (ptr) gf←c92232)+287)/* var←c83016 */  ))+14) );
         (void) ( *( (fPt) ((*  (ptr) pd441 ))))((* (( (ptr) var←c92200.f4/* ggData←v33756 */ )+3) ), 0, (* (( (ptr) gf←c92232)+46)
             ), (* (( (ptr) gf←c92232)+65) ), var←c86184, pd441);
         };
      };
SOURCE(23301, 160)
   {
      word pd442;
      pd442 = (* (( (ptr) (* (( (ptr) gf←c92232)+290)/* var←c83368 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd442 ))))((* (( (ptr) gf←c92232)+66) ), var←c92200.f4/* ggData←v33756 */ , 4, 0, 1, 0, pd442)
      ;
      };
   }

static word DoSelectMatching←P4992(traj←v15584, formal←c92296)
   word traj←v15584;
   word formal←c92296;
   {
   register ptr gf←c92264 =  (ptr) &globalframe;
   word done←v15628;
   word segGen←v15656;
   formal←c92296 = (formal←c92296 - 20);
   /* DoSelectMatching: */ 
SOURCE(22381, 591)
SOURCE(22381, 591)
   done←v15628 = 0;
SOURCE(22451, 71)
   {
      word var←c86216;
      var←c86216 = XR←Narrow((* (( (ptr) traj←v15584)+1) ), (* (( (ptr) gf←c92264)+22) ));
      {
         word pd443;
         pd443 = (* (( (ptr) (* (( (ptr) gf←c92264)+296)/* var←c84712 */  ))+40) );
         segGen←v15656 = (word) ( *( (fPt) ((*  (ptr) pd443 ))))(var←c86216, pd443);
         };
      };
SOURCE(22524, 448)
   {
      W2 segAndIndex←v15700;
      word var←c86248;
      {
         word pd444;
         pd444 = (* (( (ptr) (* (( (ptr) gf←c92264)+296)/* var←c84712 */  ))+47) );
         (void) ( *( (fPt) ((*  (ptr) pd444 ))))((word) &segAndIndex←v15700, segGen←v15656, pd444);
         };
      lab←L100031: ;
      if ((segAndIndex←v15700.f0 != 0)) {
         }
      else {
         goto lab←L100028;
         };
SOURCE(22665, 307)
      {
         word pd446;
         {
            word pd445;
            pd445 = (* (( (ptr) (*  (ptr) segAndIndex←v15700.f0 ))+11) );
            var←c86248 = (word) ( *( (fPt) ((*  (ptr) pd445 ))))(segAndIndex←v15700.f0, 1, 1, 1, 0, pd445);
            };
         pd446 = (* (( (ptr) (* (( (ptr) gf←c92264)+295)/* var←c84488 */  ))+8) );
         if ((0 != (word) ( *( (fPt) ((*  (ptr) pd446 ))))(var←c86248, (* (( (ptr) formal←c92296)+7) ), 0, pd446))) {
SOURCE(22769, 205)
            {
               word seq←v15744;
               word sliceD←v15772;
SOURCE(22771, 83)
               {
                  word var←c86280;
                  var←c86280 = XR←Narrow((* (( (ptr) traj←v15584)+1) ), (* (( (ptr) gf←c92264)+22) ));
                  {
                     word pd447;
                     pd447 = (* (( (ptr) (* (( (ptr) gf←c92264)+296)/* var←c84712 */  ))+9) );
                     seq←v15744 = (word) ( *( (fPt) ((*  (ptr) pd447 ))))(var←c86280, segAndIndex←v15700.f1, pd447);
                     };
                  };
SOURCE(22856, 64)
               {
                  word pd448;
                  pd448 = (* (( (ptr) (* (( (ptr) gf←c92264)+297)/* var←c85224 */  ))+8) );
                  sliceD←v15772 = (word) ( *( (fPt) ((*  (ptr) pd448 ))))(traj←v15584, seq←v15744, pd448);
                  };
SOURCE(22922, 50)
               {
                  word pd449;
                  pd449 = (* (( (ptr) (* (( (ptr) gf←c92264)+281)/* var←c82760 */  ))+6) );
                  (void) ( *( (fPt) ((*  (ptr) pd449 ))))(sliceD←v15772, (* (( (ptr) (* (( (ptr) formal←c92296)+4) ))+11) ), 0, pd449);
                  };
               };
            };
         };
      {
         word pd450;
         pd450 = (* (( (ptr) (* (( (ptr) gf←c92264)+296)/* var←c84712 */  ))+47) );
         (void) ( *( (fPt) ((*  (ptr) pd450 ))))((word) &segAndIndex←v15700, segGen←v15656, pd450);
         };
      goto lab←L100031;
      lab←L100028: ;
      };
SOURCE(22381, 591)
   return(done←v15628);
   }

static void TiogaFillFromSelection←P1980(ggData←v33844, event←v33872)
   word ggData←v33844;
   word event←v33872;
   {
   W9 var←c92328;
   register ptr gf←c92360 =  (ptr) &globalframe;
   /* declaration of var←c86312 skipped */ 
   word selectCount←v15844;
   /* TiogaFillFromSelection: */ 
SOURCE(23467, 2749)
   {
      word tmpAddr451;
      tmpAddr451 = (word) (( (ptr) &var←c92328)+4)/* var←c86312 */ ;
      (*  (ptr) tmpAddr451 ) = ( ((word)  (fPt) CheckParent←P5292) );
      (* (( (ptr) tmpAddr451) + 1) ) = 1;
      };
SOURCE(23622, 75)
   {
      word pd452;
      word idx453;
      pd452 = (* (( (ptr) (* (( (ptr) gf←c92360)+285)/* var←c82952 */  ))+36) );
      selectCount←v15844 = (
         idx453 = (word) ( *( (fPt) ((*  (ptr) pd452 ))))((* (( (ptr) ggData←v33844)+11) ), 0, 0, 0, pd452),
         SGNCK(idx453)
         );
      };
SOURCE(23699, 2517)
   if ((selectCount←v15844 != 1)) {
SOURCE(23721, 69)
      {
         word pd454;
         pd454 = (* (( (ptr) (* (( (ptr) gf←c92360)+287)/* var←c83016 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd454 ))))((* (( (ptr) ggData←v33844)+3) ), 0, (* (( (ptr) gf←c92360)+121) ), (* (( (ptr) gf←c92360)+67)
             ), pd454);
         };
      }
   else {
SOURCE(23790, 2431)
      {
         word aborted←v15888 = 0;
         word myRef←v15916 = 0;
         word selectedD←v15944;
         word var←c86344;
SOURCE(23836, 84)
         {
            word pd455;
            pd455 = (* (( (ptr) (* (( (ptr) gf←c92360)+285)/* var←c82952 */  ))+37) );
            selectedD←v15944 = (word) ( *( (fPt) ((*  (ptr) pd455 ))))((* (( (ptr) ggData←v33844)+11) ), 0, 0, 0, pd455);
            };
SOURCE(23922, 266)
         {
            word pd457;
            {
               word pd456;
               pd456 = (* (( (ptr) (* (( (ptr) gf←c92360)+301)/* var←c86376 */  ))+4) );
               var←c86344 = (word) ( *( (fPt) ((*  (ptr) pd456 ))))(pd456);
               };
            pd457 = (* (( (ptr) (* (( (ptr) gf←c92360)+295)/* var←c84488 */  ))+14) );
            if (( (int)(word) ( *( (fPt) ((*  (ptr) pd457 ))))(var←c86344, pd457) !=  (int)0)) {
SOURCE(23980, 274)
               {
                  word reader←v15988;
                  word ref←v16016;
SOURCE(23982, 63)
                  {
                     word pd458;
                     pd458 = (* (( (ptr) (* (( (ptr) gf←c92360)+302)/* var←c86408 */  ))+4) );
                     reader←v15988 = (word) ( *( (fPt) ((*  (ptr) pd458 ))))(pd458);
                     };
SOURCE(24047, 114)
                  {
                     word pd459;
                     pd459 = (* (( (ptr) (* (( (ptr) gf←c92360)+303)/* var←c86440 */  ))+11) );
                     if ((0 != (word) ( *( (fPt) ((*  (ptr) pd459 ))))(reader←v15988, pd459))) {
                        ref←v16016 = 0;
                        }
                     else {
                        {
                           word var←c86472;
                           W2 var←c0449;
                           {
/*1*/   word pd460;
/*1*/   pd460 = (* (( (ptr) (* (( (ptr) gf←c92360)+303)/* var←c86440 */  ))+31) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd460 ))))((word) &var←c0449, reader←v15988, pd460);
/*1*/   };
                           var←c86472 = var←c0449.f0;
                           {
/*1*/   word pd461;
/*1*/   pd461 = (* (( (ptr) (* (( (ptr) gf←c92360)+304)/* var←c86504 */  ))+9) );
/*1*/   ref←v16016 = (word) ( *( (fPt) ((*  (ptr) pd461 ))))(var←c86472, pd461);
/*1*/   };
                           };
                        };
                     };
SOURCE(24163, 25)
                  myRef←v15916 = (word) CopyDocument←P2100(ref←v16016);
                  };
               };
            };
SOURCE(24257, 54)
         {
            word pd462;
            pd462 = (* (( (ptr) (* (( (ptr) gf←c92360)+284)/* var←c82856 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd462 ))))((* (( (ptr) gf←c92360)+68) ), ggData←v33844, pd462);
            };
SOURCE(24344, 1364)
         {
            word var←c86536;
            {
               word pd463;
               pd463 = (* (( (ptr) (* (( (ptr) gf←c92360)+283)/* var←c82824 */  ))+6) );
               var←c86536 = (word) ( *( (fPt) ((*  (ptr) pd463 ))))((*  (ptr) (selectedD←v15944) ), pd463);
               };
            if ((var←c86536 == (* (( (ptr) gf←c92360)+69) ))) {
SOURCE(24402, 101)
               {
                  word var←c86568;
                  W3 var←c0452;
                  {
                     word pd465;
                     pd465 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+48) );
                     (void) ( *( (fPt) ((*  (ptr) pd465 ))))((word) &var←c0452, (*  (ptr) selectedD←v15944 ), pd465);
                     };
                  var←c86568 = var←c0452.f2;
                  {
                     W2 var←c86600;
                     var←c86600.f0 = myRef←v15916;
                     var←c86600.f1 = 0;
                     {
                        word pd466;
                        pd466 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+47) );
                        (void) ( *( (fPt) ((*  (ptr) pd466 ))))((*  (ptr) selectedD←v15944 ), var←c86600, var←c86568, 0, pd466);
                        };
                     };
                  };
               goto endif0464;
               };
            if ((var←c86536 == (* (( (ptr) gf←c92360)+162) ))) {
SOURCE(24522, 99)
               {
                  word var←c86632;
                  W3 var←c0455;
                  {
                     word pd467;
                     pd467 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+48) );
                     (void) ( *( (fPt) ((*  (ptr) pd467 ))))((word) &var←c0455, (*  (ptr) selectedD←v15944 ), pd467);
                     };
                  var←c86632 = var←c0455.f2;
                  {
                     word pd468;
                     pd468 = (* (( (ptr) (* (( (ptr) gf←c92360)+286)/* var←c82984 */  ))+12) );
                     (void) ( *( (fPt) ((*  (ptr) pd468 ))))((*  (ptr) selectedD←v15944 ), myRef←v15916, var←c86632, 0, pd468);
                     };
                  };
               goto endif0464;
               };
            if ((var←c86536 == (* (( (ptr) gf←c92360)+64) ))) {
SOURCE(24638, 1042)
               {
                  /* declaration of parent←v16088 skipped */ 
                  /* declaration of child←v16116 skipped */ 
                  /* declaration of childCount←v16144 skipped */ 
SOURCE(25012, 13)
                  (* (( (ptr) &var←c92328)+6)/* parent←v16088 */  ) = 0;
SOURCE(25027, 12)
                  (* (( (ptr) &var←c92328)+7)/* child←v16116 */  ) = 0;
SOURCE(25068, 19)
                  (* (( (ptr) &var←c92328)+8)/* childCount←v16144 */  ) = 0;
SOURCE(25089, 98)
                  {
                     word pd469;
                     pd469 = (* (( (ptr) (* (( (ptr) gf←c92360)+288)/* var←c83176 */  ))+74) );
                     aborted←v15888 = (word) ( *( (fPt) ((*  (ptr) pd469 ))))((*  (ptr) selectedD←v15944 ), (* (( (ptr) selectedD←v15944)+1) ), 1, (word) (
                           ( (bPt) &var←c92328)+16)/* var←c86312 */ , (* (( (ptr) gf←c92360)+69) ), pd469);
                     };
SOURCE(25189, 465)
                  if (((* (( (ptr) &var←c92328)+6)/* parent←v16088 */  ) == 0)) {
SOURCE(25208, 20)
                     aborted←v15888 = 1;
                     }
                  else {
SOURCE(25228, 426)
                     if ((0 == aborted←v15888)) {
SOURCE(25250, 404)
                        {
                           word var←c86664;
                           {
/*1*/   word pd470;
/*1*/   pd470 = (* (( (ptr) (* (( (ptr) gf←c92360)+283)/* var←c82824 */  ))+6) );
/*1*/   var←c86664 = (word) ( *( (fPt) ((*  (ptr) pd470 ))))((* ((( (ptr) &var←c92328)+6)/* parent←v16088 */ ) ), pd470);
/*1*/   };
                           if ((var←c86664 == (* (( (ptr) gf←c92360)+162) ))) {
SOURCE(25363, 81)
/*1*/   {
/*1*/      word var←c86696;
/*1*/      W3 var←c0461;
/*1*/      {
/*1*/         word pd471;
/*1*/         pd471 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+48) );
/*1*/         (void) ( *( (fPt) ((*  (ptr) pd471 ))))((word) &var←c0461, (* (( (ptr) &var←c92328)+6)/* parent←v16088 */  ), pd471);
/*1*/         };
/*1*/      var←c86696 = var←c0461.f2;
/*1*/      {
/*1*/         word pd472;
/*1*/         pd472 = (* (( (ptr) (* (( (ptr) gf←c92360)+286)/* var←c82984 */  ))+12) );
/*1*/         (void) ( *( (fPt) ((*  (ptr) pd472 ))))((* (( (ptr) &var←c92328)+6)/* parent←v16088 */  ), myRef←v15916, var←c86696, 0, pd472)
/*1*/         ;
/*1*/         };
/*1*/      };
/*1*/   }
                           else {
/*1*/   if ((var←c86664 == (* (( (ptr) gf←c92360)+64) ))) {
SOURCE(25527, 127)
/*1*/      if (((* (( (ptr) &var←c92328)+8)/* childCount←v16144 */  ) == 1)) {
SOURCE(25550, 81)
/*1*/         {
/*1*/            word var←c86728;
/*1*/            W3 var←c0463;
/*1*/            {
/*1*/               word pd473;
/*1*/               pd473 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+48) );
/*1*/               (void) ( *( (fPt) ((*  (ptr) pd473 ))))((word) &var←c0463, (* (( (ptr) &var←c92328)+7)/* child←v16116 */  ), pd473);
/*1*/               };
/*1*/            var←c86728 = var←c0463.f2;
/*1*/            {
/*1*/               W2 var←c86760;
/*1*/               var←c86760.f0 = myRef←v15916;
/*1*/               var←c86760.f1 = 0;
/*1*/               {
/*1*/                  word pd474;
/*1*/                  pd474 = (* (( (ptr) (* (( (ptr) gf←c92360)+297)/* var←c85224 */  ))+47) );
/*1*/                  (void) ( *( (fPt) ((*  (ptr) pd474 ))))((* (( (ptr) &var←c92328)+7)/* child←v16116 */  ), var←c86760, var←c86728, 0, pd474)
/*1*/                  ;
/*1*/                  };
/*1*/               };
/*1*/            };
/*1*/         }
/*1*/      else {
SOURCE(25640, 14)
/*1*/         aborted←v15888 = 1;
/*1*/         };
/*1*/      }
/*1*/   else {
SOURCE(25670, 5)
/*1*/      (void) XR←RaiseUnnamedError();
/*1*/      };
/*1*/   };
                           };
                        };
                     };
                  };
               goto endif0464;
               };
SOURCE(25694, 14)
            aborted←v15888 = 1;
            goto endif0464;
            endif0464: ;
            };
SOURCE(25710, 506)
         if ((0 != aborted←v15888)) {
SOURCE(25726, 69)
            {
               word pd475;
               pd475 = (* (( (ptr) (* (( (ptr) gf←c92360)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd475 ))))((* (( (ptr) ggData←v33844)+3) ), 0, (* (( (ptr) gf←c92360)+121) ), (* (( (ptr) gf←c92360)+67)
                   ), pd475);
               };
            }
         else {
SOURCE(25797, 65)
            {
               word pd476;
               pd476 = (* (( (ptr) (* (( (ptr) gf←c92360)+281)/* var←c82760 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd476 ))))((*  (ptr) selectedD←v15944 ), (* (( (ptr) ggData←v33844)+11) ), 0, pd476);
               };
SOURCE(25864, 29)
            {
               word pd477;
               pd477 = (* (( (ptr) (* (( (ptr) gf←c92360)+284)/* var←c82856 */  ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd477 ))))(ggData←v33844, pd477);
               };
SOURCE(25895, 88)
            {
               word pd478;
               pd478 = (* (( (ptr) (* (( (ptr) gf←c92360)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd478 ))))((* (( (ptr) ggData←v33844)+3) ), 0, (* (( (ptr) gf←c92360)+46) ), (* (( (ptr) gf←c92360)+70)
                   ), pd478);
               };
SOURCE(25985, 81)
            {
               word pd479;
               pd479 = (* (( (ptr) (* (( (ptr) gf←c92360)+289)/* var←c83304 */  ))+10) );
               (void) ( *( (fPt) ((*  (ptr) pd479 ))))(ggData←v33844, 0, 0, 0, 1, 0
                  , 0, 0, 0, 0, pd479);
               };
SOURCE(26068, 148)
            {
               word pd480;
               pd480 = (* (( (ptr) (* (( (ptr) gf←c92360)+290)/* var←c83368 */  ))+4) );
               (void) ( *( (fPt) ((*  (ptr) pd480 ))))((* (( (ptr) gf←c92360)+28) ), ggData←v33844, 4, 1, 0, 0, pd480);
               };
            };
         };
      };
   }

static word CheckParent←P5292(sliceD←v16220, formal←c92424)
   word sliceD←v16220;
   word formal←c92424;
   {
   register ptr gf←c92392 =  (ptr) &globalframe;
   word done←v16264;
   formal←c92424 = (formal←c92424 - 16);
   /* CheckParent: */ 
SOURCE(24640, 19)
SOURCE(24640, 19)
   done←v16264 = 0;
SOURCE(24717, 20)
   (* (( (ptr) formal←c92424)+7) ) = (*  (ptr) sliceD←v16220 );
SOURCE(24803, 53)
   if (((* (( (ptr) formal←c92424)+6) ) == 0)) {
SOURCE(24822, 34)
      {
         word pd481;
         pd481 = (* (( (ptr) (* (( (ptr) gf←c92392)+288)/* var←c83176 */  ))+64) );
         (* (( (ptr) formal←c92424)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd481 ))))((* ((( (ptr) formal←c92424)+7)) ), pd481);
         };
      };
SOURCE(24881, 54)
   {
      word pd482;
      pd482 = (* (( (ptr) (* (( (ptr) gf←c92392)+288)/* var←c83176 */  ))+64) );
      if (((* (( (ptr) formal←c92424)+6) ) != (word) ( *( (fPt) ((*  (ptr) pd482 ))))((* ((( (ptr) formal←c92424)+7)) ), pd482)
      )) {
SOURCE(24922, 13)
         return(1);
         };
      };
SOURCE(24982, 25)
   (* (( (ptr) formal←c92424)+8) ) = ((* (( (ptr) formal←c92424)+8) ) + 1);
SOURCE(24640, 19)
   return(done←v16264);
   }

static void EditTiogaFill←P2040(ggData←v33932, event←v33960)
   word ggData←v33932;
   word event←v33960;
   {
   W12 var←c92456;
   register ptr gf←c92488 =  (ptr) &globalframe;
   /* declaration of var←c86792 skipped */ 
   /* declaration of var←c86824 skipped */ 
   word selectCount←v16320;
   /* EditTiogaFill: */ 
SOURCE(26228, 2160)
   {
      word tmpAddr483;
      tmpAddr483 = (word) (( (ptr) &var←c92456)+4)/* var←c86792 */ ;
      (*  (ptr) tmpAddr483 ) = ( ((word)  (fPt) CheckParent←P5508) );
      (* (( (ptr) tmpAddr483) + 1) ) = 1;
      };
   {
      word tmpAddr484;
      tmpAddr484 = (word) (( (ptr) &var←c92456)+6)/* var←c86824 */ ;
      (*  (ptr) tmpAddr484 ) = ( ((word)  (fPt) MakeViewer←P5400) );
      (* (( (ptr) tmpAddr484) + 1) ) = 1;
      };
SOURCE(26364, 75)
   {
      word pd485;
      word idx486;
      pd485 = (* (( (ptr) (* (( (ptr) gf←c92488)+285)/* var←c82952 */  ))+36) );
      selectCount←v16320 = (
         idx486 = (word) ( *( (fPt) ((*  (ptr) pd485 ))))((* (( (ptr) ggData←v33932)+11) ), 0, 0, 0, pd485),
         SGNCK(idx486)
         );
      };
SOURCE(26441, 1947)
   if ((selectCount←v16320 != 1)) {
SOURCE(26463, 69)
      {
         word pd487;
         pd487 = (* (( (ptr) (* (( (ptr) gf←c92488)+287)/* var←c83016 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd487 ))))((* (( (ptr) ggData←v33932)+3) ), 0, (* (( (ptr) gf←c92488)+121) ), (* (( (ptr) gf←c92488)+71)
             ), pd487);
         };
      }
   else {
SOURCE(26532, 1861)
      {
         /* declaration of aborted←v16392 skipped */ 
         word selectedD←v16420;
SOURCE(26901, 21)
         (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ) = 0;
SOURCE(26924, 84)
         {
            word pd488;
            pd488 = (* (( (ptr) (* (( (ptr) gf←c92488)+285)/* var←c82952 */  ))+37) );
            selectedD←v16420 = (word) ( *( (fPt) ((*  (ptr) pd488 ))))((* (( (ptr) ggData←v33932)+11) ), 0, 0, 0, pd488);
            };
SOURCE(27010, 1057)
         {
            word var←c86856;
            {
               word pd489;
               pd489 = (* (( (ptr) (* (( (ptr) gf←c92488)+283)/* var←c82824 */  ))+6) );
               var←c86856 = (word) ( *( (fPt) ((*  (ptr) pd489 ))))((*  (ptr) (selectedD←v16420) ), pd489);
               };
            if ((var←c86856 == (* (( (ptr) gf←c92488)+69) )) || (var←c86856 == (* (( (ptr) gf←c92488)+162) ))) {
SOURCE(27078, 27)
               (void) MakeViewer←P5400((*  (ptr) selectedD←v16420 ), (word) (( (bPt) &var←c92456)+24)/* var←c86824 */ );
               }
            else {
               if ((var←c86856 == (* (( (ptr) gf←c92488)+64) ))) {
SOURCE(27122, 917)
                  {
                     /* declaration of parent←v16552 skipped */ 
                     /* declaration of child←v16580 skipped */ 
                     /* declaration of childCount←v16608 skipped */ 
SOURCE(27496, 13)
                     (* (( (ptr) &var←c92456)+9)/* parent←v16552 */  ) = 0;
SOURCE(27511, 12)
                     (* (( (ptr) &var←c92456)+10)/* child←v16580 */  ) = 0;
SOURCE(27552, 19)
                     (* (( (ptr) &var←c92456)+11)/* childCount←v16608 */  ) = 0;
SOURCE(27573, 98)
                     {
                        word pd490;
                        pd490 = (* (( (ptr) (* (( (ptr) gf←c92488)+288)/* var←c83176 */  ))+74) );
                        (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ) = (word) ( *( (fPt) ((*  (ptr) pd490 ))))((*  (ptr) selectedD←v16420 ), (* (
/*1*/   ( (ptr) selectedD←v16420)+1) ), 1, (word) (( (bPt) &var←c92456)+16)/* var←c86792 */ , (* (( (ptr) gf←c92488)+69) ), pd490)
                        ;
                        };
SOURCE(27673, 340)
                     if (((* (( (ptr) &var←c92456)+9)/* parent←v16552 */  ) == 0)) {
SOURCE(27692, 20)
                        (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ) = 1;
                        }
                     else {
SOURCE(27712, 301)
                        if ((0 == (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ))) {
SOURCE(27734, 279)
                           {
/*1*/   word var←c86888;
/*1*/   {
/*1*/      word pd491;
/*1*/      pd491 = (* (( (ptr) (* (( (ptr) gf←c92488)+283)/* var←c82824 */  ))+6) );
/*1*/      var←c86888 = (word) ( *( (fPt) ((*  (ptr) pd491 ))))((* ((( (ptr) &var←c92456)+9)/* parent←v16552 */ ) ), pd491);
/*1*/      };
/*1*/   if ((var←c86888 == (* (( (ptr) gf←c92488)+162) ))) {
SOURCE(27849, 18)
/*1*/      (void) MakeViewer←P5400((* (( (ptr) &var←c92456)+9)/* parent←v16552 */  ), (word) (( (bPt) &var←c92456)+24)/* var←c86824 */ )
/*1*/      ;
/*1*/      }
/*1*/   else {
/*1*/      if ((var←c86888 == (* (( (ptr) gf←c92488)+64) ))) {
SOURCE(27950, 63)
/*1*/         if (((* (( (ptr) &var←c92456)+11)/* childCount←v16608 */  ) == 1)) {
SOURCE(27973, 17)
/*1*/            (void) MakeViewer←P5400((* (( (ptr) &var←c92456)+10)/* child←v16580 */  ), (word) (( (bPt) &var←c92456)+24)/* var←c86824 */ )
/*1*/            ;
/*1*/            }
/*1*/         else {
SOURCE(27999, 14)
/*1*/            (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ) = 1;
/*1*/            };
/*1*/         }
/*1*/      else {
SOURCE(28029, 5)
/*1*/         (void) XR←RaiseUnnamedError();
/*1*/         };
/*1*/      };
/*1*/   };
                           };
                        };
                     };
                  }
               else {
SOURCE(28053, 14)
                  (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ) = 1;
                  };
               };
            };
SOURCE(28069, 319)
         if ((0 != (* (( (ptr) &var←c92456)+8)/* aborted←v16392 */  ))) {
SOURCE(28085, 69)
            {
               word pd492;
               pd492 = (* (( (ptr) (* (( (ptr) gf←c92488)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd492 ))))((* (( (ptr) ggData←v33932)+3) ), 0, (* (( (ptr) gf←c92488)+121) ), (* (( (ptr) gf←c92488)+71)
                   ), pd492);
               };
            }
         else {
SOURCE(28156, 91)
            {
               word pd493;
               pd493 = (* (( (ptr) (* (( (ptr) gf←c92488)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd493 ))))((* (( (ptr) ggData←v33932)+3) ), 0, (* (( (ptr) gf←c92488)+46) ), (* (( (ptr) gf←c92488)+72)
                   ), pd493);
               };
SOURCE(28249, 139)
            {
               word pd494;
               pd494 = (* (( (ptr) (* (( (ptr) gf←c92488)+290)/* var←c83368 */  ))+4) );
               (void) ( *( (fPt) ((*  (ptr) pd494 ))))((* (( (ptr) gf←c92488)+73) ), ggData←v33932, 4, 1, 0, 0, pd494);
               };
            };
         };
      };
   }

static void MakeViewer←P5400(slice←v16496, formal←c92552)
   word slice←v16496;
   word formal←c92552;
   {
   register ptr gf←c92520 =  (ptr) &globalframe;
   W2 boxText←v16756;
   W3 var←c0481;
   formal←c92552 = (formal←c92552 - 24);
   /* MakeViewer: */ 
SOURCE(26534, 18)
SOURCE(26570, 58)
   {
      word pd495;
      pd495 = (* (( (ptr) (* (( (ptr) gf←c92520)+297)/* var←c85224 */  ))+48) );
      (void) ( *( (fPt) ((*  (ptr) pd495 ))))((word) &var←c0481, slice←v16496, pd495);
      };
   boxText←v16756 = (*  (W2Pt) &var←c0481 );
SOURCE(26630, 263)
   if ((boxText←v16756.f0 == 0)) {
SOURCE(26655, 20)
      (* (( (ptr) formal←c92552)+8) ) = 1;
      }
   else {
SOURCE(26675, 220)
      {
         word viewer←v16800;
SOURCE(26677, 111)
         {
            W28 var←c86920;
            W29 var←c0484;
            XR←FillWords(&(* (W27Pt) (&var←c86920)), 27, 0);
            (* (( (ptr) &var←c86920)+13) ) = (* (( (ptr) gf←c92520)+74) );
            (* (( (ptr) &var←c86920)+17) ) =  (word) -1;
            (* (( (ptr) &var←c86920)+18) ) = 2;
            (* (( (ptr) &var←c86920)+19) ) = 1493172224;
            (* (( (ptr) &var←c86920)+27) ) = 27;
            (*  (W28Pt) (word) &var←c0484 ) = var←c86920;
            (* (( (ptr) (word) &var←c0484) + 28) ) = 0;
            {
               word pd496;
               pd496 = (* (( (ptr) (* (( (ptr) gf←c92520)+305)/* var←c86952 */  ))+5) );
               viewer←v16800 = (word) ( *( (fPt) ((*  (ptr) pd496 ))))((word) (&var←c0484), pd496);
               };
            };
SOURCE(26790, 75)
         {
            word var←c86984;
            var←c86984 = (word) CopyDocument←P2100(boxText←v16756.f0);
            {
               word pd497;
               pd497 = (* (( (ptr) (*  (ptr) viewer←v16800 ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd497 ))))(viewer←v16800, var←c86984, 0, (* (( (ptr) gf←c92520)+75) ), pd497);
               };
            };
SOURCE(26867, 26)
         {
            word pd498;
            pd498 = (* (( (ptr) (* (( (ptr) gf←c92520)+306)/* var←c87016 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd498 ))))(viewer←v16800, 0, 1, 1, pd498);
            };
         };
      };
   }

static word CheckParent←P5508(sliceD←v16684, formal←c92616)
   word sliceD←v16684;
   word formal←c92616;
   {
   register ptr gf←c92584 =  (ptr) &globalframe;
   word done←v16728;
   formal←c92616 = (formal←c92616 - 16);
   /* CheckParent: */ 
SOURCE(27124, 19)
SOURCE(27124, 19)
   done←v16728 = 0;
SOURCE(27201, 20)
   (* (( (ptr) formal←c92616)+10) ) = (*  (ptr) sliceD←v16684 );
SOURCE(27287, 53)
   if (((* (( (ptr) formal←c92616)+9) ) == 0)) {
SOURCE(27306, 34)
      {
         word pd499;
         pd499 = (* (( (ptr) (* (( (ptr) gf←c92584)+288)/* var←c83176 */  ))+64) );
         (* (( (ptr) formal←c92616)+9) ) = (word) ( *( (fPt) ((*  (ptr) pd499 ))))((* ((( (ptr) formal←c92616)+10)) ), pd499);
         };
      };
SOURCE(27365, 54)
   {
      word pd500;
      pd500 = (* (( (ptr) (* (( (ptr) gf←c92584)+288)/* var←c83176 */  ))+64) );
      if (((* (( (ptr) formal←c92616)+9) ) != (word) ( *( (fPt) ((*  (ptr) pd500 ))))((* ((( (ptr) formal←c92616)+10)) ), pd500)
      )) {
SOURCE(27406, 13)
         return(1);
         };
      };
SOURCE(27466, 25)
   (* (( (ptr) formal←c92616)+11) ) = ((* (( (ptr) formal←c92616)+11) ) + 1);
SOURCE(27124, 19)
   return(done←v16728);
   }

static word CopyDocument←P2100(root←v10460)
   word root←v10460;
   {
   W7 var←c92648;
   register ptr gf←c92680 =  (ptr) &globalframe;
   word var←c10504;
   /* declaration of var←c87048 skipped */ 
   /* CopyDocument: */ 
SOURCE(28400, 555)
   {
      word tmpAddr501;
      tmpAddr501 = (word) (( (ptr) &var←c92648)+4)/* var←c87048 */ ;
      (*  (ptr) tmpAddr501 ) = ( ((word)  (fPt) CopyAction←P5664) );
      (* (( (ptr) tmpAddr501) + 1) ) = 1;
      };
SOURCE(28467, 488)
   if ((root←v10460 == 0)) {
SOURCE(28484, 17)
      return(0);
      }
   else {
SOURCE(28501, 456)
      {
         W4 span←v16872;
         W4 copy←v16900;
         /* declaration of newRoot←v16928 skipped */ 
SOURCE(28655, 118)
         {
            word first←v80796;
            word last←v80824;
            W2 var←c0494;
            {
               word pd502;
               pd502 = (* (( (ptr) (* (( (ptr) gf←c92680)+304)/* var←c86504 */  ))+28) );
               first←v80796 = (word) ( *( (fPt) ((*  (ptr) pd502 ))))(root←v10460, pd502);
               };
            {
               word pd503;
               pd503 = (* (( (ptr) (* (( (ptr) gf←c92680)+304)/* var←c86504 */  ))+27) );
               (void) ( *( (fPt) ((*  (ptr) pd503 ))))((word) &var←c0494, root←v10460, pd503);
               };
            last←v80824 = var←c0494.f0;
            span←v16872.f0 = first←v80796;
            span←v16872.f1 =  (word) -1;
            span←v16872.f2 = last←v80824;
            span←v16872.f3 =  (word) -1;
            };
SOURCE(28775, 52)
         {
            word pd504;
            pd504 = (* (( (ptr) (* (( (ptr) gf←c92680)+307)/* var←c87144 */  ))+17) );
            (void) ( *( (fPt) ((*  (ptr) pd504 ))))((word) &copy←v16900, span←v16872, pd504);
            };
SOURCE(28829, 54)
         {
            word pd505;
            pd505 = (* (( (ptr) (* (( (ptr) gf←c92680)+304)/* var←c86504 */  ))+9) );
            var←c92648.f6/* newRoot←v16928 */  = (word) ( *( (fPt) ((*  (ptr) pd505 ))))(copy←v16900.f0, pd505);
            };
SOURCE(28885, 52)
         {
            word var←c87208;
            word pd506;
            pd506 = (* (( (ptr) (* (( (ptr) gf←c92680)+308)/* var←c87176 */  ))+7) );
            var←c87208 = (word) ( *( (fPt) ((*  (ptr) pd506 ))))(root←v10460, (word) (( (bPt) &var←c92648)+16)/* var←c87048 */ , 1, 1, pd506)
            ;
            };
SOURCE(28939, 16)
         return(var←c92648.f6/* newRoot←v16928 */ );
         };
      };
   }

static word CopyAction←P5664(name←v64864, value←v64892, formal←c92744)
   word name←v64864;
   word value←v64892;
   word formal←c92744;
   {
   register ptr gf←c92712 =  (ptr) &globalframe;
   word quit←v64936;
   word newValue←v16972;
   formal←c92744 = (formal←c92744 - 16);
   /* CopyAction: */ 
SOURCE(28503, 39)
SOURCE(28503, 39)
   quit←v64936 = 0;
SOURCE(28544, 47)
   {
      word pd507;
      pd507 = (* (( (ptr) (* (( (ptr) gf←c92712)+308)/* var←c87176 */  ))+27) );
      newValue←v16972 = (word) ( *( (fPt) ((*  (ptr) pd507 ))))(name←v64864, value←v64892, pd507);
      };
SOURCE(28593, 42)
   {
      word pd508;
      pd508 = (* (( (ptr) (* (( (ptr) gf←c92712)+308)/* var←c87176 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd508 ))))((* (( (ptr) formal←c92744)+6) ), name←v64864, newValue←v16972, pd508);
      };
SOURCE(28637, 13)
   return(0);
   }

static void PrintStyleKind←P2160(ggData←v34020, event←v34048)
   word ggData←v34020;
   word event←v34048;
   {
   /* PrintStyleKind: */ 
SOURCE(28964, 61)
SOURCE(28998, 27)
   (void) SetStyleKind←P2280(0, ggData←v34020);
   }

static void ScreenStyleKind←P2220(ggData←v34108, event←v34136)
   word ggData←v34108;
   word event←v34136;
   {
   /* ScreenStyleKind: */ 
SOURCE(29031, 61)
SOURCE(29066, 26)
   (void) SetStyleKind←P2280(1, ggData←v34108);
   }

static void SetStyleKind←P2280(formal←c0967, ggData←v10592)
   word formal←c0967;
   word ggData←v10592;
   {
   W10 var←c92776;
   /* declaration of wantScreenStyle←v10564 skipped */ 
   register ptr gf←c92808 =  (ptr) &globalframe;
   /* declaration of var←c87240 skipped */ 
   word scene←v17028;
   (* (( (ptr) &var←c92776)+4)/* wantScreenStyle←v10564 */  ) = formal←c0967;
   /* SetStyleKind: */ 
SOURCE(29098, 1268)
   {
      word tmpAddr509;
      tmpAddr509 = (word) (( (ptr) &var←c92776)+5)/* var←c87240 */ ;
      (*  (ptr) tmpAddr509 ) = ( ((word)  (fPt) DoSetStyleKind←P5772) );
      (* (( (ptr) tmpAddr509) + 1) ) = 1;
      };
SOURCE(29161, 27)
   scene←v17028 = (* (( (ptr) ggData←v10592)+11) );
SOURCE(29190, 1176)
   {
      word pd510;
      pd510 = (* (( (ptr) (* (( (ptr) gf←c92808)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd510 ))))(scene←v17028, 0, pd510))) {
SOURCE(29235, 118)
         {
            word pd511;
            pd511 = (* (( (ptr) (* (( (ptr) gf←c92808)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd511 ))))((* (( (ptr) ggData←v10592)+3) ), 0, (* (( (ptr) gf←c92808)+121) ), (* (( (ptr) gf←c92808)+76)
                ), pd511);
            };
         }
      else {
SOURCE(29353, 1015)
         {
            /* declaration of loc←v17100 skipped */ 
            /* declaration of refIsScreenStyle←v17128 skipped */ 
SOURCE(29840, 22)
            (* (( (ptr) &var←c92776)+7) ) = 0;
            (* (( (ptr) &var←c92776)+8) ) = 0;
SOURCE(29864, 30)
            (* (( (ptr) &var←c92776)+9)/* refIsScreenStyle←v17128 */  ) = 0;
SOURCE(29896, 46)
            {
               word pd512;
               pd512 = (* (( (ptr) (* (( (ptr) gf←c92808)+284)/* var←c82856 */  ))+7) );
               (void) ( *( (fPt) ((*  (ptr) pd512 ))))((* (( (ptr) gf←c92808)+77) ), ggData←v10592, pd512);
               };
SOURCE(29975, 74)
            {
               word var←c87304;
               word pd513;
               pd513 = (* (( (ptr) (* (( (ptr) gf←c92808)+285)/* var←c82952 */  ))+32) );
               var←c87304 = (word) ( *( (fPt) ((*  (ptr) pd513 ))))(scene←v17028, 1, (word) (( (bPt) &var←c92776)+20)/* var←c87240 */ , 0, (* (
                     ( (ptr) gf←c92808)+69) ), pd513);
               };
SOURCE(30051, 29)
            {
               word pd514;
               pd514 = (* (( (ptr) (* (( (ptr) gf←c92808)+284)/* var←c82856 */  ))+6) );
               (void) ( *( (fPt) ((*  (ptr) pd514 ))))(ggData←v10592, pd514);
               };
SOURCE(30082, 143)
            {
               W2 var←c87336;
               var←c87336.f0 = 11;
               if ((0 != (* (( (ptr) &var←c92776)+4)/* wantScreenStyle←v10564 */  ))) {
                  var←c87336.f1 = (* (( (ptr) gf←c92808)+79) );
                  }
               else {
                  var←c87336.f1 = (* (( (ptr) gf←c92808)+80) );
                  };
               {
                  word pd515;
                  pd515 = (* (( (ptr) (* (( (ptr) gf←c92808)+287)/* var←c83016 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd515 ))))((* (( (ptr) ggData←v10592)+3) ), 0, (* (( (ptr) gf←c92808)+46) ), (* (( (ptr) gf←c92808)+78)
                      ), var←c87336, pd515);
                  };
               };
SOURCE(30227, 139)
            {
               word pd516;
               pd516 = (* (( (ptr) (* (( (ptr) gf←c92808)+290)/* var←c83368 */  ))+4) );
               (void) ( *( (fPt) ((*  (ptr) pd516 ))))((* (( (ptr) gf←c92808)+73) ), ggData←v10592, 4, 1, 0, 0, pd516);
               };
            };
         };
      };
   }

static word DoSetStyleKind←P5772(sliceD←v17204, formal←c92872)
   word sliceD←v17204;
   word formal←c92872;
   {
   register ptr gf←c92840 =  (ptr) &globalframe;
   word done←v17248;
   word parent←v17276;
   formal←c92872 = (formal←c92872 - 20);
   /* DoSetStyleKind: */ 
SOURCE(29355, 22)
SOURCE(29355, 22)
   done←v17248 = 0;
SOURCE(29435, 48)
   {
      word pd517;
      pd517 = (* (( (ptr) (* (( (ptr) gf←c92840)+288)/* var←c83176 */  ))+64) );
      parent←v17276 = (word) ( *( (fPt) ((*  (ptr) pd517 ))))((*  (ptr) (sliceD←v17204) ), pd517);
      };
SOURCE(29502, 58)
   {
      W3 var←c87368;
      {
         word pd518;
         pd518 = (* (( (ptr) (* (( (ptr) gf←c92840)+297)/* var←c85224 */  ))+48) );
         (void) ( *( (fPt) ((*  (ptr) pd518 ))))((word) &var←c87368, (*  (ptr) sliceD←v17204 ), pd518);
         };
      (* (( (ptr) formal←c92872)+9) ) = var←c87368.f2;
      (*  (W2Pt) (( (ptr) formal←c92872)+7) ) = (*  (W2Pt) &var←c87368 );
      };
SOURCE(29562, 270)
   if (((* (( (ptr) formal←c92872)+9) ) != (* (( (ptr) formal←c92872)+4) ))) {
SOURCE(29605, 227)
      {
         word tc519;
         word pd520;
         if ((parent←v17276 != 0)) {
            pd520 = (* (( (ptr) (* (( (ptr) gf←c92840)+283)/* var←c82824 */  ))+6) );
            tc519 =  (word) ((word) ( *( (fPt) ((*  (ptr) pd520 ))))(parent←v17276, pd520) == (* (( (ptr) gf←c92840)+162) ));
            }
         else {
            tc519 =  (word) 0;
            };
         if (tc519) {
            {
               W3 var←c0520;
SOURCE(29666, 36)
               {
                  word pd521;
                  pd521 = (* (( (ptr) (* (( (ptr) gf←c92840)+297)/* var←c85224 */  ))+48) );
                  (void) ( *( (fPt) ((*  (ptr) pd521 ))))((word) &var←c0520, parent←v17276, pd521);
                  };
               (*  (W2Pt) (( (ptr) formal←c92872)+7) ) = (*  (W2Pt) &var←c0520 );
SOURCE(29704, 62)
               {
                  word pd522;
                  pd522 = (* (( (ptr) (* (( (ptr) gf←c92840)+286)/* var←c82984 */  ))+12) );
                  (void) ( *( (fPt) ((*  (ptr) pd522 ))))(parent←v17276, (* (( (ptr) formal←c92872)+7) ), (* (( (ptr) formal←c92872)+4) ), 0, pd522)
                  ;
                  };
               };
            }
         else {
SOURCE(29773, 59)
            {
               word pd523;
               pd523 = (* (( (ptr) (* (( (ptr) gf←c92840)+297)/* var←c85224 */  ))+47) );
               (void) ( *( (fPt) ((*  (ptr) pd523 ))))((*  (ptr) sliceD←v17204 ), (*  (W2Pt) (( (ptr) formal←c92872)+7) ), (* (( (ptr) formal←c92872)+4)
                   ), 0, pd523);
               };
            };
         };
      };
SOURCE(29355, 22)
   return(done←v17248);
   }

static void ShowStyleKind←P2340(ggData←v34196, event←v34224)
   word ggData←v34196;
   word event←v34224;
   {
   W8 var←c92904;
   register ptr gf←c92936 =  (ptr) &globalframe;
   /* declaration of var←c87400 skipped */ 
   /* declaration of firstFound←v17348 skipped */ 
   /* declaration of foundScreenStyle←v17376 skipped */ 
   word aborted←v17404;
   /* ShowStyleKind: */ 
SOURCE(30375, 903)
   {
      word tmpAddr524;
      tmpAddr524 = (word) (( (ptr) &var←c92904)+4)/* var←c87400 */ ;
      (*  (ptr) tmpAddr524 ) = ( ((word)  (fPt) CheckStyleKind←P5832) );
      (* (( (ptr) tmpAddr524) + 1) ) = 1;
      };
SOURCE(30729, 24)
   var←c92904.f6/* firstFound←v17348 */  = 0;
SOURCE(30755, 30)
   var←c92904.f7/* foundScreenStyle←v17376 */  = 0;
SOURCE(30787, 92)
   {
      word pd525;
      pd525 = (* (( (ptr) (* (( (ptr) gf←c92936)+285)/* var←c82952 */  ))+32) );
      aborted←v17404 = (word) ( *( (fPt) ((*  (ptr) pd525 ))))((* (( (ptr) ggData←v34196)+11) ), 1, (word) (( (bPt) &var←c92904)+16)
         /* var←c87400 */ , 0, (* (( (ptr) gf←c92936)+69) ), pd525);
      };
SOURCE(30881, 397)
   if ((0 == var←c92904.f6/* firstFound←v17348 */ )) {
SOURCE(30904, 112)
      {
         word pd526;
         pd526 = (* (( (ptr) (* (( (ptr) gf←c92936)+287)/* var←c83016 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd526 ))))((* (( (ptr) ggData←v34196)+3) ), 0, (* (( (ptr) gf←c92936)+121) ), (* (( (ptr) gf←c92936)+81)
             ), pd526);
         };
      }
   else {
SOURCE(31016, 262)
      if ((0 != aborted←v17404)) {
SOURCE(31032, 117)
         {
            word pd527;
            pd527 = (* (( (ptr) (* (( (ptr) gf←c92936)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd527 ))))((* (( (ptr) ggData←v34196)+3) ), 0, (* (( (ptr) gf←c92936)+121) ), (* (( (ptr) gf←c92936)+82)
                ), pd527);
            };
         }
      else {
SOURCE(31149, 129)
         {
            W2 var←c87432;
            var←c87432.f0 = 11;
            if ((0 != var←c92904.f7/* foundScreenStyle←v17376 */ )) {
               var←c87432.f1 = (* (( (ptr) gf←c92936)+79) );
               }
            else {
               var←c87432.f1 = (* (( (ptr) gf←c92936)+80) );
               };
            {
               word pd528;
               pd528 = (* (( (ptr) (* (( (ptr) gf←c92936)+287)/* var←c83016 */  ))+14) );
               (void) ( *( (fPt) ((*  (ptr) pd528 ))))((* (( (ptr) ggData←v34196)+3) ), 0, (* (( (ptr) gf←c92936)+113) ), (* (( (ptr) gf←c92936)+83)
                   ), var←c87432, pd528);
               };
            };
         };
      };
   }

static word CheckStyleKind←P5832(sliceD←v17480, formal←c93000)
   word sliceD←v17480;
   word formal←c93000;
   {
   register ptr gf←c92968 =  (ptr) &globalframe;
   word done←v17524;
   word box←v17552;
   word screenStyle←v17580 = 0;
   W2 loc←v17608;
   formal←c93000 = (formal←c93000 - 16);
   /* CheckStyleKind: */ 
SOURCE(30408, 316)
SOURCE(30408, 316)
   done←v17524 = 0;
SOURCE(30488, 25)
   box←v17552 = (*  (ptr) sliceD←v17480 );
SOURCE(30542, 22)
   loc←v17608.f0 = 0;
   loc←v17608.f1 = 0;
SOURCE(30566, 44)
   {
      W3 var←c87496;
      {
         word pd529;
         pd529 = (* (( (ptr) (* (( (ptr) gf←c92968)+297)/* var←c85224 */  ))+48) );
         (void) ( *( (fPt) ((*  (ptr) pd529 ))))((word) &var←c87496, box←v17552, pd529);
         };
      screenStyle←v17580 = var←c87496.f2;
      loc←v17608 = (*  (W2Pt) &var←c87496 );
      };
SOURCE(30612, 73)
   if ((0 == (* (( (ptr) formal←c93000)+6) ))) {
SOURCE(30636, 30)
      (* (( (ptr) formal←c93000)+7) ) = screenStyle←v17580;
SOURCE(30668, 17)
      (* (( (ptr) formal←c93000)+6) ) = 1;
      };
SOURCE(30688, 36)
   return( (unsigned) (screenStyle←v17580 != (* (( (ptr) formal←c93000)+7) )));
   }

static void SetNewlineFactor←P2400(ggData←v34284, event←v34312)
   word ggData←v34284;
   word event←v34312;
   {
   W7 var←c93032;
   register ptr gf←c93064 =  (ptr) &globalframe;
   /* declaration of var←c87528 skipped */ 
   word scene←v17652;
   /* declaration of r←v17680 skipped */ 
   /* SetNewlineFactor: */ 
SOURCE(31284, 878)
   {
      word tmpAddr530;
      tmpAddr530 = (word) (( (ptr) &var←c93032)+4)/* var←c87528 */ ;
      (*  (ptr) tmpAddr530 ) = ( ((word)  (fPt) DoSetNewlineFactor←P5940) );
      (* (( (ptr) tmpAddr530) + 1) ) = 1;
      };
SOURCE(31320, 27)
   scene←v17652 = (* (( (ptr) ggData←v34284)+11) );
SOURCE(31349, 45)
   var←c93032.f6/* r←v17680 */  = (*  (ptr) XR←Narrow((*  (ptr) (* (( (ptr) event←v34312)+1) ) ), (* (( (ptr) gf←c93064)+25)
       )) );
SOURCE(31396, 766)
   {
      word pd531;
      pd531 = (* (( (ptr) (* (( (ptr) gf←c93064)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd531 ))))(scene←v17652, 0, pd531))) {
SOURCE(31441, 138)
         {
            word pd532;
            pd532 = (* (( (ptr) (* (( (ptr) gf←c93064)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd532 ))))((* (( (ptr) ggData←v34284)+3) ), 0, (* (( (ptr) gf←c93064)+121) ), (* (( (ptr) gf←c93064)+84)
                ), pd532);
            };
         }
      else {
SOURCE(31579, 583)
         {
            word x533;
            word x535;
            if (((
               x533 = var←c93032.f6/* r←v17680 */ ,  *(float*)&x533
               ) > (
               x535 = (*  (ptr) &fc534 ),  *(float*)&x535
               ))) {
SOURCE(31603, 117)
               {
                  word pd536;
                  pd536 = (* (( (ptr) (* (( (ptr) gf←c93064)+287)/* var←c83016 */  ))+12) );
                  (void) ( *( (fPt) ((*  (ptr) pd536 ))))((* (( (ptr) ggData←v34284)+3) ), 0, (* (( (ptr) gf←c93064)+121) ), (* (( (ptr) gf←c93064)+85)
                      ), pd536);
                  };
               }
            else {
SOURCE(31720, 444)
SOURCE(31859, 50)
               {
                  word pd537;
                  pd537 = (* (( (ptr) (* (( (ptr) gf←c93064)+284)/* var←c82856 */  ))+7) );
                  (void) ( *( (fPt) ((*  (ptr) pd537 ))))((* (( (ptr) gf←c93064)+86) ), ggData←v34284, pd537);
                  };
SOURCE(31942, 79)
               {
                  word var←c87560;
                  word pd538;
                  pd538 = (* (( (ptr) (* (( (ptr) gf←c93064)+285)/* var←c82952 */  ))+32) );
                  var←c87560 = (word) ( *( (fPt) ((*  (ptr) pd538 ))))(scene←v17652, 1, (word) (( (bPt) &var←c93032)+16)/* var←c87528 */ , 0, (* (
                        ( (ptr) gf←c93064)+87) ), pd538);
                  };
SOURCE(32023, 29)
               {
                  word pd539;
                  pd539 = (* (( (ptr) (* (( (ptr) gf←c93064)+284)/* var←c82856 */  ))+6) );
                  (void) ( *( (fPt) ((*  (ptr) pd539 ))))(ggData←v34284, pd539);
                  };
SOURCE(32054, 108)
               {
                  W2 var←c87592;
                  var←c87592.f0 = 8;
                  var←c87592.f1 = var←c93032.f6/* r←v17680 */ ;
                  {
                     word pd540;
                     pd540 = (* (( (ptr) (* (( (ptr) gf←c93064)+287)/* var←c83016 */  ))+14) );
                     (void) ( *( (fPt) ((*  (ptr) pd540 ))))((* (( (ptr) ggData←v34284)+3) ), 0, (* (( (ptr) gf←c93064)+46) ), (* (( (ptr) gf←c93064)+88)
                         ), var←c87592, pd540);
                     };
                  };
               };
            };
         };
      };
   }

static word DoSetNewlineFactor←P5940(sliceD←v17812, formal←c93128)
   word sliceD←v17812;
   word formal←c93128;
   {
   register ptr gf←c93096 =  (ptr) &globalframe;
   word done←v17856;
   formal←c93128 = (formal←c93128 - 16);
   /* DoSetNewlineFactor: */ 
SOURCE(31722, 26)
SOURCE(31722, 26)
   done←v17856 = 0;
SOURCE(31806, 48)
   {
      word pd541;
      pd541 = (* (( (ptr) (* (( (ptr) gf←c93096)+297)/* var←c85224 */  ))+40) );
      (void) ( *( (fPt) ((*  (ptr) pd541 ))))((*  (ptr) sliceD←v17812 ), (* (( (ptr) formal←c93128)+6) ), 0, pd541);
      };
SOURCE(31722, 26)
   return(done←v17856);
   }

static void ShowNewlineFactor←P2460(ggData←v34372, event←v34400)
   word ggData←v34372;
   word event←v34400;
   {
   W7 var←c93160;
   register ptr gf←c93192 =  (ptr) &globalframe;
   /* declaration of var←c87624 skipped */ 
   /* declaration of factor←v17884 skipped */ 
   word aborted←v17912 = 0;
   word scene←v17940;
   /* ShowNewlineFactor: */ 
SOURCE(32171, 814)
   {
      word tmpAddr542;
      tmpAddr542 = (word) (( (ptr) &var←c93160)+4)/* var←c87624 */ ;
      (*  (ptr) tmpAddr542 ) = ( ((word)  (fPt) CheckNewlineFactor←P6000) );
      (* (( (ptr) tmpAddr542) + 1) ) = 1;
      };
SOURCE(32208, 33)
   var←c93160.f6/* factor←v17884 */  = 2139095039;
SOURCE(32266, 27)
   scene←v17940 = (* (( (ptr) ggData←v34372)+11) );
SOURCE(32532, 84)
   {
      word pd543;
      pd543 = (* (( (ptr) (* (( (ptr) gf←c93192)+285)/* var←c82952 */  ))+32) );
      aborted←v17912 = (word) ( *( (fPt) ((*  (ptr) pd543 ))))(scene←v17940, 1, (word) (( (bPt) &var←c93160)+16)/* var←c87624 */ , 0, (* (
            ( (ptr) gf←c93192)+87) ), pd543);
      };
SOURCE(32618, 367)
   {
      word x544;
      word x545;
      if (((
         x544 = var←c93160.f6/* factor←v17884 */ ,  *(float*)&x544
         ) == (
         x545 = 2139095039,  *(float*)&x545
         ))) {
SOURCE(32654, 112)
         {
            word pd546;
            pd546 = (* (( (ptr) (* (( (ptr) gf←c93192)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd546 ))))((* (( (ptr) ggData←v34372)+3) ), 0, (* (( (ptr) gf←c93192)+121) ), (* (( (ptr) gf←c93192)+89)
                ), pd546);
            };
         }
      else {
SOURCE(32766, 219)
         if ((0 != aborted←v17912)) {
SOURCE(32782, 117)
            {
               word pd547;
               pd547 = (* (( (ptr) (* (( (ptr) gf←c93192)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd547 ))))((* (( (ptr) ggData←v34372)+3) ), 0, (* (( (ptr) gf←c93192)+121) ), (* (( (ptr) gf←c93192)+90)
                   ), pd547);
               };
            }
         else {
SOURCE(32899, 86)
            {
               W2 var←c87656;
               var←c87656.f0 = 8;
               var←c87656.f1 = var←c93160.f6/* factor←v17884 */ ;
               {
                  word pd548;
                  pd548 = (* (( (ptr) (* (( (ptr) gf←c93192)+287)/* var←c83016 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd548 ))))((* (( (ptr) ggData←v34372)+3) ), 0, (* (( (ptr) gf←c93192)+113) ), (* (( (ptr) gf←c93192)+91)
                      ), var←c87656, pd548);
                  };
               };
            };
         };
      };
   }

static word CheckNewlineFactor←P6000(sliceD←v18044, formal←c93256)
   word sliceD←v18044;
   word formal←c93256;
   {
   register ptr gf←c93224 =  (ptr) &globalframe;
   word done←v18088;
   formal←c93256 = (formal←c93256 - 16);
   /* CheckNewlineFactor: */ 
SOURCE(32295, 232)
SOURCE(32295, 232)
   done←v18088 = 0;
SOURCE(32379, 148)
   {
      word x549;
      word x550;
      if (((
         x549 = (* (( (ptr) formal←c93256)+6) ),  *(float*)&x549
         ) == (
         x550 = 2139095039,  *(float*)&x550
         ))) {
SOURCE(32415, 55)
         {
            word pd551;
            pd551 = (* (( (ptr) (* (( (ptr) gf←c93224)+297)/* var←c85224 */  ))+39) );
            (* (( (ptr) formal←c93256)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd551 ))))((*  (ptr) (sliceD←v18044) ), pd551);
            };
         }
      else {
SOURCE(32470, 57)
         {
            word x552;
            word pd553;
            word x554;
            pd553 = (* (( (ptr) (* (( (ptr) gf←c93224)+297)/* var←c85224 */  ))+39) );
            return( (unsigned) ((
               x552 = (* (( (ptr) formal←c93256)+6) ),  *(float*)&x552
               ) != (
               x554 = (word) ( *( (fPt) ((*  (ptr) pd553 ))))((*  (ptr) (sliceD←v18044) ), pd553),  *(float*)&x554
               )));
            };
         };
      };
SOURCE(32295, 232)
   return(done←v18088);
   }

static void ConvertTextToSplines←P2520(ggData←v34460, event←v34488)
   word ggData←v34460;
   word event←v34488;
   {
   W8 var←c93288;
   register ptr gf←c93320 =  (ptr) &globalframe;
   /* declaration of var←c87720 skipped */ 
   /* declaration of outlines←v18144 skipped */ 
   /* declaration of scene←v18172 skipped */ 
   /* ConvertTextToSplines: */ 
SOURCE(32991, 2316)
   {
      word tmpAddr555;
      tmpAddr555 = (word) (( (ptr) &var←c93288)+4)/* var←c87720 */ ;
      (*  (ptr) tmpAddr555 ) = ( ((word)  (fPt) ConvertToSplines←P6060) );
      (* (( (ptr) tmpAddr555) + 1) ) = 1;
      };
SOURCE(34228, 10)
   var←c93288.f6/* outlines←v18144 */  = 0;
SOURCE(34259, 27)
   var←c93288.f7/* scene←v18172 */  = (* (( (ptr) ggData←v34460)+11) );
SOURCE(34288, 1019)
   {
      word pd556;
      pd556 = (* (( (ptr) (* (( (ptr) gf←c93320)+285)/* var←c82952 */  ))+36) );
      if (((word) ( *( (fPt) ((*  (ptr) pd556 ))))((* (( (ptr) ggData←v34460)+11) ), 1, 0, (* (( (ptr) gf←c93320)+87) ), pd556)
       < 1)) {
SOURCE(34361, 122)
         {
            word pd557;
            pd557 = (* (( (ptr) (* (( (ptr) gf←c93320)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd557 ))))((* (( (ptr) ggData←v34460)+3) ), 0, (* (( (ptr) gf←c93320)+121) ), (* (( (ptr) gf←c93320)+92)
                ), pd557);
            };
         }
      else {
SOURCE(34485, 47)
         {
            word pd558;
            pd558 = (* (( (ptr) (* (( (ptr) gf←c93320)+284)/* var←c82856 */  ))+7) );
            (void) ( *( (fPt) ((*  (ptr) pd558 ))))((* (( (ptr) gf←c93320)+93) ), ggData←v34460, pd558);
            };
SOURCE(34534, 81)
         {
            word pd559;
            pd559 = (* (( (ptr) (* (( (ptr) gf←c93320)+289)/* var←c83304 */  ))+10) );
            (void) ( *( (fPt) ((*  (ptr) pd559 ))))(ggData←v34460, 0, 0, 0, 1, 0
               , 0, 0, 0, 0, pd559);
            };
SOURCE(34617, 77)
         {
            word var←c87752;
            word pd560;
            pd560 = (* (( (ptr) (* (( (ptr) gf←c93320)+285)/* var←c82952 */  ))+32) );
            var←c87752 = (word) ( *( (fPt) ((*  (ptr) pd560 ))))(var←c93288.f7/* scene←v18172 */ , 1, (word) (( (bPt) &var←c93288)+16)
               /* var←c87720 */ , 0, (* (( (ptr) gf←c93320)+87) ), pd560);
            };
SOURCE(34696, 35)
         {
            word pd561;
            pd561 = (* (( (ptr) (* (( (ptr) gf←c93320)+281)/* var←c82760 */  ))+13) );
            (void) ( *( (fPt) ((*  (ptr) pd561 ))))(var←c93288.f7/* scene←v18172 */ , 0, pd561);
            };
SOURCE(34786, 119)
         {
            register word list←v18404;
            list←v18404 = var←c93288.f6/* outlines←v18144 */ ;
            lab←L100036: ;
            if ((list←v18404 != 0)) {
               }
            else {
               goto lab←L100033;
               };
SOURCE(34852, 53)
            {
               word pd562;
               pd562 = (* (( (ptr) (* (( (ptr) gf←c93320)+281)/* var←c82760 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd562 ))))((*  (ptr) list←v18404 ), var←c93288.f7/* scene←v18172 */ , 0, pd562);
               };
            list←v18404 = (* (( (ptr) list←v18404)+1) );
            goto lab←L100036;
            lab←L100033: ;
            };
SOURCE(34916, 33)
         {
            word pd563;
            pd563 = (* (( (ptr) (* (( (ptr) gf←c93320)+299)/* var←c85416 */  ))+13) );
            (void) ( *( (fPt) ((*  (ptr) pd563 ))))((* ((( (ptr) ggData←v34460)+13)) ), pd563);
            };
SOURCE(34951, 81)
         {
            word var←c87784;
            {
               word pd564;
               pd564 = (* (( (ptr) (* (( (ptr) gf←c93320)+285)/* var←c82952 */  ))+45) );
               var←c87784 = (word) ( *( (fPt) ((*  (ptr) pd564 ))))(var←c93288.f7/* scene←v18172 */ , 0, 0, pd564);
               };
            {
               word pd565;
               pd565 = (* (( (ptr) (* (( (ptr) gf←c93320)+289)/* var←c83304 */  ))+11) );
               (void) ( *( (fPt) ((*  (ptr) pd565 ))))(ggData←v34460, var←c87784, 0, pd565);
               };
            };
SOURCE(35034, 29)
         {
            word pd566;
            pd566 = (* (( (ptr) (* (( (ptr) gf←c93320)+284)/* var←c82856 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd566 ))))(ggData←v34460, pd566);
            };
SOURCE(35065, 86)
         {
            word pd567;
            pd567 = (* (( (ptr) (* (( (ptr) gf←c93320)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd567 ))))((* (( (ptr) ggData←v34460)+3) ), 0, (* (( (ptr) gf←c93320)+46) ), (* (( (ptr) gf←c93320)+94)
                ), pd567);
            };
SOURCE(35153, 154)
         {
            word pd568;
            pd568 = (* (( (ptr) (* (( (ptr) gf←c93320)+290)/* var←c83368 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd568 ))))((* (( (ptr) gf←c93320)+28) ), ggData←v34460, 0, 1, 0, 0, pd568);
            };
         };
      };
   }

static word ConvertToSplines←P6060(sliceD←v18248, formal←c93384)
   word sliceD←v18248;
   word formal←c93384;
   {
   register ptr gf←c93352 =  (ptr) &globalframe;
   word done←v18292;
   word priority←v18532;
   formal←c93384 = (formal←c93384 - 16);
   /* ConvertToSplines: */ 
SOURCE(33031, 1189)
SOURCE(33031, 1189)
   done←v18292 = 0;
SOURCE(33128, 1092)
   {
      word pd569;
      pd569 = (* (( (ptr) (* (( (ptr) gf←c93352)+285)/* var←c82952 */  ))+39) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd569 ))))((*  (ptr) (sliceD←v18248) ), pd569))) {
SOURCE(33169, 472)
         {
            word theseShadows←v18576 = 0;
            word theseOutlines←v18604 = 0;
SOURCE(33215, 76)
            {
               W2 var←c87816;
               {
                  word pd570;
                  pd570 = (* (( (ptr) (* (( (ptr) gf←c93352)+297)/* var←c85224 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd570 ))))((word) &var←c87816, (*  (ptr) sliceD←v18248 ), pd570);
                  };
               theseOutlines←v18604 = var←c87816.f1;
               theseShadows←v18576 = var←c87816.f0;
               };
SOURCE(33293, 51)
            {
               word pd571;
               pd571 = (* (( (ptr) (* (( (ptr) gf←c93352)+285)/* var←c82952 */  ))+21) );
               priority←v18532 = (word) ( *( (fPt) ((*  (ptr) pd571 ))))((* (( (ptr) formal←c93384)+7) ), (*  (ptr) sliceD←v18248 ), pd571)
               ;
               };
SOURCE(33346, 40)
            {
               word pd572;
               pd572 = (* (( (ptr) (* (( (ptr) gf←c93352)+285)/* var←c82952 */  ))+13) );
               (void) ( *( (fPt) ((*  (ptr) pd572 ))))((* (( (ptr) formal←c93384)+7) ), (*  (ptr) sliceD←v18248 ), pd572);
               };
SOURCE(33388, 49)
            {
               word pd573;
               pd573 = (* (( (ptr) (* (( (ptr) gf←c93352)+285)/* var←c82952 */  ))+10) );
               (void) ( *( (fPt) ((*  (ptr) pd573 ))))((* (( (ptr) formal←c93384)+7) ), theseOutlines←v18604, priority←v18532, pd573);
               };
SOURCE(33439, 75)
            if ((theseShadows←v18576 != 0)) {
SOURCE(33466, 48)
               {
                  word pd574;
                  pd574 = (* (( (ptr) (* (( (ptr) gf←c93352)+285)/* var←c82952 */  ))+10) );
                  (void) ( *( (fPt) ((*  (ptr) pd574 ))))((* (( (ptr) formal←c93384)+7) ), theseShadows←v18576, priority←v18532, pd574);
                  };
               };
SOURCE(33516, 61)
            {
               word pd575;
               pd575 = (* (( (ptr) (* (( (ptr) gf←c93352)+309)/* var←c87848 */  ))+22) );
               (* (( (ptr) formal←c93384)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd575 ))))(theseOutlines←v18604, (* (( (ptr) formal←c93384)+6)
                   ), pd575);
               };
SOURCE(33579, 60)
            {
               word pd576;
               pd576 = (* (( (ptr) (* (( (ptr) gf←c93352)+309)/* var←c87848 */  ))+22) );
               (* (( (ptr) formal←c93384)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd576 ))))(theseShadows←v18576, (* (( (ptr) formal←c93384)+6)
                   ), pd576);
               };
            };
         }
      else {
SOURCE(33648, 574)
         {
            word theseShadows←v18732 = 0;
            word theseOutlines←v18760 = 0;
            word cluster←v18788;
SOURCE(33694, 49)
            {
               word pd577;
               pd577 = (* (( (ptr) (* (( (ptr) gf←c93352)+288)/* var←c83176 */  ))+64) );
               cluster←v18788 = (word) ( *( (fPt) ((*  (ptr) pd577 ))))((*  (ptr) (sliceD←v18248) ), pd577);
               };
SOURCE(33745, 76)
            {
               W2 var←c87880;
               {
                  word pd578;
                  pd578 = (* (( (ptr) (* (( (ptr) gf←c93352)+297)/* var←c85224 */  ))+42) );
                  (void) ( *( (fPt) ((*  (ptr) pd578 ))))((word) &var←c87880, (*  (ptr) sliceD←v18248 ), pd578);
                  };
               theseOutlines←v18760 = var←c87880.f1;
               theseShadows←v18732 = var←c87880.f0;
               };
SOURCE(33823, 59)
            {
               word pd579;
               pd579 = (* (( (ptr) (* (( (ptr) gf←c93352)+288)/* var←c83176 */  ))+66) );
               priority←v18532 = (word) ( *( (fPt) ((*  (ptr) pd579 ))))(cluster←v18788, (*  (ptr) sliceD←v18248 ), pd579);
               };
SOURCE(33884, 47)
            {
               word var←c87912;
               word pd580;
               pd580 = (* (( (ptr) (* (( (ptr) gf←c93352)+297)/* var←c85224 */  ))+13) );
               var←c87912 = (word) ( *( (fPt) ((*  (ptr) pd580 ))))(cluster←v18788, (*  (ptr) sliceD←v18248 ), pd580);
               };
SOURCE(33933, 67)
            {
               word pd581;
               pd581 = (* (( (ptr) (* (( (ptr) gf←c93352)+297)/* var←c85224 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd581 ))))(cluster←v18788, theseOutlines←v18760, priority←v18532, pd581);
               };
SOURCE(34002, 93)
            if ((theseShadows←v18732 != 0)) {
SOURCE(34029, 66)
               {
                  word pd582;
                  pd582 = (* (( (ptr) (* (( (ptr) gf←c93352)+297)/* var←c85224 */  ))+12) );
                  (void) ( *( (fPt) ((*  (ptr) pd582 ))))(cluster←v18788, theseShadows←v18732, priority←v18532, pd582);
                  };
               };
SOURCE(34097, 61)
            {
               word pd583;
               pd583 = (* (( (ptr) (* (( (ptr) gf←c93352)+309)/* var←c87848 */  ))+22) );
               (* (( (ptr) formal←c93384)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd583 ))))(theseOutlines←v18760, (* (( (ptr) formal←c93384)+6)
                   ), pd583);
               };
SOURCE(34160, 60)
            {
               word pd584;
               pd584 = (* (( (ptr) (* (( (ptr) gf←c93352)+309)/* var←c87848 */  ))+22) );
               (* (( (ptr) formal←c93384)+6) ) = (word) ( *( (fPt) ((*  (ptr) pd584 ))))(theseShadows←v18732, (* (( (ptr) formal←c93384)+6)
                   ), pd584);
               };
            };
         };
      };
SOURCE(33031, 1189)
   return(done←v18292);
   }

static void RGBFromColor←P2580(formal←c0579, color←v10652)
   word formal←c0579;
   word color←v10652;
   {
   register ptr gf←c93416 =  (ptr) &globalframe;
   W3 var←c10696;
   /* RGBFromColor: */ 
SOURCE(35316, 160)
SOURCE(35400, 76)
   {
      W3 var←c88040;
      {
         word var←c87976;
         {
            word pd585;
            pd585 = (* (( (ptr) (* (( (ptr) gf←c93416)+310)/* var←c88008 */  ))+8) );
            var←c87976 = (word) ( *( (fPt) ((*  (ptr) pd585 ))))(color←v10652, pd585);
            };
         {
            word pd586;
            pd586 = (* (( (ptr) (* (( (ptr) gf←c93416)+310)/* var←c88008 */  ))+18) );
            (void) ( *( (fPt) ((*  (ptr) pd586 ))))((word) &var←c88040, var←c87976, pd586);
            };
         };
      var←c10696 = var←c88040;
      /* removed tail goto */ 
      };
   (*  (W3Pt) formal←c0579 ) = var←c10696;
   return;
   }

static void CreateColorWash←P2640(formal←c0588, formal←c0968, formal←c0969, formal←c0970, formal←c0971)
   word formal←c0588;
   word formal←c0968;
   word formal←c0969;
   word formal←c0970;
   W2 formal←c0971;
   {
   W16 var←c93448;
   /* declaration of startColor←v10756 skipped */ 
   /* declaration of regionWidth←v10784 skipped */ 
   /* declaration of toAtom←v10812 skipped */ 
   /* declaration of vec←v10840 skipped */ 
   word success←v10884;
   /* declaration of wash←v10912 skipped */ 
   /* declaration of var←c88072 skipped */ 
   (* (( (ptr) &var←c93448)+4)/* startColor←v10756 */  ) = formal←c0968;
   (* (( (ptr) &var←c93448)+5)/* regionWidth←v10784 */  ) = formal←c0969;
   (* (( (ptr) &var←c93448)+6)/* toAtom←v10812 */  ) = formal←c0970;
   (*  (W2Pt) (( (ptr) &var←c93448)+7)/* vec←v10840 */  ) = formal←c0971;
   /* CreateColorWash: */ 
SOURCE(35482, 2043)
   {
      word tmpAddr587;
      tmpAddr587 = (word) (( (ptr) &var←c93448)+10)/* var←c88072 */ ;
      (*  (ptr) tmpAddr587 ) = ( ((word)  (fPt) FillSampleMap←P6312) );
      (* (( (ptr) tmpAddr587) + 1) ) = 1;
      };
SOURCE(35482, 2043)
   success←v10884 = 1;
SOURCE(35482, 2043)
   (* (( (ptr) &var←c93448)+9)/* wash←v10912 */  ) = 0;
SOURCE(35649, 1876)
SOURCE(35651, 1840)
   {
      /* declaration of box←v19168 skipped */ 
      word var←c04;
      {
         word var←c0888;
         var←c0888 = (word) &var←c93448;
         var←c04 = (word) XR←Enable(( ((word)  (fPt) NoName←Q7680) ), ( ((word)  (fPt) NoName←Q7920) ), var←c0888);
         };
      if ((var←c04 == 3)) {
         goto lab←L100039;
         };
      };
   goto lab←L100046;
   lab←L100039: ;
SOURCE(37508, 15)
   success←v10884 = 0;
   lab←L100046: ;
   /* removed tail goto */ 
   (*  (ptr) formal←c0588 ) = success←v10884;
   (* (( (ptr) formal←c0588)+1) ) = (* (( (ptr) &var←c93448)+9)/* wash←v10912 */  );
   return;
   }

static word NoName←Q7680(formal←c0855)
   word formal←c0855;
   {
   W6 var←c0943;
   register ptr gf←c0854 =  (ptr) &globalframe;
   var←c0943.f0 = formal←c0855;
SOURCE(35687, 21)
   {
      word maxSample←v18944 = 255;
      word size←v18972;
      word fudgeFactor←v19000;
      W3 startRGB←v19028;
      W3 endRGB←v19056;
      word redMap←v19084 = 0;
      word grnMap←v19112 = 0;
      word bluMap←v19140 = 0;
      word pixelMap←v19196 = 0;
      word pixelArray←v19224 = 0;
      word um←v19252 = 0;
SOURCE(36205, 35)
      {
         word pd588;
         pd588 = (* (( (ptr) (* (( (ptr) gf←c0854)+312)/* var←c88136 */  ))+8) );
         size←v18972 = (word) ( *( (fPt) ((*  (ptr) pd588 ))))((* ((( (ptr) formal←c0855)+5)) ), pd588);
         };
SOURCE(36344, 56)
      (* (( (ptr) formal←c0855)+12) ) = 0;
      (* (( (ptr) formal←c0855)+13) ) = 0;
      (* (( (ptr) formal←c0855)+14) ) = 1;
      (* (( (ptr) formal←c0855)+15) ) = size←v18972;
SOURCE(36517, 35)
      (void) RGBFromColor←P2580((word) &startRGB←v19028, (* (( (ptr) formal←c0855)+4) ));
SOURCE(36554, 298)
      {
         word var←c88200;
         var←c88200 = (* (( (ptr) formal←c0855)+6) );
         if ((var←c88200 == (* (( (ptr) gf←c0854)+95) ))) {
SOURCE(36583, 24)
            endRGB←v19056.f0 = (*  (ptr) &fc283 );
            endRGB←v19056.f1 = (*  (ptr) &fc283 );
            endRGB←v19056.f2 = (*  (ptr) &fc283 );
            goto endif0589;
            };
         if ((var←c88200 == (* (( (ptr) gf←c0854)+96) ))) {
SOURCE(36619, 24)
            endRGB←v19056.f0 = (*  (ptr) &fc316 );
            endRGB←v19056.f1 = (*  (ptr) &fc316 );
            endRGB←v19056.f2 = (*  (ptr) &fc316 );
            goto endif0589;
            };
         if ((var←c88200 == (* (( (ptr) gf←c0854)+97) ))) {
SOURCE(36659, 195)
            {
               word endColor←v19484 = 0;
SOURCE(36699, 64)
SOURCE(36699, 64)
               {
                  /* declaration of var←c01 skipped */ 
                  var←c0943.f4/* var←c01 */  = (* (( (ptr) (* (( (ptr) gf←c0854)+313)/* var←c88232 */  ))+9) );
                  {
                     /* declaration of var←c02 skipped */ 
                     {
                        word var←c03;
                        {
                           word var←c0889;
                           var←c0889 = (word) &var←c0943;
                           var←c03 = (word) XR←Enable(( ((word)  (fPt) NoName←Q7740) ), ( ((word)  (fPt) NoName←Q7980) ), var←c0889);
                           };
                        if ((var←c03 == 2)) {
                           goto lab←L100043;
                           };
                        };
                     endColor←v19484 = var←c0943.f5/* var←c02 */ ;
                     };
                  };
               lab←L100043: ;
SOURCE(36775, 44)
               if ((endColor←v19484 == 0)) {
SOURCE(36796, 23)
                  endColor←v19484 = (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c0854)+311)/* var←c88104 */  ))+54) ) );
                  };
SOURCE(36821, 31)
               (void) RGBFromColor←P2580((word) &endRGB←v19056, endColor←v19484);
               };
            goto endif0589;
            };
SOURCE(36868, 5)
         (void) XR←RaiseUnnamedError();
         goto endif0589;
         endif0589: ;
         };
SOURCE(36875, 61)
      redMap←v19084 = (word) FillSampleMap←P6312(size←v18972, startRGB←v19028.f0, endRGB←v19056.f0, maxSample←v18944, (word) (( (bPt) formal←c0855)+40)
         );
SOURCE(36938, 61)
      grnMap←v19112 = (word) FillSampleMap←P6312(size←v18972, startRGB←v19028.f1, endRGB←v19056.f1, maxSample←v18944, (word) (( (bPt) formal←c0855)+40)
         );
SOURCE(37001, 61)
      bluMap←v19140 = (word) FillSampleMap←P6312(size←v18972, startRGB←v19028.f2, endRGB←v19056.f2, maxSample←v18944, (word) (( (bPt) formal←c0855)+40)
         );
SOURCE(37064, 59)
      {
         word pd590;
         pd590 = (* (( (ptr) (* (( (ptr) gf←c0854)+314)/* var←c88264 */  ))+9) );
         pixelMap←v19196 = (word) ( *( (fPt) ((*  (ptr) pd590 ))))(redMap←v19084, grnMap←v19112, bluMap←v19140, 0, 0, pd590);
         };
SOURCE(37125, 114)
      {
         word pd591;
         pd591 = (* (( (ptr) (* (( (ptr) gf←c0854)+315)/* var←c88296 */  ))+16) );
         pixelArray←v19224 = (word) ( *( (fPt) ((*  (ptr) pd591 ))))(pixelMap←v19196, (*  (W4Pt) (( (ptr) formal←c0855)+12) ), 13, 1, pd591)
         ;
         };
SOURCE(37241, 36)
      {
         word x592;
         *(float*)&fudgeFactor←v19000 = (
            x592 = (* (( (ptr) formal←c0855)+5) ),  *(float*)&x592
            ) / (float)(int)size←v18972;
         };
SOURCE(37279, 84)
      {
         word var←c88328;
         {
            word pd593;
            pd593 = (* (( (ptr) (* (( (ptr) gf←c0854)+316)/* var←c88360 */  ))+10) );
            var←c88328 = (word) ( *( (fPt) ((*  (ptr) pd593 ))))((*  (W2Pt) ((( (ptr) formal←c0855)+7)) ), pd593);
            };
         {
            word pd594;
            pd594 = (* (( (ptr) (* (( (ptr) gf←c0854)+316)/* var←c88360 */  ))+15) );
            um←v19252 = (word) ( *( (fPt) ((*  (ptr) pd594 ))))(var←c88328, fudgeFactor←v19000, pd594);
            };
         };
SOURCE(37365, 126)
      {
         word var←c88392;
         {
            word pd595;
            float tf596;
            pd595 = (* (( (ptr) (* (( (ptr) gf←c0854)+310)/* var←c88008 */  ))+19) );
            var←c88392 = (word) ( *( (fPt) ((*  (ptr) pd595 ))))((
                  tf596 = (float)(int)maxSample←v18944,  *(word*)&tf596
                  ), (*  (ptr) &fc316 ), 0, 0, pd595);
            };
         {
            word pd597;
            pd597 = (* (( (ptr) (* (( (ptr) gf←c0854)+310)/* var←c88008 */  ))+10) );
            (* (( (ptr) formal←c0855)+9) ) = (word) ( *( (fPt) ((*  (ptr) pd597 ))))(pixelArray←v19224, um←v19252, var←c88392, pd597)
            ;
            };
         };
      };
   return(0);
   }

static word NoName←Q7740(formal←c0856)
   word formal←c0856;
   {
SOURCE(36699, 64)
   {
      word pd598;
      pd598 = (* (( (ptr) formal←c0856)+4) );
      (* (( (ptr) formal←c0856)+5) ) = (word) ( *( (fPt) ((*  (ptr) pd598 ))))(0, pd598);
      };
   return(0);
   }

static word FillSampleMap←P6312(size←v19328, startSample←v19356, endSample←v19384, maxSample←v19412, formal←c93512)
   word size←v19328;
   word startSample←v19356;
   word endSample←v19384;
   word maxSample←v19412;
   word formal←c93512;
   {
   register ptr gf←c93480 =  (ptr) &globalframe;
   word map←v19456;
   word step←v19528;
   word alpha←v19556;
   formal←c93512 = (formal←c93512 - 40);
   /* FillSampleMap: */ 
SOURCE(35687, 21)
SOURCE(35687, 21)
   map←v19456 = 0;
SOURCE(35807, 21)
   {
      word x599;
      *(float*)&step←v19528 = (
         x599 = (*  (ptr) &fc283 ),  *(float*)&x599
         ) / (float)(int)size←v19328;
      };
SOURCE(35830, 17)
   alpha←v19556 = (*  (ptr) &fc316 );
SOURCE(35849, 59)
   {
      word pd600;
      pd600 = (* (( (ptr) (* (( (ptr) gf←c93480)+317)/* var←c88424 */  ))+19) );
      map←v19456 = (word) ( *( (fPt) ((*  (ptr) pd600 ))))((*  (W4Pt) (( (ptr) formal←c93512)+12) ), 8, 0, pd600);
      };
SOURCE(35910, 258)
   {
      register word index←v19600 = 0;
      register word noName←c88456;
      noName←c88456 = size←v19328;
      if (( (int)index←v19600 >=  (int)noName←c88456)) {
         goto lab←L100047;
         };
      lab←L100050: ;
      {
         W2 nextVec←v19644;
         word nextValue←v19672;
         word nextSample←v19700;
SOURCE(35941, 28)
         nextVec←v19644.f0 = 0;
         nextVec←v19644.f1 = index←v19600;
SOURCE(35971, 59)
         {
            word x601;
            word x602;
            word x603;
            word x604;
            word x605;
            *(float*)&nextValue←v19672 = ((
               x601 = alpha←v19556,  *(float*)&x601
               ) * (
               x602 = endSample←v19384,  *(float*)&x602
               )) + (((
               x603 = (*  (ptr) &fc283 ),  *(float*)&x603
               ) - (
               x604 = alpha←v19556,  *(float*)&x604
               )) * (
               x605 = startSample←v19356,  *(float*)&x605
               ));
            };
SOURCE(36032, 53)
         {
            word pd606;
            word x607;
            float tf608;
            pd606 = (* (( (ptr) (* (( (ptr) gf←c93480)+312)/* var←c88136 */  ))+8) );
            nextSample←v19700 = (word) ( *( (fPt) ((*  (ptr) pd606 ))))((
                  tf608 = (float)(int)maxSample←v19412 * (
                     x607 = nextValue←v19672,  *(float*)&x607
                     ),  *(word*)&tf608
                  ), pd606);
            };
SOURCE(36087, 61)
         {
            word pd609;
            pd609 = (* (( (ptr) (* (( (ptr) gf←c93480)+317)/* var←c88424 */  ))+43) );
            (void) ( *( (fPt) ((*  (ptr) pd609 ))))(map←v19456, nextVec←v19644, SGNCK(nextSample←v19700), 0, pd609);
            };
SOURCE(36150, 18)
         {
            word x610;
            word x611;
            *(float*)&alpha←v19556 = (
               x610 = alpha←v19556,  *(float*)&x610
               ) + (
               x611 = step←v19528,  *(float*)&x611
               );
            };
         };
      index←v19600 = (index←v19600 + 1);
      if (( (int)index←v19600 <  (int)noName←c88456)) {
         goto lab←L100050;
         };
      lab←L100047: ;
      };
SOURCE(35687, 21)
   return(map←v19456);
   }

static void SetWash←P2700(formal←c0972, event←v34576)
   word formal←c0972;
   word event←v34576;
   {
   W12 var←c93544;
   /* declaration of ggData←v34548 skipped */ 
   register ptr gf←c93576 =  (ptr) &globalframe;
   /* declaration of var←c88520 skipped */ 
   /* declaration of newSelectList←v19744 skipped */ 
   /* declaration of ptr←v19772 skipped */ 
   /* declaration of currentEvent←v19800 skipped */ 
   /* declaration of toAtom←v19828 skipped */ 
   /* declaration of wash←v19856 skipped */ 
   word scene←v19884;
   (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ) = formal←c0972;
   /* SetWash: */ 
SOURCE(37529, 2078)
   {
      word tmpAddr612;
      tmpAddr612 = (word) (( (ptr) &var←c93544)+5)/* var←c88520 */ ;
      (*  (ptr) tmpAddr612 ) = ( ((word)  (fPt) SetWashSlice←P6516) );
      (* (( (ptr) tmpAddr612) + 1) ) = 1;
      };
SOURCE(37556, 20)
   (* (( (ptr) &var←c93544)+7)/* newSelectList←v19744 */  ) = 0;
   (* (( (ptr) &var←c93544)+8)/* ptr←v19772 */  ) = 0;
SOURCE(37591, 26)
   (* (( (ptr) &var←c93544)+9)/* currentEvent←v19800 */  ) = 0;
SOURCE(37619, 39)
   (* (( (ptr) &var←c93544)+10)/* toAtom←v19828 */  ) = XR←Narrow((*  (ptr) (* (( (ptr) event←v34576)+1) ) ), (* (( (ptr) gf←c93576)+11)
       ));
SOURCE(37660, 25)
   (* (( (ptr) &var←c93544)+11)/* wash←v19856 */  ) = 0;
SOURCE(37687, 27)
   scene←v19884 = (* (( (ptr) (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ))+11) );
SOURCE(38633, 190)
   {
      word tc613;
      word pd614;
      if (((* (( (ptr) &var←c93544)+10)/* toAtom←v19828 */  ) == (* (( (ptr) gf←c93576)+97) ))) {
         pd614 = (* (( (ptr) (* (( (ptr) gf←c93576)+282)/* var←c82792 */  ))+6) );
         tc613 =  (word) (0 == (word) ( *( (fPt) ((*  (ptr) pd614 ))))((* ((( (ptr) &var←c93544)+4)/* ggData←v34548 */ ) ), pd614)
         );
         }
      else {
         tc613 =  (word) 0;
         };
      if (tc613) {
SOURCE(38704, 111)
         {
            word pd615;
            pd615 = (* (( (ptr) (* (( (ptr) gf←c93576)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd615 ))))((* (( (ptr) (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ))+3) ), 0, (* (( (ptr) gf←c93576)+121)
                ), (* (( (ptr) gf←c93576)+98) ), pd615);
            };
SOURCE(38817, 6)
         return;
         };
      };
SOURCE(38828, 779)
   {
      word pd616;
      pd616 = (* (( (ptr) (* (( (ptr) gf←c93576)+281)/* var←c82760 */  ))+19) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd616 ))))(scene←v19884, 0, pd616))) {
SOURCE(38873, 117)
         {
            word pd617;
            pd617 = (* (( (ptr) (* (( (ptr) gf←c93576)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd617 ))))((* (( (ptr) (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ))+3) ), 0, (* (( (ptr) gf←c93576)+121)
                ), (* (( (ptr) gf←c93576)+99) ), pd617);
            };
         }
      else {
SOURCE(38992, 57)
         {
            word pd618;
            pd618 = (* (( (ptr) (* (( (ptr) gf←c93576)+284)/* var←c82856 */  ))+4) );
            (* (( (ptr) &var←c93544)+9)/* currentEvent←v19800 */  ) = (word) ( *( (fPt) ((*  (ptr) pd618 ))))((* (( (ptr) gf←c93576)+100)
                ), (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ), pd618);
            };
SOURCE(39051, 49)
         {
            W2 var←c88552;
            {
               word pd619;
               pd619 = (* (( (ptr) (* (( (ptr) gf←c93576)+309)/* var←c87848 */  ))+20) );
               (void) ( *( (fPt) ((*  (ptr) pd619 ))))((word) (&var←c88552), pd619);
               };
            (* (( (ptr) &var←c93544)+8)/* ptr←v19772 */  ) = var←c88552.f1;
            (* (( (ptr) &var←c93544)+7)/* newSelectList←v19744 */  ) = var←c88552.f0;
            };
SOURCE(39102, 67)
         {
            word var←c88584;
            word pd620;
            pd620 = (* (( (ptr) (* (( (ptr) gf←c93576)+285)/* var←c82952 */  ))+32) );
            var←c88584 = (word) ( *( (fPt) ((*  (ptr) pd620 ))))(scene←v19884, 0, (word) (( (bPt) &var←c93544)+20)/* var←c88520 */ , 0, 0, pd620)
            ;
            };
SOURCE(39171, 131)
         {
            register word list←v20144;
            list←v20144 = (* (( (ptr) &var←c93544)+7)/* newSelectList←v19744 */  );
            lab←L100054: ;
            if ((list←v20144 != 0)) {
               }
            else {
               goto lab←L100051;
               };
SOURCE(39242, 60)
            {
               word pd621;
               pd621 = (* (( (ptr) (* (( (ptr) gf←c93576)+281)/* var←c82760 */  ))+5) );
               (void) ( *( (fPt) ((*  (ptr) pd621 ))))((*  (ptr) list←v20144 ), (* (( (ptr) (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ))+11)
                   ), 0, pd621);
               };
            list←v20144 = (* (( (ptr) list←v20144)+1) );
            goto lab←L100054;
            lab←L100051: ;
            };
SOURCE(39313, 29)
         {
            word pd622;
            pd622 = (* (( (ptr) (* (( (ptr) gf←c93576)+284)/* var←c82856 */  ))+6) );
            (void) ( *( (fPt) ((*  (ptr) pd622 ))))((* ((( (ptr) &var←c93544)+4)/* ggData←v34548 */ ) ), pd622);
            };
SOURCE(39344, 122)
         {
            word var←c88616;
            {
               word pd623;
               pd623 = (* (( (ptr) (* (( (ptr) gf←c93576)+300)/* var←c85480 */  ))+9) );
               var←c88616 = (word) ( *( (fPt) ((*  (ptr) pd623 ))))((* ((( (ptr) &var←c93544)+10)/* toAtom←v19828 */ ) ), pd623);
               };
            {
               W2 var←c88648;
               var←c88648.f0 = 11;
               var←c88648.f1 = var←c88616;
               {
                  word pd624;
                  pd624 = (* (( (ptr) (* (( (ptr) gf←c93576)+287)/* var←c83016 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd624 ))))((* (( (ptr) (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ))+3) ), 0, (* (( (ptr) gf←c93576)+46)
                      ), (* (( (ptr) gf←c93576)+101) ), var←c88648, pd624);
                  };
               };
            };
SOURCE(39468, 139)
         {
            word pd625;
            pd625 = (* (( (ptr) (* (( (ptr) gf←c93576)+290)/* var←c83368 */  ))+4) );
            (void) ( *( (fPt) ((*  (ptr) pd625 ))))((* (( (ptr) gf←c93576)+73) ), (* (( (ptr) &var←c93544)+4)/* ggData←v34548 */  ), 4, 1, 0, 0, pd625)
            ;
            };
         };
      };
   }

static word SetWashSlice←P6516(sliceD←v20072, formal←c93640)
   word sliceD←v20072;
   word formal←c93640;
   {
   register ptr gf←c93608 =  (ptr) &globalframe;
   word done←v20116;
   word color←v20272 = 0;
   word success←v20300 = 0;
   formal←c93640 = (formal←c93640 - 20);
   /* SetWashSlice: */ 
SOURCE(37716, 911)
SOURCE(37716, 911)
   done←v20116 = 0;
SOURCE(37838, 70)
   {
      W2 var←c88680;
      {
         word pd626;
         pd626 = (* (( (ptr) (* (( (ptr) gf←c93608)+283)/* var←c82824 */  ))+62) );
         (void) ( *( (fPt) ((*  (ptr) pd626 ))))((word) &var←c88680, (*  (ptr) sliceD←v20072 ), (* (( (ptr) sliceD←v20072)+1) ), pd626)
         ;
         };
      success←v20300 = var←c88680.f1;
      color←v20272 = var←c88680.f0;
      };
SOURCE(37910, 717)
   if (((0 == success←v20300) || (color←v20272 == 0)) ||  ( (color←v20272 == 0) ?  ! 1 :  ! ((*  (ptr) color←v20272 ) == 0) ) ) {
SOURCE(37986, 130)
      {
         word pd627;
         pd627 = (* (( (ptr) (* (( (ptr) gf←c93608)+287)/* var←c83016 */  ))+12) );
         (void) ( *( (fPt) ((*  (ptr) pd627 ))))((* (( (ptr) (* (( (ptr) formal←c93640)+4) ))+3) ), 0, (* (( (ptr) gf←c93608)+121)
             ), (* (( (ptr) gf←c93608)+102) ), pd627);
         };
      }
   else {
SOURCE(38116, 511)
      {
         word box←v20344;
         word regionWidth←v20372;
         word success←v20400 = 0;
SOURCE(38118, 52)
         {
            word pd628;
            pd628 = (* (( (ptr) (* (( (ptr) gf←c93608)+283)/* var←c82824 */  ))+9) );
            box←v20344 = (word) ( *( (fPt) ((*  (ptr) pd628 ))))((*  (ptr) sliceD←v20072 ), 0, pd628);
            };
SOURCE(38172, 40)
         {
            float tf629;
            word x630;
            word x631;
            float tf632;
            regionWidth←v20372 = (
               tf632 = FABS(((
                     x630 = (* (( (ptr) box←v20344)+2) ),  *(float*)&x630
                     ) - (
                     x631 = (*  (ptr) box←v20344 ),  *(float*)&x631
                     )), tf629),  *(word*)&tf632
               );
            };
SOURCE(38237, 89)
         {
            W2 var←c88776;
            {
               word var←c88712;
               if ((color←v20272 == 0)) {
                  goto lab←L100055;
                  };
               if (((*  (ptr) color←v20272 ) == 0)) {
                  goto lab←L100055;
                  };
               (void) XR←RaiseError(XR←NarrowFault, 0);
               lab←L100055: ;
               var←c88712 = color←v20272;
               {
                  W2 var←c0645;
                  {
                     W2 var←c88744;
                     var←c88744.f0 = (*  (ptr) box←v20344 );
                     var←c88744.f1 = (* (( (ptr) box←v20344)+1) );
                     (void) CreateColorWash←P2640((word) &var←c0645, var←c88712, regionWidth←v20372, (* (( (ptr) formal←c93640)+10) ), var←c88744)
                     ;
                     };
                  var←c88776 = var←c0645;
                  };
               };
            (* (( (ptr) formal←c93640)+11) ) = var←c88776.f1;
            success←v20400 = var←c88776.f0;
            };
SOURCE(38328, 299)
         if ((0 != success←v20400)) {
SOURCE(38346, 82)
            {
               word pd633;
               pd633 = (* (( (ptr) (* (( (ptr) gf←c93608)+283)/* var←c82824 */  ))+61) );
               (void) ( *( (fPt) ((*  (ptr) pd633 ))))((*  (ptr) sliceD←v20072 ), (* (( (ptr) sliceD←v20072)+1) ), (* (( (ptr) formal←c93640)+11)
                   ), (* (( (ptr) gf←c93608)+104) ), (* (( (ptr) formal←c93640)+9) ), pd633);
               };
SOURCE(38430, 75)
            {
               W2 var←c88808;
               {
                  word pd634;
                  pd634 = (* (( (ptr) (* (( (ptr) gf←c93608)+309)/* var←c87848 */  ))+21) );
                  (void) ( *( (fPt) ((*  (ptr) pd634 ))))((word) &var←c88808, (*  (ptr) sliceD←v20072 ), (* (( (ptr) formal←c93640)+7) ), (* (
                        ( (ptr) formal←c93640)+8) ), pd634);
                  };
               (* (( (ptr) formal←c93640)+8) ) = var←c88808.f1;
               (* (( (ptr) formal←c93640)+7) ) = var←c88808.f0;
               };
            }
         else {
SOURCE(38514, 113)
            {
               word pd635;
               pd635 = (* (( (ptr) (* (( (ptr) gf←c93608)+287)/* var←c83016 */  ))+12) );
               (void) ( *( (fPt) ((*  (ptr) pd635 ))))((* (( (ptr) (* (( (ptr) formal←c93640)+4) ))+3) ), 0, (* (( (ptr) gf←c93608)+121)
                   ), (* (( (ptr) gf←c93608)+105) ), pd635);
               };
            };
         };
      };
SOURCE(37716, 911)
   return(done←v20116);
   }

static void UpdateCaretPosition←P2760(ggData←v10972, point←v11000, normal←v11028)
   word ggData←v10972;
   W2 point←v11000;
   W2 normal←v11028;
   {
   register ptr gf←c93672 =  (ptr) &globalframe;
   /* UpdateCaretPosition: */ 
SOURCE(39616, 454)
SOURCE(39693, 90)
   {
      word pd636;
      pd636 = (* (( (ptr) (* (( (ptr) gf←c93672)+289)/* var←c83304 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd636 ))))(ggData←v10972, 0, 1, 0, 0, 0
         , 0, 0, 1, 0, pd636);
      };
SOURCE(39785, 54)
   {
      word pd637;
      pd637 = (* (( (ptr) (* (( (ptr) gf←c93672)+299)/* var←c85416 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd637 ))))((* (( (ptr) ggData←v10972)+13) ), point←v11000, normal←v11028, 0, pd637);
      };
SOURCE(39841, 28)
   (void) ShowCaretValues←P3000(ggData←v10972, 0);
SOURCE(39871, 28)
   {
      word pd638;
      pd638 = (* (( (ptr) (* (( (ptr) gf←c93672)+290)/* var←c83368 */  ))+6) );
      (void) ( *( (fPt) ((*  (ptr) pd638 ))))(ggData←v10972, pd638);
      };
SOURCE(39901, 32)
   {
      word pd639;
      pd639 = (* (( (ptr) (* (( (ptr) gf←c93672)+299)/* var←c85416 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd639 ))))((* (( (ptr) ggData←v10972)+13) ), 0, pd639);
      };
SOURCE(39935, 135)
   {
      word pd640;
      pd640 = (* (( (ptr) (* (( (ptr) gf←c93672)+290)/* var←c83368 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd640 ))))((* (( (ptr) gf←c93672)+106) ), ggData←v10972, 4, 0, 0, 1, pd640);
      };
   }

static void CaretPositionFromSelection←P2820(formal←c0973, formal←c0974)
   word formal←c0973;
   word formal←c0974;
   {
   W6 var←c93704;
   /* declaration of ggData←v34636 skipped */ 
   /* declaration of event←v34664 skipped */ 
   register ptr gf←c93736 =  (ptr) &globalframe;
   var←c93704.f4/* ggData←v34636 */  = formal←c0973;
   var←c93704.f5/* event←v34664 */  = formal←c0974;
   /* CaretPositionFromSelection: */ 
SOURCE(40076, 567)
SOURCE(40120, 523)
SOURCE(40122, 323)
   {
      word var←c05;
      {
         word var←c0890;
         var←c0890 = (word) &var←c93704;
         var←c05 = (word) XR←Enable(( ((word)  (fPt) NoName←Q7800) ), ( ((word)  (fPt) NoName←Q7860) ), var←c0890);
         };
      if ((var←c05 == 4)) {
         goto lab←L100056;
         };
      };
   goto lab←L100060;
   lab←L100056: ;
SOURCE(40496, 144)
   {
      word pd641;
      pd641 = (* (( (ptr) (* (( (ptr) gf←c93736)+287)/* var←c83016 */  ))+12) );
      (void) ( *( (fPt) ((*  (ptr) pd641 ))))((* (( (ptr) var←c93704.f4/* ggData←v34636 */ )+3) ), 0, (* (( (ptr) gf←c93736)+121)
          ), (* (( (ptr) gf←c93736)+107) ), pd641);
      };
   lab←L100060: ;
   }

static word NoName←Q7800(formal←c0865)
   word formal←c0865;
   {
   register ptr gf←c0864 =  (ptr) &globalframe;
SOURCE(40170, 12)
   {
      W2 point←v20444;
      word rope←v20472;
      W2 arg←v20500;
SOURCE(40184, 42)
      rope←v20472 = XR←Narrow((*  (ptr) (* (( (ptr) (* (( (ptr) formal←c0865)+5) ))+1) ) ), (* (( (ptr) gf←c0864)+13) ));
      if ((rope←v20472 == 0)) {
         goto lab←L100059;
         };
      if (( (unsigned) (*(int*)rope←v20472<0) == 0)) {
         goto lab←L100059;
         };
      (void) XR←RaiseError(XR←NarrowFault, 0);
      lab←L100059: ;
SOURCE(40228, 46)
      {
         word var←c88904;
         {
            word pd642;
            pd642 = (* (( (ptr) (* (( (ptr) gf←c0864)+319)/* var←c88936 */  ))+33) );
            var←c88904 = (word) ( *( (fPt) ((*  (ptr) pd642 ))))(rope←v20472, 0, pd642);
            };
         {
            word pd643;
            pd643 = (* (( (ptr) (* (( (ptr) gf←c0864)+318)/* var←c88840 */  ))+19) );
            (void) ( *( (fPt) ((*  (ptr) pd643 ))))((word) &arg←v20500, var←c88904, pd643);
            };
         };
SOURCE(40276, 51)
      {
         word x644;
         word x645;
         word x646;
         word x647;
         if (((
            x644 = arg←v20500.f0,  *(float*)&x644
            ) > (
            x645 = (*  (ptr) &fc534 ),  *(float*)&x645
            )) || ((
            x646 = arg←v20500.f1,  *(float*)&x646
            ) > (
            x647 = (*  (ptr) &fc534 ),  *(float*)&x647
            ))) {
SOURCE(40327, 14)
            return(4);
            };
         };
SOURCE(40343, 58)
      {
         word var←c88968;
         {
            word pd648;
            pd648 = (* (( (ptr) (* (( (ptr) gf←c0864)+282)/* var←c82792 */  ))+98) );
            var←c88968 = (word) ( *( (fPt) ((*  (ptr) pd648 ))))((* ((( (ptr) formal←c0865)+4)) ), pd648);
            };
         {
            word pd649;
            pd649 = (* (( (ptr) (* (( (ptr) gf←c0864)+291)/* var←c83848 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd649 ))))((word) &point←v20444, arg←v20500, var←c88968, pd649);
            };
         };
SOURCE(40403, 42)
      {
         W2 var←c89000;
         var←c89000.f0 = (*  (ptr) &fc316 );
         var←c89000.f1 = (*  (ptr) &fc650 );
         (void) UpdateCaretPosition←P2760((* (( (ptr) formal←c0865)+4) ), point←v20444, var←c89000);
         };
      };
   return(0);
   }

static void CaretAngleFromSelection←P2880(ggData←v34724, event←v34752)
   word ggData←v34724;
   word event←v34752;
   {
   register ptr gf←c93768 =  (ptr) &globalframe;
   /* CaretAngleFromSelection: */ 
SOURCE(40647, 555)
SOURCE(40690, 512)
   {
      word pd651;
      pd651 = (* (( (ptr) (* (( (ptr) gf←c93768)+299)/* var←c85416 */  ))+7) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd651 ))))((* ((( (ptr) ggData←v34724)+13)) ), pd651))) {
SOURCE(40727, 354)
         {
            word real←v20544;
SOURCE(40729, 48)
            real←v20544 = (*  (ptr) XR←Narrow((*  (ptr) (* (( (ptr) event←v34752)+1) ) ), (* (( (ptr) gf←c93768)+25) )) );
SOURCE(40779, 297)
            {
               word x652;
               word x653;
               if (((
                  x652 = real←v20544,  *(float*)&x652
                  ) > (
                  x653 = (*  (ptr) &fc534 ),  *(float*)&x653
                  ))) {
SOURCE(40806, 133)
                  {
                     word pd654;
                     pd654 = (* (( (ptr) (* (( (ptr) gf←c93768)+287)/* var←c83016 */  ))+12) );
                     (void) ( *( (fPt) ((*  (ptr) pd654 ))))((* (( (ptr) ggData←v34724)+3) ), 0, (* (( (ptr) gf←c93768)+121) ), (* (( (ptr) gf←c93768)+108)
                         ), pd654);
                     };
                  }
               else {
SOURCE(40939, 139)
                  {
                     W2 normal←v20600;
SOURCE(40941, 66)
                     {
                        W2 var←c89032;
                        {
                           word pd655;
                           pd655 = (* (( (ptr) (* (( (ptr) gf←c93768)+291)/* var←c83848 */  ))+4) );
                           (void) ( *( (fPt) ((*  (ptr) pd655 ))))((word) &var←c89032, real←v20544, pd655);
                           };
                        {
                           W2 var←c0667;
                           {
/*1*/   word pd656;
/*1*/   pd656 = (* (( (ptr) (* (( (ptr) gf←c93768)+291)/* var←c83848 */  ))+14) );
/*1*/   (void) ( *( (fPt) ((*  (ptr) pd656 ))))((word) &var←c0667, var←c89032, pd656);
/*1*/   };
                           normal←v20600 = var←c0667;
                           };
                        };
SOURCE(41009, 67)
                     {
                        W2 var←c89064;
                        {
                           word pd657;
                           pd657 = (* (( (ptr) (* (( (ptr) gf←c93768)+299)/* var←c85416 */  ))+15) );
                           (void) ( *( (fPt) ((*  (ptr) pd657 ))))((word) &var←c89064, (* (( (ptr) ggData←v34724)+13) ), pd657);
                           };
                        (void) UpdateCaretPosition←P2760(ggData←v34724, var←c89064, normal←v20600);
                        };
                     };
                  };
               };
            };
         }
      else {
SOURCE(41088, 114)
         {
            word pd658;
            pd658 = (* (( (ptr) (* (( (ptr) gf←c93768)+287)/* var←c83016 */  ))+12) );
            (void) ( *( (fPt) ((*  (ptr) pd658 ))))((* (( (ptr) ggData←v34724)+3) ), 0, (* (( (ptr) gf←c93768)+121) ), (* (( (ptr) gf←c93768)+109)
                ), pd658);
            };
         };
      };
   }

static void ShowValuesOfCaret←P2940(ggData←v11088, caret←v11116, name←v11144)
   word ggData←v11088;
   word caret←v11116;
   word name←v11144;
   {
   register ptr gf←c93800 =  (ptr) &globalframe;
   /* ShowValuesOfCaret: */ 
SOURCE(41208, 575)
SOURCE(41284, 499)
   {
      word pd659;
      pd659 = (* (( (ptr) (* (( (ptr) gf←c93800)+299)/* var←c85416 */  ))+7) );
      if ((0 != (word) ( *( (fPt) ((*  (ptr) pd659 ))))(caret←v11116, pd659))) {
SOURCE(41314, 361)
         {
            word scale←v20644;
            W2 point←v20672;
            W2 normal←v20700;
            word angle←v20728;
SOURCE(41316, 42)
            {
               word pd660;
               pd660 = (* (( (ptr) (* (( (ptr) gf←c93800)+282)/* var←c82792 */  ))+98) );
               scale←v20644 = (word) ( *( (fPt) ((*  (ptr) pd660 ))))(ggData←v11088, pd660);
               };
SOURCE(41360, 38)
            {
               word pd661;
               pd661 = (* (( (ptr) (* (( (ptr) gf←c93800)+299)/* var←c85416 */  ))+15) );
               (void) ( *( (fPt) ((*  (ptr) pd661 ))))((word) &point←v20672, caret←v11116, pd661);
               };
SOURCE(41400, 41)
            {
               word pd662;
               pd662 = (* (( (ptr) (* (( (ptr) gf←c93800)+299)/* var←c85416 */  ))+16) );
               (void) ( *( (fPt) ((*  (ptr) pd662 ))))((word) &normal←v20700, caret←v11116, pd662);
               };
SOURCE(41443, 65)
            {
               W2 var←c89096;
               {
                  word pd663;
                  pd663 = (* (( (ptr) (* (( (ptr) gf←c93800)+291)/* var←c83848 */  ))+14) );
                  (void) ( *( (fPt) ((*  (ptr) pd663 ))))((word) &var←c89096, normal←v20700, pd663);
                  };
               {
                  word pd664;
                  pd664 = (* (( (ptr) (* (( (ptr) gf←c93800)+291)/* var←c83848 */  ))+6) );
                  angle←v20728 = (word) ( *( (fPt) ((*  (ptr) pd664 ))))(var←c89096, pd664);
                  };
               };
SOURCE(41510, 163)
            {
               word var←c89128;
               {
                  word var←c89160;
                  word var←c89192;
                  var←c89160 = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
                  var←c89192 = var←c89160;
                  (*  (ptr) var←c89192 ) = 11;
                  (* (( (ptr) var←c89192)+1) ) = name←v11144;
                  (* (( (ptr) var←c89192)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
                  var←c89192 = (* (( (ptr) var←c89192)+2) );
                  (*  (ptr) var←c89192 ) = 8;
                  {
                     word x665;
                     word x666;
                     *(float*)(( (ptr) var←c89192)+1) = (
                        x665 = point←v20672.f0,  *(float*)&x665
                        ) / (
                        x666 = scale←v20644,  *(float*)&x666
                        );
                     };
                  (* (( (ptr) var←c89192)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
                  var←c89192 = (* (( (ptr) var←c89192)+2) );
                  (*  (ptr) var←c89192 ) = 8;
                  {
                     word x667;
                     word x668;
                     *(float*)(( (ptr) var←c89192)+1) = (
                        x667 = point←v20672.f1,  *(float*)&x667
                        ) / (
                        x668 = scale←v20644,  *(float*)&x668
                        );
                     };
                  (* (( (ptr) var←c89192)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
                  var←c89192 = (* (( (ptr) var←c89192)+2) );
                  (*  (ptr) var←c89192 ) = 8;
                  (* (( (ptr) var←c89192)+1) ) = angle←v20728;
                  var←c89128 = var←c89160;
                  };
               {
                  word pd669;
                  pd669 = (* (( (ptr) (* (( (ptr) gf←c93800)+287)/* var←c83016 */  ))+13) );
                  (void) ( *( (fPt) ((*  (ptr) pd669 ))))((* (( (ptr) ggData←v11088)+3) ), 0, (* (( (ptr) gf←c93800)+113) ), (* (( (ptr) gf←c93800)+110)
                      ), var←c89128, pd669);
                  };
               };
            };
         }
      else {
SOURCE(41684, 99)
         {
            word var←c89224;
            {
               word var←c89256;
               word var←c89288;
               var←c89256 = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
               var←c89288 = var←c89256;
               (*  (ptr) var←c89288 ) = 11;
               (* (( (ptr) var←c89288)+1) ) = name←v11144;
               (* (( (ptr) var←c89288)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93800)+19) ));
               var←c89288 = (* (( (ptr) var←c89288)+2) );
               (*  (ptr) var←c89288 ) = 11;
               (* (( (ptr) var←c89288)+1) ) = name←v11144;
               var←c89224 = var←c89256;
               };
            {
               word pd670;
               pd670 = (* (( (ptr) (* (( (ptr) gf←c93800)+287)/* var←c83016 */  ))+13) );
               (void) ( *( (fPt) ((*  (ptr) pd670 ))))((* (( (ptr) ggData←v11088)+3) ), 0, (* (( (ptr) gf←c93800)+113) ), (* (( (ptr) gf←c93800)+115)
                   ), var←c89224, pd670);
               };
            };
         };
      };
   }

static void ShowCaretValues←P3000(ggData←v34812, event←v34840)
   word ggData←v34812;
   word event←v34840;
   {
   register ptr gf←c93832 =  (ptr) &globalframe;
   /* ShowCaretValues: */ 
SOURCE(41792, 83)
SOURCE(41827, 48)
   (void) ShowValuesOfCaret←P2940(ggData←v34812, (* (( (ptr) ggData←v34812)+13) ), (* (( (ptr) gf←c93832)+116) ));
   }

static void ShowAnchorValues←P3060(ggData←v34900, event←v34928)
   word ggData←v34900;
   word event←v34928;
   {
   register ptr gf←c93864 =  (ptr) &globalframe;
   /* ShowAnchorValues: */ 
SOURCE(41881, 86)
SOURCE(41917, 50)
   (void) ShowValuesOfCaret←P2940(ggData←v34900, (* (( (ptr) ggData←v34900)+14) ), (* (( (ptr) gf←c93864)+117) ));
   }

static void GrabInputFocus←P3120(ggData←v34988, event←v35016)
   word ggData←v34988;
   word event←v35016;
   {
   register ptr gf←c93896 =  (ptr) &globalframe;
   /* GrabInputFocus: */ 
SOURCE(41973, 64)
SOURCE(42007, 30)
   {
      word pd671;
      pd671 = (* (( (ptr) (* (( (ptr) gf←c93896)+282)/* var←c82792 */  ))+113) );
      (void) ( *( (fPt) ((*  (ptr) pd671 ))))(ggData←v34988, pd671);
      };
   }

static void SceneState←P3180(ggData←v35076, event←v35104)
   word ggData←v35076;
   word event←v35104;
   {
   W12 var←c93928;
   register ptr gf←c93960 =  (ptr) &globalframe;
   /* declaration of var←c89320 skipped */ 
   /* declaration of var←c89352 skipped */ 
   word scene←v20772;
   /* declaration of objects←v20856 skipped */ 
   /* declaration of trashedObjects←v20884 skipped */ 
   /* declaration of trashedSubObjects←v20912 skipped */ 
   /* declaration of leafCount←v20940 skipped */ 
   /* SceneState: */ 
SOURCE(42043, 907)
   {
      word tmpAddr672;
      tmpAddr672 = (word) (( (ptr) &var←c93928)+4)/* var←c89320 */ ;
      (*  (ptr) tmpAddr672 ) = ( ((word)  (fPt) AddEmUp←P6924) );
      (* (( (ptr) tmpAddr672) + 1) ) = 1;
      };
   {
      word tmpAddr673;
      tmpAddr673 = (word) (( (ptr) &var←c93928)+6)/* var←c89352 */ ;
      (*  (ptr) tmpAddr673 ) = ( ((word)  (fPt) DescendASlice←P6864) );
      (* (( (ptr) tmpAddr673) + 1) ) = 1;
      };
SOURCE(42073, 27)
   scene←v20772 = (* (( (ptr) ggData←v35076)+11) );
SOURCE(42554, 62)
   (* (( (ptr) &var←c93928)+8)/* objects←v20856 */  ) = 0;
   (* (( (ptr) &var←c93928)+9)/* trashedObjects←v20884 */  ) = 0;
   (* (( (ptr) &var←c93928)+10)/* trashedSubObjects←v20912 */  ) = 0;
   (* (( (ptr) &var←c93928)+11)/* leafCount←v20940 */  ) = 0;
SOURCE(42618, 52)
   {
      word var←c89384;
      word pd674;
      pd674 = (* (( (ptr) (* (( (ptr) gf←c93960)+285)/* var←c82952 */  ))+31) );
      var←c89384 = (word) ( *( (fPt) ((*  (ptr) pd674 ))))(scene←v20772, 0, (word) (( (bPt) &var←c93928)+24)/* var←c89352 */ , 0, pd674)
      ;
      };
SOURCE(42672, 45)
   {
      word var←c89416;
      word pd675;
      pd675 = (* (( (ptr) (* (( (ptr) gf←c93960)+285)/* var←c82952 */  ))+31) );
      var←c89416 = (word) ( *( (fPt) ((*  (ptr) pd675 ))))(scene←v20772, 1, (word) (( (bPt) &var←c93928)+16)/* var←c89320 */ , 0, pd675)
      ;
      };
SOURCE(42719, 231)
   {
      word var←c89448;
      {
         word var←c89480;
         word var←c89512;
         var←c89480 = XR←NewObject(12, (* (( (ptr) gf←c93960)+19) ));
         var←c89512 = var←c89480;
         (*  (ptr) var←c89512 ) = 5;
         (* (( (ptr) var←c89512)+1) ) = (* (( (ptr) &var←c93928)+8)/* objects←v20856 */  );
         (* (( (ptr) var←c89512)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93960)+19) ));
         var←c89512 = (* (( (ptr) var←c89512)+2) );
         (*  (ptr) var←c89512 ) = 5;
         (* (( (ptr) var←c89512)+1) ) = (* (( (ptr) &var←c93928)+9)/* trashedObjects←v20884 */  );
         (* (( (ptr) var←c89512)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93960)+19) ));
         var←c89512 = (* (( (ptr) var←c89512)+2) );
         (*  (ptr) var←c89512 ) = 5;
         (* (( (ptr) var←c89512)+1) ) = (* (( (ptr) &var←c93928)+10)/* trashedSubObjects←v20912 */  );
         (* (( (ptr) var←c89512)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c93960)+19) ));
         var←c89512 = (* (( (ptr) var←c89512)+2) );
         (*  (ptr) var←c89512 ) = 5;
         (* (( (ptr) var←c89512)+1) ) = (* (( (ptr) &var←c93928)+11)/* leafCount←v20940 */  );
         var←c89448 = var←c89480;
         };
      {
         word pd676;
         pd676 = (* (( (ptr) (* (( (ptr) gf←c93960)+287)/* var←c83016 */  ))+13) );
         (void) ( *( (fPt) ((*  (ptr) pd676 ))))((* (( (ptr) ggData←v35076)+3) ), 0, (* (( (ptr) gf←c93960)+113) ), (* (( (ptr) gf←c93960)+118)
             ), var←c89448, pd676);
         };
      };
   }

static word DescendASlice←P6864(slice←v21016, formal←c94056)
   word slice←v21016;
   word formal←c94056;
   {
   W6 var←c93992;
   register ptr gf←c94024 =  (ptr) &globalframe;
   word done←v21060;
   /* declaration of var←c89544 skipped */ 
   formal←c94056 = (formal←c94056 - 24);
   var←c93992.f0 = formal←c94056;
   /* DescendASlice: */ 
SOURCE(42102, 351)
   {
      word tmpAddr677;
      tmpAddr677 = (word) (( (ptr) &var←c93992)+4)/* var←c89544 */ ;
      (*  (ptr) tmpAddr677 ) = ( ((word)  (fPt) CheckTrashed←P7032) );
      (* (( (ptr) tmpAddr677) + 1) ) = 1;
      };
SOURCE(42102, 351)
   done←v21060 = 0;
SOURCE(42170, 19)
   (* (( (ptr) formal←c94056)+8) ) = ((* (( (ptr) formal←c94056)+8) ) + 1);
SOURCE(42191, 262)
   if (((*  (ptr) slice←v21016 ) == 0)) {
SOURCE(42215, 39)
      (* (( (ptr) formal←c94056)+9) ) = ((* (( (ptr) formal←c94056)+9) ) + 1);
      }
   else {
SOURCE(42254, 201)
SOURCE(42399, 54)
      {
         word var←c89576;
         word pd678;
         pd678 = (* (( (ptr) (* (( (ptr) gf←c94024)+288)/* var←c83176 */  ))+73) );
         var←c89576 = (word) ( *( (fPt) ((*  (ptr) pd678 ))))(slice←v21016, 0, (word) (( (bPt) &var←c93992)+16)/* var←c89544 */ , 0, pd678)
         ;
         };
      };
SOURCE(42102, 351)
   return(done←v21060);
   }

static word CheckTrashed←P7032(nextChild←v21268, formal←c94088)
   word nextChild←v21268;
   word formal←c94088;
   {
   word done←v21312;
   formal←c94088 = (formal←c94088 - 16);
   /* CheckTrashed: */ 
SOURCE(42256, 20)
SOURCE(42256, 20)
   done←v21312 = 0;
SOURCE(42327, 67)
   if (((*  (ptr) nextChild←v21268 ) == 0)) {
SOURCE(42355, 39)
      (* (( (ptr) (*  (ptr) formal←c94088 ))+10) ) = ((* (( (ptr) (*  (ptr) formal←c94088 ))+10) ) + 1);
      };
SOURCE(42256, 20)
   return(done←v21312);
   }

static word AddEmUp←P6924(slice←v21120, formal←c94120)
   word slice←v21120;
   word formal←c94120;
   {
   word done←v21164;
   formal←c94120 = (formal←c94120 - 16);
   /* AddEmUp: */ 
SOURCE(42461, 87)
SOURCE(42461, 87)
   done←v21164 = 0;
SOURCE(42523, 25)
   (* (( (ptr) formal←c94120)+11) ) = ((* (( (ptr) formal←c94120)+11) ) + 1);
SOURCE(42461, 87)
   return(done←v21164);
   }

static void SceneBagState←P3240(ggData←v35164, event←v35192)
   word ggData←v35164;
   word event←v35192;
   {
   W13 var←c94152;
   register ptr gf←c94184 =  (ptr) &globalframe;
   /* declaration of var←c89608 skipped */ 
   /* declaration of var←c89640 skipped */ 
   /* declaration of objects←v21396 skipped */ 
   /* declaration of obsoleteDs←v21424 skipped */ 
   /* declaration of obsoleteSeqs←v21452 skipped */ 
   /* declaration of trashedObjects←v21480 skipped */ 
   /* declaration of trashedSubObjects←v21508 skipped */ 
   /* SceneBagState: */ 
SOURCE(42957, 2018)
   {
      word tmpAddr679;
      tmpAddr679 = (word) (( (ptr) &var←c94152)+4)/* var←c89608 */ ;
      (*  (ptr) tmpAddr679 ) = ( ((word)  (fPt) DescendAFeature←P7152) );
      (* (( (ptr) tmpAddr679) + 1) ) = 1;
      };
   {
      word tmpAddr680;
      tmpAddr680 = (word) (( (ptr) &var←c94152)+6)/* var←c89640 */ ;
      (*  (ptr) tmpAddr680 ) = ( ((word)  (fPt) IsObsolete←P7092) );
      (* (( (ptr) tmpAddr680) + 1) ) = 1;
      };
SOURCE(44527, 77)
   (* (( (ptr) &var←c94152)+8)/* objects←v21396 */  ) = 0;
   (* (( (ptr) &var←c94152)+9)/* obsoleteDs←v21424 */  ) = 0;
   (* (( (ptr) &var←c94152)+10)/* obsoleteSeqs←v21452 */  ) = 0;
   (* (( (ptr) &var←c94152)+11)/* trashedObjects←v21480 */  ) = 0;
   (* (( (ptr) &var←c94152)+12)/* trashedSubObjects←v21508 */  ) = 0;
SOURCE(44606, 67)
   {
      word pd681;
      pd681 = (* (( (ptr) (* (( (ptr) gf←c94184)+320)/* var←c89672 */  ))+9) );
      (void) ( *( (fPt) ((*  (ptr) pd681 ))))((* (( (ptr) (* (( (ptr) ggData←v35164)+18) ))+8) ), (word) (( (bPt) &var←c94152)+16)
         /* var←c89608 */ , pd681);
      };
SOURCE(44675, 300)
   {
      word var←c89704;
      {
         word var←c89736;
         word var←c89768;
         var←c89736 = XR←NewObject(12, (* (( (ptr) gf←c94184)+19) ));
         var←c89768 = var←c89736;
         (*  (ptr) var←c89768 ) = 5;
         (* (( (ptr) var←c89768)+1) ) = (* (( (ptr) &var←c94152)+8)/* objects←v21396 */  );
         (* (( (ptr) var←c89768)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c94184)+19) ));
         var←c89768 = (* (( (ptr) var←c89768)+2) );
         (*  (ptr) var←c89768 ) = 5;
         (* (( (ptr) var←c89768)+1) ) = (* (( (ptr) &var←c94152)+9)/* obsoleteDs←v21424 */  );
         (* (( (ptr) var←c89768)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c94184)+19) ));
         var←c89768 = (* (( (ptr) var←c89768)+2) );
         (*  (ptr) var←c89768 ) = 5;
         (* (( (ptr) var←c89768)+1) ) = (* (( (ptr) &var←c94152)+10)/* obsoleteSeqs←v21452 */  );
         (* (( (ptr) var←c89768)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c94184)+19) ));
         var←c89768 = (* (( (ptr) var←c89768)+2) );
         (*  (ptr) var←c89768 ) = 5;
         (* (( (ptr) var←c89768)+1) ) = (* (( (ptr) &var←c94152)+11)/* trashedObjects←v21480 */  );
         (* (( (ptr) var←c89768)+2) ) = XR←NewObject(12, (* (( (ptr) gf←c94184)+19) ));
         var←c89768 = (* (( (ptr) var←c89768)+2) );
         (*  (ptr) var←c89768 ) = 5;
         (* (( (ptr) var←c89768)+1) ) = (* (( (ptr) &var←c94152)+12)/* trashedSubObjects←v21508 */  );
         var←c89704 = var←c89736;
         };
      {
         word pd682;
         pd682 = (* (( (ptr) (* (( (ptr) gf←c94184)+287)/* var←c83016 */  ))+13) );
         (void) ( *( (fPt) ((*  (ptr) pd682 ))))((* (( (ptr) ggData←v35164)+3) ), 0, (* (( (ptr) gf←c94184)+113) ), (* (( (ptr) gf←c94184)+120)
             ), var←c89704, pd682);
         };
      };
   }

static word IsObsolete←P7092(seq←v21584, formal←c94248)
   word seq←v21584;
   word formal←c94248;
   {
   register ptr gf←c94216 =  (ptr) &globalframe;
   word var←c21628;
   word j←v21760 = 0;
   word trajData←v21788;
   word trajParts←v21816;
   word segGen←v21844 = 0;
   formal←c94248 = (formal←c94248 - 24);
   /* IsObsolete: */ 
SOURCE(42990, 604)
SOURCE(43061, 43)
   trajData←v21788 = XR←Narrow((* (( (ptr) (*  (ptr) seq←v21584 ))+1) ), (* (( (ptr) gf←c94216)+22) ));
SOURCE(43106, 40)
   trajParts←v21816 = XR←Narrow((* (( (ptr) seq←v21584)+1) ), (* (( (ptr) gf←c94216)+23) ));
SOURCE(43174, 63)
   if (((*  (ptr) (*  (ptr) trajParts←v21816 ) ) != (* (( (ptr) trajData←v21788)+1) ))) {
SOURCE(43225, 12)
      return(1);
      };
SOURCE(43239, 75)
   {
      word pd683;
      pd683 = (* (( (ptr) (* (( (ptr) gf←c94216)+294)/* var←c84296 */  ))+39) );
      if (((*  (ptr) (* (( (ptr) trajParts←v21816)+1) ) ) != ((word) ( *( (fPt) ((*  (ptr) pd683 ))))((*  (ptr) (seq←v21584) ), pd683)
       + 1))) {
SOURCE(43302, 12)
         return(1);
         };
      };
SOURCE(43316, 44)
   {
      word pd684;
      pd684 = (* (( (ptr) (* (( (ptr) gf←c94216)+296)/* var←c84712 */  ))+40) );
      segGen←v21844 = (word) ( *( (fPt) ((*  (ptr) pd684 ))))(trajData←v21788, pd684);
      };
SOURCE(43362, 208)
   {
      register word nextSeg←v21888;
      {
         word pd685;
         pd685 = (* (( (ptr) (* (( (ptr) gf←c94216)+296)/* var←c84712 */  ))+46) );
         nextSeg←v21888 = (word) ( *( (fPt) ((*  (ptr) pd685 ))))(segGen←v21844, pd685);
         };
      lab←L100064: ;
      if ((nextSeg←v21888 != 0)) {
         }
      else {
         goto lab←L100061;
         };
      {
         word var←c89800;
         word var←c0891;
SOURCE(43469, 92)
         {
            word pd687;
            {
               word limit686;
               var←c89800 = (* (( (ptr) trajParts←v21816)+2) );
               var←c0891 = (*  (ptr) (* ((( (ptr) var←c89800)+1)+(
                     limit686 = (*  (ptr) var←c89800 ),
                     BCK(j←v21760, limit686)
                     )) ) );
               };
            pd687 = (* (( (ptr) (*  (ptr) nextSeg←v21888 ))+17) );
            if (((word) ( *( (fPt) ((*  (ptr) pd687 ))))(nextSeg←v21888, pd687) != var←c0891)) {
SOURCE(43549, 12)
               return(1);
               };
            };
SOURCE(43563, 7)
         j←v21760 = (j←v21760 + 1);
         };
      {
         word pd688;
         pd688 = (* (( (ptr) (* (( (ptr) gf←c94216)+296)/* var←c84712 */  ))+46) );
         nextSeg←v21888 = (word) ( *( (fPt) ((*  (ptr) pd688 ))))(segGen←v21844, pd688);
         };
      goto lab←L100064;
      lab←L100061: ;
      };
SOURCE(43581, 13)
   return(0);
   }

static word DescendAFeature←P7152(feature←v21688, formal←c94312)
   word feature←v21688;
   word formal←c94312;
   {
   register ptr gf←c94280 =  (ptr) &globalframe;
   word done←v21732;
   formal←c94312 = (formal←c94312 - 16);
   /* DescendAFeature: */ 
SOURCE(43600, 903)
SOURCE(43600, 903)
   done←v21732 = 0;
SOURCE(43678, 825)
   if (((*  (ptr) feature←v21688 ) == 0)) {
SOURCE(43705, 815)
      {
         word shapeD←v21932;
SOURCE(43707, 47)
         shapeD←v21932 = XR←Narrow((* (( (ptr) feature←v21688)+1) ), (* (( (ptr) gf←c94280)+12) ));
SOURCE(43756, 19)
         (* (( (ptr) formal←c94312)+8) ) = ((* (( (ptr) formal←c94312)+8) ) + 1);
SOURCE(43777, 726)
         if (((*  (ptr) (*  (ptr) shapeD←v21932 ) ) == 0)) {
SOURCE(43808, 39)
            (* (( (ptr) formal←c94312)+11) ) = ((* (( (ptr) formal←c94312)+11) ) + 1);
            }
         else {
SOURCE(43847, 670)
            {
               word dList←v21976 = 0;
               word classType←v22004;
SOURCE(43881, 50)
               {
                  word pd689;
                  pd689 = (* (( (ptr) (* (( (ptr) gf←c94280)+283)/* var←c82824 */  ))+6) );
                  classType←v22004 = (word) ( *( (fPt) ((*  (ptr) pd689 ))))((*  (ptr) (shapeD←v21932) ), pd689);
                  };
SOURCE(43933, 570)
               if ((classType←v22004 == (* (( (ptr) gf←c94280)+162) )) || (classType←v22004 == (* (( (ptr) gf←c94280)+64) ))) {
SOURCE(43986, 72)
                  {
                     word pd690;
                     pd690 = (* (( (ptr) (* (( (ptr) gf←c94280)+288)/* var←c83176 */  ))+76) );
                     dList←v21976 = (word) ( *( (fPt) ((*  (ptr) pd690 ))))((*  (ptr) shapeD←v21932 ), (* (( (ptr) shapeD←v21932)+1) ), 0, 0, pd690)
                     ;
                     };
SOURCE(44060, 443)
                  {
                     register word childList←v22132;
                     {
                        word pd691;
                        pd691 = (* (( (ptr) (* (( (ptr) gf←c94280)+288)/* var←c83176 */  ))+75) );
                        childList←v22132 = (word) ( *( (fPt) ((*  (ptr) pd691 ))))((*  (ptr) shapeD←v21932 ), 0, 0, pd691);
                        };
                     lab←L100068: ;
                     if ((childList←v22132 != 0)) {
                        }
                     else {
                        goto lab←L100065;
                        };
                     {
                        word nextPart←v22260;
                        word nextChild←v22288;
SOURCE(44175, 39)
                        nextPart←v22260 = (*  (ptr) dList←v21976 );
SOURCE(44216, 34)
                        nextChild←v22288 = (*  (ptr) childList←v22132 );
SOURCE(44252, 67)
                        if (((*  (ptr) nextChild←v22288 ) == 0)) {
SOURCE(44280, 39)
                           (* (( (ptr) formal←c94312)+12) ) = ((* (( (ptr) formal←c94312)+12) ) + 1);
                           };
SOURCE(44321, 58)
                        if ((nextChild←v22288 != (*  (ptr) nextPart←v22260 ))) {
SOURCE(44354, 25)
                           (* (( (ptr) formal←c94312)+9) ) = ((* (( (ptr) formal←c94312)+9) ) + 1);
                           };
SOURCE(44381, 102)
                        {
                           word pd692;
                           pd692 = (* (( (ptr) (* (( (ptr) gf←c94280)+283)/* var←c82824 */  ))+6) );
                           if (((word) ( *( (fPt) ((*  (ptr) pd692 ))))(nextChild←v22288, pd692) == (* (( (ptr) gf←c94280)+49) ))) {
SOURCE(44425, 58)
/*1*/   if ((0 != (word) IsObsolete←P7092(nextPart←v22260, (word) (( (bPt) formal←c94312)+24)))) {
SOURCE(44454, 29)
/*1*/      (* (( (ptr) formal←c94312)+10) ) = ((* (( (ptr) formal←c94312)+10) ) + 1);
/*1*/      };
/*1*/   };
                           };
SOURCE(44485, 18)
                        dList←v21976 = (* (( (ptr) dList←v21976)+1) );
                        };
                     childList←v22132 = (* (( (ptr) childList←v22132)+1) );
                     goto lab←L100068;
                     lab←L100065: ;
                     };
                  };
               };
            };
         };
      };
SOURCE(43600, 903)
   return(done←v21732);
   }

static void DrawPolylines←P3300(ggData←v35252, event←v35280)
   word ggData←v35252;
   word event←v35280;
   {
   register ptr gf←c94344 =  (ptr) &globalframe;
   /* DrawPolylines: */ 
SOURCE(44982, 173)
SOURCE(45022, 133)
   {
      word pd693;
      pd693 = (* (( (ptr) (* (( (ptr) gf←c94344)+290)/* var←c83368 */  ))+4) );
      (void) ( *( (fPt) ((*  (ptr) pd693 ))))((* (( (ptr) gf←c94344)+122) ), ggData←v35252, 4, 0, 0, 1, pd693);
      };
   }

static void UserTraceOn←P3360(ggData←v35340, event←v35368)
   word ggData←v35340;
   word event←v35368;
   {
   register ptr gf←c94376 =  (ptr) &globalframe;
   /* UserTraceOn: */ 
SOURCE(45161, 70)
SOURCE(45199, 32)
   {
      word pd694;
      pd694 = (* (( (ptr) (* (( (ptr) gf←c94376)+321)/* var←c89832 */  ))+14) );
      (void) ( *( (fPt) ((*  (ptr) pd694 ))))(1, pd694);
      };
   }

static void UserTraceOff←P3420(ggData←v35428, event←v35456)
   word ggData←v35428;
   word event←v35456;
   {
   register ptr gf←c94408 =  (ptr) &globalframe;
   /* UserTraceOff: */ 
SOURCE(45236, 72)
SOURCE(45275, 33)
   {
      word pd695;
      pd695 = (* (( (ptr) (* (( (ptr) gf←c94408)+321)/* var←c89832 */  ))+14) );
      (void) ( *( (fPt) ((*  (ptr) pd695 ))))(0, pd695);
      };
   }

static void RegisterEventProcs←P3480()
   {
   register ptr gf←c94440 =  (ptr) &globalframe;
   /* RegisterEventProcs: */ 
SOURCE(45314, 2178)
SOURCE(45361, 77)
   {
      word pd696;
      pd696 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd696 ))))((* (( (ptr) gf←c94440)+123) ), (word) (( (bPt) gf←c94440)+740)/* var←c81224 */ , 1, 1, 0, pd696)
      ;
      };
SOURCE(45440, 74)
   {
      word pd697;
      pd697 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd697 ))))((* (( (ptr) gf←c94440)+124) ), (word) (( (bPt) gf←c94440)+732)/* var←c81192 */ , 4, 1, 0, pd697)
      ;
      };
SOURCE(45516, 55)
   {
      word pd698;
      pd698 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd698 ))))((* (( (ptr) gf←c94440)+125) ), (word) (( (bPt) gf←c94440)+716)/* var←c81128 */ , 0, 1, 0, pd698)
      ;
      };
SOURCE(45573, 57)
   {
      word pd699;
      pd699 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd699 ))))((* (( (ptr) gf←c94440)+126) ), (word) (( (bPt) gf←c94440)+708)/* var←c81096 */ , 0, 1, 0, pd699)
      ;
      };
SOURCE(45632, 53)
   {
      word pd700;
      pd700 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd700 ))))((* (( (ptr) gf←c94440)+127) ), (word) (( (bPt) gf←c94440)+700)/* var←c81064 */ , 0, 1, 0, pd700)
      ;
      };
SOURCE(45688, 45)
   {
      word pd701;
      pd701 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd701 ))))((* (( (ptr) gf←c94440)+128) ), (word) (( (bPt) gf←c94440)+692)/* var←c81032 */ , 0, 1, 0, pd701)
      ;
      };
SOURCE(45735, 51)
   {
      word pd702;
      pd702 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd702 ))))((* (( (ptr) gf←c94440)+129) ), (word) (( (bPt) gf←c94440)+684)/* var←c81000 */ , 0, 1, 0, pd702)
      ;
      };
SOURCE(45788, 51)
   {
      word pd703;
      pd703 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd703 ))))((* (( (ptr) gf←c94440)+130) ), (word) (( (bPt) gf←c94440)+676)/* var←c80968 */ , 0, 1, 0, pd703)
      ;
      };
SOURCE(45841, 47)
   {
      word pd704;
      pd704 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd704 ))))((* (( (ptr) gf←c94440)+131) ), (word) (( (bPt) gf←c94440)+668)/* var←c80936 */ , 0, 1, 0, pd704)
      ;
      };
SOURCE(45890, 49)
   {
      word pd705;
      pd705 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd705 ))))((* (( (ptr) gf←c94440)+132) ), (word) (( (bPt) gf←c94440)+660)/* var←c80904 */ , 0, 1, 0, pd705)
      ;
      };
SOURCE(45942, 47)
   {
      word pd706;
      pd706 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd706 ))))((* (( (ptr) gf←c94440)+133) ), (word) (( (bPt) gf←c94440)+972)/* var←c82152 */ , 0, 1, 0, pd706)
      ;
      };
SOURCE(45991, 37)
   {
      word pd707;
      pd707 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd707 ))))((* (( (ptr) gf←c94440)+134) ), (word) (( (bPt) gf←c94440)+964)/* var←c82120 */ , 0, 1, 0, pd707)
      ;
      };
SOURCE(46030, 49)
   {
      word pd708;
      pd708 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd708 ))))((* (( (ptr) gf←c94440)+135) ), (word) (( (bPt) gf←c94440)+956)/* var←c82088 */ , 0, 1, 0, pd708)
      ;
      };
SOURCE(46081, 44)
   {
      word pd709;
      pd709 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd709 ))))((* (( (ptr) gf←c94440)+136) ), (word) (( (bPt) gf←c94440)+948)/* var←c82056 */ , 4, 1, 0, pd709)
      ;
      };
SOURCE(46127, 43)
   {
      word pd710;
      pd710 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd710 ))))((* (( (ptr) gf←c94440)+137) ), (word) (( (bPt) gf←c94440)+916)/* var←c81928 */ , 0, 1, 0, pd710)
      ;
      };
SOURCE(46172, 59)
   {
      word pd711;
      pd711 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd711 ))))((* (( (ptr) gf←c94440)+138) ), (word) (( (bPt) gf←c94440)+940)/* var←c82024 */ , 1, 1, 0, pd711)
      ;
      };
SOURCE(46233, 61)
   {
      word pd712;
      pd712 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd712 ))))((* (( (ptr) gf←c94440)+139) ), (word) (( (bPt) gf←c94440)+932)/* var←c81992 */ , 0, 1, 0, pd712)
      ;
      };
SOURCE(46296, 61)
   {
      word pd713;
      pd713 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd713 ))))((* (( (ptr) gf←c94440)+140) ), (word) (( (bPt) gf←c94440)+924)/* var←c81960 */ , 0, 1, 0, pd713)
      ;
      };
SOURCE(46359, 57)
   {
      word pd714;
      pd714 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd714 ))))((* (( (ptr) gf←c94440)+141) ), (word) (( (bPt) gf←c94440)+884)/* var←c81800 */ , 0, 1, 0, pd714)
      ;
      };
SOURCE(46418, 45)
   {
      word pd715;
      pd715 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd715 ))))((* (( (ptr) gf←c94440)+142) ), (word) (( (bPt) gf←c94440)+876)/* var←c81768 */ , 0, 1, 0, pd715)
      ;
      };
SOURCE(46465, 63)
   {
      word pd716;
      pd716 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd716 ))))((* (( (ptr) gf←c94440)+143) ), (word) (( (bPt) gf←c94440)+860)/* var←c81704 */ , 1, 1, 0, pd716)
      ;
      };
SOURCE(46532, 41)
   {
      word pd717;
      pd717 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd717 ))))((* (( (ptr) gf←c94440)+144) ), (word) (( (bPt) gf←c94440)+1012)/* var←c82312 */ , 0, 1, 0, pd717)
      ;
      };
SOURCE(46575, 43)
   {
      word pd718;
      pd718 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd718 ))))((* (( (ptr) gf←c94440)+145) ), (word) (( (bPt) gf←c94440)+1004)/* var←c82280 */ , 0, 1, 0, pd718)
      ;
      };
SOURCE(46620, 41)
   {
      word pd719;
      pd719 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd719 ))))((* (( (ptr) gf←c94440)+146) ), (word) (( (bPt) gf←c94440)+996)/* var←c82248 */ , 0, 1, 0, pd719)
      ;
      };
SOURCE(46663, 55)
   {
      word pd720;
      pd720 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd720 ))))((* (( (ptr) gf←c94440)+147) ), (word) (( (bPt) gf←c94440)+1020)/* var←c82344 */ , 0, 1, 0, pd720)
      ;
      };
SOURCE(46720, 45)
   {
      word pd721;
      pd721 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd721 ))))((* (( (ptr) gf←c94440)+148) ), (word) (( (bPt) gf←c94440)+1060)/* var←c82504 */ , 0, 1, 0, pd721)
      ;
      };
SOURCE(46767, 53)
   {
      word pd722;
      pd722 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd722 ))))((* (( (ptr) gf←c94440)+149) ), (word) (( (bPt) gf←c94440)+1052)/* var←c82472 */ , 0, 1, 0, pd722)
      ;
      };
SOURCE(46822, 49)
   {
      word pd723;
      pd723 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd723 ))))((* (( (ptr) gf←c94440)+150) ), (word) (( (bPt) gf←c94440)+1068)/* var←c82536 */ , 0, 1, 0, pd723)
      ;
      };
SOURCE(46873, 53)
   {
      word pd724;
      pd724 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd724 ))))((* (( (ptr) gf←c94440)+151) ), (word) (( (bPt) gf←c94440)+1084)/* var←c82600 */ , 0, 1, 0, pd724)
      ;
      };
SOURCE(46928, 39)
   {
      word pd725;
      pd725 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd725 ))))((* (( (ptr) gf←c94440)+152) ), (word) (( (bPt) gf←c94440)+1092)/* var←c82632 */ , 0, 1, 0, pd725)
      ;
      };
SOURCE(46969, 65)
   {
      word pd726;
      pd726 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd726 ))))((* (( (ptr) gf←c94440)+153) ), (word) (( (bPt) gf←c94440)+780)/* var←c81384 */ , 0, 1, 0, pd726)
      ;
      };
SOURCE(47037, 69)
   {
      word pd727;
      pd727 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd727 ))))((* (( (ptr) gf←c94440)+154) ), (word) (( (bPt) gf←c94440)+852)/* var←c81672 */ , 0, 1, 0, pd727)
      ;
      };
SOURCE(47108, 51)
   {
      word pd728;
      pd728 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd728 ))))((* (( (ptr) gf←c94440)+155) ), (word) (( (bPt) gf←c94440)+844)/* var←c81640 */ , 0, 1, 0, pd728)
      ;
      };
SOURCE(47161, 55)
   {
      word pd729;
      pd729 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd729 ))))((* (( (ptr) gf←c94440)+156) ), (word) (( (bPt) gf←c94440)+820)/* var←c81544 */ , 0, 1, 0, pd729)
      ;
      };
SOURCE(47218, 53)
   {
      word pd730;
      pd730 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd730 ))))((* (( (ptr) gf←c94440)+157) ), (word) (( (bPt) gf←c94440)+828)/* var←c81576 */ , 0, 1, 0, pd730)
      ;
      };
SOURCE(47273, 51)
   {
      word pd731;
      pd731 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd731 ))))((* (( (ptr) gf←c94440)+158) ), (word) (( (bPt) gf←c94440)+804)/* var←c81480 */ , 0, 1, 0, pd731)
      ;
      };
SOURCE(47326, 60)
   {
      word pd732;
      pd732 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd732 ))))((* (( (ptr) gf←c94440)+159) ), (word) (( (bPt) gf←c94440)+796)/* var←c81448 */ , 4, 1, 0, pd732)
      ;
      };
SOURCE(47388, 62)
   {
      word pd733;
      pd733 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd733 ))))((* (( (ptr) gf←c94440)+160) ), (word) (( (bPt) gf←c94440)+788)/* var←c81416 */ , 4, 1, 0, pd733)
      ;
      };
SOURCE(47453, 39)
   {
      word pd734;
      pd734 = (* (( (ptr) (* (( (ptr) gf←c94440)+321)/* var←c89832 */  ))+10) );
      (void) ( *( (fPt) ((*  (ptr) pd734 ))))((* (( (ptr) gf←c94440)+161) ), (word) (( (bPt) gf←c94440)+756)/* var←c81288 */ , 1, 1, 0, pd734)
      ;
      };
   }

static void NoName←Q7860(formal←c0756, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
   word formal←c0756;
   word formal←c200008;
   word formal←c200009;
   word formal←c200010;
   word formal←c200011;
   {
   register ptr gf←c0885 =  (ptr) &globalframe;
   if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0885)+318)/* var←c88840 */  ))+4) ))) {
      {
         word position←v75328;
         word wasThere←v75356;
         word notThere←v75384;
         position←v75328 = (*  (ptr) formal←c200011 );
         wasThere←v75356 = (* (( (ptr) formal←c200011)+1) );
         notThere←v75384 = (* (( (ptr) formal←c200011)+2) );
SOURCE(40154, 14)
         (*  (ptr) formal←c0756 ) = 2;
         (* (( (ptr) formal←c0756)+1) ) = 4;
         return;
         };
      };
   (*  (ptr) formal←c0756 ) = 0;
   (* (( (ptr) formal←c0756)+1) ) = 0;
   return;
   }

static void NoName←Q7920(formal←c0762, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0762;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   register ptr gf←c0886 =  (ptr) &globalframe;
   if ((formal←c200001 == (*  (ptr) (* (( (ptr) (* (( (ptr) gf←c0886)+311)/* var←c88104 */  ))+6) ) ))) {
      {
         W3 error←v68768;
         error←v68768 = (*  (W3Pt) formal←c200003 );
SOURCE(35674, 10)
         (*  (ptr) formal←c0762 ) = 2;
         (* (( (ptr) formal←c0762)+1) ) = 3;
         return;
         };
      };
   (*  (ptr) formal←c0762 ) = 0;
   (* (( (ptr) formal←c0762)+1) ) = 0;
   return;
   }

static void NoName←Q7980(formal←c0767, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
   word formal←c0767;
   word formal←c200004;
   word formal←c200005;
   word formal←c200006;
   word formal←c200007;
   {
   register ptr gf←c0887 =  (ptr) &globalframe;
   if ((formal←c200005 == (* (( (ptr) (* (( (ptr) gf←c0887)+313)/* var←c88232 */  ))+10) ))) {
SOURCE(36763, 8)
      (*  (ptr) formal←c0767 ) = 2;
      (* (( (ptr) formal←c0767)+1) ) = 2;
      return;
      };
   (*  (ptr) formal←c0767 ) = 0;
   (* (( (ptr) formal←c0767)+1) ) = 0;
   return;
   }

/* file: GGEventImplE, module: GGEventImplE, compiled at: August 23, 1993 5:42:47 pm PDT */ 
extern void XR←install←GGEventImplE() {
   NoName←Q7620();
   }
extern void XR←run←GGEventImplE() { XR←Start(&globalframe); }