why number of enemy spawns are multiplying ?

using UnityEngine;
using System.Collections;

public class SpawnScript : MonoBehaviour {

	public float TimerMax = 10.0f;
	public float TimerIndex = 0f;


	void Update () { 
				
		TimerIndex += 1 * Time.deltaTime ;

		if ( TimerIndex >= TimerMax )
		{
			TimerIndex = 0;
			Instantiate (transform.gameObject, new Vector3(0,0,0) 	,transform.rotation) ;
			
		} 
	}

}

I have the above code to attached to the enemy prefab and i want it to spawn only one instance of enemy after 10 seconds but the its spawn number multiplies every 10 seconds .

EDIT

Try creating a bool at the top then underneath the if statement create a new if statement testing if the bool is true. if it is false set the bool to false and spawn the object.

Like this(not tested):

public class SpawnScript : MonoBehaviour {
 
    public float TimerMax = 10.0f;
    public float TimerIndex = 0f;
    public bool spawn = false;

 
 
    void Update () { 
 
       TimerIndex += 1 * Time.deltaTime ;
 
       if ( TimerIndex >= TimerMax )
       {
         if(spawn == false){
            spawn = true;
            TimerIndex = 0;
            Instantiate (transform.gameObject, new Vector3(0,0,0)    ,transform.rotation) ;
         }
       } 
    }
 
}