some defensive retains, just in case