Re-rolled patch #31, Attached interdiff for same.