/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation.  All rights reserved. */
/* time: July 28, 1993 10:21:48 am PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: ImagerPixelImpl, module: ImagerPixelImpl */ 
/* switches: bcfhklnouw */ 
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [3188986349,3604261867] ImagerPixelImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W4 *W4Pt;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; word r;} W9;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; W6 r;} W22;
typedef W2 *W2Pt;
#define SOURCE(p, l) /* source p, l */
static float fc11 = 2147483647.0;
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc33 = 0.0;
static float fc38 = 65536.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
static float fc68 = 1.0;
static float fc71 = 0.5;
#define MIN(cast, x, y)  ( ( cast x) < ( cast y) ? (x) : (y) )
static void NoName←Q3756();
static void ImagerPixelImpl←P0();
static word NewPixels←P120();
static word ObtainScratchPixels←P180();
static void ReleaseScratchPixels←P240();
static void DoWithScratchPixels←P300();
static word NoName←Q3816();
static word NewPixelMap←P360();
static word MakePixelMap←P420();
static void GetPixels←P480();
static void PutPixels←P540();
static word ScaledFromRealMod←P600();
static void Resample1←P660();
static void boxes←P1668();
static void action←P1728();
static void Resample←P720();
static void boxActionPointSamples←P1884();
static void boxActionInterpolatedSamples←P1944();
static word HalfInteger←P780();
static void NoName←Q3876();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\214\000\000"};
static struct {unsigned f; char r[12];} string2 = {524296, "\011\000\004\040\040\000\010\001\000\000\000"};
static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\354\000\000"};
static struct {unsigned f; char r[12];} string4 = {589833, "\011\000\004\100\240\040\001\030\001\000\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\276\024\021\355\300\326\324\253\353\100\164\000\000"};
static struct {unsigned f; char r[8];} string6 = {393222, "\006\001 \004O\377\000"};
static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\150\000\000"};
static struct {
   word f0[26]; word f26; word f27; word f28; 
   word f29; word f30; word f31; word f32; 
   word f33; word f34; word f35; word f36; 
   word f37; word f38; word f39; word f40; 
   word f41; word f42; word f43; word f44; 
   word f45; word f46; word f47; word f48; 
   word f49; word f50; word f51[9]; 
   } globalframe = {
   {0}, (word) HalfInteger←P780, 0, (word) Resample←P720, 
   0, (word) Resample1←P660, 0, (word) ScaledFromRealMod←P600, 
   0, (word) PutPixels←P540, 0, (word) GetPixels←P480, 
   0, (word) MakePixelMap←P420, 0, (word) NewPixelMap←P360, 
   0, (word) DoWithScratchPixels←P300, 0, (word) ReleaseScratchPixels←P240, 
   0, (word) ObtainScratchPixels←P180, 0, (word) NewPixels←P120, 
   0, (word) ImagerPixelImpl←P0, {0}
   };

static void NoName←Q3756()
   {
   register ptr gf←c0296 =  (ptr) &globalframe;
   word var←c22152;
   (* (( (ptr) gf←c0296)+23) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
   (* (( (ptr) gf←c0296)+24) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
   (void) XR←DeclareGlobalFrame((word) "ImagerPixelImpl", &globalframe, (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6)
      , (word) (( (bPt) gf←c0296)+200)/* var←c19464 */ );
   var←c22152 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string7)), 60);
   (* (( (ptr) gf←c0296)+56)/* var←c19720 */  ) = var←c22152;
   (void) XR←ImportProcS(var←c22152, 67905026);
   (void) XR←ImportProcS(var←c22152, 1312773);
   (void) XR←ImportProcS(var←c22152, 2370311);
   (void) XR←ImportProcS(var←c22152, 2107398);
   (void) XR←ImportProcS(var←c22152, 68685571);
   (void) XR←ImportProcS(var←c22152, 67633410);
   var←c22152 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string8)), 55);
   (* (( (ptr) gf←c0296)+57)/* var←c20648 */  ) = var←c22152;
   (void) XR←ImportProcS(var←c22152, 135013634);
   (void) XR←ImportProcS(var←c22152, 135013890);
   (void) XR←ImportProcS(var←c22152, 67383297);
   var←c22152 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string9)), 19);
   (* (( (ptr) gf←c0296)+58)/* var←c20712 */  ) = var←c22152;
   (void) XR←ImportProcS(var←c22152, 68160769);
   var←c22152 = (word) XR←ExportInterface((word) "ImagerPixel", (word) XR←GetTypeIndexS((word) (&string10)), 9);
   (* (( (ptr) gf←c0296)+59)/* var←c22184 */  ) = var←c22152;
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+192)/* var←c19432 */ , 67895299, (word) "NewPixels");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+184)/* var←c19400 */ , 67633410, (word) "ObtainScratchPixels")
   ;
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+176)/* var←c19368 */ , 262657, (word) "ReleaseScratchPixels")
   ;
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+168)/* var←c19336 */ , 787203, (word) "DoWithScratchPixels");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+160)/* var←c19304 */ , 68682755, (word) "NewPixelMap");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+152)/* var←c19272 */ , 68420869, (word) "MakePixelMap");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+144)/* var←c19240 */ , 2098694, (word) "GetPixels");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+136)/* var←c19208 */ , 2361095, (word) "PutPixels");
   (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+112)/* var←c19112 */ , 2361350, (word) "Resample");
   }

static void ImagerPixelImpl←P0(formal←c025, formal←c024)
   word formal←c025;
   word formal←c024;
   {
   register ptr gf←c22216 =  (ptr) &globalframe;
   /* ImagerPixelImpl: */ 
SOURCE(524, 17181)
SOURCE(4788, 35)
   (* (( (ptr) gf←c22216)+20)/* realLastInt←v3168 */  ) = (*  (ptr) &fc11 );
   }

static word NewPixels←P120(samplesPerPixel←v3796, length←v3824, scratch←v3852)
   word samplesPerPixel←v3796;
   word length←v3824;
   word scratch←v3852;
   {
   register ptr gf←c22248 =  (ptr) &globalframe;
   word var←c3896;
   word new←v6144;
   /* NewPixels: */ 
SOURCE(1186, 369)
SOURCE(1299, 26)
   new←v6144 = scratch←v3852;
SOURCE(1327, 97)
   if ((new←v6144 == 0) || ((* (( (ptr) new←v6144)+1) ) != samplesPerPixel←v3796)) {
SOURCE(1382, 42)
      {
         word var←c19560;
         word var←c19592;
         word var←c19624;
         var←c19560 = BCK(samplesPerPixel←v3796, 67108863);
         var←c19592 = ((word) var←c19560 << 2);
         var←c19624 = XR←NewObject((8 + var←c19592), (* (( (ptr) gf←c22248)+23) ));
         (* (( (ptr) var←c19624)+1) ) = var←c19560;
         new←v6144 = var←c19624;
         };
      };
SOURCE(1426, 86)
   {
      register word i←v6188 = 0;
      register word noName←c19656;
      noName←c19656 = samplesPerPixel←v3796;
      if ((i←v6188 >= noName←c19656)) {
         goto lab←L100000;
         };
      lab←L100003: ;
SOURCE(1464, 48)
      {
         word var←c19688;
         {
            word pd12;
            pd12 = (* (( (ptr) (* (( (ptr) gf←c22248)+56)/* var←c19720 */  ))+5) );
            var←c19688 = (word) ( *( (fPt) ((*  (ptr) pd12 ))))(length←v3824, 0, pd12);
            };
         {
            word limit13;
            (* ((( (ptr) new←v6144)+2)+(
                  limit13 = (* (( (ptr) new←v6144)+1) ),
                  BCK(i←v6188, limit13)
                  )) ) = var←c19688;
            };
         };
      i←v6188 = (i←v6188 + 1);
      if ((i←v6188 < noName←c19656)) {
         goto lab←L100003;
         };
      lab←L100000: ;
      };
SOURCE(1523, 19)
   (*  (ptr) new←v6144 ) = length←v3824;
SOURCE(1544, 11)
   return(new←v6144);
   }

static word ObtainScratchPixels←P180(samplesPerPixel←v3992, length←v4020)
   word samplesPerPixel←v3992;
   word length←v4020;
   {
   register ptr gf←c22280 =  (ptr) &globalframe;
   word var←c4064;
   /* ObtainScratchPixels: */ 
SOURCE(1674, 490)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ ));
SOURCE(1775, 307)
   {
      register word i←v6232 = 0;
      lab←L100007: ;
      {
         word buf←v6276;
SOURCE(1818, 41)
         buf←v6276 = (* ((( (ptr) gf←c22280)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6232, 12)) );
SOURCE(1861, 221)
         if ( (  ( (buf←v6276 != 0) ? ((* (( (ptr) buf←v6276)+1) ) == samplesPerPixel←v3992) : 0 )  ? ((*  (ptr) buf←v6276 ) >= length←v4020) : 0 ) ) {
SOURCE(1948, 28)
            (* ((( (ptr) gf←c22280)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6232, 12)) ) = 0;
SOURCE(1978, 19)
            (*  (ptr) buf←v6276 ) = length←v4020;
SOURCE(1999, 60)
            {
               register word j←v6320 = 0;
               register word noName←c19752;
               noName←c19752 = samplesPerPixel←v3992;
               if ((j←v6320 >= noName←c19752)) {
                  goto lab←L100008;
                  };
               lab←L100011: ;
SOURCE(2037, 22)
               {
                  word limit14;
                  (*  (ptr) (* ((( (ptr) buf←v6276)+2)+(
                        limit14 = (* (( (ptr) buf←v6276)+1) ),
                        BCK(j←v6320, limit14)
                        )) ) ) = length←v4020;
                  };
               j←v6320 = (j←v6320 + 1);
               if ((j←v6320 < noName←c19752)) {
                  goto lab←L100011;
                  };
               lab←L100008: ;
               };
SOURCE(2070, 12)
            (void) (XR←MonitorExit((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ ));
            return(buf←v6276);
            };
         };
      if ((i←v6232 >= 11)) {
         goto lab←L100004;
         };
      i←v6232 = (i←v6232 + 1);
      goto lab←L100007;
      lab←L100004: ;
      };
SOURCE(2096, 68)
   {
      word var←c19784;
      var←c19784 = (word) NewPixels←P120(samplesPerPixel←v3992, length←v4020, 0);
      (void) (XR←MonitorExit((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ ));
      return(var←c19784);
      };
   }

static void ReleaseScratchPixels←P240(pixels←v4124)
   word pixels←v4124;
   {
   register ptr gf←c22312 =  (ptr) &globalframe;
   word var←c19848;
   word slot←v6364 = 0;
   /* ReleaseScratchPixels: */ 
SOURCE(2168, 514)
   (void) (XR←MonitorEntry((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ ));
SOURCE(2249, 41)
   if (((* (( (ptr) pixels←v4124)+1) ) == 0)) {
SOURCE(2284, 6)
      (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ ));
      return;
      };
SOURCE(2301, 109)
   {
      register word j←v6408 = 1;
      register word noName←c19816;
      noName←c19816 = (* (( (ptr) pixels←v4124)+1) );
      if ((j←v6408 >= noName←c19816)) {
         goto lab←L100012;
         };
      lab←L100015: ;
SOURCE(2346, 64)
      {
         word limit15;
         word limit16;
         if (((* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+(
                  limit15 = (* (( (ptr) pixels←v4124)+1) ),
                  BCK(j←v6408, limit15)
                  )) ))+1) ) != (* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+(
                  limit16 = (* (( (ptr) pixels←v4124)+1) ),
                  BCK(0, limit16)
                  )) ))+1) ))) {
SOURCE(2396, 14)
            (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ ));
            return;
            };
         };
      j←v6408 = (j←v6408 + 1);
      if ((j←v6408 < noName←c19816)) {
         goto lab←L100015;
         };
      lab←L100012: ;
      };
