Added check for minimum repetition and formatted codes.

Change-Id: Id19e4d844ddb1cf46d69d68bacb5d07a656de5f3
diff --git a/src/main/java/de/ids_mannheim/korap/query/DistanceConstraint.java b/src/main/java/de/ids_mannheim/korap/query/DistanceConstraint.java
index 7a87bdd..279131f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/DistanceConstraint.java
+++ b/src/main/java/de/ids_mannheim/korap/query/DistanceConstraint.java
@@ -53,7 +53,7 @@
  * </ol>
  * 
  * @author margaretha
- * */
+ */
 
 public class DistanceConstraint {
     private int minDistance, maxDistance;
diff --git a/src/main/java/de/ids_mannheim/korap/query/FrameConstraint.java b/src/main/java/de/ids_mannheim/korap/query/FrameConstraint.java
index e0c3dd6..ba90a77 100644
--- a/src/main/java/de/ids_mannheim/korap/query/FrameConstraint.java
+++ b/src/main/java/de/ids_mannheim/korap/query/FrameConstraint.java
@@ -60,9 +60,8 @@
     public static final int PRECEDES = 1, PRECEDES_DIRECTLY = 1 << 1,
             OVERLAPS_LEFT = 1 << 2, ALIGNS_LEFT = 1 << 3, STARTS_WITH = 1 << 4,
             MATCHES = 1 << 5, IS_WITHIN = 1 << 6, IS_AROUND = 1 << 7,
-            ENDS_WITH = 1 << 8, ALIGNS_RIGHT = 1 << 9,
-            OVERLAPS_RIGHT = 1 << 10, SUCCEEDS_DIRECTLY = 1 << 11,
-            SUCCEEDS = 1 << 12, ALL = 1024 * 8 - 1;
+            ENDS_WITH = 1 << 8, ALIGNS_RIGHT = 1 << 9, OVERLAPS_RIGHT = 1 << 10,
+            SUCCEEDS_DIRECTLY = 1 << 11, SUCCEEDS = 1 << 12, ALL = 1024 * 8 - 1;
 
 
     private static final Map<String, Integer> FRAME;
@@ -113,7 +112,8 @@
          * a.end < b.end && a.start == b.start
          */
         FRAME_t.put("alignsLeft", ALIGNS_LEFT);
-        NEXT_B_t.add(PRECEDES | PRECEDES_DIRECTLY | OVERLAPS_LEFT | ALIGNS_LEFT);
+        NEXT_B_t.add(
+                PRECEDES | PRECEDES_DIRECTLY | OVERLAPS_LEFT | ALIGNS_LEFT);
 
         /*
          * A starts with B
@@ -338,6 +338,7 @@
     // Todo: create nextB arraymatrix by adding all combinations of constellation precomputed
     // NEXTB[SUCCEEDS_DIRECTLY | SUCCEEDS] = NEXTB[SUCEEDS_DIRECTLY] | NEXTB[SUCCEEDS];
 
+
     // NextB
     // Integer.numberOfTrailingZeros();
     private static int _next_b (int constellation) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/QueryBuilder.java b/src/main/java/de/ids_mannheim/korap/query/QueryBuilder.java
index 96e4eb5..f065737 100644
--- a/src/main/java/de/ids_mannheim/korap/query/QueryBuilder.java
+++ b/src/main/java/de/ids_mannheim/korap/query/QueryBuilder.java
@@ -132,7 +132,8 @@
      */
     public SpanRegexQueryWrapper re (String re, int flags,
             boolean caseinsensitive) {
-        return new SpanRegexQueryWrapper(this.field, re, flags, caseinsensitive);
+        return new SpanRegexQueryWrapper(this.field, re, flags,
+                caseinsensitive);
     };
 
 
@@ -257,7 +258,7 @@
         return ssq;
     };
 
-	
+
     /**
      * Create an empty query segment.
      * 
@@ -312,7 +313,8 @@
      *            [] An array of segment defining terms.
      */
     public SpanSequenceQueryWrapper seq (SpanQueryWrapper ... terms) {
-        SpanSequenceQueryWrapper sssq = new SpanSequenceQueryWrapper(this.field);
+        SpanSequenceQueryWrapper sssq = new SpanSequenceQueryWrapper(
+                this.field);
         for (SpanQueryWrapper t : terms)
             sssq.append(t);
         return sssq;
@@ -431,7 +433,8 @@
     };
 
 
-    public SpanFocusQueryWrapper focus (short number, SpanQueryWrapper element) {
+    public SpanFocusQueryWrapper focus (short number,
+            SpanQueryWrapper element) {
         return new SpanFocusQueryWrapper(element, number);
     };
 
@@ -448,8 +451,8 @@
     };
 
 
-    public SpanRepetitionQueryWrapper repeat (SpanQueryWrapper element,
-            int min, int max) {
+    public SpanRepetitionQueryWrapper repeat (SpanQueryWrapper element, int min,
+            int max) {
         return new SpanRepetitionQueryWrapper(element, min, max);
     };
 };
diff --git a/src/main/java/de/ids_mannheim/korap/query/SimpleSpanQuery.java b/src/main/java/de/ids_mannheim/korap/query/SimpleSpanQuery.java
index 7e428a4..919022e 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SimpleSpanQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SimpleSpanQuery.java
@@ -67,7 +67,7 @@
  * @see SpanQuery
  * 
  * @author margaretha
