protected int diffSynchronized(JCSynchronized oldT, JCSynchronized newT, int[] bounds) {
int localPointer = bounds[0];
int[] lockBounds = getBounds(oldT.lock);
copyTo(localPointer, lockBounds[0]);
localPointer = diffTree(oldT.lock, newT.lock, lockBounds);
int[] bodyBounds = getBounds(oldT.body);
copyTo(localPointer, bodyBounds[0]);
int oldIndent = newT.body.hasTag(Tag.BLOCK) ? -1 : printer.indent();
localPointer = diffTree(oldT.body, newT.body, bodyBounds);
if (!newT.body.hasTag(Tag.BLOCK))
printer.undent(oldIndent);
copyTo(localPointer, bounds[1]);
return bounds[1];
}