I want to switch a game object's material back to its original after its been altered?!?!?!

In my game, when an object is selected, it applies the diffuse shader to the object which then highlights it.

When the object is clicked again when it has been highlighted, I want the highlighting shader to be turned off and the original material to be applied.

 else if (hit.collider.tag == "Object" && lastClicked != null && taptaptapSelect.enabled == true) {
					//Debug.Log ("This hit at " + hit.transform.name);
					print (clickedGameObject.gameObject.name);
				//	print ("tapTime");

					//clickedGameObject.gameObject.active = false;
					rend = clickedGameObject.GetComponent<Renderer> ();
					rend.material = diffuseShader;


How can I capture the original material of a game object?

Have a non-local member public Material originalMaterial; that saves the original material. Then assign the material later by rend.material = originalMaterial;