diff --git a/src/test/java/org/apache/commons/math3/geometry/partitioning/RegionDumper.java b/src/test/java/org/apache/commons/math3/geometry/partitioning/RegionDumper.java
index 33be9d7..fae3fd8 100644
--- a/src/test/java/org/apache/commons/math3/geometry/partitioning/RegionDumper.java
+++ b/src/test/java/org/apache/commons/math3/geometry/partitioning/RegionDumper.java
@@ -204,13 +204,11 @@
         protected abstract void formatHyperplane(Hyperplane<S> hyperplane);
 
         /** {@inheritDoc} */
-        @Override
         public Order visitOrder(final BSPTree<S> node) {
             return Order.SUB_MINUS_PLUS;
         }
 
         /** {@inheritDoc} */
-        @Override
         public void visitInternalNode(final BSPTree<S> node) {
             formatter.format("%s %s internal ", prefix, type(node));
             formatHyperplane(node.getCut().getHyperplane());
@@ -219,7 +217,6 @@
         }
 
         /** {@inheritDoc} */
-        @Override
         public void visitLeafNode(final BSPTree<S> node) {
             formatter.format("%s %s leaf %s%n",
                              prefix, type(node), node.getAttribute());
