I know that there is newer code but I wanted to help the person who asked about why there are the two straggler records. It comes from the fetch statement not being directed to a declared variable.
To see what affect this has try doing the following as a learning experience:
Add this line just below where it says "set nocount on"
DECLARE @blah varchar(50)
Next, add this to the end of the two fetch statements:
into @blah
Now @blah holds the unneeded value instead of the screen
That was a great question to ask!
Tony Trus