Keyword return not working in remote function

So I was making a morph system and then everything went well before a bug that relates to

return

Occured.

The function of the code is to invoke the server via a remote function so that the server can grant network ownership of a character to a player.

Client

local Character = game.ReplicatedStorage.RetrieveCharacter:InvokeServer(workspace.Character)

print("Character retrieved!")

The character is an R6 charcter that is not anchored.

Server

game.ReplicatedStorage.RetrieveCharacter.OnServerInvoke = function(player,character)
	
	local CurrentCharacter = player.Character
		
	character.Parent = workspace
	character:SetPrimaryPartCFrame(CurrentCharacter.PrimaryPart.CFrame)
		
	player.Character = character

    print("Granted access!")

    return character
end

“Granted Access” will be printed, but “Character retrieved” will not.

I also tried to separate the function from the invoke, but it did not work either.

I have nothing but a return key behind printing granted access.

Is there any ways to fix this issue?