SOURCE(2412, 188)
   {
      register word i←v6452 = 0;
      lab←L100019: ;
      {
         word t←v6496;
SOURCE(2455, 39)
         t←v6496 = (* ((( (ptr) gf←c22312)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6452, 12)) );
SOURCE(2496, 104)
         if ((t←v6496 == 0)) {
SOURCE(2512, 14)
            slot←v6364 = i←v6452;
            }
         else {
SOURCE(2526, 74)
            if ((pixels←v4124 == t←v6496)) {
SOURCE(2545, 55)
               var←c19848 = (* (( (ptr) (* (( (ptr) gf←c22312)+56)/* var←c19720 */  ))+4) );
               (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ ));
               goto lab←L100020;
               };
            };
         };
      if ((i←v6452 >= 11)) {
         goto lab←L100016;
         };
      i←v6452 = (i←v6452 + 1);
      goto lab←L100019;
      lab←L100016: ;
      };
SOURCE(2611, 35)
   {
      word limit17;
      (*  (ptr) pixels←v4124 ) = (* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+(
               limit17 = (* (( (ptr) pixels←v4124)+1) ),
               BCK(0, limit17)
               )) ))+1) );
      };
SOURCE(2648, 34)
   (* ((( (ptr) gf←c22312)+8)/* scratchPixelBuffers←v2944 */ +BCK(slot←v6364, 12)) ) = pixels←v4124;
SOURCE(2168, 514)
   (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ ));
   return;
   /* c2c skipped dead code */ 
   lab←L100020: ;
SOURCE(2545, 55)
   (void) XR←RaiseError(var←c19848, 0);
   }

static void DoWithScratchPixels←P300(samplesPerPixel←v4184, length←v4212, formal←c0322)
   word samplesPerPixel←v4184;
   word length←v4212;
   word formal←c0322;
   {
   W6 var←c22344;
   /* declaration of action←v4240 skipped */ 
   /* declaration of scratch←v6540 skipped */ 
   var←c22344.f4/* action←v4240 */  = formal←c0322;
   /* DoWithScratchPixels: */ 
SOURCE(2688, 284)
SOURCE(2790, 92)
   var←c22344.f5/* scratch←v6540 */  = (word) ObtainScratchPixels←P180(samplesPerPixel←v4184, length←v4212);
SOURCE(2884, 57)
   {
      word var←c0314;
      var←c0314 = (word) &var←c22344;
       (void) (word) XR←Enable(( ((word)  (fPt) NoName←Q3816) ), ( ((word)  (fPt) NoName←Q3876) ), var←c0314);
      };
SOURCE(2943, 29)
   (void) ReleaseScratchPixels←P240(var←c22344.f5/* scratch←v6540 */ );
   }

static word NoName←Q3816(formal←c0301)
   word formal←c0301;
   {
SOURCE(2884, 57)
   {
      word pd18;
      pd18 = (* (( (ptr) formal←c0301)+4) );
      (void) ( *( (fPt) ((*  (ptr) pd18 ))))((* ((( (ptr) formal←c0301)+5)) ), pd18);
      };
   return(0);
   }

static word NewPixelMap←P360(samplesPerPixel←v4360, box←v4388, maxSample←v4416)
   word samplesPerPixel←v4360;
   W4 box←v4388;
   word maxSample←v4416;
   {
   register ptr gf←c22376 =  (ptr) &globalframe;
   word var←c4460;
   word new←v6584;
   /* NewPixelMap: */ 
SOURCE(2978, 473)
SOURCE(3084, 49)
   {
      word var←c19880;
      word var←c19912;
      word var←c19944;
      var←c19880 = BCK(samplesPerPixel←v4360, 67108863);
      var←c19912 = ((word) var←c19880 << 2);
      var←c19944 = XR←NewObject((24 + var←c19912), (* (( (ptr) gf←c22376)+24) ));
      (* (( (ptr) var←c19944)+5) ) = var←c19880;
      new←v6584 = var←c19944;
      };
SOURCE(3135, 279)
   {
      register word i←v6628 = 0;
      register word noName←c19976;
      noName←c19976 = samplesPerPixel←v4360;
      if ((i←v6628 >= noName←c19976)) {
         goto lab←L100024;
         };
      lab←L100027: ;
      {
         word bitsPerSample←v6672;
SOURCE(3173, 165)
         {
            word var←c20008;
            var←c20008 = (word) ( *( (fPt) ((*  (ptr) maxSample←v4416 ))))(i←v6628, maxSample←v4416);
            {
               word idx19;
               bitsPerSample←v6672 = (
                  idx19 = (word)  ( (var←c20008 < 2) ? 1 :  ( (var←c20008 < 4) ? 2 :  ( (var←c20008 < 16) ? 4 :  ( (var←c20008 < 256) ? 8 :  ( (var←c20008 <= 65535) ? 16 : 32 )  )  )  )  ) ,
                  BCK(idx19, 33)
                  );
               };
            };
SOURCE(3340, 74)
         {
            word var←c20040;
            {
               word pd20;
               pd20 = (* (( (ptr) (* (( (ptr) gf←c22376)+56)/* var←c19720 */  ))+19) );
               var←c20040 = (word) ( *( (fPt) ((*  (ptr) pd20 ))))(box←v4388, bitsPerSample←v6672, 0, pd20);
               };
            {
               word limit21;
               (* ((( (ptr) new←v6584)+6)+(
                     limit21 = (* (( (ptr) new←v6584)+5) ),
                     BCK(i←v6628, limit21)
                     )) ) = var←c20040;
               };
            };
         };
      i←v6628 = (i←v6628 + 1);
      if ((i←v6628 < noName←c19976)) {
         goto lab←L100027;
         };
      lab←L100024: ;
      };
SOURCE(3425, 13)
   (*  (W4Pt) (( (ptr) new←v6584)+1) ) = box←v4388;
SOURCE(3440, 11)
   return(new←v6584);
   }

static word MakePixelMap←P420(s0←v4520, s1←v4548, s2←v4576, s3←v4604, s4←v4632)
   word s0←v4520;
   word s1←v4548;
   word s2←v4576;
   word s3←v4604;
   word s4←v4632;
   {
   register ptr gf←c22408 =  (ptr) &globalframe;
   word var←c4676;
   W5 s←v6716;
   word n←v6772;
   word new←v6800;
   /* MakePixelMap: */ 
SOURCE(3457, 612)
SOURCE(3557, 64)
   s←v6716.f0 = s0←v4520;
   s←v6716.f1 = s1←v4548;
   s←v6716.f2 = s2←v4576;
   s←v6716.f3 = s3←v4604;
   s←v6716.f4 = s4←v4632;
SOURCE(3716, 16)
   {
      word i←v18744;
SOURCE(3623, 90)
      i←v18744 = 0;
SOURCE(3666, 47)
      lab←L100030: ;
      if ( ( (i←v18744 < 5) ? ((* (( (ptr) &s←v6716)+BCK(i←v18744, 5)) ) != 0) : 0 ) ) {
         }
      else {
         goto lab←L100028;
         };
SOURCE(3696, 17)
      i←v18744 = (i←v18744 + 1);
      goto lab←L100030;
      lab←L100028: ;
SOURCE(3623, 90)
      n←v6772 = i←v18744;
      };
SOURCE(3734, 35)
   {
      word var←c20136;
      word var←c20168;
      word var←c20200;
      var←c20136 = BCK(n←v6772, 67108863);
      var←c20168 = ((word) var←c20136 << 2);
      var←c20200 = XR←NewObject((24 + var←c20168), (* (( (ptr) gf←c22408)+24) ));
      (* (( (ptr) var←c20200)+5) ) = var←c20136;
      new←v6800 = var←c20200;
      };
SOURCE(3771, 99)
   if ((n←v6772 == 0)) {
      (*  (W4Pt) (( (ptr) new←v6800)+1) ) = (*  (W4Pt) (( (ptr) gf←c22408)+52)/* var←c19528 */  );
      }
   else {
      {
         W4 var←c20232;
         word map←v19032;
         map←v19032 = s←v6716.f0;
         var←c20232 = (*  (W4Pt) map←v19032 );
         (*  (W4Pt) (( (ptr) new←v6800)+1) ) = var←c20232;
         };
      };
SOURCE(3872, 101)
   {
      register word i←v6940 = 0;
      if ((i←v6940 >= n←v6772)) {
         goto lab←L100033;
         };
      lab←L100036: ;
      {
         word assert←v6984;
SOURCE(3896, 62)
         {
            word var←c0315;
            W4 var←c20264;
            word map←v18984;
            map←v18984 = (* (( (ptr) &s←v6716)+BCK(i←v6940, 5)) );
            var←c20264 = (*  (W4Pt) map←v18984 );
            var←c0315 = (var←c0315 & 4294967294) | ((word) (1 & (XR←EqualWords(&var←c20264, (( (ptr) new←v6800)+1), 4))));
            {
               word idx22;
               assert←v6984 = (
                  idx22 = (word) ( (unsigned) (var←c0315 & 1) - 1),
                  BCK(idx22, 1)
                  );
               };
            };
SOURCE(3960, 13)
         {
            word limit23;
            (* ((( (ptr) new←v6800)+6)+(
                  limit23 = (* (( (ptr) new←v6800)+5) ),
                  BCK(i←v6940, limit23)
                  )) ) = (* (( (ptr) &s←v6716)+BCK(i←v6940, 5)) );
            };
         };
      i←v6940 = (i←v6940 + 1);
      if ((i←v6940 < n←v6772)) {
         goto lab←L100036;
         };
      lab←L100033: ;
      };
SOURCE(3984, 4)
   {
      register word i←v7048;
      word assert←v7092;
      i←v7048 = n←v6772;
      if ((i←v7048 > 4)) {
         goto lab←L100038;
         };
      lab←L100041: ;
SOURCE(4008, 37)
      {
         word idx24;
         assert←v7092 = (
            idx24 = (word) ( (unsigned) ((* (( (ptr) &s←v6716)+BCK(i←v7048, 5)) ) == 0) - 1),
            BCK(idx24, 1)
            );
         };
      if ((i←v7048 >= 4)) {
         goto lab←L100038;
         };
      i←v7048 = (i←v7048 + 1);
      goto lab←L100041;
      lab←L100038: ;
      };
SOURCE(4056, 13)
   return(new←v6800);
   }

