the type of the return should be kept?