Hi Dr. Dias,a WeakValueDictionary get's its values collected if they are not referenced strongly. However, the association remains there. This means that when you do:dictionary := WeakValueDictionary with: 'hello' -> nil copy.You'll have something like this:WeakValueDictionary {�� WeakValueAssociation { key: 'hello', value: yourObject }}Once you garbage collect, the value is holding yourObject weakly, so you'll have:WeakValueDictionary {�� WeakValueAssociation { key: 'hello', value: nil }}But the WeakValueAssociation will still be there.