static void GetPixels←P480(self←v4736, initIndex←v4764, delta←v4792, pixels←v4820, start←v4848, count←v4876)
   word self←v4736;
   W2 initIndex←v4764;
   W2 delta←v4792;
   word pixels←v4820;
   word start←v4848;
   word count←v4876;
   {
   register ptr gf←c22440 =  (ptr) &globalframe;
   /* GetPixels: */ 
SOURCE(4073, 307)
SOURCE(4262, 118)
   {
      register word i←v7156 = 0;
      register word noName←c20296;
      noName←c20296 = (* (( (ptr) self←v4736)+5) );
      if ((i←v7156 >= noName←c20296)) {
         goto lab←L100042;
         };
      lab←L100045: ;
SOURCE(4305, 75)
      {
         word pd25;
         word limit26;
         word limit27;
         pd25 = (* (( (ptr) (* (( (ptr) gf←c22440)+56)/* var←c19720 */  ))+44) );
         (void) ( *( (fPt) ((*  (ptr) pd25 ))))((* ((( (ptr) self←v4736)+6)+(
                  limit26 = (* (( (ptr) self←v4736)+5) ),
                  BCK(i←v7156, limit26)
                  )) ), initIndex←v4764, delta←v4792, (* ((( (ptr) pixels←v4820)+2)+(
                  limit27 = (* (( (ptr) pixels←v4820)+1) ),
                  BCK(i←v7156, limit27)
                  )) ), start←v4848, count←v4876, pd25);
         };
      i←v7156 = (i←v7156 + 1);
      if ((i←v7156 < noName←c20296)) {
         goto lab←L100045;
         };
      lab←L100042: ;
      };
   }

static void PutPixels←P540(self←v4936, initIndex←v4964, delta←v4992, pixels←v5020, start←v5048, count←v5076, function←v5104)
   word self←v4936;
   W2 initIndex←v4964;
   W2 delta←v4992;
   word pixels←v5020;
   word start←v5048;
   word count←v5076;
   word function←v5104;
   {
   register ptr gf←c22472 =  (ptr) &globalframe;
   /* PutPixels: */ 
SOURCE(4395, 378)
SOURCE(4645, 128)
   {
      register word i←v7200 = 0;
      register word noName←c20328;
      noName←c20328 = (* (( (ptr) self←v4936)+5) );
      if ((i←v7200 >= noName←c20328)) {
         goto lab←L100046;
         };
      lab←L100049: ;
SOURCE(4688, 85)
      {
         word pd28;
         word limit29;
         word limit30;
         pd28 = (* (( (ptr) (* (( (ptr) gf←c22472)+56)/* var←c19720 */  ))+47) );
         (void) ( *( (fPt) ((*  (ptr) pd28 ))))((* ((( (ptr) self←v4936)+6)+(
                  limit29 = (* (( (ptr) self←v4936)+5) ),
                  BCK(i←v7200, limit29)
                  )) ), initIndex←v4964, delta←v4992, (* ((( (ptr) pixels←v5020)+2)+(
                  limit30 = (* (( (ptr) pixels←v5020)+1) ),
                  BCK(i←v7200, limit30)
                  )) ), start←v5048, count←v5076
            , function←v5104, pd28);
         };
      i←v7200 = (i←v7200 + 1);
      if ((i←v7200 < noName←c20328)) {
         goto lab←L100049;
         };
      lab←L100046: ;
      };
   }

static word ScaledFromRealMod←P600(d←v5164, m←v5192)
   word d←v5164;
   word m←v5192;
   {
   word var←c5256;
   word s←v7244 = 0;
   /* ScaledFromRealMod: */ 
SOURCE(4826, 495)
SOURCE(4933, 365)
   if ((m←v5192 != 0)) {
SOURCE(4947, 358)
      {
         word modulus←v7288;
SOURCE(4949, 17)
         {
            float tf31;
            modulus←v7288 = (
               tf31 = (float)(unsigned)m←v5192,  *(word*)&tf31
               );
            };
SOURCE(4968, 237)
         {
            word var←c20392;
            var←c20392 = d←v5164;
            {
               word x32;
               word x34;
               word x35;
               word x36;
               word x41;
               word x42;
               word x43;
               word x44;
               if ( ( ((
                  x32 = var←c20392,  *(float*)&x32
                  ) >= (
                  x34 = (*  (ptr) &fc33 ),  *(float*)&x34
                  )) ? ((
                  x35 = var←c20392,  *(float*)&x35
                  ) < (
                  x36 = modulus←v7288,  *(float*)&x36
                  )) : 0 ) ) {
SOURCE(5001, 38)
                  {
                     word x37;
                     word x39;
                     float tf40;
                     s←v7244 = (word) XR←REAL32←Fix((
                           tf40 = (
/*1*/   x37 = d←v5164,  *(float*)&x37
/*1*/   ) * (
/*1*/   x39 = (*  (ptr) &fc38 ),  *(float*)&x39
/*1*/   ),  *(word*)&tf40
                           ));
                     };
                  }
               else {
                  if ( ( ((
                     x41 = var←c20392,  *(float*)&x41
                     ) >  - (
                     x42 = modulus←v7288,  *(float*)&x42
                     )) ? ((
                     x43 = var←c20392,  *(float*)&x43
                     ) < (
                     x44 = (*  (ptr) &fc33 ),  *(float*)&x44
                     )) : 0 ) ) {
SOURCE(5061, 51)
                     {
                        word x45;
                        word x46;
                        float tf47;
                        s←v7244 = (((word) m←v5192 << 16) - (word) XR←REAL32←Fix((
/*1*/   tf47 = ( - (
/*1*/      x45 = d←v5164,  *(float*)&x45
/*1*/      )) * (
/*1*/      x46 = (*  (ptr) &fc38 ),  *(float*)&x46
/*1*/      ),  *(word*)&tf47
/*1*/   )));
                        };
                     }
                  else {
SOURCE(5125, 80)
                     {
                        word var←c20424;
                        {
                           word x48;
                           word x49;
                           word x50;
                           word x51;
                           float tf52;
                           word x53;
                           *(float*)&var←c20424 = ((
/*1*/   x48 = d←v5164,  *(float*)&x48
/*1*/   ) - ((
/*1*/   x49 = modulus←v7288,  *(float*)&x49
/*1*/   ) * (float)(int)(word) XR←REAL32←Floor((
/*1*/      tf52 = (
/*1*/         x50 = d←v5164,  *(float*)&x50
/*1*/         ) / (
/*1*/         x51 = modulus←v7288,  *(float*)&x51
/*1*/         ),  *(word*)&tf52
/*1*/      )))) * (
/*1*/   x53 = (*  (ptr) &fc38 ),  *(float*)&x53
/*1*/   );
                           };
                        s←v7244 = (word) XR←REAL32←Round(var←c20424);
                        };
                     };
                  };
               };
            };
SOURCE(5207, 33)
         if (( (int)s←v7244 <  (int)0)) {
SOURCE(5225, 15)
            {
               word idx54;
               s←v7244 = (s←v7244 & 65535) | (((word) (
                        idx54 = (word) ( (unsigned) ((unsigned)s←v7244 >> 16) + m←v5192),
                        BCK(idx54, 65536)
                        )) << 16);
               };
            };
SOURCE(5243, 34)
         if (( (unsigned) ((unsigned)s←v7244 >> 16) >= m←v5192)) {
SOURCE(5262, 15)
            {
               word idx55;
               s←v7244 = (s←v7244 & 65535) | (((word) (
                        idx55 = (word) ( (unsigned) ((unsigned)s←v7244 >> 16) - m←v5192),
                        BCK(idx55, 65536)
                        )) << 16);
               };
            };
SOURCE(5280, 18)
         if (( (unsigned) ((unsigned)s←v7244 >> 16) >= m←v5192)) {
SOURCE(5298, 5)
            (void) XR←RaiseUnnamedError();
            };
         };
      };
SOURCE(5308, 13)
   return(s←v7244);
   }

static void Resample1←P660(formal←c0323, source←v5716, m←v5744, interpolate←v5772)
   word formal←c0323;
   word source←v5716;
   word m←v5744;
   word interpolate←v5772;
   {
   W9 var←c22504;
   /* declaration of dest←v5688 skipped */ 
   /* declaration of var←c20456 skipped */ 
   /* declaration of var←c20488 skipped */ 
   (* (( (ptr) &var←c22504)+4)/* dest←v5688 */  ) = formal←c0323;
   /* Resample1: */ 
SOURCE(5835, 391)
   {
      word tmpAddr56;
      tmpAddr56 = (word) (( (ptr) &var←c22504)+5)/* var←c20456 */ ;
      (*  (ptr) tmpAddr56 ) = ( ((word)  (fPt) action←P1728) );
      (* (( (ptr) tmpAddr56) + 1) ) = 1;
      };
   {
      word tmpAddr57;
      tmpAddr57 = (word) (( (ptr) &var←c22504)+7)/* var←c20488 */ ;
      (*  (ptr) tmpAddr57 ) = ( ((word)  (fPt) boxes←P1668) );
      (* (( (ptr) tmpAddr57) + 1) ) = 1;
      };
SOURCE(6124, 102)
   (void) Resample←P720(source←v5716, m←v5744, interpolate←v5772, (word) (( (bPt) &var←c22504)+28)/* var←c20488 */ , (*  (W4Pt) (
         ( (ptr) (* (( (ptr) &var←c22504)+4)/* dest←v5688 */  ))+1) ), (word) (( (bPt) &var←c22504)+20)/* var←c20456 */ );
   }

static void boxes←P1668(boxAction←v17380, formal←c22536)
   word boxAction←v17380;
   word formal←c22536;
   {
   formal←c22536 = (formal←c22536 - 28);
   /* boxes: */ 
SOURCE(5918, 45)
SOURCE(5944, 19)
   (void) ( *( (fPt) ((*  (ptr) boxAction←v17380 ))))((*  (W4Pt) ((( (ptr) (* (( (ptr) formal←c22536)+4) ))+1)) ), boxAction←v17380)
   ;
   }

static void action←P1728(pixels←v17440, min←v17468, formal←c22600)
   word pixels←v17440;
   W2 min←v17468;
   word formal←c22600;
   {
   register ptr gf←c22568 =  (ptr) &globalframe;
   formal←c22600 = (formal←c22600 - 20);
   /* action: */ 
SOURCE(5966, 144)
SOURCE(5993, 117)
   {
      register word j←v7404 = 0;
      register word noName←c20520;
      noName←c20520 = (* (( (ptr) pixels←v17440)+1) );
      if ((j←v7404 >= noName←c20520)) {
         goto lab←L100050;
         };
      lab←L100053: ;
SOURCE(6038, 72)
      {
         W2 var←c20552;
         var←c20552.f0 = 0;
         var←c20552.f1 = 1;
         {
            word pd58;
            word limit59;
            word limit60;
            pd58 = (* (( (ptr) (* (( (ptr) gf←c22568)+56)/* var←c19720 */  ))+47) );
            (void) ( *( (fPt) ((*  (ptr) pd58 ))))((* ((( (ptr) (* (( (ptr) formal←c22600)+4) ))+6)+(
                     limit59 = (* (( (ptr) (* (( (ptr) formal←c22600)+4) ))+5) ),
                     BCK(j←v7404, limit59)
                     )) ), min←v17468, var←c20552, (* ((( (ptr) pixels←v17440)+2)+(
                     limit60 = (* (( (ptr) pixels←v17440)+1) ),
                     BCK(j←v7404, limit60)
                     )) ), 0, 2147483647
               , 0, pd58);
            };
         };
      j←v7404 = (j←v7404 + 1);
      if ((j←v7404 < noName←c20520)) {
         goto lab←L100053;
         };
      lab←L100050: ;
      };
   }

