style nit: 

    if () { 
      ....
    } else { 
      ....
    }