class CommunityVar extends SymbolicRegex implements Comparable<CommunityVar> {

  @Override
  public boolean equals(@Nullable Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof CommunityVar)) {
      return false;
    }
    CommunityVar that = (CommunityVar) o;
    return _type == that._type
        && _regex.equals(that._regex)
        && Objects.equals(_literalValue, that._literalValue);
  }

  private  CommunityVar(Type type, String regex, @Nullable Community literalValue);

}