Re-rolled patch #2, attached interdiff for the same.