You also need to be aware that tie'ing a hash (or array, scalar, or filehandle) makes it
forget about the previous contents, as if you had done %$SR = ();. (Once you untie it the previous contents should be accessible again, but I think this is not well tested and subject to bugs.)
Update: fix spelling