&& f.equals(Group.getDefaultList())
&& f.equals(getDefaultList())
  private void _canWriteList(Subject subj, Field f, String msg)     throws  InsufficientPrivilegeException,            SchemaException  {    // TODO Validate that this is a "list" field    // First see if we can write to the desired list    boolean rv      = false;    String  eipMsg  = msg;    try {      PrivilegeResolver.getInstance().canPrivDispatch(        this.s, this, this.s.getSubject(), f.getWritePriv()      );      rv = true;    }    catch (InsufficientPrivilegeException eIP) {      // On failure we want to throw the original eIP message so      // preserve it.      eipMsg += eIP.getMessage();      // Now see if this is a potential OPTIN or OPTOUT situation.      // TODO I'm not sure that I can trust two instances of the same      //      subject to pass an `equals()` test.  As such: ugliness.      if (        s.getSubject().getId().equals(subj.getId())        && s.getSubject().getType().equals(subj.getType())        && s.getSubject().getSource().equals(subj.getSource())        && f.equals(Group.getDefaultList())      )      {        try {          if      (msg.equals(ERR_AM)) {            PrivilegeResolver.getInstance().canOPTIN(s, this, subj);            rv = true;          }          else if (msg.equals(ERR_DM)) {            PrivilegeResolver.getInstance().canOPTOUT(s, this, subj);            rv = true;          }        }        catch (InsufficientPrivilegeException anotherIP) {          // Ignore        }      }    }    if (rv == false) {      throw new InsufficientPrivilegeException(eipMsg);    }  } // private void _canWriteList(subj, f, msg)