USTRUCT()structFPoint2D{int32x;int32y;};USTRUCT()structFShape{TArrayPoints;};voidExample(){FNameKey(TEXT("Point"));FPoint2DPosition{0,0}GetDataStore().FetchOrAdd(Key,Position).Get();UE_LOG(MyLogCat,Display,TEXT("%d"),Session->GetDataStore().FetchAs(Key).Get().GetValue().x);//Prints0GetDataStore().CompareExchange(Key,Position,Point2D{10,20}).Get();UE_LOG(MyLogCat,Display,TEXT("%d"),Session->GetDataStore().FetchAs(Key).Get().GetValue().x);//Prints10//Storeashape.FShapeShape;Shape.Points.Add(FPoint2D(0,0));Shape.Points.Add(FPoint2D(10,10));Shape.Points.Add(FPoint2D(0,10));GetDataStore().FetchOrAdd(FName(TEXT("Triangle"),Shape).Get();}