static void Resample←P720(formal←c0324, m←v5860, interpolate←v5888, boxes←v5916, bounds←v5944, formal←c0325)
   word formal←c0324;
   word m←v5860;
   word interpolate←v5888;
   word boxes←v5916;
   W4 bounds←v5944;
   word formal←c0325;
   {
   W22 var←c22632;
   /* declaration of self←v5832 skipped */ 
   /* declaration of action←v5972 skipped */ 
   register ptr gf←c22664 =  (ptr) &globalframe;
   /* declaration of var←c20584 skipped */ 
   /* declaration of var←c20616 skipped */ 
   (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ) = formal←c0324;
   (* (( (ptr) &var←c22632)+5)/* action←v5972 */  ) = formal←c0325;
   /* Resample: */ 
SOURCE(6232, 11206)
   {
      word tmpAddr61;
      tmpAddr61 = (word) (( (ptr) &var←c22632)+6)/* var←c20584 */ ;
      (*  (ptr) tmpAddr61 ) = ( ((word)  (fPt) boxActionInterpolatedSamples←P1944) );
      (* (( (ptr) tmpAddr61) + 1) ) = 1;
      };
   {
      word tmpAddr62;
      tmpAddr62 = (word) (( (ptr) &var←c22632)+8)/* var←c20616 */ ;
      (*  (ptr) tmpAddr62 ) = ( ((word)  (fPt) boxActionPointSamples←P1884) );
      (* (( (ptr) tmpAddr62) + 1) ) = 1;
      };
SOURCE(6377, 11061)
   {
      word pd63;
      pd63 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */  ))+52) );
      if ((0 == (word) ( *( (fPt) ((*  (ptr) pd63 ))))(m←v5860, pd63))) {
SOURCE(6422, 11018)
         {
            /* declaration of samplesPerPixel←v7448 skipped */ 
            /* declaration of sSize←v7476 skipped */ 
            /* declaration of fSize←v7504 skipped */ 
            /* declaration of ssDelta←v7532 skipped */ 
            /* declaration of fsDelta←v7560 skipped */ 
            /* declaration of sfDelta←v7588 skipped */ 
            /* declaration of ffDelta←v7616 skipped */ 
            /* declaration of d0←v7644 skipped */ 
            /* declaration of s0←v7672 skipped */ 
            /* declaration of f0←v7700 skipped */ 
            /* declaration of pixels←v7728 skipped */ 
            word rs←v7756;
            word rf←v7784;
SOURCE(6424, 43)
            (* (( (ptr) &var←c22632)+10)/* samplesPerPixel←v7448 */  ) = (* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ))+5)
             );
SOURCE(6469, 44)
            {
               word idx64;
               (* (( (ptr) &var←c22632)+11)/* sSize←v7476 */  ) = (
                  idx64 = (word) ((* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ))+3) ) - (* (( (ptr) (* (( (ptr) &var←c22632)+4)
                     /* self←v5832 */  ))+1) )),
                  BCK(idx64, 32768)
                  );
               };
SOURCE(6560, 44)
            {
               word idx65;
               (* (( (ptr) &var←c22632)+12)/* fSize←v7504 */  ) = (
                  idx65 = (word) ((* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ))+4) ) - (* (( (ptr) (* (( (ptr) &var←c22632)+4)
                     /* self←v5832 */  ))+2) )),
                  BCK(idx65, 32768)
                  );
               };
SOURCE(6943, 23)
            (*  (W2Pt) (( (ptr) &var←c22632)+17)/* d0←v7644 */  ) = (*  (W2Pt) &bounds←v5944 );
SOURCE(7130, 76)
            {
               word var←c20680;
               {
                  word pd66;
                  word idx67;
                  pd66 = (* (( (ptr) (* (( (ptr) gf←c22664)+58)/* var←c20712 */  ))+17) );
                  var←c20680 = (
                     idx67 = (word) ( *( (fPt) ((*  (ptr) pd66 ))))(bounds←v5944, pd66),
                     SGNCK(idx67)
                     );
                  };
               (* (( (ptr) &var←c22632)+21)/* pixels←v7728 */  ) = (word) ObtainScratchPixels←P180((* (( (ptr) &var←c22632)+10)/* samplesPerPixel←v7448 */  ), var←c20680)
               ;
               };
SOURCE(7208, 18)
            rs←v7756 = (*  (ptr) &fc33 );
            rf←v7784 = (*  (ptr) &fc33 );
SOURCE(16627, 64)
            {
               W2 var←c20776;
               {
                  W2 var←c0150;
                  {
                     W2 var←c20744;
                     var←c20744.f0 = (*  (ptr) &fc33 );
                     var←c20744.f1 = (*  (ptr) &fc68 );
                     {
                        word pd69;
                        pd69 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */  ))+42) );
                        (void) ( *( (fPt) ((*  (ptr) pd69 ))))((word) &var←c0150, m←v5860, var←c20744, pd69);
                        };
                     };
                  var←c20776 = var←c0150;
                  };
               rf←v7784 = var←c20776.f1;
               rs←v7756 = var←c20776.f0;
               };
SOURCE(16693, 41)
            (* (( (ptr) &var←c22632)+15)/* sfDelta←v7588 */  ) = (word) ScaledFromRealMod←P600(rs←v7756, (* (( (ptr) &var←c22632)+11)
               /* sSize←v7476 */  ));
SOURCE(16736, 41)
            (* (( (ptr) &var←c22632)+16)/* ffDelta←v7616 */  ) = (word) ScaledFromRealMod←P600(rf←v7784, (* (( (ptr) &var←c22632)+12)
               /* fSize←v7504 */  ));
SOURCE(16779, 64)
            {
               W2 var←c20840;
               {
                  W2 var←c0153;
                  {
                     W2 var←c20808;
                     var←c20808.f0 = (*  (ptr) &fc68 );
                     var←c20808.f1 = (*  (ptr) &fc33 );
                     {
                        word pd70;
                        pd70 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */  ))+42) );
                        (void) ( *( (fPt) ((*  (ptr) pd70 ))))((word) &var←c0153, m←v5860, var←c20808, pd70);
                        };
                     };
                  var←c20840 = var←c0153;
                  };
               rf←v7784 = var←c20840.f1;
               rs←v7756 = var←c20840.f0;
               };
SOURCE(16845, 41)
            (* (( (ptr) &var←c22632)+13)/* ssDelta←v7532 */  ) = (word) ScaledFromRealMod←P600(rs←v7756, (* (( (ptr) &var←c22632)+11)
               /* sSize←v7476 */  ));
SOURCE(16888, 41)
            (* (( (ptr) &var←c22632)+14)/* fsDelta←v7560 */  ) = (word) ScaledFromRealMod←P600(rf←v7784, (* (( (ptr) &var←c22632)+12)
               /* fSize←v7504 */  ));
SOURCE(16931, 75)
            {
               W2 var←c20904;
               {
                  W2 var←c0156;
                  {
                     W2 var←c20872;
                     {
                        word x72;
                        *(float*)&var←c20872.f0 = (float)(int)(* (( (ptr) &var←c22632)+17) ) + (
                           x72 = (*  (ptr) &fc71 ),  *(float*)&x72
                           );
                        };
                     {
                        word x73;
                        *(float*)&var←c20872.f1 = (float)(int)(* (( (ptr) &var←c22632)+18) ) + (
                           x73 = (*  (ptr) &fc71 ),  *(float*)&x73
                           );
                        };
                     {
                        word pd74;
                        pd74 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */  ))+41) );
                        (void) ( *( (fPt) ((*  (ptr) pd74 ))))((word) &var←c0156, m←v5860, var←c20872, pd74);
                        };
                     };
                  var←c20904 = var←c0156;
                  };
               rf←v7784 = var←c20904.f1;
               rs←v7756 = var←c20904.f0;
               };
SOURCE(17008, 157)
            {
               word tc75;
               word tc76;
               word tc77;
               word tc78;
               if ( (  ( (0 != interpolate←v5888) ? (0 != (word) HalfInteger←P780(rs←v7756)) : 0 )  ? (0 != (word) HalfInteger←P780(rf←v7784)
               ) : 0 ) ) {
                  tc78 =  (word) ( (unsigned) (* (( (hPt) &var←c22632)+31) ) == 0);
                  }
               else {
                  tc78 =  (word) 0;
                  };
               if (tc78) {
                  tc77 =  (word) ( (unsigned) (* (( (hPt) &var←c22632)+33) ) == 0);
                  }
               else {
                  tc77 =  (word) 0;
                  };
               if (tc77) {
                  tc76 =  (word) ( (unsigned) (* (( (hPt) &var←c22632)+27) ) == 0);
                  }
               else {
                  tc76 =  (word) 0;
                  };
               if (tc76) {
                  tc75 =  (word) ( (unsigned) (* (( (hPt) &var←c22632)+29) ) == 0);
                  }
               else {
                  tc75 =  (word) 0;
                  };
               if (tc75) {
SOURCE(17146, 19)
                  interpolate←v5888 = 0;
                  };
               };
SOURCE(17170, 47)
            if ((0 != interpolate←v5888)) {
SOURCE(17192, 11)
               {
                  word x79;
                  word x80;
                  *(float*)&rs←v7756 = (
                     x79 = rs←v7756,  *(float*)&x79
                     ) - (
                     x80 = (*  (ptr) &fc71 ),  *(float*)&x80
                     );
                  };
SOURCE(17205, 12)
               {
                  word x81;
                  word x82;
                  *(float*)&rf←v7784 = (
                     x81 = rf←v7784,  *(float*)&x81
                     ) - (
                     x82 = (*  (ptr) &fc71 ),  *(float*)&x82
                     );
                  };
               };
SOURCE(17220, 51)
            {
               word x83;
               float tf84;
               (* (( (ptr) &var←c22632)+19)/* s0←v7672 */  ) = (word) ScaledFromRealMod←P600((
                     tf84 = (
                        x83 = rs←v7756,  *(float*)&x83
                        ) - (float)(int)(* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ))+1) ),  *(word*)&tf84
                     ), (* (( (ptr) &var←c22632)+11)/* sSize←v7476 */  ));
               };
SOURCE(17273, 51)
            {
               word x85;
               float tf86;
               (* (( (ptr) &var←c22632)+20)/* f0←v7700 */  ) = (word) ScaledFromRealMod←P600((
                     tf86 = (
                        x85 = rf←v7784,  *(float*)&x85
                        ) - (float)(int)(* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */  ))+2) ),  *(word*)&tf86
                     ), (* (( (ptr) &var←c22632)+12)/* fSize←v7504 */  ));
               };
SOURCE(17326, 82)
            if ((0 != interpolate←v5888)) {
               (void) ( *( (fPt) ((*  (ptr) boxes←v5916 ))))((word) ((( (bPt) &var←c22632)+24)/* var←c20584 */ ), boxes←v5916);
               }
            else {
               (void) ( *( (fPt) ((*  (ptr) boxes←v5916 ))))((word) ((( (bPt) &var←c22632)+32)/* var←c20616 */ ), boxes←v5916);
               };
SOURCE(17410, 28)
            (void) ReleaseScratchPixels←P240((* ((( (ptr) &var←c22632)+21)/* pixels←v7728 */ ) ));
            };
         };
      };
   }

