diff --git a/Documentation/intro-user.txt b/Documentation/intro-user.txt
index 662e0b3..4e304f1 100644
--- a/Documentation/intro-user.txt
+++ b/Documentation/intro-user.txt
@@ -601,7 +601,7 @@
 exposing secret details.
 
 [[ignore]]
-== Ignoring and Muting Changes
+== Ignoring Or Marking Changes As 'Reviewed'
 
 Changes can be ignored, which means they will not appear in the 'Incoming
 Reviews' dashboard and any related email notifications will be suppressed.
@@ -609,9 +609,9 @@
 you do not actively participate in the review, but do not want to completely
 remove yourself.
 
-Alternatively, rather than completely ignoring the change, it can be muted.
-Muting a change means it will always be marked as "reviewed" in dashboards,
-until a new patch set is uploaded.
+Alternatively, rather than completely ignoring the change, it can be marked
+as 'Reviewed'. Marking a change as 'Reviewed' means it will not be highlighted
+in the dashboard, until a new patch set is uploaded.
 
 [[inline-edit]]
 == Inline Edit
diff --git a/java/com/google/gerrit/common/data/ContributorAgreement.java b/java/com/google/gerrit/common/data/ContributorAgreement.java
index 2f8755e..b43dbfa 100644
--- a/java/com/google/gerrit/common/data/ContributorAgreement.java
+++ b/java/com/google/gerrit/common/data/ContributorAgreement.java
@@ -16,7 +16,6 @@
 
 import com.google.gerrit.reviewdb.client.Project;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 
 /** Portion of a {@link Project} describing a single contributor agreement. */
@@ -85,15 +84,4 @@
   public String toString() {
     return "ContributorAgreement[" + getName() + "]";
   }
-
-  public ContributorAgreement forUi() {
-    ContributorAgreement ca = new ContributorAgreement(name);
-    ca.description = description;
-    ca.accepted = Collections.emptyList();
-    if (autoVerify != null) {
-      ca.autoVerify = new GroupReference();
-    }
-    ca.agreementUrl = agreementUrl;
-    return ca;
-  }
 }
diff --git a/lib/jackson/BUILD b/lib/jackson/BUILD
index e09f57e..3d751ab 100644
--- a/lib/jackson/BUILD
+++ b/lib/jackson/BUILD
@@ -1,7 +1,5 @@
 package(default_visibility = ["//visibility:public"])
 
-VERSION = "2.6.6"
-
 java_library(
     name = "jackson-core",
     data = ["//lib:LICENSE-Apache2.0"],
