Store GameplayTagsQuery in UStruct

Hi,
for gameplay reasons I need to store GameplayTagsQuery in a Struct. But I have a problem, everytime I quit the editor or press the PIE button, my GameplayTagQuery is reseted, and empty.
I know it’s something to do with TArray. But how to avoid this problem ?

Here is the code of my struct :

USTRUCT( BlueprintType )
struct FActionData
{
	GENERATED_BODY()

	UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Action System")
	bool Enabled;
	UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Action System" )
	FText DisplayName;
	UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Action System")
	UTexture2D* Icon;
	UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Action System")
	ETriggerType TriggerType;
	UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Action System")
	FGameplayTagQuery Restrictions;
	
	FActionData() {
		Enabled = true;
		DisplayName = FText::FromString( "Unnamed" );
		Icon = NULL;
		TriggerType = ETriggerType::TT_FAST;
		Restrictions = FGameplayTagQuery();
	}
};

If anybody spot what I’m missing here ! Or hints about how to achieve what I want to do !
Thanks in advance

Okay, I found that it’s all my struct that is reseted when I press Play in the Editor ! :confused: How should I init my struct to avoid that !?

OKay Finally it came out that it was the TMap I’ve stored my Struct in that was not initialised.
And I discover that you can’t store FGameplayTagQuery vars. So you have to do your own with FGameplayTagsContainer, and manage how you test by your own way !