Fully implemented Weaken.