Atomic UStruct Replication?

Hello, just want to make get some clarification on UStruct replication.

Let’s say I have a UStruct that has two variables PropertyA and PropertyB, and a OnRep function for the UStruct

If both A and B are changed within the time set via NetUpdateFrequency, it is my understanding that once both A and B arrives at the client, the OnRep function will only be called ONCE as if it’s an atomic change. Is my assumption valid?

Secondly, if the we went over the size of the packet after writing PropertyA such that replication stops before writing PropertyB, it is my understanding that PropertyA would still be sent and received by the client, in this case would the OnRep() function still be fired off without PropertyB arriving in a subsequent packet?

Thanks for the help!