void main()
{
    object oPC = GetPCSpeaker();
    object oScientist = GetObjectByTag("merin");
    effect eExplode = EffectVisualEffect(VFX_FNF_GAS_EXPLOSION_GREASE);
    location lEffect = GetLocation(GetWaypointByTag("WP_LEVER"));
    location lMoveHere = GetLocation(GetWaypointByTag("MERIN_MOVE_HERE"));

    ActionPauseConversation();

    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectCutsceneParalyze(), oPC, 4.0f);

    AssignCommand(oScientist, ActionMoveToLocation(lMoveHere, FALSE));
    DelayCommand(0.5, AssignCommand(oScientist, ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0, 1.5)));
    DelayCommand(2.5, AssignCommand(oScientist, ActionPlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 1.5)));
    DelayCommand(4.0, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eExplode, lEffect));

    effect eEffectCheck = GetFirstEffect(oPC);
    while (GetIsEffectValid(eEffectCheck))
    {
      if (GetEffectType(eEffectCheck) == EFFECT_TYPE_CUTSCENE_PARALYZE)
      DelayCommand(23.0f, RemoveEffect(oPC, eEffectCheck));
      eEffectCheck = GetNextEffect(oPC);
    }

    DelayCommand(4.3, ActionResumeConversation());

    DelayCommand(4.5, AddJournalQuestEntry("Subquest_003", 9, oPC, TRUE, TRUE, TRUE));
    DelayCommand(4.5, GiveXPToCreature(oPC, 1500));
    SetLocalInt(GetPCSpeaker(), "PC_FIXED_LEVER", 1);

}