static void boxActionPointSamples←P1884(box←v17528, formal←c22728)
   W4 box←v17528;
   word formal←c22728;
   {
   register ptr gf←c22696 =  (ptr) &globalframe;
   word count←v7884;
   word smax←v7912;
   word fmax←v7940;
   word ssup←v7968;
   word fsup←v7996;
   word ssdn←v8024;
   word fsdn←v8052;
   word sfup←v8080;
   word ffup←v8108;
   word sfdn←v8136;
   word ffdn←v8164;
   word d1s←v8192;
   word d1f←v8220;
   word s1←v8248;
   word f1←v8276;
   formal←c22728 = (formal←c22728 - 32);
   /* boxActionPointSamples: */ 
SOURCE(7228, 38)
SOURCE(7268, 26)
   {
      word pd87;
      word idx88;
      pd87 = (* (( (ptr) (* (( (ptr) gf←c22696)+58)/* var←c20712 */  ))+17) );
      count←v7884 = (
         idx88 = (word) ( *( (fPt) ((*  (ptr) pd87 ))))(box←v17528, pd87),
         SGNCK(idx88)
         );
      };
SOURCE(7296, 50)
   smax←v7912 = ((* (( (ptr) formal←c22728)+11) ) << 16);
SOURCE(7348, 50)
   fmax←v7940 = ((* (( (ptr) formal←c22728)+12) ) << 16);
SOURCE(7400, 33)
   ssup←v7968 = (* (( (ptr) formal←c22728)+13) );
SOURCE(7435, 33)
   fsup←v7996 = (* (( (ptr) formal←c22728)+14) );
SOURCE(7470, 47)
   ssdn←v8024 = (smax←v7912 - ssup←v7968);
SOURCE(7519, 47)
   fsdn←v8052 = (fmax←v7940 - fsup←v7996);
SOURCE(7568, 33)
   sfup←v8080 = (* (( (ptr) formal←c22728)+15) );
SOURCE(7603, 33)
   ffup←v8108 = (* (( (ptr) formal←c22728)+16) );
SOURCE(7638, 47)
   sfdn←v8136 = (smax←v7912 - sfup←v8080);
SOURCE(7687, 47)
   ffdn←v8164 = (fmax←v7940 - ffup←v8108);
SOURCE(7801, 26)
   s1←v8248 = (* (( (ptr) formal←c22728)+19) );
SOURCE(7869, 26)
   f1←v8276 = (* (( (ptr) formal←c22728)+20) );
SOURCE(7937, 15)
   {
      W2 var←c21128;
      var←c21128 = (*  (W2Pt) (( (ptr) formal←c22728)+17) );
      d1f←v8220 = var←c21128.f1;
      d1s←v8192 = var←c21128.f0;
      };
SOURCE(7954, 178)
   lab←L100056: ;
   if (( (int)d1s←v8192 <  (int)box←v17528.f0)) {
      }
   else {
      goto lab←L100054;
      };
SOURCE(7977, 11)
   d1s←v8192 = (d1s←v8192 + 1);
SOURCE(7990, 70)
   if ((s1←v8248 < ssdn←v8024)) {
SOURCE(8012, 27)
      s1←v8248 = (s1←v8248 + ssup←v7968);
      }
   else {
SOURCE(8039, 21)
      s1←v8248 = (s1←v8248 - ssdn←v8024);
      };
SOURCE(8062, 70)
   if ((f1←v8276 < fsdn←v8052)) {
SOURCE(8084, 27)
      f1←v8276 = (f1←v8276 + fsup←v7996);
      }
   else {
SOURCE(8111, 21)
      f1←v8276 = (f1←v8276 - fsdn←v8052);
      };
   goto lab←L100056;
   lab←L100054: ;
SOURCE(8143, 180)
   lab←L100059: ;
   if (( (int)d1s←v8192 >  (int)box←v17528.f0)) {
      }
   else {
      goto lab←L100057;
      };
SOURCE(8166, 11)
   d1s←v8192 = (d1s←v8192 - 1);
SOURCE(8179, 71)
   if ((s1←v8248 >= ssup←v7968)) {
SOURCE(8202, 27)
      s1←v8248 = (s1←v8248 - ssup←v7968);
      }
   else {
SOURCE(8229, 21)
      s1←v8248 = (s1←v8248 + ssdn←v8024);
      };
SOURCE(8252, 71)
   if ((f1←v8276 >= fsup←v7996)) {
SOURCE(8275, 27)
      f1←v8276 = (f1←v8276 - fsup←v7996);
      }
   else {
SOURCE(8302, 21)
      f1←v8276 = (f1←v8276 + fsdn←v8052);
      };
   goto lab←L100059;
   lab←L100057: ;
SOURCE(8334, 15)
   (* (( (ptr) formal←c22728)+17) ) = d1s←v8192;
   (* (( (ptr) formal←c22728)+18) ) = d1f←v8220;
SOURCE(8351, 13)
   (* (( (ptr) formal←c22728)+19) ) = s1←v8248;
SOURCE(8366, 13)
   (* (( (ptr) formal←c22728)+20) ) = f1←v8276;
SOURCE(8381, 178)
   lab←L100062: ;
   if (( (int)d1f←v8220 <  (int)box←v17528.f1)) {
      }
   else {
      goto lab←L100060;
      };
SOURCE(8404, 11)
   d1f←v8220 = (d1f←v8220 + 1);
SOURCE(8417, 70)
   if ((s1←v8248 < sfdn←v8136)) {
SOURCE(8439, 27)
      s1←v8248 = (s1←v8248 + sfup←v8080);
      }
   else {
SOURCE(8466, 21)
      s1←v8248 = (s1←v8248 - sfdn←v8136);
      };
SOURCE(8489, 70)
   if ((f1←v8276 < ffdn←v8164)) {
SOURCE(8511, 27)
      f1←v8276 = (f1←v8276 + ffup←v8108);
      }
   else {
SOURCE(8538, 21)
      f1←v8276 = (f1←v8276 - ffdn←v8164);
      };
   goto lab←L100062;
   lab←L100060: ;
SOURCE(8570, 180)
   lab←L100065: ;
   if (( (int)d1f←v8220 >  (int)box←v17528.f1)) {
      }
   else {
      goto lab←L100063;
      };
SOURCE(8593, 11)
   d1f←v8220 = (d1f←v8220 - 1);
SOURCE(8606, 71)
   if ((s1←v8248 >= sfup←v8080)) {
SOURCE(8629, 27)
      s1←v8248 = (s1←v8248 - sfup←v8080);
      }
   else {
SOURCE(8656, 21)
      s1←v8248 = (s1←v8248 + sfdn←v8136);
      };
SOURCE(8679, 71)
   if ((f1←v8276 >= ffup←v8108)) {
SOURCE(8702, 27)
      f1←v8276 = (f1←v8276 - ffup←v8108);
      }
   else {
SOURCE(8729, 21)
      f1←v8276 = (f1←v8276 + ffdn←v8164);
      };
   goto lab←L100065;
   lab←L100063: ;
SOURCE(8761, 21)
   (*  (ptr) (* (( (ptr) formal←c22728)+21) ) ) = count←v7884;
SOURCE(8784, 3435)
   lab←L100068: ;
SOURCE(8817, 3164)
   {
      register word i←v8320 = 0;
      if ((i←v8320 >= (* (( (ptr) formal←c22728)+10) ))) {
         goto lab←L100069;
         };
      lab←L100072: ;
      {
         word map←v8364;
         word rasterMap←v8392;
         word easyLineCalc←v8420;
         word samples←v8448;
         word s←v8476;
         word f←v8504;
SOURCE(8855, 37)
         {
            word limit89;
            map←v8364 = (* ((( (ptr) (* (( (ptr) formal←c22728)+4) ))+6)+(
                  limit89 = (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+5) ),
                  BCK(i←v8320, limit89)
                  )) );
            };
SOURCE(8894, 63)
         {
            word var←c21160;
            var←c21160 = map←v8364;
            if ((var←c21160 == 0)) {
               goto lab←L100073;
               };
            if (((* (( (ptr) var←c21160)+6) ) == 0)) {
               rasterMap←v8392 = var←c21160;
               }
            else {
               lab←L100073: ;
               rasterMap←v8392 = 0;
               };
            };
SOURCE(9010, 107)
         easyLineCalc←v8420 =  (unsigned)  (  ( (rasterMap←v8392 != 0) ? ((* (( (ptr) rasterMap←v8392)+9) ) == 0) : 0 )  ? (((* (( (ptr) rasterMap←v8392)+7)
          ) & 037) == 0) : 0 ) ;
SOURCE(9119, 46)
         {
            word limit90;
            samples←v8448 = (* ((( (ptr) (* (( (ptr) formal←c22728)+21) ))+2)+(
                  limit90 = (* (( (ptr) (* (( (ptr) formal←c22728)+21) ))+1) ),
                  BCK(i←v8320, limit90)
                  )) );
            };
SOURCE(9167, 25)
         s←v8476 = s1←v8248;
SOURCE(9194, 25)
         f←v8504 = f1←v8276;
         if ( ( ( (int)(* (( (ptr) formal←c22728)+15) ) ==  (int)0) ? ((* (( (ptr) formal←c22728)+16) ) == 65536) : 0 ) ) {
SOURCE(9291, 537)
            {
               word count1←v8592;
               word count2←v8620;
               word count3←v8648;
SOURCE(9293, 37)
               {
                  word x91;
                  count1←v8592 = (x91 = ((* (( (ptr) formal←c22728)+12) ) -  (unsigned) ((unsigned)f←v8504 >> 16)),
                     MIN((int)(word), count←v7884, x91));
                  };
SOURCE(9332, 38)
               {
                  word x92;
                  count2←v8620 = (x92 =  (unsigned) ((unsigned)f←v8504 >> 16),
                     MIN((int)(word), (count←v7884 - count1←v8592), x92));
                  };
SOURCE(9372, 33)
               count3←v8648 = ((count←v7884 - count1←v8592) - count2←v8620);
SOURCE(9407, 136)
               {
                  W2 var←c21224;
                  W2 var←c21256;
                  var←c21224.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) ));
                  var←c21224.f1 = ( (unsigned) ((unsigned)f←v8504 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) ));
                  var←c21256.f0 = 0;
                  var←c21256.f1 = 1;
                  {
                     word pd93;
                     pd93 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */  ))+44) );
                     (void) ( *( (fPt) ((*  (ptr) pd93 ))))(map←v8364, var←c21224, var←c21256, samples←v8448, 0, count1←v8592, pd93);
                     };
                  };
SOURCE(9545, 155)
               if ((count2←v8620 != 0)) {
SOURCE(9564, 136)
                  {
                     W2 var←c21288;
                     W2 var←c21320;
                     var←c21288.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) ));
                     var←c21288.f1 = (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) );
                     var←c21320.f0 = 0;
                     var←c21320.f1 = 1;
                     {
                        word pd94;
                        pd94 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */  ))+44) );
                        (void) ( *( (fPt) ((*  (ptr) pd94 ))))(map←v8364, var←c21288, var←c21320, samples←v8448, count1←v8592, count2←v8620, pd94)
                        ;
                        };
                     };
                  };
SOURCE(9702, 124)
               if ((count3←v8648 != 0)) {
SOURCE(9721, 105)
                  {
                     word pd95;
                     pd95 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */  ))+12) );
                     (void) ( *( (fPt) ((*  (ptr) pd95 ))))(samples←v8448, samples←v8448, SGNCK((count1←v8592 + count2←v8620)), 0, count3←v8648, pd95)
                     ;
                     };
                  };
               };
            }
         else {
            if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 1) : 0 ) ) {
SOURCE(9877, 497)
               {
                  word base←v8692;
                  word upl←v8720;
                  word result←v8748;
                  word lastSHi←v8776;
                  word line←v8804;
SOURCE(9879, 46)
                  base←v8692 = (* (( (ptr) rasterMap←v8392)+8) );
SOURCE(9927, 44)
                  upl←v8720 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3);
SOURCE(9973, 65)
                  {
                     word check←v6104;
                     check←v6104 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884);
SOURCE(1099, 81)
                     result←v8748 = (samples←v8448 + 8);
                     };
