2

I'll briefly describe what I did and then show how the result I got, differs from my desired result.

Thanks in advance for any suggestions.

Java code was created in a java online compiler and is executable there without error message in any case.

Java online compiler, which was used

Short description:

I want to assign a boolean value to every possible combination between row index and column index of a square matrix.
Only the main diagonal is to be excluded from this. For this I use a TreeMap <String, Boolean>

I form the keys of the TreeMap by linking {row index + "-"+column index} in a for loop.
At the beginning, all values of the keys are assigned {false}.

In a second loop, every possible combination of a chosen index basicL with other indices (=keys) is to be linked with the Boolean value true (again without values of the main diagonals). As a result, TreeMap.keySet() is to be printed in sorted order (sorted by the keys). Example is for basicL = 4;

Illustration of the matrix (Boolean true=green, Boolean false=white, excluded=grey):

enter image description here

Java-Code:

import java.util.TreeMap;

public class Main {

  static TreeMap<String, Boolean> booleanMap = new TreeMap<>();

  public static void main(String[] args) {

    //all values of symmetric matrix without diagonal axis

    int max = 16;
    int basicL = 4;

    for (int i = 1; i <= max; i++) {

      for (int j = 1; j <= max; j++) {

        if (j != i) {
          booleanMap.put(i + "-" + j, Boolean.valueOf(false));
        }
      }
    }

    System.out.println("-----------------------------------------------------");
    System.out.println("TreeMap has size:  " + booleanMap.size());
    System.out.println("TreeMap values:    " + booleanMap.values());
    System.out.println("TreeMap keySet:   " + booleanMap.keySet());
    System.out.println("-----------------------------------------------------");

    // setting true-conditions

    for (int i = 1; i <= max; i++) {

      if (i != basicL) {

        for (int j = 1; j <= max; j++) {

          if (j == basicL) {

            booleanMap.replace(i + "-" + j, Boolean.valueOf(true));
          }
        }
      }

      if (i == basicL) {

        for (int j = 1; j <= max; j++) {

          if (j != i) {

            booleanMap.replace(i + "-" + j, Boolean.valueOf(true));

          }
        }
      }
    }

    System.out.println("TreeMap values after looping:    " + booleanMap.values());
    System.out.println("TreeMap keySet after looping:    " + booleanMap.keySet());
    System.out.println("-----------------------------------------------------");
  }
}

Result achieved for booleanMap.keySet();

[1-10, 1-11, 1-12, 1-13, 1-14, 1-15, 1-16, 1-2, 1-3, 1-4, 1-5, 1-6, 1-7, 1-8, 1-9, 10-1, 10-11, 10-12, 10-13, 10-14, 10-15, 10-16, 10-2 .... ]

Desired Result:

[1-2, 1-3, 1-4, 1-5, 1-6, 1-7, 1-8, 1-9, 1-10, 1-11, 1-12, 1-13, 1-14, 1-15, 1-16, 2-1, 2-3, 2-4, 2-5, 2-6, 2-7, 2-8, 2-9, 2-10, 2-11, 2-12 .... ]
samabcde
  • 6,988
  • 2
  • 25
  • 41
