PUP
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = (unsigned char)(here.val);
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = 0;
PUP(out) = 0;
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = (unsigned char)(here.val);
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = 0;
PUP(out) = 0;
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = (unsigned char)(here.val);
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
hold += (unsigned long)(PUP(in)) << bits;
PUP(out) = 0;
PUP(out) = 0;
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);
PUP(out) = PUP(from);