SOURCE(10040, 24)
                  lastSHi←v8776 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(10066, 33)
                  line←v8804 = (base←v8692 + (lastSHi←v8776 * upl←v8720));
SOURCE(10101, 262)
                  {
                     register word k←v8848 = 0;
                     if ((k←v8848 >= count←v7884)) {
                        goto lab←L100075;
                        };
                     lab←L100078: ;
SOURCE(10129, 63)
                     if ((lastSHi←v8776 !=  (unsigned) ((unsigned)s←v8476 >> 16))) {
SOURCE(10153, 14)
                        lastSHi←v8776 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(10169, 23)
                        line←v8804 = (base←v8692 + (lastSHi←v8776 * upl←v8720));
                        };
SOURCE(10203, 25)
SOURCE(10205, 23)
                     {
                        word ix96;
                        (* (( (ptr) result←v8748)+k←v8848) ) =  (unsigned) (
                           ix96 = ((unsigned)f←v8504 >> 16),
                           ((*  (ptr) (( (ptr) line←v8804) + ((word) ix96 >> 5)) ) >> (31 - ((word) (ix96 & 037)))) & 1
                           );
                        };
SOURCE(10231, 65)
                     if ((s←v8476 < sfdn←v8136)) {
SOURCE(10252, 25)
                        s←v8476 = (s←v8476 + sfup←v8080);
                        }
                     else {
SOURCE(10277, 19)
                        s←v8476 = (s←v8476 - sfdn←v8136);
                        };
SOURCE(10298, 65)
                     if ((f←v8504 < ffdn←v8164)) {
SOURCE(10319, 25)
                        f←v8504 = (f←v8504 + ffup←v8108);
                        }
                     else {
SOURCE(10344, 19)
                        f←v8504 = (f←v8504 - ffdn←v8164);
                        };
                     k←v8848 = (k←v8848 + 1);
                     if ((k←v8848 < count←v7884)) {
                        goto lab←L100078;
                        };
                     lab←L100075: ;
                     };
                  };
               }
            else {
               if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 8) : 0 ) ) {
SOURCE(10423, 713)
                  {
                     word base←v8892;
                     word upl←v8920;
                     word result←v8948;
SOURCE(10425, 46)
                     base←v8892 = (* (( (ptr) rasterMap←v8392)+8) );
SOURCE(10473, 44)
                     upl←v8920 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3);
SOURCE(10519, 65)
                     {
                        word check←v18684;
                        check←v18684 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884);
SOURCE(1099, 81)
                        result←v8948 = (samples←v8448 + 8);
                        };
SOURCE(10586, 536)
                     if ((sfup←v8080 == 0)) {
SOURCE(10604, 180)
                        {
                           word line←v8992;
SOURCE(10606, 36)
                           line←v8992 = (base←v8892 + ( (unsigned) ((unsigned)s←v8476 >> 16) * upl←v8920));
SOURCE(10644, 129)
                           {
/*1*/   register word k←v9036 = 0;
/*1*/   if ((k←v9036 >= count←v7884)) {
/*1*/      goto lab←L100080;
/*1*/      };
/*1*/   lab←L100083: ;
SOURCE(10680, 25)
SOURCE(10682, 23)
/*1*/   (* (( (ptr) result←v8948)+k←v9036) ) =  (unsigned) (word) (* (( (bPt) line←v8992)+((unsigned)f←v8504 >> 16)) );
SOURCE(10708, 65)
/*1*/   if ((f←v8504 < ffdn←v8164)) {
SOURCE(10729, 25)
/*1*/      f←v8504 = (f←v8504 + ffup←v8108);
/*1*/      }
/*1*/   else {
SOURCE(10754, 19)
/*1*/      f←v8504 = (f←v8504 - ffdn←v8164);
/*1*/      };
/*1*/   k←v9036 = (k←v9036 + 1);
/*1*/   if ((k←v9036 < count←v7884)) {
/*1*/      goto lab←L100083;
/*1*/      };
/*1*/   lab←L100080: ;
/*1*/   };
                           };
                        }
                     else {
SOURCE(10791, 342)
                        {
                           word lastSHi←v9080;
                           word line←v9108;
SOURCE(10793, 24)
                           lastSHi←v9080 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(10819, 39)
                           line←v9108 = (base←v8892 + (lastSHi←v9080 * upl←v8920));
SOURCE(10860, 262)
                           {
/*1*/   register word k←v9152 = 0;
/*1*/   if ((k←v9152 >= count←v7884)) {
/*1*/      goto lab←L100084;
/*1*/      };
/*1*/   lab←L100087: ;
SOURCE(10888, 63)
/*1*/   if ((lastSHi←v9080 !=  (unsigned) ((unsigned)s←v8476 >> 16))) {
SOURCE(10912, 14)
/*1*/      lastSHi←v9080 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(10928, 23)
/*1*/      line←v9108 = (base←v8892 + (lastSHi←v9080 * upl←v8920));
/*1*/      };
SOURCE(10962, 25)
SOURCE(10964, 23)
/*1*/   (* (( (ptr) result←v8948)+k←v9152) ) =  (unsigned) (word) (* (( (bPt) line←v9108)+((unsigned)f←v8504 >> 16)) );
SOURCE(10990, 65)
/*1*/   if ((s←v8476 < sfdn←v8136)) {
SOURCE(11011, 25)
/*1*/      s←v8476 = (s←v8476 + sfup←v8080);
/*1*/      }
/*1*/   else {
SOURCE(11036, 19)
/*1*/      s←v8476 = (s←v8476 - sfdn←v8136);
/*1*/      };
SOURCE(11057, 65)
/*1*/   if ((f←v8504 < ffdn←v8164)) {
SOURCE(11078, 25)
/*1*/      f←v8504 = (f←v8504 + ffup←v8108);
/*1*/      }
/*1*/   else {
SOURCE(11103, 19)
/*1*/      f←v8504 = (f←v8504 - ffdn←v8164);
/*1*/      };
/*1*/   k←v9152 = (k←v9152 + 1);
/*1*/   if ((k←v9152 < count←v7884)) {
/*1*/      goto lab←L100087;
/*1*/      };
/*1*/   lab←L100084: ;
/*1*/   };
                           };
                        };
                     };
                  }
               else {
                  if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 16) : 0 ) ) {
SOURCE(11186, 505)
                     {
                        word base←v9196;
                        word upl←v9224;
                        word result←v9252;
                        word lastSHi←v9280;
                        word line←v9308;
SOURCE(11188, 47)
                        base←v9196 = (* (( (ptr) rasterMap←v8392)+8) );
SOURCE(11237, 44)
                        upl←v9224 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3);
SOURCE(11283, 65)
                        {
                           word check←v18640;
                           check←v18640 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884);
SOURCE(1099, 81)
                           result←v9252 = (samples←v8448 + 8);
                           };
SOURCE(11350, 24)
                        lastSHi←v9280 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(11376, 40)
                        line←v9308 = (base←v9196 + (lastSHi←v9280 * upl←v9224));
SOURCE(11418, 262)
                        {
                           register word k←v9352 = 0;
                           if ((k←v9352 >= count←v7884)) {
/*1*/   goto lab←L100089;
/*1*/   };
                           lab←L100092: ;
SOURCE(11446, 63)
                           if ((lastSHi←v9280 !=  (unsigned) ((unsigned)s←v8476 >> 16))) {
SOURCE(11470, 14)
/*1*/   lastSHi←v9280 =  (unsigned) ((unsigned)s←v8476 >> 16);
SOURCE(11486, 23)
/*1*/   line←v9308 = (base←v9196 + (lastSHi←v9280 * upl←v9224));
/*1*/   };
SOURCE(11520, 25)
SOURCE(11522, 23)
                           (* (( (ptr) result←v9252)+k←v9352) ) =  (unsigned) (word) (* (( (hPt) line←v9308)+((unsigned)f←v8504 >> 16)) );
SOURCE(11548, 65)
                           if ((s←v8476 < sfdn←v8136)) {
SOURCE(11569, 25)
/*1*/   s←v8476 = (s←v8476 + sfup←v8080);
/*1*/   }
                           else {
SOURCE(11594, 19)
/*1*/   s←v8476 = (s←v8476 - sfdn←v8136);
/*1*/   };
SOURCE(11615, 65)
                           if ((f←v8504 < ffdn←v8164)) {
SOURCE(11636, 25)
/*1*/   f←v8504 = (f←v8504 + ffup←v8108);
/*1*/   }
                           else {
SOURCE(11661, 19)
/*1*/   f←v8504 = (f←v8504 - ffdn←v8164);
/*1*/   };
                           k←v9352 = (k←v9352 + 1);
                           if ((k←v9352 < count←v7884)) {
/*1*/   goto lab←L100092;
/*1*/   };
                           lab←L100089: ;
                           };
                        };
                     }
                  else {
SOURCE(11735, 246)
                     {
                        register word k←v9396 = 0;
                        if ((k←v9396 >= count←v7884)) {
                           goto lab←L100093;
                           };
                        lab←L100096: ;
SOURCE(11763, 84)
                        {
                           word var←c21448;
                           {
/*1*/   W2 var←c21480;
/*1*/   var←c21480.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) ));
/*1*/   var←c21480.f1 = ( (unsigned) ((unsigned)f←v8504 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) ));
/*1*/   {
/*1*/      word pd97;
/*1*/      pd97 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */  ))+42) );
/*1*/      var←c21448 = (word) ( *( (fPt) ((*  (ptr) pd97 ))))(map←v8364, var←c21480, pd97);
/*1*/      };
/*1*/   };
                           {
/*1*/   word limit98;
/*1*/   (* ((( (ptr) samples←v8448)+2)+(
/*1*/         limit98 = (* (( (ptr) samples←v8448)+1) ),
/*1*/         BCK(k←v9396, limit98)
/*1*/         )) ) = var←c21448;
/*1*/   };
                           };
SOURCE(11849, 65)
                        if ((s←v8476 < sfdn←v8136)) {
SOURCE(11870, 25)
                           s←v8476 = (s←v8476 + sfup←v8080);
                           }
                        else {
SOURCE(11895, 19)
                           s←v8476 = (s←v8476 - sfdn←v8136);
                           };
SOURCE(11916, 65)
                        if ((f←v8504 < ffdn←v8164)) {
SOURCE(11937, 25)
                           f←v8504 = (f←v8504 + ffup←v8108);
                           }
                        else {
SOURCE(11962, 19)
                           f←v8504 = (f←v8504 - ffdn←v8164);
                           };
                        k←v9396 = (k←v9396 + 1);
                        if ((k←v9396 < count←v7884)) {
                           goto lab←L100096;
                           };
                        lab←L100093: ;
                        };
                     };
                  };
               };
            };
         };
      i←v8320 = (i←v8320 + 1);
      if ((i←v8320 < (* (( (ptr) formal←c22728)+10) ))) {
         goto lab←L100072;
         };
      lab←L100069: ;
      };
SOURCE(12004, 26)
   {
      W2 var←c21512;
      var←c21512.f0 = d1s←v8192;
      var←c21512.f1 = d1f←v8220;
      {
         word pd99;
         pd99 = (* (( (ptr) formal←c22728)+5) );
         (void) ( *( (fPt) ((*  (ptr) pd99 ))))((* (( (ptr) formal←c22728)+21) ), var←c21512, pd99);
         };
      };
SOURCE(12032, 11)
   d1s←v8192 = (d1s←v8192 + 1);
