Targetting script errors

Hey all I have just begun learning to use C# and Unity. I am learning through watching an online tutorial. I am getting some errors in my script that I can’t work out and was hoping for some help.

private void SortTargetsByDistance()	
	{		
	targets.Sort(delegate(Transform t1, Transform t2) { 
			return Vector3.Distance(t1.position, myTransform.position).CompareTo(Vector3.Distance(t2.positon, myTransform.position));
		});
		
	}

I am getting 3 errors.

Assets/Standard Assets (Mobile)/Scripts/Targetting.cs(37,114): error CS1061: Type `UnityEngine.Transform' does not contain a definition for `positon' and no extension method `positon' of type `UnityEngine.Transform' could be found (are you missing a using directive or an assembly reference?)

Assets/Standard Assets (Mobile)/Scripts/Targetting.cs(37,102): error CS1502: The best overloaded method match for `UnityEngine.Vector3.Distance(UnityEngine.Vector3, UnityEngine.Vector3)' has some invalid arguments

Assets/Standard Assets (Mobile)/Scripts/Targetting.cs(37,102): error CS1503: Argument `#1' cannot convert `object' expression to type `UnityEngine.Vector3'

Any help with these errors would be greatly appreciated.

Thanks in advance.

You have spelled position wrong in the first paramater:

.CompareTo(Vector3.Distance(t2.positon, myTransform.position));

t2.positon should be t2.position:

At least check your spellings before posting a question.