add back extra if (!$r)