boolean (Proto anotherProto) { if (anotherProto.isPrivate()) { return this.isPackageLocal() || this.isProtected() || this.isPublic(); } if (anotherProto.isPackageLocal()) { return this.isProtected() || this.isPublic(); } if (anotherProto.isProtected()) { return this.isPublic(); } return false; }