How to edit a Particle Emitter module setting from C++?

Here is a screenshot of a simplified particle system. I can access the emitter, but cannot access the “Size By Life” parameter I have highlighted. When I search for the module or any similar property, I come up empty-handed.

Is there any way to access / modify a specific module parameter setting from within C++?
Specifically, I have a particle system, and in it, there are several particle emitters. Under one such emitter (which has a special name), it has several modules. I would like to change either the InitialSize or really the Size By Life module settings. I can already find the UParticleEmitter from within code, but cannot seem to find any way to access the modules within it.

When I try to access any Modules from the UParticleEmitter, I get empty TMaps, empty TArrays, etc. Nothing.

Here is my sample code: [NOTE: UParticleSystem* OverlapParticles;]

TArray<UParticleEmitter*> UPEs = OverlapParticles->Emitters;
if (UPEs.Num() > 0)
{
	for (UParticleEmitter* em : UPEs)
	{
		UE_LOG(LogTemp, Warning, TEXT("ParticleEmitter Name: %s"), *(em->EmitterName).ToString());
	}
	UParticleEmitter* UPEptr = nullptr; // = UPEs.FindByKey("SpecialEmitterName");
	int32 blastIndex = UPEs.FindLastByPredicate([](UParticleEmitter* em) { return ((em->EmitterName == FName("SpecialEmitterName")) ? em : nullptr); });
	UE_LOG(LogTemp, Warning, TEXT("blastIndex = %d"), blastIndex);

	if (blastIndex >= 0) UPEptr = UPEs[blastIndex];

	if (UPEptr)
	{
		UE_LOG(LogTemp, Warning, TEXT("Particle Emitter Found!"));
		TArray<UParticleModule*> ModulesNeedingInstanceData = UPEptr->ModulesNeedingInstanceData;
		TArray<UParticleModule*> ModulesNeedingRandomSeed = UPEptr->ModulesNeedingRandomSeedInstanceData;
		
		UE_LOG(LogTemp, Warning, TEXT("Modules Needing Instance Data:"));
		for (UParticleModule* mod : ModulesNeedingInstanceData)
		{
			UE_LOG(LogTemp, Warning, TEXT("Module Name: %s"), *(mod->GetFName()).ToString());
		}

		UE_LOG(LogTemp, Warning, TEXT("Modules Needing Random Seed:"));
		for (UParticleModule* mod : ModulesNeedingRandomSeed)
		{
			UE_LOG(LogTemp, Warning, TEXT("Module Name: %s"), *(mod->GetFName()).ToString());
		}

		TMap < UParticleModule*, uint32 > ModuleOffsetMap = UPEptr->ModuleOffsetMap;
		UE_LOG(LogTemp, Warning, TEXT("Number of Module Offset Map Elements: %d"), ModuleOffsetMap.Num());
		for (auto& Elem : ModuleOffsetMap)
		{
			UE_LOG(LogTemp, Warning, TEXT("ModuleOffsetMap: Value: %d , Key Name: %s"), Elem.Value, *((Elem.Key)->GetFName()).ToString());
		}
		TMap < UParticleModule*, uint32 > ModuleInstanceOffsetMap = UPEptr->ModuleInstanceOffsetMap;
		UE_LOG(LogTemp, Warning, TEXT("Number of Module Instance Offset Map Elements: %d"), ModuleInstanceOffsetMap.Num());
		for (auto& Elem : ModuleInstanceOffsetMap)
		{
			UE_LOG(LogTemp, Warning, TEXT("ModuleOffsetMap: Value: %d , Key Name: %s"), Elem.Value, *((Elem.Key)->GetFName()).ToString());
		}
	}
	else
	{
		UE_LOG(LogTemp, Warning, TEXT("Could not find SpecialEmitterName"));
	}
	
}