class BusinessCard {

  private String name;
  private String email;
  private int yearsOfService;

  public BusinessCard(String name, String email, int yearsOfService) {
    this.name = name;
    this.email = email;
    this.yearsOfService = yearsOfService;
  } 

  public String getName() {
    return name;
  }

  public String getEmail() {
    return email;
  }

  public int getYearsOfService() {
    return yearsOfService;
  }

  public void incrementYearsOfService() {
    yearsOfService = yearsOfService + 1;
  }

  public void changeEmail(String email) {
    this.email = email;
  }

  public String toString() {
    return name + ", " + email + ", " + yearsOfService + "yrs";
  }

  public boolean equals (Object o) {
    BusinessCard bc = (BusinessCard) o;

    if (!this.name.equals(bc.name))
      return false;

    if (!this.email.equals(bc.email))
      return false;

    if (this.yearsOfService != bc.yearsOfService)
      return false;

    return true;
  }


  public static void main (String[] args) {
    BusinessCard gregCard = new BusinessCard ("Gregory Kesden", 
                                              "gkesden@cs.cmu.edu", 10);

    System.out.println (gregCard);
    System.out.println (gregCard.getName() + ", " + gregCard.getEmail() + ", " +
                        gregCard.getYearsOfService() + "yrs");

    gregCard.incrementYearsOfService();
    gregCard.changeEmail("gkesden@andrew.cmu.edu");
    System.out.println (gregCard);

    
    BusinessCard gregClone= new BusinessCard ("Gregory Kesden", 
                                              "gkesden@andrew.cmu.edu", 11);

    if (gregCard.equals(gregClone))
      System.out.println ("The two cards (gregCard,gregClone)  are equivalent");
    else
      System.out.println ("The two cards (gregCard,gregClone) are NOT equivalent");

    BusinessCard gregYear= new BusinessCard ("Gregory Kesden", 
                                              "gkesden@andrew.cmu.edu", 10);
    if (gregCard.equals(gregYear))
      System.out.println ("The two cards (gregCard,gregYear)  are equivalent");
    else
      System.out.println ("The two cards (gregCard,gregYear) are NOT equivalent");

    BusinessCard gregEmail= new BusinessCard ("Gregory Kesden", 
                                              "gkesden@cs.cmu.edu", 11);
    if (gregCard.equals(gregEmail))
      System.out.println ("The two cards (gregCard,gregEmail)  are equivalent");
    else
      System.out.println ("The two cards (gregCard,gregEmail) are NOT equivalent");
  }
  

 
}
