diff = (child_width - min(child_width, child.test(HSHRINK) ? child.contentwidth : child.maxwidth));
child_x += (child.test(ALIGN_RIGHT) ? diff : child.test(ALIGN_LEFT) ? 0 : diff / 2);
child_width = min(child_width, child.test(HSHRINK) ? child.contentwidth : child.maxwidth);
diff = (child_width - min(child_width, child.test(HSHRINK) ? child.contentwidth : child.maxwidth));
child_x += (child.test(ALIGN_RIGHT) ? diff : child.test(ALIGN_LEFT) ? 0 : diff / 2);
child_width = min(child_width, child.test(HSHRINK) ? child.contentwidth : child.maxwidth);