SOURCE(12045, 26)
   if (( (int)d1s←v8192 >=  (int)box←v17528.f2)) {
SOURCE(12071, 4)
      goto lab←L100067;
      };
SOURCE(12077, 70)
   if ((s1←v8248 < ssdn←v8024)) {
SOURCE(12099, 27)
      s1←v8248 = (s1←v8248 + ssup←v7968);
      }
   else {
SOURCE(12126, 21)
      s1←v8248 = (s1←v8248 - ssdn←v8024);
      };
SOURCE(12149, 70)
   if ((f1←v8276 < fsdn←v8052)) {
SOURCE(12171, 27)
      f1←v8276 = (f1←v8276 + fsup←v7996);
      }
   else {
SOURCE(12198, 21)
      f1←v8276 = (f1←v8276 - fsdn←v8052);
      };
   goto lab←L100068;
   lab←L100067: ;
   }

static void boxActionInterpolatedSamples←P1944(box←v17588, formal←c22792)
   W4 box←v17588;
   word formal←c22792;
   {
   register ptr gf←c22760 =  (ptr) &globalframe;
   word count←v9440;
   word smax←v9468;
   word fmax←v9496;
   word ssup←v9524;
   word fsup←v9552;
   word ssdn←v9580;
   word fsdn←v9608;
   word sfup←v9636;
   word ffup←v9664;
   word sfdn←v9692;
   word ffdn←v9720;
   word isdn←v9804;
   word ifdn←v9832;
   word d1s←v9860;
   word d1f←v9888;
   word s1←v9916;
   word f1←v9944;
   formal←c22792 = (formal←c22792 - 24);
   /* boxActionInterpolatedSamples: */ 
SOURCE(12233, 45)
SOURCE(12280, 26)
   {
      word pd100;
      word idx101;
      pd100 = (* (( (ptr) (* (( (ptr) gf←c22760)+58)/* var←c20712 */  ))+17) );
      count←v9440 = (
         idx101 = (word) ( *( (fPt) ((*  (ptr) pd100 ))))(box←v17588, pd100),
         SGNCK(idx101)
         );
      };
SOURCE(12308, 50)
   smax←v9468 = ((* (( (ptr) formal←c22792)+11) ) << 16);
SOURCE(12360, 50)
   fmax←v9496 = ((* (( (ptr) formal←c22792)+12) ) << 16);
SOURCE(12412, 33)
   ssup←v9524 = (* (( (ptr) formal←c22792)+13) );
SOURCE(12447, 33)
   fsup←v9552 = (* (( (ptr) formal←c22792)+14) );
SOURCE(12482, 47)
   ssdn←v9580 = (smax←v9468 - ssup←v9524);
SOURCE(12531, 47)
   fsdn←v9608 = (fmax←v9496 - fsup←v9552);
SOURCE(12580, 33)
   sfup←v9636 = (* (( (ptr) formal←c22792)+15) );
SOURCE(12615, 33)
   ffup←v9664 = (* (( (ptr) formal←c22792)+16) );
SOURCE(12650, 47)
   sfdn←v9692 = (smax←v9468 - sfup←v9636);
SOURCE(12699, 47)
   ffdn←v9720 = (fmax←v9496 - ffup←v9664);
SOURCE(12788, 29)
   {
      word idx102;
      isdn←v9804 = (
         idx102 = (word) ( (unsigned) ((unsigned)smax←v9468 >> 16) - 1),
         SGNCK(idx102)
         );
      };
SOURCE(12819, 29)
   {
      word idx103;
      ifdn←v9832 = (
         idx103 = (word) ( (unsigned) ((unsigned)fmax←v9496 >> 16) - 1),
         SGNCK(idx103)
         );
      };
SOURCE(12915, 26)
   s1←v9916 = (* (( (ptr) formal←c22792)+19) );
SOURCE(12983, 26)
   f1←v9944 = (* (( (ptr) formal←c22792)+20) );
SOURCE(13051, 15)
   {
      W2 var←c21736;
      var←c21736 = (*  (W2Pt) (( (ptr) formal←c22792)+17) );
      d1f←v9888 = var←c21736.f1;
      d1s←v9860 = var←c21736.f0;
      };
SOURCE(13068, 178)
   lab←L100099: ;
   if (( (int)d1s←v9860 <  (int)box←v17588.f0)) {
      }
   else {
      goto lab←L100097;
      };
SOURCE(13091, 11)
   d1s←v9860 = (d1s←v9860 + 1);
SOURCE(13104, 70)
   if ((s1←v9916 < ssdn←v9580)) {
SOURCE(13126, 27)
      s1←v9916 = (s1←v9916 + ssup←v9524);
      }
   else {
SOURCE(13153, 21)
      s1←v9916 = (s1←v9916 - ssdn←v9580);
      };
SOURCE(13176, 70)
   if ((f1←v9944 < fsdn←v9608)) {
SOURCE(13198, 27)
      f1←v9944 = (f1←v9944 + fsup←v9552);
      }
   else {
SOURCE(13225, 21)
      f1←v9944 = (f1←v9944 - fsdn←v9608);
      };
   goto lab←L100099;
   lab←L100097: ;
SOURCE(13257, 180)
   lab←L100102: ;
   if (( (int)d1s←v9860 >  (int)box←v17588.f0)) {
      }
   else {
      goto lab←L100100;
      };
SOURCE(13280, 11)
   d1s←v9860 = (d1s←v9860 - 1);
SOURCE(13293, 71)
   if ((s1←v9916 >= ssup←v9524)) {
SOURCE(13316, 27)
      s1←v9916 = (s1←v9916 - ssup←v9524);
      }
   else {
SOURCE(13343, 21)
      s1←v9916 = (s1←v9916 + ssdn←v9580);
      };
SOURCE(13366, 71)
   if ((f1←v9944 >= fsup←v9552)) {
SOURCE(13389, 27)
      f1←v9944 = (f1←v9944 - fsup←v9552);
      }
   else {
SOURCE(13416, 21)
      f1←v9944 = (f1←v9944 + fsdn←v9608);
      };
   goto lab←L100102;
   lab←L100100: ;
SOURCE(13448, 15)
   (* (( (ptr) formal←c22792)+17) ) = d1s←v9860;
   (* (( (ptr) formal←c22792)+18) ) = d1f←v9888;
SOURCE(13465, 13)
   (* (( (ptr) formal←c22792)+19) ) = s1←v9916;
SOURCE(13480, 13)
   (* (( (ptr) formal←c22792)+20) ) = f1←v9944;
SOURCE(13495, 178)
   lab←L100105: ;
   if (( (int)d1f←v9888 <  (int)box←v17588.f1)) {
      }
   else {
      goto lab←L100103;
      };
SOURCE(13518, 11)
   d1f←v9888 = (d1f←v9888 + 1);
SOURCE(13531, 70)
   if ((s1←v9916 < sfdn←v9692)) {
SOURCE(13553, 27)
      s1←v9916 = (s1←v9916 + sfup←v9636);
      }
   else {
SOURCE(13580, 21)
      s1←v9916 = (s1←v9916 - sfdn←v9692);
      };
SOURCE(13603, 70)
   if ((f1←v9944 < ffdn←v9720)) {
SOURCE(13625, 27)
      f1←v9944 = (f1←v9944 + ffup←v9664);
      }
   else {
SOURCE(13652, 21)
      f1←v9944 = (f1←v9944 - ffdn←v9720);
      };
   goto lab←L100105;
   lab←L100103: ;
SOURCE(13684, 180)
   lab←L100108: ;
   if (( (int)d1f←v9888 >  (int)box←v17588.f1)) {
      }
   else {
      goto lab←L100106;
      };
SOURCE(13707, 11)
   d1f←v9888 = (d1f←v9888 - 1);
SOURCE(13720, 71)
   if ((s1←v9916 >= sfup←v9636)) {
SOURCE(13743, 27)
      s1←v9916 = (s1←v9916 - sfup←v9636);
      }
   else {
SOURCE(13770, 21)
      s1←v9916 = (s1←v9916 + sfdn←v9692);
      };
SOURCE(13793, 71)
   if ((f1←v9944 >= ffup←v9664)) {
SOURCE(13816, 27)
      f1←v9944 = (f1←v9944 - ffup←v9664);
      }
   else {
SOURCE(13843, 21)
      f1←v9944 = (f1←v9944 + ffdn←v9720);
      };
   goto lab←L100108;
   lab←L100106: ;
SOURCE(13875, 21)
   (*  (ptr) (* (( (ptr) formal←c22792)+21) ) ) = count←v9440;
SOURCE(13898, 2715)
   lab←L100111: ;
SOURCE(13931, 2444)
   {
      register word i←v9988 = 0;
      if ((i←v9988 >= (* (( (ptr) formal←c22792)+10) ))) {
         goto lab←L100112;
         };
      lab←L100115: ;
      {
         word map←v10032;
         word rasterMap←v10060;
         word samples←v10088;
         word s←v10116;
         word f←v10144;
SOURCE(13969, 37)
         {
            word limit104;
            map←v10032 = (* ((( (ptr) (* (( (ptr) formal←c22792)+4) ))+6)+(
                  limit104 = (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+5) ),
                  BCK(i←v9988, limit104)
                  )) );
            };
SOURCE(14008, 63)
         {
            word var←c21768;
            var←c21768 = map←v10032;
            if ((var←c21768 == 0)) {
               goto lab←L100116;
               };
            if (((* (( (ptr) var←c21768)+6) ) == 0)) {
               rasterMap←v10060 = var←c21768;
               }
            else {
               lab←L100116: ;
               rasterMap←v10060 = 0;
               };
            };
SOURCE(14124, 46)
         {
            word limit105;
            samples←v10088 = (* ((( (ptr) (* (( (ptr) formal←c22792)+21) ))+2)+(
                  limit105 = (* (( (ptr) (* (( (ptr) formal←c22792)+21) ))+1) ),
                  BCK(i←v9988, limit105)
                  )) );
            };
SOURCE(14172, 25)
         s←v10116 = s1←v9916;
SOURCE(14199, 25)
         f←v10144 = f1←v9944;
SOURCE(14226, 2149)
         if ( (  (  ( (rasterMap←v10060 != 0) ? ((* (( (ptr) rasterMap←v10060)+9) ) == 0) : 0 )  ? (((* (( (ptr) rasterMap←v10060)+7)
          ) & 037) == 0) : 0 )  ? ((* (( (ptr) rasterMap←v10060)+5) ) == 8) : 0 ) ) {
SOURCE(14349, 1034)
            {
               word base←v10232;
               word unitsPerLine←v10260;
               word result←v10288;
SOURCE(14351, 46)
               base←v10232 = (* (( (ptr) rasterMap←v10060)+8) );
SOURCE(14399, 53)
               unitsPerLine←v10260 = ((* (( (ptr) rasterMap←v10060)+7) ) >> 3);
SOURCE(14454, 78)
               {
                  word check←v18596;
                  check←v18596 = ((* (( (ptr) samples←v10088)+1) ) - count←v9440);
SOURCE(1099, 81)
                  result←v10288 = (samples←v10088 + 8);
                  };
SOURCE(14534, 838)
               {
                  register word k←v10344 = 0;
                  if ((k←v10344 >= count←v9440)) {
                     goto lab←L100118;
                     };
                  lab←L100121: ;
                  {
                     word is0←v10388;
                     word is1←v10416;
                     word if0←v10444;
                     word if1←v10472;
                     word w11←v10500;
                     word w10←v10528;
                     word w01←v10556;
                     word w00←v10584;
                     word line0←v10612;
                     word line1←v10640;
SOURCE(14562, 20)
                     is0←v10388 =  (unsigned) ((unsigned)s←v10116 >> 16);
SOURCE(14584, 55)
                     is1←v10416 =  ( (is0←v10388 < isdn←v9804) ? (is0←v10388 + 1) : (is0←v10388 - isdn←v9804) ) ;
SOURCE(14641, 20)
                     if0←v10444 =  (unsigned) ((unsigned)f←v10144 >> 16);
SOURCE(14663, 55)
                     if1←v10472 =  ( (if0←v10444 < ifdn←v9832) ? (if0←v10444 + 1) : (if0←v10444 - ifdn←v9832) ) ;
SOURCE(14720, 63)
                     {
                        word n←v18936;
                        n←v18936 = (( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) *  (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) )) + 65535);
                        w11←v10500 = ((word) n←v18936 >> 16);
                        };
SOURCE(14785, 24)
                     w10←v10528 = ( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) - w11←v10500);
SOURCE(14811, 24)
                     w01←v10556 = ( (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) ) - w11←v10500);
SOURCE(14837, 40)
                     w00←v10584 = (((65535 - w01←v10556) - w10←v10528) - w11←v10500);
SOURCE(14879, 45)
                     line0←v10612 = (base←v10232 + (is0←v10388 * unitsPerLine←v10260));
SOURCE(14926, 45)
                     line1←v10640 = (base←v10232 + (is1←v10416 * unitsPerLine←v10260));
SOURCE(14981, 256)
                     {
                        word v00←v10684;
                        word v01←v10712;
                        word v10←v10740;
                        word v11←v10768;
                        word value←v10796;
SOURCE(14983, 26)
                        v00←v10684 =  (unsigned) (word) (* (( (bPt) line0←v10612)+if0←v10444) );
SOURCE(15011, 26)
                        v01←v10712 =  (unsigned) (word) (* (( (bPt) line0←v10612)+if1←v10472) );
SOURCE(15039, 26)
                        v10←v10740 =  (unsigned) (word) (* (( (bPt) line1←v10640)+if0←v10444) );
SOURCE(15067, 26)
                        v11←v10768 =  (unsigned) (word) (* (( (bPt) line1←v10640)+if1←v10472) );
SOURCE(15095, 121)
                        {
                           word n←v18888;
                           n←v18888 = (((((w00←v10584 * v00←v10684) + (w01←v10556 * v01←v10712)) + (w10←v10528 * v10←v10740)) + (w11←v10500 * v11←v10768)) + 
                           65535);
                           value←v10796 = ((word) n←v18888 >> 16);
                           };
SOURCE(15218, 17)
                        (* (( (ptr) result←v10288)+k←v10344) ) = value←v10796;
                        };
SOURCE(15240, 65)
                     if ((s←v10116 < sfdn←v9692)) {
SOURCE(15261, 25)
                        s←v10116 = (s←v10116 + sfup←v9636);
                        }
                     else {
SOURCE(15286, 19)
                        s←v10116 = (s←v10116 - sfdn←v9692);
                        };
SOURCE(15307, 65)
                     if ((f←v10144 < ffdn←v9720)) {
SOURCE(15328, 25)
                        f←v10144 = (f←v10144 + ffup←v9664);
                        }
                     else {
SOURCE(15353, 19)
                        f←v10144 = (f←v10144 - ffdn←v9720);
                        };
                     };
                  k←v10344 = (k←v10344 + 1);
                  if ((k←v10344 < count←v9440)) {
                     goto lab←L100121;
                     };
                  lab←L100118: ;
                  };
               };
            }
         else {
SOURCE(15420, 955)
            {
               register word k←v10840 = 0;
               if ((k←v10840 >= count←v9440)) {
                  goto lab←L100124;
                  };
               lab←L100127: ;
               {
                  word is0←v10884;
                  word is1←v10912;
                  word if0←v10940;
                  word if1←v10968;
                  word w11←v10996;
                  word w10←v11024;
                  word w01←v11052;
                  word w00←v11080;
                  word v00←v11108;
                  word v01←v11136;
                  word v10←v11164;
                  word v11←v11192;
                  word value←v11220;
SOURCE(15448, 20)
                  is0←v10884 =  (unsigned) ((unsigned)s←v10116 >> 16);
SOURCE(15470, 55)
                  is1←v10912 =  ( (is0←v10884 < isdn←v9804) ? (is0←v10884 + 1) : (is0←v10884 - isdn←v9804) ) ;
SOURCE(15527, 20)
                  if0←v10940 =  (unsigned) ((unsigned)f←v10144 >> 16);
SOURCE(15549, 55)
                  if1←v10968 =  ( (if0←v10940 < ifdn←v9832) ? (if0←v10940 + 1) : (if0←v10940 - ifdn←v9832) ) ;
SOURCE(15606, 63)
                  {
                     word n←v18840;
                     n←v18840 = (( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) *  (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) )) + 65535);
                     w11←v10996 = ((word) n←v18840 >> 16);
                     };
SOURCE(15671, 24)
                  w10←v11024 = ( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) - w11←v10996);
