diff --git a/example-adminSshCommand/tools/bazel.rc b/.bazelrc
similarity index 100%
copy from example-adminSshCommand/tools/bazel.rc
copy to .bazelrc
diff --git a/WORKSPACE b/WORKSPACE
index 60ae3e2..4ae996b 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/bazlets.bzl b/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/bazlets.bzl
+++ b/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-adminSshCommand/tools/bazel.rc b/example-adminSshCommand/.bazelrc
similarity index 100%
rename from example-adminSshCommand/tools/bazel.rc
rename to example-adminSshCommand/.bazelrc
diff --git a/example-adminSshCommand/WORKSPACE b/example-adminSshCommand/WORKSPACE
index 96a325d..a80d076 100644
--- a/example-adminSshCommand/WORKSPACE
+++ b/example-adminSshCommand/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-adminSshCommand/bazlets.bzl b/example-adminSshCommand/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-adminSshCommand/bazlets.bzl
+++ b/example-adminSshCommand/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-changeHasOperator/tools/bazel.rc b/example-changeHasOperator/.bazelrc
similarity index 100%
rename from example-changeHasOperator/tools/bazel.rc
rename to example-changeHasOperator/.bazelrc
diff --git a/example-changeHasOperator/WORKSPACE b/example-changeHasOperator/WORKSPACE
index e5dec66..f6f67d7 100644
--- a/example-changeHasOperator/WORKSPACE
+++ b/example-changeHasOperator/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-changeHasOperator/bazlets.bzl b/example-changeHasOperator/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-changeHasOperator/bazlets.bzl
+++ b/example-changeHasOperator/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-changeHasOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changehasoperator/SampleHasOperand.java b/example-changeHasOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changehasoperator/SampleHasOperand.java
index df6f455..cb1c08a 100644
--- a/example-changeHasOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changehasoperator/SampleHasOperand.java
+++ b/example-changeHasOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changehasoperator/SampleHasOperand.java
@@ -14,8 +14,8 @@
 
 package com.googlesource.gerrit.plugins.examples.changehasoperator;
 
-import com.google.gerrit.server.query.Predicate;
-import com.google.gerrit.server.query.QueryParseException;
+import com.google.gerrit.index.query.Predicate;
+import com.google.gerrit.index.query.QueryParseException;
 import com.google.gerrit.server.query.change.ChangeData;
 import com.google.gerrit.server.query.change.ChangeOperatorPredicate;
 import com.google.gerrit.server.query.change.ChangeQueryBuilder;
diff --git a/example-changeOperator/tools/bazel.rc b/example-changeOperator/.bazelrc
similarity index 100%
rename from example-changeOperator/tools/bazel.rc
rename to example-changeOperator/.bazelrc
diff --git a/example-changeOperator/WORKSPACE b/example-changeOperator/WORKSPACE
index 39638e8..1e1faf6 100644
--- a/example-changeOperator/WORKSPACE
+++ b/example-changeOperator/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-changeOperator/bazlets.bzl b/example-changeOperator/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-changeOperator/bazlets.bzl
+++ b/example-changeOperator/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-changeOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changeoperator/SampleOperator.java b/example-changeOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changeoperator/SampleOperator.java
index 8cc43a6..940babc 100644
--- a/example-changeOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changeoperator/SampleOperator.java
+++ b/example-changeOperator/src/main/java/com/googlesource/gerrit/plugins/examples/changeoperator/SampleOperator.java
@@ -14,9 +14,9 @@
 
 package com.googlesource.gerrit.plugins.examples.changeoperator;
 
+import com.google.gerrit.index.query.Predicate;
+import com.google.gerrit.index.query.QueryParseException;
 import com.google.gerrit.reviewdb.client.Change;
-import com.google.gerrit.server.query.Predicate;
-import com.google.gerrit.server.query.QueryParseException;
 import com.google.gerrit.server.query.change.ChangeData;
 import com.google.gerrit.server.query.change.ChangeOperatorPredicate;
 import com.google.gerrit.server.query.change.ChangeQueryBuilder;