Dorian Feyerer
  • 258
  • 5
  • 14
  • Does your result contain the correct key values and your issue is only the wrong sorting? – Eritrean Jun 02 '21 at 14:55
  • 2
    Maybe use `String.format("%03d-%03d", i, j)` as the key? – clstrfsck Jun 02 '21 at 14:59
  • Does this answer your question? [sorting treemap based on key, where key is variable](https://stackoverflow.com/questions/6925886/sorting-treemap-based-on-key-where-key-is-variable) – Zain Ul Abidin Jun 02 '21 at 15:01
  • 1
    This is most likely a sorting problem in which the keys do not get interpreted as numbers but strings. – Matt Jun 02 '21 at 15:01
  • @Eritrean: Yes, it maps the values to the keys correct and also the TreeMap.size() is equal to a 16×16 matrix without main diagonal. The only problem is, that in the produced output it places e.g. 4-10 before 4-5. I suppose the TreeMap is sorting in an ascending order after each character of the string so a 10 is always placed before a single digit with {2...9} because 1 is smaller. – Dorian Feyerer Jun 02 '21 at 15:05
  • @clstrfsck: thanks for your effort, i will try this approach later and give you a feedback. – Dorian Feyerer Jun 02 '21 at 15:12

3 Answers3

2

By default String in TreeMap is sort by lexicographical order. You need a custom comparator in TreeMap to sort numerically,

TreeMap<String, Boolean> booleanMap = new TreeMap<>((s1, s2) -> {
    String[] arr1 = s1.split("-");
    String[] arr2 = s2.split("-");
    int i1 = Integer.valueOf(arr1[0]);
    int j1 = Integer.valueOf(arr1[1]);
    int i2 = Integer.valueOf(arr2[0]);
    int j2 = Integer.valueOf(arr2[1]);
    if (i1 != i2) {
        return Integer.compare(i1, i2);
    }
    return Integer.compare(j1, j2);
});
samabcde
  • 6,988
  • 2
  • 25
  • 41
2

The indexes are sorted lexicographical and not according to the value of the number. A solution would be to prepend zeros (1-12 -> 001-012). Another would be to pass a custom comparator to the constructor of TreeMap as shown in the answer by @samabcde.

I suggest that you create a custom class for the position in the matrix. You can implement compareTo which lets the TreeMap handle the sorting automatically for you. Additionally, you can simplify the second loop significantly and remove the boxing of the booleans.

TreeMap<Position, Boolean> booleanMap = new TreeMap<>();

int max = 16;
int basicL = 4;

for (int i = 1; i <= max; i++) {
    for (int j = 1; j <= max; j++) {
        if (j != i) {
            booleanMap.put(new Position(i, j), Boolean.FALSE);
        }
    }
}
for (int i = 1; i <= max; i++) {
    for (int j = 1; j <= max; j++) {
        if ((i != basicL && j == basicL) || (i == basicL && j != i)) {
            booleanMap.replace(new Position(i, j), Boolean.TRUE);
        }
    }
}
static class Position implements Comparable<Position> {

    private final int x;
    private final int y;

    public Position(final int x, final int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    @Override
    public int compareTo(final Position o) {
        final int res = Integer.compare(getX(), o.getX());
        return (res != 0) ? res : Integer.compare(getY(), o.getY());
    }

    @Override
    public String toString() {
        return x + "-" + y;
    }
}
Matt
  • 12,848
  • 2
  • 31
  • 53
0

Thanks for your help!

I have now tried the approaches from:

  1. @ clstrfsck (String.format())
  2. @ samabcde (custom comparator)
  3. @ matt (create custom class)

Solution approach 1 and 3 I was able to use successfully and generate the desired output.
Approach 2 I don't quite understand yet, because I still lack the background knowledge of lamda expressions, but maybe I'll get it right.

Using String.format

I also used an iterator and substrings to generate the key-value pairs and format them back.

import java.util.TreeMap;
import java.util.*;

public class Main {

  static TreeMap<String, Boolean> booleanMap = new TreeMap<>();
  
  static String subKey;
  static String subKey2;
  static Integer subKey3;
  static Integer subKey4;
  static String formattedKey;

  public static void main(String[] args) {

    //all values of symmetric matrix without diagonal axis

    int max = 16;
    int basicL = 4;

    for (int i = 1; i <= max; i++) {

      for (int j = 1; j <= max; j++) {

        if (j != i) {
          booleanMap.put(String.format("%03d-%03d", i, j), Boolean.FALSE);
        }
      }
    }

    for (int i = 1; i <= max; i++) {

      if (i != basicL) {

        for (int j = 1; j <= max; j++) {

          if (j == basicL) {

            booleanMap.replace(String.format("%03d-%03d", i, j), Boolean.TRUE);
          }
        }
      }

      if (i == basicL) {

        for (int j = 1; j <= max; j++) {

          if (j != i) {

            booleanMap.replace(String.format("%03d-%03d", i, j), Boolean.TRUE);

          }
        }
      }
    }
    
     Iterator<Map.Entry<String, Boolean>> itr = booleanMap.entrySet().iterator();
     
     System.out.println("------KEY-VALUE PAIRS------");
         
        while(itr.hasNext())
        {
             Map.Entry<String, Boolean> entry = itr.next();
             
             subKey = entry.getKey().substring(0, 3);
             subKey2 = entry.getKey().substring(4, 7);
             subKey3 = Integer.parseInt(subKey);
             subKey4 = Integer.parseInt(subKey2);
             
             formattedKey = subKey3 +"-"+ subKey4;
             
             System.out.println("Key:" + formattedKey + " ,Value:" + entry.getValue());                     
            
        }
  }
}

Result:

------KEY-VALUE PAIRS------

Key:1-2 ,Value:false
Key:1-3 ,Value:false
Key:1-4 ,Value:true
Key:1-5 ,Value:false
Key:1-6 ,Value:false
Key:1-7 ,Value:false
Key:1-8 ,Value:false
Key:1-9 ,Value:false
Key:1-10 ,Value:false
Key:1-11 ,Value:false
Key:1-12 ,Value:false
Key:1-13 ,Value:false
Key:1-14 ,Value:false
Key:1-15 ,Value:false
Key:1-16 ,Value:false
Key:2-1 ,Value:false
Key:2-3 ,Value:false
Key:2-4 ,Value:true
Key:2-5 ,Value:false
Key:2-6 ,Value:false
Key:2-7 ,Value:false
Key:2-8 ,Value:false
Key:2-9 ,Value:false
Key:2-10 ,Value:false
Key:2-11 ,Value:false
Key:2-12 ,Value:false
Key:2-13 ,Value:false
Key:2-14 ,Value:false
Key:2-15 ,Value:false
Key:2-16 ,Value:false
Key:3-1 ,Value:false
Key:3-2 ,Value:false
Key:3-4 ,Value:true
Key:3-5 ,Value:false
Key:3-6 ,Value:false
Key:3-7 ,Value:false
Key:3-8 ,Value:false
Key:3-9 ,Value:false
Key:3-10 ,Value:false
Key:3-11 ,Value:false
Key:3-12 ,Value:false
Key:3-13 ,Value:false
Key:3-14 ,Value:false
Key:3-15 ,Value:false
Key:3-16 ,Value:false
Key:4-1 ,Value:true
Key:4-2 ,Value:true
Key:4-3 ,Value:true
Key:4-5 ,Value:true
Key:4-6 ,Value:true
Key:4-7 ,Value:true
Key:4-8 ,Value:true
Key:4-9 ,Value:true
Key:4-10 ,Value:true
Key:4-11 ,Value:true
Key:4-12 ,Value:true
Key:4-13 ,Value:true
Key:4-14 ,Value:true
Key:4-15 ,Value:true
Key:4-16 ,Value:true
Key:5-1 ,Value:false
Key:5-2 ,Value:false
Key:5-3 ,Value:false
Key:5-4 ,Value:true
Key:5-6 ,Value:false
Key:5-7 ,Value:false
Key:5-8 ,Value:false
Key:5-9 ,Value:false
Key:5-10 ,Value:false
Key:5-11 ,Value:false
Key:5-12 ,Value:false
Key:5-13 ,Value:false
Key:5-14 ,Value:false
Key:5-15 ,Value:false
Key:5-16 ,Value:false
Key:6-1 ,Value:false
Key:6-2 ,Value:false
Key:6-3 ,Value:false
Key:6-4 ,Value:true
Key:6-5 ,Value:false
Key:6-7 ,Value:false
Key:6-8 ,Value:false
Key:6-9 ,Value:false
Key:6-10 ,Value:false
Key:6-11 ,Value:false
Key:6-12 ,Value:false
Key:6-13 ,Value:false
Key:6-14 ,Value:false
Key:6-15 ,Value:false
Key:6-16 ,Value:false
Key:7-1 ,Value:false
Key:7-2 ,Value:false
Key:7-3 ,Value:false
Key:7-4 ,Value:true
Key:7-5 ,Value:false
Key:7-6 ,Value:false
Key:7-8 ,Value:false
Key:7-9 ,Value:false
Key:7-10 ,Value:false
Key:7-11 ,Value:false
Key:7-12 ,Value:false
Key:7-13 ,Value:false
Key:7-14 ,Value:false
Key:7-15 ,Value:false
Key:7-16 ,Value:false
Key:8-1 ,Value:false
Key:8-2 ,Value:false
Key:8-3 ,Value:false
Key:8-4 ,Value:true
Key:8-5 ,Value:false
Key:8-6 ,Value:false
Key:8-7 ,Value:false
Key:8-9 ,Value:false
Key:8-10 ,Value:false
Key:8-11 ,Value:false
Key:8-12 ,Value:false
Key:8-13 ,Value:false
Key:8-14 ,Value:false
Key:8-15 ,Value:false
Key:8-16 ,Value:false
Key:9-1 ,Value:false
Key:9-2 ,Value:false
Key:9-3 ,Value:false
Key:9-4 ,Value:true
Key:9-5 ,Value:false
Key:9-6 ,Value:false
Key:9-7 ,Value:false
Key:9-8 ,Value:false
Key:9-10 ,Value:false
Key:9-11 ,Value:false
Key:9-12 ,Value:false
Key:9-13 ,Value:false
Key:9-14 ,Value:false
Key:9-15 ,Value:false
Key:9-16 ,Value:false
Key:10-1 ,Value:false
Key:10-2 ,Value:false
Key:10-3 ,Value:false
Key:10-4 ,Value:true
Key:10-5 ,Value:false
Key:10-6 ,Value:false
Key:10-7 ,Value:false
Key:10-8 ,Value:false
Key:10-9 ,Value:false
Key:10-11 ,Value:false
Key:10-12 ,Value:false
Key:10-13 ,Value:false
Key:10-14 ,Value:false
Key:10-15 ,Value:false
Key:10-16 ,Value:false
Key:11-1 ,Value:false
Key:11-2 ,Value:false
Key:11-3 ,Value:false
Key:11-4 ,Value:true
Key:11-5 ,Value:false
Key:11-6 ,Value:false
Key:11-7 ,Value:false
Key:11-8 ,Value:false
Key:11-9 ,Value:false
Key:11-10 ,Value:false
Key:11-12 ,Value:false
Key:11-13 ,Value:false
Key:11-14 ,Value:false
Key:11-15 ,Value:false
Key:11-16 ,Value:false
Key:12-1 ,Value:false
Key:12-2 ,Value:false
Key:12-3 ,Value:false
Key:12-4 ,Value:true
Key:12-5 ,Value:false
Key:12-6 ,Value:false
Key:12-7 ,Value:false
Key:12-8 ,Value:false
Key:12-9 ,Value:false
Key:12-10 ,Value:false
Key:12-11 ,Value:false
Key:12-13 ,Value:false
Key:12-14 ,Value:false
Key:12-15 ,Value:false
Key:12-16 ,Value:false
Key:13-1 ,Value:false
Key:13-2 ,Value:false
Key:13-3 ,Value:false
Key:13-4 ,Value:true
Key:13-5 ,Value:false
Key:13-6 ,Value:false
Key:13-7 ,Value:false
Key:13-8 ,Value:false
Key:13-9 ,Value:false
Key:13-10 ,Value:false
Key:13-11 ,Value:false
Key:13-12 ,Value:false
Key:13-14 ,Value:false
Key:13-15 ,Value:false
Key:13-16 ,Value:false
Key:14-1 ,Value:false
Key:14-2 ,Value:false
Key:14-3 ,Value:false
Key:14-4 ,Value:true
Key:14-5 ,Value:false
Key:14-6 ,Value:false
Key:14-7 ,Value:false
Key:14-8 ,Value:false
Key:14-9 ,Value:false
Key:14-10 ,Value:false
Key:14-11 ,Value:false
Key:14-12 ,Value:false
Key:14-13 ,Value:false
Key:14-15 ,Value:false
Key:14-16 ,Value:false
Key:15-1 ,Value:false
Key:15-2 ,Value:false
Key:15-3 ,Value:false
Key:15-4 ,Value:true
Key:15-5 ,Value:false
Key:15-6 ,Value:false
Key:15-7 ,Value:false
Key:15-8 ,Value:false
Key:15-9 ,Value:false
Key:15-10 ,Value:false
Key:15-11 ,Value:false
Key:15-12 ,Value:false
Key:15-13 ,Value:false
Key:15-14 ,Value:false
Key:15-16 ,Value:false
Key:16-1 ,Value:false
Key:16-2 ,Value:false
Key:16-3 ,Value:false
Key:16-4 ,Value:true
Key:16-5 ,Value:false
Key:16-6 ,Value:false
Key:16-7 ,Value:false
Key:16-8 ,Value:false
Key:16-9 ,Value:false
Key:16-10 ,Value:false
Key:16-11 ,Value:false
Key:16-12 ,Value:false
Key:16-13 ,Value:false
Key:16-14 ,Value:false
Key:16-15 ,Value:false

Create custom class (best working solution for me)

import java.util.TreeMap;
import java.lang.*;

public class Main {

  static TreeMap<Position, Boolean> booleanMap = new TreeMap<>();
   
  static public class Position implements Comparable<Position> {

    private final int x;
    private final int y;

    public Position(final int x, final int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    @Override
    public int compareTo(final Position o) {
        final int res = Integer.compare(getX(), o.getX());
        return (res != 0) ? res : Integer.compare(getY(), o.getY());
    }

    @Override
    public String toString() {
        return x + "-" + y;
    }
}

  public static void main(String[] args) {
  
    //all values of symmetric matrix without diagonal axis

    int max = 16;
    int basicL = 4;

   for (int i = 1; i <= max; i++) {
     for (int j = 1; j <= max; j++) {
        if (j != i) {
            booleanMap.put(new Position(i, j), Boolean.FALSE);
          }
         }
        }

    System.out.println("-----------------------------------------------------");
    System.out.println("TreeMap has size:  " + booleanMap.size());
    System.out.println("TreeMap values:    " + booleanMap.values());
    System.out.println("TreeMap keySet:    " + booleanMap.keySet());
    System.out.println("-----------------------------------------------------");

    // setting true-conditions

   for (int i = 1; i <= max; i++) {
    for (int j = 1; j <= max; j++) {
        if ((i != basicL && j == basicL) || (i == basicL && j != i)) {
            booleanMap.replace(new Position(i, j), Boolean.TRUE);
        }
    }
}  

    System.out.println("TreeMap values after looping:    " + booleanMap.values());
    System.out.println("TreeMap keySet after looping:    " + booleanMap.keySet());
    System.out.println("-----------------------------------------------------");
    
  }
}

Result:


TreeMap has size:  240
TreeMap values:    [false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]
TreeMap keySet:    [1-2, 1-3, 1-4, 1-5, 1-6, 1-7, 1-8, 1-9, 1-10, 1-11, 1-12, 1-13, 1-14, 1-15, 1-16, 2-1, 2-3, 2-4, 2-5, 2-6, 2-7, 2-8, 2-9, 2-10, 2-11, 2-12, 2-13, 2-14, 2-15, 2-16, 3-1, 3-2, 3-4, 3-5, 3-6, 3-7, 3-8, 3-9, 3-10, 3-11, 3-12, 3-13, 3-14, 3-15, 3-16, 4-1, 4-2, 4-3, 4-5, 4-6, 4-7, 4-8, 4-9, 4-10, 4-11, 4-12, 4-13, 4-14, 4-15, 4-16, 5-1, 5-2, 5-3, 5-4, 5-6, 5-7, 5-8, 5-9, 5-10, 5-11, 5-12, 5-13, 5-14, 5-15, 5-16, 6-1, 6-2, 6-3, 6-4, 6-5, 6-7, 6-8, 6-9, 6-10, 6-11, 6-12, 6-13, 6-14, 6-15, 6-16, 7-1, 7-2, 7-3, 7-4, 7-5, 7-6, 7-8, 7-9, 7-10, 7-11, 7-12, 7-13, 7-14, 7-15, 7-16, 8-1, 8-2, 8-3, 8-4, 8-5, 8-6, 8-7, 8-9, 8-10, 8-11, 8-12, 8-13, 8-14, 8-15, 8-16, 9-1, 9-2, 9-3, 9-4, 9-5, 9-6, 9-7, 9-8, 9-10, 9-11, 9-12, 9-13, 9-14, 9-15, 9-16, 10-1, 10-2, 10-3, 10-4, 10-5, 10-6, 10-7, 10-8, 10-9, 10-11, 10-12, 10-13, 10-14, 10-15, 10-16, 11-1, 11-2, 11-3, 11-4, 11-5, 11-6, 11-7, 11-8, 11-9, 11-10, 11-12, 11-13, 11-14, 11-15, 11-16, 12-1, 12-2, 12-3, 12-4, 12-5, 12-6, 12-7, 12-8, 12-9, 12-10, 12-11, 12-13, 12-14, 12-15, 12-16, 13-1, 13-2, 13-3, 13-4, 13-5, 13-6, 13-7, 13-8, 13-9, 13-10, 13-11, 13-12, 13-14, 13-15, 13-16, 14-1, 14-2, 14-3, 14-4, 14-5, 14-6, 14-7, 14-8, 14-9, 14-10, 14-11, 14-12, 14-13, 14-15, 14-16, 15-1, 15-2, 15-3, 15-4, 15-5, 15-6, 15-7, 15-8, 15-9, 15-10, 15-11, 15-12, 15-13, 15-14, 15-16, 16-1, 16-2, 16-3, 16-4, 16-5, 16-6, 16-7, 16-8, 16-9, 16-10, 16-11, 16-12, 16-13, 16-14, 16-15]
-----------------------------------------------------
TreeMap values after looping:    [false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false]
TreeMap keySet after looping:    [1-2, 1-3, 1-4, 1-5, 1-6, 1-7, 1-8, 1-9, 1-10, 1-11, 1-12, 1-13, 1-14, 1-15, 1-16, 2-1, 2-3, 2-4, 2-5, 2-6, 2-7, 2-8, 2-9, 2-10, 2-11, 2-12, 2-13, 2-14, 2-15, 2-16, 3-1, 3-2, 3-4, 3-5, 3-6, 3-7, 3-8, 3-9, 3-10, 3-11, 3-12, 3-13, 3-14, 3-15, 3-16, 4-1, 4-2, 4-3, 4-5, 4-6, 4-7, 4-8, 4-9, 4-10, 4-11, 4-12, 4-13, 4-14, 4-15, 4-16, 5-1, 5-2, 5-3, 5-4, 5-6, 5-7, 5-8, 5-9, 5-10, 5-11, 5-12, 5-13, 5-14, 5-15, 5-16, 6-1, 6-2, 6-3, 6-4, 6-5, 6-7, 6-8, 6-9, 6-10, 6-11, 6-12, 6-13, 6-14, 6-15, 6-16, 7-1, 7-2, 7-3, 7-4, 7-5, 7-6, 7-8, 7-9, 7-10, 7-11, 7-12, 7-13, 7-14, 7-15, 7-16, 8-1, 8-2, 8-3, 8-4, 8-5, 8-6, 8-7, 8-9, 8-10, 8-11, 8-12, 8-13, 8-14, 8-15, 8-16, 9-1, 9-2, 9-3, 9-4, 9-5, 9-6, 9-7, 9-8, 9-10, 9-11, 9-12, 9-13, 9-14, 9-15, 9-16, 10-1, 10-2, 10-3, 10-4, 10-5, 10-6, 10-7, 10-8, 10-9, 10-11, 10-12, 10-13, 10-14, 10-15, 10-16, 11-1, 11-2, 11-3, 11-4, 11-5, 11-6, 11-7, 11-8, 11-9, 11-10, 11-12, 11-13, 11-14, 11-15, 11-16, 12-1, 12-2, 12-3, 12-4, 12-5, 12-6, 12-7, 12-8, 12-9, 12-10, 12-11, 12-13, 12-14, 12-15, 12-16, 13-1, 13-2, 13-3, 13-4, 13-5, 13-6, 13-7, 13-8, 13-9, 13-10, 13-11, 13-12, 13-14, 13-15, 13-16, 14-1, 14-2, 14-3, 14-4, 14-5, 14-6, 14-7, 14-8, 14-9, 14-10, 14-11, 14-12, 14-13, 14-15, 14-16, 15-1, 15-2, 15-3, 15-4, 15-5, 15-6, 15-7, 15-8, 15-9, 15-10, 15-11, 15-12, 15-13, 15-14, 15-16, 16-1, 16-2, 16-3, 16-4, 16-5, 16-6, 16-7, 16-8, 16-9, 16-10, 16-11, 16-12, 16-13, 16-14, 16-15]
-----------------------------------------------------
Dorian Feyerer
  • 258
  • 5
  • 14