Re-rolled patch #34, Attached interdiff for same. Please review