diff recursive containers