Changed to WeakReference system