Help me convert Js to C#

Hi,sr for my bad english but can someone convert this Javascripts code to C# for me please. Thanks.

var target : Transform;
var distance = 10.0;

var xSpeed = 250.0;
var ySpeed = 120.0;

var yMinLimit = -20;
var yMaxLimit = 80;

private var x = 0.0;
private var y = 0.0;

@script AddComponentMenu("Camera-Control/Mouse Orbit")

function Start () {
    var angles = transform.eulerAngles;
    x = angles.y;
    y = angles.x;

	// Make the rigid body not change rotation
   	if (rigidbody)
		rigidbody.freezeRotation = true;
}

function LateUpdate () {

    if (target && Input.GetMouseButton(0) && !Input.GetKey("left alt")) {
        x += Input.GetAxis("Mouse X") * xSpeed * 0.02;
        y -= Input.GetAxis("Mouse Y") * ySpeed * 0.02;
 		
 		y = ClampAngle(y, yMinLimit, yMaxLimit);
 		       
        var rotation = Quaternion.Euler(y, x, 0);
        var position = rotation * Vector3(0.0, 0.0, -distance) + target.position;
        
        transform.rotation = rotation;
        transform.position = position;
    }
    
    
}

static function ClampAngle (angle : float, min : float, max : float) {
	if (angle < -360)
		angle += 360;
	if (angle > 360)
		angle -= 360;
	return Mathf.Clamp (angle, min, max);
}

This compiles and works:

// C#
// MouseOrbit.cs
using UnityEngine;
using System.Collections;

[AddComponentMenu("Camera-Control/Mouse Orbit")]
public class MouseOrbit : MonoBehaviour
{
    public Transform target;
    public float distance = 10.0f;
    
    public float xSpeed = 250.0f;
    public float ySpeed = 120.0f;
    
    public float yMinLimit = -20f;
    public float yMaxLimit = 80f;
    
    private float x = 0.0f;
    private float y = 0.0f;
    
    
    void Start()
    {
        var angles = transform.eulerAngles;
        x = angles.y;
        y = angles.x;
    
        // Make the rigid body not change rotation
       	if (rigidbody)
            rigidbody.freezeRotation = true;
    }
    
    void LateUpdate()
    {
        if (target != null && Input.GetMouseButton(0) && !Input.GetKey(KeyCode.LeftAlt))
        {
            x += Input.GetAxis("Mouse X") * xSpeed * 0.02f;
            y -= Input.GetAxis("Mouse Y") * ySpeed * 0.02f;
            
            y = ClampAngle(y, yMinLimit, yMaxLimit);
            
            var rotation = Quaternion.Euler(y, x, 0f);
            var position = rotation * new Vector3(0.0f, 0.0f, -distance) + target.position;
            
            transform.rotation = rotation;
            transform.position = position;
        }
    }

    static float ClampAngle (float angle, float min, float max)
    {
        if (angle < -360f)
            angle += 360f;
        if (angle > 360f)
            angle -= 360f;
        return Mathf.Clamp (angle, min, max);
    }
}