diff --git a/example-changeQueryAttributes/tools/bazel.rc b/example-changeQueryAttributes/.bazelrc
similarity index 100%
rename from example-changeQueryAttributes/tools/bazel.rc
rename to example-changeQueryAttributes/.bazelrc
diff --git a/example-changeQueryAttributes/WORKSPACE b/example-changeQueryAttributes/WORKSPACE
index 9424738..3dde217 100644
--- a/example-changeQueryAttributes/WORKSPACE
+++ b/example-changeQueryAttributes/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-changeQueryAttributes/bazlets.bzl b/example-changeQueryAttributes/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-changeQueryAttributes/bazlets.bzl
+++ b/example-changeQueryAttributes/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-commitValidator/tools/bazel.rc b/example-commitValidator/.bazelrc
similarity index 100%
rename from example-commitValidator/tools/bazel.rc
rename to example-commitValidator/.bazelrc
diff --git a/example-commitValidator/WORKSPACE b/example-commitValidator/WORKSPACE
index ec6ae12..68fa79d 100644
--- a/example-commitValidator/WORKSPACE
+++ b/example-commitValidator/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-commitValidator/bazlets.bzl b/example-commitValidator/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-commitValidator/bazlets.bzl
+++ b/example-commitValidator/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-consoleMetricReporter/tools/bazel.rc b/example-consoleMetricReporter/.bazelrc
similarity index 100%
rename from example-consoleMetricReporter/tools/bazel.rc
rename to example-consoleMetricReporter/.bazelrc
diff --git a/example-consoleMetricReporter/WORKSPACE b/example-consoleMetricReporter/WORKSPACE
index 55a2d88..43708fa 100644
--- a/example-consoleMetricReporter/WORKSPACE
+++ b/example-consoleMetricReporter/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-consoleMetricReporter/bazlets.bzl b/example-consoleMetricReporter/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-consoleMetricReporter/bazlets.bzl
+++ b/example-consoleMetricReporter/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-deployedOnIncludedInExtension/tools/bazel.rc b/example-deployedOnIncludedInExtension/.bazelrc
similarity index 100%
rename from example-deployedOnIncludedInExtension/tools/bazel.rc
rename to example-deployedOnIncludedInExtension/.bazelrc
diff --git a/example-deployedOnIncludedInExtension/WORKSPACE b/example-deployedOnIncludedInExtension/WORKSPACE
index b94024e..495c94b 100644
--- a/example-deployedOnIncludedInExtension/WORKSPACE
+++ b/example-deployedOnIncludedInExtension/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-deployedOnIncludedInExtension/bazlets.bzl b/example-deployedOnIncludedInExtension/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-deployedOnIncludedInExtension/bazlets.bzl
+++ b/example-deployedOnIncludedInExtension/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-restApiCommandOption/tools/bazel.rc b/example-restApiCommandOption/.bazelrc
similarity index 100%
rename from example-restApiCommandOption/tools/bazel.rc
rename to example-restApiCommandOption/.bazelrc
diff --git a/example-restApiCommandOption/WORKSPACE b/example-restApiCommandOption/WORKSPACE
index 1b03b76..10baaf7 100644
--- a/example-restApiCommandOption/WORKSPACE
+++ b/example-restApiCommandOption/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-restApiCommandOption/bazlets.bzl b/example-restApiCommandOption/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-restApiCommandOption/bazlets.bzl
+++ b/example-restApiCommandOption/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-restApiGetRevision/tools/bazel.rc b/example-restApiGetRevision/.bazelrc
similarity index 100%
rename from example-restApiGetRevision/tools/bazel.rc
rename to example-restApiGetRevision/.bazelrc
diff --git a/example-restApiGetRevision/.buckversion b/example-restApiGetRevision/.buckversion
deleted file mode 120000
index 6203e53..0000000
--- a/example-restApiGetRevision/.buckversion
+++ /dev/null
@@ -1 +0,0 @@
-bucklets/buckversion
\ No newline at end of file
diff --git a/example-restApiGetRevision/WORKSPACE b/example-restApiGetRevision/WORKSPACE
index b80383a..8255487 100644
--- a/example-restApiGetRevision/WORKSPACE
+++ b/example-restApiGetRevision/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-restApiGetRevision/bazlets.bzl b/example-restApiGetRevision/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-restApiGetRevision/bazlets.bzl
+++ b/example-restApiGetRevision/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-restApiPostProject/tools/bazel.rc b/example-restApiPostProject/.bazelrc
similarity index 100%
rename from example-restApiPostProject/tools/bazel.rc
rename to example-restApiPostProject/.bazelrc
diff --git a/example-restApiPostProject/.buckversion b/example-restApiPostProject/.buckversion
deleted file mode 120000
index 6203e53..0000000
--- a/example-restApiPostProject/.buckversion
+++ /dev/null
@@ -1 +0,0 @@
-bucklets/buckversion
\ No newline at end of file
diff --git a/example-restApiPostProject/WORKSPACE b/example-restApiPostProject/WORKSPACE
index 0fc7c00..60839a4 100644
--- a/example-restApiPostProject/WORKSPACE
+++ b/example-restApiPostProject/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-restApiPostProject/bazlets.bzl b/example-restApiPostProject/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-restApiPostProject/bazlets.bzl
+++ b/example-restApiPostProject/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-restApiPostProject/tools/workspace-status.sh b/example-restApiPostProject/tools/workspace-status.sh
index 010cdfa..7cd3b5a 100755
--- a/example-restApiPostProject/tools/workspace-status.sh
+++ b/example-restApiPostProject/tools/workspace-status.sh
@@ -14,4 +14,4 @@
   git describe --always --match "v[0-9].*" --dirty
 }
 