- * */
+ */
 public abstract class SimpleSpanQuery extends SpanQuery implements Cloneable {
 
     protected SpanQuery firstClause = null, secondClause = null;
@@ -91,7 +91,7 @@
      *            <code>true</code> if payloads are to be collected,
      *            otherwise
      *            <code>false</code>.
-     * */
+     */
     public SimpleSpanQuery (SpanQuery firstClause, boolean collectPayloads) {
         if (firstClause == null) {
             throw new IllegalArgumentException(
@@ -117,7 +117,7 @@
      *            <code>true</code> if payloads are to be collected,
      *            otherwise
      *            <code>false</code>.
-     * */
+     */
     public SimpleSpanQuery (SpanQuery firstClause, SpanQuery secondClause,
                             boolean collectPayloads) {
         this(firstClause, collectPayloads);
@@ -144,7 +144,7 @@
      *            <code>true</code> if payloads are to be collected,
      *            otherwise
      *            <code>false</code>.
-     * */
+     */
     public SimpleSpanQuery (SpanQuery firstClause,
                             List<SpanQuery> secondClauses,
                             boolean collectPayloads) {
@@ -209,7 +209,7 @@
 
     /**
      * {@inheritDoc}
-     * */
+     */
     @Override
     public String getField () {
         return field;
@@ -339,8 +339,8 @@
             throws IOException {
 
         for (int i = 0; i < spanQueries.size(); i++) {
-            final SpanQuery query = (SpanQuery) spanQueries.get(i).rewrite(
-                    reader);
+            final SpanQuery query = (SpanQuery) spanQueries.get(i)
+                    .rewrite(reader);
             if (!query.equals(spanQueries.get(i))) {
                 if (clone == null)
                     clone = clone();
@@ -381,7 +381,7 @@
 
     /**
      * {@inheritDoc}
-     * */
+     */
     // Used in rewriting query
     @Override
     public boolean equals (Object o) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanAttributeQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanAttributeQuery.java
index 265d2de..0ae6922 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanAttributeQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanAttributeQuery.java
@@ -42,7 +42,7 @@
  * </pre>
  * 
  * @author margaretha
- * */
+ */
 public class SpanAttributeQuery extends SimpleSpanQuery {
 
     boolean negation;
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanDistanceQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanDistanceQuery.java
index da53af7..88c4de1 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanDistanceQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanDistanceQuery.java
@@ -106,14 +106,14 @@
  * 
  * 
  * @author margaretha
- * */
+ */
 public class SpanDistanceQuery extends SimpleSpanQuery {
 
     private boolean exclusion;
     private boolean isOrdered;
     private int minDistance, maxDistance;
     private SpanElementQuery elementQuery; // element distance unit (sentence or
-                                           // paragraph)
+                                          // paragraph)
     private String distanceUnit;
     private String spanName;
     private DistanceConstraint constraint;
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanExpansionQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanExpansionQuery.java
index d7130e1..2d6c29f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanExpansionQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanExpansionQuery.java
@@ -97,7 +97,7 @@
  * together with a class number.
  * 
  * @author margaretha
- * */
+ */
 public class SpanExpansionQuery extends SimpleSpanQuery {
 
     private int min, max; // min, max expansion position
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanMultipleDistanceQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanMultipleDistanceQuery.java
index 51ba29b..ce65df6 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanMultipleDistanceQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanMultipleDistanceQuery.java
@@ -73,7 +73,7 @@
  * </ul>
  * 
  * @author margaretha
- * */
+ */
 public class SpanMultipleDistanceQuery extends SimpleSpanQuery {
 
     private List<DistanceConstraint> constraints;
@@ -106,7 +106,8 @@
     public SpanMultipleDistanceQuery (SpanQuery firstClause,
                                       SpanQuery secondClause,
                                       List<DistanceConstraint> constraints,
-                                      boolean isOrdered, boolean collectPayloads) {
+                                      boolean isOrdered,
+                                      boolean collectPayloads) {
         super(firstClause, secondClause, collectPayloads);
         this.constraints = constraints;
         this.isOrdered = isOrdered;
@@ -165,7 +166,7 @@
      * meeting all the constraints.
      * 
      * @return only the span matches meeting all the constraints.
-     * */
+     */
     @Override
     public Spans getSpans (LeafReaderContext context, Bits acceptDocs,
             Map<Term, TermContext> termContexts) throws IOException {
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanRelationMatchQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanRelationMatchQuery.java
index 151abf4..311a5fc 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanRelationMatchQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanRelationMatchQuery.java
@@ -23,44 +23,47 @@
                                    SpanQuery operand, boolean collectPayloads) {
 
         checkVariables(relation, operand);
-        SpanFocusQuery sq = new SpanFocusQuery(new SpanSegmentQuery(
-                relationQuery, operandQuery, true),
+        SpanFocusQuery sq = new SpanFocusQuery(
+                new SpanSegmentQuery(relationQuery, operandQuery, true),
                 relation.getTempClassNumbers());
         sq.setMatchTemporaryClass(true);
         sq.setRemoveTemporaryClasses(true);
         sq.setSorted(false); // which operand to focus might be
-                             // different from that to match
+                            // different from that to match
 
         this.setFirstClause(sq);
         this.collectPayloads = collectPayloads;
     }
 
 
-    public SpanRelationMatchQuery (SpanRelationQuery relation,
-                                   SpanQuery source, SpanQuery target,
-                                   boolean collectPayloads) {
+    public SpanRelationMatchQuery (SpanRelationQuery relation, SpanQuery source,
+                                   SpanQuery target, boolean collectPayloads) {
 
         checkVariables(relation, source, target);
         SpanFocusQuery sq = null;
         SpanFocusQuery sq2 = null;
         // match source and then target
         if (relationQuery.getDirection() == 0) {
-            sq = new SpanFocusQuery(new SpanSegmentQuery(relationQuery,
-                    operandQuery, true), relation.getTempTargetNum());
+            sq = new SpanFocusQuery(
+                    new SpanSegmentQuery(relationQuery, operandQuery, true),
+                    relation.getTempTargetNum());
             sq.setSorted(false);
             sq.setMatchTemporaryClass(true);
 
-            sq2 = new SpanFocusQuery(new SpanSegmentQuery(operand2Query, sq,
-                    true), relation.getTempClassNumbers());
+            sq2 = new SpanFocusQuery(
+                    new SpanSegmentQuery(operand2Query, sq, true),
+                    relation.getTempClassNumbers());
         }
         // match target and then source
         else {
-            sq = new SpanFocusQuery(new SpanSegmentQuery(relationQuery,
-                    operandQuery, true), relation.getTempSourceNum());
+            sq = new SpanFocusQuery(
+                    new SpanSegmentQuery(relationQuery, operandQuery, true),
+                    relation.getTempSourceNum());
             sq.setMatchTemporaryClass(true);
 
-            sq2 = new SpanFocusQuery(new SpanSegmentQuery(sq, operand2Query,
-                    true), relation.getTempClassNumbers());
+            sq2 = new SpanFocusQuery(
+                    new SpanSegmentQuery(sq, operand2Query, true),
+                    relation.getTempClassNumbers());
         }
 
         sq2.setMatchTemporaryClass(true);
@@ -128,8 +131,8 @@
     public Spans getSpans (LeafReaderContext context, Bits acceptDocs,
             Map<Term, TermContext> termContexts) throws IOException {
 
-        return new FocusSpans((SpanFocusQuery) firstClause, context,
-                acceptDocs, termContexts);
+        return new FocusSpans((SpanFocusQuery) firstClause, context, acceptDocs,
+                termContexts);
     }
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanRelationQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanRelationQuery.java
index a2f565c..094e457 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanRelationQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanRelationQuery.java
@@ -54,7 +54,7 @@
  * </ol>
  * 
  * @author margaretha
- * */
+ */
 public class SpanRelationQuery extends SimpleSpanQuery {
 
     private int direction = 0; // >
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanRepetitionQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanRepetitionQuery.java
index 92c6c94..c169e4b 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanRepetitionQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanRepetitionQuery.java
@@ -47,7 +47,7 @@
  * </pre>
  * 
  * @author margaretha
- * */
+ */
 public class SpanRepetitionQuery extends SimpleSpanQuery {
 
     private int min, max;
@@ -72,6 +72,10 @@
     public SpanRepetitionQuery (SpanQuery sq, int min, int max,
                                 boolean collectPayloads) {
         super(sq, collectPayloads);
+        if (min < 1) {
+            throw new IllegalArgumentException(
+                    "Minimum repetition must not lower than 1.");
+        }
         this.min = min;
         this.max = max;
     }
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanSegmentQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanSegmentQuery.java
index 508c7ca..9e36c40 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanSegmentQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanSegmentQuery.java
@@ -26,7 +26,7 @@
  * </pre>
  * 
  * @author margaretha
- * */
+ */
 public class SpanSegmentQuery extends SimpleSpanQuery {
 
     private boolean isRelation;
@@ -72,7 +72,8 @@
     @Override
     public Spans getSpans (LeafReaderContext context, Bits acceptDocs,
             Map<Term, TermContext> termContexts) throws IOException {
-        return (Spans) new SegmentSpans(this, context, acceptDocs, termContexts);
+        return (Spans) new SegmentSpans(this, context, acceptDocs,
+                termContexts);
     }
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanSubspanQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanSubspanQuery.java
index 9ec9632..5d31352 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanSubspanQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanSubspanQuery.java
@@ -36,7 +36,7 @@
  * two tokens of all sentences.
  * 
  * @author margaretha
- * */
+ */
 public class SpanSubspanQuery extends SimpleSpanQuery {
 
     private int startOffset, length;
@@ -60,8 +60,8 @@
      *            otherwise
      *            <code>false</code>.
      */
-    public SpanSubspanQuery (SpanQuery firstClause, int startOffset,
-                             int length, boolean collectPayloads) {
+    public SpanSubspanQuery (SpanQuery firstClause, int startOffset, int length,
+                             boolean collectPayloads) {
         super(firstClause, collectPayloads);
         this.startOffset = startOffset;
         this.length = length;
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanTermWithIdQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanTermWithIdQuery.java
index 324d560..51ae8d1 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanTermWithIdQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanTermWithIdQuery.java
@@ -30,7 +30,7 @@
  * the Term "tt:p/NN".
  * 
  * @author margaretha
- * */
+ */
 public class SpanTermWithIdQuery extends SimpleSpanQuery {
 
     /**
diff --git a/src/main/java/de/ids_mannheim/korap/query/SpanWithAttributeQuery.java b/src/main/java/de/ids_mannheim/korap/query/SpanWithAttributeQuery.java
index fae7aa0..915ac3a 100644
--- a/src/main/java/de/ids_mannheim/korap/query/SpanWithAttributeQuery.java
+++ b/src/main/java/de/ids_mannheim/korap/query/SpanWithAttributeQuery.java
@@ -199,8 +199,8 @@
                     termContexts);
         }
 
-        SimpleSpans spans = (SimpleSpans) this.getFirstClause().getSpans(
-                context, acceptDocs, termContexts);
+        SimpleSpans spans = (SimpleSpans) this.getFirstClause()
+                .getSpans(context, acceptDocs, termContexts);
         return new SpansWithAttribute(this, spans, context, acceptDocs,
                 termContexts);
     }
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/AttributeSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/AttributeSpans.java
index 4958bea..ab0576f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/AttributeSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/AttributeSpans.java
@@ -43,7 +43,7 @@
  * "any element having a specific attribute".
  * 
  * @author margaretha
- * */
+ */
 public class AttributeSpans extends SimpleSpans {
 
     private List<CandidateAttributeSpan> candidateList;
@@ -243,9 +243,9 @@
      * The
      * attributes with smaller spanIds come first on the list.
      * 
-     * */
-    class CandidateAttributeSpan extends CandidateSpan implements
-            Comparable<CandidateSpan> {
+     */
+    class CandidateAttributeSpan extends CandidateSpan
+            implements Comparable<CandidateSpan> {
 
         /**
          * Construct a CandidateAttributeSpan based on the given span,
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/CandidateSpan.java b/src/main/java/de/ids_mannheim/korap/query/spans/CandidateSpan.java
index b132dc7..83e8ba4 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/CandidateSpan.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/CandidateSpan.java
@@ -15,14 +15,14 @@
  * matching.
  * 
  * @author margaretha
- * */
+ */
 public class CandidateSpan implements Comparable<CandidateSpan>, Cloneable {
     protected int doc, start, end;
     private long cost;
     private Collection<byte[]> payloads;
     private int position;
     private CandidateSpan childSpan; // used for example for multiple distance
-                                     // with unordered constraint
+                                    // with unordered constraint
     protected short spanId;
     protected boolean hasSpanId;
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ClassFilteredSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ClassFilteredSpans.java
index 71e8e42..406247f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ClassFilteredSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ClassFilteredSpans.java
@@ -56,8 +56,8 @@
     private boolean isClassOperationValid () throws IOException {
         setBitsets();
 
-        int cardinality = Math
-                .max(bitset1.cardinality(), bitset2.cardinality());
+        int cardinality = Math.max(bitset1.cardinality(),
+                bitset2.cardinality());
 
         bitset1.and(bitset2);
         // System.out.println("cardinality:" + cardinality);
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ClassSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ClassSpans.java
index 47a6998..42e59a1 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ClassSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ClassSpans.java
@@ -56,7 +56,8 @@
      */
     public ClassSpans (SpanQuery operand, LeafReaderContext context,
                        Bits acceptDocs, Map<Term, TermContext> termContexts,
-                       byte number) throws IOException {
+                       byte number)
+            throws IOException {
         spans = operand.getSpans(context, acceptDocs, termContexts);
 
         // The number of the class
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/DistanceExclusionSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/DistanceExclusionSpans.java
index f6cd732..b456035 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/DistanceExclusionSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/DistanceExclusionSpans.java
@@ -17,7 +17,7 @@
  * distance.
  * 
  * @author margaretha
- * */
+ */
 public class DistanceExclusionSpans extends DistanceSpans {
 
     private int minDistance, maxDistance;
@@ -105,7 +105,7 @@
      * @return distance the difference between the positions of a
      *         firstspan and
      *         a secondspan.
-     * */
+     */
     private int calculateActualDistance () {
         // right secondSpan
         if (firstSpans.end() <= secondSpans.start())
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/DistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/DistanceSpans.java
index 7bc9136..286f91c 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/DistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/DistanceSpans.java
@@ -29,7 +29,7 @@
  * @see MultipleDistanceSpans
  * 
  * @author margaretha
- * */
+ */
 public abstract class DistanceSpans extends SimpleSpans {
 
     protected CandidateSpan matchFirstSpan, matchSecondSpan;
@@ -88,7 +88,7 @@
      * 
      * @return <code>true</code> if a span match is available,
      *         <code>false</code> otherwise.
-     * */
+     */
     protected abstract boolean advance () throws IOException;
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceExclusionSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceExclusionSpans.java
index 78c0e76..1c5ebdc 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceExclusionSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceExclusionSpans.java
@@ -30,7 +30,7 @@
  * Note: The element distance unit does not overlap to each other.
  * 
  * @author margaretha
- * */
+ */
 public class ElementDistanceExclusionSpans extends DistanceSpans {
 
     private Spans elements;
@@ -154,8 +154,8 @@
 
         if (candidateList.isEmpty()) {
             if (isFirstSpanInElement()) {
-                setMatchProperties(new CandidateSpan(firstSpans,
-                        elementPosition));
+                setMatchProperties(
+                        new CandidateSpan(firstSpans, elementPosition));
                 hasMoreSpans = firstSpans.next();
                 return true;
             }
@@ -273,16 +273,16 @@
             if (hasMoreSpans && firstSpans.start() < secondSpans.start()
                     && firstSpans.doc() == currentDocNum) {
                 if (advanceElementTo(firstSpans)) {
-                    targetList.add(new CandidateSpan(firstSpans,
-                            elementPosition));
+                    targetList.add(
+                            new CandidateSpan(firstSpans, elementPosition));
                 }
                 hasMoreSpans = firstSpans.next();
                 continue;
             }
             // collects only second spans occurring inside an element
             if (advanceElementTo(secondSpans)) {
-                candidateList.add(new CandidateSpan(secondSpans,
-                        elementPosition));
+                candidateList
+                        .add(new CandidateSpan(secondSpans, elementPosition));
             }
             hasMoreSecondSpans = secondSpans.next();
         }
@@ -300,8 +300,8 @@
         while (hasMoreSecondSpans && secondSpans.doc() == firstSpans.doc()
                 && secondSpans.start() < firstSpans.end()) {
             if (advanceElementTo(secondSpans)) {
-                candidateList.add(new CandidateSpan(secondSpans,
-                        elementPosition));
+                candidateList
+                        .add(new CandidateSpan(secondSpans, elementPosition));
                 filterCandidateList(elementPosition);
             }
             hasMoreSecondSpans = secondSpans.next();
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceSpans.java
index 5f3ded5..dd53ac5 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ElementDistanceSpans.java
@@ -24,7 +24,7 @@
  * Note: elements cannot overlap with each other.
  * 
  * @author margaretha
- * */
+ */
 public class ElementDistanceSpans extends OrderedDistanceSpans {
 
     private Spans elements;
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedExclusionSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedExclusionSpans.java
index 4d64921..d747149 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedExclusionSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedExclusionSpans.java
@@ -37,7 +37,7 @@
  * grouping them altogether.
  * 
  * @author margaretha
- * */
+ */
 public class ExpandedExclusionSpans extends SimpleSpans {
 
     private int min, max;
@@ -68,10 +68,9 @@
         super(spanExpansionQuery, context, acceptDocs, termContexts);
 
         if (spanExpansionQuery.getSecondClause() == null) {
-            throw new IllegalArgumentException(
-                    "The SpanExpansionQuery "
-                            + "is not valid. The spanquery to exclude (notClause) cannot "
-                            + "be null.");
+            throw new IllegalArgumentException("The SpanExpansionQuery "
+                    + "is not valid. The spanquery to exclude (notClause) cannot "
+                    + "be null.");
         }
 
         /*
@@ -265,8 +264,8 @@
                     end = firstSpans.end();
                     //System.out.println(start+","+end);
                     cs = new CandidateSpan(start, end, firstSpans.doc(),
-                            firstSpans.cost(), createPayloads(start,
-                                    firstSpans.start()));
+                            firstSpans.cost(),
+                            createPayloads(start, firstSpans.start()));
                     candidateSpans.add(cs);
                 }
                 counter--;
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedSpans.java
index b31abb6..129ef82 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/ExpandedSpans.java
@@ -27,7 +27,7 @@
  * grouping them altogether.
  * 
  * @author margaretha
- * */
+ */
 public class ExpandedSpans extends SimpleSpans {
 
     private int min, max;
@@ -117,8 +117,8 @@
             while (counter >= min) {
                 start = Math.max(0, firstSpans.start() - counter);
                 cs = new CandidateSpan(start, firstSpans.end(),
-                        firstSpans.doc(), firstSpans.cost(), createPayloads(
-                                start, firstSpans.start()));
+                        firstSpans.doc(), firstSpans.cost(),
+                        createPayloads(start, firstSpans.start()));
 
                 candidateSpans.add(cs);
                 counter--;
@@ -130,8 +130,8 @@
                 // TODO: How do I know if the end is already too far (over the end of the doc)? 
                 end = firstSpans.end() + counter;
                 cs = new CandidateSpan(firstSpans.start(), end,
-                        firstSpans.doc(), firstSpans.cost(), createPayloads(
-                                firstSpans.end(), end));
+                        firstSpans.doc(), firstSpans.cost(),
+                        createPayloads(firstSpans.end(), end));
                 candidateSpans.add(cs);
                 counter++;
             }
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/FocusSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/FocusSpans.java
index e566637..84e5da9 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/FocusSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/FocusSpans.java
@@ -108,9 +108,8 @@
         while (hasMoreSpans || candidates.size() > 0) {
             if (isSorted) {
 
-                if (firstSpans.isPayloadAvailable()
-                        && updateSpanPositions(cs = new CandidateSpan(
-                                firstSpans))) {
+                if (firstSpans.isPayloadAvailable() && updateSpanPositions(
+                        cs = new CandidateSpan(firstSpans))) {
                     setMatch(cs);
                     hasMoreSpans = firstSpans.next();
                     return true;
@@ -137,8 +136,8 @@
         while (hasMoreSpans && candidates.size() < windowSize
                 && firstSpans.doc() == currentDoc) {
 
-            if (firstSpans.isPayloadAvailable()
-                    && updateSpanPositions(cs = new CandidateSpan(firstSpans))) {
+            if (firstSpans.isPayloadAvailable() && updateSpanPositions(
+                    cs = new CandidateSpan(firstSpans))) {
                 if (cs.getDoc() == prevDoc && cs.getStart() < prevStart) {
                     log.warn("Span (" + cs.getStart() + ", " + cs.getEnd()
                             + ") is out of order and skipped.");
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/MultipleDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/MultipleDistanceSpans.java
index f1b7973..ce117ea 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/MultipleDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/MultipleDistanceSpans.java
@@ -31,7 +31,7 @@
  * </ol>
  * 
  * @author margaretha
- * */
+ */
 public class MultipleDistanceSpans extends DistanceSpans {
 
     private DistanceSpans x, y;
@@ -85,7 +85,7 @@
 
     /**
      * Finds the next match.
-     * */
+     */
     protected boolean advance () throws IOException {
         while (hasMoreSpans && ensureSameDoc(x, y)) {
             if (findMatch()) {
@@ -159,7 +159,8 @@
             }
         }
         else if (xf.getStart() == yf.getStart() && xf.getEnd() == yf.getEnd()
-                && xs.getStart() == ys.getStart() && xs.getEnd() == ys.getEnd()) {
+                && xs.getStart() == ys.getStart()
+                && xs.getEnd() == ys.getEnd()) {
             setMatchProperties(x, false);
             return true;
         }
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
index 3db12a7..75dd930 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
@@ -77,7 +77,8 @@
      */
     private boolean advance () throws IOException {
 
-        while (hasMoreSpans || !matchList.isEmpty() || !candidateList.isEmpty()) {
+        while (hasMoreSpans || !matchList.isEmpty()
+                || !candidateList.isEmpty()) {
             if (!matchList.isEmpty()) {
                 matchDocNumber = firstSpans.doc();
                 matchStartPosition = firstSpans.start();
@@ -197,8 +198,8 @@
                 payloads.addAll(cs.getPayloads());
         }
 
-        matchList.add(new CandidateSpan(start, cs.getEnd(),
-                candidateListDocNum, cost, payloads));
+        matchList.add(new CandidateSpan(start, cs.getEnd(), candidateListDocNum,
+                cost, payloads));
     }
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/NonPartialOverlappingSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/NonPartialOverlappingSpans.java
index 07d1526..4464d90 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/NonPartialOverlappingSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/NonPartialOverlappingSpans.java
@@ -19,7 +19,7 @@
  * their positions and do not have a partial overlap.
  * 
  * @author margaretha
- * */
+ */
 public abstract class NonPartialOverlappingSpans extends SimpleSpans {
 
     private Logger log = LoggerFactory
@@ -97,7 +97,7 @@
      * @return 0 iff match is found, -1 to advance the firstspan, 1 to
      *         advance
      *         the secondspan
-     * */
+     */
     protected abstract int findMatch ();
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/OrderedDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/OrderedDistanceSpans.java
index 64507ab..52dc507 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/OrderedDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/OrderedDistanceSpans.java
@@ -16,7 +16,7 @@
  * Base class for calculating a distance between two ordered spans.
  * 
  * @author margaretha
- * */
+ */
 public abstract class OrderedDistanceSpans extends DistanceSpans {
 
     protected boolean hasMoreFirstSpans;
@@ -57,7 +57,7 @@
 
     /**
      * Finds a span match in the candidate list.
-     * */
+     */
     @Override
     protected boolean advance () throws IOException {
         while (hasMoreSpans && candidateListIndex < candidateList.size()) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/RelationSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/RelationSpans.java
index 59d678e..ca467fc 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/RelationSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/RelationSpans.java
@@ -48,7 +48,7 @@
  * relation target is always 2 regardless of the relation direction.
  * 
  * @author margaretha
- * */
+ */
 public class RelationSpans extends RelationBaseSpans {
 
     private int currentDoc, currentPosition;
@@ -61,8 +61,8 @@
     private byte sourceClass, targetClass;
 
     public static enum PayloadTypeIdentifier {
-        TERM_TO_TERM(32), TERM_TO_ELEMENT(33), ELEMENT_TO_TERM(34), ELEMENT_TO_ELEMENT(
-                35);
+        TERM_TO_TERM(32), TERM_TO_ELEMENT(33), ELEMENT_TO_TERM(
+                34), ELEMENT_TO_ELEMENT(35);
 
         private byte value;
 
@@ -260,8 +260,8 @@
         if (direction == 0) {
             payload.add(createClassPayload(cs.getLeftStart(), cs.getLeftEnd(),
                     tempSourceNum, false));
-            payload.add(createClassPayload(cs.getRightStart(),
-                    cs.getRightEnd(), tempTargetNum, false));
+            payload.add(createClassPayload(cs.getRightStart(), cs.getRightEnd(),
+                    tempTargetNum, false));
 
             if (sourceClass > 0) {
                 payload.add(createClassPayload(cs.getLeftStart(),
@@ -274,8 +274,8 @@
 
         }
         else {
-            payload.add(createClassPayload(cs.getRightStart(),
-                    cs.getRightEnd(), tempSourceNum, false));
+            payload.add(createClassPayload(cs.getRightStart(), cs.getRightEnd(),
+                    tempSourceNum, false));
             payload.add(createClassPayload(cs.getLeftStart(), cs.getLeftEnd(),
                     tempTargetNum, false));
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/RepetitionSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/RepetitionSpans.java
index 843ccd8..cedd25a 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/RepetitionSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/RepetitionSpans.java
@@ -24,7 +24,7 @@
  * repetition depends on the min and max parameters.
  * 
  * @author margaretha
- * */
+ */
 public class RepetitionSpans extends SimpleSpans {
 
     // Logger
@@ -179,8 +179,8 @@
                 if (i == 1) {
                     try {
                         matchSpan = startSpan.clone();
-                        matchSpan.setPayloads(computeMatchPayload(
-                                adjacentSpans, 0, endIndex - 1));
+                        matchSpan.setPayloads(computeMatchPayload(adjacentSpans,
+                                0, endIndex - 1));
                         matchList.add(matchSpan);
                     }
                     catch (CloneNotSupportedException e) {
@@ -250,8 +250,8 @@
      *            the end index
      * @return
      */
-    private long computeMatchCost (List<CandidateSpan> adjacentSpans,
-            int start, int end) {
+    private long computeMatchCost (List<CandidateSpan> adjacentSpans, int start,
+            int end) {
         long matchCost = 0;
         for (int i = start; i <= end; i++) {
             matchCost += adjacentSpans.get(i).getCost();
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/SegmentSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/SegmentSpans.java
index d6b5d12..96b699f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/SegmentSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/SegmentSpans.java
@@ -17,7 +17,7 @@
  * have exactly the same start and end positions.
  * 
  * @author margaretha
- * */
+ */
 public class SegmentSpans extends SimpleSpans {
 
     private boolean isRelation;
@@ -90,7 +90,7 @@
      * firstspan and
      * secondspan are identical.
      * 
-     * */
+     */
     protected int findMatch () {
         if (firstSpans.start() == secondSpans.start()
                 && firstSpans.end() == secondSpans.end()) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/SimpleSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/SimpleSpans.java
index 6918e38..7917eb5 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/SimpleSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/SimpleSpans.java
@@ -20,7 +20,7 @@
  * and basic methods.
  * 
  * @author margaretha
- * */
+ */
 public abstract class SimpleSpans extends Spans {
     private SimpleSpanQuery query;
     protected boolean isStartEnumeration;
@@ -51,7 +51,8 @@
 
     public SimpleSpans (SimpleSpanQuery simpleSpanQuery,
                         LeafReaderContext context, Bits acceptDocs,
-                        Map<Term, TermContext> termContexts) throws IOException {
+                        Map<Term, TermContext> termContexts)
+            throws IOException {
         this();
         query = simpleSpanQuery;
         collectPayloads = query.isCollectPayloads();
@@ -76,7 +77,7 @@
      * document.
      * 
      * @return true iff such a document exists.
-     * */
+     */
     protected boolean ensureSameDoc (Spans x, Spans y) throws IOException {
         while (x.doc() != y.doc()) {
             if (x.doc() < y.doc()) {
@@ -100,7 +101,7 @@
      * Find the same doc shared by element, firstspan and secondspan.
      * 
      * @return true iff such a doc is found.
-     * */
+     */
     protected boolean findSameDoc (Spans x, Spans y, Spans e)
             throws IOException {
 
@@ -148,12 +149,10 @@
 
     @Override
     public String toString () {
-        return getClass().getName()
-                + "("
-                + query.toString()
-                + ")@"
-                + (isStartEnumeration ? "START" : (hasMoreSpans ? (doc() + ":"
-                        + start() + "-" + end()) : "END"));
+        return getClass().getName() + "(" + query.toString() + ")@"
+                + (isStartEnumeration ? "START"
+                        : (hasMoreSpans ? (doc() + ":" + start() + "-" + end())
+                                : "END"));
     }
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/SpansWithAttribute.java b/src/main/java/de/ids_mannheim/korap/query/spans/SpansWithAttribute.java
index 30e57ef..bc80e69 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/SpansWithAttribute.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/SpansWithAttribute.java
@@ -31,7 +31,7 @@
  * constraints have to be formulated in Conjunctive Normal Form (CNF).
  * 
  * @author margaretha
- * */
+ */
 public class SpansWithAttribute extends SimpleSpans {
 
     private SimpleSpans referentSpans;
@@ -298,7 +298,7 @@
      * Advances the element or attribute spans to be in the same
      * document and
      * start position.
-     * */
+     */
     private boolean ensureSamePosition (SimpleSpans spans,
             AttributeSpans attributes) throws IOException {
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/SubSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/SubSpans.java
index 57f8362..4989957 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/SubSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/SubSpans.java
@@ -178,9 +178,10 @@
         cs.setDoc(firstSpans.doc());
 
         if (DEBUG) {
-            log.trace("Start at absolute position {} "
-                    + "and end at absolute position {}", cs.getStart(),
-                    cs.getEnd());
+            log.trace(
+                    "Start at absolute position {} "
+                            + "and end at absolute position {}",
+                    cs.getStart(), cs.getEnd());
         };
 
         return true;
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/TermSpansWithId.java b/src/main/java/de/ids_mannheim/korap/query/spans/TermSpansWithId.java
index 0135fca..a8a4b14 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/TermSpansWithId.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/TermSpansWithId.java
@@ -23,7 +23,7 @@
  * payload.
  * 
  * @author margaretha
- * */
+ */
 public class TermSpansWithId extends SimpleSpans {
 
     private TermSpans termSpans;
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/TokenDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/TokenDistanceSpans.java
index a33e219..dbdf130 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/TokenDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/TokenDistanceSpans.java
@@ -24,7 +24,7 @@
  * maximum end positions of the child spans.
  * 
  * @author margaretha
- * */
+ */
 public class TokenDistanceSpans extends OrderedDistanceSpans {
 
     /**
@@ -71,7 +71,7 @@
      * list
      * prepared for the previous second spans.
      * 
-     * */
+     */
     private void copyPossibleCandidates () {
         List<CandidateSpan> temp = new ArrayList<>();
         for (CandidateSpan cs : candidateList) {
@@ -85,7 +85,7 @@
     /**
      * Add new possible firstspan candidates for the current
      * secondspan.
-     * */
+     */
     private void addNewCandidates () throws IOException {
         while (hasMoreFirstSpans && firstSpans.doc() == candidateListDocNum
                 && firstSpans.start() < secondSpans.end()) {
@@ -101,9 +101,8 @@
     @Override
     protected boolean findMatch () throws IOException {
         CandidateSpan candidateSpan = candidateList.get(candidateListIndex);
-        if (minDistance == 0
-                &&
-                // intersection
+        if (minDistance == 0 &&
+        // intersection
                 candidateSpan.getStart() < secondSpans.end()
                 && secondSpans.start() < candidateSpan.getEnd()) {
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedDistanceSpans.java
index 3088b9f..72876ab 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedDistanceSpans.java
@@ -23,7 +23,7 @@
  * order.
  * 
  * @author margaretha
- * */
+ */
 public abstract class UnorderedDistanceSpans extends DistanceSpans {
 
     protected int minDistance, maxDistance;
@@ -260,7 +260,7 @@
      * to the match list.
      * 
      * @return a candidate span match
-     * */
+     */
     protected CandidateSpan createMatchCandidate (CandidateSpan target,
             CandidateSpan cs, boolean isDistanceZero) {
 
@@ -278,7 +278,8 @@
                 payloads.addAll(cs.getPayloads());
             }
         }
-        CandidateSpan match = new CandidateSpan(start, end, doc, cost, payloads);
+        CandidateSpan match = new CandidateSpan(start, end, doc, cost,
+                payloads);
         match.setChildSpan(cs);
         return match;
     }
@@ -288,7 +289,7 @@
      * Assigns the first candidate span in the match list as the
      * current span
      * match, and removes it from the matchList.
-     * */
+     */
     private void setMatchProperties () {
         CandidateSpan cs = matchList.get(0);
         matchDocNumber = cs.getDoc();
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedElementDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedElementDistanceSpans.java
index 0fec0af..6850ab4 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedElementDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedElementDistanceSpans.java
@@ -26,7 +26,7 @@
  * the spans.
  * 
  * @author margaretha
- * */
+ */
 public class UnorderedElementDistanceSpans extends UnorderedDistanceSpans {
 
     private Spans elements;
@@ -147,9 +147,8 @@
      */
     private int findElementPosition (Spans span) throws IOException {
         // Check in the element list
-        if (!elementList.isEmpty()
-                && span.end() <= elementList.get(elementList.size() - 1)
-                        .getEnd()) {
+        if (!elementList.isEmpty() && span.end() <= elementList
+                .get(elementList.size() - 1).getEnd()) {
 
             for (CandidateSpan e : elementList)
                 if (e.getEnd() >= span.end() && e.getStart() <= span.start()) {
@@ -223,18 +222,20 @@
      * @return <code>true</code> if the target and candidate spans are
      *         within
      *         the maximum distance, <code>false</code> otherwise.
-     * */
+     */
     protected boolean isWithinMaxDistance (CandidateSpan target,
             CandidateSpan candidate) {
         int candidatePos = candidate.getPosition();
         int targetPos = target.getPosition();
 
         // left candidate
-        if (candidatePos < targetPos && candidatePos + maxDistance < targetPos) {
+        if (candidatePos < targetPos
+                && candidatePos + maxDistance < targetPos) {
             return false;
         }
         // right candidate
-        if (candidatePos > targetPos && targetPos + maxDistance < candidatePos) {
+        if (candidatePos > targetPos
+                && targetPos + maxDistance < candidatePos) {
             return false;
         }
         return true;
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedTokenDistanceSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedTokenDistanceSpans.java
index a8013bb..5c1350c 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedTokenDistanceSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/UnorderedTokenDistanceSpans.java
@@ -21,7 +21,7 @@
  * distance is a token position.
  * 
  * @author margaretha
- * */
+ */
 public class UnorderedTokenDistanceSpans extends UnorderedDistanceSpans {
 
     /**
@@ -105,7 +105,8 @@
      *         within
      *         the maximum distance, <code>false</code> otherwise.
      */
-    protected boolean isWithinMaxDistance (CandidateSpan target, Spans candidate) {
+    protected boolean isWithinMaxDistance (CandidateSpan target,
+            Spans candidate) {
         // left candidate
         if (candidate.end() < target.getStart()
                 && candidate.end() + maxDistance <= target.getStart()) {
@@ -127,9 +128,8 @@
         List<CandidateSpan> matches = new ArrayList<>();
         int actualDistance;
         for (CandidateSpan cs : candidateList) {
-            if (minDistance == 0
-                    &&
-                    // intersection
+            if (minDistance == 0 &&
+            // intersection
                     target.getStart() < cs.getEnd()
                     && cs.getStart() < target.getEnd()) {
                 matches.add(createMatchCandidate(target, cs, true));
@@ -144,7 +144,8 @@
                 // right candidate
                 actualDistance = cs.getStart() - target.getEnd() + 1;
             }
-            if (minDistance <= actualDistance && actualDistance <= maxDistance) {
+            if (minDistance <= actualDistance
+                    && actualDistance <= maxDistance) {
                 matches.add(createMatchCandidate(target, cs, false));
             }
         }
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
index 9234716..fe507d9 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
@@ -303,7 +303,9 @@
                 // Fetch from second store?
                 else {
 
-                    /** TODO: Change this to a single embedded object! */
+                    /**
+                     * TODO: Change this to a single embedded object!
+                     */
                     this.embeddedStart = current.start;
                     this.embeddedEnd = current.end;
                     this.embeddedDoc = current.doc;
@@ -338,7 +340,8 @@
             // shift the stored spans
             if (!this.spanStore1.isEmpty()) {
                 if (DEBUG) {
-                    log.trace("Move everything from SpanStore 1 to SpanStore 2:");
+                    log.trace(
+                            "Move everything from SpanStore 1 to SpanStore 2:");
                     for (WithinSpan i : this.spanStore1) {
                         log.trace("     | {}", i.toString());
                     };
@@ -372,8 +375,8 @@
                 this.wrapDoc = this.wrapSpans.doc();
 
                 if (DEBUG)
-                    log.trace("   Forward wrap span to {}", _currentWrap()
-                            .toString());
+                    log.trace("   Forward wrap span to {}",
+                            _currentWrap().toString());
 
                 if (this.embeddedDoc != this.wrapDoc) {
                     if (DEBUG)
@@ -842,8 +845,8 @@
 
     private WithinSpan _currentWrap () {
         WithinSpan _wrap = new WithinSpan();
-        _wrap.start = this.wrapStart != -1 ? this.wrapStart : this.wrapSpans
-                .start();
+        _wrap.start = this.wrapStart != -1 ? this.wrapStart
+                : this.wrapSpans.start();
         _wrap.end = this.wrapEnd != -1 ? this.wrapEnd : this.wrapSpans.end();
         _wrap.doc = this.wrapDoc != -1 ? this.wrapDoc : this.wrapSpans.doc();
         return _wrap;
@@ -874,7 +877,7 @@
           - storeEmbedded -> store span B for later checks
           - nextSpanA     -> forward a
           - nextSpanB     -> forward b
-
+        
           These rules were automatically generated
         */
 
@@ -1174,12 +1177,10 @@
 
     @Override
     public String toString () {
-        return getClass().getName()
-                + "("
-                + query.toString()
-                + ")@"
-                + (embeddedDoc <= 0 ? "START" : (more ? (doc() + ":" + start()
-                        + "-" + end()) : "END"));
+        return getClass().getName() + "(" + query.toString() + ")@"
+                + (embeddedDoc <= 0 ? "START"
+                        : (more ? (doc() + ":" + start() + "-" + end())
+                                : "END"));
     };
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAlterQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAlterQueryWrapper.java
index 8fd18cd..9b71cbf 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAlterQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAlterQueryWrapper.java
@@ -48,8 +48,8 @@
         this.alternatives = new ArrayList<>();
         for (String term : terms) {
             this.isNull = false;
-            this.alternatives.add(new SpanSimpleQueryWrapper(new SpanTermQuery(
-                    new Term(this.field, term))));
+            this.alternatives.add(new SpanSimpleQueryWrapper(
+                    new SpanTermQuery(new Term(this.field, term))));
         };
     };
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAttributeQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAttributeQueryWrapper.java
index 0d0fe23..d2941f9 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAttributeQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanAttributeQueryWrapper.java
@@ -8,7 +8,7 @@
 
 /**
  * @author margaretha
- * */
+ */
 public class SpanAttributeQueryWrapper extends SpanQueryWrapper {
 
     private SpanQueryWrapper subquery;
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanClassQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanClassQueryWrapper.java
index 51d4ab7..c06194f 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanClassQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanClassQueryWrapper.java
@@ -70,8 +70,8 @@
         if (this.subquery.isNull())
             return (SpanQuery) null;
 
-        SpanQuery sq = (SpanQuery) this.subquery
-                .retrieveNode(this.retrieveNode).toFragmentQuery();
+        SpanQuery sq = (SpanQuery) this.subquery.retrieveNode(this.retrieveNode)
+                .toFragmentQuery();
 
         if (sq == null)
             return (SpanQuery) null;
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanExpansionQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanExpansionQueryWrapper.java
index 7c4cf61..f4011c2 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanExpansionQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanExpansionQueryWrapper.java
@@ -8,7 +8,6 @@
 import de.ids_mannheim.korap.query.SpanExpansionQuery;
 import de.ids_mannheim.korap.util.QueryException;
 
-
 import java.util.*;
 
 /*
@@ -21,48 +20,41 @@
 public class SpanExpansionQueryWrapper extends SpanQueryWrapper {
     private SpanQueryWrapper anchor;
 
-	// < 0 	to the left of anchor span 
+    // < 0 	to the left of anchor span 
     // >= 0  to the right of anchor span
-	private int direction;
+    private int direction;
 
-	// if > 0, collect expansion offsets
-	// using this label
+    // if > 0, collect expansion offsets
+    // using this label
     private byte classNumber;
 
 
-    public SpanExpansionQueryWrapper (SpanQueryWrapper anchor,
-									  int min,
-									  int max,
-									  int direction,
-									  byte classNumber
-		) {
-		this.anchor = anchor;
-		this.isNull = false;
-		this.min = min;
-		this.max = max;
-		this.direction = direction;
-		this.classNumber = classNumber;
-		this.isExtended = true;
-		if (direction >= 0)
-			this.isExtendedToTheRight = true;
+    public SpanExpansionQueryWrapper (SpanQueryWrapper anchor, int min, int max,
+                                      int direction, byte classNumber) {
+        this.anchor = anchor;
+        this.isNull = false;
+        this.min = min;
+        this.max = max;
+        this.direction = direction;
+        this.classNumber = classNumber;
+        this.isExtended = true;
+        if (direction >= 0)
+            this.isExtendedToTheRight = true;
     };
 
-	@Override
+
+    @Override
     public boolean isNull () {
-		// Needs to be overwritten, as min and max do not indicate null value
+        // Needs to be overwritten, as min and max do not indicate null value
         return this.isNull;
     };
-	
 
-	@Override
+
+    @Override
     public SpanQuery toFragmentQuery () throws QueryException {
-		return new SpanExpansionQuery(
-			this.anchor.retrieveNode(this.retrieveNode).toFragmentQuery(),
-			this.getMin(),
-			this.getMax(),
-			this.direction,
-			this.classNumber,
-			true
-			);
+        return new SpanExpansionQuery(
+                this.anchor.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                this.getMin(), this.getMax(), this.direction, this.classNumber,
+                true);
     };
 };
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanFocusQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanFocusQueryWrapper.java
index 8fadb3e..89d8f65 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanFocusQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanFocusQueryWrapper.java
@@ -52,8 +52,9 @@
     public SpanQuery toFragmentQuery () throws QueryException {
         if (this.subquery.isNull())
             return (SpanQuery) null;
-        return new SpanFocusQuery(this.subquery.retrieveNode(this.retrieveNode)
-                .toFragmentQuery(), this.number);
+        return new SpanFocusQuery(
+                this.subquery.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                this.number);
     };
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanQueryWrapper.java
index f0221d5..c6e1355 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanQueryWrapper.java
@@ -95,8 +95,8 @@
         return this.isOptional;
     };
 
-	
-	public SpanQueryWrapper isOptional (boolean opt) {
+
+    public SpanQueryWrapper isOptional (boolean opt) {
         this.isOptional = opt;
         return this;
     };
@@ -219,6 +219,7 @@
         return this;
     };
 
+
     /**
      * Check, if the wrapped query can be used as an
      * anchor query in a sequence, i.e. a query that
@@ -419,10 +420,10 @@
      */
     public String toString () {
         String string = "" + (this.isNull() ? "isNull" : "notNull") + "-"
-			+ (this.isEmpty() ? "isEmpty" : "notEmpty") + "-"
-			+ (this.isOptional() ? "isOptional" : "notOptional") + "-"
-			+ (this.isExtendedToTheRight() ? "isExtendedToTheRight" : "notExtendedToTheRight");
-		;
+                + (this.isEmpty() ? "isEmpty" : "notEmpty") + "-"
+                + (this.isOptional() ? "isOptional" : "notOptional") + "-"
+                + (this.isExtendedToTheRight() ? "isExtendedToTheRight"
+                        : "notExtendedToTheRight");;
         return string;
     };
 };
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanRepetitionQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanRepetitionQueryWrapper.java
index 65c4da6..808b064 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanRepetitionQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanRepetitionQueryWrapper.java
@@ -101,8 +101,9 @@
                     .toFragmentQuery();
 
         // That's a fine repetition query
-        return new SpanRepetitionQuery(this.subquery.retrieveNode(
-                this.retrieveNode).toFragmentQuery(), this.min, this.max, true);
+        return new SpanRepetitionQuery(
+                this.subquery.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                this.min, this.max, true);
     };
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSegmentQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSegmentQueryWrapper.java
index 1b1929b..8623671 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSegmentQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSegmentQueryWrapper.java
@@ -196,7 +196,8 @@
 
 
     public SpanQuery toFragmentQuery () throws QueryException {
-        if (this.isNull || (this.inclusive.size() + this.exclusive.size() == 0)) {
+        if (this.isNull
+                || (this.inclusive.size() + this.exclusive.size() == 0)) {
             return (SpanQuery) null;
         }
         else if (this.inclusive.size() >= 1 && this.exclusive.size() >= 1) {
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSequenceQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSequenceQueryWrapper.java
index c5aac76..2a263a6 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSequenceQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSequenceQueryWrapper.java
@@ -89,8 +89,8 @@
     public SpanSequenceQueryWrapper (String field, String ... terms) {
         this(field);
         for (int i = 0; i < terms.length; i++) {
-            this.segments.add(new SpanSimpleQueryWrapper(new SpanTermQuery(
-                    new Term(field, terms[i]))));
+            this.segments.add(new SpanSimpleQueryWrapper(
+                    new SpanTermQuery(new Term(field, terms[i]))));
         };
         // Query can't be null anymore
         this.isNull = false;
@@ -133,8 +133,8 @@
         if (DEBUG) {
             if (!sswq.isEmpty()) {
                 try {
-                    log.trace("New span sequence {}", sswq.toFragmentQuery()
-                            .toString());
+                    log.trace("New span sequence {}",
+                            sswq.toFragmentQuery().toString());
                 }
                 catch (QueryException qe) {
                     log.trace("Unable to serialize query {}", qe.getMessage());
@@ -392,8 +392,8 @@
             this.constraints = new ArrayList<DistanceConstraint>(1);
         if (DEBUG)
             log.trace("With contraint {}-{} (excl {})", min, max, exclusion);
-        this.constraints.add(new DistanceConstraint(min, max, this.isInOrder,
-                exclusion));
+        this.constraints.add(
+                new DistanceConstraint(min, max, this.isInOrder, exclusion));
         return this;
     };
 
@@ -476,8 +476,8 @@
             String unit, boolean exclusion) {
 
         if (DEBUG)
-            log.trace("With contraint {}-{} (unit {}, excl {})", min, max,
-                    unit, exclusion);
+            log.trace("With contraint {}-{} (unit {}, excl {})", min, max, unit,
+                    exclusion);
 
         // Word unit
         if (unit.equals("w")) {
@@ -486,15 +486,15 @@
             if (this.constraints == null)
                 this.constraints = new ArrayList<DistanceConstraint>(1);
 
-            this.constraints.add(new DistanceConstraint(min, max, isInOrder,
-                    exclusion));
+            this.constraints.add(
+                    new DistanceConstraint(min, max, isInOrder, exclusion));
 
             return this;
         };
 
         // Element unit (sentence or paragraph)
-        return this.withConstraint(min, max, new SpanElementQueryWrapper(
-                this.field, unit), exclusion);
+        return this.withConstraint(min, max,
+                new SpanElementQueryWrapper(this.field, unit), exclusion);
     };
 
 
@@ -545,9 +545,10 @@
         // Element unit (sentence or paragraph)
         // Todo: This should possibly be evaluated to a query later on!
         try {
-            this.constraints.add(new DistanceConstraint((SpanElementQuery) unit
-                    .retrieveNode(this.retrieveNode).toFragmentQuery(), min,
-                    max, isInOrder, exclusion));
+            this.constraints.add(new DistanceConstraint(
+                    (SpanElementQuery) unit.retrieveNode(this.retrieveNode)
+                            .toFragmentQuery(),
+                    min, max, isInOrder, exclusion));
         }
         catch (QueryException qe) {
             this.constraintException = qe;
@@ -741,7 +742,7 @@
             return (SpanQuery) query;
         };
 
-		// DistanceQueries with problems
+        // DistanceQueries with problems
         if (this.hasConstraints() && this.isProblematic) {
             throw new QueryException(613,
                     "Distance constraints not supported with empty, optional or negative operands");
@@ -769,8 +770,8 @@
                     if (sq == null)
                         continue;
 
-                    SpanDistanceQuery sdquery = new SpanDistanceQuery(query,
-                            sq, constraint, true);
+                    SpanDistanceQuery sdquery = new SpanDistanceQuery(query, sq,
+                            constraint, true);
                     query = (SpanQuery) sdquery;
                 };
             }
@@ -793,8 +794,8 @@
                     if (sq == null)
                         continue;
 
-                    SpanDistanceQuery sdquery = new SpanDistanceQuery(query,
-                            sq, constraint, true);
+                    SpanDistanceQuery sdquery = new SpanDistanceQuery(query, sq,
+                            constraint, true);
                     query = (SpanQuery) sdquery;
                 };
             };
@@ -828,12 +829,12 @@
       segments to extensions).
       This has to be done as long as there are problematic segments
       In the queries.
-
+    
       While there is a segment isNegative() or isOptional() or isEmpty() do
       - look for an anchor next to it
       - merge the problematic segment with the anchor
       - go on
-
+    
       - This does not work for distance constraints!
     */
     private boolean _solveProblematicSequence () {
@@ -875,8 +876,7 @@
 
                     // Insert the solution
                     try {
-                        this.segments.set(
-                                i + 1,
+                        this.segments.set(i + 1,
                                 _merge(this.segments.get(i + 1), underScrutiny,
                                         false));
                     }
@@ -906,10 +906,8 @@
 
                     // Insert the solution
                     try {
-                        this.segments.set(
-                                i - 1,
-                                _merge(this.segments.get(i - 1), underScrutiny,
-                                        true));
+                        this.segments.set(i - 1, _merge(
+                                this.segments.get(i - 1), underScrutiny, true));
                     }
                     catch (QueryException e) {
                         this.isSolved = true;
@@ -969,8 +967,8 @@
         int direction = mergeLeft ? 1 : -1;
 
         if (DEBUG)
-            log.trace("Will merge two spans to {}", mergeLeft ? "left"
-                    : "right");
+            log.trace("Will merge two spans to {}",
+                    mergeLeft ? "left" : "right");
 
         // Make empty extension to anchor
         if (problem.isEmpty()) {
@@ -980,46 +978,44 @@
                 log.trace("Problem is empty with class {}",
                         problem.getClassNumber());
 
-			// Merge extensions!
-			if (!problem.hasClass() &&
-				!anchor.hasClass() &&
-				anchor.isExtended()) {
+            // Merge extensions!
+            if (!problem.hasClass() && !anchor.hasClass()
+                    && anchor.isExtended()) {
 
-				if (DEBUG)
-					log.trace("It may be possible to extend anchor with problem");
-				
-				if (
-					// Further extend to the right ...
-					(direction >= 0 && anchor.isExtendedToTheRight) ||
+                if (DEBUG)
+                    log.trace(
+                            "It may be possible to extend anchor with problem");
 
-					// or the left
-					(direction < 0 && !anchor.isExtendedToTheRight)) {
+                if (
+                // Further extend to the right ...
+                (direction >= 0 && anchor.isExtendedToTheRight) ||
 
-					if (DEBUG)
-						log.trace("Readjust min and max");
+                // or the left
+                        (direction < 0 && !anchor.isExtendedToTheRight)) {
 
-					// Readjust the anchor
-					anchor.setMin(anchor.getMin() + problem.getMin());
-					anchor.setMax(anchor.getMax() + problem.getMax());
+                    if (DEBUG)
+                        log.trace("Readjust min and max");
 
-					/*
-					 * This is wrong - min is only relevant for extensions
-					if (anchor.getMin() > 0)
-						anchor.isOptional = false;
-					*/					
-					return anchor;
-				};
-			};
+                    // Readjust the anchor
+                    anchor.setMin(anchor.getMin() + problem.getMin());
+                    anchor.setMax(anchor.getMax() + problem.getMax());
 
-			// Can't merge extensions
-			SpanQueryWrapper sqw = new SpanExpansionQueryWrapper(
-				anchor,
-				problem.isOptional() ? 0 : problem.getMin(),
-				problem.getMax(),
-				direction,
-				problem.hasClass() ? problem.getClassNumber() : (byte) 0
-				).isExtended(true);
-				
+                    /*
+                     * This is wrong - min is only relevant for extensions
+                    if (anchor.getMin() > 0)
+                    	anchor.isOptional = false;
+                    */
+                    return anchor;
+                };
+            };
+
+            // Can't merge extensions
+            SpanQueryWrapper sqw = new SpanExpansionQueryWrapper(anchor,
+                    problem.isOptional() ? 0 : problem.getMin(),
+                    problem.getMax(), direction,
+                    problem.hasClass() ? problem.getClassNumber() : (byte) 0)
+                            .isExtended(true);
+
             // Set right extension
             if (direction >= 0)
                 sqw.isExtendedToTheRight(true);
@@ -1036,17 +1032,17 @@
                 log.trace("Problem is negative with class {}",
                         problem.getClassNumber());
 
-			// TODO: Should probably wrapped as well!
-			// A sequence of negative tokens may expand jointly!
-			query = new SpanExpansionQuery(anchor.retrieveNode(
-											   this.retrieveNode).toFragmentQuery(), problem.retrieveNode(
-												   this.retrieveNode).toFragmentQuery(), problem.getMin(),
-										   problem.getMax(), direction,
-										   problem.hasClass() ? problem.getClassNumber() : (byte) 0,
-										   true);
+            // TODO: Should probably wrapped as well!
+            // A sequence of negative tokens may expand jointly!
+            query = new SpanExpansionQuery(
+                    anchor.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                    problem.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                    problem.getMin(), problem.getMax(), direction,
+                    problem.hasClass() ? problem.getClassNumber() : (byte) 0,
+                    true);
 
             SpanQueryWrapper sqw = new SpanSimpleQueryWrapper(query)
-				.isExtended(true);
+                    .isExtended(true);
 
             // Set right extension
             if (direction >= 0)
@@ -1058,29 +1054,25 @@
         if (DEBUG)
             log.trace("Problem is optional");
 
-		// [base=der][][base=Baum]?
+        // [base=der][][base=Baum]?
         // [base=der][base=baum]?
 
         // [base=der]
-        SpanAlterQueryWrapper saqw = new SpanAlterQueryWrapper(
-			this.field,
-			anchor
-			);
+        SpanAlterQueryWrapper saqw = new SpanAlterQueryWrapper(this.field,
+                anchor);
 
         // [base=der]
-        SpanSequenceQueryWrapper ssqw = new SpanSequenceQueryWrapper(
-			this.field,
-			anchor
-			);
+        SpanSequenceQueryWrapper ssqw = new SpanSequenceQueryWrapper(this.field,
+                anchor);
 
         // [base=der][base=baum]
-	    if (mergeLeft) {
+        if (mergeLeft) {
             ssqw.append(problem.isOptional(false));
-		}
+        }
         // [base=baum][base=der]
         else {
             ssqw.prepend(problem.isOptional(false));
-		}
+        }
 
         saqw.or(ssqw);
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSimpleQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSimpleQueryWrapper.java
index 3d9c76a..cdf4619 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSimpleQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSimpleQueryWrapper.java
@@ -26,18 +26,20 @@
         this.query = query;
     };
 
-	// This is similar to a clone
-	public SpanSimpleQueryWrapper (SpanQueryWrapper query) throws QueryException {
-		this.hasClass = query.hasClass();
-		this.isOptional = query.isOptional();
-		this.isNegative = query.isNegative();
-		this.isEmpty = query.isEmpty();
-		this.isExtended = query.isExtended();
-		this.isExtendedToTheRight = query.isExtendedToTheRight();
-		this.maybeUnsorted = query.maybeUnsorted();
-		this.retrieveNode = query.retrieveNode;
-		this.query = query.toFragmentQuery();
-		this.isNull = query.isNull();
+
+    // This is similar to a clone
+    public SpanSimpleQueryWrapper (SpanQueryWrapper query)
+            throws QueryException {
+        this.hasClass = query.hasClass();
+        this.isOptional = query.isOptional();
+        this.isNegative = query.isNegative();
+        this.isEmpty = query.isEmpty();
+        this.isExtended = query.isExtended();
+        this.isExtendedToTheRight = query.isExtendedToTheRight();
+        this.maybeUnsorted = query.maybeUnsorted();
+        this.retrieveNode = query.retrieveNode;
+        this.query = query.toFragmentQuery();
+        this.isNull = query.isNull();
     };
 
 
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSubspanQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSubspanQueryWrapper.java
index d311a27..7e91844 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSubspanQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanSubspanQueryWrapper.java
@@ -25,7 +25,8 @@
 
 
     public SpanSubspanQueryWrapper (SpanQueryWrapper sqw, int startOffset,
-                                    int length) throws QueryException {
+                                    int length)
+            throws QueryException {
         if (length < 0) {
             throw new QueryException(
                     "SpanSubspanQuery cannot have length less than 0.");
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithAttributeQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithAttributeQueryWrapper.java
index 435b3ee..266e051 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithAttributeQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithAttributeQueryWrapper.java
@@ -15,7 +15,7 @@
  * No optimization using expansion
  * 
  * @author margaretha
- * */
+ */
 public class SpanWithAttributeQueryWrapper extends SpanQueryWrapper {
 
     private SpanQueryWrapper withIdQueryWrapper = null;
@@ -33,7 +33,8 @@
             return;
         }
         if (attrQuery.isNegative) {
-            throw new QueryException("The query requires a positive attribute.");
+            throw new QueryException(
+                    "The query requires a positive attribute.");
         }
         this.attrQueryWrapper = attrQuery;
         this.isSingleAttribute = true;
@@ -153,7 +154,8 @@
 
     private SpanWithAttributeQuery createSpanWithSingleAttributeQuery (
             SimpleSpanQuery withIdQuery) throws QueryException {
-        SpanAttributeQuery attrQuery = createSpanAttributeQuery(this.attrQueryWrapper);
+        SpanAttributeQuery attrQuery = createSpanAttributeQuery(
+                this.attrQueryWrapper);
         if (attrQuery != null) {
             if (withIdQuery != null) {
                 return new SpanWithAttributeQuery(withIdQuery, attrQuery, true);
diff --git a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithinQueryWrapper.java b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithinQueryWrapper.java
index dc1f449..576b1e0 100644
--- a/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithinQueryWrapper.java
+++ b/src/main/java/de/ids_mannheim/korap/query/wrap/SpanWithinQueryWrapper.java
@@ -96,9 +96,10 @@
 
         // TODO: if (wrap.isNegative())
 
-        return new SpanWithinQuery(this.element.retrieveNode(this.retrieveNode)
-                .toFragmentQuery(), this.wrap.retrieveNode(this.retrieveNode)
-                .toFragmentQuery(), this.flag);
+        return new SpanWithinQuery(
+                this.element.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                this.wrap.retrieveNode(this.retrieveNode).toFragmentQuery(),
+                this.flag);
     };