Changing variable values from the FirstPersonController Script using another script

I am making a crouch button for my Fps Controller and i was able to make their height decrease when i hold the Left Control button, but i am not able to make their speed decrease. The name of the FirstPersonController script as well as the variable m_WalkSpeed is underlined in red, do i name it something else?
Code C#:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Crouch : MonoBehaviour {
    CharacterController characterCollider;
    private float PlayerSpeed;
	
	void Start () {
        characterCollider = gameObject.GetComponent<CharacterController>();
        PlayerSpeed = gameObject.GetComponent<FirstPersonController>();
	}
	
	
	void Update () {
		if(Input.GetKey(KeyCode.LeftControl))
        {
            characterCollider.height = 1.0f;
            PlayerSpeed.m_WalkSpeed = 3.0f;
        }
        else
        {
            characterCollider.height = 1.8f;
            PlayerSpeed.m_WalkSpeed = 5.0f;
        }
       
	}
}

Make sure m_Walkspeed is not private on the FirstPersonController class.

Then try the following:

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class Crouch : MonoBehaviour {
     private CharacterController characterCollider;
     private FirstPersonController Player;
     
     void Start () {
         characterCollider = GetComponent<CharacterController>();
         Player = GetComponent<FirstPersonController>();
     }
     
     void Update () {
         if(Input.GetKey(KeyCode.LeftControl))
         {
             characterCollider.height = 1.0f;
             Player.m_WalkSpeed = 3.0f;
         }
         else
         {
             characterCollider.height = 1.8f;
             Player.m_WalkSpeed = 5.0f;
         }
     }
 }

Thanks worked! Like you said, i just had to make m_WalkSpeed public and add
using UnityStandardAssets.Characters.FirstPerson; at the top.