-echo STABLE_BUILD_EXAMPLE-RESTAPIPOSTPROJECTIAS_LABEL $(rev)
+echo STABLE_BUILD_EXAMPLE-RESTAPIPOSTPROJECT_LABEL $(rev)
diff --git a/example-restApiPostRevision/tools/bazel.rc b/example-restApiPostRevision/.bazelrc
similarity index 100%
rename from example-restApiPostRevision/tools/bazel.rc
rename to example-restApiPostRevision/.bazelrc
diff --git a/example-restApiPostRevision/.buckversion b/example-restApiPostRevision/.buckversion
deleted file mode 120000
index 6203e53..0000000
--- a/example-restApiPostRevision/.buckversion
+++ /dev/null
@@ -1 +0,0 @@
-bucklets/buckversion
\ No newline at end of file
diff --git a/example-restApiPostRevision/WORKSPACE b/example-restApiPostRevision/WORKSPACE
index 6f4165c..ea0d4d4 100644
--- a/example-restApiPostRevision/WORKSPACE
+++ b/example-restApiPostRevision/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-restApiPostRevision/bazlets.bzl b/example-restApiPostRevision/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-restApiPostRevision/bazlets.bzl
+++ b/example-restApiPostRevision/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-servlet/tools/bazel.rc b/example-servlet/.bazelrc
similarity index 100%
rename from example-servlet/tools/bazel.rc
rename to example-servlet/.bazelrc
diff --git a/example-servlet/WORKSPACE b/example-servlet/WORKSPACE
index 9d7873c..9aef3d1 100644
--- a/example-servlet/WORKSPACE
+++ b/example-servlet/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-servlet/bazlets.bzl b/example-servlet/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-servlet/bazlets.bzl
+++ b/example-servlet/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-simpleSshCommand/tools/bazel.rc b/example-simpleSshCommand/.bazelrc
similarity index 100%
rename from example-simpleSshCommand/tools/bazel.rc
rename to example-simpleSshCommand/.bazelrc
diff --git a/example-simpleSshCommand/.buckversion b/example-simpleSshCommand/.buckversion
deleted file mode 120000
index 6203e53..0000000
--- a/example-simpleSshCommand/.buckversion
+++ /dev/null
@@ -1 +0,0 @@
-bucklets/buckversion
\ No newline at end of file
diff --git a/example-simpleSshCommand/WORKSPACE b/example-simpleSshCommand/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-simpleSshCommand/WORKSPACE
+++ b/example-simpleSshCommand/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-simpleSshCommand/bazlets.bzl b/example-simpleSshCommand/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-simpleSshCommand/bazlets.bzl
+++ b/example-simpleSshCommand/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-sshAndRestCommandOptionBeanParseListener/tools/bazel.rc b/example-sshAndRestCommandOptionBeanParseListener/.bazelrc
similarity index 100%
rename from example-sshAndRestCommandOptionBeanParseListener/tools/bazel.rc
rename to example-sshAndRestCommandOptionBeanParseListener/.bazelrc
diff --git a/example-sshAndRestCommandOptionBeanParseListener/WORKSPACE b/example-sshAndRestCommandOptionBeanParseListener/WORKSPACE
index 2f5c506..a122188 100644
--- a/example-sshAndRestCommandOptionBeanParseListener/WORKSPACE
+++ b/example-sshAndRestCommandOptionBeanParseListener/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-sshAndRestCommandOptionBeanParseListener/bazlets.bzl b/example-sshAndRestCommandOptionBeanParseListener/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-sshAndRestCommandOptionBeanParseListener/bazlets.bzl
+++ b/example-sshAndRestCommandOptionBeanParseListener/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-sshCommandAlias/tools/bazel.rc b/example-sshCommandAlias/.bazelrc
similarity index 100%
rename from example-sshCommandAlias/tools/bazel.rc
rename to example-sshCommandAlias/.bazelrc
diff --git a/example-sshCommandAlias/WORKSPACE b/example-sshCommandAlias/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-sshCommandAlias/WORKSPACE
+++ b/example-sshCommandAlias/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-sshCommandAlias/bazlets.bzl b/example-sshCommandAlias/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-sshCommandAlias/bazlets.bzl
+++ b/example-sshCommandAlias/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-sshCommandDelegateDynamicBean/tools/bazel.rc b/example-sshCommandDelegateDynamicBean/.bazelrc
similarity index 100%
rename from example-sshCommandDelegateDynamicBean/tools/bazel.rc
rename to example-sshCommandDelegateDynamicBean/.bazelrc
diff --git a/example-sshCommandDelegateDynamicBean/WORKSPACE b/example-sshCommandDelegateDynamicBean/WORKSPACE
index f28a461..795c0d6 100644
--- a/example-sshCommandDelegateDynamicBean/WORKSPACE
+++ b/example-sshCommandDelegateDynamicBean/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-sshCommandDelegateDynamicBean/bazlets.bzl b/example-sshCommandDelegateDynamicBean/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-sshCommandDelegateDynamicBean/bazlets.bzl
+++ b/example-sshCommandDelegateDynamicBean/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-sshCommandOption/tools/bazel.rc b/example-sshCommandOption/.bazelrc
similarity index 100%
rename from example-sshCommandOption/tools/bazel.rc
rename to example-sshCommandOption/.bazelrc
diff --git a/example-sshCommandOption/WORKSPACE b/example-sshCommandOption/WORKSPACE
index 324fd16..7cec05f 100644
--- a/example-sshCommandOption/WORKSPACE
+++ b/example-sshCommandOption/WORKSPACE
@@ -3,24 +3,24 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
-
-# Snapshot Plugin API
 load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
 )
 