SOURCE(15697, 24)
                  w01←v11052 = ( (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) ) - w11←v10996);
SOURCE(15723, 40)
                  w00←v11080 = (((65535 - w01←v11052) - w10←v11024) - w11←v10996);
SOURCE(15802, 75)
                  {
                     W2 var←c21928;
                     var←c21928.f0 = (is0←v10884 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) ));
                     var←c21928.f1 = (if0←v10940 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) ));
                     {
                        word pd106;
                        pd106 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */  ))+42) );
                        v00←v11108 = (word) ( *( (fPt) ((*  (ptr) pd106 ))))(map←v10032, var←c21928, pd106);
                        };
                     };
SOURCE(15879, 75)
                  {
                     W2 var←c21960;
                     var←c21960.f0 = (is0←v10884 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) ));
                     var←c21960.f1 = (if1←v10968 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) ));
                     {
                        word pd107;
                        pd107 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */  ))+42) );
                        v01←v11136 = (word) ( *( (fPt) ((*  (ptr) pd107 ))))(map←v10032, var←c21960, pd107);
                        };
                     };
SOURCE(15956, 75)
                  {
                     W2 var←c21992;
                     var←c21992.f0 = (is1←v10912 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) ));
                     var←c21992.f1 = (if0←v10940 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) ));
                     {
                        word pd108;
                        pd108 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */  ))+42) );
                        v10←v11164 = (word) ( *( (fPt) ((*  (ptr) pd108 ))))(map←v10032, var←c21992, pd108);
                        };
                     };
SOURCE(16033, 75)
                  {
                     W2 var←c22024;
                     var←c22024.f0 = (is1←v10912 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) ));
                     var←c22024.f1 = (if1←v10968 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) ));
                     {
                        word pd109;
                        pd109 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */  ))+42) );
                        v11←v11192 = (word) ( *( (fPt) ((*  (ptr) pd109 ))))(map←v10032, var←c22024, pd109);
                        };
                     };
SOURCE(16110, 111)
                  {
                     word n←v18792;
                     n←v18792 = (((((w00←v11080 * v00←v11108) + (w01←v11052 * v01←v11136)) + (w10←v11024 * v10←v11164)) + (w11←v10996 * v11←v11192)) + 
                     65535);
                     value←v11220 = ((word) n←v18792 >> 16);
                     };
SOURCE(16223, 18)
                  {
                     word limit110;
                     (* ((( (ptr) samples←v10088)+2)+(
                           limit110 = (* (( (ptr) samples←v10088)+1) ),
                           BCK(k←v10840, limit110)
                           )) ) = value←v11220;
                     };
SOURCE(16243, 65)
                  if ((s←v10116 < sfdn←v9692)) {
SOURCE(16264, 25)
                     s←v10116 = (s←v10116 + sfup←v9636);
                     }
                  else {
SOURCE(16289, 19)
                     s←v10116 = (s←v10116 - sfdn←v9692);
                     };
SOURCE(16310, 65)
                  if ((f←v10144 < ffdn←v9720)) {
SOURCE(16331, 25)
                     f←v10144 = (f←v10144 + ffup←v9664);
                     }
                  else {
SOURCE(16356, 19)
                     f←v10144 = (f←v10144 - ffdn←v9720);
                     };
                  };
               k←v10840 = (k←v10840 + 1);
               if ((k←v10840 < count←v9440)) {
                  goto lab←L100127;
                  };
               lab←L100124: ;
               };
            };
         };
      i←v9988 = (i←v9988 + 1);
      if ((i←v9988 < (* (( (ptr) formal←c22792)+10) ))) {
         goto lab←L100115;
         };
      lab←L100112: ;
      };
SOURCE(16398, 26)
   {
      W2 var←c22088;
      var←c22088.f0 = d1s←v9860;
      var←c22088.f1 = d1f←v9888;
      {
         word pd111;
         pd111 = (* (( (ptr) formal←c22792)+5) );
         (void) ( *( (fPt) ((*  (ptr) pd111 ))))((* (( (ptr) formal←c22792)+21) ), var←c22088, pd111);
         };
      };
SOURCE(16426, 11)
   d1s←v9860 = (d1s←v9860 + 1);
SOURCE(16439, 26)
   if (( (int)d1s←v9860 >=  (int)box←v17588.f2)) {
SOURCE(16465, 4)
      goto lab←L100110;
      };
SOURCE(16471, 70)
   if ((s1←v9916 < ssdn←v9580)) {
SOURCE(16493, 27)
      s1←v9916 = (s1←v9916 + ssup←v9524);
      }
   else {
SOURCE(16520, 21)
      s1←v9916 = (s1←v9916 - ssdn←v9580);
      };
SOURCE(16543, 70)
   if ((f1←v9944 < fsdn←v9608)) {
SOURCE(16565, 27)
      f1←v9944 = (f1←v9944 + fsup←v9552);
      }
   else {
SOURCE(16592, 21)
      f1←v9944 = (f1←v9944 - fsdn←v9608);
      };
   goto lab←L100111;
   lab←L100110: ;
   }

static word HalfInteger←P780(r←v6032)
   word r←v6032;
   {
   word var←c6076;
   word n←v11376;
   word halfInteger←v11404;
   /* HalfInteger: */ 
SOURCE(17447, 258)
SOURCE(17592, 52)
   n←v11376 = (word) ScaledFromRealMod←P600(r←v6032, 1);
SOURCE(17646, 36)
   halfInteger←v11404 =  (unsigned) ((( (((unsigned)n←v11376 << 16) >> 16) ) - 32760) <= 16);
SOURCE(17684, 21)
   return(halfInteger←v11404);
   }

static void NoName←Q3876(formal←c0295, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
   word formal←c0295;
   word formal←c200000;
   word formal←c200001;
   word formal←c200002;
   word formal←c200003;
   {
   if ((formal←c200001 == XR←Unwind)) {
SOURCE(2911, 30)
      (void) ReleaseScratchPixels←P240((* ((( (ptr) formal←c200000)+5)) ));
      };
   (*  (ptr) formal←c0295 ) = 0;
   (* (( (ptr) formal←c0295)+1) ) = 0;
   return;
   }

/* file: ImagerPixelImpl, module: ImagerPixelImpl, compiled at: July 28, 1993 10:21:47 am PDT */ 
extern void XR←install←ImagerPixelImpl() {
   NoName←Q3756();
   }
extern void XR←run←ImagerPixelImpl() { XR←Start(&globalframe); }