if (box.x + box.width > c.getExtents().width && box.width <= c.getExtents().width) {
if (box.clear_left || (box.x + box.width > c.getExtents().width && box.width <= c.getExtents().width)) {
    private static void positionBoxLeft(Context c, Box box) {        //Uu.p("positionBoxLeft()");		//Uu.dump_stack();        //Uu.p("calling the new float routine");		//Uu.p("starting box = " + box);        BlockFormattingContext bfc = c.getBlockFormattingContext();        Box floater = bfc.newGetLeftFloatX(box);        //Uu.p("floater = " + floater);        //Uu.p("extents = " + c.getExtents());        if (floater == null) {            //Uu.p("no floater blocked. returning");            box.x = 0;            return;        }        box.x = floater.x + floater.width;        if (box.x + box.width > c.getExtents().width && 		    box.width <= c.getExtents().width) {            //Uu.p("not enough room!!!");            // move the box to be below the last float and            // try it again            box.y = floater.y + floater.height;            //Uu.p("trying again with box: " + box);            positionBoxLeft(c, box);            //Uu.p("final box 1 = " + box);        }		//Uu.p("final box 2 = " + box + " " + box.hashCode());    }