+# Snapshot Plugin API
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
+
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
diff --git a/example-sshCommandOption/bazlets.bzl b/example-sshCommandOption/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-sshCommandOption/bazlets.bzl
+++ b/example-sshCommandOption/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-topMenu/tools/bazel.rc b/example-topMenu/.bazelrc
similarity index 100%
rename from example-topMenu/tools/bazel.rc
rename to example-topMenu/.bazelrc
diff --git a/example-topMenu/WORKSPACE b/example-topMenu/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-topMenu/WORKSPACE
+++ b/example-topMenu/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-topMenu/bazlets.bzl b/example-topMenu/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-topMenu/bazlets.bzl
+++ b/example-topMenu/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-usageDataLogger/tools/bazel.rc b/example-usageDataLogger/.bazelrc
similarity index 100%
rename from example-usageDataLogger/tools/bazel.rc
rename to example-usageDataLogger/.bazelrc
diff --git a/example-usageDataLogger/WORKSPACE b/example-usageDataLogger/WORKSPACE
index d0089fc..35f2eec 100644
--- a/example-usageDataLogger/WORKSPACE
+++ b/example-usageDataLogger/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-usageDataLogger/bazlets.bzl b/example-usageDataLogger/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-usageDataLogger/bazlets.bzl
+++ b/example-usageDataLogger/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerAssignee/tools/bazel.rc b/example-validationListenerAssignee/.bazelrc
similarity index 100%
rename from example-validationListenerAssignee/tools/bazel.rc
rename to example-validationListenerAssignee/.bazelrc
diff --git a/example-validationListenerAssignee/WORKSPACE b/example-validationListenerAssignee/WORKSPACE
index 6749543..3fb085d 100644
--- a/example-validationListenerAssignee/WORKSPACE
+++ b/example-validationListenerAssignee/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerAssignee/bazlets.bzl b/example-validationListenerAssignee/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerAssignee/bazlets.bzl
+++ b/example-validationListenerAssignee/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerAssignee/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerassignee/AssigneeValidator.java b/example-validationListenerAssignee/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerassignee/AssigneeValidator.java
index 8fef105..5de9af0 100644
--- a/example-validationListenerAssignee/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerassignee/AssigneeValidator.java
+++ b/example-validationListenerAssignee/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerassignee/AssigneeValidator.java
@@ -14,15 +14,17 @@
 
 package com.googlesource.gerrit.plugins.examples.validationlistenerassignee;
 
+import com.google.gerrit.index.query.QueryParseException;
 import com.google.gerrit.reviewdb.client.Account;
 import com.google.gerrit.reviewdb.client.Change;
-import com.google.gerrit.server.query.QueryParseException;
 import com.google.gerrit.server.query.change.ChangeQueryBuilder;
 import com.google.gerrit.server.query.change.ChangeQueryProcessor;
 import com.google.gerrit.server.validators.AssigneeValidationListener;
 import com.google.gerrit.server.validators.ValidationException;
 import com.google.gwtorm.server.OrmException;
 import com.google.inject.Inject;
+import java.io.IOException;
+import org.eclipse.jgit.errors.ConfigInvalidException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -46,7 +48,7 @@
         throw new ValidationException(
             "Cannot assign user to more than " + MAX_ASSIGNED_CHANGES + " changes");
       }
-    } catch (OrmException | QueryParseException e) {
+    } catch (OrmException | IOException | ConfigInvalidException | QueryParseException e) {
       log.error("Failed to validate assignee for change " + change.getId(), e);
       // Allow assignee.
     }
