How to use NetworkSerializable with CustomStruct ,Transfer between Server and client

I custom serializable types String Array ,
learn INetworkSerializable | Unity Multiplayer Networking
and try it.
I Expect the result is:

Server Received the RPC #0
#Test Server RPC#:a
Server Received the RPC #1
#Test Server RPC#:a
Server Received the RPC #2

But Real Rsult :
Server Received the RPC #0
#Test Server RPC#:a
Server Received the RPC #1
Server Received the RPC #2
Server Received the RPC #3

Can Tell me Why, Detail…
///////////////////////////////////////////////////////////////////////////
The code as below

using Unity.Netcode;
using UnityEngine;

public class RpcTest : NetworkBehaviour
{

    private MyCustomStruct mystring;

    public override void OnNetworkSpawn()
    {
       
        mystring.Array = new string[]{ "a", "b", "c" };
        if (IsClient)
        {
            TestServerRpc(0,mystring);
        }
    }

    [ClientRpc]
    void TestClientRpc(int value,  MyCustomStruct mystring)
    {
        if (IsClient)
        {
            Debug.Log("Client Received the RPC #" + value);
            Debug.Log("#Test Client RPC#:" + mystring.Array[0].ToString());
            TestServerRpc(value + 1, mystring);
        }
    }

    [ServerRpc]
    void TestServerRpc(int value, MyCustomStruct mystring)
    {
        Debug.Log("Server Received the RPC #" + value);
        Debug.Log("#Test Server RPC#:" + mystring.Array[0].ToString());
        TestClientRpc(value, mystring);
    }

    public struct MyCustomStruct : INetworkSerializable
    {
        public string[] Array;

        public void NetworkSerialize<T>(BufferSerializer<T> serializer) where T : IReaderWriter
        {
            // Length
            int length = 0;
            if (!serializer.IsReader)
            {
                length = Array.Length;
            }

            serializer.SerializeValue(ref length);

            // Array
            if (serializer.IsReader)
            {
                Array = new string[length];
            }

            for (int n = 0; n < length; ++n)
            {
                serializer.SerializeValue(ref Array[n]);
            }
        }
    }
}

OK~ I found the sloution~~~
modify to:

Debug.Log(“Server Received the RPC #” + value + " this String: "++ mystring.Array[0]);

This seems to solve it, although I don’t know why