sclass IntegratedBWImage > HashedBWImage is MakesIBWIntegralImage { IBWIntegralImage ii; *(BufferedImage image) { super(bwImage(image)); } *(BWImage image) { super(image); } public IBWIntegralImage getIBWIntegralImage() { while (ii == null) synchronized { if (ii == null) ii = bwIntegralImage(image); } ret ii; } S classNameForPrinting() { ret cnfp(this, selfType.class, "IntegratedBWImage"; } }