diff --git a/example-validationListenerCommit/tools/bazel.rc b/example-validationListenerCommit/.bazelrc
similarity index 100%
rename from example-validationListenerCommit/tools/bazel.rc
rename to example-validationListenerCommit/.bazelrc
diff --git a/example-validationListenerCommit/WORKSPACE b/example-validationListenerCommit/WORKSPACE
index 3403b2b..7467937 100644
--- a/example-validationListenerCommit/WORKSPACE
+++ b/example-validationListenerCommit/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerCommit/bazlets.bzl b/example-validationListenerCommit/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerCommit/bazlets.bzl
+++ b/example-validationListenerCommit/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerHashtag/tools/bazel.rc b/example-validationListenerHashtag/.bazelrc
similarity index 100%
rename from example-validationListenerHashtag/tools/bazel.rc
rename to example-validationListenerHashtag/.bazelrc
diff --git a/example-validationListenerHashtag/WORKSPACE b/example-validationListenerHashtag/WORKSPACE
index e360519..78ceec7 100644
--- a/example-validationListenerHashtag/WORKSPACE
+++ b/example-validationListenerHashtag/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerHashtag/bazlets.bzl b/example-validationListenerHashtag/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerHashtag/bazlets.bzl
+++ b/example-validationListenerHashtag/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerMerge/tools/bazel.rc b/example-validationListenerMerge/.bazelrc
similarity index 100%
rename from example-validationListenerMerge/tools/bazel.rc
rename to example-validationListenerMerge/.bazelrc
diff --git a/example-validationListenerMerge/WORKSPACE b/example-validationListenerMerge/WORKSPACE
index d461b41..022fda7 100644
--- a/example-validationListenerMerge/WORKSPACE
+++ b/example-validationListenerMerge/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerMerge/bazlets.bzl b/example-validationListenerMerge/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerMerge/bazlets.bzl
+++ b/example-validationListenerMerge/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerMerge/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenermerge/MergeUserValidator.java b/example-validationListenerMerge/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenermerge/MergeUserValidator.java
index 9413bdd..51263b6 100644
--- a/example-validationListenerMerge/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenermerge/MergeUserValidator.java
+++ b/example-validationListenerMerge/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenermerge/MergeUserValidator.java
@@ -20,7 +20,10 @@
 import com.google.gerrit.server.git.CodeReviewCommit;
 import com.google.gerrit.server.git.validators.MergeValidationException;
 import com.google.gerrit.server.git.validators.MergeValidationListener;
+import com.google.gerrit.server.permissions.GlobalPermission;
+import com.google.gerrit.server.permissions.PermissionBackend;
 import com.google.gerrit.server.project.ProjectState;
+import com.google.inject.Inject;
 import com.google.inject.Singleton;
 import org.eclipse.jgit.lib.Repository;
 
