scope: .weaken()