/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 11, 1993 8:05:05 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: GGSliceOpsImpl, module: GGSliceOpsImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [2199996704,780654301] GGSliceOpsImpl"; 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;} W5; typedef struct {word f0, f1, f2, f3;} W4; typedef struct {word f0, f1, f2;} W3; typedef W3 *W3Pt; typedef W5 *W5Pt; typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W2 r;} W10; #define SOURCE(p, l) /* source p, l */ static float fc113 = 0.0; static float fc156 = 8705.14; static float fc170 = 8906.16; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static float fc206 = 0.072; static void NoName←Q6588(); static void GGSliceOpsImpl←P0(); static word GetType←P60(); static word GetBoundBox←P120(); static word GetTransformedBoundBox←P180(); static word GetTightBox←P240(); static word Copy←P300(); static void Restore←P360(); static void Unlink←P420(); static void BuildPath←P480(); static void DrawBorder←P540(); static void DrawParts←P600(); static void DrawTransform←P660(); static void DrawSelectionFeedback←P720(); static void DrawAttractorFeedback←P780(); static word AttractorFeedbackBoundBox←P840(); static void SaveSelections←P900(); static word RemakeSelections←P960(); static void Transform←P1020(); static word Describe←P1080(); static word DescribeHit←P1140(); static void Fileout←P1200(); static word Filein←P1260(); static word IsEmptyParts←P1320(); static word IsCompleteParts←P1380(); static word NewParts←P1440(); static word UnionParts←P1500(); static word DifferenceParts←P1560(); static void MovingParts←P1620(); static word AugmentParts←P1680(); static word AlterParts←P1740(); static void SetSelectedFields←P1800(); static word PointsInDescriptor←P1860(); static void WalkPointsInDescriptor←P1920(); static word PointPairsInDescriptor←P1980(); static word SegmentsInDescriptor←P2040(); static word WalkSegments←P2100(); static void NextPoint←P2160(); static void NextPointPair←P2220(); static void NextSegment←P2280(); static void ClosestPoint←P2340(); static void ClosestJointToHitData←P2400(); static void ClosestPointAndTangent←P2460(); static void ClosestSegment←P2520(); static void FilledPathsUnderPoint←P2580(); static void LineIntersection←P2640(); static void CircleIntersection←P2700(); static word HitDataAsSimpleCurve←P2760(); static void SetDefaults←P2820(); static word SetStrokeWidth←P2880(); static void GetStrokeWidth←P2940(); static void SetStrokeEnd←P3000(); static void GetStrokeEnd←P3060(); static void SetStrokeJoint←P3120(); static void GetStrokeJoint←P3180(); static void SetStrokeColor←P3240(); static void GetStrokeColor←P3300(); static void SetFillColor←P3360(); static void GetFillColor←P3420(); static void SetArrows←P3480(); static void GetArrows←P3540(); static void SetDashed←P3600(); static void GetDashed←P3660(); static word SetOrientation←P3720(); static void GetOrientation←P3780(); static void FileoutSlice←P3840(); static void FileoutPList←P3900(); static word FileoutProp←P4800(); static word FileinSlice←P3960(); static word SliceClassFromRope←P4020(); static void FileinPList←P4080(); static word ReadRopeInBoxcarAndBell←P4140(); static word PartsInBoundBox←P4200(); static word WithinBoundBox←P4260(); static word Within←P5004(); static word IsOpen←P4320(); static void GenericPropsUndo←P4380(); static void Note←P4440(); static void UndoProps←P4500(); static word FixBogusParts←P4560(); static word IsDescriptorOfEnd←P4620(); static void UnpackJoint←P4680(); static void UnpackSegment←P4740(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\122\207\370\054\300\315\202\135\375\100\200\000\000"}; static struct {unsigned f; char r[12];} string2 = {589833, "\007\000\040\003\004\036\004\016\014\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\274\000\000"}; static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"}; static struct {unsigned f; char r[4];} string5 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string6 = {65540, "\256\000\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300ZT?\010\300\370;=;@t\000\000"}; static struct {unsigned f; char r[20];} string8 = {1048592, "\007\000\040\003\007\040\040\002\003\002\004\074\004\016\004\006\000\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\200\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\252\043\023\037\300\070\056\113\065\100\214\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\003\001\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\214\000\000"}; static struct {unsigned f; char r[48];} string13 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\252\043\023\037\300\070\056\113\065\100\214\005\004\162\145\163\164\214\216\257\300\252\043\023\037\300\070\056\113\065\100\214\261\000\000\000"}; static struct {unsigned f; char r[4];} string14 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string15 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\244\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\230\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\260\000\000"}; static struct {unsigned f; char r[12];} string19 = {589836, "SetDashed\000\000"}; static struct {unsigned f; char r[16];} string20 = {917520, "SetOrientation\000"}; static struct {unsigned f; char r[12];} string21 = {589836, "SetArrows\000\000"}; static struct {unsigned f; char r[16];} string22 = {786448, "SetFillColor\000\000\000"}; static struct {unsigned f; char r[4];} string23 = {196612, "%g "}; static struct {unsigned f; char r[12];} string24 = {655372, " pList: ( \000"}; static struct {unsigned f; char r[4];} string25 = {131076, ")\012\000"}; static struct {unsigned f; char r[8];} string26 = {262152, "(%g \000\000\000"}; static struct {unsigned f; char r[12];} string27 = {524300, "%g%g%g) \000\000\000"}; static struct {unsigned f; char r[12];} string28 = {589836, "[%g] %g) \000\000"}; static struct {unsigned f; char r[8];} string29 = {262152, "Traj\000\000\000"}; static struct {unsigned f; char r[8];} string30 = {458760, "(class:"}; static struct {unsigned f; char r[4];} string31 = {131076, "]:\000"}; static struct {unsigned f; char r[8];} string32 = {327688, "Data:\000\000"}; static struct {unsigned f; char r[12];} string33 = {524300, "pList: (\000\000\000"}; static struct {unsigned f; char r[4];} string34 = {131076, "] \000"}; static struct {unsigned f; char r[20];} string35 = {1245204, "Not yet implemented"}; static struct {unsigned f; char r[16];} string36 = {917520, "SetStrokeColor\000"}; static struct {unsigned f; char r[16];} string37 = {917520, "SetStrokeJoint\000"}; static struct {unsigned f; char r[16];} string38 = {786448, "SetStrokeEnd\000\000\000"}; static struct {unsigned f; char r[16];} string39 = {917520, "SetStrokeWidth\000"}; static struct {unsigned f; char r[4];} string40 = {196612, "Set"}; static struct {unsigned f; char r[8];} string41 = {458760, "Cluster"}; static struct {unsigned f; char r[8];} string42 = {458760, "Outline"}; static struct {unsigned f; char r[12];} string43 = {589836, "Transform\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\203\041\111\040\300\056\207\326\335\100\164\000\000"}; static struct {unsigned f; char r[12];} string45 = {589833, "\006\001\100\140\010\000\004\032\001\000\000"}; static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"}; static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\311\023\117\300\300\337\236\305\170\100\150\000\000"}; static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\301\241\007\150\300\032\111\265\237\100\150\000\000"}; static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\236\155\220\261\300\040\017\026\014\100\150\000\000"}; static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\317\075\344\275\300\105\331\241\110\100\150\000\000"}; static struct {unsigned f; char r[16];} string52 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"}; static struct {unsigned f; char r[8];} string53 = {1195856748, "iceOps"}; static struct {unsigned f; char r[16];} string54 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string55 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"}; static struct {unsigned f; char r[16];} string56 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string57 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string58 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\000\000"}; static struct {unsigned f; char r[16];} string59 = {851984, "\257\300\353\320\266\116\300\006\152\040\366\100\150\000\000"}; static struct {unsigned f; char r[16];} string60 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string61 = {851984, "\257\300\252\043\023\037\300\070\056\113\065\100\150\000\000"}; static struct {unsigned f; char r[20];} string62 = {1245204, "\211\007\006Change\300\252#\023\037\3008.K5"}; static struct { word f0[4]; word f4; word f5; word f6; word f7[44]; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105; word f106; word f107; word f108; word f109; word f110; word f111; word f112; word f113; word f114; word f115; word f116; word f117; word f118; word f119; word f120; word f121; word f122; word f123; word f124; word f125; word f126; word f127; word f128; word f129; word f130; word f131; word f132; word f133; word f134; word f135; word f136; word f137; word f138; word f139; word f140; word f141; word f142; word f143; word f144; word f145; word f146; word f147; word f148; word f149; word f150; word f151; word f152; word f153; word f154; word f155; word f156; word f157; word f158; word f159; word f160; word f161; word f162; word f163; word f164; word f165; word f166; word f167; word f168; word f169; word f170; word f171; word f172; word f173; word f174; word f175; word f176; word f177; word f178; word f179; word f180; word f181; word f182; word f183; word f184; word f185; word f186; word f187; word f188; word f189; word f190; word f191; word f192; word f193; word f194; word f195; word f196; word f197; word f198; word f199; word f200; word f201; word f202; word f203; word f204; word f205; word f206; word f207; word f208; word f209; word f210[17]; } globalframe = { {0}, (word) 1, 0, (word) 1, {0}, (word) UnpackSegment←P4740, 0, (word) UnpackJoint←P4680, 0, (word) IsDescriptorOfEnd←P4620, 0, (word) FixBogusParts←P4560, 0, (word) UndoProps←P4500, 0, (word) Note←P4440, 0, (word) GenericPropsUndo←P4380, 0, (word) IsOpen←P4320, 0, (word) WithinBoundBox←P4260, 0, (word) PartsInBoundBox←P4200, 0, (word) ReadRopeInBoxcarAndBell←P4140, 0, (word) FileinPList←P4080, 0, (word) SliceClassFromRope←P4020, 0, (word) FileinSlice←P3960, 0, (word) FileoutPList←P3900, 0, (word) FileoutSlice←P3840, 0, (word) GetOrientation←P3780, 0, (word) SetOrientation←P3720, 0, (word) GetDashed←P3660, 0, (word) SetDashed←P3600, 0, (word) GetArrows←P3540, 0, (word) SetArrows←P3480, 0, (word) GetFillColor←P3420, 0, (word) SetFillColor←P3360, 0, (word) GetStrokeColor←P3300, 0, (word) SetStrokeColor←P3240, 0, (word) GetStrokeJoint←P3180, 0, (word) SetStrokeJoint←P3120, 0, (word) GetStrokeEnd←P3060, 0, (word) SetStrokeEnd←P3000, 0, (word) GetStrokeWidth←P2940, 0, (word) SetStrokeWidth←P2880, 0, (word) SetDefaults←P2820, 0, (word) HitDataAsSimpleCurve←P2760, 0, (word) CircleIntersection←P2700, 0, (word) LineIntersection←P2640, 0, (word) FilledPathsUnderPoint←P2580, 0, (word) ClosestSegment←P2520, 0, (word) ClosestPointAndTangent←P2460, 0, (word) ClosestJointToHitData←P2400, 0, (word) ClosestPoint←P2340, 0, (word) NextSegment←P2280, 0, (word) NextPointPair←P2220, 0, (word) NextPoint←P2160, 0, (word) WalkSegments←P2100, 0, (word) SegmentsInDescriptor←P2040, 0, (word) PointPairsInDescriptor←P1980, 0, (word) WalkPointsInDescriptor←P1920, 0, (word) PointsInDescriptor←P1860, 0, (word) SetSelectedFields←P1800, 0, (word) AlterParts←P1740, 0, (word) AugmentParts←P1680, 0, (word) MovingParts←P1620, 0, (word) DifferenceParts←P1560, 0, (word) UnionParts←P1500, 0, (word) NewParts←P1440, 0, (word) IsCompleteParts←P1380, 0, (word) IsEmptyParts←P1320, 0, (word) Filein←P1260, 0, (word) Fileout←P1200, 0, (word) DescribeHit←P1140, 0, (word) Describe←P1080, 0, (word) Transform←P1020, 0, (word) RemakeSelections←P960, 0, (word) SaveSelections←P900, 0, (word) AttractorFeedbackBoundBox←P840, 0, (word) DrawAttractorFeedback←P780, 0, (word) DrawSelectionFeedback←P720, 0, (word) DrawTransform←P660, 0, (word) DrawParts←P600, 0, (word) DrawBorder←P540, 0, (word) BuildPath←P480, 0, (word) Unlink←P420, 0, (word) Restore←P360, 0, (word) Copy←P300, 0, (word) GetTightBox←P240, 0, (word) GetTransformedBoundBox←P180, 0, (word) GetBoundBox←P120, 0, (word) GetType←P60, 0, (word) GGSliceOpsImpl←P0, {0} }; static void NoName←Q6588() { register ptr gf←c0638 = (ptr) &globalframe; word var←c65360; (* (( (ptr) gf←c0638)+7) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0638)+8) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0638)+9) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string4); (* (( (ptr) gf←c0638)+12) ) = (word) XR←GetTypeIndexS((word) (&string6)); (* (( (ptr) gf←c0638)+13) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf←c0638)+14) ) = (word) XR←GetTypeIndexS((word) (&string9)); (* (( (ptr) gf←c0638)+15) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0638)+16) ) = (word) XR←GetTypeIndexS((word) (&string12)); (* (( (ptr) gf←c0638)+17) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string14); (* (( (ptr) gf←c0638)+19) ) = (word) XR←GetTypeIndex((word) &string15, 0, (word) &string4); (* (( (ptr) gf←c0638)+20) ) = (word) XR←GetTypeIndexS((word) (&string16)); (* (( (ptr) gf←c0638)+22) ) = (word) XR←GetTypeIndex((word) &string17, 0, (word) &string11); (* (( (ptr) gf←c0638)+23) ) = (word) XR←GetTypeIndexS((word) (&string18)); (* (ptr) (( (bPt) gf←c0638)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string19); (* (ptr) (( (bPt) gf←c0638)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string20); (* (ptr) (( (bPt) gf←c0638)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string21); (* (ptr) (( (bPt) gf←c0638)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string22); (* (ptr) (( (bPt) gf←c0638)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string23); (* (ptr) (( (bPt) gf←c0638)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string24); (* (ptr) (( (bPt) gf←c0638)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string25); (* (ptr) (( (bPt) gf←c0638)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string26); (* (ptr) (( (bPt) gf←c0638)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string27); (* (ptr) (( (bPt) gf←c0638)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string28); (* (ptr) (( (bPt) gf←c0638)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string29); (* (ptr) (( (bPt) gf←c0638)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string30); (* (ptr) (( (bPt) gf←c0638)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string31); (* (ptr) (( (bPt) gf←c0638)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string32); (* (ptr) (( (bPt) gf←c0638)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string33); (* (ptr) (( (bPt) gf←c0638)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string34); (* (ptr) (( (bPt) gf←c0638)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+19) ), (word) &string35); (* (ptr) (( (bPt) gf←c0638)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string29); (* (ptr) (( (bPt) gf←c0638)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string36); (* (ptr) (( (bPt) gf←c0638)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string37); (* (ptr) (( (bPt) gf←c0638)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string38); (* (ptr) (( (bPt) gf←c0638)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string39); (* (ptr) (( (bPt) gf←c0638)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string40); (* (ptr) (( (bPt) gf←c0638)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string41); (* (ptr) (( (bPt) gf←c0638)+192) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string42); (* (ptr) (( (bPt) gf←c0638)+196) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0638)+9) ), (word) &string43); (void) XR←DeclareGlobalFrame((word) "GGSliceOpsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string44, 0, (word) &string45) , (word) (( (bPt) gf←c0638)+836)/* var←c61008 */ ); var←c65360 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string46)), 16); (* (( (ptr) gf←c0638)+213)/* var←c62768 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67895555); (void) XR←ImportProcS(var←c65360, 67372289); var←c65360 = (word) XR←ImportInterface((word) "Feedback", (word) XR←GetTypeIndexS((word) (&string47)), 25); (* (( (ptr) gf←c0638)+221)/* var←c64272 */ ) = var←c65360; var←c65360 = (word) XR←ImportInterface((word) "GGOutline", (word) XR←GetTypeIndexS((word) (&string48)), 19); (* (( (ptr) gf←c0638)+224)/* var←c64976 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 671354113); var←c65360 = (word) XR←ImportInterface((word) "GGParent", (word) XR←GetTypeIndexS((word) (&string49)), 83); (* (( (ptr) gf←c0638)+215)/* var←c62864 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 68176388); (void) XR←ImportProcS(var←c65360, 67386113); var←c65360 = (word) XR←ImportInterface((word) "GGParseIn", (word) XR←GetTypeIndexS((word) (&string50)), 26); (* (( (ptr) gf←c0638)+218)/* var←c63408 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 262401); (void) XR←ImportProcS(var←c65360, 67376385); (void) XR←ImportProcS(var←c65360, 525826); (void) XR←ImportProcS(var←c65360, 525570); (void) XR←ImportProcS(var←c65360, 67372033); var←c65360 = (word) XR←ImportInterface((word) "GGProps", (word) XR←GetTypeIndexS((word) (&string51)), 11); (* (( (ptr) gf←c0638)+216)/* var←c62960 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 1048580); (void) XR←ImportProcS(var←c65360, 67635202); (void) XR←ImportProcS(var←c65360, 134743810); (void) XR←ImportProcS(var←c65360, 67896323); var←c65360 = (word) XR←ImportInterface((word) "GGSlice", (word) XR←GetTypeIndexS((word) (&string52)), 128); (* (( (ptr) gf←c0638)+211)/* var←c61168 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67371777); (void) XR←ImportProcS(var←c65360, 135293443); (void) XR←ImportProcS(var←c65360, 68701702); var←c65360 = (word) XR←ImportInterface((word) &string53, (word) XR←GetTypeIndexS((word) (&string54)), 73); (* (( (ptr) gf←c0638)+212)/* var←c62704 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 1315333); (void) XR←ImportProcS(var←c65360, 68173572); (void) XR←ImportProcS(var←c65360, 1850631); (void) XR←ImportProcS(var←c65360, 1325829); (void) XR←ImportProcS(var←c65360, 1325317); (void) XR←ImportProcS(var←c65360, 1324805); (void) XR←ImportProcS(var←c65360, 1062148); (void) XR←ImportProcS(var←c65360, 1061636); (void) XR←ImportProcS(var←c65360, 68169988); (void) XR←ImportProcS(var←c65360, 67901699); (void) XR←ImportProcS(var←c65360, 529666); (void) XR←ImportProcS(var←c65360, 67371521); var←c65360 = (word) XR←ImportInterface((word) "GGTraj", (word) XR←GetTypeIndexS((word) (&string55)), 55); (* (( (ptr) gf←c0638)+222)/* var←c64368 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 671625218); (void) XR←ImportProcS(var←c65360, 67643650); (void) XR←ImportProcS(var←c65360, 67374081); var←c65360 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string56)), 55); (* (( (ptr) gf←c0638)+223)/* var←c64848 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67383041); var←c65360 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string57)), 103); (* (( (ptr) gf←c0638)+214)/* var←c62832 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67917827); (void) XR←ImportProcS(var←c65360, 67388417); (void) XR←ImportProcS(var←c65360, 2111493); (void) XR←ImportProcS(var←c65360, 1071364); (void) XR←ImportProcS(var←c65360, 1063171); var←c65360 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string58)), 26); (* (( (ptr) gf←c0638)+220)/* var←c64176 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67634946); var←c65360 = (word) XR←ImportInterface((word) "RefTextExtras", (word) XR←GetTypeIndexS((word) (&string59)), 16); (* (( (ptr) gf←c0638)+219)/* var←c63952 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 528130); (void) XR←ImportProcS(var←c65360, 67374593); var←c65360 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string60)), 43); (* (( (ptr) gf←c0638)+217)/* var←c63056 */ ) = var←c65360; (void) XR←ImportProcS(var←c65360, 67903235); (void) XR←ImportProcS(var←c65360, 67373569); var←c65360 = (word) XR←ExportInterface((word) &string53, (word) XR←GetTypeIndexS((word) (&string54)), 73); (* (( (ptr) gf←c0638)+225)/* var←c65392 */ ) = var←c65360; (void) XR←ExportVar(var←c65360, 0, (word) (( (bPt) gf←c0638)+16)/* noteNoMore←v3336 */ ); (void) XR←ExportVar(var←c65360, 1, (word) (( (bPt) gf←c0638)+20)/* debugHalt←v3364 */ ); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+828)/* var←c60976 */ , 67371521, (word) "GetType"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+820)/* var←c60944 */ , 67633922, (word) "GetBoundBox"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+812)/* var←c60912 */ , 68158468, (word) "GetTransformedBoundBox") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+804)/* var←c60880 */ , 67634434, (word) "GetTightBox"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+796)/* var←c60848 */ , 67634690, (word) "Copy"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+788)/* var←c60816 */ , 526082, (word) "Restore"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+780)/* var←c60784 */ , 264193, (word) "Unlink"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+772)/* var←c60752 */ , 2361609, (word) "BuildPath"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+764)/* var←c60720 */ , 2099720, (word) "DrawBorder"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+756)/* var←c60688 */ , 1313541, (word) "DrawParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+748)/* var←c60656 */ , 1575942, (word) "DrawTransform"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+740)/* var←c60624 */ , 2362633, (word) "DrawSelectionFeedback") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+732)/* var←c60592 */ , 1838599, (word) "DrawAttractorFeedback") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+724)/* var←c60560 */ , 68685574, (word) "AttractorFeedbackBoundBox") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+716)/* var←c60528 */ , 790531, (word) "SaveSelections"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+708)/* var←c60496 */ , 67637506, (word) "RemakeSelections"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+700)/* var←c60464 */ , 1315333, (word) "Transform"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+692)/* var←c60432 */ , 67375873, (word) "Describe"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+684)/* var←c60400 */ , 67638274, (word) "DescribeHit"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+676)/* var←c60368 */ , 529666, (word) "Fileout"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+668)/* var←c60336 */ , 68163076, (word) "Filein"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+660)/* var←c60304 */ , 67376897, (word) "IsEmptyParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+652)/* var←c60272 */ , 67377153, (word) "IsCompleteParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+644)/* var←c60240 */ , 67901699, (word) "NewParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+636)/* var←c60208 */ , 67639810, (word) "UnionParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+628)/* var←c60176 */ , 67640066, (word) "DifferenceParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+620)/* var←c60144 */ , 270539780, (word) "MovingParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+612)/* var←c60112 */ , 67640578, (word) "AugmentParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+604)/* var←c60080 */ , 67640834, (word) "AlterParts"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+596)/* var←c60048 */ , 794371, (word) "SetSelectedFields"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+588)/* var←c60016 */ , 67379201, (word) "PointsInDescriptor") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+580)/* var←c59984 */ , 532738, (word) "WalkPointsInDescriptor") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+572)/* var←c59952 */ , 67379713, (word) "PointPairsInDescriptor") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+564)/* var←c59920 */ , 67379969, (word) "SegmentsInDescriptor") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+556)/* var←c59888 */ , 67642370, (word) "WalkSegments"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+548)/* var←c59856 */ , 201860354, (word) "NextPoint"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+540)/* var←c59824 */ , 336078338, (word) "NextPointPair"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+532)/* var←c59792 */ , 134752002, (word) "NextSegment"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+524)/* var←c59760 */ , 470820867, (word) "ClosestPoint"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+516)/* var←c59728 */ , 337127684, (word) "ClosestJointToHitData") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+508)/* var←c59696 */ , 470821379, (word) "ClosestPointAndTangent") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+500)/* var←c59664 */ , 470821635, (word) "ClosestSegment"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+492)/* var←c59632 */ , 135277571, (word) "FilledPathsUnderPoint") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+484)/* var←c59600 */ , 134753538, (word) "LineIntersection"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+476)/* var←c59568 */ , 134753794, (word) "CircleIntersection") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+468)/* var←c59536 */ , 67645186, (word) "HitDataAsSimpleCurve") ; (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+460)/* var←c59504 */ , 1060868, (word) "SetDefaults"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+452)/* var←c59472 */ , 68169988, (word) "SetStrokeWidth"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+444)/* var←c59440 */ , 134754818, (word) "GetStrokeWidth"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+436)/* var←c59408 */ , 1061636, (word) "SetStrokeEnd"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+428)/* var←c59376 */ , 134755330, (word) "GetStrokeEnd"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+420)/* var←c59344 */ , 1062148, (word) "SetStrokeJoint"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+412)/* var←c59312 */ , 134755842, (word) "GetStrokeJoint"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+404)/* var←c59280 */ , 1324805, (word) "SetStrokeColor"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+396)/* var←c59248 */ , 134756354, (word) "GetStrokeColor"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+388)/* var←c59216 */ , 1325317, (word) "SetFillColor"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+380)/* var←c59184 */ , 134756866, (word) "GetFillColor"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+372)/* var←c59152 */ , 1325829, (word) "SetArrows"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+364)/* var←c59120 */ , 134495233, (word) "GetArrows"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+356)/* var←c59088 */ , 1850631, (word) "SetDashed"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+348)/* var←c59056 */ , 336084482, (word) "GetDashed"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+340)/* var←c59024 */ , 68173572, (word) "SetOrientation"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+332)/* var←c58992 */ , 134758402, (word) "GetOrientation"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+324)/* var←c58960 */ , 540930, (word) "FileoutSlice"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+308)/* var←c58896 */ , 68436485, (word) "FileinSlice"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+276)/* var←c58768 */ , 67650306, (word) "PartsInBoundBox"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+268)/* var←c58736 */ , 67650562, (word) "WithinBoundBox"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+260)/* var←c58704 */ , 67388673, (word) "IsOpen"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+220)/* var←c58544 */ , 67388929, (word) "IsDescriptorOfEnd"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+212)/* var←c58512 */ , 201606913, (word) "UnpackJoint"); (void) XR←ExportProcS(var←c65360, (word) (( (bPt) gf←c0638)+204)/* var←c58480 */ , 335824897, (word) "UnpackSegment"); var←c65360 = (word) XR←ExportInterface((word) "GGHistoryTypes", (word) XR←GetTypeIndexS((word) (&string61)), 2); (* (( (ptr) gf←c0638)+226)/* var←c65424 */ ) = var←c65360; (void) XR←ExportType((word) "Change", (word) XR←GetTypeIndexS((word) (&string62)), (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2) ); } static void GGSliceOpsImpl←P0(formal←c0105, formal←c0104) word formal←c0105; word formal←c0104; { /* GGSliceOpsImpl: */ SOURCE(241, 21568) /* moved to installation proc */ /* moved to installation proc */ } static word GetType←P60(slice←v6636) word slice←v6636; { word type←v6680; /* GetType: */ SOURCE(1436, 85) SOURCE(1436, 85) type←v6680 = 0; SOURCE(1497, 24) return((* (ptr) (* (ptr) slice←v6636 ) )); } static word GetBoundBox←P120(slice←v30376, parts←v30404) word slice←v30376; word parts←v30404; { word box←v30448; /* GetBoundBox: */ SOURCE(1524, 87) SOURCE(1524, 87) box←v30448 = 0; SOURCE(1566, 45) { word pd63; pd63 = (* (( (ptr) (* (ptr) slice←v30376 ))+1) ); return((word) ( *( (fPt) ((* (ptr) pd63 ))))(slice←v30376, parts←v30404, pd63)); }; } static word GetTransformedBoundBox←P180(slice←v30508, selectedParts←v30536, movingParts←v30564, transform←v30592) word slice←v30508; word selectedParts←v30536; word movingParts←v30564; word transform←v30592; { word box←v30636; /* GetTransformedBoundBox: */ SOURCE(1615, 152) SOURCE(1615, 152) box←v30636 = 0; SOURCE(1679, 88) { word pd64; pd64 = (* (( (ptr) (* (ptr) slice←v30508 ))+2) ); return((word) ( *( (fPt) ((* (ptr) pd64 ))))(slice←v30508, selectedParts←v30536, movingParts←v30564, transform←v30592, pd64) ); }; } static word GetTightBox←P240(slice←v30696, parts←v30724) word slice←v30696; word parts←v30724; { word box←v30768; /* GetTightBox: */ SOURCE(1771, 87) SOURCE(1771, 87) box←v30768 = 0; SOURCE(1813, 45) { word pd65; pd65 = (* (( (ptr) (* (ptr) slice←v30696 ))+3) ); return((word) ( *( (fPt) ((* (ptr) pd65 ))))(slice←v30696, parts←v30724, pd65)); }; } static word Copy←P300(slice←v30828, parts←v30856) word slice←v30828; word parts←v30856; { word copy←v30900; /* Copy: */ SOURCE(1862, 69) SOURCE(1862, 69) copy←v30900 = 0; SOURCE(1893, 38) { word pd66; pd66 = (* (( (ptr) (* (ptr) slice←v30828 ))+4) ); return((word) ( *( (fPt) ((* (ptr) pd66 ))))(slice←v30828, parts←v30856, pd66)); }; } static void Restore←P360(from←v30960, to←v30988) word from←v30960; word to←v30988; { /* Restore: */ SOURCE(1935, 75) SOURCE(1972, 38) { word pd67; pd67 = (* (( (ptr) (* (ptr) from←v30960 ))+6) ); (void) ( *( (fPt) ((* (ptr) pd67 ))))(from←v30960, to←v30988, pd67); }; } static void Unlink←P420(slice←v31048) word slice←v31048; { /* Unlink: */ SOURCE(2014, 60) SOURCE(2049, 25) { word pd68; pd68 = (* (( (ptr) (* (ptr) slice←v31048 ))+5) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))(slice←v31048, pd68); }; } static void BuildPath←P480(slice←v31108, transformParts←v31136, transform←v31164, moveTo←v31192, lineTo←v31220, curveTo←v31248, conicTo←v31276, arcTo←v31304, editConstraints←v31332) word slice←v31108; word transformParts←v31136; word transform←v31164; word moveTo←v31192; word lineTo←v31220; word curveTo←v31248; word conicTo←v31276; word arcTo←v31304; word editConstraints←v31332; { /* BuildPath: */ SOURCE(2078, 154) SOURCE(2119, 113) { word pd69; pd69 = (* (( (ptr) (* (ptr) slice←v31108 ))+7) ); (void) ( *( (fPt) ((* (ptr) pd69 ))))(slice←v31108, transformParts←v31136, transform←v31164, moveTo←v31192, lineTo←v31220, curveTo←v31248 , conicTo←v31276, arcTo←v31304, editConstraints←v31332, pd69); }; } static void DrawBorder←P540(slice←v31392, drawParts←v31420, transformParts←v31448, transform←v31476, dc←v31504, camera←v31532, quick←v31560, editConstraints←v31588) word slice←v31392; word drawParts←v31420; word transformParts←v31448; word transform←v31476; word dc←v31504; word camera←v31532; word quick←v31560; word editConstraints←v31588; { /* DrawBorder: */ SOURCE(2236, 146) SOURCE(2279, 103) { word pd70; pd70 = (* (( (ptr) (* (ptr) slice←v31392 ))+8) ); (void) ( *( (fPt) ((* (ptr) pd70 ))))(slice←v31392, drawParts←v31420, transformParts←v31448, transform←v31476, dc←v31504, camera←v31532 , quick←v31560, editConstraints←v31588, pd70); }; } static void DrawParts←P600(slice←v31648, parts←v31676, dc←v31704, camera←v31732, quick←v31760) word slice←v31648; word parts←v31676; word dc←v31704; word camera←v31732; word quick←v31760; { /* DrawParts: */ SOURCE(2386, 95) SOURCE(2427, 54) { word pd71; pd71 = (* (( (ptr) (* (ptr) slice←v31648 ))+9) ); (void) ( *( (fPt) ((* (ptr) pd71 ))))(slice←v31648, parts←v31676, dc←v31704, camera←v31732, quick←v31760, pd71); }; } static void DrawTransform←P660(slice←v31820, parts←v31848, dc←v31876, camera←v31904, transform←v31932, editConstraints←v31960) word slice←v31820; word parts←v31848; word dc←v31876; word camera←v31904; word transform←v31932; word editConstraints←v31960; { /* DrawTransform: */ SOURCE(2485, 129) SOURCE(2534, 80) { word pd72; pd72 = (* (( (ptr) (* (ptr) slice←v31820 ))+10) ); (void) ( *( (fPt) ((* (ptr) pd72 ))))(slice←v31820, parts←v31848, dc←v31876, camera←v31904, transform←v31932, editConstraints←v31960, pd72) ; }; } static void DrawSelectionFeedback←P720(slice←v32020, selectedParts←v32048, hotParts←v32076, dc←v32104, camera←v32132, dragInProgress←v32160, caretIsMoving←v32188, hideHot←v32216, quick←v32244) word slice←v32020; word selectedParts←v32048; word hotParts←v32076; word dc←v32104; word camera←v32132; word dragInProgress←v32160; word caretIsMoving←v32188; word hideHot←v32216; word quick←v32244; { /* DrawSelectionFeedback: */ SOURCE(2618, 189) SOURCE(2683, 124) { word pd73; pd73 = (* (( (ptr) (* (ptr) slice←v32020 ))+11) ); (void) ( *( (fPt) ((* (ptr) pd73 ))))(slice←v32020, selectedParts←v32048, hotParts←v32076, dc←v32104, camera←v32132, dragInProgress←v32160 , caretIsMoving←v32188, hideHot←v32216, quick←v32244, pd73); }; } static void DrawAttractorFeedback←P780(slice←v32304, attractorParts←v32332, selectedParts←v32360, dragInProgress←v32388, dc←v32416, camera←v32444, editConstraints←v32472) word slice←v32304; word attractorParts←v32332; word selectedParts←v32360; word dragInProgress←v32388; word dc←v32416; word camera←v32444; word editConstraints←v32472; { /* DrawAttractorFeedback: */ SOURCE(2811, 181) SOURCE(2876, 116) { word pd74; pd74 = (* (( (ptr) (* (ptr) slice←v32304 ))+12) ); (void) ( *( (fPt) ((* (ptr) pd74 ))))(slice←v32304, attractorParts←v32332, selectedParts←v32360, dragInProgress←v32388, dc←v32416, camera←v32444 , editConstraints←v32472, pd74); }; } static word AttractorFeedbackBoundBox←P840(slice←v32532, attractorParts←v32560, selectedParts←v32588, dragInProgress←v32616, camera←v32644, editConstraints←v32672) word slice←v32532; word attractorParts←v32560; word selectedParts←v32588; word dragInProgress←v32616; word camera←v32644; word editConstraints←v32672; { register ptr gf←c65456 = (ptr) &globalframe; word box←v32716; /* AttractorFeedbackBoundBox: */ SOURCE(2996, 377) SOURCE(2996, 377) box←v32716 = 0; SOURCE(3069, 304) if (((* (( (ptr) (* (ptr) slice←v32532 ))+13) ) == 0)) { SOURCE(3121, 129) { word pd75; pd75 = (* (( (ptr) (* (( (ptr) gf←c65456)+211)/* var←c61168 */ ))+82) ); return((word) ( *( (fPt) ((* (ptr) pd75 ))))(slice←v32532, attractorParts←v32560, selectedParts←v32588, dragInProgress←v32616, camera←v32644, editConstraints←v32672, pd75) ); }; } else { SOURCE(3250, 123) { word pd76; pd76 = (* (( (ptr) (* (ptr) slice←v32532 ))+13) ); return((word) ( *( (fPt) ((* (ptr) pd76 ))))(slice←v32532, attractorParts←v32560, selectedParts←v32588, dragInProgress←v32616, camera←v32644, editConstraints←v32672, pd76) ); }; }; } static void SaveSelections←P900(slice←v32776, parts←v32804, selectClass←v32832) word slice←v32776; word parts←v32804; word selectClass←v32832; { /* SaveSelections: */ SOURCE(3378, 104) SOURCE(3429, 53) { word pd77; pd77 = (* (( (ptr) (* (ptr) slice←v32776 ))+14) ); (void) ( *( (fPt) ((* (ptr) pd77 ))))(slice←v32776, parts←v32804, selectClass←v32832, pd77); }; } static word RemakeSelections←P960(slice←v32892, selectClass←v32920) word slice←v32892; word selectClass←v32920; { word parts←v32964; /* RemakeSelections: */ SOURCE(3486, 111) SOURCE(3486, 111) parts←v32964 = 0; SOURCE(3541, 56) { word pd78; pd78 = (* (( (ptr) (* (ptr) slice←v32892 ))+15) ); parts←v32964 = (word) ( *( (fPt) ((* (ptr) pd78 ))))(slice←v32892, selectClass←v32920, pd78); }; SOURCE(3486, 111) return(parts←v32964); } static void Transform←P1020(slice←v33024, parts←v33052, transform←v33080, editConstraints←v33108, history←v33136) word slice←v33024; word parts←v33052; word transform←v33080; word editConstraints←v33108; word history←v33136; { register ptr gf←c65488 = (ptr) &globalframe; word oldValue←v8848; /* Transform: */ SOURCE(3602, 390) SOURCE(3644, 46) oldValue←v8848 = XR←NewObject(8, (* (( (ptr) gf←c65488)+8) )); SOURCE(3692, 30) (* (ptr) oldValue←v8848 ) = transform←v33080; SOURCE(3781, 42) (* (( (ptr) oldValue←v8848)+1) ) = editConstraints←v33108; SOURCE(3825, 72) { word pd79; pd79 = (* (( (ptr) (* (ptr) slice←v33024 ))+16) ); (void) ( *( (fPt) ((* (ptr) pd79 ))))(slice←v33024, parts←v33052, transform←v33080, editConstraints←v33108, history←v33136, pd79) ; }; SOURCE(3899, 93) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65488)+49) ), slice←v33024, parts←v33052, oldValue←v8848, history←v33136); } static word Describe←P1080(sliceD←v33196) word sliceD←v33196; { word rope←v33240; /* Describe: */ SOURCE(3997, 82) SOURCE(3997, 82) rope←v33240 = 0; SOURCE(4036, 43) { word pd80; pd80 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v33196 ) ))+17) ); return((word) ( *( (fPt) ((* (ptr) pd80 ))))(sliceD←v33196, pd80)); }; } static word DescribeHit←P1140(slice←v33300, hitData←v33328) word slice←v33300; word hitData←v33328; { word rope←v33372; /* DescribeHit: */ SOURCE(4083, 92) SOURCE(4083, 92) rope←v33372 = 0; SOURCE(4128, 47) { word pd81; pd81 = (* (( (ptr) (* (ptr) slice←v33300 ))+18) ); return((word) ( *( (fPt) ((* (ptr) pd81 ))))(slice←v33300, hitData←v33328, pd81)); }; } static void Fileout←P1200(slice←v33432, f←v33460) word slice←v33432; word f←v33460; { /* Fileout: */ SOURCE(4179, 66) SOURCE(4216, 29) { word pd82; pd82 = (* (( (ptr) (* (ptr) slice←v33432 ))+19) ); (void) ( *( (fPt) ((* (ptr) pd82 ))))(slice←v33432, f←v33460, pd82); }; } static word Filein←P1260(f←v33520, version←v33548, router←v33576, camera←v33604) word f←v33520; word version←v33548; word router←v33576; word camera←v33604; { word slice←v33648; /* Filein: */ SOURCE(4249, 89) SOURCE(4249, 89) slice←v33648 = 0; SOURCE(4284, 54) { word pd83; pd83 = (* (( (ptr) (* (ptr) slice←v33648 ))+20) ); return((word) ( *( (fPt) ((* (ptr) pd83 ))))(f←v33520, version←v33548, router←v33576, camera←v33604, pd83)); }; } static word IsEmptyParts←P1320(sliceD←v33708) word sliceD←v33708; { word var←c33752; /* IsEmptyParts: */ SOURCE(4342, 95) SOURCE(4390, 47) { word pd84; pd84 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v33708 ) ))+21) ); return((word) ( *( (fPt) ((* (ptr) pd84 ))))(sliceD←v33708, pd84)); }; } static word IsCompleteParts←P1380(sliceD←v33812) word sliceD←v33812; { word var←c33856; /* IsCompleteParts: */ SOURCE(4441, 104) SOURCE(4495, 50) { word pd85; pd85 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v33812 ) ))+22) ); return((word) ( *( (fPt) ((* (ptr) pd85 ))))(sliceD←v33812, pd85)); }; } static word NewParts←P1440(slice←v33916, hitData←v33944, mode←v33972) word slice←v33916; word hitData←v33944; word mode←v33972; { word sliceD←v34016; /* NewParts: */ SOURCE(4549, 89) SOURCE(4549, 89) sliceD←v34016 = 0; SOURCE(4588, 50) { word pd86; pd86 = (* (( (ptr) (* (ptr) slice←v33916 ))+23) ); return((word) ( *( (fPt) ((* (ptr) pd86 ))))(slice←v33916, hitData←v33944, mode←v33972, pd86)); }; } static word UnionParts←P1500(partsA←v34076, partsB←v34104) word partsA←v34076; word partsB←v34104; { word aPlusB←v34148; /* UnionParts: */ SOURCE(4642, 96) SOURCE(4642, 96) aPlusB←v34148 = 0; SOURCE(4685, 53) { word pd87; pd87 = (* (( (ptr) (* (ptr) (* (ptr) partsA←v34076 ) ))+24) ); return((word) ( *( (fPt) ((* (ptr) pd87 ))))(partsA←v34076, partsB←v34104, pd87)); }; } static word DifferenceParts←P1560(partsA←v34208, partsB←v34236) word partsA←v34208; word partsB←v34236; { word aMinusB←v34280; /* DifferenceParts: */ SOURCE(4742, 111) SOURCE(4742, 111) aMinusB←v34280 = 0; SOURCE(4795, 58) { word pd88; pd88 = (* (( (ptr) (* (ptr) (* (ptr) partsA←v34208 ) ))+25) ); return((word) ( *( (fPt) ((* (ptr) pd88 ))))(partsA←v34208, partsB←v34236, pd88)); }; } static void MovingParts←P1620(formal←c0224, slice←v34340, selectedParts←v34368, editConstraints←v34396, bezierDrag←v34424) word formal←c0224; word slice←v34340; word selectedParts←v34368; word editConstraints←v34396; W5 bezierDrag←v34424; { word background←v34468; word overlay←v34496; word rubber←v34524; word drag←v34552; /* MovingParts: */ SOURCE(4857, 156) SOURCE(4857, 156) background←v34468 = 0; SOURCE(4857, 156) overlay←v34496 = 0; SOURCE(4857, 156) rubber←v34524 = 0; SOURCE(4857, 156) drag←v34552 = 0; SOURCE(4901, 112) { W4 var←c61488; { word pd89; pd89 = (* (( (ptr) (* (ptr) slice←v34340 ))+26) ); (void) ( *( (fPt) ((* (ptr) pd89 ))))((word) &var←c61488, slice←v34340, selectedParts←v34368, editConstraints←v34396, bezierDrag←v34424, pd89) ; }; drag←v34552 = var←c61488.f3; rubber←v34524 = var←c61488.f2; overlay←v34496 = var←c61488.f1; background←v34468 = var←c61488.f0; }; /* removed tail goto */ (* (ptr) formal←c0224 ) = background←v34468; (* (( (ptr) formal←c0224)+1) ) = overlay←v34496; (* (( (ptr) formal←c0224)+2) ) = rubber←v34524; (* (( (ptr) formal←c0224)+3) ) = drag←v34552; return; } static word AugmentParts←P1680(sliceD←v34612, selectClass←v34640) word sliceD←v34612; word selectClass←v34640; { word more←v34684; /* AugmentParts: */ SOURCE(5017, 107) SOURCE(5017, 107) more←v34684 = 0; SOURCE(5064, 60) { word pd90; pd90 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v34612 ) ))+27) ); return((word) ( *( (fPt) ((* (ptr) pd90 ))))(sliceD←v34612, selectClass←v34640, pd90)); }; } static word AlterParts←P1740(sliceD←v34744, action←v34772) word sliceD←v34744; word action←v34772; { word alteredD←v34816; /* AlterParts: */ SOURCE(5128, 96) SOURCE(5128, 96) alteredD←v34816 = 0; SOURCE(5171, 53) { word pd91; pd91 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v34744 ) ))+28) ); return((word) ( *( (fPt) ((* (ptr) pd91 ))))(sliceD←v34744, action←v34772, pd91)); }; } static void SetSelectedFields←P1800(sliceD←v34876, selected←v34904, selectClass←v34932) word sliceD←v34876; word selected←v34904; word selectClass←v34932; { /* SetSelectedFields: */ SOURCE(5228, 123) SOURCE(5284, 67) { word pd92; pd92 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v34876 ) ))+29) ); (void) ( *( (fPt) ((* (ptr) pd92 ))))(sliceD←v34876, selected←v34904, selectClass←v34932, pd92); }; } static word PointsInDescriptor←P1860(sliceD←v34992) word sliceD←v34992; { word pointGen←v35036; /* PointsInDescriptor: */ SOURCE(5355, 112) SOURCE(5355, 112) pointGen←v35036 = 0; SOURCE(5414, 53) { word pd93; pd93 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v34992 ) ))+30) ); return((word) ( *( (fPt) ((* (ptr) pd93 ))))(sliceD←v34992, pd93)); }; } static void WalkPointsInDescriptor←P1920(sliceD←v35096, walkProc←v35124) word sliceD←v35096; word walkProc←v35124; { /* WalkPointsInDescriptor: */ SOURCE(5471, 126) SOURCE(5538, 59) { word pd94; pd94 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v35096 ) ))+31) ); (void) ( *( (fPt) ((* (ptr) pd94 ))))(sliceD←v35096, walkProc←v35124, pd94); }; } static word PointPairsInDescriptor←P1980(sliceD←v35184) word sliceD←v35184; { word pointPairGen←v35228; /* PointPairsInDescriptor: */ SOURCE(5601, 124) SOURCE(5601, 124) pointPairGen←v35228 = 0; SOURCE(5668, 57) { word pd95; pd95 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v35184 ) ))+32) ); return((word) ( *( (fPt) ((* (ptr) pd95 ))))(sliceD←v35184, pd95)); }; } static word SegmentsInDescriptor←P2040(sliceD←v35288) word sliceD←v35288; { word segGen←v35332; /* SegmentsInDescriptor: */ SOURCE(5729, 118) SOURCE(5729, 118) segGen←v35332 = 0; SOURCE(5792, 55) { word pd96; pd96 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v35288 ) ))+33) ); return((word) ( *( (fPt) ((* (ptr) pd96 ))))(sliceD←v35288, pd96)); }; } static word WalkSegments←P2100(slice←v35392, walkProc←v35420) word slice←v35392; word walkProc←v35420; { word sliceD←v35464; /* WalkSegments: */ SOURCE(5851, 96) SOURCE(5851, 96) sliceD←v35464 = 0; SOURCE(5898, 49) { word pd97; pd97 = (* (( (ptr) (* (ptr) slice←v35392 ))+34) ); return((word) ( *( (fPt) ((* (ptr) pd97 ))))(slice←v35392, walkProc←v35420, pd97)); }; } static void NextPoint←P2160(formal←c0250, slice←v35524, pointGen←v35552) word formal←c0250; word slice←v35524; word pointGen←v35552; { W3 pointAndDone←v35596; /* NextPoint: */ SOURCE(5951, 87) SOURCE(5992, 46) { W3 var←c61744; { word pd98; pd98 = (* (( (ptr) (* (ptr) slice←v35524 ))+35) ); (void) ( *( (fPt) ((* (ptr) pd98 ))))((word) &var←c61744, slice←v35524, pointGen←v35552, pd98); }; pointAndDone←v35596 = var←c61744; /* removed tail goto */ }; (* (W3Pt) formal←c0250 ) = pointAndDone←v35596; return; } static void NextPointPair←P2220(formal←c0256, slice←v35656, pointPairGen←v35684) word formal←c0256; word slice←v35656; word pointPairGen←v35684; { W5 pointPairAndDone←v35728; /* NextPointPair: */ SOURCE(6042, 103) SOURCE(6091, 54) { W5 var←c61808; { word pd99; pd99 = (* (( (ptr) (* (ptr) slice←v35656 ))+36) ); (void) ( *( (fPt) ((* (ptr) pd99 ))))((word) &var←c61808, slice←v35656, pointPairGen←v35684, pd99); }; pointPairAndDone←v35728 = var←c61808; /* removed tail goto */ }; (* (W5Pt) formal←c0256 ) = pointPairAndDone←v35728; return; } static void NextSegment←P2280(formal←c0263, slice←v35788, segGen←v35816) word formal←c0263; word slice←v35788; word segGen←v35816; { word seg←v35860; word transform←v35888; /* NextSegment: */ SOURCE(6149, 102) SOURCE(6149, 102) seg←v35860 = 0; SOURCE(6149, 102) transform←v35888 = 0; SOURCE(6194, 57) { W2 var←c61840; { word pd100; pd100 = (* (( (ptr) (* (ptr) slice←v35788 ))+37) ); (void) ( *( (fPt) ((* (ptr) pd100 ))))((word) &var←c61840, slice←v35788, segGen←v35816, pd100); }; transform←v35888 = var←c61840.f1; seg←v35860 = var←c61840.f0; }; /* removed tail goto */ (* (ptr) formal←c0263 ) = seg←v35860; (* (( (ptr) formal←c0263)+1) ) = transform←v35888; return; } static void ClosestPoint←P2340(formal←c0274, sliceD←v35948, testPoint←v35976, tolerance←v36004) word formal←c0274; word sliceD←v35948; W2 testPoint←v35976; word tolerance←v36004; { W2 bestPoint←v36048; word bestDist←v36076; W2 bestNormal←v36104; word hitData←v36132; word success←v36160; /* ClosestPoint: */ SOURCE(6255, 162) SOURCE(6255, 162) hitData←v36132 = 0; SOURCE(6302, 115) { W7 var←c61872; { word pd101; pd101 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v35948 ) ))+38) ); (void) ( *( (fPt) ((* (ptr) pd101 ))))((word) &var←c61872, sliceD←v35948, testPoint←v35976, tolerance←v36004, pd101); }; success←v36160 = var←c61872.f6; hitData←v36132 = var←c61872.f5; bestNormal←v36104 = (* (W2Pt) (( (ptr) &var←c61872)+3) ); bestDist←v36076 = var←c61872.f2; bestPoint←v36048 = (* (W2Pt) &var←c61872 ); }; /* removed tail goto */ (* (W2Pt) formal←c0274 ) = bestPoint←v36048; (* (( (ptr) formal←c0274)+2) ) = bestDist←v36076; (* (W2Pt) (( (ptr) formal←c0274)+3) ) = bestNormal←v36104; (* (( (ptr) formal←c0274)+5) ) = hitData←v36132; (* (( (ptr) formal←c0274)+6) ) = success←v36160; return; } static void ClosestJointToHitData←P2400(formal←c0284, sliceD←v36220, mapPoint←v36248, testPoint←v36276, hitData←v36304) word formal←c0284; word sliceD←v36220; W2 mapPoint←v36248; W2 testPoint←v36276; word hitData←v36304; { word jointD←v36348; W2 point←v36376; W2 normal←v36404; /* ClosestJointToHitData: */ SOURCE(6421, 169) SOURCE(6421, 169) jointD←v36348 = 0; SOURCE(6486, 104) { W5 var←c61904; { word pd102; pd102 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v36220 ) ))+39) ); (void) ( *( (fPt) ((* (ptr) pd102 ))))((word) &var←c61904, sliceD←v36220, mapPoint←v36248, testPoint←v36276, hitData←v36304, pd102) ; }; normal←v36404 = (* (W2Pt) (( (ptr) &var←c61904)+3) ); point←v36376 = (* (W2Pt) (( (ptr) &var←c61904)+1) ); jointD←v36348 = var←c61904.f0; }; /* removed tail goto */ (* (ptr) formal←c0284 ) = jointD←v36348; (* (W2Pt) (( (ptr) formal←c0284)+1) ) = point←v36376; (* (W2Pt) (( (ptr) formal←c0284)+3) ) = normal←v36404; return; } static void ClosestPointAndTangent←P2460(formal←c0295, sliceD←v36464, testPoint←v36492, tolerance←v36520) word formal←c0295; word sliceD←v36464; W2 testPoint←v36492; word tolerance←v36520; { W2 bestPoint←v36564; word bestDist←v36592; W2 tangent←v36620; word hitData←v36648; word success←v36676; /* ClosestPointAndTangent: */ SOURCE(6594, 189) SOURCE(6594, 189) hitData←v36648 = 0; SOURCE(6661, 122) { W7 var←c61936; { word pd103; pd103 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v36464 ) ))+40) ); (void) ( *( (fPt) ((* (ptr) pd103 ))))((word) &var←c61936, sliceD←v36464, testPoint←v36492, tolerance←v36520, pd103); }; success←v36676 = var←c61936.f6; hitData←v36648 = var←c61936.f5; tangent←v36620 = (* (W2Pt) (( (ptr) &var←c61936)+3) ); bestDist←v36592 = var←c61936.f2; bestPoint←v36564 = (* (W2Pt) &var←c61936 ); }; /* removed tail goto */ (* (W2Pt) formal←c0295 ) = bestPoint←v36564; (* (( (ptr) formal←c0295)+2) ) = bestDist←v36592; (* (W2Pt) (( (ptr) formal←c0295)+3) ) = tangent←v36620; (* (( (ptr) formal←c0295)+5) ) = hitData←v36648; (* (( (ptr) formal←c0295)+6) ) = success←v36676; return; } static void ClosestSegment←P2520(formal←c0306, sliceD←v36736, testPoint←v36764, tolerance←v36792) word formal←c0306; word sliceD←v36736; W2 testPoint←v36764; word tolerance←v36792; { W2 bestPoint←v36836; word bestDist←v36864; W2 bestNormal←v36892; word hitData←v36920; word success←v36948; /* ClosestSegment: */ SOURCE(6787, 169) SOURCE(6787, 169) hitData←v36920 = 0; SOURCE(6838, 118) { W7 var←c61968; { word pd104; pd104 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v36736 ) ))+41) ); (void) ( *( (fPt) ((* (ptr) pd104 ))))((word) &var←c61968, sliceD←v36736, testPoint←v36764, tolerance←v36792, pd104); }; success←v36948 = var←c61968.f6; hitData←v36920 = var←c61968.f5; bestNormal←v36892 = (* (W2Pt) (( (ptr) &var←c61968)+3) ); bestDist←v36864 = var←c61968.f2; bestPoint←v36836 = (* (W2Pt) &var←c61968 ); }; /* removed tail goto */ (* (W2Pt) formal←c0306 ) = bestPoint←v36836; (* (( (ptr) formal←c0306)+2) ) = bestDist←v36864; (* (W2Pt) (( (ptr) formal←c0306)+3) ) = bestNormal←v36892; (* (( (ptr) formal←c0306)+5) ) = hitData←v36920; (* (( (ptr) formal←c0306)+6) ) = success←v36948; return; } static void FilledPathsUnderPoint←P2580(formal←c0316, slice←v37008, point←v37036, tolerance←v37064) word formal←c0316; word slice←v37008; W2 point←v37036; word tolerance←v37064; { register ptr gf←c65520 = (ptr) &globalframe; word hitData←v37108; word moreHitDatas←v37136; /* FilledPathsUnderPoint: */ SOURCE(6960, 251) SOURCE(6960, 251) hitData←v37108 = 0; SOURCE(6960, 251) moreHitDatas←v37136 = 0; SOURCE(7025, 186) if (((* (( (ptr) (* (ptr) slice←v37008 ))+42) ) == 0)) { SOURCE(7073, 71) { W2 var←c62000; { word pd105; pd105 = (* (( (ptr) (* (( (ptr) gf←c65520)+211)/* var←c61168 */ ))+110) ); (void) ( *( (fPt) ((* (ptr) pd105 ))))((word) &var←c62000, slice←v37008, point←v37036, tolerance←v37064, pd105); }; hitData←v37108 = var←c62000.f0; moreHitDatas←v37136 = var←c62000.f1; /* removed tail goto */ }; } else { SOURCE(7146, 65) { W2 var←c62032; { word pd106; pd106 = (* (( (ptr) (* (ptr) slice←v37008 ))+42) ); (void) ( *( (fPt) ((* (ptr) pd106 ))))((word) &var←c62032, slice←v37008, point←v37036, tolerance←v37064, pd106); }; hitData←v37108 = var←c62032.f0; moreHitDatas←v37136 = var←c62032.f1; /* removed tail goto */ }; }; (* (ptr) formal←c0316 ) = hitData←v37108; (* (( (ptr) formal←c0316)+1) ) = moreHitDatas←v37136; return; } static void LineIntersection←P2640(formal←c0323, sliceD←v37196, line←v37224) word formal←c0323; word sliceD←v37196; word line←v37224; { word points←v37268; word pointCount←v37296; /* LineIntersection: */ SOURCE(7220, 127) SOURCE(7220, 127) points←v37268 = 0; SOURCE(7275, 72) { W2 var←c62064; { word pd107; pd107 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v37196 ) ))+43) ); (void) ( *( (fPt) ((* (ptr) pd107 ))))((word) &var←c62064, sliceD←v37196, line←v37224, pd107); }; pointCount←v37296 = var←c62064.f1; points←v37268 = var←c62064.f0; }; /* removed tail goto */ (* (ptr) formal←c0323 ) = points←v37268; (* (( (ptr) formal←c0323)+1) ) = pointCount←v37296; return; } static void CircleIntersection←P2700(formal←c0330, sliceD←v37356, circle←v37384) word formal←c0330; word sliceD←v37356; word circle←v37384; { word points←v37428; word pointCount←v37456; /* CircleIntersection: */ SOURCE(7351, 135) SOURCE(7351, 135) points←v37428 = 0; SOURCE(7410, 76) { W2 var←c62096; { word pd108; pd108 = (* (( (ptr) (* (ptr) (* (ptr) sliceD←v37356 ) ))+44) ); (void) ( *( (fPt) ((* (ptr) pd108 ))))((word) &var←c62096, sliceD←v37356, circle←v37384, pd108); }; pointCount←v37456 = var←c62096.f1; points←v37428 = var←c62096.f0; }; /* removed tail goto */ (* (ptr) formal←c0330 ) = points←v37428; (* (( (ptr) formal←c0330)+1) ) = pointCount←v37456; return; } static word HitDataAsSimpleCurve←P2760(slice←v37516, hitData←v37544) word slice←v37516; word hitData←v37544; { word simpleCurve←v37588; /* HitDataAsSimpleCurve: */ SOURCE(7490, 119) SOURCE(7490, 119) simpleCurve←v37588 = 0; SOURCE(7553, 56) { word pd109; pd109 = (* (( (ptr) (* (ptr) slice←v37516 ))+45) ); return((word) ( *( (fPt) ((* (ptr) pd109 ))))(slice←v37516, hitData←v37544, pd109)); }; } static void SetDefaults←P2820(slice←v37648, parts←v37676, defaults←v37704, history←v37732) word slice←v37648; word parts←v37676; word defaults←v37704; word history←v37732; { /* SetDefaults: */ SOURCE(7613, 102) SOURCE(7659, 56) { word pd110; pd110 = (* (( (ptr) (* (ptr) slice←v37648 ))+46) ); (void) ( *( (fPt) ((* (ptr) pd110 ))))(slice←v37648, parts←v37676, defaults←v37704, history←v37732, pd110); }; } static word SetStrokeWidth←P2880(slice←v37792, parts←v37820, strokeWidth←v37848, history←v37876) word slice←v37792; word parts←v37820; word strokeWidth←v37848; word history←v37876; { register ptr gf←c65552 = (ptr) &globalframe; word box←v37920; word oldValue←v8904; /* SetStrokeWidth: */ SOURCE(7720, 320) SOURCE(7720, 320) box←v37920 = 0; SOURCE(7772, 85) { W2 var←c0345; word var←c62160; word var←c62192; { word pd111; pd111 = (* (( (ptr) (* (ptr) slice←v37792 ))+48) ); (void) ( *( (fPt) ((* (ptr) pd111 ))))((word) &var←c0345, slice←v37792, parts←v37820, pd111); }; var←c62160 = var←c0345.f0; var←c62192 = XR←NewObject(4, (* (( (ptr) gf←c65552)+12) )); (* (ptr) var←c62192 ) = var←c62160; oldValue←v8904 = var←c62192; }; SOURCE(7859, 68) { word pd112; pd112 = (* (( (ptr) (* (ptr) slice←v37792 ))+47) ); box←v37920 = (word) ( *( (fPt) ((* (ptr) pd112 ))))(slice←v37792, parts←v37820, strokeWidth←v37848, history←v37876, pd112) ; }; SOURCE(7929, 98) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65552)+45) ), slice←v37792, parts←v37820, oldValue←v8904, history←v37876); SOURCE(8029, 11) return(box←v37920); } static void GetStrokeWidth←P2940(formal←c0353, slice←v37980, parts←v38008) word formal←c0353; word slice←v37980; word parts←v38008; { word strokeWidth←v38052; word isUnique←v38080; /* GetStrokeWidth: */ SOURCE(8045, 99) SOURCE(8045, 99) strokeWidth←v38052 = (* (ptr) &fc113 ); SOURCE(8045, 99) isUnique←v38080 = 1; SOURCE(8097, 47) { W2 var←c62224; { word pd114; pd114 = (* (( (ptr) (* (ptr) slice←v37980 ))+48) ); (void) ( *( (fPt) ((* (ptr) pd114 ))))((word) &var←c62224, slice←v37980, parts←v38008, pd114); }; strokeWidth←v38052 = var←c62224.f0; isUnique←v38080 = var←c62224.f1; /* removed tail goto */ }; (* (ptr) formal←c0353 ) = strokeWidth←v38052; (* (( (ptr) formal←c0353)+1) ) = isUnique←v38080; return; } static void SetStrokeEnd←P3000(slice←v38140, parts←v38168, strokeEnd←v38196, history←v38224) word slice←v38140; word parts←v38168; word strokeEnd←v38196; word history←v38224; { register ptr gf←c65584 = (ptr) &globalframe; word oldValue←v8960; /* SetStrokeEnd: */ SOURCE(8149, 317) SOURCE(8197, 46) oldValue←v8960 = XR←NewObject(4, (* (( (ptr) gf←c65584)+14) )); SOURCE(8245, 63) { word var←c62256; W2 var←c0360; { word pd115; pd115 = (* (( (ptr) (* (ptr) slice←v38140 ))+50) ); (void) ( *( (fPt) ((* (ptr) pd115 ))))((word) &var←c0360, slice←v38140, parts←v38168, pd115); }; var←c62256 = var←c0360.f0; (* (ptr) oldValue←v8960 ) = var←c62256; }; SOURCE(8310, 58) { word pd116; pd116 = (* (( (ptr) (* (ptr) slice←v38140 ))+49) ); (void) ( *( (fPt) ((* (ptr) pd116 ))))(slice←v38140, parts←v38168, strokeEnd←v38196, history←v38224, pd116); }; SOURCE(8370, 96) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65584)+44) ), slice←v38140, parts←v38168, oldValue←v8960, history←v38224); } static void GetStrokeEnd←P3060(formal←c0367, slice←v38284, parts←v38312) word formal←c0367; word slice←v38284; word parts←v38312; { word strokeEnd←v38356; word isUnique←v38384; /* GetStrokeEnd: */ SOURCE(8471, 93) SOURCE(8471, 93) strokeEnd←v38356 = 2; SOURCE(8471, 93) isUnique←v38384 = 1; SOURCE(8519, 45) { W2 var←c62288; { word pd117; pd117 = (* (( (ptr) (* (ptr) slice←v38284 ))+50) ); (void) ( *( (fPt) ((* (ptr) pd117 ))))((word) &var←c62288, slice←v38284, parts←v38312, pd117); }; strokeEnd←v38356 = var←c62288.f0; isUnique←v38384 = var←c62288.f1; /* removed tail goto */ }; (* (ptr) formal←c0367 ) = strokeEnd←v38356; (* (( (ptr) formal←c0367)+1) ) = isUnique←v38384; return; } static void SetStrokeJoint←P3120(slice←v38444, parts←v38472, strokeJoint←v38500, history←v38528) word slice←v38444; word parts←v38472; word strokeJoint←v38500; word history←v38528; { register ptr gf←c65616 = (ptr) &globalframe; word oldValue←v9016; /* SetStrokeJoint: */ SOURCE(8569, 337) SOURCE(8621, 50) oldValue←v9016 = XR←NewObject(4, (* (( (ptr) gf←c65616)+16) )); SOURCE(8673, 69) { word var←c62320; W2 var←c0374; { word pd118; pd118 = (* (( (ptr) (* (ptr) slice←v38444 ))+52) ); (void) ( *( (fPt) ((* (ptr) pd118 ))))((word) &var←c0374, slice←v38444, parts←v38472, pd118); }; var←c62320 = var←c0374.f0; (* (ptr) oldValue←v9016 ) = var←c62320; }; SOURCE(8744, 62) { word pd119; pd119 = (* (( (ptr) (* (ptr) slice←v38444 ))+51) ); (void) ( *( (fPt) ((* (ptr) pd119 ))))(slice←v38444, parts←v38472, strokeJoint←v38500, history←v38528, pd119); }; SOURCE(8808, 98) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65616)+43) ), slice←v38444, parts←v38472, oldValue←v9016, history←v38528); } static void GetStrokeJoint←P3180(formal←c0381, slice←v38588, parts←v38616) word formal←c0381; word slice←v38588; word parts←v38616; { word strokeJoint←v38660; word isUnique←v38688; /* GetStrokeJoint: */ SOURCE(8911, 99) SOURCE(8911, 99) strokeJoint←v38660 = 2; SOURCE(8911, 99) isUnique←v38688 = 1; SOURCE(8963, 47) { W2 var←c62352; { word pd120; pd120 = (* (( (ptr) (* (ptr) slice←v38588 ))+52) ); (void) ( *( (fPt) ((* (ptr) pd120 ))))((word) &var←c62352, slice←v38588, parts←v38616, pd120); }; strokeJoint←v38660 = var←c62352.f0; isUnique←v38688 = var←c62352.f1; /* removed tail goto */ }; (* (ptr) formal←c0381 ) = strokeJoint←v38660; (* (( (ptr) formal←c0381)+1) ) = isUnique←v38688; return; } static void SetStrokeColor←P3240(slice←v38748, parts←v38776, color←v38804, setHow←v38832, history←v38860) word slice←v38748; word parts←v38776; word color←v38804; word setHow←v38832; word history←v38860; { register ptr gf←c65648 = (ptr) &globalframe; word oldValue←v9072; W2 var←c0388; /* SetStrokeColor: */ SOURCE(9015, 289) SOURCE(9067, 71) { word pd121; pd121 = (* (( (ptr) (* (ptr) slice←v38748 ))+54) ); (void) ( *( (fPt) ((* (ptr) pd121 ))))((word) &var←c0388, slice←v38748, parts←v38776, pd121); }; oldValue←v9072 = var←c0388.f0; SOURCE(9140, 64) { word pd122; pd122 = (* (( (ptr) (* (ptr) slice←v38748 ))+53) ); (void) ( *( (fPt) ((* (ptr) pd122 ))))(slice←v38748, parts←v38776, color←v38804, setHow←v38832, history←v38860, pd122); }; SOURCE(9206, 98) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65648)+42) ), slice←v38748, parts←v38776, oldValue←v9072, history←v38860); } static void GetStrokeColor←P3300(formal←c0395, slice←v38920, parts←v38948) word formal←c0395; word slice←v38920; word parts←v38948; { word color←v38992; word isUnique←v39020; /* GetStrokeColor: */ SOURCE(9309, 99) SOURCE(9309, 99) color←v38992 = 0; SOURCE(9309, 99) isUnique←v39020 = 1; SOURCE(9361, 47) { W2 var←c62384; { word pd123; pd123 = (* (( (ptr) (* (ptr) slice←v38920 ))+54) ); (void) ( *( (fPt) ((* (ptr) pd123 ))))((word) &var←c62384, slice←v38920, parts←v38948, pd123); }; color←v38992 = var←c62384.f0; isUnique←v39020 = var←c62384.f1; /* removed tail goto */ }; (* (ptr) formal←c0395 ) = color←v38992; (* (( (ptr) formal←c0395)+1) ) = isUnique←v39020; return; } static void SetFillColor←P3360(slice←v39080, parts←v39108, color←v39136, setHow←v39164, history←v39192) word slice←v39080; word parts←v39108; word color←v39136; word setHow←v39164; word history←v39192; { register ptr gf←c65680 = (ptr) &globalframe; word oldValue←v9116; W2 var←c0402; /* SetFillColor: */ SOURCE(9413, 279) SOURCE(9461, 69) { word pd124; pd124 = (* (( (ptr) (* (ptr) slice←v39080 ))+56) ); (void) ( *( (fPt) ((* (ptr) pd124 ))))((word) &var←c0402, slice←v39080, parts←v39108, pd124); }; oldValue←v9116 = var←c0402.f0; SOURCE(9532, 62) { word pd125; pd125 = (* (( (ptr) (* (ptr) slice←v39080 ))+55) ); (void) ( *( (fPt) ((* (ptr) pd125 ))))(slice←v39080, parts←v39108, color←v39136, setHow←v39164, history←v39192, pd125); }; SOURCE(9596, 96) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65680)+27) ), slice←v39080, parts←v39108, oldValue←v9116, history←v39192); } static void GetFillColor←P3420(formal←c0409, slice←v39252, parts←v39280) word formal←c0409; word slice←v39252; word parts←v39280; { word color←v39324; word isUnique←v39352; /* GetFillColor: */ SOURCE(9697, 93) SOURCE(9697, 93) color←v39324 = 0; SOURCE(9697, 93) isUnique←v39352 = 1; SOURCE(9745, 45) { W2 var←c62416; { word pd126; pd126 = (* (( (ptr) (* (ptr) slice←v39252 ))+56) ); (void) ( *( (fPt) ((* (ptr) pd126 ))))((word) &var←c62416, slice←v39252, parts←v39280, pd126); }; color←v39324 = var←c62416.f0; isUnique←v39352 = var←c62416.f1; /* removed tail goto */ }; (* (ptr) formal←c0409 ) = color←v39324; (* (( (ptr) formal←c0409)+1) ) = isUnique←v39352; return; } static void SetArrows←P3480(slice←v39412, parts←v39440, leftDown←v39468, rightUp←v39496, history←v39524) word slice←v39412; word parts←v39440; word leftDown←v39468; word rightUp←v39496; word history←v39524; { register ptr gf←c65712 = (ptr) &globalframe; word oldValue←v9160; /* SetArrows: */ SOURCE(9795, 310) SOURCE(9837, 38) oldValue←v9160 = XR←NewObject(8, (* (( (ptr) gf←c65712)+20) )); SOURCE(9877, 68) { W2 var←c62480; { word pd127; pd127 = (* (( (ptr) (* (ptr) slice←v39412 ))+58) ); (void) ( *( (fPt) ((* (ptr) pd127 ))))((word) &var←c62480, slice←v39412, pd127); }; (* (( (ptr) oldValue←v9160)+1) ) = var←c62480.f1; (* (ptr) oldValue←v9160 ) = var←c62480.f0; }; SOURCE(9947, 63) { word pd128; pd128 = (* (( (ptr) (* (ptr) slice←v39412 ))+57) ); (void) ( *( (fPt) ((* (ptr) pd128 ))))(slice←v39412, parts←v39440, leftDown←v39468, rightUp←v39496, history←v39524, pd128) ; }; SOURCE(10012, 93) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65712)+26) ), slice←v39412, parts←v39440, oldValue←v9160, history←v39524); } static void GetArrows←P3540(formal←c0423, slice←v39584) word formal←c0423; word slice←v39584; { word leftDown←v39628; word rightUp←v39656; /* GetArrows: */ SOURCE(10110, 77) SOURCE(10110, 77) leftDown←v39628 = 0; SOURCE(10110, 77) rightUp←v39656 = 0; SOURCE(10152, 35) { W2 var←c62512; { word pd129; pd129 = (* (( (ptr) (* (ptr) slice←v39584 ))+58) ); (void) ( *( (fPt) ((* (ptr) pd129 ))))((word) &var←c62512, slice←v39584, pd129); }; leftDown←v39628 = var←c62512.f0; rightUp←v39656 = var←c62512.f1; /* removed tail goto */ }; (* (ptr) formal←c0423 ) = leftDown←v39628; (* (( (ptr) formal←c0423)+1) ) = rightUp←v39656; return; } static void SetDashed←P3600(slice←v39716, parts←v39744, dashed←v39772, pattern←v39800, offset←v39828, length←v39856, history←v39884) word slice←v39716; word parts←v39744; word dashed←v39772; word pattern←v39800; word offset←v39828; word length←v39856; word history←v39884; { register ptr gf←c65744 = (ptr) &globalframe; word oldValue←v9216; /* SetDashed: */ SOURCE(10192, 365) SOURCE(10234, 40) oldValue←v9216 = XR←NewObject(16, (* (( (ptr) gf←c65744)+22) )); SOURCE(10276, 107) { W5 var←c62576; { word pd130; pd130 = (* (( (ptr) (* (ptr) slice←v39716 ))+60) ); (void) ( *( (fPt) ((* (ptr) pd130 ))))((word) &var←c62576, slice←v39716, parts←v39744, pd130); }; (* (( (ptr) oldValue←v9216)+3) ) = var←c62576.f3; (* (( (ptr) oldValue←v9216)+2) ) = var←c62576.f2; (* (( (ptr) oldValue←v9216)+1) ) = var←c62576.f1; (* (ptr) oldValue←v9216 ) = var←c62576.f0; }; SOURCE(10385, 77) { word pd131; pd131 = (* (( (ptr) (* (ptr) slice←v39716 ))+59) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))(slice←v39716, parts←v39744, dashed←v39772, pattern←v39800, offset←v39828, length←v39856 , history←v39884, pd131); }; SOURCE(10464, 93) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65744)+24) ), slice←v39716, parts←v39744, oldValue←v9216, history←v39884); } static void GetDashed←P3660(formal←c0443, slice←v39944, parts←v39972) word formal←c0443; word slice←v39944; word parts←v39972; { word dashed←v40016; word pattern←v40044; word offset←v40072; word length←v40100; word isUnique←v40128; /* GetDashed: */ SOURCE(10562, 84) SOURCE(10562, 84) dashed←v40016 = 0; SOURCE(10562, 84) pattern←v40044 = 0; SOURCE(10562, 84) offset←v40072 = (* (ptr) &fc113 ); SOURCE(10562, 84) length←v40100 = (* (ptr) &fc113 ); SOURCE(10562, 84) isUnique←v40128 = 1; SOURCE(10604, 42) { W5 var←c62608; { word pd132; pd132 = (* (( (ptr) (* (ptr) slice←v39944 ))+60) ); (void) ( *( (fPt) ((* (ptr) pd132 ))))((word) &var←c62608, slice←v39944, parts←v39972, pd132); }; dashed←v40016 = var←c62608.f0; pattern←v40044 = var←c62608.f1; offset←v40072 = var←c62608.f2; length←v40100 = var←c62608.f3; isUnique←v40128 = var←c62608.f4; /* removed tail goto */ }; (* (ptr) formal←c0443 ) = dashed←v40016; (* (( (ptr) formal←c0443)+1) ) = pattern←v40044; (* (( (ptr) formal←c0443)+2) ) = offset←v40072; (* (( (ptr) formal←c0443)+3) ) = length←v40100; (* (( (ptr) formal←c0443)+4) ) = isUnique←v40128; return; } static word SetOrientation←P3720(slice←v40188, parts←v40216, orientation←v40244, history←v40272) word slice←v40188; word parts←v40216; word orientation←v40244; word history←v40272; { register ptr gf←c65776 = (ptr) &globalframe; word success←v40316; word oldValue←v9272; /* SetOrientation: */ SOURCE(10651, 342) SOURCE(10703, 50) oldValue←v9272 = XR←NewObject(4, (* (( (ptr) gf←c65776)+23) )); SOURCE(10755, 66) { word var←c62640; W2 var←c0451; { word pd133; pd133 = (* (( (ptr) (* (ptr) slice←v40188 ))+62) ); (void) ( *( (fPt) ((* (ptr) pd133 ))))((word) &var←c0451, slice←v40188, parts←v40216, pd133); }; var←c62640 = var←c0451.f0; (* (ptr) oldValue←v9272 ) = var←c62640; }; SOURCE(10823, 72) { word pd134; pd134 = (* (( (ptr) (* (ptr) slice←v40188 ))+61) ); success←v40316 = (word) ( *( (fPt) ((* (ptr) pd134 ))))(slice←v40188, parts←v40216, orientation←v40244, history←v40272, pd134) ; }; SOURCE(10897, 96) (void) GenericPropsUndo←P4380((* (( (ptr) gf←c65776)+25) ), slice←v40188, 0, oldValue←v9272, history←v40272); SOURCE(10651, 342) return(success←v40316); } static void GetOrientation←P3780(formal←c0458, slice←v40376, parts←v40404) word formal←c0458; word slice←v40376; word parts←v40404; { word orientation←v40448; word isUnique←v40476; /* GetOrientation: */ SOURCE(10999, 99) SOURCE(10999, 99) isUnique←v40476 = 1; SOURCE(11051, 47) { W2 var←c62672; { word pd135; pd135 = (* (( (ptr) (* (ptr) slice←v40376 ))+62) ); (void) ( *( (fPt) ((* (ptr) pd135 ))))((word) &var←c62672, slice←v40376, parts←v40404, pd135); }; orientation←v40448 = var←c62672.f0; isUnique←v40476 = var←c62672.f1; /* removed tail goto */ }; (* (ptr) formal←c0458 ) = orientation←v40448; (* (( (ptr) formal←c0458)+1) ) = isUnique←v40476; return; } static void FileoutSlice←P3840(f←v6740, slice←v6768) word f←v6740; word slice←v6768; { register ptr gf←c65808 = (ptr) &globalframe; word type←v9328; /* FileoutSlice: */ SOURCE(11259, 237) SOURCE(11318, 38) { word pd136; pd136 = (* (( (ptr) (* (( (ptr) gf←c65808)+212)/* var←c62704 */ ))+6) ); type←v9328 = (word) ( *( (fPt) ((* (ptr) pd136 ))))(slice←v6768, pd136); }; SOURCE(11358, 44) { word var←c62736; { word pd137; pd137 = (* (( (ptr) (* (( (ptr) gf←c65808)+213)/* var←c62768 */ ))+9) ); var←c62736 = (word) ( *( (fPt) ((* (ptr) pd137 ))))(type←v9328, pd137); }; { W2 var←c62800; var←c62800.f0 = 11; var←c62800.f1 = var←c62736; { word pd138; pd138 = (* (( (ptr) (* (( (ptr) gf←c65808)+214)/* var←c62832 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd138 ))))(f←v6740, (* (( (ptr) gf←c65808)+28) ), var←c62800, pd138); }; }; }; SOURCE(11404, 28) { word pd139; pd139 = (* (( (ptr) (* (( (ptr) gf←c65808)+212)/* var←c62704 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd139 ))))(slice←v6768, f←v6740, pd139); }; SOURCE(11434, 62) { word pd140; pd140 = (* (( (ptr) (* (( (ptr) gf←c65808)+215)/* var←c62864 */ ))+63) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd140 ))))(type←v9328, pd140))) { SOURCE(11474, 22) (void) FileoutPList←P3900(f←v6740, slice←v6768); }; }; } static void FileoutPList←P3900(formal←c0673, slice←v6856) word formal←c0673; word slice←v6856; { W7 var←c65840; /* declaration of f←v6828 skipped */ register ptr gf←c65872 = (ptr) &globalframe; /* declaration of var←c62896 skipped */ word buttonClassName←v9400 = 0; word success←v9428 = 1; var←c65840.f4/* f←v6828 */ = formal←c0673; /* FileoutPList: */ SOURCE(11502, 983) { word tmpAddr141; tmpAddr141 = (word) (( (ptr) &var←c65840)+5)/* var←c62896 */ ; (* (ptr) tmpAddr141 ) = ( ((word) (fPt) FileoutProp←P4800) ); (* (( (ptr) tmpAddr141) + 1) ) = 1; }; SOURCE(12234, 23) { word pd142; pd142 = (* (( (ptr) (* (( (ptr) gf←c65872)+214)/* var←c62832 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd142 ))))(var←c65840.f4/* f←v6828 */ , (* (( (ptr) gf←c65872)+29) ), 0, 2147483647, pd142); }; SOURCE(12321, 101) if (((* (( (ptr) slice←v6856)+22) ) != 0)) { SOURCE(12345, 77) { word var←c62992; { word var←c62928; { word pd143; pd143 = (* (( (ptr) (* (( (ptr) gf←c65872)+212)/* var←c62704 */ ))+29) ); var←c62928 = (word) ( *( (fPt) ((* (ptr) pd143 ))))(slice←v6856, 0, 6, pd143); }; { word pd144; pd144 = (* (( (ptr) (* (( (ptr) gf←c65872)+216)/* var←c62960 */ ))+8) ); var←c62992 = (word) ( *( (fPt) ((* (ptr) pd144 ))))(slice←v6856, var←c62928, (word) (( (bPt) &var←c65840)+20)/* var←c62896 */ , pd144) ; }; }; }; }; SOURCE(12424, 61) { word pd145; pd145 = (* (( (ptr) (* (( (ptr) gf←c65872)+214)/* var←c62832 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd145 ))))(var←c65840.f4/* f←v6828 */ , (* (( (ptr) gf←c65872)+30) ), 0, 2147483647, pd145); }; } static word FileoutProp←P4800(key←v9504, val←v9532, formal←c65936) word key←v9504; word val←v9532; word formal←c65936; { register ptr gf←c65904 = (ptr) &globalframe; word done←v9588; word r←v9616 = 0; word vf←v9644; formal←c65936 = (formal←c65936 - 20); /* FileoutProp: */ SOURCE(11556, 600) SOURCE(11556, 600) done←v9588 = 0; SOURCE(11658, 34) { W2 var←c63024; { word pd146; pd146 = (* (( (ptr) (* (( (ptr) gf←c65904)+216)/* var←c62960 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd146 ))))((word) &var←c63024, key←v9504, val←v9532, pd146); }; vf←v9644 = var←c63024.f1; r←v9616 = var←c63024.f0; }; { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf←c65904)+217)/* var←c63056 */ ))+14) ); if (( (int)(word) ( *( (fPt) ((* (ptr) pd147 ))))(r←v9616, pd147) == (int)0)) { SOURCE(11769, 6) return(done←v9588); } else { if ((vf←v9644 == 1)) { SOURCE(11835, 44) { word var←c63088; { word pd148; pd148 = (* (( (ptr) (* (( (ptr) gf←c65904)+213)/* var←c62768 */ ))+9) ); var←c63088 = (word) ( *( (fPt) ((* (ptr) pd148 ))))(key←v9504, pd148); }; { W2 var←c63120; var←c63120.f0 = 11; var←c63120.f1 = var←c63088; { word pd149; pd149 = (* (( (ptr) (* (( (ptr) gf←c65904)+214)/* var←c62832 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd149 ))))((* (( (ptr) formal←c65936)+4) ), (* (( (ptr) gf←c65904)+31) ), var←c63120, pd149) ; }; }; }; SOURCE(11906, 87) { W2 var←c63152; W2 var←c63184; W2 var←c63216; var←c63152.f0 = 3; var←c63152.f1 = 26; var←c63184.f0 = 11; var←c63184.f1 = r←v9616; var←c63216.f0 = 3; var←c63216.f1 = 7; { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf←c65904)+214)/* var←c62832 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd150 ))))((* (( (ptr) formal←c65936)+4) ), (* (( (ptr) gf←c65904)+32) ), var←c63152, var←c63184, var←c63216, pd150) ; }; }; } else { if ((vf←v9644 == 0)) { SOURCE(12013, 145) { word c←v9688; SOURCE(12015, 23) { word pd151; pd151 = (* (( (ptr) (* (( (ptr) gf←c65904)+217)/* var←c63056 */ ))+14) ); c←v9688 = (word) ( *( (fPt) ((* (ptr) pd151 ))))(r←v9616, pd151); }; SOURCE(12040, 44) { word var←c63248; { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf←c65904)+213)/* var←c62768 */ ))+9) ); var←c63248 = (word) ( *( (fPt) ((* (ptr) pd152 ))))(key←v9504, pd152); }; { W2 var←c63280; var←c63280.f0 = 11; var←c63280.f1 = var←c63248; { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf←c65904)+214)/* var←c62832 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd153 ))))((* (( (ptr) formal←c65936)+4) ), (* (( (ptr) gf←c65904)+31) ), var←c63280, pd153) ; }; }; }; SOURCE(12111, 45) { W2 var←c63312; W2 var←c63344; W2 var←c0668; var←c63312.f0 = 5; var←c63312.f1 = c←v9688; var←c63344.f0 = 11; var←c63344.f1 = r←v9616; (* (ptr) (word) &var←c0668 ) = 0; (* (( (ptr) (word) &var←c0668) + 1) ) = 0; { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf←c65904)+214)/* var←c62832 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd154 ))))((* (( (ptr) formal←c65936)+4) ), (* (( (ptr) gf←c65904)+33) ), var←c63312, var←c63344, var←c0668, pd154) ; }; }; }; } else { SOURCE(12172, 5) (void) XR←RaiseUnnamedError(); }; }; }; }; SOURCE(11556, 600) return(done←v9588); } static word FileinSlice←P3960(f←v6916, version←v6944, router←v6972, camera←v7000, class←v7028) word f←v6916; word version←v6944; word router←v6972; word camera←v7000; word class←v7028; { register ptr gf←c65968 = (ptr) &globalframe; word slice←v7072; word className←v9732; word type←v9760 = 0; /* FileinSlice: */ SOURCE(12489, 876) SOURCE(12489, 876) slice←v7072 = 0; SOURCE(12659, 29) className←v9732 = (* (( (ptr) gf←c65968)+34) ); { word var←c63440; SOURCE(12744, 350) if ((class←v7028 == 0)) { SOURCE(12787, 307) { word x155; word x157; if ((( x155 = version←v6944, *(float*)&x155 ) >= ( x157 = (* (ptr) &fc156 ), *(float*)&x157 ))) { SOURCE(12816, 33) { word pd158; pd158 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+8) ); className←v9732 = (word) ( *( (fPt) ((* (ptr) pd158 ))))(f←v6916, pd158); }; } else { SOURCE(12858, 238) { word childCount←v9804; SOURCE(12877, 32) { word pd159; pd159 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd159 ))))(f←v6916, (* (( (ptr) gf←c65968)+35) ), pd159); }; SOURCE(12911, 33) { word pd160; pd160 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+8) ); className←v9732 = (word) ( *( (fPt) ((* (ptr) pd160 ))))(f←v6916, pd160); }; SOURCE(12946, 25) { word pd161; pd161 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd161 ))))(f←v6916, 41, pd161); }; SOURCE(12973, 25) { word pd162; pd162 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd162 ))))(f←v6916, 91, pd162); }; SOURCE(13000, 33) { word pd163; pd163 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+25) ); childCount←v9804 = (word) ( *( (fPt) ((* (ptr) pd163 ))))(f←v6916, pd163); }; SOURCE(13035, 27) { word pd164; pd164 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd164 ))))(f←v6916, (* (( (ptr) gf←c65968)+36) ), pd164); }; SOURCE(13064, 30) { word pd165; pd165 = (* (( (ptr) (* (( (ptr) gf←c65968)+218)/* var←c63408 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd165 ))))(f←v6916, (* (( (ptr) gf←c65968)+37) ), pd165); }; }; }; }; }; SOURCE(13102, 36) type←v9760 = (word) SliceClassFromRope←P4020(className←v9732); SOURCE(13140, 37) { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf←c65968)+211)/* var←c61168 */ ))+7) ); class←v7028 = (word) ( *( (fPt) ((* (ptr) pd166 ))))(type←v9760, pd166); }; SOURCE(13179, 48) { word pd167; pd167 = (* (( (ptr) class←v7028)+20) ); slice←v7072 = (word) ( *( (fPt) ((* (ptr) pd167 ))))(f←v6916, version←v6944, router←v6972, camera←v7000, pd167); }; SOURCE(13229, 136) { word tc168; word x169; word x171; word pd173; if ( ( (( x169 = version←v6944, *(float*)&x169 ) >= ( x171 = (* (ptr) &fc170 ), *(float*)&x171 )) ? (slice←v7072 != 0) : 0 ) ) { { word pd172; pd172 = (* (( (ptr) (* (( (ptr) gf←c65968)+212)/* var←c62704 */ ))+6) ); var←c63440 = (word) ( *( (fPt) ((* (ptr) pd172 ))))(slice←v7072, pd172); }; pd173 = (* (( (ptr) (* (( (ptr) gf←c65968)+215)/* var←c62864 */ ))+63) ); tc168 = (word) (0 == (word) ( *( (fPt) ((* (ptr) pd173 ))))(var←c63440, pd173)); } else { tc168 = (word) 0; }; if (tc168) { SOURCE(13327, 38) (void) FileinPList←P4080(f←v6916, version←v6944, router←v6972, slice←v7072); }; }; }; SOURCE(12489, 876) return(slice←v7072); } static word SliceClassFromRope←P4020(className←v7132) word className←v7132; { register ptr gf←c66000 = (ptr) &globalframe; word type←v7176; /* SliceClassFromRope: */ SOURCE(13371, 106) SOURCE(13371, 106) type←v7176 = 0; SOURCE(13444, 33) { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf←c66000)+213)/* var←c62768 */ ))+5) ); return((word) ( *( (fPt) ((* (ptr) pd174 ))))(className←v7132, 0, 2147483647, pd174)); }; } static void FileinPList←P4080(f←v7236, version←v7264, router←v7292, slice←v7320) word f←v7236; word version←v7264; word router←v7292; word slice←v7320; { register ptr gf←c66032 = (ptr) &globalframe; word key←v9848 = 0; word val←v9876 = 0; word nextChar←v9904; word keyName←v9932 = 0; word valRope←v9960 = 0; word success←v9988 = 1; /* FileinPList: */ SOURCE(13483, 1432) SOURCE(13671, 33) { word pd175; pd175 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd175 ))))(f←v7236, (* (( (ptr) gf←c66032)+38) ), pd175); }; SOURCE(13765, 1150) lab←L100021: ; SOURCE(13803, 22) { word pd176; pd176 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd176 ))))(f←v7236, pd176); }; SOURCE(13871, 30) { word var←c63504; word self←v58384; self←v58384 = f←v7236; { word i←v49128; i←v49128 = (* (( (ptr) self←v58384)+7) ); { word pd177; if ((i←v49128 < (* (( (ptr) self←v58384)+5) ))) { (* (( (ptr) self←v58384)+7) ) = (i←v49128 + 1); { word var←c63568; word buffer←v49748; buffer←v49748 = (* (( (ptr) self←v58384)+4) ); var←c63568 = (unsigned) (word) (* ((( (bPt) buffer←v49748)+4)+i←v49128) ); var←c63504 = var←c63568; }; } else { pd177 = (* (ptr) (* (ptr) self←v58384 ) ); var←c63504 = (word) ( *( (fPt) ((* (ptr) pd177 ))))(self←v58384, pd177); }; }; }; nextChar←v9904 = var←c63504; }; SOURCE(13903, 20) if ((nextChar←v9904 == 41)) { SOURCE(13923, 4) goto lab←L100020; }; SOURCE(13953, 20) if ((nextChar←v9904 != 40)) { SOURCE(13973, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(14010, 31) { word pd178; pd178 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+8) ); keyName←v9932 = (word) ( *( (fPt) ((* (ptr) pd178 ))))(f←v7236, pd178); }; SOURCE(14043, 28) { word pd179; pd179 = (* (( (ptr) (* (( (ptr) gf←c66032)+213)/* var←c62768 */ ))+5) ); key←v9848 = (word) ( *( (fPt) ((* (ptr) pd179 ))))(keyName←v9932, 0, 2147483647, pd179); }; SOURCE(14073, 30) { word var←c63632; word self←v58264; self←v58264 = f←v7236; { word i←v58296; i←v58296 = (* (( (ptr) self←v58264)+7) ); { word pd180; if ((i←v58296 < (* (( (ptr) self←v58264)+5) ))) { (* (( (ptr) self←v58264)+7) ) = (i←v58296 + 1); { word var←c63696; word buffer←v58340; buffer←v58340 = (* (( (ptr) self←v58264)+4) ); var←c63696 = (unsigned) (word) (* ((( (bPt) buffer←v58340)+4)+i←v58296) ); var←c63632 = var←c63696; }; } else { pd180 = (* (ptr) (* (ptr) self←v58264 ) ); var←c63632 = (word) ( *( (fPt) ((* (ptr) pd180 ))))(self←v58264, pd180); }; }; }; nextChar←v9904 = var←c63632; }; SOURCE(14214, 30) { word var←c63760; word self←v58144; self←v58144 = f←v7236; { word i←v58176; i←v58176 = (* (( (ptr) self←v58144)+7) ); { word pd181; if ((i←v58176 < (* (( (ptr) self←v58144)+5) ))) { (* (( (ptr) self←v58144)+7) ) = (i←v58176 + 1); { word var←c63824; word buffer←v58220; buffer←v58220 = (* (( (ptr) self←v58144)+4) ); var←c63824 = (unsigned) (word) (* ((( (bPt) buffer←v58220)+4)+i←v58176) ); var←c63760 = var←c63824; }; } else { pd181 = (* (ptr) (* (ptr) self←v58144 ) ); var←c63760 = (word) ( *( (fPt) ((* (ptr) pd181 ))))(self←v58144, pd181); }; }; }; nextChar←v9904 = var←c63760; }; SOURCE(14284, 450) { word var←c63888; var←c63888 = nextChar←v9904; switch (var←c63888) { case 26: SOURCE(14358, 36) valRope←v9960 = (word) ReadRopeInBoxcarAndBell←P4140(f←v7236); SOURCE(14396, 25) { word pd182; pd182 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd182 ))))(f←v7236, 41, pd182); }; break; case 91: SOURCE(14463, 249) { word c←v10044; SOURCE(14518, 19) { word pd183; pd183 = (* (( (ptr) (* (( (ptr) gf←c66032)+214)/* var←c62832 */ ))+72) ); c←v10044 = (word) ( *( (fPt) ((* (ptr) pd183 ))))(f←v7236, pd183); }; SOURCE(14539, 28) { word pd184; pd184 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd184 ))))(f←v7236, (* (( (ptr) gf←c66032)+39) ), pd184); }; SOURCE(14611, 41) { word pd185; pd185 = (* (( (ptr) (* (( (ptr) gf←c66032)+214)/* var←c62832 */ ))+92) ); valRope←v9960 = (word) ( *( (fPt) ((* (ptr) pd185 ))))(f←v7236, c←v10044, 1, pd185); }; SOURCE(14654, 25) { word pd186; pd186 = (* (( (ptr) (* (( (ptr) gf←c66032)+218)/* var←c63408 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd186 ))))(f←v7236, 41, pd186); }; }; break; case 41: SOURCE(14721, 13) valRope←v9960 = 0; break; default: SOURCE(14778, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(14815, 65) { word pd187; if ((valRope←v9960 == 0)) { val←v9876 = 0; } else { pd187 = (* (( (ptr) (* (( (ptr) gf←c66032)+216)/* var←c62960 */ ))+12) ); val←v9876 = (word) ( *( (fPt) ((* (ptr) pd187 ))))(key←v9848, valRope←v9960, pd187); }; }; SOURCE(14882, 33) { word pd188; pd188 = (* (( (ptr) (* (( (ptr) gf←c66032)+216)/* var←c62960 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd188 ))))(slice←v7320, 0, key←v9848, val←v9876, pd188); }; goto lab←L100021; lab←L100020: ; } static word ReadRopeInBoxcarAndBell←P4140(stream←v7380) word stream←v7380; { register ptr gf←c66064 = (ptr) &globalframe; word rope←v7424; word level←v10088 = 1; word scratch←v10116 = 0; word text←v10144 = 0; word c←v10172; /* ReadRopeInBoxcarAndBell: */ SOURCE(14930, 541) SOURCE(14930, 541) rope←v7424 = 0; SOURCE(15069, 50) { word var←c63920; { word pd189; pd189 = (* (( (ptr) (* (( (ptr) gf←c66064)+219)/* var←c63952 */ ))+18) ); var←c63920 = (word) ( *( (fPt) ((* (ptr) pd189 ))))((* (ptr) ((* (( (ptr) (* (( (ptr) gf←c66064)+219)/* var←c63952 */ ))+17) )) ), pd189); }; text←v10144 = var←c63920; scratch←v10116 = var←c63920; }; SOURCE(15121, 210) lab←L100030: ; { word tc190; word pd191; if ((level←v10088 != 0)) { if (((* (( (ptr) stream←v7380)+7) ) < (* (( (ptr) stream←v7380)+5) ))) { tc190 = (word) 1; } else { pd191 = (* (( (ptr) (* (ptr) stream←v7380 ))+3) ); tc190 = (word) (0 == (word) ( *( (fPt) ((* (ptr) pd191 ))))(stream←v7380, pd191)); }; } else { tc190 = (word) 0; }; if (tc190) { } else { goto lab←L100028; }; }; SOURCE(15166, 28) { word var←c63984; word self←v58024; self←v58024 = stream←v7380; { word i←v58056; i←v58056 = (* (( (ptr) self←v58024)+7) ); { word pd192; if ((i←v58056 < (* (( (ptr) self←v58024)+5) ))) { (* (( (ptr) self←v58024)+7) ) = (i←v58056 + 1); { word var←c64048; word buffer←v58100; buffer←v58100 = (* (( (ptr) self←v58024)+4) ); var←c64048 = (unsigned) (word) (* ((( (bPt) buffer←v58100)+4)+i←v58056) ); var←c63984 = var←c64048; }; } else { pd192 = (* (ptr) (* (ptr) self←v58024 ) ); var←c63984 = (word) ( *( (fPt) ((* (ptr) pd192 ))))(self←v58024, pd192); }; }; }; c←v10172 = var←c63984; }; SOURCE(15196, 40) { word var←c64112; word to←v57948; word from←v57976; to←v57948 = text←v10144; from←v57976 = c←v10172; if (( (unsigned) (* (hPt) to←v57948 ) >= (unsigned) (* (( (hPt) to←v57948)+1) ))) { { word pd193; pd193 = (* (( (ptr) (* (( (ptr) gf←c66064)+220)/* var←c64176 */ ))+11) ); var←c64112 = (word) ( *( (fPt) ((* (ptr) pd193 ))))(to←v57948, from←v57976, pd193); }; goto lab←L100033; }; { word idx194; word limit195; (* ((( (bPt) to←v57948)+4)+( idx194 = (word) (unsigned) (* (hPt) to←v57948 ), limit195 = (word) (unsigned) (* (( (hPt) to←v57948)+1) ), BCK(idx194, limit195) )) ) = from←v57976; }; { word idx196; (* (hPt) to←v57948 ) = ( idx196 = (word) ( (unsigned) (* (hPt) to←v57948 ) + 1), BCK(idx196, 32768) ); }; var←c64112 = to←v57948; lab←L100033: ; text←v10144 = var←c64112; }; SOURCE(15238, 93) if ((c←v10172 == 26)) { SOURCE(15264, 23) level←v10088 = (level←v10088 + 1); } else { SOURCE(15287, 44) if ((c←v10172 == 7)) { SOURCE(15314, 17) level←v10088 = SGNCK((level←v10088 - 1)); }; }; goto lab←L100030; lab←L100028: ; SOURCE(15342, 56) { word var←c64208; { word var←c64240; word base←v57900; base←v57900 = text←v10144; { word tc197; word idx198; if ((base←v57900 == 0)) { tc197 = (word) 0; } else { tc197 = (word) (unsigned) (* (hPt) base←v57900 ); }; var←c64240 = ( idx198 = (word) tc197, BCK(idx198, 32768) ); }; var←c64208 = BCK((var←c64240 - 1), 32768); }; { word pd199; pd199 = (* (( (ptr) (* (( (ptr) gf←c66064)+217)/* var←c63056 */ ))+35) ); rope←v7424 = (word) ( *( (fPt) ((* (ptr) pd199 ))))(text←v10144, 0, var←c64208, pd199); }; }; SOURCE(15430, 41) { word t←v57852; t←v57852 = scratch←v10116; { word pd200; pd200 = (* (( (ptr) (* (( (ptr) gf←c66064)+219)/* var←c63952 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd200 ))))((* (ptr) (* (( (ptr) (* (( (ptr) gf←c66064)+219)/* var←c63952 */ ))+17) ) ), t←v57852, pd200) ; }; }; SOURCE(14930, 541) return(rope←v7424); } static word PartsInBoundBox←P4200(slice←v7484, box←v7512) word slice←v7484; word box←v7512; { register ptr gf←c66096 = (ptr) &globalframe; word inParts←v7556; /* PartsInBoundBox: */ SOURCE(15477, 149) SOURCE(15477, 149) inParts←v7556 = 0; SOURCE(15575, 51) { word var←c0549; var←c0549 = (* (( (ptr) gf←c66096)+40) ); (void) (XR←RaiseSignal((* (ptr) (* (( (ptr) (* (( (ptr) gf←c66096)+221)/* var←c64272 */ ))+28) ) ), 0, (word) &var←c0549) ); }; SOURCE(15477, 149) return(inParts←v7556); } static word WithinBoundBox←P4260(slice←v7616, box←v7644) word slice←v7616; word box←v7644; { W6 var←c66128; word in←v7688; /* declaration of var←c64304 skipped */ word sliceBox←v10284; /* WithinBoundBox: */ SOURCE(15632, 405) { word tmpAddr201; tmpAddr201 = (word) (( (ptr) &var←c66128)+4)/* var←c64304 */ ; (* (ptr) tmpAddr201 ) = ( ((word) (fPt) Within←P5004) ); (* (( (ptr) tmpAddr201) + 1) ) = 1; }; SOURCE(15953, 56) { word pd202; pd202 = (* (( (ptr) (* (ptr) slice←v7616 ))+3) ); sliceBox←v10284 = (word) ( *( (fPt) ((* (ptr) pd202 ))))(slice←v7616, 0, pd202); }; SOURCE(16011, 26) in←v7688 = (word) Within←P5004(sliceBox←v10284, box←v7644, (word) (( (bPt) &var←c66128)+16)/* var←c64304 */ ); SOURCE(15632, 405) return(in←v7688); } static word Within←P5004(test←v10360, bound←v10388, formal←c66160) word test←v10360; word bound←v10388; word formal←c66160; { word var←c10432; formal←c66160 = (formal←c66160 - 16); /* Within: */ SOURCE(15752, 196) SOURCE(15808, 140) { word tc203; word x204; word x205; word x207; word x208; word x209; word x210; word x211; word x212; word x213; word x214; word x215; word x216; if ( ( ( (( x204 = (* (( (ptr) test←v10360)+2) ), *(float*)&x204 ) <= ( x205 = (* (( (ptr) bound←v10388)+2) ), *(float*)&x205 ) + ( x207 = (* (ptr) &fc206 ), *(float*)&x207 )) ? (( x208 = (* (ptr) test←v10360 ), *(float*)&x208 ) >= ( x209 = (* (ptr) bound←v10388 ), *(float*)&x209 ) - ( x210 = (* (ptr) &fc206 ), *(float*)&x210 )) : 0 ) ? (( x211 = (* (( (ptr) test←v10360)+3) ), *(float*)&x211 ) <= ( x212 = (* (( (ptr) bound←v10388)+3) ), *(float*)&x212 ) + ( x213 = (* (ptr) &fc206 ), *(float*)&x213 )) : 0 ) ) { tc203 = (word) (unsigned) (( x214 = (* (( (ptr) test←v10360)+1) ), *(float*)&x214 ) >= ( x215 = (* (( (ptr) bound←v10388)+1) ), *(float*)&x215 ) - ( x216 = (* (ptr) &fc206 ), *(float*)&x216 )); } else { tc203 = (word) (unsigned) 0; }; return(tc203); }; } static word IsOpen←P4320(slice←v7748) word slice←v7748; { register ptr gf←c66192 = (ptr) &globalframe; word isOpen←v7792; /* IsOpen: */ SOURCE(16043, 156) SOURCE(16043, 156) isOpen←v7792 = 0; SOURCE(16113, 44) if (((word) GetType←P60(slice←v7748) != (* (( (ptr) gf←c66192)+41) ))) { SOURCE(16144, 13) return(0); }; SOURCE(16159, 40) { word pd217; pd217 = (* (( (ptr) (* (( (ptr) gf←c66192)+222)/* var←c64368 */ ))+16) ); return( (unsigned) ((word) ( *( (fPt) ((* (ptr) pd217 ))))(slice←v7748, pd217) == 2)); }; } static void GenericPropsUndo←P4380(op←v7852, slice←v7880, parts←v7908, val←v7936, history←v7964) word op←v7852; word slice←v7880; word parts←v7908; word val←v7936; word history←v7964; { register ptr gf←c66224 = (ptr) &globalframe; /* GenericPropsUndo: */ SOURCE(16205, 269) SOURCE(16309, 165) if ((history←v7964 != 0)) { SOURCE(16329, 147) { word changeRef←v10460; SOURCE(16331, 106) changeRef←v10460 = XR←NewObject(20, (* (( (ptr) gf←c66224)+7) )); (* (( (ptr) changeRef←v10460)+1) ) = op←v7852; (* (( (ptr) changeRef←v10460)+2) ) = slice←v7880; (* (( (ptr) changeRef←v10460)+3) ) = parts←v7908; (* (( (ptr) changeRef←v10460)+4) ) = val←v7936; SOURCE(16439, 35) (void) Note←P4440(history←v7964, (word) (( (bPt) gf←c66224)+236)/* var←c58608 */ , changeRef←v10460); }; }; } static void Note←P4440(event←v8040, historyProc←v8068, historyData←v8096) word event←v8040; word historyProc←v8068; word historyData←v8096; { register ptr gf←c66256 = (ptr) &globalframe; /* Note: */ SOURCE(16483, 377) SOURCE(16578, 26) if ((event←v8040 == 0)) { SOURCE(16598, 6) return; }; SOURCE(16606, 34) if ((0 != (* (( (ptr) gf←c66256)+5)/* debugHalt←v3364 */ ))) { SOURCE(16624, 16) (void) (XR←RaiseSignal((word) (( (bPt) gf←c66256)+200)/* var←c58448 */ , 0, 0)); }; SOURCE(16642, 130) if ( ( ( ( (0 != (* (( (ptr) gf←c66256)+4)/* noteNoMore←v3336 */ )) ? ((* (( (ptr) event←v8040)+2) ) != 0) : 0 ) ? ((* (ptr) (* ( ( (ptr) event←v8040)+2) ) ) != 0) : 0 ) ? ((* (ptr) (* (( (ptr) (* (ptr) (* (( (ptr) event←v8040)+2) ) ))+1) ) ) == 2) : 0 ) ) { SOURCE(16766, 6) return; }; SOURCE(16774, 86) { word var←c64432; word var←c64496; { word var←c64464; var←c64464 = XR←NewObject(8, (* (( (ptr) gf←c66256)+15) )); (* (ptr) var←c64464 ) = XR←CheckProc(historyProc←v8068); (* (( (ptr) var←c64464)+1) ) = historyData←v8096; var←c64432 = var←c64464; }; var←c64496 = XR←NewObject(8, (* (( (ptr) gf←c66256)+17) )); (* (ptr) var←c64496 ) = var←c64432; (* (( (ptr) var←c64496)+1) ) = (* (( (ptr) event←v8040)+2) ); (* (( (ptr) event←v8040)+2) ) = var←c64496; }; } static void UndoProps←P4500(historyData←v8168, currentEvent←v8196) word historyData←v8168; word currentEvent←v8196; { register ptr gf←c66288 = (ptr) &globalframe; word propsData←v10516; word slice←v10544; word parts←v10572; /* UndoProps: */ SOURCE(16866, 1972) SOURCE(16940, 57) if ((historyData←v8168 == 0)) { goto lab←L100035; }; if (((* (ptr) historyData←v8168 ) == 0)) { goto lab←L100035; }; (void) XR←RaiseError(XR←NarrowFault, 0); lab←L100035: ; propsData←v10516 = historyData←v8168; SOURCE(16999, 30) slice←v10544 = (* (( (ptr) propsData←v10516)+2) ); SOURCE(17031, 35) parts←v10572 = (* (( (ptr) propsData←v10516)+3) ); SOURCE(17068, 1770) if (((* (ptr) slice←v10544 ) != 0)) { SOURCE(17094, 1744) { word var←c64528; var←c64528 = (* (( (ptr) propsData←v10516)+1) ); if ((var←c64528 == (* (( (ptr) gf←c66288)+45) ))) { SOURCE(17138, 165) { word oldValue←v10628; SOURCE(17140, 47) oldValue←v10628 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+12) )); SOURCE(17189, 91) { word var←c64592; { word var←c64560; var←c64560 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd219; pd219 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+53) ); var←c64592 = (word) ( *( (fPt) ((* (ptr) pd219 ))))(slice←v10544, var←c64560, (* (ptr) oldValue←v10628 ), currentEvent←v8196, pd219) ; }; }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+44) ))) { SOURCE(17323, 148) { word oldValue←v10684; SOURCE(17325, 55) oldValue←v10684 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+14) )); SOURCE(17382, 87) { word var←c64624; var←c64624 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd220; pd220 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+55) ); (void) ( *( (fPt) ((* (ptr) pd220 ))))(slice←v10544, var←c64624, (* (ptr) oldValue←v10684 ), currentEvent←v8196, pd220) ; }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+43) ))) { SOURCE(17493, 154) { word oldValue←v10740; SOURCE(17495, 57) oldValue←v10740 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+16) )); SOURCE(17554, 91) { word var←c64656; var←c64656 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd221; pd221 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+57) ); (void) ( *( (fPt) ((* (ptr) pd221 ))))(slice←v10544, var←c64656, (* (ptr) oldValue←v10740 ), currentEvent←v8196, pd221) ; }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+42) ))) { SOURCE(17669, 148) { word oldValue←v10796; SOURCE(17671, 51) oldValue←v10796 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+13) )); SOURCE(17724, 91) { word var←c64688; var←c64688 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd222; pd222 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+59) ); (void) ( *( (fPt) ((* (ptr) pd222 ))))(slice←v10544, var←c64688, oldValue←v10796, (* (( (ptr) gf←c66288)+46) ), currentEvent←v8196, pd222) ; }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+27) ))) { SOURCE(17837, 124) { word oldValue←v10840; SOURCE(17839, 51) oldValue←v10840 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+13) )); SOURCE(17892, 67) { word pd223; pd223 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd223 ))))(slice←v10544, parts←v10572, oldValue←v10840, (* (( (ptr) gf←c66288)+46) ), currentEvent←v8196, pd223) ; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+26) ))) { SOURCE(17978, 165) { word oldValue←v10884; SOURCE(17980, 51) oldValue←v10884 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+20) )); SOURCE(18033, 107) { word var←c64720; var←c64720 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd224; pd224 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+63) ); (void) ( *( (fPt) ((* (ptr) pd224 ))))(slice←v10544, var←c64720, (* (ptr) oldValue←v10884 ), (* (( (ptr) oldValue←v10884)+1) ), currentEvent←v8196, pd224); }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+24) ))) { SOURCE(18160, 197) { word oldValue←v10940; SOURCE(18162, 52) oldValue←v10940 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+22) )); SOURCE(18216, 139) { word var←c64752; var←c64752 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd225; pd225 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd225 ))))(slice←v10544, var←c64752, (* (ptr) oldValue←v10940 ), (* (( (ptr) oldValue←v10940)+1) ), (* (( (ptr) oldValue←v10940)+2) ), (* (( (ptr) oldValue←v10940)+3) ) , currentEvent←v8196, pd225); }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+25) ))) { SOURCE(18379, 156) { word oldValue←v10996; SOURCE(18381, 57) oldValue←v10996 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+23) )); SOURCE(18440, 93) { word var←c64816; { word var←c64784; var←c64784 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd226; pd226 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+67) ); var←c64816 = (word) ( *( (fPt) ((* (ptr) pd226 ))))(slice←v10544, var←c64784, (* (ptr) oldValue←v10996 ), currentEvent←v8196, pd226) ; }; }; }; }; goto endif0218; }; if ((var←c64528 == (* (( (ptr) gf←c66288)+49) ))) { SOURCE(18552, 288) { word oldValue←v11052; word transform←v11080; SOURCE(18554, 55) oldValue←v11052 = XR←Narrow((* (( (ptr) propsData←v10516)+4) ), (* (( (ptr) gf←c66288)+8) )); SOURCE(18611, 82) { word pd227; pd227 = (* (( (ptr) (* (( (ptr) gf←c66288)+223)/* var←c64848 */ ))+51) ); transform←v11080 = (word) ( *( (fPt) ((* (ptr) pd227 ))))((* (ptr) (oldValue←v11052) ), pd227); }; SOURCE(18726, 112) { word var←c64880; var←c64880 = (word) FixBogusParts←P4560(slice←v10544, parts←v10572); { word pd228; pd228 = (* (( (ptr) (* (( (ptr) gf←c66288)+212)/* var←c62704 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd228 ))))(slice←v10544, var←c64880, transform←v11080, (* (( (ptr) oldValue←v11052)+1) ), currentEvent←v8196, pd228) ; }; }; }; goto endif0218; }; endif0218: ; }; }; } static word FixBogusParts←P4560(slice←v8268, bogusParts←v8296) word slice←v8268; word bogusParts←v8296; { register ptr gf←c66320 = (ptr) &globalframe; word goodParts←v8340; /* FixBogusParts: */ SOURCE(18859, 174) SOURCE(18859, 174) goodParts←v8340 = 0; SOURCE(18953, 22) goodParts←v8340 = bogusParts←v8296; SOURCE(19002, 31) if ((0 != (* (( (ptr) gf←c66320)+6)/* forgetBogusParts←v6052 */ ))) { SOURCE(19027, 6) return(goodParts←v8340); }; SOURCE(19035, 5) (void) XR←RaiseUnnamedError(); } static word IsDescriptorOfEnd←P4620(sliceD←v8400) word sliceD←v8400; { register ptr gf←c66352 = (ptr) &globalframe; word var←c8444; word jointNum←v11136; word partType←v11164; word success←v11192 = 0; /* IsDescriptorOfEnd: */ SOURCE(19707, 844) SOURCE(19845, 34) if ((sliceD←v8400 == 0)) { SOURCE(19866, 13) return(0); }; SOURCE(19881, 670) { word var←c64912; { word pd229; pd229 = (* (( (ptr) (* (( (ptr) gf←c66352)+212)/* var←c62704 */ ))+6) ); var←c64912 = (word) ( *( (fPt) ((* (ptr) pd229 ))))((* (ptr) (sliceD←v8400) ), pd229); }; if ((var←c64912 == (* (( (ptr) gf←c66352)+47) ))) { SOURCE(19938, 138) { word trajD←v11236 = 0; SOURCE(19964, 76) { word pd231; pd231 = (* (( (ptr) (* (( (ptr) gf←c66352)+215)/* var←c62864 */ ))+78) ); trajD←v11236 = (word) ( *( (fPt) ((* (ptr) pd231 ))))((* (ptr) sliceD←v8400 ), (* (( (ptr) sliceD←v8400)+1) ), 1, (* (( (ptr) gf←c66352)+41) ), pd231); }; SOURCE(20042, 32) return((word) IsDescriptorOfEnd←P4620(trajD←v11236)); }; }; if ((var←c64912 == (* (( (ptr) gf←c66352)+48) ))) { SOURCE(20091, 214) { word trajD←v11280 = 0; SOURCE(20117, 85) { W10 var←c65008; { word pd232; pd232 = (* (( (ptr) (* (( (ptr) gf←c66352)+224)/* var←c64976 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd232 ))))((word) &var←c65008, sliceD←v8400, pd232); }; jointNum←v11136 = (* (( (ptr) &var←c65008)+4) ); trajD←v11280 = (* (( (ptr) &var←c65008)+2) ); partType←v11164 = (* (( (ptr) &var←c65008)+1) ); success←v11192 = (* (ptr) &var←c65008 ); }; SOURCE(20204, 99) { word pd233; if ((0 == success←v11192) || (partType←v11164 != 1)) { return(0); } else { pd233 = (* (( (ptr) (* (( (ptr) gf←c66352)+222)/* var←c64368 */ ))+45) ); return((word) ( *( (fPt) ((* (ptr) pd233 ))))((* (ptr) trajD←v11280 ), jointNum←v11136, pd233)); }; }; }; }; if ((var←c64912 == (* (( (ptr) gf←c66352)+41) ))) { SOURCE(20319, 101) { W10 var←c65072; { word pd234; pd234 = (* (( (ptr) (* (( (ptr) gf←c66352)+222)/* var←c64368 */ ))+52) ); (void) ( *( (fPt) ((* (ptr) pd234 ))))((word) &var←c65072, (* (ptr) sliceD←v8400 ), (* (( (ptr) sliceD←v8400)+1) ), pd234) ; }; jointNum←v11136 = (* (( (ptr) &var←c65072)+4) ); partType←v11164 = (* (( (ptr) &var←c65072)+1) ); success←v11192 = (* (ptr) &var←c65072 ); }; SOURCE(20422, 100) { word pd235; if ((0 == success←v11192) || (partType←v11164 != 1)) { return(0); } else { pd235 = (* (( (ptr) (* (( (ptr) gf←c66352)+222)/* var←c64368 */ ))+45) ); return((word) ( *( (fPt) ((* (ptr) pd235 ))))((* (ptr) sliceD←v8400 ), jointNum←v11136, pd235)); }; }; }; SOURCE(20538, 13) return(0); }; } static void UnpackJoint←P4680(formal←c0622, sliceD←v8504) word formal←c0622; word sliceD←v8504; { register ptr gf←c66384 = (ptr) &globalframe; word success←v8548; word trajD←v8576; word jointNum←v8604; /* UnpackJoint: */ SOURCE(20557, 474) SOURCE(20557, 474) trajD←v8576 = 0; SOURCE(20675, 356) { word var←c65136; { word pd236; pd236 = (* (( (ptr) (* (( (ptr) gf←c66384)+212)/* var←c62704 */ ))+6) ); var←c65136 = (word) ( *( (fPt) ((* (ptr) pd236 ))))((* (ptr) (sliceD←v8504) ), pd236); }; if ((var←c65136 == (* (( (ptr) gf←c66384)+47) ))) { SOURCE(20734, 80) { word pd237; pd237 = (* (( (ptr) (* (( (ptr) gf←c66384)+215)/* var←c62864 */ ))+78) ); sliceD←v8504 = (word) ( *( (fPt) ((* (ptr) pd237 ))))((* (ptr) sliceD←v8504 ), (* (( (ptr) sliceD←v8504)+1) ), 1, (* (( (ptr) gf←c66384)+48) ), pd237); }; SOURCE(20816, 81) { W10 var←c65168; { word pd238; pd238 = (* (( (ptr) (* (( (ptr) gf←c66384)+224)/* var←c64976 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd238 ))))((word) &var←c65168, sliceD←v8504, pd238); }; jointNum←v8604 = (* (( (ptr) &var←c65168)+4) ); trajD←v8576 = (* (( (ptr) &var←c65168)+2) ); success←v8548 = (* (ptr) &var←c65168 ); }; } else { if ((var←c65136 == (* (( (ptr) gf←c66384)+48) ))) { SOURCE(20914, 81) { W10 var←c65200; { word pd239; pd239 = (* (( (ptr) (* (( (ptr) gf←c66384)+224)/* var←c64976 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd239 ))))((word) &var←c65200, sliceD←v8504, pd239); }; jointNum←v8604 = (* (( (ptr) &var←c65200)+4) ); trajD←v8576 = (* (( (ptr) &var←c65200)+2) ); success←v8548 = (* (ptr) &var←c65200 ); }; } else { SOURCE(21008, 23) success←v8548 = 0; trajD←v8576 = 0; jointNum←v8604 = (word) -1; goto lab←L100036; }; }; }; /* removed tail goto */ lab←L100036: ; (* (ptr) formal←c0622 ) = success←v8548; (* (( (ptr) formal←c0622)+1) ) = trajD←v8576; (* (( (ptr) formal←c0622)+2) ) = jointNum←v8604; return; } static void UnpackSegment←P4740(formal←c0637, sliceD←v8664) word formal←c0637; word sliceD←v8664; { register ptr gf←c66416 = (ptr) &globalframe; word success←v8708; word hitType←v8736; word traj←v8764; word seg←v8792; word segNum←v8820; word trajD←v11324 = 0; /* UnpackSegment: */ SOURCE(21037, 772) SOURCE(21037, 772) traj←v8764 = 0; SOURCE(21037, 772) seg←v8792 = 0; SOURCE(21037, 772) segNum←v8820 = 999; SOURCE(21211, 598) { word var←c65232; { word pd240; pd240 = (* (( (ptr) (* (( (ptr) gf←c66416)+212)/* var←c62704 */ ))+6) ); var←c65232 = (word) ( *( (fPt) ((* (ptr) pd240 ))))((* (ptr) (sliceD←v8664) ), pd240); }; if ((var←c65232 == (* (( (ptr) gf←c66416)+47) ))) { SOURCE(21270, 80) { word pd242; pd242 = (* (( (ptr) (* (( (ptr) gf←c66416)+215)/* var←c62864 */ ))+78) ); sliceD←v8664 = (word) ( *( (fPt) ((* (ptr) pd242 ))))((* (ptr) sliceD←v8664 ), (* (( (ptr) sliceD←v8664)+1) ), 1, (* (( (ptr) gf←c66416)+48) ), pd242); }; SOURCE(21352, 105) { W10 var←c65264; { word pd243; pd243 = (* (( (ptr) (* (( (ptr) gf←c66416)+224)/* var←c64976 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd243 ))))((word) &var←c65264, sliceD←v8664, pd243); }; segNum←v8820 = (* (( (ptr) &var←c65264)+9) ); seg←v8792 = (* (( (ptr) &var←c65264)+8) ); trajD←v11324 = (* (( (ptr) &var←c65264)+2) ); hitType←v8736 = (* (( (ptr) &var←c65264)+1) ); success←v8708 = (* (ptr) &var←c65264 ); }; SOURCE(21459, 18) traj←v8764 = (* (ptr) trajD←v11324 ); goto endif0241; }; if ((var←c65232 == (* (( (ptr) gf←c66416)+48) ))) { SOURCE(21496, 105) { W10 var←c65296; { word pd244; pd244 = (* (( (ptr) (* (( (ptr) gf←c66416)+224)/* var←c64976 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd244 ))))((word) &var←c65296, sliceD←v8664, pd244); }; segNum←v8820 = (* (( (ptr) &var←c65296)+9) ); seg←v8792 = (* (( (ptr) &var←c65296)+8) ); trajD←v11324 = (* (( (ptr) &var←c65296)+2) ); hitType←v8736 = (* (( (ptr) &var←c65296)+1) ); success←v8708 = (* (ptr) &var←c65296 ); }; SOURCE(21603, 18) traj←v8764 = (* (ptr) trajD←v11324 ); goto endif0241; }; if ((var←c65232 == (* (( (ptr) gf←c66416)+41) ))) { SOURCE(21637, 121) { W10 var←c65328; { word pd245; pd245 = (* (( (ptr) (* (( (ptr) gf←c66416)+222)/* var←c64368 */ ))+52) ); (void) ( *( (fPt) ((* (ptr) pd245 ))))((word) &var←c65328, (* (ptr) sliceD←v8664 ), (* (( (ptr) sliceD←v8664)+1) ), pd245) ; }; segNum←v8820 = (* (( (ptr) &var←c65328)+9) ); seg←v8792 = (* (( (ptr) &var←c65328)+8) ); hitType←v8736 = (* (( (ptr) &var←c65328)+1) ); success←v8708 = (* (ptr) &var←c65328 ); }; goto endif0241; }; SOURCE(21774, 35) success←v8708 = 0; hitType←v8736 = 0; traj←v8764 = 0; seg←v8792 = 0; segNum←v8820 = 999; goto lab←L100037; endif0241: ; }; /* removed tail goto */ lab←L100037: ; (* (ptr) formal←c0637 ) = success←v8708; (* (( (ptr) formal←c0637)+1) ) = hitType←v8736; (* (( (ptr) formal←c0637)+2) ) = traj←v8764; (* (( (ptr) formal←c0637)+3) ) = seg←v8792; (* (( (ptr) formal←c0637)+4) ) = segNum←v8820; return; } /* file: GGSliceOpsImpl, module: GGSliceOpsImpl, compiled at: July 11, 1993 8:05:02 pm PDT */ extern void XR←install←GGSliceOpsImpl() { NoName←Q6588(); } extern void XR←run←GGSliceOpsImpl() { XR←Start(&globalframe); }