@@ -32,6 +35,12 @@
 @Singleton
 public class MergeUserValidator implements MergeValidationListener {
 
+  private PermissionBackend permissionBackend;
+  @Inject
+  MergeUserValidator(PermissionBackend permissionBackend) {
+    this.permissionBackend = permissionBackend;
+  }
+
   /** Reject all merges if the submitter is not an administrator */
   @Override
   public void onPreMerge(
@@ -42,7 +51,8 @@
       PatchSet.Id patchSetId,
       IdentifiedUser caller)
       throws MergeValidationException {
-    if (!caller.getCapabilities().canAdministrateServer()) {
+
+    if (!permissionBackend.user(caller).testOrFalse(GlobalPermission.ADMINISTRATE_SERVER)) {
       throw new MergeValidationException(
           "Submitter " + caller.getNameEmail() + " is not a site administrator");
     }
diff --git a/example-validationListenerNewProjectCreated/tools/bazel.rc b/example-validationListenerNewProjectCreated/.bazelrc
similarity index 100%
rename from example-validationListenerNewProjectCreated/tools/bazel.rc
rename to example-validationListenerNewProjectCreated/.bazelrc
diff --git a/example-validationListenerNewProjectCreated/WORKSPACE b/example-validationListenerNewProjectCreated/WORKSPACE
index 63337bc..76a1a0d 100644
--- a/example-validationListenerNewProjectCreated/WORKSPACE
+++ b/example-validationListenerNewProjectCreated/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerNewProjectCreated/bazlets.bzl b/example-validationListenerNewProjectCreated/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerNewProjectCreated/bazlets.bzl
+++ b/example-validationListenerNewProjectCreated/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerRefOperation/tools/bazel.rc b/example-validationListenerRefOperation/.bazelrc
similarity index 100%
rename from example-validationListenerRefOperation/tools/bazel.rc
rename to example-validationListenerRefOperation/.bazelrc
diff --git a/example-validationListenerRefOperation/WORKSPACE b/example-validationListenerRefOperation/WORKSPACE
index eec6865..0a0276e 100644
--- a/example-validationListenerRefOperation/WORKSPACE
+++ b/example-validationListenerRefOperation/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerRefOperation/bazlets.bzl b/example-validationListenerRefOperation/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerRefOperation/bazlets.bzl
+++ b/example-validationListenerRefOperation/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-validationListenerRefOperation/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerrefoperation/RefOperationValidationExample.java b/example-validationListenerRefOperation/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerrefoperation/RefOperationValidationExample.java
index 145edc0..b896098 100644
--- a/example-validationListenerRefOperation/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerrefoperation/RefOperationValidationExample.java
+++ b/example-validationListenerRefOperation/src/main/java/com/googlesource/gerrit/plugins/examples/validationlistenerrefoperation/RefOperationValidationExample.java
@@ -19,17 +19,26 @@
 import com.google.gerrit.server.events.RefReceivedEvent;
 import com.google.gerrit.server.git.validators.RefOperationValidationListener;
 import com.google.gerrit.server.git.validators.ValidationMessage;
+import com.google.gerrit.server.permissions.GlobalPermission;
+import com.google.gerrit.server.permissions.PermissionBackend;
 import com.google.gerrit.server.validators.ValidationException;
 import java.util.ArrayList;
 import java.util.List;
+import com.google.inject.Inject;
 
 public class RefOperationValidationExample implements RefOperationValidationListener {
 
+  private PermissionBackend permissionBackend;
+  @Inject
+  RefOperationValidationExample(PermissionBackend permissionBackend) {
+    this.permissionBackend = permissionBackend;
+  }
+
   @Override
   public List<ValidationMessage> onRefOperation(RefReceivedEvent event) throws ValidationException {
     ArrayList<ValidationMessage> messages = Lists.newArrayList();
     if (event.command.getRefName().startsWith(RefNames.REFS_HEADS + "protected-")
-        && !event.user.getCapabilities().canAdministrateServer()) {
+        && !permissionBackend.user(event.user).testOrFalse(GlobalPermission.ADMINISTRATE_SERVER)) {
       throw new ValidationException(
           String.format(
               "Operation %s on %s branch in project %s is not valid!",
diff --git a/example-validationListenerUpload/tools/bazel.rc b/example-validationListenerUpload/.bazelrc
similarity index 100%
rename from example-validationListenerUpload/tools/bazel.rc
rename to example-validationListenerUpload/.bazelrc
diff --git a/example-validationListenerUpload/WORKSPACE b/example-validationListenerUpload/WORKSPACE
index 9dbb99c..806c34c 100644
--- a/example-validationListenerUpload/WORKSPACE
+++ b/example-validationListenerUpload/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-validationListenerUpload/bazlets.bzl b/example-validationListenerUpload/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-validationListenerUpload/bazlets.bzl
+++ b/example-validationListenerUpload/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-webLinkBranch/tools/bazel.rc b/example-webLinkBranch/.bazelrc
similarity index 100%
rename from example-webLinkBranch/tools/bazel.rc
rename to example-webLinkBranch/.bazelrc
diff --git a/example-webLinkBranch/WORKSPACE b/example-webLinkBranch/WORKSPACE
index 3ea64b8..2a8b48f 100644
--- a/example-webLinkBranch/WORKSPACE
+++ b/example-webLinkBranch/WORKSPACE
@@ -1,9 +1,9 @@
-workspace(name = "simpleSshCommand")
+workspace(name = "webLinkBranch")
 
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-webLinkBranch/bazlets.bzl b/example-webLinkBranch/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-webLinkBranch/bazlets.bzl
+++ b/example-webLinkBranch/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-webLinkFileHistory/tools/bazel.rc b/example-webLinkFileHistory/.bazelrc
similarity index 100%
rename from example-webLinkFileHistory/tools/bazel.rc
rename to example-webLinkFileHistory/.bazelrc
diff --git a/example-webLinkFileHistory/WORKSPACE b/example-webLinkFileHistory/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-webLinkFileHistory/WORKSPACE
+++ b/example-webLinkFileHistory/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-webLinkFileHistory/bazlets.bzl b/example-webLinkFileHistory/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-webLinkFileHistory/bazlets.bzl
+++ b/example-webLinkFileHistory/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-webLinkPatchSet/tools/bazel.rc b/example-webLinkPatchSet/.bazelrc
similarity index 100%
rename from example-webLinkPatchSet/tools/bazel.rc
rename to example-webLinkPatchSet/.bazelrc
diff --git a/example-webLinkPatchSet/WORKSPACE b/example-webLinkPatchSet/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-webLinkPatchSet/WORKSPACE
+++ b/example-webLinkPatchSet/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-webLinkPatchSet/bazlets.bzl b/example-webLinkPatchSet/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-webLinkPatchSet/bazlets.bzl
+++ b/example-webLinkPatchSet/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-webLinkProject/tools/bazel.rc b/example-webLinkProject/.bazelrc
similarity index 100%
rename from example-webLinkProject/tools/bazel.rc
rename to example-webLinkProject/.bazelrc
diff --git a/example-webLinkProject/WORKSPACE b/example-webLinkProject/WORKSPACE
index 3ea64b8..00047c0 100644
--- a/example-webLinkProject/WORKSPACE
+++ b/example-webLinkProject/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/example-webLinkProject/bazlets.bzl b/example-webLinkProject/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-webLinkProject/bazlets.bzl
+++ b/example-webLinkProject/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiChangeScreenBelowChangeInfoBlock/tools/bazel.rc b/example-wuiChangeScreenBelowChangeInfoBlock/.bazelrc
similarity index 100%
rename from example-wuiChangeScreenBelowChangeInfoBlock/tools/bazel.rc
rename to example-wuiChangeScreenBelowChangeInfoBlock/.bazelrc
diff --git a/example-wuiChangeScreenBelowChangeInfoBlock/WORKSPACE b/example-wuiChangeScreenBelowChangeInfoBlock/WORKSPACE
index 7b67f00..cb67375 100644
--- a/example-wuiChangeScreenBelowChangeInfoBlock/WORKSPACE
+++ b/example-wuiChangeScreenBelowChangeInfoBlock/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiChangeScreenBelowChangeInfoBlock/bazlets.bzl b/example-wuiChangeScreenBelowChangeInfoBlock/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiChangeScreenBelowChangeInfoBlock/bazlets.bzl
+++ b/example-wuiChangeScreenBelowChangeInfoBlock/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiChangeScreenHeader/tools/bazel.rc b/example-wuiChangeScreenHeader/.bazelrc
similarity index 100%
rename from example-wuiChangeScreenHeader/tools/bazel.rc
rename to example-wuiChangeScreenHeader/.bazelrc
diff --git a/example-wuiChangeScreenHeader/WORKSPACE b/example-wuiChangeScreenHeader/WORKSPACE
index 4ec2d29..37ad4a3 100644
--- a/example-wuiChangeScreenHeader/WORKSPACE
+++ b/example-wuiChangeScreenHeader/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiChangeScreenHeader/bazlets.bzl b/example-wuiChangeScreenHeader/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiChangeScreenHeader/bazlets.bzl
+++ b/example-wuiChangeScreenHeader/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiChangeScreenHeaderRightOfButtons/tools/bazel.rc b/example-wuiChangeScreenHeaderRightOfButtons/.bazelrc
similarity index 100%
rename from example-wuiChangeScreenHeaderRightOfButtons/tools/bazel.rc
rename to example-wuiChangeScreenHeaderRightOfButtons/.bazelrc
diff --git a/example-wuiChangeScreenHeaderRightOfButtons/WORKSPACE b/example-wuiChangeScreenHeaderRightOfButtons/WORKSPACE
index 80de19a..45ebe0a 100644
--- a/example-wuiChangeScreenHeaderRightOfButtons/WORKSPACE
+++ b/example-wuiChangeScreenHeaderRightOfButtons/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiChangeScreenHeaderRightOfButtons/bazlets.bzl b/example-wuiChangeScreenHeaderRightOfButtons/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiChangeScreenHeaderRightOfButtons/bazlets.bzl
+++ b/example-wuiChangeScreenHeaderRightOfButtons/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiChangeScreenHeaderRightOfPopDowns/tools/bazel.rc b/example-wuiChangeScreenHeaderRightOfPopDowns/.bazelrc
similarity index 100%
rename from example-wuiChangeScreenHeaderRightOfPopDowns/tools/bazel.rc
rename to example-wuiChangeScreenHeaderRightOfPopDowns/.bazelrc
diff --git a/example-wuiChangeScreenHeaderRightOfPopDowns/WORKSPACE b/example-wuiChangeScreenHeaderRightOfPopDowns/WORKSPACE
index a8390a2..0b98ed8 100644
--- a/example-wuiChangeScreenHeaderRightOfPopDowns/WORKSPACE
+++ b/example-wuiChangeScreenHeaderRightOfPopDowns/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiChangeScreenHeaderRightOfPopDowns/bazlets.bzl b/example-wuiChangeScreenHeaderRightOfPopDowns/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiChangeScreenHeaderRightOfPopDowns/bazlets.bzl
+++ b/example-wuiChangeScreenHeaderRightOfPopDowns/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiPluginScreen/tools/bazel.rc b/example-wuiPluginScreen/.bazelrc
similarity index 100%
rename from example-wuiPluginScreen/tools/bazel.rc
rename to example-wuiPluginScreen/.bazelrc
diff --git a/example-wuiPluginScreen/WORKSPACE b/example-wuiPluginScreen/WORKSPACE
index 9f108e5..fce842b 100644
--- a/example-wuiPluginScreen/WORKSPACE
+++ b/example-wuiPluginScreen/WORKSPACE
@@ -1,23 +1,23 @@
-workspace(name = "wuiPluginScreen")
+workspace(name = "wuiSettingsScreen")
 
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiPluginScreen/bazlets.bzl b/example-wuiPluginScreen/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiPluginScreen/bazlets.bzl
+++ b/example-wuiPluginScreen/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiPreferenceScreenBottom/tools/bazel.rc b/example-wuiPreferenceScreenBottom/.bazelrc
similarity index 100%
rename from example-wuiPreferenceScreenBottom/tools/bazel.rc
rename to example-wuiPreferenceScreenBottom/.bazelrc
diff --git a/example-wuiPreferenceScreenBottom/WORKSPACE b/example-wuiPreferenceScreenBottom/WORKSPACE
index 4a44088..bbdb4df 100644
--- a/example-wuiPreferenceScreenBottom/WORKSPACE
+++ b/example-wuiPreferenceScreenBottom/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiPreferenceScreenBottom/bazlets.bzl b/example-wuiPreferenceScreenBottom/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiPreferenceScreenBottom/bazlets.bzl
+++ b/example-wuiPreferenceScreenBottom/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiProfileExtensionBottom/tools/bazel.rc b/example-wuiProfileExtensionBottom/.bazelrc
similarity index 100%
rename from example-wuiProfileExtensionBottom/tools/bazel.rc
rename to example-wuiProfileExtensionBottom/.bazelrc
diff --git a/example-wuiProfileExtensionBottom/WORKSPACE b/example-wuiProfileExtensionBottom/WORKSPACE
index c6a6606..4b41fca 100644
--- a/example-wuiProfileExtensionBottom/WORKSPACE
+++ b/example-wuiProfileExtensionBottom/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiProfileExtensionBottom/bazlets.bzl b/example-wuiProfileExtensionBottom/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiProfileExtensionBottom/bazlets.bzl
+++ b/example-wuiProfileExtensionBottom/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/example-wuiSettingsScreen/tools/bazel.rc b/example-wuiSettingsScreen/.bazelrc
similarity index 100%
rename from example-wuiSettingsScreen/tools/bazel.rc
rename to example-wuiSettingsScreen/.bazelrc
diff --git a/example-wuiSettingsScreen/WORKSPACE b/example-wuiSettingsScreen/WORKSPACE
index 816f18f..fce842b 100644
--- a/example-wuiSettingsScreen/WORKSPACE
+++ b/example-wuiSettingsScreen/WORKSPACE
@@ -3,21 +3,21 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "1affa0acc6e730f8959c28a2098b562d11a90f91",
+    commit = "1650318289e9981c01e9122c62679b814c7d7a48",
     #    local_path = "/home/<user>/projects/bazlets",
 )
 
 # Release Plugin API
-#load(
-#    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
-#    "gerrit_api",
-#)
+load(
+    "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+    "gerrit_api",
+)
 
 # Snapshot Plugin API
-load(
-    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-    "gerrit_api_maven_local",
-)
+#load(
+#    "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+#    "gerrit_api_maven_local",
+#)
 
 load(
     "@com_googlesource_gerrit_bazlets//:gerrit_gwt.bzl",
@@ -25,9 +25,9 @@
 )
 
 # Load release Plugin API
-#gerrit_api()
+gerrit_api()
 
 # Load snapshot Plugin API
-gerrit_api_maven_local()
+#gerrit_api_maven_local()
 
 gerrit_gwt()
diff --git a/example-wuiSettingsScreen/bazlets.bzl b/example-wuiSettingsScreen/bazlets.bzl
index e14e488..6c4fffc 100644
--- a/example-wuiSettingsScreen/bazlets.bzl
+++ b/example-wuiSettingsScreen/bazlets.bzl
@@ -1,3 +1,5 @@
+load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
+
 NAME = "com_googlesource_gerrit_bazlets"
 
 def load_bazlets(
@@ -5,7 +7,7 @@
     local_path = None
   ):
   if not local_path:
-      native.git_repository(
+      git_repository(
           name = NAME,
           remote = "https://gerrit.googlesource.com/bazlets",
           commit = commit,
diff --git a/tools/bazel.rc b/tools/bazel.rc
deleted file mode 100644
index 4ed16cf..0000000
--- a/tools/bazel.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-build --workspace_status_command=./tools/workspace-status.sh
-test --build_tests_only
