Help with compile errors

I cant play my game because of some errors. I have no idea how to fix them pls help!

Code:

#pragma strict

//Moving Stats
var startPoint : Vector3;
var endPoint : Vector3;
var speed: float;
private var increment:float;
var isMoving : boolean;

//walking stats
var walkCounter: int;
var walkCounter2: int;
var isInCombat: boolean;

//cameras
var CameraMain : GameObject;
var CombatCamera : GameObject;

function Start () {

    startPoint = transform.position;
    endPoint = transform.position;

    walkCounter2 = Random.Range(5,15);
}

function Update () {

    var Sprite = gameObject.GetComponent (AnimateSprite);

    if(increment <=1 && isMoving == true) {
        increment += speed/100;
        //Debug.Log("Moving");
    }

    else {
        isMoving = false;
        //Debug.Log("Stopped");
    }

    if(isMoving) {
    transform.position = Vector3.Lerp(startPoint, endPoint, increment);
    }
    else {
        Sprite.totalCells = 1;
    }


    if(!isInCombat) {
        if(Input.GetKey("w") && isMoving == false) {

        var disableMove : boolean;
        var hit : RaycastHit;
        if (Physics.Raycast (transform.position, Vector3.forward, hit, 1.0)) {
            var distanceToGround1 = hit.distance;
            Debug.Log("HIT");

            if(hit.collider.gameObject.tag == "Collision") {

                disableMove = true;
                Debug.Log("Tree");

            }
        }
            
            
        if(!disableMove) {    
            Sprite.rowNumber = 3;
            Sprite.totalCells = 4;            
            calculateWalk();
            increment = 0;
            isMoving = true;
            startPoint = transform.position;
            endPoint = new Vector3(transform.position.x,transform.position.y,transform.position.z + 1);
        }
        disableMove = false;
    }
    else if(Input.GetKey("s") && isMoving == false) {

        var disableMove2 : boolean;
        var hit2 : RaycastHit;
        if (Physics.Raycast (transform.position, -Vector3.forward, hit2, 1.0)) {
            var distanceToGround2 = hit2.distance;
            Debug.Log("HIT");

            if(hit2.collider.gameObject.tag == "Collision") {

                disableMove2 = true;
                Debug.Log("Tree");

            }
        }
        if(!disableMove2) {    
            Sprite.rowNumber = 4;
            Sprite.totalCells = 4; 
            calculateWalk();
            increment = 0;
            isMoving = true;
            startPoint = transform.position;
            endPoint = new Vector3(transform.position.x,transform.position.y,transform.position.z - 1);
        }
        disaleMove2 = false;
    }
    else if(Input.GetKey("d") && isMoving == false) {

        var disableMove3 : boolean;
        var hit3 : RaycastHit;
        if (Physics.Raycast (transform.position, Vector3.right, hit3, 1.0)) {
            var distanceToGround3 = hit3.distance;
            Debug.Log("HIT");

            if(hit3.collider.gameObject.tag == "Collision") {

                disableMove3 = true;
                Debug.Log("Tree");

            }
        }
        if(!disableMove3) {    
            Sprite.rowNumber = 2;
            Sprite.totalCells = 4; 
            calculateWalk();
            increment = 0;
            isMoving = true;
            startPoint = transform.position;
            endPoint = new Vector3(transform.position.x + 1 ,transform.position.y,transform.position.z );
        }
        disableMove3 = false;
    }
    else if(Input.GetKey("a") && isMoving == false) {

        var disableMove4 : boolean;
        var hit4 : RaycastHit;
        if (Physics.Raycast (transform.position, Vector3.left, hit4, 1.0)) {
            var distanceToGround4 = hit4.distance;
            Debug.Log("HIT");

            if(hit4.collider.gameObject.tag == "Collision") {

                disableMove4 = true;
                Debug.Log("Tree");

            }
        }
        if(!disableMove4) {    

            Sprite.rowNumber = 1;
            Sprite.totalCells = 4; 
            calculateWalk();
            increment = 0;
            isMoving = true;
            startPoint = transform.position;
            endPoint = new Vector3(transform.position.x - 1,transform.position.y,transform.position.z);
        }
        disableMove4 = false;
    }
}

function calculateWalk () {

    yield WaitForSeconds(0.3);

    var hit : RaycastHit;
        if (Physics.Raycast (transform.position, -Vector3.up, hit, 100.0)) {
            var distanceToGround = hit.distance;
            Debug.Log("HIT");

            if(hit.collider.gameObject.tag == "tallGrass") {

                walkCounter++;
                Debug.Log("TALL GRASS");
            }
        }


    if(walkCounter >= walkCounter2) {
     
      walkCounter2 = Random.Range(5,15);
      walkCounter = 0;
      enterCombat();

    }
}

function enterCombat () {


    CameraMain.active = false;
    CombatCamera.active = true;
    isInCombat = true;
    Debug.Log("You have entered COMBAT!");
    
}
}

errors:

Assets/Scripts/PlayerStats.js(159,10): BCE0044: expecting (, found 'calculateWalk'.

Assets/Scripts/PlayerStats.js(159,26): UCE0001: ';' expected. Insert a semicolon at the end.

Assets/Scripts/PlayerStats.js(185,10): BCE0044: expecting (, found 'enterCombat'.

Assets/Scripts/PlayerStats.js(185,24): UCE0001: ';' expected. Insert a semicolon at the end.

whenever i try to fix them, i get more errors.

Two errors

  1. Update() function is missing a closing brace ‘}’.
  2. There is an extra brace ‘}’ at the end of file.