Reduced and fixed (18 changes/231 tests passed)