From ab5f566f73f9f3f6b240123c847be01a9e3b7790 Mon Sep 17 00:00:00 2001 From: cogmission Date: Tue, 4 Oct 2016 20:34:27 -0500 Subject: [PATCH 1/7] Added new Topology implementation and tests --- .../nupic/util/AbstractFlatMatrix.java | 2 +- .../org/numenta/nupic/util/ArrayUtils.java | 50 +++ .../org/numenta/nupic/util/Coordinator.java | 132 +++++++ .../org/numenta/nupic/util/Generator.java | 19 + .../org/numenta/nupic/util/IntGenerator.java | 81 ++-- .../java/org/numenta/nupic/util/Topology.java | 165 +++++++++ .../numenta/nupic/util/ArrayUtilsTest.java | 31 ++ .../numenta/nupic/util/IntGeneratorTest.java | 42 +++ .../org/numenta/nupic/util/TopologyTest.java | 345 ++++++++++++++++++ 9 files changed, 844 insertions(+), 23 deletions(-) create mode 100644 src/main/java/org/numenta/nupic/util/Coordinator.java create mode 100644 src/main/java/org/numenta/nupic/util/Topology.java create mode 100644 src/test/java/org/numenta/nupic/util/TopologyTest.java diff --git a/src/main/java/org/numenta/nupic/util/AbstractFlatMatrix.java b/src/main/java/org/numenta/nupic/util/AbstractFlatMatrix.java index 7cd4019c..b9e42124 100644 --- a/src/main/java/org/numenta/nupic/util/AbstractFlatMatrix.java +++ b/src/main/java/org/numenta/nupic/util/AbstractFlatMatrix.java @@ -1,6 +1,6 @@ /* --------------------------------------------------------------------- * Numenta Platform for Intelligent Computing (NuPIC) - * Copyright (C) 2014, Numenta, Inc. Unless you have an agreement + * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement * with Numenta, Inc., for a separate license for this software code, the * following terms and conditions apply: * diff --git a/src/main/java/org/numenta/nupic/util/ArrayUtils.java b/src/main/java/org/numenta/nupic/util/ArrayUtils.java index 2e008ba1..4483c162 100644 --- a/src/main/java/org/numenta/nupic/util/ArrayUtils.java +++ b/src/main/java/org/numenta/nupic/util/ArrayUtils.java @@ -507,6 +507,56 @@ public static List zip(List arg1, List arg2) { return tuples; } + /** + * Return a list of tuples, where each tuple contains the i-th element + * from each of the argument sequences. The returned list is + * truncated in length to the length of the shortest argument sequence. + * + * @param args the array of Objects to be wrapped in {@link Tuple}s + * @return a list of tuples + */ + public static List zip(List... args) { + List tuples = new ArrayList(); + + int min = Arrays.stream(args).mapToInt(i -> i.size()).min().orElse(0); + + int len = args.length; + for(int j = 0;j < min;j++) { + MutableTuple mt = new MutableTuple(len); + for (int i = 0; i < len; i++) { + mt.set(i, args[i].get(j)); + } + tuples.add(mt); + } + + return tuples; + } + + /** + * Return a list of tuples, where each tuple contains the i-th element + * from each of the argument sequences. The returned list is + * truncated in length to the length of the shortest argument sequence. + * + * @param args the array of Objects to be wrapped in {@link Tuple}s + * @return a list of tuples + */ + public static List zip(int[]... args) { + List tuples = new ArrayList(); + + int min = Arrays.stream(args).mapToInt(i -> i.length).min().orElse(0); + + int len = args.length; + for(int j = 0;j < min;j++) { + MutableTuple mt = new MutableTuple(len); + for (int i = 0; i < len; i++) { + mt.set(i, args[i][j]); + } + tuples.add(mt); + } + + return tuples; + } + /** * Return a list of tuples, where each tuple contains the i-th element * from each of the argument sequences. The returned list is diff --git a/src/main/java/org/numenta/nupic/util/Coordinator.java b/src/main/java/org/numenta/nupic/util/Coordinator.java new file mode 100644 index 00000000..79e5a82e --- /dev/null +++ b/src/main/java/org/numenta/nupic/util/Coordinator.java @@ -0,0 +1,132 @@ +/* --------------------------------------------------------------------- + * Numenta Platform for Intelligent Computing (NuPIC) + * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement + * with Numenta, Inc., for a separate license for this software code, the + * following terms and conditions apply: + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see http://www.gnu.org/licenses. + * + * http://numenta.org/licenses/ + * --------------------------------------------------------------------- + */ +package org.numenta.nupic.util; + +import java.io.Serializable; + +/** + * Specializes in handling coordinate transforms for N-dimensional + * integer arrays, between flat and coordinate indexing. + * + * @author cogmission + * @see Topology + */ +public class Coordinator implements Serializable { + /** keep it simple */ + private static final long serialVersionUID = 1L; + + protected int[] dimensions; + protected int[] dimensionMultiples; + protected boolean isColumnMajor; + protected int numDimensions; + + /** + * Constructs a new {@link Coordinator} object to be configured with specified + * dimensions and major ordering. + * @param shape the dimensions of this matrix + */ + public Coordinator(int[] shape) { + this(shape, false); + } + + /** + * Constructs a new {@link Coordinator} object to be configured with specified + * dimensions and major ordering. + * + * @param shape the dimensions of this sparse array + * @param useColumnMajorOrdering flag indicating whether to use column ordering or + * row major ordering. if false (the default), then row + * major ordering will be used. If true, then column major + * ordering will be used. + */ + public Coordinator(int[] shape, boolean useColumnMajorOrdering) { + this.dimensions = shape; + this.numDimensions = shape.length; + this.dimensionMultiples = initDimensionMultiples( + useColumnMajorOrdering ? reverse(shape) : shape); + isColumnMajor = useColumnMajorOrdering; + } + + /** + * Returns a flat index computed from the specified coordinates + * which represent a "dimensioned" index. + * + * @param coordinates an array of coordinates + * @return a flat index + */ + public int computeIndex(int[] coordinates) { + int[] localMults = isColumnMajor ? reverse(dimensionMultiples) : dimensionMultiples; + int base = 0; + for(int i = 0;i < coordinates.length;i++) { + base += (localMults[i] * coordinates[i]); + } + return base; + } + + /** + * Returns an array of coordinates calculated from + * a flat index. + * + * @param index specified flat index + * @return a coordinate array + */ + public int[] computeCoordinates(int index) { + int[] returnVal = new int[numDimensions]; + int base = index; + for(int i = 0;i < dimensionMultiples.length; i++) { + int quotient = base / dimensionMultiples[i]; + base %= dimensionMultiples[i]; + returnVal[i] = quotient; + } + return isColumnMajor ? reverse(returnVal) : returnVal; + } + + /** + * Initializes internal helper array which is used for multidimensional + * index computation. + * @param dimensions matrix dimensions + * @return array for use in coordinates to flat index computation. + */ + protected int[] initDimensionMultiples(int[] dimensions) { + int holder = 1; + int len = dimensions.length; + int[] dimensionMultiples = new int[numDimensions]; + for(int i = 0;i < len;i++) { + holder *= (i == 0 ? 1 : dimensions[len - i]); + dimensionMultiples[len - 1 - i] = holder; + } + return dimensionMultiples; + } + + /** + * Reverses the specified array. + * @param input + * @return + */ + public static int[] reverse(int[] input) { + int[] retVal = new int[input.length]; + for(int i = input.length - 1, j = 0;i >= 0;i--, j++) { + retVal[j] = input[i]; + } + return retVal; + } +} diff --git a/src/main/java/org/numenta/nupic/util/Generator.java b/src/main/java/org/numenta/nupic/util/Generator.java index 9f1a7dbc..02f3a1f5 100644 --- a/src/main/java/org/numenta/nupic/util/Generator.java +++ b/src/main/java/org/numenta/nupic/util/Generator.java @@ -5,6 +5,25 @@ import java.util.List; public interface Generator extends Iterator, Iterable, Serializable { + /** + * Returns the value returned by the last call to {@link #next()} + * or the initial value if no previous call to {@code #next()} was made. + * @return + */ + default int get() { return -1; } + + /** + * Returns the configured size or distance between the initialized + * upper and lower bounds. + * @return + */ + default int size() { return -1; } + + /** + * Returns the state of this generator to its initial state so + * that it can be reused. + */ + default void reset() {} /** * Returns a flag indicating whether another iteration diff --git a/src/main/java/org/numenta/nupic/util/IntGenerator.java b/src/main/java/org/numenta/nupic/util/IntGenerator.java index c472f043..692165b3 100644 --- a/src/main/java/org/numenta/nupic/util/IntGenerator.java +++ b/src/main/java/org/numenta/nupic/util/IntGenerator.java @@ -5,7 +5,62 @@ * * @author cogmission */ -public class IntGenerator { +public class IntGenerator implements Generator { + /** serial version */ + private static final long serialVersionUID = 1L; + + protected int _i; + protected int lower; + protected int upper; + + public IntGenerator(int lower, int upper) { + this.lower = lower; + this._i = this.lower; + this.upper = upper; + } + + /** + * Returns the value returned by the last call to {@link #next()} + * or the initial value if no previous call to {@code #next()} was made. + * @return + */ + public int get() { + return _i; + } + + /** + * Returns the configured size or distance between the initialized + * upper and lower bounds. + * @return + */ + public int size() { + return upper - lower; + } + + /** + * Returns the state of this generator to its initial state so + * that it can be reused. + */ + public void reset() { + this._i = lower; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer next() { + int retVal = _i; + _i = ++_i > upper ? upper : _i; + return retVal; + } + + /** + * {@inheritDoc} + */ + @Override + public boolean hasNext() { return _i < upper; } + /** * Returns a {@link Generator} which returns integers between * the values specified (lower inclusive, upper exclusive) @@ -13,26 +68,8 @@ public class IntGenerator { * @param upper the upper bounds (exclusive) * @return */ - public static Generator of(int lower, int upper) { - return new Generator() { - /** serial version */ - private static final long serialVersionUID = 1L; - - int i = lower; - - /** - * {@inheritDoc} - */ - @Override - public Integer next() { - return i++; - } - - /** - * {@inheritDoc} - */ - @Override - public boolean hasNext() { return i < upper; } - }; + public static IntGenerator of(int lower, int upper) { + return new IntGenerator(lower, upper); } } + diff --git a/src/main/java/org/numenta/nupic/util/Topology.java b/src/main/java/org/numenta/nupic/util/Topology.java new file mode 100644 index 00000000..7096659b --- /dev/null +++ b/src/main/java/org/numenta/nupic/util/Topology.java @@ -0,0 +1,165 @@ +/* --------------------------------------------------------------------- + * Numenta Platform for Intelligent Computing (NuPIC) + * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement + * with Numenta, Inc., for a separate license for this software code, the + * following terms and conditions apply: + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see http://www.gnu.org/licenses. + * + * http://numenta.org/licenses/ + * --------------------------------------------------------------------- + */ +package org.numenta.nupic.util; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.IntStream; + +import gnu.trove.list.TIntList; +import gnu.trove.list.array.TIntArrayList; + + +public class Topology extends Coordinator implements Serializable { + /** keep it simple */ + private static final long serialVersionUID = 1L; + + private IntGenerator[] igs; + private int[] centerPosition; + + + /** + * Constructs a new {@link AbstractFlatMatrix} object to be configured with specified + * dimensions and major ordering. + * @param shape the dimensions of this matrix + */ + public Topology(int... shape) { + super(shape, false); + } + + /** + * Translate an index into coordinates, using the given coordinate system. + * + * @param index The index of the point. The coordinates are expressed as a single index by + * using the dimensions as a mixed radix definition. For example, in dimensions + * 42x10, the point [1, 4] is index 1*420 + 4*10 = 460. + * @return A array of coordinates of length len(dimensions). + */ + public int[] coordinatesFromIndex(int index) { + return computeCoordinates(index); + } + + /** + * Translate coordinates into an index, using the given coordinate system. + * + * @param coordinates A array of coordinates of length dimensions.size(). + * @param shape The coordinate system. + * @return The index of the point. The coordinates are expressed as a single index by + * using the dimensions as a mixed radix definition. For example, in dimensions + * 42x10, the point [1, 4] is index 1*420 + 4*10 = 460. + */ + public int indexFromCoordinates(int... coordinates) { + return computeIndex(coordinates); + } + + /** + * Get the points in the neighborhood of a point. + * + * A point's neighborhood is the n-dimensional hypercube with sides ranging + * [center - radius, center + radius], inclusive. For example, if there are two + * dimensions and the radius is 3, the neighborhood is 6x6. Neighborhoods are + * truncated when they are near an edge. + * + * @param centerIndex The index of the point. The coordinates are expressed as a single index by + * using the dimensions as a mixed radix definition. For example, in dimensions + * 42x10, the point [1, 4] is index 1*420 + 4*10 = 460. + * @param radius The radius of this neighborhood about the centerIndex. + * @return The points in the neighborhood, including centerIndex. + */ + public int[] neighborhood(int centerIndex, int radius) { + centerPosition = coordinatesFromIndex(centerIndex); + + igs = IntStream.range(0, dimensions.length) + .mapToObj(i -> + IntGenerator.of(Math.max(0, centerPosition[i] - radius), + Math.min(dimensions[i] - 1, centerPosition[i] + radius) + 1)) + .toArray(IntGenerator[]::new); + + List result = new ArrayList<>(); + result.add(new TIntArrayList()); + List interim = new ArrayList<>(); + for(IntGenerator pool : igs) { + int size = result.size(); + interim.clear(); + interim.addAll(result); + result.clear(); + for(int x = 0;x < size;x++) { + TIntList lx = interim.get(x); + pool.reset(); + for(int y = 0;y < pool.size();y++) { + int py = pool.next(); + TIntArrayList tl = new TIntArrayList(); + tl.addAll(lx); + tl.add(py); + result.add(tl); + } + } + } + + return result.stream().mapToInt(tl -> indexFromCoordinates(tl.toArray())).toArray(); + } + + /** + * Like {@link #neighborhood(int, int)}, except that the neighborhood isn't truncated when it's + * near an edge. It wraps around to the other side. + * + * @param centerIndex The index of the point. The coordinates are expressed as a single index by + * using the dimensions as a mixed radix definition. For example, in dimensions + * 42x10, the point [1, 4] is index 1*420 + 4*10 = 460. + * @param radius The radius of this neighborhood about the centerIndex. + * @return The points in the neighborhood, including centerIndex. + */ + public int[] wrappingNeighborhood(int centerIndex, int radius) { + int[] cp = coordinatesFromIndex(centerIndex); + + IntGenerator[] igs = IntStream.range(0, dimensions.length) + .mapToObj(i -> + new IntGenerator(cp[i] - radius, + Math.min((cp[i] - radius) + dimensions[i] - 1, cp[i] + radius) + 1)) + .toArray(IntGenerator[]::new); + + List result = new ArrayList<>(); + result.add(new TIntArrayList()); + List interim = new ArrayList<>(); + for(int i = 0;i < igs.length;i++) { + IntGenerator pool = igs[i]; + int size = result.size(); + interim.clear(); + interim.addAll(result); + result.clear(); + for(int x = 0;x < size;x++) { + TIntList lx = interim.get(x); + pool.reset(); + for(int y = 0;y < pool.size();y++) { + int py = ArrayUtils.modulo(pool.next(), dimensions[i]); + TIntArrayList tl = new TIntArrayList(); + tl.addAll(lx); + tl.add(py); + result.add(tl); + } + } + } + + return result.stream().mapToInt(tl -> indexFromCoordinates(tl.toArray())).toArray(); + } +} diff --git a/src/test/java/org/numenta/nupic/util/ArrayUtilsTest.java b/src/test/java/org/numenta/nupic/util/ArrayUtilsTest.java index 769c92b8..0195999c 100644 --- a/src/test/java/org/numenta/nupic/util/ArrayUtilsTest.java +++ b/src/test/java/org/numenta/nupic/util/ArrayUtilsTest.java @@ -401,6 +401,37 @@ public void testTo1d() { assertTrue(Arrays.equals(expectedia, ArrayUtils.to1D(ia))); } + @Test + public void testZip_ArrayOfLists() { + Cell cell0 = new Cell(new Column(1, 0), 0); + Cell cell1 = new Cell(new Column(1, 1), 1); + List o1 = Arrays.asList(new Cell[] { cell0, cell1 }); + List o2 = Arrays.asList(new Integer[] { new Integer(1), new Integer(2) }); + List o3 = Arrays.asList(new Double[] { 2.3, 4.5 }); + + List zipped = ArrayUtils.zip(o1, o2, o3); + assertEquals(2, zipped.size()); + assertTrue(zipped.get(0).get(0) instanceof Cell && zipped.get(0).get(1) instanceof Integer); + assertTrue(zipped.get(0).get(0).equals(cell0) && zipped.get(0).get(1).equals(new Integer(1)) && zipped.get(0).get(2).equals(new Double(2.3))); + assertTrue(zipped.get(1).get(0).equals(cell1) && zipped.get(1).get(1).equals(new Integer(2)) && zipped.get(1).get(2).equals(new Double(4.5))); + + // Negative tests + assertFalse(zipped.get(0).get(0).equals(cell0) && zipped.get(0).get(1).equals(new Integer(2))); // Bad Integer + assertFalse(zipped.get(1).get(0).equals(cell0) && zipped.get(1).get(1).equals(new Integer(2))); // Bad Cell + } + + @Test + public void testZip_ArrayOfIntArrays() { + int[] o1 = { 3, 4 }; + int[] o2 = { 5, 5 }; + int[] o3 = { -1, 7 }; + + List zipped = ArrayUtils.zip(o1, o2, o3); + assertEquals(2, zipped.size()); + assertTrue(Arrays.equals((int[])zipped.get(0).all().stream().mapToInt(i -> (int)i).toArray(), new int[] { 3, 5, -1 })); + assertTrue(Arrays.equals((int[])zipped.get(1).all().stream().mapToInt(i -> (int)i).toArray(), new int[] { 4, 5, 7 })); + } + @Test public void testZip() { Cell cell0 = new Cell(new Column(1, 0), 0); diff --git a/src/test/java/org/numenta/nupic/util/IntGeneratorTest.java b/src/test/java/org/numenta/nupic/util/IntGeneratorTest.java index 53209a33..3b8389e4 100644 --- a/src/test/java/org/numenta/nupic/util/IntGeneratorTest.java +++ b/src/test/java/org/numenta/nupic/util/IntGeneratorTest.java @@ -67,4 +67,46 @@ public void testIntegerGenerator_SpecifyNext() { assertTrue(generator.next() == 30); assertFalse(generator.hasNext()); } + + @Test + public void testGet() { + IntGenerator generator = IntGenerator.of(0, 31); + assertEquals(0, generator.get()); + assertEquals(0, (int)generator.next()); + assertEquals(1, generator.get()); + assertEquals(1, generator.get()); + assertEquals(1, (int)generator.next()); + assertEquals(2, (int)generator.next()); + assertEquals(3, generator.get()); + } + + @Test + public void testSize() { + IntGenerator generator = IntGenerator.of(-4, -4); + assertEquals(0, generator.size()); + assertEquals(-4, (int)generator.next()); + assertEquals(-4, (int)generator.next()); + assertFalse(generator.hasNext()); + } + + @Test + public void testReset() { + IntGenerator generator = IntGenerator.of(0, 31); + assertEquals(0, generator.get()); + assertEquals(0, (int)generator.next()); + assertEquals(1, generator.get()); + assertEquals(1, generator.get()); + assertEquals(1, (int)generator.next()); + assertEquals(2, (int)generator.next()); + assertEquals(3, generator.get()); + + generator.reset(); + assertEquals(0, generator.get()); + assertEquals(0, (int)generator.next()); + assertEquals(1, generator.get()); + assertEquals(1, generator.get()); + assertEquals(1, (int)generator.next()); + assertEquals(2, (int)generator.next()); + assertEquals(3, generator.get()); + } } diff --git a/src/test/java/org/numenta/nupic/util/TopologyTest.java b/src/test/java/org/numenta/nupic/util/TopologyTest.java new file mode 100644 index 00000000..cbc5c030 --- /dev/null +++ b/src/test/java/org/numenta/nupic/util/TopologyTest.java @@ -0,0 +1,345 @@ +/* --------------------------------------------------------------------- + * Numenta Platform for Intelligent Computing (NuPIC) + * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement + * with Numenta, Inc., for a separate license for this software code, the + * following terms and conditions apply: + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see http://www.gnu.org/licenses. + * + * http://numenta.org/licenses/ + * --------------------------------------------------------------------- + */ +package org.numenta.nupic.util; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +public class TopologyTest { + + @Test + public void testIndexFromCoordinates() { + Topology t = new Topology(new int[] { 100 }); + assertEquals(0, t.indexFromCoordinates(new int[] { 0 })); + assertEquals(50, t.indexFromCoordinates(new int[] { 50 })); + assertEquals(99, t.indexFromCoordinates(new int[] { 99 })); + + t = new Topology(new int[] { 100, 80 }); + assertEquals(0, t.indexFromCoordinates(new int[] { 0, 0 })); + assertEquals(10, t.indexFromCoordinates(new int[] { 0, 10 })); + assertEquals(80, t.indexFromCoordinates(new int[] { 1, 0 })); + assertEquals(90, t.indexFromCoordinates(new int[] { 1, 10 })); + + t = new Topology(new int[] { 100, 10, 8 }); + assertEquals(0, t.indexFromCoordinates(new int[] { 0, 0, 0 })); + assertEquals(7, t.indexFromCoordinates(new int[] { 0, 0, 7 })); + assertEquals(8, t.indexFromCoordinates(new int[] { 0, 1, 0 })); + assertEquals(80, t.indexFromCoordinates(new int[] { 1, 0, 0 })); + assertEquals(88, t.indexFromCoordinates(new int[] { 1, 1, 0 })); + assertEquals(89, t.indexFromCoordinates(new int[] { 1, 1, 1 })); + } + + @Test + public void testCoordinateFromIndex() { + Topology t = new Topology(new int[] { 100 }); + assertArrayEquals(new int[] { 0 }, t.coordinatesFromIndex(0)); + assertArrayEquals(new int[] { 50 }, t.coordinatesFromIndex(50)); + assertArrayEquals(new int[] { 99 }, t.coordinatesFromIndex(99)); + + t = new Topology(new int[] { 100, 80 }); + assertArrayEquals(new int[] { 0, 0 }, t.coordinatesFromIndex(0)); + assertArrayEquals(new int[] { 0, 10 }, t.coordinatesFromIndex(10)); + assertArrayEquals(new int[] { 1, 0 }, t.coordinatesFromIndex(80)); + assertArrayEquals(new int[] { 1, 10 }, t.coordinatesFromIndex(90)); + + t = new Topology(new int[] { 100, 10, 8 }); + assertArrayEquals(new int[] { 0, 0, 0 }, t.coordinatesFromIndex(0)); + assertArrayEquals(new int[] { 0, 0, 7 }, t.coordinatesFromIndex(7)); + assertArrayEquals(new int[] { 0, 1, 0 }, t.coordinatesFromIndex(8)); + assertArrayEquals(new int[] { 1, 0, 0 }, t.coordinatesFromIndex(80)); + assertArrayEquals(new int[] { 1, 1, 0 }, t.coordinatesFromIndex(88)); + assertArrayEquals(new int[] { 1, 1, 1 }, t.coordinatesFromIndex(89)); + } + + + ///////////////////////////////////////// + // NEIGHBORHOOD // + ///////////////////////////////////////// + + private void expectNeighborhoodIndices(Topology t, int[] centerCoords, int radius, int[] expected) { + int centerIndex = t.indexFromCoordinates(centerCoords); + + int numIndices = 0; + int index = 0; + for(int actual : t.neighborhood(centerIndex, radius)) { + numIndices++; + assertEquals(expected[index], actual); + index++; + } + + assertEquals(expected.length, numIndices); + } + + private void expectNeighborhoodCoords(Topology t, int[] centerCoords, int radius, int[]... expected) { + int centerIndex = t.indexFromCoordinates(centerCoords); + + int numIndices = 0; + + int index = 0; + for(int actual : t.neighborhood(centerIndex, radius)) { + numIndices++; + assertEquals(t.indexFromCoordinates(expected[index]), actual); + index++; + } + + assertEquals(expected.length, numIndices); + } + + @Test + public void testNeighborhoodOfOrigin1D() { + Topology t = new Topology(100); + int radius = 2; + int[] expected = { 0, 1, 2 }; + expectNeighborhoodIndices(t, new int[] { 0 }, radius, expected); + } + + @Test + public void testNeighborhoodOfOrigin2D() { + Topology t = new Topology(100, 80); + int radius = 2; + int[][] expected = + {{ 0, 0 }, { 0, 1 }, { 0, 2 }, + {1, 0 }, { 1, 1 }, { 1, 2 }, + {2, 0 }, { 2, 1 }, { 2, 2 }}; + expectNeighborhoodCoords(t, new int[] { 0, 0 }, radius, expected); + } + + @Test + public void testNeighborhoodOfOrigin3D() { + Topology t = new Topology(100, 80, 60); + int radius = 1; + int[][] expected = + {{ 0, 0, 0 }, { 0, 0, 1 }, + { 0, 1, 0 }, { 0, 1, 1 }, + { 1, 0, 0 }, { 1, 0, 1 }, + { 1, 1, 0 }, { 1, 1, 1 }}; + expectNeighborhoodCoords(t, new int[] { 0, 0, 0 }, radius, expected); + } + + @Test + public void testNeighborhoodInMiddle1D() { + Topology t = new Topology(100); + int radius = 1; + int[] expected = + { 49, 50, 51}; + expectNeighborhoodIndices(t, new int[] { 50 }, radius, expected); + } + + @Test + public void testNeighborhoodOfMiddle2D() { + Topology t = new Topology(100, 80); + int radius = 1; + int[][] expected = + {{ 49, 49 }, { 49, 50 }, { 49, 51 }, + { 50, 49 }, { 50, 50 }, { 50, 51 }, + { 51, 49 }, { 51, 50 }, { 51, 51 }}; + expectNeighborhoodCoords(t, new int[] { 50, 50 }, radius, expected); + } + + @Test + public void testNeighborhoodOfEnd2D() { + Topology t = new Topology(100, 80); + int radius = 2; + int[][] expected = + {{ 97, 77 }, { 97, 78 }, { 97, 79 }, + { 98, 77 }, { 98, 78 }, { 98, 79 }, + { 99, 77 }, { 99, 78 }, { 99, 79 }}; + expectNeighborhoodCoords(t, new int[] { 99, 79 }, radius, expected); + } + + @Test + public void testNeighborhoodWiderThanWorld() { + Topology t = new Topology(3, 2); + int radius = 3; + int[][] expected = + {{ 0, 0 }, { 0, 1 }, + { 1, 0 }, { 1, 1 }, + { 2, 0 }, { 2, 1 }}; + expectNeighborhoodCoords(t, new int[] { 0, 0 }, radius, expected); + } + + @Test + public void testNeighborhoodRadiusZero() { + Topology t = new Topology(100); + int radius = 0; + int[] expected = + { 0 }; + expectNeighborhoodIndices(t, new int[] { 0 }, radius, expected); + + t = new Topology(100, 80); + radius = 0; + int[][] expected2D = + {{ 0, 0 }}; + expectNeighborhoodCoords(t, new int[] { 0, 0 }, radius, expected2D); + + t = new Topology(100, 80, 60); + radius = 0; + expected2D = + new int[][] {{ 0, 0, 0 }}; + expectNeighborhoodCoords(t, new int[] { 0, 0, 0 }, radius, expected2D); + } + + @Test + public void testNeighborhoodDimensionOne() { + Topology t = new Topology(10, 1); + int radius = 1; + int[][] expected = { { 4, 0 }, { 5, 0 }, { 6, 0 }}; + expectNeighborhoodCoords(t, new int[] { 5, 0 }, radius, expected); + + t = new Topology(10, 1, 1); + radius = 1; + expected = new int[][] { { 4, 0, 0 }, { 5, 0, 0 }, { 6, 0, 0 }}; + expectNeighborhoodCoords(t, new int[] { 5, 0, 0 }, radius, expected); + } + + + ///////////////////////////////////////// + // WRAPPING NEIGHBORHOOD // + ///////////////////////////////////////// + + private void expectWrappingNeighborhoodIndices(Topology t, int[] centerCoords, int radius, int[] expected) { + int centerIndex = t.indexFromCoordinates(centerCoords); + + int numIndices = 0; + int index = 0; + for(int actual : t.wrappingNeighborhood(centerIndex, radius)) { + numIndices++; + assertEquals(expected[index], actual); + index++; + } + + assertEquals(expected.length, numIndices); + } + + private void expectWrappingNeighborhoodCoords(Topology t, int[] centerCoords, int radius, int[]... expected) { + int centerIndex = t.indexFromCoordinates(centerCoords); + + int numIndices = 0; + + int index = 0; + for(int actual : t.wrappingNeighborhood(centerIndex, radius)) { + numIndices++; + assertEquals(t.indexFromCoordinates(expected[index]), actual); + index++; + } + + assertEquals(expected.length, numIndices); + } + + @Test + public void testWrappingNeighborhoodOfOrigin1D() { + Topology t = new Topology(100); + int radius = 1; + int[] expected = { 99, 0, 1 }; + expectWrappingNeighborhoodIndices(t, new int[] { 0 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodOfOrigin2D() { + Topology t = new Topology(100, 80); + int radius = 1; + int[][] expected = {{ 99, 79 }, { 99, 0 }, { 99, 1 }, + { 0, 79 }, { 0, 0 }, { 0, 1 }, + { 1, 79 }, { 1, 0 }, { 1, 1 }}; + expectWrappingNeighborhoodCoords(t, new int[] { 0, 0 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodOfOrigin3D() { + Topology t = new Topology(100, 80, 60); + int radius = 1; + int[][] expected = {{99, 79, 59}, {99, 79, 0}, {99, 79, 1}, + {99, 0, 59}, {99, 0, 0}, {99, 0, 1}, + {99, 1, 59}, {99, 1, 0}, {99, 1, 1}, + {0, 79, 59}, {0, 79, 0}, {0, 79, 1}, + {0, 0, 59}, {0, 0, 0}, {0, 0, 1}, + {0, 1, 59}, {0, 1, 0}, {0, 1, 1}, + {1, 79, 59}, {1, 79, 0}, {1, 79, 1}, + {1, 0, 59}, {1, 0, 0}, {1, 0, 1}, + {1, 1, 59}, {1, 1, 0}, {1, 1, 1}}; + expectWrappingNeighborhoodCoords(t, new int[] { 0, 0, 0 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodInMiddle1D() { + Topology t = new Topology(100); + int radius = 1; + int[] expected = { 49, 50, 51 }; + expectWrappingNeighborhoodIndices(t, new int[] { 50 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodOfMiddle2D() { + Topology t = new Topology(100, 80); + int radius = 1; + int[][] expected = {{49, 49}, {49, 50}, {49, 51}, + {50, 49}, {50, 50}, {50, 51}, + {51, 49}, {51, 50}, {51, 51}}; + expectWrappingNeighborhoodCoords(t, new int[] { 50, 50 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodOfEnd2D() { + Topology t = new Topology(100, 80); + int radius = 1; + int[][] expected = {{98, 78}, {98, 79}, {98, 0}, + {99, 78}, {99, 79}, {99, 0}, + {0, 78}, {0, 79}, {0, 0}}; + expectWrappingNeighborhoodCoords(t, new int[] { 99, 79 }, radius, expected); + } + + @Test + public void testWrappingNeighborhoodRadiusZero() { + Topology t = new Topology(100); + int radius = 0; + int[] expected = + { 0 }; + expectWrappingNeighborhoodIndices(t, new int[] { 0 }, radius, expected); + + t = new Topology(100, 80); + radius = 0; + int[][] expected2D = + {{ 0, 0 }}; + expectWrappingNeighborhoodCoords(t, new int[] { 0, 0 }, radius, expected2D); + + t = new Topology(100, 80, 60); + radius = 0; + expected2D = + new int[][] {{ 0, 0, 0 }}; + expectWrappingNeighborhoodCoords(t, new int[] { 0, 0, 0 }, radius, expected2D); + } + + @Test + public void testWrappingNeighborhoodDimensionOne() { + Topology t = new Topology(10, 1); + int radius = 1; + int[][] expected = { { 4, 0 }, { 5, 0 }, { 6, 0 }}; + expectWrappingNeighborhoodCoords(t, new int[] { 5, 0 }, radius, expected); + + t = new Topology(10, 1, 1); + radius = 1; + expected = new int[][] { { 4, 0, 0 }, { 5, 0, 0 }, { 6, 0, 0 }}; + expectWrappingNeighborhoodCoords(t, new int[] { 5, 0, 0 }, radius, expected); + } +} From bd3677c3ca077a2ac3f63b450033de6123303e10 Mon Sep 17 00:00:00 2001 From: cogmission Date: Tue, 4 Oct 2016 20:52:01 -0500 Subject: [PATCH 2/7] Added wrapAround parameter for new SP --- build.gradle | 3 ++- .../java/org/numenta/nupic/Connections.java | 25 +++++++++++++++++-- .../java/org/numenta/nupic/Parameters.java | 3 ++- .../org/numenta/nupic/ConnectionsTest.java | 2 +- .../org/numenta/nupic/ParametersTest.java | 4 +-- 5 files changed, 30 insertions(+), 7 deletions(-) diff --git a/build.gradle b/build.gradle index 76614cdf..7fc84fc5 100644 --- a/build.gradle +++ b/build.gradle @@ -33,10 +33,11 @@ test { } // UNCOMMENT TO SEE STANDARD_OUT & STANDARD_ERR DURING BUILD - +/* test { testLogging.showStandardStreams = true } +*/ dependencies { compile group: 'joda-time', name: 'joda-time', version: '2.5' diff --git a/src/main/java/org/numenta/nupic/Connections.java b/src/main/java/org/numenta/nupic/Connections.java index 91bd06d4..567e9c9c 100644 --- a/src/main/java/org/numenta/nupic/Connections.java +++ b/src/main/java/org/numenta/nupic/Connections.java @@ -92,6 +92,7 @@ public class Connections implements Persistable { private double predictedSegmentDecrement = 0.0; private int dutyCyclePeriod = 1000; private double maxBoost = 10.0; + private boolean wrapAround = true; private int numInputs = 1; //product of input dimensions private int numColumns = 1; //product of column dimensions @@ -950,6 +951,25 @@ public double getMaxBoost() { return maxBoost; } + /** + * Specifies whether neighborhoods wider than the + * borders wrap around to the other side. + * @param b + */ + public void setWrapAround(boolean b) { + this.wrapAround = b; + } + + /** + * Returns a flag indicating whether neighborhoods + * wider than the borders, wrap around to the other + * side. + * @return + */ + public boolean isWrapAround() { + return wrapAround; + } + /** * Sets and Returns the boosted overlap score for each column * @param boostedOverlaps @@ -2294,9 +2314,10 @@ public String getPrintString() { pw.println("synPermConnected = " + getSynPermConnected()); pw.println("synPermBelowStimulusInc = " + getSynPermBelowStimulusInc()); pw.println("synPermTrimThreshold = " + getSynPermTrimThreshold()); - pw.println("minPctOverlapDutyCycles = " + getMinPctOverlapDutyCycles()); - pw.println("minPctActiveDutyCycles = " + getMinPctActiveDutyCycles()); + pw.println("minPctOverlapDutyCycles = " + getMinPctOverlapDutyCycles()); + pw.println("minPctActiveDutyCycles = " + getMinPctActiveDutyCycles()); pw.println("dutyCyclePeriod = " + getDutyCyclePeriod()); + pw.println("wrapAround = " + isWrapAround()); pw.println("maxBoost = " + getMaxBoost()); pw.println("version = " + getVersion()); diff --git a/src/main/java/org/numenta/nupic/Parameters.java b/src/main/java/org/numenta/nupic/Parameters.java index d2ed2e15..0c858be4 100644 --- a/src/main/java/org/numenta/nupic/Parameters.java +++ b/src/main/java/org/numenta/nupic/Parameters.java @@ -113,6 +113,7 @@ public class Parameters implements Persistable { defaultSpatialParams.put(KEY.MIN_PCT_ACTIVE_DUTY_CYCLES, 0.001); defaultSpatialParams.put(KEY.DUTY_CYCLE_PERIOD, 1000); defaultSpatialParams.put(KEY.MAX_BOOST, 10.0); + defaultSpatialParams.put(KEY.WRAP_AROUND, true); defaultSpatialParams.put(KEY.LEARN, true); DEFAULTS_SPATIAL = Collections.unmodifiableMap(defaultSpatialParams); defaultParams.putAll(DEFAULTS_SPATIAL); @@ -245,7 +246,7 @@ public static enum KEY { MIN_PCT_ACTIVE_DUTY_CYCLES("minPctActiveDutyCycles", Double.class),//TODO add range here? DUTY_CYCLE_PERIOD("dutyCyclePeriod", Integer.class),//TODO add range here? MAX_BOOST("maxBoost", Double.class), //TODO add range here? - //SP_VERBOSITY("spVerbosity", Integer.class, 0, 10), + WRAP_AROUND("wrapAround", Boolean.class), ///////////// SpatialPooler / Network Parameter(s) ///////////// /** Number of cycles to send through the SP before forwarding data to the rest of the network. */ diff --git a/src/test/java/org/numenta/nupic/ConnectionsTest.java b/src/test/java/org/numenta/nupic/ConnectionsTest.java index 8cb18589..8df6f34f 100644 --- a/src/test/java/org/numenta/nupic/ConnectionsTest.java +++ b/src/test/java/org/numenta/nupic/ConnectionsTest.java @@ -589,7 +589,7 @@ public void testGetPrintString() { TemporalMemory.init(con); String output = con.getPrintString(); - assertEquals(1371, output.length()); + assertEquals(1403, output.length()); Set fieldSet = Parameters.getEncoderDefaultParameters().keys().stream(). map(k -> k.getFieldName()).collect(Collectors.toCollection(LinkedHashSet::new)); diff --git a/src/test/java/org/numenta/nupic/ParametersTest.java b/src/test/java/org/numenta/nupic/ParametersTest.java index 1339bf89..db08eb58 100644 --- a/src/test/java/org/numenta/nupic/ParametersTest.java +++ b/src/test/java/org/numenta/nupic/ParametersTest.java @@ -244,13 +244,13 @@ public void testCheckRange() { @Test public void testSize() { Parameters params = Parameters.getAllDefaultParameters(); - assertEquals(47, params.size()); + assertEquals(48, params.size()); } @Test public void testKeys() { Parameters params = Parameters.getAllDefaultParameters(); - assertTrue(params.keys() != null && params.keys().size() == 47); + assertTrue(params.keys() != null && params.keys().size() == 48); } @Test From 2cdcee1fcc5f6c18c2c48b4b553c49879c1256bb Mon Sep 17 00:00:00 2001 From: cogmission Date: Wed, 5 Oct 2016 20:51:30 -0500 Subject: [PATCH 3/7] Ported new duty cycle, and new mapPotential methods and tests --- .../java/org/numenta/nupic/Connections.java | 53 +- .../nupic/algorithms/SpatialPooler.java | 260 +++--- .../org/numenta/nupic/util/ArrayUtils.java | 22 + .../nupic/algorithms/SpatialPoolerTest.java | 757 +++++++++--------- 4 files changed, 604 insertions(+), 488 deletions(-) diff --git a/src/main/java/org/numenta/nupic/Connections.java b/src/main/java/org/numenta/nupic/Connections.java index 567e9c9c..02c8e2bd 100644 --- a/src/main/java/org/numenta/nupic/Connections.java +++ b/src/main/java/org/numenta/nupic/Connections.java @@ -56,6 +56,7 @@ import org.numenta.nupic.util.FlatMatrix; import org.numenta.nupic.util.SparseMatrix; import org.numenta.nupic.util.SparseObjectMatrix; +import org.numenta.nupic.util.Topology; import org.numenta.nupic.util.Tuple; import org.numenta.nupic.util.UniversalRandom; @@ -112,7 +113,11 @@ public class Connections implements Persistable { public double[] boostedOverlaps; public int[] overlaps; - + + /** Manages input neighborhood transformations */ + private Topology inputTopology; + /** Manages column neighborhood transformations */ + private Topology columnTopology; /** A matrix representing the shape of the input. */ protected SparseMatrix inputMatrix; /** @@ -153,8 +158,8 @@ public class Connections implements Persistable { private double[] overlapDutyCycles; private double[] activeDutyCycles; - private double[] minOverlapDutyCycles; - private double[] minActiveDutyCycles; + private volatile double[] minOverlapDutyCycles; + private volatile double[] minActiveDutyCycles; private double[] boostFactors; /////////////////////////////////////// Temporal Memory Vars /////////////////////////////////////////// @@ -380,6 +385,44 @@ public void setMemory(SparseObjectMatrix mem) { public SparseObjectMatrix getMemory() { return memory; } + + /** + * Returns the {@link Topology} overseeing input + * neighborhoods. + * @return + */ + public Topology getInputTopology() { + return inputTopology; + } + + /** + * Sets the {@link Topology} overseeing input + * neighborhoods. + * + * @param topology the input Topology + */ + public void setInputTopology(Topology topology) { + this.inputTopology = topology; + } + + /** + * Returns the {@link Topology} overseeing {@link Column} + * neighborhoods. + * @return + */ + public Topology getColumnTopology() { + return columnTopology; + } + + /** + * Sets the {@link Topology} overseeing {@link Column} + * neighborhoods. + * + * @param topology the column Topology + */ + public void setColumnTopology(Topology topology) { + this.columnTopology = topology; + } /** * Returns the input column mapping @@ -1071,6 +1114,10 @@ public double[] getOverlapDutyCycles() { return overlapDutyCycles; } + /** + * Sets the overlap duty cycles + * @param overlapDutyCycles + */ public void setOverlapDutyCycles(double[] overlapDutyCycles) { this.overlapDutyCycles = overlapDutyCycles; } diff --git a/src/main/java/org/numenta/nupic/algorithms/SpatialPooler.java b/src/main/java/org/numenta/nupic/algorithms/SpatialPooler.java index 4e4646b9..d13cb3ab 100644 --- a/src/main/java/org/numenta/nupic/algorithms/SpatialPooler.java +++ b/src/main/java/org/numenta/nupic/algorithms/SpatialPooler.java @@ -21,10 +21,8 @@ */ package org.numenta.nupic.algorithms; -import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; -import java.util.List; import java.util.stream.IntStream; import org.numenta.nupic.Connections; @@ -36,7 +34,9 @@ import org.numenta.nupic.util.SparseBinaryMatrix; import org.numenta.nupic.util.SparseMatrix; import org.numenta.nupic.util.SparseObjectMatrix; +import org.numenta.nupic.util.Topology; +import gnu.trove.list.TIntList; import gnu.trove.list.array.TDoubleArrayList; import gnu.trove.list.array.TIntArrayList; import gnu.trove.set.hash.TIntHashSet; @@ -98,6 +98,10 @@ public void initMatrices(final Connections c) { mem = new SparseObjectMatrix<>(c.getColumnDimensions()) : mem); c.setInputMatrix(new SparseBinaryMatrix(c.getInputDimensions())); + + // Initiate the topologies + c.setColumnTopology(new Topology(c.getColumnDimensions())); + c.setInputTopology(new Topology(c.getInputDimensions())); //Calculate numInputs and numColumns int numInputs = c.getInputMatrix().getMaxIndex() + 1; @@ -143,7 +147,7 @@ public void connectAndConfigureInputs(Connections c) { // activated. int numColumns = c.getNumColumns(); for(int i = 0;i < numColumns;i++) { - int[] potential = mapPotential(c, i, true); + int[] potential = mapPotential(c, i, c.isWrapAround()); Column column = c.getColumn(i); c.getPotentialPools().set(i, column.createPotentialPool(c, potential)); double[] perm = initPermanence(c, potential, i, c.getInitConnectedPct()); @@ -242,7 +246,6 @@ public int[] stripUnlearnedColumns(Connections c, int[] activeColumns) { active.removeAll(aboveZero); TIntArrayList l = new TIntArrayList(active); l.sort(); - //return l; return Arrays.stream(activeColumns).filter(i -> c.getActiveDutyCycles()[i] > 0).toArray(); } @@ -287,17 +290,27 @@ public void updateMinDutyCyclesGlobal(Connections c) { * * @param c */ - public void updateMinDutyCyclesLocal(Connections c) { + public void updateMinDutyCyclesLocal(final Connections c) { int len = c.getNumColumns(); - for(int i = 0;i < len;i++) { - int[] maskNeighbors = getNeighborsND(c, i, c.getMemory(), c.getInhibitionRadius(), true).toArray(); - c.getMinOverlapDutyCycles()[i] = ArrayUtils.max( - ArrayUtils.sub(c.getOverlapDutyCycles(), maskNeighbors)) * - c.getMinPctOverlapDutyCycles(); - c.getMinActiveDutyCycles()[i] = ArrayUtils.max( - ArrayUtils.sub(c.getActiveDutyCycles(), maskNeighbors)) * - c.getMinPctActiveDutyCycles(); - } + int inhibitionRadius = c.getInhibitionRadius(); + double[] activeDutyCycles = c.getActiveDutyCycles(); + double minPctActiveDutyCycles = c.getMinPctActiveDutyCycles(); + double[] overlapDutyCycles = c.getOverlapDutyCycles(); + double minPctOverlapDutyCycles = c.getMinPctOverlapDutyCycles(); + + // Parallelize for speed up + IntStream.range(0, len).forEach(i -> { + int[] neighborhood = getColumnNeighborhood(c, i, inhibitionRadius); + + double maxActiveDuty = ArrayUtils.max( + ArrayUtils.sub(activeDutyCycles, neighborhood)); + double maxOverlapDuty = ArrayUtils.max( + ArrayUtils.sub(overlapDutyCycles, neighborhood)); + + c.getMinActiveDutyCycles()[i] = maxActiveDuty * minPctActiveDutyCycles; + + c.getMinOverlapDutyCycles()[i] = maxOverlapDuty * minPctOverlapDutyCycles; + }); } /** @@ -385,7 +398,7 @@ public void updateInhibitionRadius(Connections c) { double diameter = avgConnectedSpan * avgColumnsPerInput(c); double radius = (diameter - 1) / 2.0d; radius = Math.max(1, radius); - c.setInhibitionRadius((int)Math.round(radius)); + c.setInhibitionRadius((int)(radius + 0.5)); } /** @@ -733,14 +746,14 @@ public int mapColumn(Connections c, int columnIndex) { * @return */ public int[] mapPotential(Connections c, int columnIndex, boolean wrapAround) { - int index = mapColumn(c, columnIndex); - TIntArrayList indices = getNeighborsND(c, index, c.getInputMatrix(), c.getPotentialRadius(), wrapAround); - indices.add(index); - //TODO: See https://github.com/numenta/nupic.core/issues/128 - indices.sort(); - - int[] retVal = new int[(int)Math.round(indices.size() * c.getPotentialPct())]; - return ArrayUtils.sample(indices, retVal, c.getRandom()); + int centerInput = mapColumn(c, columnIndex); + int[] columnInputs = getInputNeighborhood(c, centerInput, c.getPotentialRadius()); + + // Select a subset of the receptive field to serve as the + // the potential pool + int numPotential = (int)(columnInputs.length * c.getPotentialPct() + 0.5); + int[] retVal = new int[numPotential]; + return ArrayUtils.sample(columnInputs, retVal, c.getRandom()); } /** @@ -836,20 +849,35 @@ public int[] inhibitColumnsGlobal(Connections c, double[] overlaps, double densi * @return indices of the winning columns */ public int[] inhibitColumnsLocal(Connections c, double[] overlaps, double density) { - int numCols = c.getNumColumns(); - int[] activeColumns = new int[numCols]; - double addToWinners = ArrayUtils.max(overlaps) / 1000.0; - for(int i = 0;i < numCols;i++) { - TIntArrayList maskNeighbors = getNeighborsND(c, i, c.getMemory(), c.getInhibitionRadius(), false); - double[] overlapSlice = ArrayUtils.sub(overlaps, maskNeighbors.toArray()); - int numActive = (int)(0.5 + density * (maskNeighbors.size() + 1)); - int numBigger = ArrayUtils.valueGreaterCount(overlaps[i], overlapSlice); - if(numBigger < numActive) { - activeColumns[i] = 1; - overlaps[i] += addToWinners; + double addToWinners = ArrayUtils.max(overlaps) / 1000.0d; + if(addToWinners == 0) { + addToWinners = 0.001; + } + double[] tieBrokenOverlaps = Arrays.copyOf(overlaps, overlaps.length); + + TIntList winners = new TIntArrayList(); + double stimulusThreshold = c.getStimulusThreshold(); + int inhibitionRadius = c.getInhibitionRadius(); + for(int i = 0;i < overlaps.length;i++) { + int column = i; + if(overlaps[column] >= stimulusThreshold) { + int[] neighborhood = getColumnNeighborhood(c, column, inhibitionRadius); + double[] neighborhoodOverlaps = ArrayUtils.sub(tieBrokenOverlaps, neighborhood); + + long numBigger = Arrays.stream(neighborhoodOverlaps) + .parallel() + .filter(d -> d > overlaps[column]) + .count(); + + int numActive = (int)(0.5 + density * neighborhood.length); + if(numBigger < numActive) { + winners.add(column); + tieBrokenOverlaps[column] += addToWinners; + } } } - return ArrayUtils.where(activeColumns, ArrayUtils.INT_GREATER_THAN_0); + + return winners.toArray(); } /** @@ -931,69 +959,69 @@ public double[] calculateOverlapPct(Connections c, int[] overlaps) { return ArrayUtils.divide(overlaps, c.getConnectedCounts().getTrueCounts()); } - /** - * Similar to _getNeighbors1D and _getNeighbors2D (Not included in this implementation), - * this function Returns a list of indices corresponding to the neighbors of a given column. - * Since the permanence values are stored in such a way that information about topology - * is lost. This method allows for reconstructing the topology of the inputs, - * which are flattened to one array. Given a column's index, its neighbors are - * defined as those columns that are 'radius' indices away from it in each - * dimension. The method returns a list of the flat indices of these columns. - * - * @param c matrix configured to this {@code SpatialPooler}'s dimensions - * for transformation work. - * @param columnIndex The index identifying a column in the permanence, potential - * and connectivity matrices. - * @param topology A {@link SparseMatrix} with dimensionality info. - * @param inhibitionRadius Indicates how far away from a given column are other - * columns to be considered its neighbors. In the previous 2x3 - * example, each column with coordinates: - * [2+/-radius, 3+/-radius] is considered a neighbor. - * @param wrapAround A boolean value indicating whether to consider columns at - * the border of a dimensions to be adjacent to columns at the - * other end of the dimension. For example, if the columns are - * laid out in one dimension, columns 1 and 10 will be - * considered adjacent if wrapAround is set to true: - * [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] - * - * @return a list of the flat indices of these columns - */ - public TIntArrayList getNeighborsND(Connections c, int columnIndex, SparseMatrix topology, int inhibitionRadius, boolean wrapAround) { - final int[] dimensions = topology.getDimensions(); - int[] columnCoords = topology.computeCoordinates(columnIndex); - List dimensionCoords = new ArrayList<>(); - - for(int i = 0;i < dimensions.length;i++) { - int[] range = ArrayUtils.range(columnCoords[i] - inhibitionRadius, columnCoords[i] + inhibitionRadius + 1); - int[] curRange = new int[range.length]; - - if(wrapAround) { - for(int j = 0;j < curRange.length;j++) { - curRange[j] = (int)ArrayUtils.positiveRemainder(range[j], dimensions[i]); - } - }else{ - final int idx = i; - curRange = ArrayUtils.retainLogicalAnd(range, - new Condition[] { ArrayUtils.GREATER_OR_EQUAL_0, - new Condition.Adapter() { - @Override public boolean eval(int n) { return n < dimensions[idx]; } - } - } - ); - } - dimensionCoords.add(ArrayUtils.unique(curRange)); - } - - List neighborList = ArrayUtils.dimensionsToCoordinateList(dimensionCoords); - TIntArrayList neighbors = new TIntArrayList(neighborList.size()); - int size = neighborList.size(); - for(int i = 0;i < size;i++) { - int flatIndex = topology.computeIndex(neighborList.get(i), false); - if(flatIndex == columnIndex) continue; - neighbors.add(flatIndex); - } - return neighbors; - } +// /** +// * Similar to _getNeighbors1D and _getNeighbors2D (Not included in this implementation), +// * this function Returns a list of indices corresponding to the neighbors of a given column. +// * Since the permanence values are stored in such a way that information about topology +// * is lost. This method allows for reconstructing the topology of the inputs, +// * which are flattened to one array. Given a column's index, its neighbors are +// * defined as those columns that are 'radius' indices away from it in each +// * dimension. The method returns a list of the flat indices of these columns. +// * +// * @param c matrix configured to this {@code SpatialPooler}'s dimensions +// * for transformation work. +// * @param columnIndex The index identifying a column in the permanence, potential +// * and connectivity matrices. +// * @param topology A {@link SparseMatrix} with dimensionality info. +// * @param inhibitionRadius Indicates how far away from a given column are other +// * columns to be considered its neighbors. In the previous 2x3 +// * example, each column with coordinates: +// * [2+/-radius, 3+/-radius] is considered a neighbor. +// * @param wrapAround A boolean value indicating whether to consider columns at +// * the border of a dimensions to be adjacent to columns at the +// * other end of the dimension. For example, if the columns are +// * laid out in one dimension, columns 1 and 10 will be +// * considered adjacent if wrapAround is set to true: +// * [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] +// * +// * @return a list of the flat indices of these columns +// */ +// public TIntArrayList getNeighborsND(Connections c, int columnIndex, SparseMatrix topology, int inhibitionRadius, boolean wrapAround) { +// final int[] dimensions = topology.getDimensions(); +// int[] columnCoords = topology.computeCoordinates(columnIndex); +// List dimensionCoords = new ArrayList<>(); +// +// for(int i = 0;i < dimensions.length;i++) { +// int[] range = ArrayUtils.range(columnCoords[i] - inhibitionRadius, columnCoords[i] + inhibitionRadius + 1); +// int[] curRange = new int[range.length]; +// +// if(wrapAround) { +// for(int j = 0;j < curRange.length;j++) { +// curRange[j] = (int)ArrayUtils.positiveRemainder(range[j], dimensions[i]); +// } +// }else{ +// final int idx = i; +// curRange = ArrayUtils.retainLogicalAnd(range, +// new Condition[] { ArrayUtils.GREATER_OR_EQUAL_0, +// new Condition.Adapter() { +// @Override public boolean eval(int n) { return n < dimensions[idx]; } +// } +// } +// ); +// } +// dimensionCoords.add(ArrayUtils.unique(curRange)); +// } +// +// List neighborList = ArrayUtils.dimensionsToCoordinateList(dimensionCoords); +// TIntArrayList neighbors = new TIntArrayList(neighborList.size()); +// int size = neighborList.size(); +// for(int i = 0;i < size;i++) { +// int flatIndex = topology.computeIndex(neighborList.get(i), false); +// if(flatIndex == columnIndex) continue; +// neighbors.add(flatIndex); +// } +// return neighbors; +// } /** * Returns true if enough rounds have passed to warrant updates of @@ -1021,6 +1049,42 @@ public void updateBookeepingVars(Connections c, boolean learn) { if(learn) c.spIterationLearnNum += 1; } + /** + * Gets a neighborhood of columns. + * + * Simply calls topology.neighborhood or topology.wrappingNeighborhood + * + * A subclass can insert different topology behavior by overriding this method. + * + * @param c the {@link Connections} memory encapsulation + * @param centerColumn The center of the neighborhood. + * @param inhibitionRadius Span of columns included in each neighborhood + * @return The columns in the neighborhood (1D) + */ + public int[] getColumnNeighborhood(Connections c, int centerColumn, int inhibitionRadius) { + return c.isWrapAround() ? + c.getColumnTopology().wrappingNeighborhood(centerColumn, inhibitionRadius) : + c.getColumnTopology().neighborhood(centerColumn, inhibitionRadius); + } + + /** + * Gets a neighborhood of inputs. + * + * Simply calls topology.wrappingNeighborhood or topology.neighborhood. + * + * A subclass can insert different topology behavior by overriding this method. + * + * @param c the {@link Connections} memory encapsulation + * @param centerInput The center of the neighborhood. + * @param potentialRadius Span of the input field included in each neighborhood + * @return The input's in the neighborhood. (1D) + */ + public int[] getInputNeighborhood(Connections c, int centerInput, int potentialRadius) { + return c.isWrapAround() ? + c.getInputTopology().wrappingNeighborhood(centerInput, potentialRadius) : + c.getInputTopology().neighborhood(centerInput, potentialRadius); + } + /** * Thrown for basic sanity violations */ diff --git a/src/main/java/org/numenta/nupic/util/ArrayUtils.java b/src/main/java/org/numenta/nupic/util/ArrayUtils.java index 4483c162..760ea4fd 100644 --- a/src/main/java/org/numenta/nupic/util/ArrayUtils.java +++ b/src/main/java/org/numenta/nupic/util/ArrayUtils.java @@ -1411,6 +1411,28 @@ public static int[] sample(TIntArrayList choices, int[] selectedIndices, Random //System.out.println("sample: " + Arrays.toString(selectedIndices)); return selectedIndices; } + + /** + * Returns a random, sorted, and unique array of the specified sample size of + * selections from the specified list of choices. + * + * @param sampleSize the number of selections in the returned sample + * @param choices the list of choices to select from + * @param random a random number generator + * @return a sample of numbers of the specified size + */ + public static int[] sample(int[] choices, int[] selectedIndices, Random random) { + TIntArrayList choiceSupply = new TIntArrayList(choices); + int upperBound = choices.length; + for (int i = 0; i < selectedIndices.length; i++) { + int randomIdx = random.nextInt(upperBound); + selectedIndices[i] = (choiceSupply.removeAt(randomIdx)); + upperBound--; + } + Arrays.sort(selectedIndices); + //System.out.println("sample: " + Arrays.toString(selectedIndices)); + return selectedIndices; + } /** * Returns a double[] filled with random doubles of the specified size. diff --git a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerTest.java b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerTest.java index 06bf901b..2caab1fc 100644 --- a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerTest.java +++ b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerTest.java @@ -39,7 +39,6 @@ import org.numenta.nupic.util.ArrayUtils; import org.numenta.nupic.util.Condition; import org.numenta.nupic.util.SparseBinaryMatrix; -import org.numenta.nupic.util.SparseMatrix; import org.numenta.nupic.util.SparseObjectMatrix; import org.numenta.nupic.util.UniversalRandom; @@ -221,8 +220,6 @@ public int[] inhibitColumns(Connections c, double[] overlaps) { } for(int i = 0;i < mem.getNumColumns();i++) { - System.out.println(Arrays.toString((int[])mem.getConnectedCounts().getSlice(i))); - System.out.println(Arrays.toString(mem.getPotentialPools().get(i).getDensePermanences(mem))); int[] permanences = ArrayUtils.toIntArray(mem.getPotentialPools().get(i).getDensePermanences(mem)); int[] potential = (int[])mem.getConnectedCounts().getSlice(i); assertTrue(Arrays.equals(permanences, potential)); @@ -380,7 +377,7 @@ public void testMapColumn() { assertEquals(2, sp.mapColumn(mem, 2)); assertEquals(3, sp.mapColumn(mem, 3)); - // Test 1D with same dimensions of length 1 + // Test 1D with dimensions of length 1 setupParameters(); parameters.setColumnDimensions(new int[] { 1 }); parameters.setInputDimensions(new int[] { 1 }); @@ -399,6 +396,16 @@ public void testMapColumn() { assertEquals(52, sp.mapColumn(mem, 5)); assertEquals(58, sp.mapColumn(mem, 7)); assertEquals(418, sp.mapColumn(mem, 47)); + + // Test 2D with some input dimensions smaller than column dimensions. + setupParameters(); + parameters.setColumnDimensions(new int[] { 4, 4 }); + parameters.setInputDimensions(new int[] { 3, 5 }); + initSP(); + + assertEquals(0, sp.mapColumn(mem, 0)); + assertEquals(4, sp.mapColumn(mem, 3)); + assertEquals(14, sp.mapColumn(mem, 15)); } @Test @@ -408,6 +415,7 @@ public void testMapPotential1D() { parameters.setColumnDimensions(new int[] { 4 }); parameters.setPotentialRadius(2); parameters.setPotentialPct(1); + parameters.set(KEY.WRAP_AROUND, false); initSP(); assertEquals(12, mem.getInputDimensions()[0]); @@ -423,7 +431,8 @@ public void testMapPotential1D() { mask = sp.mapPotential(mem, 2, false); assertTrue(Arrays.equals(expected, mask)); - // Test with wrapAround and potentialPct = 1 + // Test with wrapAround and potentialPct = 1 + mem.setWrapAround(true); expected = new int[] { 0, 1, 2, 3, 11 }; mask = sp.mapPotential(mem, 0, true); assertTrue(Arrays.equals(expected, mask)); @@ -434,6 +443,7 @@ public void testMapPotential1D() { // Test with wrapAround and potentialPct < 1 parameters.setPotentialPct(0.5); + parameters.set(KEY.WRAP_AROUND, true); initSP(); int[] supersetMask = new int[] { 0, 1, 2, 3, 11 }; @@ -502,6 +512,7 @@ public void testMapPotential1Column1Input() { parameters.setColumnDimensions(new int[] { 1 }); parameters.setPotentialRadius(2); parameters.setPotentialPct(1); + parameters.set(KEY.WRAP_AROUND, false); initSP(); //Test without wrapAround and potentialPct = 1 @@ -917,98 +928,53 @@ public boolean eval(int n) { @Test public void testUpdateMinDutyCycleLocal() { - setupParameters(); + setupDefaultParameters(); parameters.setInputDimensions(new int[] { 5 }); - parameters.setColumnDimensions(new int[] { 5 }); - parameters.setRandom(new UniversalRandom(42)); + parameters.setColumnDimensions(new int[] { 8 }); + parameters.set(KEY.WRAP_AROUND, false); initSP(); - - SpatialPooler mockSP = new SpatialPooler() { - private static final long serialVersionUID = 1L; - int returnIndex = 0; - int[][] returnVals = { - {0, 1, 2}, - {1, 2, 3}, - {2, 3, 4}, - {0, 2, 3}, - {0, 1, 3}}; - @Override - public TIntArrayList getNeighborsND( - Connections c, int columnIndex, SparseMatrix topology, int radius, boolean wrapAround) { - return new TIntArrayList(returnVals[returnIndex++]); - } - }; - - mem.setMinPctOverlapDutyCycles(0.04); - mem.setOverlapDutyCycles(new double[] { 1.4, 0.5, 1.2, 0.8, 0.1 }); - double[] trueMinOverlapDutyCycles = new double[] { - 0.04*1.4, 0.04*1.2, 0.04*1.2, 0.04*1.4, 0.04*1.4 }; - - mem.setMinPctActiveDutyCycles(0.02); - mem.setActiveDutyCycles(new double[] { 0.4, 0.5, 0.2, 0.18, 0.1 }); - double[] trueMinActiveDutyCycles = new double[] { - 0.02*0.5, 0.02*0.5, 0.02*0.2, 0.02*0.4, 0.02*0.5 }; - - double[] mins = new double[mem.getNumColumns()]; - Arrays.fill(mins, 0); - mem.setMinOverlapDutyCycles(mins); - mem.setMinActiveDutyCycles(Arrays.copyOf(mins, mins.length)); - mockSP.updateMinDutyCyclesLocal(mem); - for(int i = 0;i < trueMinOverlapDutyCycles.length;i++) { - assertEquals(trueMinOverlapDutyCycles[i], mem.getMinOverlapDutyCycles()[i], 0.01); - assertEquals(trueMinActiveDutyCycles[i], mem.getMinActiveDutyCycles()[i], 0.01); - } - - /////////////////////// - - setupParameters(); - parameters.setInputDimensions(new int[] { 8 }); + + mem.setInhibitionRadius(1); + mem.setOverlapDutyCycles(new double[] { 0.7, 0.1, 0.5, 0.01, 0.78, 0.55, 0.1, 0.001 }); + mem.setActiveDutyCycles(new double[] { 0.9, 0.3, 0.5, 0.7, 0.1, 0.01, 0.08, 0.12 }); + mem.setMinPctActiveDutyCycles(0.1); + mem.setMinPctOverlapDutyCycles(0.2); + sp.updateMinDutyCyclesLocal(mem); + + double[] resultMinActiveDutyCycles = mem.getMinActiveDutyCycles(); + double[] expected0 = { 0.09, 0.09, 0.07, 0.07, 0.07, 0.01, 0.012, 0.012 }; + IntStream.range(0, expected0.length) + .forEach(i -> assertEquals(expected0[i], resultMinActiveDutyCycles[i], 0.01)); + + double[] resultMinOverlapDutyCycles = mem.getMinOverlapDutyCycles(); + double[] expected1 = new double[] { 0.14, 0.14, 0.1, 0.156, 0.156, 0.156, 0.11, 0.02 }; + IntStream.range(0, expected1.length) + .forEach(i -> assertEquals(expected1[i], resultMinOverlapDutyCycles[i], 0.01)); + + // wrapAround = true + setupDefaultParameters(); + parameters.setInputDimensions(new int[] { 5 }); parameters.setColumnDimensions(new int[] { 8 }); - parameters.setRandom(new UniversalRandom(42)); + parameters.set(KEY.WRAP_AROUND, true); initSP(); - - mockSP = new SpatialPooler() { - private static final long serialVersionUID = 1L; - int returnIndex = 0; - int[][] returnVals = { - {0, 1, 2, 3, 4}, - {1, 2, 3, 4, 5}, - {2, 3, 4, 6, 7}, - {0, 2, 4, 6}, - {1, 6}, - {3, 5, 7}, - {1, 4, 5, 6}, - {2, 3, 6, 7}}; - @Override - public TIntArrayList getNeighborsND( - Connections c, int columnIndex, SparseMatrix topology, int radius, boolean wrapAround) { - return new TIntArrayList(returnVals[returnIndex++]); - } - }; - - mem.setMinPctOverlapDutyCycles(0.01); - mem.setOverlapDutyCycles(new double[] { 1.2, 2.7, 0.9, 1.1, 4.3, 7.1, 2.3, 0.0 }); - trueMinOverlapDutyCycles = new double[] { - 0.01*4.3, 0.01*7.1, 0.01*4.3, 0.01*4.3, - 0.01*2.7, 0.01*7.1, 0.01*7.1, 0.01*2.3 }; - - mem.setMinPctActiveDutyCycles(0.03); - mem.setActiveDutyCycles(new double[] { 0.14, 0.25, 0.125, 0.33, 0.27, 0.11, 0.76, 0.31 }); - trueMinActiveDutyCycles = new double[] { - 0.03*0.33, 0.03*0.33, 0.03*0.76, 0.03*0.76, - 0.03*0.76, 0.03*0.33, 0.03*0.76, 0.03*0.76 }; - - mins = new double[mem.getNumColumns()]; - Arrays.fill(mins, 0); - mem.setMinOverlapDutyCycles(mins); - mem.setMinActiveDutyCycles(Arrays.copyOf(mins, mins.length)); - mockSP.updateMinDutyCyclesLocal(mem); - for(int i = 0;i < trueMinOverlapDutyCycles.length;i++) { - // System.out.println(i + ") " + trueMinOverlapDutyCycles[i] + " - " + mem.getMinOverlapDutyCycles()[i]); - // System.out.println(i + ") " + trueMinActiveDutyCycles[i] + " - " + mem.getMinActiveDutyCycles()[i]); - assertEquals(trueMinOverlapDutyCycles[i], mem.getMinOverlapDutyCycles()[i], 0.01); - assertEquals(trueMinActiveDutyCycles[i], mem.getMinActiveDutyCycles()[i], 0.01); - } + + mem.setInhibitionRadius(1); + mem.setOverlapDutyCycles(new double[] { 0.7, 0.1, 0.5, 0.01, 0.78, 0.55, 0.1, 0.001 }); + mem.setActiveDutyCycles(new double[] { 0.9, 0.3, 0.5, 0.7, 0.1, 0.01, 0.08, 0.12 }); + mem.setMinPctActiveDutyCycles(0.1); + mem.setMinPctOverlapDutyCycles(0.2); + sp.updateMinDutyCyclesLocal(mem); + + double[] resultMinActiveDutyCycles2 = mem.getMinActiveDutyCycles(); + double[] expected2 = { 0.09, 0.09, 0.07, 0.07, 0.07, 0.01, 0.012, 0.09 }; + IntStream.range(0, expected2.length) + .forEach(i -> assertEquals(expected2[i], resultMinActiveDutyCycles2[i], 0.01)); + + double[] resultMinOverlapDutyCycles2 = mem.getMinOverlapDutyCycles(); + double[] expected3 = new double[] { 0.14, 0.14, 0.1, 0.156, 0.156, 0.156, 0.11, 0.14 }; + IntStream.range(0, expected3.length) + .forEach(i -> assertEquals(expected3[i], resultMinOverlapDutyCycles2[i], 0.01)); + } @Test @@ -1605,7 +1571,7 @@ public void testInhibitColumnsGlobal() { @Test public void testInhibitColumnsLocal() { setupParameters(); - parameters.setInputDimensions(new int[] { 10 }); + parameters.setInputDimensions(new int[] { 5 }); parameters.setColumnDimensions(new int[] { 10 }); initSP(); @@ -1613,314 +1579,331 @@ public void testInhibitColumnsLocal() { mem.setInhibitionRadius(2); double density = 0.5; double[] overlaps = new double[] { 1, 2, 7, 0, 3, 4, 16, 1, 1.5, 1.7 }; - int[] trueActive = new int[] {1, 2, 5, 6, 9}; + // L W W L L W W L W W (wrapAround=true) + // L W W L L W W L L W (wrapAround=false) + + mem.setWrapAround(true); + int[] trueActive = new int[] {1, 2, 5, 6, 8, 9}; int[] active = sp.inhibitColumnsLocal(mem, overlaps, density); assertTrue(Arrays.equals(trueActive, active)); + + mem.setWrapAround(false); + trueActive = new int[] {1, 2, 5, 6, 9}; + active = sp.inhibitColumnsLocal(mem, overlaps, density); + assertTrue(Arrays.equals(trueActive, active)); - setupParameters(); - parameters.setInputDimensions(new int[] { 10 }); - parameters.setColumnDimensions(new int[] { 10 }); - initSP(); - //Internally calculated during init, to overwrite we put after init + density = 0.5; mem.setInhibitionRadius(3); overlaps = new double[] { 1, 2, 7, 0, 3, 4, 16, 1, 1.5, 1.7 }; - trueActive = new int[] { 1, 2, 5, 6 }; + // L W W L W W W L L W (wrapAround=true) + // L W W L W W W L L L (wrapAround=false) + + mem.setWrapAround(true); + trueActive = new int[] { 1, 2, 4, 5, 6, 9 }; active = sp.inhibitColumnsLocal(mem, overlaps, density); - //Commented out in Python version because it is wrong? - //assertTrue(Arrays.equals(trueActive, active)); - + assertTrue(Arrays.equals(trueActive, active)); + + mem.setWrapAround(false); + trueActive = new int[] { 1, 2, 4, 5, 6, 9 }; + active = sp.inhibitColumnsLocal(mem, overlaps, density); + assertTrue(Arrays.equals(trueActive, active)); + // Test add to winners density = 0.3333; - setupParameters(); - parameters.setInputDimensions(new int[] { 10 }); - parameters.setColumnDimensions(new int[] { 10 }); - initSP(); - //Internally calculated during init, to overwrite we put after init mem.setInhibitionRadius(3); overlaps = new double[] { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; + // W W L L W W L L L L (wrapAround=true) + // W W L L W W L L W L (wrapAround=false) + + mem.setWrapAround(true); + trueActive = new int[] { 0, 1, 4, 5 }; + active = sp.inhibitColumnsLocal(mem, overlaps, density); + assertTrue(Arrays.equals(trueActive, active)); + + mem.setWrapAround(false); trueActive = new int[] { 0, 1, 4, 5, 8 }; active = sp.inhibitColumnsLocal(mem, overlaps, density); assertTrue(Arrays.equals(trueActive, active)); } - /** - * As coded in the Python test - */ - @Test - public void testGetNeighborsND() { - //This setup isn't relevant to this test - setupParameters(); - parameters.setInputDimensions(new int[] { 9, 5 }); - parameters.setColumnDimensions(new int[] { 5, 5 }); - initSP(); - ////////////////////// Test not part of Python port ///////////////////// - int[] result = sp.getNeighborsND(mem, 2, mem.getInputMatrix(), 3, true).toArray(); - int[] expected = new int[] { - 0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 - }; - for(int i = 0;i < result.length;i++) { - assertEquals(expected[i], result[i]); - } - ///////////////////////////////////////////////////////////////////////// - setupParameters(); - int[] dimensions = new int[] { 5, 7, 2 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - int radius = 1; - int x = 1; - int y = 3; - int z = 2; - int columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x }); - int[] neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - String expect = "[18, 19, 20, 21, 22, 23, 32, 33, 34, 36, 37, 46, 47, 48, 49, 50, 51]"; - assertEquals(expect, ArrayUtils.print1DArray(neighbors)); - - ///////////////////////////////////////// - setupParameters(); - dimensions = new int[] { 5, 7, 9 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - radius = 3; - x = 0; - y = 0; - z = 3; - columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x }); - neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - expect = "[0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 20, 21, 24, 25, 26, " - + "27, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 48, 51, " - + "52, 53, 54, 55, 56, 57, 60, 61, 62, 63, 64, 65, 66, 69, 70, 71, 72, 73, 74, " - + "75, 78, 79, 80, 81, 82, 83, 84, 87, 88, 89, 90, 91, 92, 93, 96, 97, 98, 99, " - + "100, 101, 102, 105, 106, 107, 108, 109, 110, 111, 114, 115, 116, 117, 118, 119, " - + "120, 123, 124, 125, 126, 127, 128, 129, 132, 133, 134, 135, 136, 137, 138, 141, " - + "142, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, " - + "162, 163, 164, 165, 168, 169, 170, 171, 172, 173, 174, 177, 178, 179, 180, 181, " - + "182, 183, 186, 187, 188, 190, 191, 192, 195, 196, 197, 198, 199, 200, 201, 204, " - + "205, 206, 207, 208, 209, 210, 213, 214, 215, 216, 217, 218, 219, 222, 223, 224, " - + "225, 226, 227, 228, 231, 232, 233, 234, 235, 236, 237, 240, 241, 242, 243, 244, " - + "245, 246, 249, 250, 251, 252, 253, 254, 255, 258, 259, 260, 261, 262, 263, 264, " - + "267, 268, 269, 270, 271, 272, 273, 276, 277, 278, 279, 280, 281, 282, 285, 286, " - + "287, 288, 289, 290, 291, 294, 295, 296, 297, 298, 299, 300, 303, 304, 305, 306, " - + "307, 308, 309, 312, 313, 314]"; - assertEquals(expect, ArrayUtils.print1DArray(neighbors)); - - ///////////////////////////////////////// - setupParameters(); - dimensions = new int[] { 5, 10, 7, 6 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - - radius = 4; - int w = 2; - x = 5; - y = 6; - z = 2; - columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x, w }); - neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - TIntHashSet trueNeighbors = new TIntHashSet(); - for(int i = -radius;i <= radius;i++) { - for(int j = -radius;j <= radius;j++) { - for(int k = -radius;k <= radius;k++) { - for(int m = -radius;m <= radius;m++) { - int zprime = (int)ArrayUtils.positiveRemainder((z + i), dimensions[0]); - int yprime = (int)ArrayUtils.positiveRemainder((y + j), dimensions[1]); - int xprime = (int)ArrayUtils.positiveRemainder((x + k), dimensions[2]); - int wprime = (int)ArrayUtils.positiveRemainder((w + m), dimensions[3]); - trueNeighbors.add(mem.getInputMatrix().computeIndex(new int[] { zprime, yprime, xprime, wprime })); - } - } - } - } - trueNeighbors.remove(columnIndex); - int[] tneighbors = ArrayUtils.unique(trueNeighbors.toArray()); - assertEquals(ArrayUtils.print1DArray(tneighbors), ArrayUtils.print1DArray(neighbors)); - - ///////////////////////////////////////// - //Tests from getNeighbors1D from Python unit test - setupParameters(); - dimensions = new int[] { 8 }; - parameters.setColumnDimensions(dimensions); - parameters.setInputDimensions(dimensions); - initSP(); - AbstractSparseBinaryMatrix sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - sbm.set(new int[] { 2, 4 }, new int[] { 1, 1 }, true); - radius = 1; - columnIndex = 3; - int[] mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - TIntArrayList msk = new TIntArrayList(mask); - TIntArrayList neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - ////// - setupParameters(); - dimensions = new int[] { 8 }; - parameters.setInputDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - sbm.set(new int[] { 1, 2, 4, 5 }, new int[] { 1, 1, 1, 1 }, true); - radius = 2; - columnIndex = 3; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //Wrap around - setupParameters(); - dimensions = new int[] { 8 }; - parameters.setInputDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - sbm.set(new int[] { 1, 2, 6, 7 }, new int[] { 1, 1, 1, 1 }, true); - radius = 2; - columnIndex = 0; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //Radius too big - setupParameters(); - dimensions = new int[] { 8 }; - parameters.setInputDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - sbm.set(new int[] { 0, 1, 2, 3, 4, 5, 7 }, new int[] { 1, 1, 1, 1, 1, 1, 1 }, true); - radius = 20; - columnIndex = 6; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //These are all the same tests from 2D - setupParameters(); - dimensions = new int[] { 6, 5 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - int[][] input = new int[][] { - {0, 0, 0, 0, 0}, - {0, 0, 0, 0, 0}, - {0, 1, 1, 1, 0}, - {0, 1, 0, 1, 0}, - {0, 1, 1, 1, 0}, - {0, 0, 0, 0, 0}}; - for(int i = 0;i < input.length;i++) { - for(int j = 0;j < input[i].length;j++) { - if(input[i][j] == 1) - sbm.set(sbm.computeIndex(new int[] { i, j }), 1); - } - } - radius = 1; - columnIndex = 3*5 + 2; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //////// - setupParameters(); - dimensions = new int[] { 6, 5 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - input = new int[][] { - {0, 0, 0, 0, 0}, - {1, 1, 1, 1, 1}, - {1, 1, 1, 1, 1}, - {1, 1, 0, 1, 1}, - {1, 1, 1, 1, 1}, - {1, 1, 1, 1, 1}}; - for(int i = 0;i < input.length;i++) { - for(int j = 0;j < input[i].length;j++) { - if(input[i][j] == 1) - sbm.set(sbm.computeIndex(new int[] { i, j }), 1); - } - } - radius = 2; - columnIndex = 3*5 + 2; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //Radius too big - setupParameters(); - dimensions = new int[] { 6, 5 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - input = new int[][] { - {1, 1, 1, 1, 1}, - {1, 1, 1, 1, 1}, - {1, 1, 1, 1, 1}, - {1, 1, 0, 1, 1}, - {1, 1, 1, 1, 1}, - {1, 1, 1, 1, 1}}; - for(int i = 0;i < input.length;i++) { - for(int j = 0;j < input[i].length;j++) { - if(input[i][j] == 1) - sbm.set(sbm.computeIndex(new int[] { i, j }), 1); - } - } - radius = 7; - columnIndex = 3*5 + 2; - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - - //Wrap-around - setupParameters(); - dimensions = new int[] { 6, 5 }; - parameters.setInputDimensions(dimensions); - parameters.setColumnDimensions(dimensions); - initSP(); - sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); - input = new int[][] { - {1, 0, 0, 1, 1}, - {0, 0, 0, 0, 0}, - {0, 0, 0, 0, 0}, - {0, 0, 0, 0, 0}, - {1, 0, 0, 1, 1}, - {1, 0, 0, 1, 0}}; - for(int i = 0;i < input.length;i++) { - for(int j = 0;j < input[i].length;j++) { - if(input[i][j] == 1) - sbm.set(sbm.computeIndex(new int[] { i, j }), 1); - } - } - radius = 1; - columnIndex = sbm.getMaxIndex(); - mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); - msk = new TIntArrayList(mask); - neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); - neg.removeAll(msk); - assertTrue(sbm.all(mask)); - assertFalse(sbm.any(neg)); - } +// /** +// * As coded in the Python test +// */ +// @Test +// public void testGetNeighborsND() { +// //This setup isn't relevant to this test +// setupParameters(); +// parameters.setInputDimensions(new int[] { 9, 5 }); +// parameters.setColumnDimensions(new int[] { 5, 5 }); +// initSP(); +// ////////////////////// Test not part of Python port ///////////////////// +// int[] result = sp.getNeighborsND(mem, 2, mem.getInputMatrix(), 3, true).toArray(); +// int[] expected = new int[] { +// 0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, +// 13, 14, 15, 16, 17, 18, 19, 30, 31, 32, 33, +// 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 +// }; +// for(int i = 0;i < result.length;i++) { +// assertEquals(expected[i], result[i]); +// } +// ///////////////////////////////////////////////////////////////////////// +// setupParameters(); +// int[] dimensions = new int[] { 5, 7, 2 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// int radius = 1; +// int x = 1; +// int y = 3; +// int z = 2; +// int columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x }); +// int[] neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// String expect = "[18, 19, 20, 21, 22, 23, 32, 33, 34, 36, 37, 46, 47, 48, 49, 50, 51]"; +// assertEquals(expect, ArrayUtils.print1DArray(neighbors)); +// +// ///////////////////////////////////////// +// setupParameters(); +// dimensions = new int[] { 5, 7, 9 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// radius = 3; +// x = 0; +// y = 0; +// z = 3; +// columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x }); +// neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// expect = "[0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 20, 21, 24, 25, 26, " +// + "27, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 48, 51, " +// + "52, 53, 54, 55, 56, 57, 60, 61, 62, 63, 64, 65, 66, 69, 70, 71, 72, 73, 74, " +// + "75, 78, 79, 80, 81, 82, 83, 84, 87, 88, 89, 90, 91, 92, 93, 96, 97, 98, 99, " +// + "100, 101, 102, 105, 106, 107, 108, 109, 110, 111, 114, 115, 116, 117, 118, 119, " +// + "120, 123, 124, 125, 126, 127, 128, 129, 132, 133, 134, 135, 136, 137, 138, 141, " +// + "142, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 159, 160, 161, " +// + "162, 163, 164, 165, 168, 169, 170, 171, 172, 173, 174, 177, 178, 179, 180, 181, " +// + "182, 183, 186, 187, 188, 190, 191, 192, 195, 196, 197, 198, 199, 200, 201, 204, " +// + "205, 206, 207, 208, 209, 210, 213, 214, 215, 216, 217, 218, 219, 222, 223, 224, " +// + "225, 226, 227, 228, 231, 232, 233, 234, 235, 236, 237, 240, 241, 242, 243, 244, " +// + "245, 246, 249, 250, 251, 252, 253, 254, 255, 258, 259, 260, 261, 262, 263, 264, " +// + "267, 268, 269, 270, 271, 272, 273, 276, 277, 278, 279, 280, 281, 282, 285, 286, " +// + "287, 288, 289, 290, 291, 294, 295, 296, 297, 298, 299, 300, 303, 304, 305, 306, " +// + "307, 308, 309, 312, 313, 314]"; +// assertEquals(expect, ArrayUtils.print1DArray(neighbors)); +// +// ///////////////////////////////////////// +// setupParameters(); +// dimensions = new int[] { 5, 10, 7, 6 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// +// radius = 4; +// int w = 2; +// x = 5; +// y = 6; +// z = 2; +// columnIndex = mem.getInputMatrix().computeIndex(new int[] { z, y, x, w }); +// neighbors = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// TIntHashSet trueNeighbors = new TIntHashSet(); +// for(int i = -radius;i <= radius;i++) { +// for(int j = -radius;j <= radius;j++) { +// for(int k = -radius;k <= radius;k++) { +// for(int m = -radius;m <= radius;m++) { +// int zprime = (int)ArrayUtils.positiveRemainder((z + i), dimensions[0]); +// int yprime = (int)ArrayUtils.positiveRemainder((y + j), dimensions[1]); +// int xprime = (int)ArrayUtils.positiveRemainder((x + k), dimensions[2]); +// int wprime = (int)ArrayUtils.positiveRemainder((w + m), dimensions[3]); +// trueNeighbors.add(mem.getInputMatrix().computeIndex(new int[] { zprime, yprime, xprime, wprime })); +// } +// } +// } +// } +// trueNeighbors.remove(columnIndex); +// int[] tneighbors = ArrayUtils.unique(trueNeighbors.toArray()); +// assertEquals(ArrayUtils.print1DArray(tneighbors), ArrayUtils.print1DArray(neighbors)); +// +// ///////////////////////////////////////// +// //Tests from getNeighbors1D from Python unit test +// setupParameters(); +// dimensions = new int[] { 8 }; +// parameters.setColumnDimensions(dimensions); +// parameters.setInputDimensions(dimensions); +// initSP(); +// AbstractSparseBinaryMatrix sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// sbm.set(new int[] { 2, 4 }, new int[] { 1, 1 }, true); +// radius = 1; +// columnIndex = 3; +// int[] mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// TIntArrayList msk = new TIntArrayList(mask); +// TIntArrayList neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// ////// +// setupParameters(); +// dimensions = new int[] { 8 }; +// parameters.setInputDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// sbm.set(new int[] { 1, 2, 4, 5 }, new int[] { 1, 1, 1, 1 }, true); +// radius = 2; +// columnIndex = 3; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //Wrap around +// setupParameters(); +// dimensions = new int[] { 8 }; +// parameters.setInputDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// sbm.set(new int[] { 1, 2, 6, 7 }, new int[] { 1, 1, 1, 1 }, true); +// radius = 2; +// columnIndex = 0; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //Radius too big +// setupParameters(); +// dimensions = new int[] { 8 }; +// parameters.setInputDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// sbm.set(new int[] { 0, 1, 2, 3, 4, 5, 7 }, new int[] { 1, 1, 1, 1, 1, 1, 1 }, true); +// radius = 20; +// columnIndex = 6; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //These are all the same tests from 2D +// setupParameters(); +// dimensions = new int[] { 6, 5 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// int[][] input = new int[][] { +// {0, 0, 0, 0, 0}, +// {0, 0, 0, 0, 0}, +// {0, 1, 1, 1, 0}, +// {0, 1, 0, 1, 0}, +// {0, 1, 1, 1, 0}, +// {0, 0, 0, 0, 0}}; +// for(int i = 0;i < input.length;i++) { +// for(int j = 0;j < input[i].length;j++) { +// if(input[i][j] == 1) +// sbm.set(sbm.computeIndex(new int[] { i, j }), 1); +// } +// } +// radius = 1; +// columnIndex = 3*5 + 2; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //////// +// setupParameters(); +// dimensions = new int[] { 6, 5 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// input = new int[][] { +// {0, 0, 0, 0, 0}, +// {1, 1, 1, 1, 1}, +// {1, 1, 1, 1, 1}, +// {1, 1, 0, 1, 1}, +// {1, 1, 1, 1, 1}, +// {1, 1, 1, 1, 1}}; +// for(int i = 0;i < input.length;i++) { +// for(int j = 0;j < input[i].length;j++) { +// if(input[i][j] == 1) +// sbm.set(sbm.computeIndex(new int[] { i, j }), 1); +// } +// } +// radius = 2; +// columnIndex = 3*5 + 2; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //Radius too big +// setupParameters(); +// dimensions = new int[] { 6, 5 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// input = new int[][] { +// {1, 1, 1, 1, 1}, +// {1, 1, 1, 1, 1}, +// {1, 1, 1, 1, 1}, +// {1, 1, 0, 1, 1}, +// {1, 1, 1, 1, 1}, +// {1, 1, 1, 1, 1}}; +// for(int i = 0;i < input.length;i++) { +// for(int j = 0;j < input[i].length;j++) { +// if(input[i][j] == 1) +// sbm.set(sbm.computeIndex(new int[] { i, j }), 1); +// } +// } +// radius = 7; +// columnIndex = 3*5 + 2; +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// +// //Wrap-around +// setupParameters(); +// dimensions = new int[] { 6, 5 }; +// parameters.setInputDimensions(dimensions); +// parameters.setColumnDimensions(dimensions); +// initSP(); +// sbm = (AbstractSparseBinaryMatrix)mem.getInputMatrix(); +// input = new int[][] { +// {1, 0, 0, 1, 1}, +// {0, 0, 0, 0, 0}, +// {0, 0, 0, 0, 0}, +// {0, 0, 0, 0, 0}, +// {1, 0, 0, 1, 1}, +// {1, 0, 0, 1, 0}}; +// for(int i = 0;i < input.length;i++) { +// for(int j = 0;j < input[i].length;j++) { +// if(input[i][j] == 1) +// sbm.set(sbm.computeIndex(new int[] { i, j }), 1); +// } +// } +// radius = 1; +// columnIndex = sbm.getMaxIndex(); +// mask = sp.getNeighborsND(mem, columnIndex, mem.getInputMatrix(), radius, true).toArray(); +// msk = new TIntArrayList(mask); +// neg = new TIntArrayList(ArrayUtils.range(0, dimensions[0])); +// neg.removeAll(msk); +// assertTrue(sbm.all(mask)); +// assertFalse(sbm.any(neg)); +// } @Test public void testInit() { From 50648704d843d6827ed7f93c2f0d94353eebc12e Mon Sep 17 00:00:00 2001 From: cogmission Date: Thu, 6 Oct 2016 16:35:48 -0500 Subject: [PATCH 4/7] Modified compatibility tests - updated for new SP --- .../SpatialPoolerCompatibilityActives.java | 216 +- ...SpatialPoolerCompatibilityPermanences.java | 3006 ++++++++--------- .../SpatialPoolerCompatibilityTest.java | 115 +- 3 files changed, 1654 insertions(+), 1683 deletions(-) diff --git a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityActives.java b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityActives.java index d5507d30..7e814294 100644 --- a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityActives.java +++ b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityActives.java @@ -1,135 +1,109 @@ -/* --------------------------------------------------------------------- - * Numenta Platform for Intelligent Computing (NuPIC) - * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement - * with Numenta, Inc., for a separate license for this software code, the - * following terms and conditions apply: - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero Public License version 3 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU Affero Public License for more details. - * - * You should have received a copy of the GNU Affero Public License - * along with this program. If not, see http://www.gnu.org/licenses. - * - * http://numenta.org/licenses/ - * --------------------------------------------------------------------- - */ package org.numenta.nupic.algorithms; -/** - * Auto-generated class file using the "spatial_pooler_output_javaclass_writer.py" - * Python script. - * - * @author cogmission - */ + public class SpatialPoolerCompatibilityActives { public int[][] getActivations() { return new int[][] { - { 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1 }, - { 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 }, - { 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1 }, - { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1 }, - { 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0 }, - { 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1 }, + { 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1 }, + { 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0 }, + { 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1 }, + { 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1 }, + { 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0 }, + { 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0 }, + { 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0 }, + { 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1 }, { 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1 }, + { 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1 }, + { 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1 }, + { 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1 }, { 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1 }, - { 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0 }, - { 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1 }, - { 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1 }, - { 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0 }, - { 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0 }, - { 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1 }, - { 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1 }, - { 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1 }, - { 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1 }, - { 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1 }, - { 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0 }, - { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1 }, - { 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0 }, - { 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1 }, - { 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1 }, - { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1 }, - { 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1 }, - { 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0 }, + { 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0 }, + { 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1 }, - { 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1 }, - { 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1 }, - { 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0 }, - { 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 }, + { 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 }, + { 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0 }, + { 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1 }, { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1 }, - { 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0 }, - { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1 }, - { 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1 }, + { 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1 }, + { 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 }, + { 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1 }, { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1 }, - { 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 }, - { 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0 }, - { 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0 }, - { 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1 }, - { 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1 }, - { 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 }, - { 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 }, - { 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1 }, - { 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1 }, - { 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0 }, - { 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1 }, - { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1 }, - { 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1 }, + { 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0 }, + { 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0 }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 }, + { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 }, + { 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1 }, }; } } diff --git a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityPermanences.java b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityPermanences.java index 2f0cd141..7c695be5 100644 --- a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityPermanences.java +++ b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityPermanences.java @@ -1,2030 +1,2004 @@ -/* --------------------------------------------------------------------- - * Numenta Platform for Intelligent Computing (NuPIC) - * Copyright (C) 2016, Numenta, Inc. Unless you have an agreement - * with Numenta, Inc., for a separate license for this software code, the - * following terms and conditions apply: - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero Public License version 3 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU Affero Public License for more details. - * - * You should have received a copy of the GNU Affero Public License - * along with this program. If not, see http://www.gnu.org/licenses. - * - * http://numenta.org/licenses/ - * --------------------------------------------------------------------- - */ package org.numenta.nupic.algorithms; -/** - * Auto-generated class file using the "spatial_pooler_output_javaclass_writer.py" - * Python script. - * - * @author cogmission - */ + public class SpatialPoolerCompatibilityPermanences { public double[][] getPermanences0() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.68185002, 0.057909999, 0.11953, 0.0, 0.5941, 0.0, 0.0, 0.0, 0.33390999, 0.0, 0.0, 0.05948, 0.0, 0.45874, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.15192001, 0.45153001, 0.0, 0.0, 0.0, 0.54891002, 0.70109999, 0.0, 0.0, 0.64064002, 1.0 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.79075003, 0.0, 0.0, 0.61381, 0.0, 0.083920002, 0.0, 0.61768001, 0.0, 0.0, 0.59040999, 0.43821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.64512998, 0.067340001, 0.0, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.35163999, 0.074349999, 0.0, 0.0 }, - { 0.0, 0.0, 0.27271, 0.0, 0.90486997, 0.0, 0.67374998, 0.0, 0.071489997, 0.19324, 0.0, 0.092809997, 0.0, 0.37125999, 0.0, 0.0 }, - { 0.0, 0.30159, 0.84898001, 0.0, 0.18082, 0.0, 0.0, 0.0, 0.053240001, 0.0, 0.80101001, 0.0, 0.075759999, 0.0, 0.0, 0.89740002 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.062820002, 0.098190002, 0.0, 0.0, 0.79606003, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52516001, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.33680001, 0.0, 0.0, 0.0, 0.98505002, 0.43265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.17621, 0.0, 0.1, 0.30548 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.79075003, 0.61381, 0.0, 0.083920002, 0.0, 0.61768001, 0.59040999, 0.0, 0.0, 0.43821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.34362999, 0.05401, 0.0, 0.65979999, 0.13402, 0.0, 0.0, 0.0, 0.0, 0.079460002, 0.0, 0.07423, 0.35227001, 0.0, 0.082649998 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.37270999, 0.89486998, 0.0, 0.66374999, 0.061489999, 0.29324001, 0.0, 0.0, 0.0, 0.0, 0.08281, 0.0, 0.1, 0.0, 0.47125998, 0.0 }, + { 0.1, 0.0, 0.29159001, 0.0, 0.0, 0.94898003, 0.17082, 0.0, 0.0, 0.0, 0.79101002, 0.065760002, 0.0, 0.0, 0.99740005, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.09234 }, + { 0.33680001, 0.0, 0.0, 0.98505002, 0.32265002, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.066210002, 0.0, 0.0, 0.0, 0.0, 0.30548 }, }; } public double[][] getPermanences1() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.68185002, 0.057909999, 0.11953, 0.0, 0.5941, 0.0, 0.0, 0.0, 0.33390999, 0.0, 0.0, 0.05948, 0.0, 0.45874, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.15192001, 0.45153001, 0.0, 0.0, 0.0, 0.54891002, 0.70109999, 0.0, 0.0, 0.64064002, 1.0 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.79075003, 0.0, 0.0, 0.61381, 0.0, 0.083920002, 0.0, 0.61768001, 0.0, 0.0, 0.59040999, 0.43821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.64512998, 0.067340001, 0.0, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.35163999, 0.074349999, 0.0, 0.0 }, - { 0.0, 0.0, 0.27271, 0.0, 0.90486997, 0.0, 0.67374998, 0.0, 0.071489997, 0.19324, 0.0, 0.092809997, 0.0, 0.37125999, 0.0, 0.0 }, - { 0.0, 0.30159, 0.84898001, 0.0, 0.18082, 0.0, 0.0, 0.0, 0.053240001, 0.0, 0.80101001, 0.0, 0.075759999, 0.0, 0.0, 0.89740002 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.062820002, 0.098190002, 0.0, 0.0, 0.79606003, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52516001, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.33680001, 0.0, 0.0, 0.0, 0.98505002, 0.43265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.17621, 0.0, 0.1, 0.30548 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.79075003, 0.61381, 0.0, 0.083920002, 0.0, 0.61768001, 0.59040999, 0.0, 0.0, 0.43821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.34362999, 0.05401, 0.0, 0.65979999, 0.13402, 0.0, 0.0, 0.0, 0.0, 0.079460002, 0.0, 0.07423, 0.35227001, 0.0, 0.082649998 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.37270999, 0.89486998, 0.0, 0.66374999, 0.061489999, 0.29324001, 0.0, 0.0, 0.0, 0.0, 0.08281, 0.0, 0.1, 0.0, 0.47125998, 0.0 }, + { 0.1, 0.0, 0.29159001, 0.0, 0.0, 0.94898003, 0.17082, 0.0, 0.0, 0.0, 0.79101002, 0.065760002, 0.0, 0.0, 0.99740005, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.09234 }, + { 0.33680001, 0.0, 0.0, 0.98505002, 0.32265002, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.066210002, 0.0, 0.0, 0.0, 0.0, 0.30548 }, }; } public double[][] getPermanences2() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.78185004, 0.15791, 0.21953, 0.0, 0.58410001, 0.0, 0.0, 0.0, 0.32391, 0.1, 0.0, 0.15948001, 0.0, 0.44874001, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.15192001, 0.45153001, 0.0, 0.0, 0.0, 0.54891002, 0.70109999, 0.0, 0.0, 0.64064002, 1.0 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.37270999, 0.0, 0.89486998, 0.0, 0.66374999, 0.0, 0.061489999, 0.18324, 0.0, 0.08281, 0.1, 0.47125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.062820002, 0.098190002, 0.0, 0.0, 0.79606003, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52516001, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.33680001, 0.0, 0.0, 0.0, 0.98505002, 0.43265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.17621, 0.0, 0.1, 0.30548 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.36271, 0.99487001, 0.0, 0.76375002, 0.051490001, 0.28324002, 0.0, 0.0, 0.0, 0.0, 0.18281001, 0.0, 0.2, 0.0, 0.46125999, 0.0 }, + { 0.090000004, 0.0, 0.39159, 0.0, 0.0, 0.93898004, 0.16081999, 0.0, 0.0, 0.0, 0.89101005, 0.055760004, 0.0, 0.0, 0.98740005, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.58618999, 0.55532002, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.18895, 0.0, 0.082340002 }, + { 0.33680001, 0.0, 0.0, 0.98505002, 0.32265002, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.066210002, 0.0, 0.0, 0.0, 0.0, 0.30548 }, }; } public double[][] getPermanences3() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.78185004, 0.15791, 0.21953, 0.0, 0.58410001, 0.0, 0.0, 0.0, 0.32391, 0.1, 0.0, 0.15948001, 0.0, 0.44874001, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.15192001, 0.45153001, 0.0, 0.0, 0.0, 0.54891002, 0.70109999, 0.0, 0.0, 0.64064002, 1.0 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.37270999, 0.0, 0.89486998, 0.0, 0.66374999, 0.0, 0.061489999, 0.18324, 0.0, 0.08281, 0.1, 0.47125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.062820002, 0.098190002, 0.0, 0.0, 0.79606003, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52516001, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.33680001, 0.0, 0.0, 0.0, 0.98505002, 0.43265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.17621, 0.0, 0.1, 0.30548 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.36271, 0.99487001, 0.0, 0.76375002, 0.051490001, 0.28324002, 0.0, 0.0, 0.0, 0.0, 0.18281001, 0.0, 0.2, 0.0, 0.46125999, 0.0 }, + { 0.090000004, 0.0, 0.39159, 0.0, 0.0, 0.93898004, 0.16081999, 0.0, 0.0, 0.0, 0.89101005, 0.055760004, 0.0, 0.0, 0.98740005, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.58618999, 0.55532002, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.18895, 0.0, 0.082340002 }, + { 0.33680001, 0.0, 0.0, 0.98505002, 0.32265002, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.066210002, 0.0, 0.0, 0.0, 0.0, 0.30548 }, }; } public double[][] getPermanences4() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.78185004, 0.15791, 0.21953, 0.0, 0.58410001, 0.0, 0.0, 0.0, 0.32391, 0.1, 0.0, 0.15948001, 0.0, 0.44874001, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.15192001, 0.45153001, 0.0, 0.0, 0.0, 0.54891002, 0.70109999, 0.0, 0.0, 0.64064002, 1.0 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.37270999, 0.0, 0.89486998, 0.0, 0.66374999, 0.0, 0.061489999, 0.18324, 0.0, 0.08281, 0.1, 0.47125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.062820002, 0.098190002, 0.0, 0.0, 0.79606003, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52516001, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.33680001, 0.0, 0.0, 0.0, 0.98505002, 0.43265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.17621, 0.0, 0.1, 0.30548 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.36271, 0.99487001, 0.0, 0.76375002, 0.051490001, 0.28324002, 0.0, 0.0, 0.0, 0.0, 0.18281001, 0.0, 0.2, 0.0, 0.46125999, 0.0 }, + { 0.090000004, 0.0, 0.39159, 0.0, 0.0, 0.93898004, 0.16081999, 0.0, 0.0, 0.0, 0.89101005, 0.055760004, 0.0, 0.0, 0.98740005, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.58618999, 0.55532002, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.18895, 0.0, 0.082340002 }, + { 0.33680001, 0.0, 0.0, 0.98505002, 0.32265002, 0.0, 0.0, 0.0, 0.0, 0.32742, 0.066210002, 0.0, 0.0, 0.0, 0.0, 0.30548 }, }; } public double[][] getPermanences5() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.36271, 0.0, 0.88486999, 0.0, 0.76375002, 0.0, 0.051490001, 0.28323999, 0.0, 0.18281001, 0.090000004, 0.57125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.32680002, 0.0, 0.0, 0.0, 0.97505003, 0.42265001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.42741999, 0.16621, 0.0, 0.2, 0.29548001 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.35271001, 0.98487002, 0.0, 0.86375004, 0.0, 0.27324003, 0.0, 0.0, 0.0, 0.0, 0.17281, 0.0, 0.19, 0.0, 0.56125998, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.57618999, 0.54532003, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.1, 0.0, 0.28895, 0.1, 0.072340004 }, + { 0.32680002, 0.0, 0.0, 1.0, 0.31265002, 0.0, 0.1, 0.0, 0.0, 0.42741999, 0.056210004, 0.1, 0.0, 0.0, 0.0, 0.29548001 }, }; } public double[][] getPermanences6() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.36271, 0.0, 0.88486999, 0.0, 0.76375002, 0.0, 0.051490001, 0.28323999, 0.0, 0.18281001, 0.090000004, 0.57125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.32680002, 0.0, 0.0, 0.0, 0.97505003, 0.42265001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.42741999, 0.16621, 0.0, 0.2, 0.29548001 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.35271001, 0.98487002, 0.0, 0.86375004, 0.0, 0.27324003, 0.0, 0.0, 0.0, 0.0, 0.17281, 0.0, 0.19, 0.0, 0.56125998, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.57618999, 0.54532003, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.1, 0.0, 0.28895, 0.1, 0.072340004 }, + { 0.32680002, 0.0, 0.0, 1.0, 0.31265002, 0.0, 0.1, 0.0, 0.0, 0.42741999, 0.056210004, 0.1, 0.0, 0.0, 0.0, 0.29548001 }, }; } public double[][] getPermanences7() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.19988, 0.0, 0.070080005, 0.0, 0.81801003, 0.76267999, 0.0, 0.45613998, 0.95174998, 0.23013, 0.0, 0.0, 0.85304004, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.89075005, 0.0, 0.0, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.0, 0.0, 0.58041, 0.53821999, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.36271, 0.0, 0.88486999, 0.0, 0.76375002, 0.0, 0.051490001, 0.28323999, 0.0, 0.18281001, 0.090000004, 0.57125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.32680002, 0.0, 0.0, 0.0, 0.97505003, 0.42265001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.42741999, 0.16621, 0.0, 0.2, 0.29548001 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.89075005, 0.60381001, 0.0, 0.073920004, 0.0, 0.60768002, 0.58041, 0.0, 0.0, 0.53821999, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.35271001, 0.98487002, 0.0, 0.86375004, 0.0, 0.27324003, 0.0, 0.0, 0.0, 0.0, 0.17281, 0.0, 0.19, 0.0, 0.56125998, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.57618999, 0.54532003, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.1, 0.0, 0.28895, 0.1, 0.072340004 }, + { 0.32680002, 0.0, 0.0, 1.0, 0.31265002, 0.0, 0.1, 0.0, 0.0, 0.42741999, 0.056210004, 0.1, 0.0, 0.0, 0.0, 0.29548001 }, }; } public double[][] getPermanences8() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.29988, 0.0, 0.060080007, 0.0, 0.91801006, 0.75268, 0.0, 0.44613999, 1.0, 0.33013001, 0.0, 0.0, 0.84304005, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.1, 0.99075007, 0.0, 0.0, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.0, 0.0, 0.68041003, 0.52822, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.35271001, 0.0, 0.98487002, 0.0, 0.75375003, 0.0, 0.15149, 0.38323998, 0.0, 0.28281, 0.080000006, 0.56125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.42680001, 0.0, 0.0, 0.0, 1.0, 0.41265002, 0.0, 0.0, 0.0, 0.2, 0.0, 0.52741998, 0.15620999, 0.0, 0.19, 0.28548002 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.1, 0.0, 0.0, 0.88075006, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.68041003, 0.0, 0.0, 0.52822, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.45271, 1.0, 0.0, 0.85375005, 0.1, 0.26324004, 0.0, 0.0, 0.0, 0.0, 0.16281, 0.0, 0.17999999, 0.0, 0.55125999, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.61568999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.90119004, 0.0, 0.17477, 0.084690005, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.67619002, 0.53532004, 0.19, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.2, 0.0, 0.27895001, 0.090000004, 0.062340006 }, + { 0.42680001, 0.0, 0.0, 0.99000001, 0.41265002, 0.0, 0.090000004, 0.0, 0.0, 0.52741998, 0.0, 0.2, 0.0, 0.0, 0.0, 0.28548002 }, }; } public double[][] getPermanences9() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.29988, 0.0, 0.060080007, 0.0, 0.91801006, 0.75268, 0.0, 0.44613999, 1.0, 0.33013001, 0.0, 0.0, 0.84304005, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.1, 0.99075007, 0.0, 0.0, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.0, 0.0, 0.68041003, 0.52822, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.35271001, 0.0, 0.98487002, 0.0, 0.75375003, 0.0, 0.15149, 0.38323998, 0.0, 0.28281, 0.080000006, 0.56125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.42680001, 0.0, 0.0, 0.0, 1.0, 0.41265002, 0.0, 0.0, 0.0, 0.2, 0.0, 0.52741998, 0.15620999, 0.0, 0.19, 0.28548002 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.1, 0.0, 0.0, 0.88075006, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.68041003, 0.0, 0.0, 0.52822, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.45271, 1.0, 0.0, 0.85375005, 0.1, 0.26324004, 0.0, 0.0, 0.0, 0.0, 0.16281, 0.0, 0.17999999, 0.0, 0.55125999, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.61568999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.90119004, 0.0, 0.17477, 0.084690005, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.67619002, 0.53532004, 0.19, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.2, 0.0, 0.27895001, 0.090000004, 0.062340006 }, + { 0.42680001, 0.0, 0.0, 0.99000001, 0.41265002, 0.0, 0.090000004, 0.0, 0.0, 0.52741998, 0.0, 0.2, 0.0, 0.0, 0.0, 0.28548002 }, }; } public double[][] getPermanences10() { return new double[][] { { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, - { 0.0, 0.77185005, 0.14791, 0.31953001, 0.0, 0.57410002, 0.0, 0.0, 0.0, 0.42390999, 0.090000004, 0.0, 0.14948, 0.0, 0.54874003, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.14192, 0.55153, 0.0, 0.0, 0.1, 0.53891003, 0.80110002, 0.0, 0.0, 0.74064004, 0.99000001 }, - { 0.29988, 0.0, 0.060080007, 0.0, 0.91801006, 0.75268, 0.0, 0.44613999, 1.0, 0.33013001, 0.0, 0.0, 0.84304005, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.1, 0.99075007, 0.0, 0.0, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.0, 0.0, 0.68041003, 0.52822, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.35271001, 0.0, 0.98487002, 0.0, 0.75375003, 0.0, 0.15149, 0.38323998, 0.0, 0.28281, 0.080000006, 0.56125998, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.42680001, 0.0, 0.0, 0.0, 1.0, 0.41265002, 0.0, 0.0, 0.0, 0.2, 0.0, 0.52741998, 0.15620999, 0.0, 0.19, 0.28548002 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.089880005, 0.0, 0.070080005, 0.0, 0.92801005, 0.0, 0.0, 0.76267999, 0.34614, 1.0, 0.0, 0.0, 0.34013, 0.74304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.1, 0.0, 0.0, 0.88075006, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.68041003, 0.0, 0.0, 0.52822, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.45271, 1.0, 0.0, 0.85375005, 0.1, 0.26324004, 0.0, 0.0, 0.0, 0.0, 0.16281, 0.0, 0.17999999, 0.0, 0.55125999, 0.0 }, + { 0.080000006, 0.0, 0.38159001, 0.0, 0.0, 0.92898005, 0.26082, 0.0, 0.0, 0.0, 0.88101006, 0.15576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.61568999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.90119004, 0.0, 0.17477, 0.084690005, 0.0, 0.0, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.67619002, 0.53532004, 0.19, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.2, 0.0, 0.27895001, 0.090000004, 0.062340006 }, + { 0.42680001, 0.0, 0.0, 0.99000001, 0.41265002, 0.0, 0.090000004, 0.0, 0.0, 0.52741998, 0.0, 0.2, 0.0, 0.0, 0.0, 0.28548002 }, }; } public double[][] getPermanences11() { return new double[][] { - { 0.0, 0.0, 0.84377003, 0.0, 0.0, 0.16271001, 0.052299999, 0.80379003, 0.0, 0.0, 0.61138999, 1.0, 0.0, 0.070179999, 0.0, 0.0 }, - { 0.0, 0.76185006, 0.24790999, 0.30953002, 0.0, 0.67410004, 0.0, 0.0, 0.0, 0.52390999, 0.19, 0.0, 0.13947999, 0.0, 0.64874005, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.29988, 0.0, 0.060080007, 0.0, 0.91801006, 0.75268, 0.0, 0.44613999, 1.0, 0.33013001, 0.0, 0.0, 0.84304005, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.1, 0.99075007, 0.0, 0.0, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.0, 0.0, 0.68041003, 0.52822, 0.0, 0.0, 0.0 }, - { 0.44362998, 0.0, 0.0, 0.0, 0.0, 0.15401, 0.6498, 0.23401999, 0.069460005, 0.0, 0.0, 0.064230002, 0.0, 0.0, 0.45227, 0.18265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.45271, 0.0, 0.97487003, 0.0, 0.74375004, 0.0, 0.14149, 0.48323998, 0.0, 0.38281, 0.070000008, 0.55125999, 0.0, 0.0 }, - { 0.0, 0.40158999, 0.94898003, 0.0, 0.17082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90101004, 0.0, 0.17576, 0.0, 0.0, 0.88740003 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.41680002, 0.0, 0.0, 0.0, 0.99000001, 0.51265001, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.62742001, 0.14620999, 0.0, 0.28999999, 0.27548003 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.18988001, 0.0, 0.060080007, 0.0, 0.91801006, 0.0, 0.0, 0.86268002, 0.44613999, 1.0, 0.0, 0.0, 0.44013, 0.73304003 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.1, 0.0, 0.0, 0.88075006, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.68041003, 0.0, 0.0, 0.52822, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.44271001, 0.99000001, 0.0, 0.84375006, 0.090000004, 0.36324003, 0.0, 0.0, 0.0, 0.0, 0.26280999, 0.0, 0.16999999, 0.0, 0.65126002, 0.0 }, + { 0.070000008, 0.0, 0.48159, 0.0, 0.0, 1.0, 0.25082001, 0.0, 0.0, 0.0, 0.98101008, 0.25576001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.71569002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.55846, 1.0, 0.0, 0.27476999, 0.074690007, 0.0, 0.1, 0.0 }, + { 0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001 }, + { 0.0, 0.66619003, 0.63532007, 0.17999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.30000001, 0.0, 0.26895002, 0.19, 0.052340008 }, + { 0.42680001, 0.0, 0.0, 0.99000001, 0.41265002, 0.0, 0.090000004, 0.0, 0.0, 0.52741998, 0.0, 0.2, 0.0, 0.0, 0.0, 0.28548002 }, }; } public double[][] getPermanences12() { return new double[][] { - { 0.0, 0.0, 0.84377003, 0.0, 0.0, 0.16271001, 0.052299999, 0.80379003, 0.0, 0.0, 0.61138999, 1.0, 0.0, 0.070179999, 0.0, 0.0 }, - { 0.0, 0.76185006, 0.24790999, 0.30953002, 0.0, 0.67410004, 0.0, 0.0, 0.0, 0.52390999, 0.19, 0.0, 0.13947999, 0.0, 0.64874005, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.81081998, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.29988, 0.0, 0.060080007, 0.0, 0.91801006, 0.75268, 0.0, 0.44613999, 1.0, 0.33013001, 0.0, 0.0, 0.84304005, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.2, 0.98075008, 0.0, 0.0, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.0, 0.0, 0.78041005, 0.62822002, 0.0, 0.0, 0.0 }, - { 0.54363, 0.0, 0.0, 0.0, 0.0, 0.14400999, 0.74980003, 0.22401999, 0.059460007, 0.0, 0.0, 0.16423, 0.0, 0.0, 0.44227001, 0.28264999 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.55271, 0.0, 0.96487004, 0.0, 0.84375006, 0.0, 0.13148999, 0.47323999, 0.0, 0.48280999, 0.17000002, 0.54126, 0.0, 0.0 }, - { 0.1, 0.39159, 1.0, 0.0, 0.16081999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89101005, 0.0, 0.27575999, 0.0, 0.0, 0.98740005 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.052820005, 0.19819, 0.0, 0.0, 0.89606005, 0.0, 0.0, 0.31277001, 0.0, 0.0, 0.0, 0.62516004, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.51680005, 0.0, 0.0, 0.0, 0.98000002, 0.50265002, 0.0, 0.0, 0.0, 0.29000002, 0.0, 0.72742003, 0.24620998, 0.0, 0.28, 0.37548003 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.78185004, 0.0, 0.0, 0.10953, 0.0, 0.0, 0.0, 0.69410002, 0.32391, 0.0, 0.0, 0.0, 0.15948001, 0.0, 0.55874002, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.28988001, 0.0, 0.050080009, 0.0, 1.0, 0.0, 0.0, 0.85268003, 0.43614, 1.0, 0.0, 0.0, 0.43013, 0.83304006 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.1, 0.0, 0.0, 0.88075006, 0.70381004, 0.0, 0.063920006, 0.0, 0.70768005, 0.68041003, 0.0, 0.0, 0.52822, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.44271001, 0.99000001, 0.0, 0.84375006, 0.090000004, 0.36324003, 0.0, 0.0, 0.0, 0.0, 0.26280999, 0.0, 0.16999999, 0.0, 0.65126002, 0.0 }, + { 0.17000002, 0.0, 0.58159, 0.0, 0.0, 0.99000001, 0.35082, 0.0, 0.0, 0.0, 0.97101009, 0.35576001, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.71569002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.55846, 1.0, 0.0, 0.27476999, 0.074690007, 0.0, 0.1, 0.0 }, + { 0.16282001, 0.0, 0.19819, 0.0, 0.0, 0.0, 0.89606005, 0.0, 0.20276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.62516004 }, + { 0.0, 0.65619004, 0.73532009, 0.16999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.0, 0.40000001, 0.0, 0.25895002, 0.17999999, 0.15234001 }, + { 0.52680004, 0.0, 0.0, 0.98000002, 0.40265003, 0.0, 0.19, 0.0, 0.0, 0.51741999, 0.0, 0.30000001, 0.0, 0.0, 0.0, 0.38548002 }, }; } public double[][] getPermanences13() { return new double[][] { - { 0.0, 0.0, 0.84377003, 0.0, 0.0, 0.16271001, 0.052299999, 0.80379003, 0.0, 0.0, 0.61138999, 1.0, 0.0, 0.070179999, 0.0, 0.0 }, - { 0.0, 0.75185007, 0.34790999, 0.40953001, 0.0, 0.66410005, 0.0, 0.0, 0.0, 0.62391001, 0.17999999, 0.0, 0.23947999, 0.0, 0.63874006, 0.0 }, - { 0.0, 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.80081999, 0.17339, 0.053800002, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.28988001, 0.0, 0.16008002, 0.0, 0.90801007, 0.74268001, 0.0, 0.54614002, 0.99000001, 0.43013, 0.0, 0.0, 0.94304007, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.2, 0.98075008, 0.0, 0.0, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.0, 0.0, 0.78041005, 0.62822002, 0.0, 0.0, 0.0 }, - { 0.54363, 0.0, 0.0, 0.0, 0.0, 0.14400999, 0.74980003, 0.22401999, 0.059460007, 0.0, 0.0, 0.16423, 0.0, 0.0, 0.44227001, 0.28264999 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.65271002, 0.0, 0.95487005, 0.0, 0.94375008, 0.0, 0.12148999, 0.57323998, 0.0, 0.47281, 0.27000001, 0.53126001, 0.0, 0.0 }, - { 0.1, 0.39159, 1.0, 0.0, 0.16081999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89101005, 0.0, 0.27575999, 0.0, 0.0, 0.98740005 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.15282001, 0.29819, 0.0, 0.0, 0.99606007, 0.0, 0.0, 0.41277, 0.0, 0.0, 0.1, 0.61516005, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.51680005, 0.0, 0.0, 0.0, 0.98000002, 0.50265002, 0.0, 0.0, 0.0, 0.29000002, 0.0, 0.72742003, 0.24620998, 0.0, 0.28, 0.37548003 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.77185005, 0.0, 0.0, 0.20953, 0.0, 0.0, 0.0, 0.79410005, 0.31391001, 0.0, 0.0, 0.0, 0.25948, 0.0, 0.54874003, 0.0 }, + { 0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.090000004, 0.0, 0.0, 0.98075008, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.78041005, 0.0, 0.0, 0.62822002, 0.0, 0.0, 0.0 }, + { 0.0, 0.44362998, 0.15401, 0.0, 0.6498, 0.12402, 0.0, 0.0, 0.0, 0.0, 0.17946, 0.0, 0.17423001, 0.45227, 0.0, 0.07265 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.44271001, 0.99000001, 0.0, 0.84375006, 0.090000004, 0.36324003, 0.0, 0.0, 0.0, 0.0, 0.26280999, 0.0, 0.16999999, 0.0, 0.65126002, 0.0 }, + { 0.17000002, 0.0, 0.58159, 0.0, 0.0, 0.99000001, 0.35082, 0.0, 0.0, 0.0, 0.97101009, 0.35576001, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.71569002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.55846, 1.0, 0.0, 0.27476999, 0.074690007, 0.0, 0.1, 0.0 }, + { 0.16282001, 0.0, 0.19819, 0.0, 0.0, 0.0, 0.89606005, 0.0, 0.20276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.62516004 }, + { 0.0, 0.64619005, 0.83532012, 0.26999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.39000002, 0.0, 0.24895002, 0.16999999, 0.14234 }, + { 0.51680005, 0.0, 0.0, 1.0, 0.39265004, 0.0, 0.28999999, 0.0, 0.0, 0.61742002, 0.0, 0.29000002, 0.0, 0.0, 0.0, 0.37548003 }, }; } public double[][] getPermanences14() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.75185007, 0.34790999, 0.40953001, 0.0, 0.66410005, 0.0, 0.0, 0.0, 0.62391001, 0.17999999, 0.0, 0.23947999, 0.0, 0.63874006, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.2, 0.98075008, 0.0, 0.0, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.0, 0.0, 0.78041005, 0.62822002, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.75271004, 0.0, 0.94487005, 0.0, 1.0, 0.0, 0.22149, 0.56323999, 0.0, 0.46281001, 0.26000002, 0.52126002, 0.0, 0.0 }, - { 0.1, 0.39159, 1.0, 0.0, 0.16081999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89101005, 0.0, 0.27575999, 0.0, 0.0, 0.98740005 }, - { 0.72569001, 0.0, 0.0, 0.0, 0.0, 0.56845999, 0.0, 0.90119004, 0.0, 0.0, 0.0, 0.064770006, 0.0, 0.0, 0.19469, 0.1 }, - { 0.0, 0.0, 0.15282001, 0.29819, 0.0, 0.0, 0.99606007, 0.0, 0.0, 0.41277, 0.0, 0.0, 0.1, 0.61516005, 0.0, 0.0 }, - { 0.58618999, 0.55532002, 0.0, 0.0, 0.1, 0.0, 0.0, 0.078950003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.082340002 }, - { 0.51680005, 0.0, 0.0, 0.0, 0.98000002, 0.50265002, 0.0, 0.0, 0.0, 0.29000002, 0.0, 0.72742003, 0.24620998, 0.0, 0.28, 0.37548003 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.77185005, 0.0, 0.0, 0.20953, 0.0, 0.0, 0.0, 0.79410005, 0.31391001, 0.0, 0.0, 0.0, 0.25948, 0.0, 0.54874003, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.090000004, 0.0, 0.0, 0.98075008, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.78041005, 0.0, 0.0, 0.62822002, 0.0, 0.0, 0.0 }, + { 0.0, 0.43362999, 0.25400999, 0.0, 0.63980001, 0.22402, 0.0, 0.0, 0.0, 0.0, 0.27946001, 0.0, 0.16423, 0.44227001, 0.0, 0.062650003 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.44271001, 0.99000001, 0.0, 0.84375006, 0.090000004, 0.36324003, 0.0, 0.0, 0.0, 0.0, 0.26280999, 0.0, 0.16999999, 0.0, 0.65126002, 0.0 }, + { 0.16000001, 0.0, 0.68159002, 0.0, 0.0, 1.0, 0.45082, 0.0, 0.1, 0.0, 1.0, 0.34576002, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.81569004, 0.0, 0.0, 0.2, 0.1, 0.0, 0.65846002, 0.99000001, 0.0, 0.26477, 0.064690009, 0.0, 0.090000004, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.64619005, 0.83532012, 0.26999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.39000002, 0.0, 0.24895002, 0.16999999, 0.14234 }, + { 0.51680005, 0.0, 0.0, 1.0, 0.39265004, 0.0, 0.28999999, 0.0, 0.0, 0.61742002, 0.0, 0.29000002, 0.0, 0.0, 0.0, 0.37548003 }, }; } public double[][] getPermanences15() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.2, 0.98075008, 0.0, 0.0, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.0, 0.0, 0.78041005, 0.62822002, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.75271004, 0.0, 0.94487005, 0.0, 1.0, 0.0, 0.22149, 0.56323999, 0.0, 0.46281001, 0.26000002, 0.52126002, 0.0, 0.0 }, - { 0.1, 0.39159, 1.0, 0.0, 0.16081999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89101005, 0.0, 0.27575999, 0.0, 0.0, 0.98740005 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.61680007, 0.0, 0.0, 0.0, 0.97000003, 0.49265003, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.71742004, 0.23620997, 0.0, 0.38, 0.36548004 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.090000004, 0.0, 0.0, 0.98075008, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.78041005, 0.0, 0.0, 0.62822002, 0.0, 0.0, 0.0 }, + { 0.0, 0.43362999, 0.25400999, 0.0, 0.63980001, 0.22402, 0.0, 0.0, 0.0, 0.0, 0.27946001, 0.0, 0.16423, 0.44227001, 0.0, 0.062650003 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.81569004, 0.0, 0.0, 0.2, 0.1, 0.0, 0.65846002, 0.99000001, 0.0, 0.26477, 0.064690009, 0.0, 0.090000004, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.74619007, 0.82532012, 0.36999997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.38000003, 0.0, 0.34895003, 0.26999998, 0.13234 }, + { 0.61680007, 0.0, 0.0, 1.0, 0.38265005, 0.0, 0.28, 0.0, 0.0, 0.71742004, 0.0, 0.28000003, 0.0, 0.0, 0.0, 0.36548004 }, }; } public double[][] getPermanences16() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.2, 0.98075008, 0.0, 0.0, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.0, 0.0, 0.78041005, 0.62822002, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.74513, 0.16734001, 0.0, 0.0, 0.0, 0.0, 0.051069997, 0.15857999, 0.057280004, 0.0, 0.0, 0.45163998, 0.17434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.75271004, 0.0, 0.94487005, 0.0, 1.0, 0.0, 0.22149, 0.56323999, 0.0, 0.46281001, 0.26000002, 0.52126002, 0.0, 0.0 }, - { 0.1, 0.39159, 1.0, 0.0, 0.16081999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89101005, 0.0, 0.27575999, 0.0, 0.0, 0.98740005 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.61680007, 0.0, 0.0, 0.0, 0.97000003, 0.49265003, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.71742004, 0.23620997, 0.0, 0.38, 0.36548004 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.090000004, 0.0, 0.0, 0.98075008, 0.69381005, 0.0, 0.16392002, 0.0, 0.69768006, 0.78041005, 0.0, 0.0, 0.62822002, 0.0, 0.0, 0.0 }, + { 0.0, 0.43362999, 0.25400999, 0.0, 0.63980001, 0.22402, 0.0, 0.0, 0.0, 0.0, 0.27946001, 0.0, 0.16423, 0.44227001, 0.0, 0.062650003 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.81569004, 0.0, 0.0, 0.2, 0.1, 0.0, 0.65846002, 0.99000001, 0.0, 0.26477, 0.064690009, 0.0, 0.090000004, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.74619007, 0.82532012, 0.36999997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.38000003, 0.0, 0.34895003, 0.26999998, 0.13234 }, + { 0.61680007, 0.0, 0.0, 1.0, 0.38265005, 0.0, 0.28, 0.0, 0.0, 0.71742004, 0.0, 0.28000003, 0.0, 0.0, 0.0, 0.36548004 }, }; } public double[][] getPermanences17() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.19, 1.0, 0.0, 0.0, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.0, 0.0, 0.88041008, 0.72822005, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.74271005, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.21148999, 0.66324002, 0.0, 0.56281, 0.36000001, 0.62126005, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.60680008, 0.0, 0.0, 0.0, 1.0, 0.48265004, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.81742007, 0.33620998, 0.0, 0.37, 0.35548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.84619009, 0.81532013, 0.35999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.59000003, 0.0, 0.48000002, 0.0, 0.44895002, 0.25999999, 0.12234 }, + { 0.60680008, 0.0, 0.0, 0.99000001, 0.48265004, 0.0, 0.27000001, 0.0, 0.0, 0.81742007, 0.0, 0.38000003, 0.0, 0.0, 0.0, 0.35548005 }, }; } public double[][] getPermanences18() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.19, 1.0, 0.0, 0.0, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.0, 0.0, 0.88041008, 0.72822005, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.74271005, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.21148999, 0.66324002, 0.0, 0.56281, 0.36000001, 0.62126005, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.60680008, 0.0, 0.0, 0.0, 1.0, 0.48265004, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.81742007, 0.33620998, 0.0, 0.37, 0.35548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.84619009, 0.81532013, 0.35999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.59000003, 0.0, 0.48000002, 0.0, 0.44895002, 0.25999999, 0.12234 }, + { 0.60680008, 0.0, 0.0, 0.99000001, 0.48265004, 0.0, 0.27000001, 0.0, 0.0, 0.81742007, 0.0, 0.38000003, 0.0, 0.0, 0.0, 0.35548005 }, }; } public double[][] getPermanences19() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.19, 1.0, 0.0, 0.0, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.0, 0.0, 0.88041008, 0.72822005, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.74271005, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.21148999, 0.66324002, 0.0, 0.56281, 0.36000001, 0.62126005, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.60680008, 0.0, 0.0, 0.0, 1.0, 0.48265004, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.81742007, 0.33620998, 0.0, 0.37, 0.35548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.84619009, 0.81532013, 0.35999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.59000003, 0.0, 0.48000002, 0.0, 0.44895002, 0.25999999, 0.12234 }, + { 0.60680008, 0.0, 0.0, 0.99000001, 0.48265004, 0.0, 0.27000001, 0.0, 0.0, 0.81742007, 0.0, 0.38000003, 0.0, 0.0, 0.0, 0.35548005 }, }; } public double[][] getPermanences20() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.27988002, 0.0, 0.26008001, 0.0, 0.89801008, 0.84268004, 0.0, 0.64614004, 1.0, 0.42013001, 0.0, 0.0, 0.93304008, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.19, 1.0, 0.0, 0.0, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.0, 0.0, 0.88041008, 0.72822005, 0.0, 0.0, 0.0 }, - { 0.53363001, 0.0, 0.0, 0.0, 0.0, 0.24401, 0.84980005, 0.32402, 0.15946001, 0.0, 0.0, 0.15423, 0.0, 0.0, 0.43227002, 0.27265 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.74271005, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.21148999, 0.66324002, 0.0, 0.56281, 0.36000001, 0.62126005, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.82569003, 0.1, 0.0, 0.0, 0.0, 0.55846, 0.0, 0.89119005, 0.0, 0.0, 0.0, 0.054770008, 0.0, 0.0, 0.29469001, 0.090000004 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.60680008, 0.0, 0.0, 0.0, 1.0, 0.48265004, 0.0, 0.0, 0.0, 0.49000001, 0.0, 0.81742007, 0.33620998, 0.0, 0.37, 0.35548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.87185007, 0.1, 0.0, 0.30952999, 0.0, 0.0, 0.0, 0.78410006, 0.30391002, 0.0, 0.0, 0.0, 0.24947999, 0.0, 0.64874005, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.38988, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.95268005, 0.42614001, 0.99000001, 0.0, 0.0, 0.42013001, 0.82304007 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.26000002, 0.0, 0.67159003, 0.0, 0.0, 0.99000001, 0.44082001, 0.0, 0.090000004, 0.0, 0.99000001, 0.33576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.84619009, 0.81532013, 0.35999998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.59000003, 0.0, 0.48000002, 0.0, 0.44895002, 0.25999999, 0.12234 }, + { 0.60680008, 0.0, 0.0, 0.99000001, 0.48265004, 0.0, 0.27000001, 0.0, 0.0, 0.81742007, 0.0, 0.38000003, 0.0, 0.0, 0.0, 0.35548005 }, }; } public double[][] getPermanences21() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 1.0, 0.90082002, 0.16339, 0.15380001, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.24191999, 0.54153001, 0.0, 0.0, 0.2, 0.63891006, 0.90110004, 0.0, 0.0, 0.84064007, 0.98000002 }, - { 0.37988001, 0.0, 0.36008, 0.0, 0.9980101, 0.83268005, 0.0, 0.74614006, 0.99000001, 0.41013002, 0.0, 0.0, 0.92304009, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.19, 1.0, 0.0, 0.0, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.0, 0.0, 0.88041008, 0.72822005, 0.0, 0.0, 0.0 }, - { 0.63363004, 0.0, 0.0, 0.0, 0.0, 0.23401, 0.83980006, 0.42401999, 0.14946, 0.0, 0.0, 0.25422999, 0.0, 0.0, 0.53227001, 0.26265001 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.84271008, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.20148998, 0.65324003, 0.0, 0.66281003, 0.35000002, 0.61126006, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.7068001, 0.0, 0.0, 0.0, 1.0, 0.47265005, 0.0, 0.0, 0.0, 0.48000002, 0.0, 0.91742009, 0.32620999, 0.0, 0.47, 0.34548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.48988, 0.0, 0.1, 0.0, 0.99000001, 0.0, 0.0, 0.94268006, 0.41614002, 1.0, 0.0, 0.0, 0.52013004, 0.81304008 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0 }, + { 0.54271001, 1.0, 0.0, 0.94375008, 0.080000006, 0.35324004, 0.0, 0.0, 0.0, 0.0, 0.25281, 0.0, 0.15999998, 0.0, 0.75126004, 0.0 }, + { 0.36000001, 0.0, 0.77159005, 0.0, 0.0, 0.98000002, 0.43082002, 0.0, 0.080000006, 0.0, 0.98000002, 0.43576002, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.15282001, 0.0, 0.29819, 0.0, 0.0, 0.1, 0.99606007, 0.0, 0.30276999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.61516005 }, + { 0.0, 0.8361901, 0.91532016, 0.34999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.58000004, 0.0, 0.58000004, 0.0, 0.43895003, 0.35999998, 0.11234 }, + { 0.7068001, 0.0, 0.0, 0.98000002, 0.58265007, 0.0, 0.26000002, 0.0, 0.0, 0.80742007, 0.0, 0.48000002, 0.0, 0.0, 0.0, 0.34548005 }, }; } public double[][] getPermanences22() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.85185009, 0.33791, 0.50953001, 0.0, 0.65410006, 0.0, 0.0, 0.0, 0.72391003, 0.16999999, 0.0, 0.22947998, 0.0, 0.73874009, 0.0 }, - { 0.0, 0.0, 0.0, 0.64431006, 0.0, 0.74772006, 1.0, 0.99000001, 1.0, 0.15338999, 0.2538, 0.0, 0.0, 0.0, 0.1, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.37988001, 0.0, 0.36008, 0.0, 0.9980101, 0.83268005, 0.0, 0.74614006, 0.99000001, 0.41013002, 0.0, 0.0, 0.92304009, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.73363006, 0.0, 0.0, 0.0, 0.0, 0.22400999, 0.93980008, 0.41402, 0.24946001, 0.0, 0.0, 0.24422999, 0.0, 0.0, 0.63227004, 0.25265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.83271009, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.30148998, 0.64324003, 0.0, 0.65281004, 0.34000003, 0.71126008, 0.0, 0.0 }, - { 0.090000004, 0.49158999, 0.99000001, 0.0, 0.26082, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88101006, 0.0, 0.37575999, 0.0, 0.0, 0.97740006 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.7068001, 0.0, 0.0, 0.0, 1.0, 0.47265005, 0.0, 0.0, 0.0, 0.48000002, 0.0, 0.91742009, 0.32620999, 0.0, 0.47, 0.34548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.53363001, 0.24400999, 0.0, 0.73980004, 0.21402, 0.0, 0.0, 0.0, 0.0, 0.26946002, 0.0, 0.26423001, 0.54227, 0.0, 0.052650005 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.64271003, 0.99000001, 0.0, 0.93375009, 0.070000008, 0.34324005, 0.0, 0.0, 0.0, 0.0, 0.35281, 0.0, 0.14999998, 0.0, 0.85126007, 0.0 }, + { 0.46000001, 0.0, 0.76159006, 0.0, 0.0, 0.97000003, 0.53082001, 0.0, 0.18000001, 0.0, 1.0, 0.42576003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.80569005, 0.0, 0.0, 0.19, 0.090000004, 0.0, 0.64846003, 1.0, 0.0, 0.36477, 0.16469002, 0.0, 0.080000006, 0.0 }, + { 0.25282001, 0.0, 0.28819001, 0.0, 0.0, 0.090000004, 1.0, 0.0, 0.40276998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.60516006 }, + { 0.0, 0.8361901, 0.91532016, 0.34999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.58000004, 0.0, 0.58000004, 0.0, 0.43895003, 0.35999998, 0.11234 }, + { 0.7068001, 0.0, 0.0, 0.98000002, 0.58265007, 0.0, 0.26000002, 0.0, 0.0, 0.80742007, 0.0, 0.48000002, 0.0, 0.0, 0.0, 0.34548005 }, }; } public double[][] getPermanences23() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.64431006, 0.0, 0.74772006, 1.0, 0.99000001, 1.0, 0.15338999, 0.2538, 0.0, 0.0, 0.0, 0.1, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.36988002, 0.0, 0.46008, 0.0, 0.98801011, 0.93268007, 0.0, 0.73614007, 1.0, 0.40013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.73363006, 0.0, 0.0, 0.0, 0.0, 0.22400999, 0.93980008, 0.41402, 0.24946001, 0.0, 0.0, 0.24422999, 0.0, 0.0, 0.63227004, 0.25265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.93271011, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.40148997, 0.63324004, 0.0, 0.64281005, 0.44000003, 0.70126009, 0.0, 0.0 }, - { 0.080000006, 0.48159, 1.0, 0.0, 0.25082001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.98101008, 0.0, 0.47575998, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.69680011, 0.0, 0.0, 0.0, 0.99000001, 0.57265007, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.9074201, 0.42620999, 0.0, 0.46000001, 0.44548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.52363002, 0.34401, 0.0, 0.72980005, 0.31402001, 0.0, 0.0, 0.0, 0.0, 0.36946002, 0.0, 0.36423001, 0.53227001, 0.0, 0.15265 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.63271004, 0.98000002, 0.0, 0.9237501, 0.06000001, 0.44324005, 0.0, 0.0, 0.0, 0.0, 0.45280999, 0.0, 0.24999997, 0.0, 0.84126008, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.24282001, 0.0, 0.38819, 0.0, 0.0, 0.19, 0.99000001, 0.0, 0.50277001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.090000004, 0.70516008 }, + { 0.0, 0.8361901, 0.91532016, 0.34999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.58000004, 0.0, 0.58000004, 0.0, 0.43895003, 0.35999998, 0.11234 }, + { 0.7068001, 0.0, 0.0, 0.98000002, 0.58265007, 0.0, 0.26000002, 0.0, 0.0, 0.80742007, 0.0, 0.48000002, 0.0, 0.0, 0.0, 0.34548005 }, }; } public double[][] getPermanences24() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.64431006, 0.0, 0.74772006, 1.0, 0.99000001, 1.0, 0.15338999, 0.2538, 0.0, 0.0, 0.0, 0.1, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.36988002, 0.0, 0.46008, 0.0, 0.98801011, 0.93268007, 0.0, 0.73614007, 1.0, 0.40013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.73363006, 0.0, 0.0, 0.0, 0.0, 0.22400999, 0.93980008, 0.41402, 0.24946001, 0.0, 0.0, 0.24422999, 0.0, 0.0, 0.63227004, 0.25265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.93271011, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.40148997, 0.63324004, 0.0, 0.64281005, 0.44000003, 0.70126009, 0.0, 0.0 }, - { 0.080000006, 0.48159, 1.0, 0.0, 0.25082001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.98101008, 0.0, 0.47575998, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.69680011, 0.0, 0.0, 0.0, 0.99000001, 0.57265007, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.9074201, 0.42620999, 0.0, 0.46000001, 0.44548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.56152999, 0.0, 0.0, 0.0, 0.0, 0.54891002, 0.0, 0.0, 0.70109999, 0.64064002, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.52363002, 0.34401, 0.0, 0.72980005, 0.31402001, 0.0, 0.0, 0.0, 0.0, 0.36946002, 0.0, 0.36423001, 0.53227001, 0.0, 0.15265 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.63271004, 0.98000002, 0.0, 0.9237501, 0.06000001, 0.44324005, 0.0, 0.0, 0.0, 0.0, 0.45280999, 0.0, 0.24999997, 0.0, 0.84126008, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.24282001, 0.0, 0.38819, 0.0, 0.0, 0.19, 0.99000001, 0.0, 0.50277001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.090000004, 0.70516008 }, + { 0.0, 0.8361901, 0.91532016, 0.34999999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.58000004, 0.0, 0.58000004, 0.0, 0.43895003, 0.35999998, 0.11234 }, + { 0.7068001, 0.0, 0.0, 0.98000002, 0.58265007, 0.0, 0.26000002, 0.0, 0.0, 0.80742007, 0.0, 0.48000002, 0.0, 0.0, 0.0, 0.34548005 }, }; } public double[][] getPermanences25() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.35988003, 0.0, 0.45008001, 0.0, 1.0, 0.92268008, 0.0, 0.8361401, 1.0, 0.39013004, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.92271012, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.50149, 0.62324005, 0.0, 0.63281006, 0.43000004, 0.80126011, 0.0, 0.0 }, - { 0.070000008, 0.47159001, 0.99000001, 0.0, 0.35082, 0.0, 0.0, 0.0, 0.2, 0.0, 1.0, 0.0, 0.46575999, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.69680011, 0.0, 0.0, 0.0, 0.99000001, 0.57265007, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.9074201, 0.42620999, 0.0, 0.46000001, 0.44548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.51363003, 0.33401, 0.0, 0.82980007, 0.30402002, 0.0, 0.0, 0.0, 0.0, 0.46946001, 0.0, 0.35423002, 0.63227004, 0.0, 0.25264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.63271004, 0.98000002, 0.0, 0.9237501, 0.06000001, 0.44324005, 0.0, 0.0, 0.0, 0.0, 0.45280999, 0.0, 0.24999997, 0.0, 0.84126008, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.69680011, 0.0, 0.0, 0.97000003, 0.68265009, 0.0, 0.25000003, 0.0, 0.0, 0.79742008, 0.1, 0.47000003, 0.0, 0.0, 0.0, 0.44548005 }, }; } public double[][] getPermanences26() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.35988003, 0.0, 0.45008001, 0.0, 1.0, 0.92268008, 0.0, 0.8361401, 1.0, 0.39013004, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.92271012, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.50149, 0.62324005, 0.0, 0.63281006, 0.43000004, 0.80126011, 0.0, 0.0 }, - { 0.070000008, 0.47159001, 0.99000001, 0.0, 0.35082, 0.0, 0.0, 0.0, 0.2, 0.0, 1.0, 0.0, 0.46575999, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.69680011, 0.0, 0.0, 0.0, 0.99000001, 0.57265007, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.9074201, 0.42620999, 0.0, 0.46000001, 0.44548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.51363003, 0.33401, 0.0, 0.82980007, 0.30402002, 0.0, 0.0, 0.0, 0.0, 0.46946001, 0.0, 0.35423002, 0.63227004, 0.0, 0.25264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.63271004, 0.98000002, 0.0, 0.9237501, 0.06000001, 0.44324005, 0.0, 0.0, 0.0, 0.0, 0.45280999, 0.0, 0.24999997, 0.0, 0.84126008, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.69680011, 0.0, 0.0, 0.97000003, 0.68265009, 0.0, 0.25000003, 0.0, 0.0, 0.79742008, 0.1, 0.47000003, 0.0, 0.0, 0.0, 0.44548005 }, }; } public double[][] getPermanences27() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.35988003, 0.0, 0.45008001, 0.0, 1.0, 0.92268008, 0.0, 0.8361401, 1.0, 0.39013004, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.28999999, 0.99000001, 0.0, 0.0, 0.78381008, 0.0, 0.25392002, 0.0, 0.78768009, 0.0, 0.0, 0.87041008, 0.71822006, 0.0, 0.1, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.92271012, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.50149, 0.62324005, 0.0, 0.63281006, 0.43000004, 0.80126011, 0.0, 0.0 }, - { 0.070000008, 0.47159001, 0.99000001, 0.0, 0.35082, 0.0, 0.0, 0.0, 0.2, 0.0, 1.0, 0.0, 0.46575999, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.69680011, 0.0, 0.0, 0.0, 0.99000001, 0.57265007, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.9074201, 0.42620999, 0.0, 0.46000001, 0.44548005 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.47988001, 0.0, 0.090000004, 0.0, 1.0, 0.0, 0.0, 0.93268007, 0.51614004, 0.99000001, 0.0, 0.0, 0.62013006, 0.80304009 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.080000006, 0.0, 0.0, 0.97075009, 0.79381007, 0.0, 0.15392001, 0.0, 0.68768007, 0.88041008, 0.0, 0.0, 0.72822005, 0.0, 0.0, 0.0 }, + { 0.0, 0.51363003, 0.33401, 0.0, 0.82980007, 0.30402002, 0.0, 0.0, 0.0, 0.0, 0.46946001, 0.0, 0.35423002, 0.63227004, 0.0, 0.25264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.63271004, 0.98000002, 0.0, 0.9237501, 0.06000001, 0.44324005, 0.0, 0.0, 0.0, 0.0, 0.45280999, 0.0, 0.24999997, 0.0, 0.84126008, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.69680011, 0.0, 0.0, 0.97000003, 0.68265009, 0.0, 0.25000003, 0.0, 0.0, 0.79742008, 0.1, 0.47000003, 0.0, 0.0, 0.0, 0.44548005 }, }; } public double[][] getPermanences28() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.45988002, 0.0, 0.44008002, 0.0, 1.0, 0.91268009, 0.0, 0.82614011, 0.99000001, 0.49013004, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.38999999, 0.98000002, 0.0, 0.0, 0.8838101, 0.0, 0.24392001, 0.0, 0.7776801, 0.0, 0.0, 0.86041009, 0.81822008, 0.0, 0.090000004, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.91271013, 0.0, 1.0, 0.0, 0.97000003, 0.0, 0.49149001, 0.72324008, 0.0, 0.62281007, 0.53000003, 0.79126012, 0.0, 0.0 }, - { 0.17000002, 0.46159002, 0.98000002, 0.0, 0.45082, 0.0, 0.0, 0.0, 0.19, 0.0, 1.0, 0.0, 0.56576002, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.79680014, 0.0, 0.0, 0.0, 1.0, 0.56265008, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.89742011, 0.52621001, 0.0, 0.45000002, 0.54548007 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.18000001, 0.0, 0.0, 0.9607501, 0.89381009, 0.0, 0.14392, 0.0, 0.67768008, 0.9804101, 0.0, 0.0, 0.82822007, 0.0, 0.0, 0.0 }, + { 0.0, 0.50363004, 0.32401001, 0.0, 0.92980009, 0.29402003, 0.0, 0.0, 0.0, 0.0, 0.56946003, 0.0, 0.45423001, 0.62227005, 0.0, 0.35264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.73271006, 0.97000003, 0.0, 0.91375011, 0.16000001, 0.43324006, 0.0, 0.0, 0.0, 0.0, 0.55281001, 0.0, 0.34999996, 0.0, 0.83126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.79680014, 0.0, 0.0, 0.96000004, 0.78265011, 0.0, 0.24000002, 0.0, 0.0, 0.89742011, 0.2, 0.46000004, 0.0, 0.0, 0.0, 0.54548007 }, }; } public double[][] getPermanences29() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.45988002, 0.0, 0.44008002, 0.0, 1.0, 0.91268009, 0.0, 0.82614011, 0.99000001, 0.49013004, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.38999999, 0.98000002, 0.0, 0.0, 0.8838101, 0.0, 0.24392001, 0.0, 0.7776801, 0.0, 0.0, 0.86041009, 0.81822008, 0.0, 0.090000004, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.91271013, 0.0, 1.0, 0.0, 0.97000003, 0.0, 0.49149001, 0.72324008, 0.0, 0.62281007, 0.53000003, 0.79126012, 0.0, 0.0 }, - { 0.17000002, 0.46159002, 0.98000002, 0.0, 0.45082, 0.0, 0.0, 0.0, 0.19, 0.0, 1.0, 0.0, 0.56576002, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.79680014, 0.0, 0.0, 0.0, 1.0, 0.56265008, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.89742011, 0.52621001, 0.0, 0.45000002, 0.54548007 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.18000001, 0.0, 0.0, 0.9607501, 0.89381009, 0.0, 0.14392, 0.0, 0.67768008, 0.9804101, 0.0, 0.0, 0.82822007, 0.0, 0.0, 0.0 }, + { 0.0, 0.50363004, 0.32401001, 0.0, 0.92980009, 0.29402003, 0.0, 0.0, 0.0, 0.0, 0.56946003, 0.0, 0.45423001, 0.62227005, 0.0, 0.35264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.73271006, 0.97000003, 0.0, 0.91375011, 0.16000001, 0.43324006, 0.0, 0.0, 0.0, 0.0, 0.55281001, 0.0, 0.34999996, 0.0, 0.83126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.79680014, 0.0, 0.0, 0.96000004, 0.78265011, 0.0, 0.24000002, 0.0, 0.0, 0.89742011, 0.2, 0.46000004, 0.0, 0.0, 0.0, 0.54548007 }, }; } public double[][] getPermanences30() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.45988002, 0.0, 0.44008002, 0.0, 1.0, 0.91268009, 0.0, 0.82614011, 0.99000001, 0.49013004, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.38999999, 0.98000002, 0.0, 0.0, 0.8838101, 0.0, 0.24392001, 0.0, 0.7776801, 0.0, 0.0, 0.86041009, 0.81822008, 0.0, 0.090000004, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.84513003, 0.15734001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.14857998, 0.15728, 0.0, 0.0, 0.55163997, 0.27434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.91271013, 0.0, 1.0, 0.0, 0.97000003, 0.0, 0.49149001, 0.72324008, 0.0, 0.62281007, 0.53000003, 0.79126012, 0.0, 0.0 }, - { 0.17000002, 0.46159002, 0.98000002, 0.0, 0.45082, 0.0, 0.0, 0.0, 0.19, 0.0, 1.0, 0.0, 0.56576002, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.79680014, 0.0, 0.0, 0.0, 1.0, 0.56265008, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.89742011, 0.52621001, 0.0, 0.45000002, 0.54548007 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.18000001, 0.0, 0.0, 0.9607501, 0.89381009, 0.0, 0.14392, 0.0, 0.67768008, 0.9804101, 0.0, 0.0, 0.82822007, 0.0, 0.0, 0.0 }, + { 0.0, 0.50363004, 0.32401001, 0.0, 0.92980009, 0.29402003, 0.0, 0.0, 0.0, 0.0, 0.56946003, 0.0, 0.45423001, 0.62227005, 0.0, 0.35264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.73271006, 0.97000003, 0.0, 0.91375011, 0.16000001, 0.43324006, 0.0, 0.0, 0.0, 0.0, 0.55281001, 0.0, 0.34999996, 0.0, 0.83126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.90569007, 0.0, 0.0, 0.28999999, 0.080000006, 0.0, 0.74846005, 0.99000001, 0.0, 0.35477, 0.26469001, 0.0, 0.070000008, 0.0 }, + { 0.23282, 0.0, 0.37819001, 0.0, 0.0, 0.17999999, 0.98000002, 0.0, 0.60277003, 0.0, 0.0, 0.0, 0.0, 0.0, 0.080000006, 0.80516011 }, + { 0.0, 0.82619011, 0.90532017, 0.34, 0.0, 0.0, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.57000005, 0.0, 0.53895003, 0.34999999, 0.21234 }, + { 0.79680014, 0.0, 0.0, 0.96000004, 0.78265011, 0.0, 0.24000002, 0.0, 0.0, 0.89742011, 0.2, 0.46000004, 0.0, 0.0, 0.0, 0.54548007 }, }; } public double[][] getPermanences31() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.48999998, 1.0, 0.0, 0.0, 0.87381011, 0.0, 0.34392002, 0.0, 0.76768011, 0.0, 0.0, 0.8504101, 0.9182201, 0.0, 0.080000006, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.94513005, 0.25734001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.13857998, 0.25727999, 0.0, 0.0, 0.65164, 0.26435, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.48149002, 0.8232401, 0.0, 0.61281008, 0.63000005, 0.78126013, 0.0, 0.0 }, - { 0.27000001, 0.56159002, 1.0, 0.0, 0.44082001, 0.0, 0.0, 0.0, 0.17999999, 0.0, 0.99000001, 0.0, 0.66576004, 0.0, 0.0, 0.99000001 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.79680014, 0.0, 0.0, 0.0, 1.0, 0.56265008, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.89742011, 0.52621001, 0.0, 0.45000002, 0.54548007 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.28, 0.0, 0.0, 0.95075011, 0.8838101, 0.0, 0.24392, 0.0, 0.66768008, 1.0, 0.0, 0.0, 0.92822009, 0.0, 0.0, 0.0 }, + { 0.0, 0.50363004, 0.32401001, 0.0, 0.92980009, 0.29402003, 0.0, 0.0, 0.0, 0.0, 0.56946003, 0.0, 0.45423001, 0.62227005, 0.0, 0.35264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.73271006, 0.97000003, 0.0, 0.91375011, 0.16000001, 0.43324006, 0.0, 0.0, 0.0, 0.0, 0.55281001, 0.0, 0.34999996, 0.0, 0.83126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.33282, 0.0, 0.47819, 0.0, 0.0, 0.16999999, 1.0, 0.0, 0.59277004, 0.1, 0.0, 0.0, 0.0, 0.0, 0.070000008, 0.79516011 }, + { 0.0, 0.92619014, 1.0, 0.33000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.67000008, 0.0, 0.56000006, 0.0, 0.52895004, 0.34, 0.20233999 }, + { 0.89680016, 0.0, 0.0, 0.95000005, 0.77265012, 0.0, 0.34000003, 0.0, 0.0, 0.99742013, 0.19, 0.45000005, 0.0, 0.0, 0.0, 0.53548008 }, }; } public double[][] getPermanences32() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.8418501, 0.43790999, 0.49953002, 0.0, 0.75410008, 0.0, 0.0, 0.0, 0.71391004, 0.26999998, 0.0, 0.32947999, 0.0, 0.7287401, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.23191999, 0.64153004, 0.0, 0.0, 0.19, 0.73891008, 0.89110005, 0.0, 0.0, 0.94064009, 0.97000003 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.48999998, 1.0, 0.0, 0.0, 0.87381011, 0.0, 0.34392002, 0.0, 0.76768011, 0.0, 0.0, 0.8504101, 0.9182201, 0.0, 0.080000006, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 0.94513005, 0.25734001, 0.0, 0.0, 0.0, 0.1, 0.0, 0.13857998, 0.25727999, 0.0, 0.0, 0.65164, 0.26435, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.48149002, 0.8232401, 0.0, 0.61281008, 0.63000005, 0.78126013, 0.0, 0.0 }, - { 0.27000001, 0.56159002, 1.0, 0.0, 0.44082001, 0.0, 0.0, 0.0, 0.17999999, 0.0, 0.99000001, 0.0, 0.66576004, 0.0, 0.0, 0.99000001 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.79680014, 0.0, 0.0, 0.0, 1.0, 0.56265008, 0.0, 0.0, 0.0, 0.57000005, 0.0, 0.89742011, 0.52621001, 0.0, 0.45000002, 0.54548007 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.28, 0.0, 0.0, 0.95075011, 0.8838101, 0.0, 0.24392, 0.0, 0.66768008, 1.0, 0.0, 0.0, 0.92822009, 0.0, 0.0, 0.0 }, + { 0.0, 0.50363004, 0.32401001, 0.0, 0.92980009, 0.29402003, 0.0, 0.0, 0.0, 0.0, 0.56946003, 0.0, 0.45423001, 0.62227005, 0.0, 0.35264999 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.73271006, 0.97000003, 0.0, 0.91375011, 0.16000001, 0.43324006, 0.0, 0.0, 0.0, 0.0, 0.55281001, 0.0, 0.34999996, 0.0, 0.83126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.33282, 0.0, 0.47819, 0.0, 0.0, 0.16999999, 1.0, 0.0, 0.59277004, 0.1, 0.0, 0.0, 0.0, 0.0, 0.070000008, 0.79516011 }, + { 0.0, 0.92619014, 1.0, 0.33000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.67000008, 0.0, 0.56000006, 0.0, 0.52895004, 0.34, 0.20233999 }, + { 0.89680016, 0.0, 0.0, 0.95000005, 0.77265012, 0.0, 0.34000003, 0.0, 0.0, 0.99742013, 0.19, 0.45000005, 0.0, 0.0, 0.0, 0.53548008 }, }; } public double[][] getPermanences33() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.1, 0.0, 0.0, 0.0, 0.22191998, 0.63153005, 0.0, 0.0, 0.28999999, 0.8389101, 0.88110006, 0.0, 0.0, 0.9306401, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.48999998, 1.0, 0.0, 0.0, 0.87381011, 0.0, 0.34392002, 0.0, 0.76768011, 0.0, 0.0, 0.8504101, 0.9182201, 0.0, 0.080000006, 0.0 }, - { 0.72363007, 0.0, 0.0, 0.0, 0.0, 0.21400999, 0.92980009, 0.51402003, 0.34946001, 0.0, 0.0, 0.23422998, 0.0, 0.0, 0.62227005, 0.35265002 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.48149002, 0.8232401, 0.0, 0.61281008, 0.63000005, 0.78126013, 0.0, 0.0 }, - { 0.26000002, 0.66159004, 0.99000001, 0.0, 0.43082002, 0.0, 0.0, 0.0, 0.16999999, 0.0, 1.0, 0.0, 0.76576006, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.78680015, 0.0, 0.0, 0.0, 0.99000001, 0.55265009, 0.0, 0.0, 0.0, 0.67000008, 0.0, 0.88742012, 0.62621003, 0.0, 0.44000003, 0.6454801 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.46988001, 0.0, 0.19, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61614007, 0.98000002, 0.0, 0.0, 0.61013007, 0.90304011 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.27000001, 0.0, 0.0, 1.0, 0.87381011, 0.0, 0.23391999, 0.0, 0.65768009, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.60363007, 0.31401002, 0.0, 0.9198001, 0.28402004, 0.0, 0.0, 0.0, 0.0, 0.66946006, 0.0, 0.55423003, 0.61227006, 0.0, 0.45264998 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.72271007, 1.0, 0.0, 1.0, 0.15000001, 0.42324007, 0.0, 0.0, 0.0, 0.0, 0.65281004, 0.0, 0.44999996, 0.0, 0.82126009, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.33282, 0.0, 0.47819, 0.0, 0.0, 0.16999999, 1.0, 0.0, 0.59277004, 0.1, 0.0, 0.0, 0.0, 0.0, 0.070000008, 0.79516011 }, + { 0.0, 1.0, 0.99000001, 0.43000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.7700001, 0.0, 0.55000007, 0.0, 0.51895005, 0.33000001, 0.30234 }, + { 0.88680017, 0.0, 0.0, 1.0, 0.76265013, 0.0, 0.33000004, 0.0, 0.0, 1.0, 0.28999999, 0.44000006, 0.0, 0.0, 0.0, 0.63548011 }, }; } public double[][] getPermanences34() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.090000004, 0.0, 0.0, 0.0, 0.21191998, 0.73153007, 0.0, 0.0, 0.28, 0.93891013, 0.87110007, 0.0, 0.0, 0.92064011, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.58999997, 0.99000001, 0.0, 0.0, 0.97381014, 0.0, 0.44392002, 0.0, 0.75768012, 0.0, 0.0, 0.84041011, 0.90822011, 0.0, 0.070000008, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.48149002, 0.8232401, 0.0, 0.61281008, 0.63000005, 0.78126013, 0.0, 0.0 }, - { 0.36000001, 0.65159005, 0.98000002, 0.0, 0.53082001, 0.0, 0.0, 0.0, 0.15999998, 0.0, 1.0, 0.0, 0.75576007, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.68619001, 0.65532005, 0.0, 0.1, 0.090000004, 0.0, 0.0, 0.068950005, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.072340004 }, - { 0.88680017, 0.0, 0.0, 0.0, 1.0, 0.5426501, 0.0, 0.0, 0.0, 0.66000009, 0.0, 0.87742013, 0.61621004, 0.0, 0.43000004, 0.74548012 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.45988002, 0.0, 0.28999999, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.71614009, 0.97000003, 0.0, 0.0, 0.60013008, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.60363007, 0.31401002, 0.0, 0.9198001, 0.28402004, 0.0, 0.0, 0.0, 0.0, 0.66946006, 0.0, 0.55423003, 0.61227006, 0.0, 0.45264998 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.8227101, 0.99000001, 0.0, 1.0, 0.25, 0.41324008, 0.0, 0.0, 0.0, 0.0, 0.75281006, 0.0, 0.43999997, 0.0, 0.8112601, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.43281999, 0.0, 0.46819001, 0.0, 0.0, 0.15999998, 1.0, 0.0, 0.58277005, 0.090000004, 0.0, 0.0, 0.0, 0.0, 0.06000001, 0.89516014 }, + { 0.0, 1.0, 0.99000001, 0.43000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.7700001, 0.0, 0.55000007, 0.0, 0.51895005, 0.33000001, 0.30234 }, + { 0.98680019, 0.0, 0.0, 1.0, 0.86265016, 0.0, 0.43000004, 0.0, 0.0, 0.99000001, 0.38999999, 0.43000007, 0.0, 0.0, 0.0, 0.73548013 }, }; } public double[][] getPermanences35() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.090000004, 0.0, 0.0, 0.0, 0.21191998, 0.73153007, 0.0, 0.0, 0.28, 0.93891013, 0.87110007, 0.0, 0.0, 0.92064011, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.46000001, 0.75159007, 0.97000003, 0.0, 0.63082004, 0.0, 0.0, 0.0, 0.14999998, 0.0, 0.99000001, 0.0, 0.74576008, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.98680019, 0.0, 0.0, 0.0, 1.0, 0.53265011, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.86742014, 0.60621005, 0.0, 0.42000005, 0.84548014 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.45988002, 0.0, 0.28999999, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.71614009, 0.97000003, 0.0, 0.0, 0.60013008, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.92271012, 1.0, 0.0, 0.99000001, 0.34999999, 0.40324008, 0.0, 0.0, 0.0, 0.0, 0.74281007, 0.0, 0.42999998, 0.0, 0.80126011, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.99000001, 0.96265018, 0.0, 0.53000003, 0.0, 0.0, 0.98000002, 0.38, 0.42000008, 0.0, 0.0, 0.0, 0.83548015 }, }; } public double[][] getPermanences36() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.090000004, 0.0, 0.0, 0.0, 0.21191998, 0.73153007, 0.0, 0.0, 0.28, 0.93891013, 0.87110007, 0.0, 0.0, 0.92064011, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.46000001, 0.75159007, 0.97000003, 0.0, 0.63082004, 0.0, 0.0, 0.0, 0.14999998, 0.0, 0.99000001, 0.0, 0.74576008, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.98680019, 0.0, 0.0, 0.0, 1.0, 0.53265011, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.86742014, 0.60621005, 0.0, 0.42000005, 0.84548014 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.45988002, 0.0, 0.28999999, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.71614009, 0.97000003, 0.0, 0.0, 0.60013008, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.92271012, 1.0, 0.0, 0.99000001, 0.34999999, 0.40324008, 0.0, 0.0, 0.0, 0.0, 0.74281007, 0.0, 0.42999998, 0.0, 0.80126011, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.99000001, 0.96265018, 0.0, 0.53000003, 0.0, 0.0, 0.98000002, 0.38, 0.42000008, 0.0, 0.0, 0.0, 0.83548015 }, }; } public double[][] getPermanences37() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.090000004, 0.0, 0.0, 0.0, 0.21191998, 0.73153007, 0.0, 0.0, 0.28, 0.93891013, 0.87110007, 0.0, 0.0, 0.92064011, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.46000001, 0.75159007, 0.97000003, 0.0, 0.63082004, 0.0, 0.0, 0.0, 0.14999998, 0.0, 0.99000001, 0.0, 0.74576008, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.98680019, 0.0, 0.0, 0.0, 1.0, 0.53265011, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.86742014, 0.60621005, 0.0, 0.42000005, 0.84548014 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.45988002, 0.0, 0.28999999, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.71614009, 0.97000003, 0.0, 0.0, 0.60013008, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.92271012, 1.0, 0.0, 0.99000001, 0.34999999, 0.40324008, 0.0, 0.0, 0.0, 0.0, 0.74281007, 0.0, 0.42999998, 0.0, 0.80126011, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.99000001, 0.96265018, 0.0, 0.53000003, 0.0, 0.0, 0.98000002, 0.38, 0.42000008, 0.0, 0.0, 0.0, 0.83548015 }, }; } public double[][] getPermanences38() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.090000004, 0.0, 0.0, 0.0, 0.21191998, 0.73153007, 0.0, 0.0, 0.28, 0.93891013, 0.87110007, 0.0, 0.0, 0.92064011, 1.0 }, - { 0.55988002, 0.0, 0.54008001, 0.0, 0.99000001, 0.9026801, 0.0, 0.81614012, 0.98000002, 0.59013003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.46000001, 0.75159007, 0.97000003, 0.0, 0.63082004, 0.0, 0.0, 0.0, 0.14999998, 0.0, 0.99000001, 0.0, 0.74576008, 0.0, 0.0, 1.0 }, - { 0.92569005, 0.090000004, 0.1, 0.0, 0.0, 0.54846001, 0.0, 0.99119008, 0.0, 0.0, 0.0, 0.15477002, 0.0, 0.0, 0.39469001, 0.080000006 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.98680019, 0.0, 0.0, 0.0, 1.0, 0.53265011, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.86742014, 0.60621005, 0.0, 0.42000005, 0.84548014 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.45988002, 0.0, 0.28999999, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.71614009, 0.97000003, 0.0, 0.0, 0.60013008, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.92271012, 1.0, 0.0, 0.99000001, 0.34999999, 0.40324008, 0.0, 0.0, 0.0, 0.0, 0.74281007, 0.0, 0.42999998, 0.0, 0.80126011, 0.0 }, + { 0.45000002, 0.0, 0.86159009, 0.0, 0.0, 1.0, 0.52082002, 0.0, 0.28, 0.0, 1.0, 0.41576004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.28, 0.18000001, 0.0, 0.73846006, 1.0, 0.0, 0.34477001, 0.36469001, 0.0, 0.06000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.99000001, 0.96265018, 0.0, 0.53000003, 0.0, 0.0, 0.98000002, 0.38, 0.42000008, 0.0, 0.0, 0.0, 0.83548015 }, }; } public double[][] getPermanences39() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.65988004, 0.0, 0.53008002, 0.0, 1.0, 1.0, 0.0, 0.80614012, 0.97000003, 0.69013005, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.56, 0.74159008, 0.96000004, 0.0, 0.73082006, 0.0, 0.0, 0.0, 0.13999997, 0.0, 1.0, 0.0, 0.73576009, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.080000006, 0.090000004, 0.0, 0.0, 0.64846003, 0.0, 0.98119009, 0.0, 0.0, 0.0, 0.25477001, 0.0, 0.0, 0.38469002, 0.070000008 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 1.0, 0.0, 0.0, 0.0, 1.0, 0.63265014, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.96742016, 0.59621006, 0.0, 0.41000006, 0.83548015 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.44999999, 0.50324011, 0.0, 0.0, 0.0, 0.0, 0.84281009, 0.0, 0.41999999, 0.0, 0.79126012, 0.0 }, + { 0.55000001, 0.0, 0.8515901, 0.0, 0.0, 1.0, 0.51082003, 0.0, 0.27000001, 0.0, 1.0, 0.51576006, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.38, 0.17, 0.0, 0.72846007, 1.0, 0.0, 0.44477001, 0.35469002, 0.0, 0.050000012, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences40() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.65988004, 0.0, 0.53008002, 0.0, 1.0, 1.0, 0.0, 0.80614012, 0.97000003, 0.69013005, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.56, 0.74159008, 0.96000004, 0.0, 0.73082006, 0.0, 0.0, 0.0, 0.13999997, 0.0, 1.0, 0.0, 0.73576009, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.080000006, 0.090000004, 0.0, 0.0, 0.64846003, 0.0, 0.98119009, 0.0, 0.0, 0.0, 0.25477001, 0.0, 0.0, 0.38469002, 0.070000008 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 1.0, 0.0, 0.0, 0.0, 1.0, 0.63265014, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.96742016, 0.59621006, 0.0, 0.41000006, 0.83548015 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.44999999, 0.50324011, 0.0, 0.0, 0.0, 0.0, 0.84281009, 0.0, 0.41999999, 0.0, 0.79126012, 0.0 }, + { 0.55000001, 0.0, 0.8515901, 0.0, 0.0, 1.0, 0.51082003, 0.0, 0.27000001, 0.0, 1.0, 0.51576006, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.38, 0.17, 0.0, 0.72846007, 1.0, 0.0, 0.44477001, 0.35469002, 0.0, 0.050000012, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences41() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.94185013, 0.42791, 0.59953004, 0.0, 0.74410009, 0.0, 0.0, 0.0, 0.81391007, 0.36999997, 0.0, 0.42947999, 0.0, 0.71874011, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.65988004, 0.0, 0.53008002, 0.0, 1.0, 1.0, 0.0, 0.80614012, 0.97000003, 0.69013005, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.69, 1.0, 0.0, 0.0, 1.0, 0.0, 0.54392004, 0.0, 0.74768013, 0.0, 0.0, 0.83041012, 0.89822012, 0.0, 0.06000001, 0.0 }, - { 0.82363009, 0.0, 0.0, 0.0, 0.0, 0.20400998, 1.0, 0.50402004, 0.33946002, 0.0, 0.0, 0.22422998, 0.0, 0.0, 0.61227006, 0.45265001 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.56, 0.74159008, 0.96000004, 0.0, 0.73082006, 0.0, 0.0, 0.0, 0.13999997, 0.0, 1.0, 0.0, 0.73576009, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.080000006, 0.090000004, 0.0, 0.0, 0.64846003, 0.0, 0.98119009, 0.0, 0.0, 0.0, 0.25477001, 0.0, 0.0, 0.38469002, 0.070000008 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 1.0, 0.0, 0.0, 0.0, 1.0, 0.63265014, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.96742016, 0.59621006, 0.0, 0.41000006, 0.83548015 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.9718501, 0.090000004, 0.0, 0.29953, 0.0, 0.0, 0.0, 0.88410008, 0.29391003, 0.0, 0.0, 0.1, 0.23947999, 0.0, 0.74874008, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.44999999, 0.50324011, 0.0, 0.0, 0.0, 0.0, 0.84281009, 0.0, 0.41999999, 0.0, 0.79126012, 0.0 }, + { 0.55000001, 0.0, 0.8515901, 0.0, 0.0, 1.0, 0.51082003, 0.0, 0.27000001, 0.0, 1.0, 0.51576006, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.38, 0.17, 0.0, 0.72846007, 1.0, 0.0, 0.44477001, 0.35469002, 0.0, 0.050000012, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.98000002, 0.42000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.76000011, 0.0, 0.54000008, 0.0, 0.61895007, 0.32000002, 0.40233999 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences42() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.65988004, 0.0, 0.53008002, 0.0, 1.0, 1.0, 0.0, 0.80614012, 0.97000003, 0.69013005, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.8136301, 0.0, 0.0, 0.0, 0.0, 0.30400997, 0.99000001, 0.49402004, 0.43946001, 0.0, 0.0, 0.32422999, 0.0, 0.0, 0.71227008, 0.44265002 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.56, 0.74159008, 0.96000004, 0.0, 0.73082006, 0.0, 0.0, 0.0, 0.13999997, 0.0, 1.0, 0.0, 0.73576009, 0.0, 0.0, 0.99000001 }, - { 0.99000001, 0.18000001, 0.080000006, 0.0, 0.0, 0.74846005, 0.0, 0.97119009, 0.0, 0.0, 0.0, 0.35477, 0.0, 0.0, 0.48469001, 0.06000001 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.99000001, 0.73265016, 0.0, 0.0, 0.0, 0.74000013, 0.0, 1.0, 0.58621007, 0.0, 0.51000005, 0.82548016 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.96185011, 0.19, 0.0, 0.39952999, 0.0, 0.0, 0.0, 0.87410009, 0.39391002, 0.0, 0.0, 0.2, 0.22947998, 0.0, 0.8487401, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 1.0, 0.0, 1.0, 0.44, 0.60324013, 0.0, 0.0, 0.0, 0.0, 0.8328101, 0.0, 0.41, 0.0, 0.89126015, 0.0 }, + { 0.54000002, 0.0, 0.84159011, 0.0, 0.0, 1.0, 0.50082004, 0.0, 0.37, 0.0, 0.99000001, 0.61576009, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.97000003, 0.52000004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.6400001, 0.0, 0.60895008, 0.42000002, 0.39234 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences43() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.63431007, 0.0, 0.73772007, 0.99000001, 1.0, 1.0, 0.14338998, 0.3538, 0.0, 0.0, 0.0, 0.090000004, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.65988004, 0.0, 0.53008002, 0.0, 1.0, 1.0, 0.0, 0.80614012, 0.97000003, 0.69013005, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.8136301, 0.0, 0.0, 0.0, 0.0, 0.30400997, 0.99000001, 0.49402004, 0.43946001, 0.0, 0.0, 0.32422999, 0.0, 0.0, 0.71227008, 0.44265002 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.56, 0.74159008, 0.96000004, 0.0, 0.73082006, 0.0, 0.0, 0.0, 0.13999997, 0.0, 1.0, 0.0, 0.73576009, 0.0, 0.0, 0.99000001 }, - { 0.99000001, 0.18000001, 0.080000006, 0.0, 0.0, 0.74846005, 0.0, 0.97119009, 0.0, 0.0, 0.0, 0.35477, 0.0, 0.0, 0.48469001, 0.06000001 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.99000001, 0.73265016, 0.0, 0.0, 0.0, 0.74000013, 0.0, 1.0, 0.58621007, 0.0, 0.51000005, 0.82548016 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.96185011, 0.19, 0.0, 0.39952999, 0.0, 0.0, 0.0, 0.87410009, 0.39391002, 0.0, 0.0, 0.2, 0.22947998, 0.0, 0.8487401, 0.0 }, + { 0.0, 0.0, 0.66431004, 0.0, 0.65772003, 0.93539, 1.0, 0.0, 0.91082001, 0.063390002, 0.0, 0.053800002, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.70363009, 0.30401003, 0.0, 1.0, 0.27402005, 0.0, 0.0, 0.0, 0.0, 0.65946007, 0.0, 0.54423004, 0.71227008, 0.0, 0.55264997 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 1.0, 0.0, 1.0, 0.44, 0.60324013, 0.0, 0.0, 0.0, 0.0, 0.8328101, 0.0, 0.41, 0.0, 0.89126015, 0.0 }, + { 0.54000002, 0.0, 0.84159011, 0.0, 0.0, 1.0, 0.50082004, 0.0, 0.37, 0.0, 0.99000001, 0.61576009, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.97000003, 0.52000004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.6400001, 0.0, 0.60895008, 0.42000002, 0.39234 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences44() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.62431008, 0.0, 0.8377201, 0.98000002, 1.0, 1.0, 0.13338998, 0.45379999, 0.0, 0.0, 0.0, 0.080000006, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.80363011, 0.0, 0.0, 0.0, 0.0, 0.40400997, 0.98000002, 0.59402007, 0.53946, 0.0, 0.0, 0.31423, 0.0, 0.0, 0.70227009, 0.43265003 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.55000001, 0.84159011, 0.95000005, 0.0, 0.83082008, 0.0, 0.0, 0.0, 0.23999998, 0.0, 1.0, 0.0, 0.7257601, 0.0, 0.0, 0.98000002 }, - { 0.98000002, 0.28, 0.070000008, 0.0, 0.0, 0.84846008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.34477001, 0.0, 0.0, 0.47469002, 0.050000012 }, - { 0.0, 0.0, 0.14282, 0.39818999, 0.0, 0.0, 0.98606008, 0.0, 0.0, 0.51277, 0.0, 0.0, 0.090000004, 0.71516007, 0.0, 0.0 }, - { 0.78619003, 0.75532007, 0.0, 0.090000004, 0.19, 0.0, 0.0, 0.058950007, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.17234001 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.99000001, 0.73265016, 0.0, 0.0, 0.0, 0.74000013, 0.0, 1.0, 0.58621007, 0.0, 0.51000005, 0.82548016 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.95185012, 0.28999999, 0.0, 0.38953, 0.0, 0.0, 0.0, 0.97410011, 0.49391001, 0.0, 0.0, 0.19, 0.21947998, 0.0, 0.83874011, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.44988003, 0.0, 0.38999999, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.81614012, 1.0, 0.0, 0.0, 0.59013009, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.80363011, 0.29401004, 0.0, 1.0, 0.37402004, 0.0, 0.0, 0.0, 0.0, 0.75946009, 0.0, 0.53423005, 0.70227009, 0.0, 0.54264998 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.98000002, 1.0, 0.0, 0.99000001, 0.54000002, 0.70324016, 0.0, 0.0, 0.0, 0.0, 0.93281013, 0.0, 0.40000001, 0.0, 0.88126016, 0.0 }, + { 0.53000003, 0.0, 0.83159012, 0.0, 0.0, 1.0, 0.49082005, 0.0, 0.47, 0.0, 1.0, 0.6057601, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.97000003, 0.52000004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.75000012, 0.0, 0.6400001, 0.0, 0.60895008, 0.42000002, 0.39234 }, + { 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.52000004, 0.0, 0.0, 1.0, 0.47999999, 0.5200001, 0.0, 0.0, 0.0, 0.82548016 }, }; } public double[][] getPermanences45() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.80363011, 0.0, 0.0, 0.0, 0.0, 0.40400997, 0.98000002, 0.59402007, 0.53946, 0.0, 0.0, 0.31423, 0.0, 0.0, 0.70227009, 0.43265003 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.54000002, 0.83159012, 0.94000006, 0.0, 0.93082011, 0.0, 0.0, 0.0, 0.22999997, 0.0, 1.0, 0.0, 0.71576011, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.28, 0.070000008, 0.0, 0.0, 0.84846008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.34477001, 0.0, 0.0, 0.47469002, 0.050000012 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.77619004, 0.74532008, 0.0, 0.19, 0.28999999, 0.0, 0.0, 0.15895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.27234 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.72265017, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.99000001, 0.57621008, 0.0, 0.50000006, 0.92548019 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.95185012, 0.28999999, 0.0, 0.38953, 0.0, 0.0, 0.0, 0.97410011, 0.49391001, 0.0, 0.0, 0.19, 0.21947998, 0.0, 0.83874011, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.97000003, 0.99000001, 0.0, 1.0, 0.64000005, 0.69324017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.39000002, 0.0, 0.87126017, 0.0 }, + { 0.53000003, 0.0, 0.83159012, 0.0, 0.0, 1.0, 0.49082005, 0.0, 0.47, 0.0, 1.0, 0.6057601, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 0.99000001, 0.96000004, 0.62000006, 0.0, 0.0, 0.0, 0.0, 0.0, 0.74000013, 0.0, 0.63000011, 0.0, 0.7089501, 0.41000003, 0.49234 }, + { 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.0, 0.51000005, 0.0, 0.0, 0.99000001, 0.57999998, 0.51000011, 0.0, 0.0, 0.0, 0.92548019 }, }; } public double[][] getPermanences46() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.80363011, 0.0, 0.0, 0.0, 0.0, 0.40400997, 0.98000002, 0.59402007, 0.53946, 0.0, 0.0, 0.31423, 0.0, 0.0, 0.70227009, 0.43265003 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.54000002, 0.83159012, 0.94000006, 0.0, 0.93082011, 0.0, 0.0, 0.0, 0.22999997, 0.0, 1.0, 0.0, 0.71576011, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.28, 0.070000008, 0.0, 0.0, 0.84846008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.34477001, 0.0, 0.0, 0.47469002, 0.050000012 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.77619004, 0.74532008, 0.0, 0.19, 0.28999999, 0.0, 0.0, 0.15895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.27234 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.72265017, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.99000001, 0.57621008, 0.0, 0.50000006, 0.92548019 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.95185012, 0.28999999, 0.0, 0.38953, 0.0, 0.0, 0.0, 0.97410011, 0.49391001, 0.0, 0.0, 0.19, 0.21947998, 0.0, 0.83874011, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.97000003, 0.99000001, 0.0, 1.0, 0.64000005, 0.69324017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.39000002, 0.0, 0.87126017, 0.0 }, + { 0.53000003, 0.0, 0.83159012, 0.0, 0.0, 1.0, 0.49082005, 0.0, 0.47, 0.0, 1.0, 0.6057601, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 0.99000001, 0.96000004, 0.62000006, 0.0, 0.0, 0.0, 0.0, 0.0, 0.74000013, 0.0, 0.63000011, 0.0, 0.7089501, 0.41000003, 0.49234 }, + { 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.0, 0.51000005, 0.0, 0.0, 0.99000001, 0.57999998, 0.51000011, 0.0, 0.0, 0.0, 0.92548019 }, }; } public double[][] getPermanences47() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.80363011, 0.0, 0.0, 0.0, 0.0, 0.40400997, 0.98000002, 0.59402007, 0.53946, 0.0, 0.0, 0.31423, 0.0, 0.0, 0.70227009, 0.43265003 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.54000002, 0.83159012, 0.94000006, 0.0, 0.93082011, 0.0, 0.0, 0.0, 0.22999997, 0.0, 1.0, 0.0, 0.71576011, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.28, 0.070000008, 0.0, 0.0, 0.84846008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.34477001, 0.0, 0.0, 0.47469002, 0.050000012 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.77619004, 0.74532008, 0.0, 0.19, 0.28999999, 0.0, 0.0, 0.15895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.27234 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.72265017, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.99000001, 0.57621008, 0.0, 0.50000006, 0.92548019 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.95185012, 0.28999999, 0.0, 0.38953, 0.0, 0.0, 0.0, 0.97410011, 0.49391001, 0.0, 0.0, 0.19, 0.21947998, 0.0, 0.83874011, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.97000003, 0.99000001, 0.0, 1.0, 0.64000005, 0.69324017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.39000002, 0.0, 0.87126017, 0.0 }, + { 0.53000003, 0.0, 0.83159012, 0.0, 0.0, 1.0, 0.49082005, 0.0, 0.47, 0.0, 1.0, 0.6057601, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 0.99000001, 0.96000004, 0.62000006, 0.0, 0.0, 0.0, 0.0, 0.0, 0.74000013, 0.0, 0.63000011, 0.0, 0.7089501, 0.41000003, 0.49234 }, + { 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.0, 0.51000005, 0.0, 0.0, 0.99000001, 0.57999998, 0.51000011, 0.0, 0.0, 0.0, 0.92548019 }, }; } public double[][] getPermanences48() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.68000001, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.53392005, 0.0, 0.84768015, 0.0, 0.0, 0.93041015, 0.88822013, 0.0, 0.16000001, 0.0 }, - { 0.80363011, 0.0, 0.0, 0.0, 0.0, 0.40400997, 0.98000002, 0.59402007, 0.53946, 0.0, 0.0, 0.31423, 0.0, 0.0, 0.70227009, 0.43265003 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.47149003, 0.81324011, 0.0, 0.60281008, 0.62000006, 0.88126016, 0.0, 0.0 }, - { 0.54000002, 0.83159012, 0.94000006, 0.0, 0.93082011, 0.0, 0.0, 0.0, 0.22999997, 0.0, 1.0, 0.0, 0.71576011, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.28, 0.070000008, 0.0, 0.0, 0.84846008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.34477001, 0.0, 0.0, 0.47469002, 0.050000012 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.77619004, 0.74532008, 0.0, 0.19, 0.28999999, 0.0, 0.0, 0.15895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.27234 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.72265017, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.99000001, 0.57621008, 0.0, 0.50000006, 0.92548019 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.95185012, 0.28999999, 0.0, 0.38953, 0.0, 0.0, 0.0, 0.97410011, 0.49391001, 0.0, 0.0, 0.19, 0.21947998, 0.0, 0.83874011, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.37, 0.0, 0.0, 1.0, 0.97381014, 0.0, 0.33392, 0.0, 0.6476801, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.97000003, 0.99000001, 0.0, 1.0, 0.64000005, 0.69324017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.39000002, 0.0, 0.87126017, 0.0 }, + { 0.53000003, 0.0, 0.83159012, 0.0, 0.0, 1.0, 0.49082005, 0.0, 0.47, 0.0, 1.0, 0.6057601, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.47999999, 0.16, 0.0, 0.8284601, 0.99000001, 0.0, 0.54477, 0.34469002, 0.0, 0.15000001, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 0.99000001, 0.96000004, 0.62000006, 0.0, 0.0, 0.0, 0.0, 0.0, 0.74000013, 0.0, 0.63000011, 0.0, 0.7089501, 0.41000003, 0.49234 }, + { 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.0, 0.51000005, 0.0, 0.0, 0.99000001, 0.57999998, 0.51000011, 0.0, 0.0, 0.0, 0.92548019 }, }; } public double[][] getPermanences49() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.67000002, 1.0, 0.0, 0.0, 0.98000002, 0.0, 0.63392007, 0.0, 0.94768018, 0.0, 0.0, 1.0, 0.98822016, 0.0, 0.15000001, 0.0 }, - { 0.79363012, 0.0, 0.0, 0.0, 0.0, 0.39400998, 1.0, 0.69402009, 0.63946003, 0.0, 0.0, 0.41422999, 0.0, 0.0, 0.6922701, 0.42265004 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.57149005, 0.80324012, 0.0, 0.70281011, 0.72000009, 0.87126017, 0.0, 0.0 }, - { 0.53000003, 0.93159014, 0.93000007, 0.0, 0.92082012, 0.0, 0.0, 0.0, 0.32999998, 0.0, 0.99000001, 0.0, 0.81576014, 0.0, 0.0, 0.99000001 }, - { 0.97000003, 0.38, 0.06000001, 0.0, 0.0, 0.83846009, 0.0, 1.0, 0.0, 0.0, 0.0, 0.44477001, 0.0, 0.0, 0.46469003, 0.0 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.77619004, 0.74532008, 0.0, 0.19, 0.28999999, 0.0, 0.0, 0.15895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.0, 0.27234 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.72265017, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.99000001, 0.57621008, 0.0, 0.50000006, 0.92548019 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 0.94185013, 0.38999999, 0.0, 0.37953001, 0.0, 0.0, 0.0, 1.0, 0.59391004, 0.0, 0.0, 0.28999999, 0.31947997, 0.0, 0.82874012, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.36000001, 0.0, 0.0, 0.99000001, 0.96381015, 0.0, 0.43392, 0.0, 0.74768013, 0.98000002, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.97000003, 0.99000001, 0.0, 1.0, 0.64000005, 0.69324017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.39000002, 0.0, 0.87126017, 0.0 }, + { 0.52000004, 0.0, 0.82159013, 0.0, 0.0, 0.99000001, 0.59082007, 0.0, 0.56999999, 0.0, 0.99000001, 0.70576012, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.47, 0.25999999, 0.0, 0.92846012, 0.98000002, 0.0, 0.64477003, 0.44469002, 0.0, 0.14, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 0.99000001, 0.96000004, 0.62000006, 0.0, 0.0, 0.0, 0.0, 0.0, 0.74000013, 0.0, 0.63000011, 0.0, 0.7089501, 0.41000003, 0.49234 }, + { 0.98000002, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.61000007, 0.0, 0.0, 0.98000002, 0.56999999, 0.61000013, 0.0, 0.0, 0.0, 0.9154802 }, }; } public double[][] getPermanences50() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.77000004, 1.0, 0.0, 0.0, 0.97000003, 0.0, 0.7339201, 0.0, 0.93768018, 0.0, 0.0, 1.0, 1.0, 0.0, 0.14, 0.0 }, - { 0.79363012, 0.0, 0.0, 0.0, 0.0, 0.39400998, 1.0, 0.69402009, 0.63946003, 0.0, 0.0, 0.41422999, 0.0, 0.0, 0.6922701, 0.42265004 }, - { 0.0, 1.0, 0.24734001, 0.0, 0.0, 0.0, 0.090000004, 0.0, 0.12857997, 0.35727999, 0.0, 0.0, 0.75164002, 0.25435001, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.57149005, 0.80324012, 0.0, 0.70281011, 0.72000009, 0.87126017, 0.0, 0.0 }, - { 0.63000005, 1.0, 0.92000008, 0.0, 0.91082013, 0.0, 0.0, 0.0, 0.31999999, 0.0, 0.98000002, 0.0, 0.91576016, 0.0, 0.0, 0.98000002 }, - { 1.0, 0.47999999, 0.050000012, 0.0, 0.0, 0.8284601, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.54477, 0.0, 0.0, 0.45469004, 0.0 }, - { 0.0, 0.0, 0.13282, 0.49818999, 0.1, 0.0, 0.97606009, 0.0, 0.0, 0.50277001, 0.1, 0.0, 0.080000006, 0.8151601, 0.0, 0.0 }, - { 0.87619007, 0.84532011, 0.0, 0.28999999, 0.28, 0.0, 0.0, 0.14895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.0, 0.26234001 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.71265018, 0.0, 0.0, 0.0, 0.72000015, 0.0, 1.0, 0.67621011, 0.0, 0.49000007, 0.9154802 }, + { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0 }, + { 1.0, 0.48999998, 0.0, 0.47953001, 0.0, 0.0, 0.0, 0.99000001, 0.58391005, 0.0, 0.0, 0.38999999, 0.41947997, 0.0, 0.81874013, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.79363012, 0.28401005, 0.0, 1.0, 0.36402005, 0.0, 0.0, 0.0, 0.0, 0.85946012, 0.0, 0.52423006, 0.80227011, 0.0, 0.64265001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.63000005, 0.68324018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.49000001, 0.0, 0.86126018, 0.0 }, + { 0.52000004, 0.0, 0.82159013, 0.0, 0.0, 0.99000001, 0.59082007, 0.0, 0.56999999, 0.0, 0.99000001, 0.70576012, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.47, 0.25999999, 0.0, 0.92846012, 0.98000002, 0.0, 0.64477003, 0.44469002, 0.0, 0.14, 0.0 }, + { 0.53281999, 0.0, 0.45819002, 0.0, 0.0, 0.14999998, 1.0, 0.0, 0.57277006, 0.080000006, 0.0, 0.0, 0.0, 0.0, 0.050000012, 0.99516016 }, + { 0.0, 1.0, 0.95000005, 0.72000009, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.73000014, 0.0, 0.69895011, 0.40000004, 0.48234001 }, + { 1.0, 0.0, 0.0, 1.0, 0.98000002, 0.0, 0.7100001, 0.0, 0.0, 0.97000003, 0.56, 0.71000016, 0.0, 0.0, 0.0, 0.90548021 }, }; } public double[][] getPermanences51() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.77000004, 1.0, 0.0, 0.0, 0.97000003, 0.0, 0.7339201, 0.0, 0.93768018, 0.0, 0.0, 1.0, 1.0, 0.0, 0.14, 0.0 }, - { 0.79363012, 0.0, 0.0, 0.0, 0.0, 0.39400998, 1.0, 0.69402009, 0.63946003, 0.0, 0.0, 0.41422999, 0.0, 0.0, 0.6922701, 0.42265004 }, - { 0.0, 1.0, 0.34734002, 0.0, 0.0, 0.0, 0.080000006, 0.0, 0.22857997, 0.34728, 0.0, 0.0, 0.74164003, 0.35435, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.67149007, 0.79324013, 0.0, 0.69281012, 0.7100001, 0.97126019, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 1.0, 0.47999999, 0.050000012, 0.0, 0.0, 0.8284601, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.54477, 0.0, 0.0, 0.45469004, 0.0 }, - { 0.0, 0.0, 0.23282, 0.48819, 0.090000004, 0.0, 0.9660601, 0.0, 0.0, 0.49277002, 0.2, 0.0, 0.070000008, 0.91516012, 0.0, 0.0 }, - { 0.97619009, 0.94532013, 0.0, 0.28, 0.27000001, 0.0, 0.0, 0.13894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.25234002 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.71265018, 0.0, 0.0, 0.0, 0.72000015, 0.0, 1.0, 0.67621011, 0.0, 0.49000007, 0.9154802 }, + { 0.1, 0.0, 0.84377003, 0.0, 0.0, 0.052710004, 0.052299999, 0.80379003, 0.0, 0.0, 0.61138999, 0.98207998, 0.0, 0.18018, 0.0, 0.0 }, + { 1.0, 0.48999998, 0.0, 0.47953001, 0.0, 0.0, 0.0, 0.99000001, 0.58391005, 0.0, 0.0, 0.38999999, 0.41947997, 0.0, 0.81874013, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.43988004, 0.0, 0.48999998, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.91614014, 0.99000001, 0.0, 0.0, 0.5801301, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.89363015, 0.38401005, 0.0, 0.99000001, 0.35402006, 0.0, 0.0, 0.0, 0.0, 0.95946014, 0.0, 0.51423007, 0.90227014, 0.0, 0.63265002 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.63000005, 0.68324018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.49000001, 0.0, 0.86126018, 0.0 }, + { 0.62000006, 0.0, 0.92159015, 0.0, 0.0, 0.98000002, 0.58082008, 0.0, 0.67000002, 0.0, 1.0, 0.69576013, 0.0, 0.0, 0.97000003, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.47, 0.25999999, 0.0, 0.92846012, 0.98000002, 0.0, 0.64477003, 0.44469002, 0.0, 0.14, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 1.0, 1.0, 0.7100001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.72000015, 0.0, 0.72000015, 0.0, 0.79895014, 0.39000005, 0.47234002 }, + { 1.0, 0.0, 0.0, 1.0, 0.98000002, 0.0, 0.7100001, 0.0, 0.0, 0.97000003, 0.56, 0.71000016, 0.0, 0.0, 0.0, 0.90548021 }, }; } public double[][] getPermanences52() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.7243101, 0.0, 0.82772011, 0.97000003, 1.0, 0.99000001, 0.12338998, 0.55379999, 0.0, 0.0, 0.0, 0.070000008, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.77000004, 1.0, 0.0, 0.0, 0.97000003, 0.0, 0.7339201, 0.0, 0.93768018, 0.0, 0.0, 1.0, 1.0, 0.0, 0.14, 0.0 }, - { 0.79363012, 0.0, 0.0, 0.0, 0.0, 0.39400998, 1.0, 0.69402009, 0.63946003, 0.0, 0.0, 0.41422999, 0.0, 0.0, 0.6922701, 0.42265004 }, - { 0.0, 1.0, 0.34734002, 0.0, 0.0, 0.0, 0.080000006, 0.0, 0.22857997, 0.34728, 0.0, 0.0, 0.74164003, 0.35435, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.97000003, 0.0, 0.98000002, 0.0, 0.66149008, 0.89324015, 0.0, 0.79281014, 0.70000011, 1.0, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 1.0, 0.47, 0.15000001, 0.0, 0.0, 0.81846011, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.64477003, 0.0, 0.0, 0.55469006, 0.0 }, - { 0.0, 0.0, 0.33282, 0.47819, 0.080000006, 0.0, 0.95606011, 0.0, 0.0, 0.59277004, 0.19, 0.0, 0.06000001, 1.0, 0.0, 0.0 }, - { 0.97619009, 0.94532013, 0.0, 0.28, 0.27000001, 0.0, 0.0, 0.13894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.25234002 }, - { 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.70265019, 0.0, 0.0, 0.0, 0.82000017, 0.0, 1.0, 0.66621011, 0.0, 0.59000009, 0.90548021 }, + { 0.1, 0.0, 0.84377003, 0.0, 0.0, 0.052710004, 0.052299999, 0.80379003, 0.0, 0.0, 0.61138999, 0.98207998, 0.0, 0.18018, 0.0, 0.0 }, + { 1.0, 0.48999998, 0.0, 0.47953001, 0.0, 0.0, 0.0, 0.99000001, 0.58391005, 0.0, 0.0, 0.38999999, 0.41947997, 0.0, 0.81874013, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.89363015, 0.38401005, 0.0, 0.99000001, 0.35402006, 0.0, 0.0, 0.0, 0.0, 0.95946014, 0.0, 0.51423007, 0.90227014, 0.0, 0.63265002 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.63000005, 0.68324018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.49000001, 0.0, 0.86126018, 0.0 }, + { 0.72000009, 0.0, 1.0, 0.0, 0.0, 0.97000003, 0.57082009, 0.0, 0.66000003, 0.0, 0.99000001, 0.79576015, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.46000001, 0.24999999, 0.0, 0.91846013, 1.0, 0.0, 0.74477005, 0.43469003, 0.0, 0.24000001, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 0.99000001, 1.0, 0.70000011, 0.0, 0.0, 0.0, 0.0, 0.0, 0.82000017, 0.0, 0.82000017, 0.0, 0.89895016, 0.49000004, 0.46234003 }, + { 1.0, 0.0, 0.0, 1.0, 0.98000002, 0.0, 0.7100001, 0.0, 0.0, 0.97000003, 0.56, 0.71000016, 0.0, 0.0, 0.0, 0.90548021 }, }; } public double[][] getPermanences53() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.77000004, 1.0, 0.0, 0.0, 0.97000003, 0.0, 0.7339201, 0.0, 0.93768018, 0.0, 0.0, 1.0, 1.0, 0.0, 0.14, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 0.99000001, 0.33734003, 0.0, 0.0, 0.0, 0.070000008, 0.1, 0.32857996, 0.44727999, 0.0, 0.0, 0.73164004, 0.45434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 1.0, 0.47, 0.15000001, 0.0, 0.0, 0.81846011, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.64477003, 0.0, 0.0, 0.55469006, 0.0 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.97619009, 0.94532013, 0.0, 0.28, 0.27000001, 0.0, 0.0, 0.13894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.25234002 }, - { 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.70265019, 0.0, 0.0, 0.0, 0.82000017, 0.0, 1.0, 0.66621011, 0.0, 0.59000009, 0.90548021 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.48999998, 0.0, 0.47953001, 0.0, 0.0, 0.0, 0.99000001, 0.58391005, 0.0, 0.0, 0.38999999, 0.41947997, 0.0, 0.81874013, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.89363015, 0.38401005, 0.0, 0.99000001, 0.35402006, 0.0, 0.0, 0.0, 0.0, 0.95946014, 0.0, 0.51423007, 0.90227014, 0.0, 0.63265002 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.63000005, 0.68324018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.49000001, 0.0, 0.86126018, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.45000002, 0.23999998, 0.0, 1.0, 1.0, 0.0, 0.84477007, 0.42469004, 0.0, 0.23, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 0.98000002, 0.99000001, 0.69000012, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9200002, 0.0, 0.9200002, 0.0, 0.99895018, 0.48000005, 0.45234004 }, + { 0.99000001, 0.0, 0.0, 0.99000001, 0.97000003, 0.0, 0.70000011, 0.0, 0.0, 1.0, 0.66000003, 0.81000018, 0.0, 0.0, 0.0, 0.89548022 }, }; } public double[][] getPermanences54() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.41791001, 0.69953007, 0.0, 0.84410012, 0.0, 0.0, 0.0, 0.80391008, 0.35999998, 0.0, 0.41948, 0.0, 0.81874013, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.77000004, 1.0, 0.0, 0.0, 0.97000003, 0.0, 0.7339201, 0.0, 0.93768018, 0.0, 0.0, 1.0, 1.0, 0.0, 0.14, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 0.99000001, 0.33734003, 0.0, 0.0, 0.0, 0.070000008, 0.1, 0.32857996, 0.44727999, 0.0, 0.0, 0.73164004, 0.45434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 1.0, 0.47, 0.15000001, 0.0, 0.0, 0.81846011, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.64477003, 0.0, 0.0, 0.55469006, 0.0 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.97619009, 0.94532013, 0.0, 0.28, 0.27000001, 0.0, 0.0, 0.13894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.0, 0.25234002 }, - { 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.70265019, 0.0, 0.0, 0.0, 0.82000017, 0.0, 1.0, 0.66621011, 0.0, 0.59000009, 0.90548021 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.48999998, 0.0, 0.47953001, 0.0, 0.0, 0.0, 0.99000001, 0.58391005, 0.0, 0.0, 0.38999999, 0.41947997, 0.0, 0.81874013, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.89363015, 0.38401005, 0.0, 0.99000001, 0.35402006, 0.0, 0.0, 0.0, 0.0, 0.95946014, 0.0, 0.51423007, 0.90227014, 0.0, 0.63265002 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.63000005, 0.68324018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.49000001, 0.0, 0.86126018, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.45000002, 0.23999998, 0.0, 1.0, 1.0, 0.0, 0.84477007, 0.42469004, 0.0, 0.23, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 0.98000002, 0.99000001, 0.69000012, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9200002, 0.0, 0.9200002, 0.0, 0.99895018, 0.48000005, 0.45234004 }, + { 0.99000001, 0.0, 0.0, 0.99000001, 0.97000003, 0.0, 0.70000011, 0.0, 0.0, 1.0, 0.66000003, 0.81000018, 0.0, 0.0, 0.0, 0.89548022 }, }; } public double[][] getPermanences55() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.40791002, 0.79953009, 0.0, 0.94410014, 0.0, 0.0, 0.0, 0.79391009, 0.34999999, 0.0, 0.51947999, 0.0, 0.91874015, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.76000005, 1.0, 0.0, 0.0, 1.0, 0.0, 0.72392011, 0.0, 0.92768019, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.24000001, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 0.99000001, 0.33734003, 0.0, 0.0, 0.0, 0.070000008, 0.1, 0.32857996, 0.44727999, 0.0, 0.0, 0.73164004, 0.45434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 0.99000001, 0.56999999, 0.14, 0.0, 0.0, 0.91846013, 0.0, 0.97000003, 0.0, 0.0, 0.0, 0.63477004, 0.0, 0.0, 0.65469009, 0.0 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.9661901, 1.0, 0.0, 0.38, 0.37, 0.1, 0.0, 0.12894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.0, 0.24234001 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.80265021, 0.0, 0.0, 0.0, 0.81000018, 0.0, 0.99000001, 0.76621014, 0.0, 0.69000012, 0.89548022 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 0.99000001, 0.58999997, 0.0, 0.57953, 0.0, 0.0, 0.0, 0.98000002, 0.57391006, 0.0, 0.0, 0.38, 0.51947999, 0.0, 0.91874015, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99363017, 0.37401006, 0.0, 1.0, 0.45402005, 0.0, 0.0, 0.0, 0.0, 0.94946015, 0.0, 0.6142301, 0.89227015, 0.0, 0.62265003 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 1.0, 0.0, 1.0, 0.73000008, 0.7832402, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.59000003, 0.0, 0.9612602, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 1.0, 0.98000002, 0.79000014, 0.0, 0.0, 0.0, 0.0, 0.0, 0.91000021, 0.0, 0.91000021, 0.0, 0.98895019, 0.58000004, 0.44234005 }, + { 0.99000001, 0.0, 0.0, 0.99000001, 0.97000003, 0.0, 0.70000011, 0.0, 0.0, 1.0, 0.66000003, 0.81000018, 0.0, 0.0, 0.0, 0.89548022 }, }; } public double[][] getPermanences56() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.40791002, 0.79953009, 0.0, 0.94410014, 0.0, 0.0, 0.0, 0.79391009, 0.34999999, 0.0, 0.51947999, 0.0, 0.91874015, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.76000005, 1.0, 0.0, 0.0, 1.0, 0.0, 0.72392011, 0.0, 0.92768019, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.24000001, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 0.99000001, 0.33734003, 0.0, 0.0, 0.0, 0.070000008, 0.1, 0.32857996, 0.44727999, 0.0, 0.0, 0.73164004, 0.45434999, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.73000008, 1.0, 1.0, 0.0, 0.90082014, 0.0, 0.0, 0.0, 0.41999999, 0.0, 1.0, 0.0, 0.90576017, 0.0, 0.0, 0.97000003 }, - { 0.99000001, 0.56999999, 0.14, 0.0, 0.0, 0.91846013, 0.0, 0.97000003, 0.0, 0.0, 0.0, 0.63477004, 0.0, 0.0, 0.65469009, 0.0 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.9661901, 1.0, 0.0, 0.38, 0.37, 0.1, 0.0, 0.12894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.0, 0.24234001 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.80265021, 0.0, 0.0, 0.0, 0.81000018, 0.0, 0.99000001, 0.76621014, 0.0, 0.69000012, 0.89548022 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 0.99000001, 0.58999997, 0.0, 0.57953, 0.0, 0.0, 0.0, 0.98000002, 0.57391006, 0.0, 0.0, 0.38, 0.51947999, 0.0, 0.91874015, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.55153, 0.0, 0.0, 0.0, 0.0, 0.64891005, 0.0, 0.0, 0.80110002, 0.63064003, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99363017, 0.37401006, 0.0, 1.0, 0.45402005, 0.0, 0.0, 0.0, 0.0, 0.94946015, 0.0, 0.6142301, 0.89227015, 0.0, 0.62265003 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 1.0, 0.0, 1.0, 0.73000008, 0.7832402, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.59000003, 0.0, 0.9612602, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 1.0, 0.98000002, 0.79000014, 0.0, 0.0, 0.0, 0.0, 0.0, 0.91000021, 0.0, 0.91000021, 0.0, 0.98895019, 0.58000004, 0.44234005 }, + { 0.99000001, 0.0, 0.0, 0.99000001, 0.97000003, 0.0, 0.70000011, 0.0, 0.0, 1.0, 0.66000003, 0.81000018, 0.0, 0.0, 0.0, 0.89548022 }, }; } public double[][] getPermanences57() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.40791002, 0.79953009, 0.0, 0.94410014, 0.0, 0.0, 0.0, 0.79391009, 0.34999999, 0.0, 0.51947999, 0.0, 0.91874015, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.76000005, 1.0, 0.0, 0.0, 1.0, 0.0, 0.72392011, 0.0, 0.92768019, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.24000001, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.72000009, 1.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.41, 0.0, 0.99000001, 0.0, 0.89576018, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.67000002, 0.13, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.62477005, 0.0, 0.0, 0.6446901, 0.1 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.95619011, 1.0, 0.0, 0.37, 0.47, 0.2, 0.0, 0.22894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.48000002, 0.0, 0.34234002 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.90265024, 0.0, 0.0, 0.0, 0.80000019, 0.0, 0.98000002, 0.75621015, 0.0, 0.68000013, 0.99548024 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 0.99000001, 0.58999997, 0.0, 0.57953, 0.0, 0.0, 0.0, 0.98000002, 0.57391006, 0.0, 0.0, 0.38, 0.51947999, 0.0, 0.91874015, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.65153003, 0.0, 0.0, 0.0, 0.0, 0.63891006, 0.0, 0.0, 0.90110004, 0.62064004, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.36401007, 0.0, 1.0, 0.55402005, 0.0, 0.0, 0.0, 0.0, 0.93946016, 0.0, 0.60423011, 0.99227017, 0.0, 0.72265005 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.98000002, 1.0, 0.0, 0.99000001, 0.8300001, 0.88324022, 0.0, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.58000004, 0.0, 0.95126021, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 1.0, 0.97000003, 0.78000015, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90000021, 0.0, 0.90000021, 0.0, 1.0, 0.57000005, 0.54234004 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences58() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.40791002, 0.79953009, 0.0, 0.94410014, 0.0, 0.0, 0.0, 0.79391009, 0.34999999, 0.0, 0.51947999, 0.0, 0.91874015, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.76000005, 1.0, 0.0, 0.0, 1.0, 0.0, 0.72392011, 0.0, 0.92768019, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.24000001, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.72000009, 1.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.41, 0.0, 0.99000001, 0.0, 0.89576018, 0.0, 0.0, 1.0 }, - { 0.98000002, 0.67000002, 0.13, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.62477005, 0.0, 0.0, 0.6446901, 0.1 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.95619011, 1.0, 0.0, 0.37, 0.47, 0.2, 0.0, 0.22894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.48000002, 0.0, 0.34234002 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.90265024, 0.0, 0.0, 0.0, 0.80000019, 0.0, 0.98000002, 0.75621015, 0.0, 0.68000013, 0.99548024 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 0.99000001, 0.58999997, 0.0, 0.57953, 0.0, 0.0, 0.0, 0.98000002, 0.57391006, 0.0, 0.0, 0.38, 0.51947999, 0.0, 0.91874015, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.65153003, 0.0, 0.0, 0.0, 0.0, 0.63891006, 0.0, 0.0, 0.90110004, 0.62064004, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.36401007, 0.0, 1.0, 0.55402005, 0.0, 0.0, 0.0, 0.0, 0.93946016, 0.0, 0.60423011, 0.99227017, 0.0, 0.72265005 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.98000002, 1.0, 0.0, 0.99000001, 0.8300001, 0.88324022, 0.0, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.58000004, 0.0, 0.95126021, 0.0 }, + { 0.7100001, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 0.5608201, 0.0, 0.76000005, 0.0, 1.0, 0.89576018, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.63282001, 0.0, 0.55819005, 0.0, 0.0, 0.13999997, 0.99000001, 0.0, 0.67277008, 0.070000008, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98516017 }, + { 0.0, 1.0, 0.97000003, 0.78000015, 0.0, 0.0, 0.0, 0.0, 0.0, 0.90000021, 0.0, 0.90000021, 0.0, 1.0, 0.57000005, 0.54234004 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences59() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.86000007, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.71392012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.34, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.82000011, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.50999999, 0.0, 0.98000002, 0.0, 0.88576019, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.77000004, 0.22999999, 0.0, 0.0, 0.99000001, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.61477005, 0.0, 0.0, 0.74469012, 0.090000004 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.47, 0.46000001, 0.19, 0.0, 0.21894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.33234003 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.90265024, 0.0, 0.0, 0.0, 0.80000019, 0.0, 0.98000002, 0.75621015, 0.0, 0.68000013, 0.99548024 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.69, 0.0, 0.67953002, 0.0, 0.0, 0.0, 0.97000003, 0.67391008, 0.0, 0.0, 0.37, 0.50948, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.65153003, 0.0, 0.0, 0.0, 0.0, 0.63891006, 0.0, 0.0, 0.90110004, 0.62064004, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.36401007, 0.0, 1.0, 0.55402005, 0.0, 0.0, 0.0, 0.0, 0.93946016, 0.0, 0.60423011, 0.99227017, 0.0, 0.72265005 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.82000011, 0.87324023, 0.0, 0.0, 0.0, 0.0, 0.96000004, 0.0, 0.57000005, 0.0, 1.0, 0.0 }, + { 0.81000012, 0.0, 1.0, 0.0, 0.0, 0.95000005, 0.55082011, 0.0, 0.86000007, 0.0, 0.99000001, 0.88576019, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.73282003, 0.0, 0.65819007, 0.0, 0.0, 0.12999997, 0.98000002, 0.0, 0.77277011, 0.06000001, 0.0, 0.0, 0.0, 0.0, 0.1, 0.97516018 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences60() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.86000007, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.71392012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.34, 0.0 }, - { 0.78363013, 0.0, 0.0, 0.0, 0.0, 0.38400999, 0.99000001, 0.79402012, 0.73946005, 0.0, 0.0, 0.51423001, 0.0, 0.0, 0.68227011, 0.41265005 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.82000011, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.50999999, 0.0, 0.98000002, 0.0, 0.88576019, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.77000004, 0.22999999, 0.0, 0.0, 0.99000001, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.61477005, 0.0, 0.0, 0.74469012, 0.090000004 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.47, 0.46000001, 0.19, 0.0, 0.21894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.47000003, 0.0, 0.33234003 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.90265024, 0.0, 0.0, 0.0, 0.80000019, 0.0, 0.98000002, 0.75621015, 0.0, 0.68000013, 0.99548024 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.69, 0.0, 0.67953002, 0.0, 0.0, 0.0, 0.97000003, 0.67391008, 0.0, 0.0, 0.37, 0.50948, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.65153003, 0.0, 0.0, 0.0, 0.0, 0.63891006, 0.0, 0.0, 0.90110004, 0.62064004, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.36401007, 0.0, 1.0, 0.55402005, 0.0, 0.0, 0.0, 0.0, 0.93946016, 0.0, 0.60423011, 0.99227017, 0.0, 0.72265005 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.82000011, 0.87324023, 0.0, 0.0, 0.0, 0.0, 0.96000004, 0.0, 0.57000005, 0.0, 1.0, 0.0 }, + { 0.81000012, 0.0, 1.0, 0.0, 0.0, 0.95000005, 0.55082011, 0.0, 0.86000007, 0.0, 0.99000001, 0.88576019, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.73282003, 0.0, 0.65819007, 0.0, 0.0, 0.12999997, 0.98000002, 0.0, 0.77277011, 0.06000001, 0.0, 0.0, 0.0, 0.0, 0.1, 0.97516018 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences61() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.86000007, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.71392012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.34, 0.0 }, - { 0.88363016, 0.0, 0.0, 0.0, 0.0, 0.48400998, 0.98000002, 0.78402013, 0.72946006, 0.0, 0.0, 0.50423002, 0.0, 0.0, 0.78227013, 0.51265007 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.87000006, 0.21999998, 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.60477006, 0.0, 0.0, 0.84469014, 0.19 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.46000001, 0.45000002, 0.28999999, 0.0, 0.20894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46000004, 0.0, 0.43234003 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.0, 0.0, 0.7900002, 0.0, 0.97000003, 0.74621016, 0.0, 0.78000015, 1.0 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.69, 0.0, 0.67953002, 0.0, 0.0, 0.0, 0.97000003, 0.67391008, 0.0, 0.0, 0.37, 0.50948, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.75153005, 0.0, 0.0, 0.0, 0.0, 0.73891008, 0.0, 0.0, 0.89110005, 0.72064006, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.35401008, 0.0, 0.99000001, 0.65402007, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.59423012, 0.98227018, 0.0, 0.82265007 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 0.99000001, 0.81000012, 0.97324026, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.56000006, 0.0, 1.0, 0.0 }, + { 0.91000015, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.54082012, 0.0, 0.85000008, 0.0, 1.0, 0.8757602, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.83282006, 0.0, 0.64819008, 0.0, 0.0, 0.22999996, 0.97000003, 0.0, 0.76277012, 0.050000012, 0.0, 0.0, 0.0, 0.0, 0.2, 1.0 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences62() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.64988005, 0.0, 0.52008003, 0.0, 1.0, 1.0, 0.0, 0.90614015, 1.0, 0.68013006, 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.86000007, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.71392012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.34, 0.0 }, - { 0.88363016, 0.0, 0.0, 0.0, 0.0, 0.48400998, 0.98000002, 0.78402013, 0.72946006, 0.0, 0.0, 0.50423002, 0.0, 0.0, 0.78227013, 0.51265007 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.87000006, 0.21999998, 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.60477006, 0.0, 0.0, 0.84469014, 0.19 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.46000001, 0.45000002, 0.28999999, 0.0, 0.20894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46000004, 0.0, 0.43234003 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.0, 0.0, 0.7900002, 0.0, 0.97000003, 0.74621016, 0.0, 0.78000015, 1.0 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.69, 0.0, 0.67953002, 0.0, 0.0, 0.0, 0.97000003, 0.67391008, 0.0, 0.0, 0.37, 0.50948, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.75153005, 0.0, 0.0, 0.0, 0.0, 0.73891008, 0.0, 0.0, 0.89110005, 0.72064006, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.35401008, 0.0, 0.99000001, 0.65402007, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.59423012, 0.98227018, 0.0, 0.82265007 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 0.99000001, 0.81000012, 0.97324026, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.56000006, 0.0, 1.0, 0.0 }, + { 0.91000015, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.54082012, 0.0, 0.85000008, 0.0, 1.0, 0.8757602, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.55000001, 0.22999997, 0.0, 0.99000001, 0.99000001, 0.0, 0.83477008, 0.52469003, 0.0, 0.33000001, 0.0 }, + { 0.83282006, 0.0, 0.64819008, 0.0, 0.0, 0.22999996, 0.97000003, 0.0, 0.76277012, 0.050000012, 0.0, 0.0, 0.0, 0.0, 0.2, 1.0 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences63() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.74988008, 0.0, 0.51008004, 0.0, 0.99000001, 0.99000001, 0.0, 1.0, 1.0, 0.67013007, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 0.98363018, 0.0, 0.0, 0.0, 0.0, 0.47400999, 0.97000003, 0.88402015, 0.82946008, 0.0, 0.0, 0.60423005, 0.0, 0.0, 0.88227016, 0.50265008 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.86000007, 0.20999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.70477009, 0.0, 0.0, 0.94469017, 0.17999999 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.46000001, 0.45000002, 0.28999999, 0.0, 0.20894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46000004, 0.0, 0.43234003 }, - { 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.0, 0.0, 0.78000021, 0.0, 1.0, 0.84621018, 0.0, 0.88000017, 0.99000001 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.75153005, 0.0, 0.0, 0.0, 0.0, 0.73891008, 0.0, 0.0, 0.89110005, 0.72064006, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.35401008, 0.0, 0.99000001, 0.65402007, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.59423012, 0.98227018, 0.0, 0.82265007 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.53082013, 0.0, 0.95000011, 0.0, 0.99000001, 0.97576022, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.54000002, 0.21999997, 0.0, 1.0, 0.98000002, 0.0, 0.93477011, 0.62469006, 0.0, 0.43000001, 0.0 }, + { 0.93282008, 0.0, 0.63819009, 0.0, 0.0, 0.21999995, 0.96000004, 0.0, 0.86277014, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.99000001 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences64() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.080000006, 0.0, 0.0, 0.0, 0.31191999, 0.72153008, 0.0, 0.0, 0.38, 1.0, 0.97110009, 0.0, 0.0, 0.91064012, 0.99000001 }, - { 0.74988008, 0.0, 0.51008004, 0.0, 0.99000001, 0.99000001, 0.0, 1.0, 1.0, 0.67013007, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 0.98363018, 0.0, 0.0, 0.0, 0.0, 0.47400999, 0.97000003, 0.88402015, 0.82946008, 0.0, 0.0, 0.60423005, 0.0, 0.0, 0.88227016, 0.50265008 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.86000007, 0.20999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.70477009, 0.0, 0.0, 0.94469017, 0.17999999 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.46000001, 0.45000002, 0.28999999, 0.0, 0.20894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46000004, 0.0, 0.43234003 }, - { 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.99000001, 0.0, 0.0, 0.0, 0.78000021, 0.0, 1.0, 0.84621018, 0.0, 0.88000017, 0.99000001 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.75153005, 0.0, 0.0, 0.0, 0.0, 0.73891008, 0.0, 0.0, 0.89110005, 0.72064006, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.35401008, 0.0, 0.99000001, 0.65402007, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.59423012, 0.98227018, 0.0, 0.82265007 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.53082013, 0.0, 0.95000011, 0.0, 0.99000001, 0.97576022, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.54000002, 0.21999997, 0.0, 1.0, 0.98000002, 0.0, 0.93477011, 0.62469006, 0.0, 0.43000001, 0.0 }, + { 0.93282008, 0.0, 0.63819009, 0.0, 0.0, 0.21999995, 0.96000004, 0.0, 0.86277014, 0.0, 0.0, 0.0, 0.0, 0.0, 0.30000001, 0.99000001 }, + { 0.0, 1.0, 1.0, 0.88000017, 0.0, 0.0, 0.0, 0.0, 0.0, 0.89000022, 0.0, 0.89000022, 0.0, 0.99000001, 0.67000008, 0.53234005 }, + { 0.98000002, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.69000012, 0.0, 0.0, 0.99000001, 0.65000004, 0.80000019, 0.0, 0.0, 0.0, 0.99548024 }, }; } public double[][] getPermanences65() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.070000008, 0.0, 0.0, 0.0, 0.41191998, 0.8215301, 0.0, 0.0, 0.37, 0.99000001, 0.9611001, 0.0, 0.0, 1.0, 1.0 }, - { 0.74988008, 0.0, 0.51008004, 0.0, 0.99000001, 0.99000001, 0.0, 1.0, 1.0, 0.67013007, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 0.96000004, 0.0, 0.97000003, 0.0, 0.76149011, 0.99324018, 0.0, 0.89281017, 0.69000012, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.85000008, 0.19999997, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.6947701, 0.0, 0.0, 1.0, 0.28 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 1.0, 0.99000001, 0.0, 0.45000002, 0.44000003, 0.38999999, 0.0, 0.19894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.53234005 }, - { 1.0, 0.0, 0.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.0, 0.77000022, 0.0, 0.99000001, 0.83621019, 0.0, 0.9800002, 1.0 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.85153008, 0.0, 0.0, 0.0, 0.0, 0.72891009, 0.0, 0.0, 0.99110007, 0.82064009, 1.0 }, + { 0.0, 0.0, 0.53988004, 0.0, 0.47999999, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.90614015, 1.0, 0.0, 0.0, 0.68013012, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.46000001, 0.0, 0.0, 1.0, 0.95381016, 0.0, 0.53391999, 0.0, 0.73768014, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.35401008, 0.0, 0.99000001, 0.65402007, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.59423012, 0.98227018, 0.0, 0.82265007 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 1.0, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.63082016, 0.0, 0.94000012, 0.0, 0.98000002, 0.96576023, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.54000002, 0.21999997, 0.0, 1.0, 0.98000002, 0.0, 0.93477011, 0.62469006, 0.0, 0.43000001, 0.0 }, + { 1.0, 0.0, 0.6281901, 0.0, 0.0, 0.31999996, 1.0, 0.0, 0.85277015, 0.0, 0.0, 0.0, 0.0, 0.0, 0.40000001, 1.0 }, + { 0.0, 0.99000001, 0.99000001, 0.87000018, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88000023, 0.0, 0.88000023, 0.0, 1.0, 0.7700001, 0.63234007 }, + { 1.0, 0.0, 0.0, 0.97000003, 0.99000001, 0.0, 0.79000014, 0.0, 0.0, 0.98000002, 0.64000005, 0.7900002, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences66() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.50791001, 0.89953011, 0.0, 0.93410015, 0.0, 0.0, 0.0, 0.7839101, 0.34, 0.0, 0.50948, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.06000001, 0.0, 0.0, 0.0, 0.51191998, 0.92153013, 0.0, 0.0, 0.47, 0.98000002, 0.95110011, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.73988008, 0.0, 0.50008005, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.7701301, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 1.0, 0.0, 1.0, 0.0, 0.75149012, 1.0, 0.0, 0.88281018, 0.79000014, 0.99000001, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.85000008, 0.19999997, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.6947701, 0.0, 0.0, 1.0, 0.28 }, - { 0.0, 0.0, 0.32282001, 0.46819001, 0.070000008, 0.0, 0.94606012, 0.0, 0.0, 0.69277006, 0.28999999, 0.0, 0.050000012, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.98000002, 0.0, 0.44000003, 0.54000002, 0.48999998, 0.0, 0.18894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.55000007, 0.0, 0.63234007 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.87000024, 0.0, 0.98000002, 0.93621022, 0.0, 0.97000021, 1.0 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.85153008, 0.0, 0.0, 0.0, 0.0, 0.72891009, 0.0, 0.0, 0.99110007, 0.82064009, 1.0 }, + { 0.0, 0.0, 0.52988005, 0.0, 0.57999998, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89614016, 0.99000001, 0.0, 0.0, 0.67013013, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.45000002, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.63392001, 0.0, 0.72768015, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.34401008, 0.0, 1.0, 0.75402009, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.69423014, 0.97227019, 0.0, 0.9226501 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 1.0, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.63082016, 0.0, 0.94000012, 0.0, 0.98000002, 0.96576023, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.96000004, 0.0, 0.0, 0.64000005, 0.31999996, 0.0, 0.99000001, 1.0, 0.0, 0.92477012, 0.72469008, 0.0, 0.42000002, 0.0 }, + { 1.0, 0.0, 0.6281901, 0.0, 0.0, 0.31999996, 1.0, 0.0, 0.85277015, 0.0, 0.0, 0.0, 0.0, 0.0, 0.40000001, 1.0 }, + { 0.0, 0.99000001, 0.99000001, 0.87000018, 0.0, 0.0, 0.0, 0.0, 0.0, 0.88000023, 0.0, 0.88000023, 0.0, 1.0, 0.7700001, 0.63234007 }, + { 0.99000001, 0.0, 0.0, 0.96000004, 1.0, 0.0, 0.89000016, 0.0, 0.0, 1.0, 0.63000005, 0.78000021, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences67() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.60791004, 0.99953014, 0.0, 0.92410016, 0.0, 0.0, 0.0, 0.88391012, 0.33000001, 0.0, 0.60948002, 0.0, 0.99000001, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.06000001, 0.0, 0.0, 0.0, 0.51191998, 0.92153013, 0.0, 0.0, 0.47, 0.98000002, 0.95110011, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.83988011, 0.0, 0.60008007, 0.0, 0.99000001, 0.99000001, 0.0, 0.98000002, 0.98000002, 0.87013012, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 1.0, 0.32734004, 0.0, 0.0, 0.0, 0.06000001, 0.2, 0.31857997, 0.43728, 0.0, 0.0, 0.72164005, 0.55435002, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.74149013, 1.0, 0.0, 0.87281018, 0.89000016, 0.98000002, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 1.0, 0.85000008, 0.19999997, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.6947701, 0.0, 0.0, 1.0, 0.28 }, - { 0.0, 0.0, 0.42282, 0.56819004, 0.06000001, 0.0, 1.0, 0.0, 0.0, 0.79277009, 0.28, 0.0, 0.15000001, 0.99000001, 0.0, 0.0 }, - { 0.99000001, 0.98000002, 0.0, 0.44000003, 0.54000002, 0.48999998, 0.0, 0.18894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.55000007, 0.0, 0.63234007 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.0, 0.0, 0.97000027, 0.0, 0.97000003, 1.0, 0.0, 0.96000022, 0.99000001 }, + { 0.090000004, 0.0, 0.83377004, 0.0, 0.0, 0.0, 0.0, 0.90379006, 0.0, 0.0, 0.71139002, 1.0, 0.0, 0.28018001, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.85153008, 0.0, 0.0, 0.0, 0.0, 0.72891009, 0.0, 0.0, 0.99110007, 0.82064009, 1.0 }, + { 0.0, 0.0, 0.52988005, 0.0, 0.57999998, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89614016, 0.99000001, 0.0, 0.0, 0.67013013, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.55000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.73392004, 0.0, 0.71768016, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.34401008, 0.0, 1.0, 0.75402009, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.69423014, 0.97227019, 0.0, 0.9226501 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 1.0, 0.0, 0.97000003, 0.0, 0.0, 1.0, 0.63082016, 0.0, 0.94000012, 0.0, 0.98000002, 0.96576023, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.63000005, 0.41999996, 0.0, 0.98000002, 1.0, 0.0, 0.91477013, 0.8246901, 0.0, 0.41000003, 0.0 }, + { 1.0, 0.0, 0.72819012, 0.0, 0.0, 0.30999997, 1.0, 0.0, 0.84277016, 0.1, 0.0, 0.0, 0.0, 0.0, 0.39000002, 0.99000001 }, + { 0.0, 0.98000002, 1.0, 0.97000021, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000026, 0.0, 0.87000024, 0.0, 0.99000001, 0.76000011, 0.62234008 }, + { 1.0, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.99000019, 0.0, 0.0, 1.0, 0.62000006, 0.77000022, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences68() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.60791004, 0.99953014, 0.0, 0.92410016, 0.0, 0.0, 0.0, 0.88391012, 0.33000001, 0.0, 0.60948002, 0.0, 0.99000001, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.06000001, 0.0, 0.0, 0.0, 0.51191998, 0.92153013, 0.0, 0.0, 0.47, 0.98000002, 0.95110011, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.82988012, 0.0, 0.7000801, 0.0, 0.98000002, 0.98000002, 0.0, 1.0, 1.0, 0.97013015, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.9600001, 0.99000001, 0.0, 0.0, 0.98000002, 0.0, 0.70392013, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.44, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 0.92000014, 1.0, 0.99000001, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.5, 0.0, 1.0, 0.0, 0.8757602, 0.0, 0.0, 1.0 }, - { 0.99000001, 0.84000009, 0.29999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.79477012, 0.0, 0.0, 0.99000001, 0.27000001 }, - { 0.0, 0.0, 0.52282, 0.55819005, 0.050000012, 0.0, 0.99000001, 0.0, 0.0, 0.89277011, 0.27000001, 0.0, 0.14, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.98000002, 0.0, 0.44000003, 0.54000002, 0.48999998, 0.0, 0.18894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.55000007, 0.0, 0.63234007 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.0, 0.0, 0.97000027, 0.0, 0.97000003, 1.0, 0.0, 0.96000022, 0.99000001 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.85153008, 0.0, 0.0, 0.0, 0.0, 0.72891009, 0.0, 0.0, 0.99110007, 0.82064009, 1.0 }, + { 0.0, 0.0, 0.52988005, 0.0, 0.57999998, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89614016, 0.99000001, 0.0, 0.0, 0.67013013, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.55000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.73392004, 0.0, 0.71768016, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.34401008, 0.0, 1.0, 0.75402009, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.69423014, 0.97227019, 0.0, 0.9226501 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 0.99000001, 0.0, 0.98000002, 0.80000013, 0.96324027, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.66000009, 0.0, 1.0, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.62082016, 0.0, 1.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.97000003, 1.0, 0.96000022, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.97000027, 0.0, 1.0, 0.75000012, 0.61234009 }, + { 1.0, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.99000019, 0.0, 0.0, 1.0, 0.62000006, 0.77000022, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences69() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.59791005, 0.98953015, 0.0, 0.91410017, 0.0, 0.0, 0.0, 0.98391014, 0.43000001, 0.0, 0.70948005, 0.0, 0.98000002, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.06000001, 0.0, 0.0, 0.0, 0.51191998, 0.92153013, 0.0, 0.0, 0.47, 0.98000002, 0.95110011, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.98000002, 0.0, 1.0, 0.0, 0.0, 0.0, 0.49000001, 0.0, 1.0, 0.0, 0.97576022, 0.0, 0.0, 0.99000001 }, - { 0.99000001, 0.84000009, 0.29999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.79477012, 0.0, 0.0, 0.99000001, 0.27000001 }, - { 0.0, 0.0, 0.52282, 0.55819005, 0.050000012, 0.0, 0.99000001, 0.0, 0.0, 0.89277011, 0.27000001, 0.0, 0.14, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.98000002, 0.0, 0.44000003, 0.54000002, 0.48999998, 0.0, 0.18894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.55000007, 0.0, 0.63234007 }, - { 1.0, 0.0, 0.0, 0.0, 1.0, 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96000004, 1.0, 0.0, 0.95000023, 0.98000002 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.85153008, 0.0, 0.0, 0.0, 0.0, 0.72891009, 0.0, 0.0, 0.99110007, 0.82064009, 1.0 }, + { 0.0, 0.0, 0.51988006, 0.0, 0.68000001, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.99614018, 0.98000002, 0.0, 0.0, 0.66013014, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.65000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.72392005, 0.0, 0.70768017, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.33401009, 0.0, 1.0, 0.7440201, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.79423016, 0.9622702, 0.0, 0.91265011 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 0.97000003, 0.90000015, 0.95324028, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.76000011, 0.0, 0.99000001, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.62082016, 0.0, 1.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.97000003, 1.0, 0.96000022, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.97000027, 0.0, 1.0, 0.75000012, 0.61234009 }, + { 1.0, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9800002, 0.0, 0.0, 1.0, 0.72000009, 0.76000023, 0.0, 0.0, 0.0, 0.98000002 }, }; } public double[][] getPermanences70() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.59791005, 0.98953015, 0.0, 0.91410017, 0.0, 0.0, 0.0, 0.98391014, 0.43000001, 0.0, 0.70948005, 0.0, 0.98000002, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.0, 0.48000002, 0.0, 1.0, 0.0, 0.96576023, 0.0, 0.0, 1.0 }, - { 0.99000001, 0.84000009, 0.29999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.79477012, 0.0, 0.0, 0.99000001, 0.27000001 }, - { 0.0, 0.0, 0.51282001, 0.54819006, 0.15000001, 0.0, 0.98000002, 0.0, 0.0, 0.99277014, 0.37, 0.0, 0.13, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.97000003, 0.0, 0.43000004, 0.64000005, 0.47999999, 0.0, 0.17894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.7323401 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.0, 0.95000005, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.50988007, 0.0, 0.78000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.97000003, 0.0, 0.0, 0.76013017, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.65000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.72392005, 0.0, 0.70768017, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.3240101, 0.0, 1.0, 0.73402011, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.78423017, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 0.97000003, 0.90000015, 0.95324028, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.76000011, 0.0, 0.99000001, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.62082016, 0.0, 1.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.96000004, 0.99000001, 0.95000023, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96000028, 0.0, 1.0, 0.85000014, 0.71234012 }, + { 0.99000001, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.97000021, 0.0, 0.0, 1.0, 0.82000011, 0.75000024, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences71() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.59791005, 0.98953015, 0.0, 0.91410017, 0.0, 0.0, 0.0, 0.98391014, 0.43000001, 0.0, 0.70948005, 0.0, 0.98000002, 0.0 }, - { 0.0, 0.0, 0.0, 0.71431011, 0.0, 0.81772012, 0.96000004, 1.0, 1.0, 0.22338998, 0.65380001, 0.0, 0.0, 0.0, 0.06000001, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.0, 0.48000002, 0.0, 1.0, 0.0, 0.96576023, 0.0, 0.0, 1.0 }, - { 0.99000001, 0.84000009, 0.29999998, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.79477012, 0.0, 0.0, 0.99000001, 0.27000001 }, - { 0.0, 0.0, 0.51282001, 0.54819006, 0.15000001, 0.0, 0.98000002, 0.0, 0.0, 0.99277014, 0.37, 0.0, 0.13, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.97000003, 0.0, 0.43000004, 0.64000005, 0.47999999, 0.0, 0.17894997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.7323401 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.0, 0.95000005, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.68000001, 0.0, 0.66953003, 0.0, 0.0, 0.0, 1.0, 0.77391011, 0.0, 0.0, 0.47, 0.60948002, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.50988007, 0.0, 0.78000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.97000003, 0.0, 0.0, 0.76013017, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.65000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.72392005, 0.0, 0.70768017, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.3240101, 0.0, 1.0, 0.73402011, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.78423017, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 0.97000003, 0.90000015, 0.95324028, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.76000011, 0.0, 0.99000001, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.62082016, 0.0, 1.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.96000004, 0.99000001, 0.95000023, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96000028, 0.0, 1.0, 0.85000014, 0.71234012 }, + { 0.99000001, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.97000021, 0.0, 0.0, 1.0, 0.82000011, 0.75000024, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences72() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.47000003, 0.0, 1.0, 0.0, 0.95576024, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.51282001, 0.54819006, 0.15000001, 0.0, 0.98000002, 0.0, 0.0, 0.99277014, 0.37, 0.0, 0.13, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.53000003, 0.63000005, 0.57999998, 0.0, 0.27894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.6400001, 0.0, 0.72234011 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.0, 0.95000005, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.50988007, 0.0, 0.78000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.97000003, 0.0, 0.0, 0.76013017, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.65000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.72392005, 0.0, 0.70768017, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.31401011, 0.0, 0.99000001, 0.83402014, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.77423018, 0.99000001, 0.0, 0.99000001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.96000004, 0.99000001, 0.95000023, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96000028, 0.0, 1.0, 0.85000014, 0.71234012 }, + { 1.0, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.96000022, 0.0, 0.0, 0.99000001, 0.92000014, 0.74000025, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences73() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.84149015, 1.0, 0.0, 0.97281021, 0.88000017, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.47000003, 0.0, 1.0, 0.0, 0.95576024, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.51282001, 0.54819006, 0.15000001, 0.0, 0.98000002, 0.0, 0.0, 0.99277014, 0.37, 0.0, 0.13, 1.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.53000003, 0.63000005, 0.57999998, 0.0, 0.27894998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.6400001, 0.0, 0.72234011 }, - { 0.99000001, 0.0, 0.0, 0.0, 1.0, 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.0, 0.95000005, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.50988007, 0.0, 0.78000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.97000003, 0.0, 0.0, 0.76013017, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.65000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.72392005, 0.0, 0.70768017, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 1.0, 0.31401011, 0.0, 0.99000001, 0.83402014, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.77423018, 0.99000001, 0.0, 0.99000001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.96000004, 0.99000001, 0.95000023, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96000028, 0.0, 1.0, 0.85000014, 0.71234012 }, + { 1.0, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.96000022, 0.0, 0.0, 0.99000001, 0.92000014, 0.74000025, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences74() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.99000001, 0.42734003, 0.0, 0.0, 0.0, 0.050000012, 0.30000001, 0.41857997, 0.53728002, 0.0, 0.0, 0.71164006, 0.65435004, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.83149016, 0.99000001, 0.0, 0.96281022, 0.9800002, 0.99000001, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.46000004, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.61282003, 0.64819008, 0.25, 0.0, 1.0, 0.0, 0.0, 0.98277014, 0.36000001, 0.0, 0.22999999, 0.99000001, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.63000005, 0.73000008, 0.56999999, 0.0, 0.26894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.63000011, 0.0, 0.82234013 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.64000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.82392007, 0.0, 0.69768018, 0.99000001, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.99000001, 0.41401011, 0.0, 1.0, 0.82402015, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.87423021, 0.98000002, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.99000001, 0.0, 0.82819015, 0.0, 0.0, 0.29999998, 0.99000001, 0.0, 0.94277018, 0.2, 0.0, 0.0, 0.0, 0.0, 0.38000003, 0.98000002 }, + { 0.0, 0.95000005, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.95000029, 0.0, 0.99000001, 0.84000015, 0.81234014 }, + { 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.91000015, 0.73000026, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences75() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.98000002, 0.52734005, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.51857996, 0.52728003, 0.0, 0.0, 0.70164007, 0.75435007, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.93149018, 0.98000002, 0.0, 0.95281023, 0.97000021, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.71282005, 0.7481901, 0.34999999, 0.0, 0.99000001, 0.0, 0.0, 0.97277015, 0.35000002, 0.0, 0.21999998, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.98000002, 0.51401013, 0.0, 1.0, 0.81402016, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.86423022, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.94000006, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.9400003, 0.0, 1.0, 0.83000016, 0.91234016 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences76() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.98000002, 0.52734005, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.51857996, 0.52728003, 0.0, 0.0, 0.70164007, 0.75435007, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.93149018, 0.98000002, 0.0, 0.95281023, 0.97000021, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.71282005, 0.7481901, 0.34999999, 0.0, 0.99000001, 0.0, 0.0, 0.97277015, 0.35000002, 0.0, 0.21999998, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.98000002, 0.51401013, 0.0, 1.0, 0.81402016, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.86423022, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.94000006, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.9400003, 0.0, 1.0, 0.83000016, 0.91234016 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences77() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.98000002, 0.52734005, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.51857996, 0.52728003, 0.0, 0.0, 0.70164007, 0.75435007, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.93149018, 0.98000002, 0.0, 0.95281023, 0.97000021, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.71282005, 0.7481901, 0.34999999, 0.0, 0.99000001, 0.0, 0.0, 0.97277015, 0.35000002, 0.0, 0.21999998, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.98000002, 0.51401013, 0.0, 1.0, 0.81402016, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.86423022, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.94000006, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.9400003, 0.0, 1.0, 0.83000016, 0.91234016 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences78() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.98000002, 0.52734005, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.51857996, 0.52728003, 0.0, 0.0, 0.70164007, 0.75435007, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.93149018, 0.98000002, 0.0, 0.95281023, 0.97000021, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.71282005, 0.7481901, 0.34999999, 0.0, 0.99000001, 0.0, 0.0, 0.97277015, 0.35000002, 0.0, 0.21999998, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.98000002, 0.51401013, 0.0, 1.0, 0.81402016, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.86423022, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.94000006, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.9400003, 0.0, 1.0, 0.83000016, 0.91234016 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences79() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.69392014, 0.0, 0.99000001, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.43000001, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.98000002, 0.52734005, 0.0, 0.0, 0.0, 0.0, 0.29000002, 0.51857996, 0.52728003, 0.0, 0.0, 0.70164007, 0.75435007, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.93149018, 0.98000002, 0.0, 0.95281023, 0.97000021, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.56000006, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.71282005, 0.7481901, 0.34999999, 0.0, 0.99000001, 0.0, 0.0, 0.97277015, 0.35000002, 0.0, 0.21999998, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.080000006, 0.0, 0.93377006, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.70139003, 1.0, 0.0, 0.38018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.98000002, 0.51401013, 0.0, 1.0, 0.81402016, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.86423022, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.61082017, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.62000006, 0.40999997, 0.0, 1.0, 1.0, 0.0, 1.0, 0.81469011, 0.0, 0.40000004, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.94000006, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.9400003, 0.0, 1.0, 0.83000016, 0.91234016 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences80() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.98000002, 0.0, 1.0, 0.97000003, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.66000009, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.81282008, 0.73819011, 0.34, 0.0, 0.98000002, 0.0, 0.0, 0.96277016, 0.45000002, 0.0, 0.31999999, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.97000003, 0.61401016, 0.0, 0.99000001, 0.80402017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96423024, 1.0, 0.0, 0.99000001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.60082018, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.97000003, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.61000007, 0.39999998, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.91469014, 0.0, 0.39000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.93000007, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.82000017, 0.90234017 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences81() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.98000002, 0.0, 1.0, 0.97000003, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.66000009, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.81282008, 0.73819011, 0.34, 0.0, 0.98000002, 0.0, 0.0, 0.96277016, 0.45000002, 0.0, 0.31999999, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.98000002, 0.0, 0.73000008, 0.8300001, 0.56, 0.0, 0.25895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.73000014, 0.0, 0.92234015 }, - { 0.98000002, 0.0, 0.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.94000006, 1.0, 0.0, 0.99000001, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.60988009, 0.0, 0.88000005, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.96000004, 0.0, 0.0, 0.75013018, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.63000005, 0.0, 0.0, 1.0, 1.0, 0.0, 0.81392008, 0.0, 0.7976802, 0.98000002, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, + { 0.0, 0.97000003, 0.61401016, 0.0, 0.99000001, 0.80402017, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.96423024, 1.0, 0.0, 0.99000001 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.60082018, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.97000003, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.61000007, 0.39999998, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.91469014, 0.0, 0.39000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.93000007, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.82000017, 0.90234017 }, + { 0.98000002, 0.0, 0.0, 1.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 0.90000015, 0.72000027, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences82() { return new double[][] { - { 0.0, 0.0, 0.94377005, 0.0, 0.0, 0.26271001, 0.1523, 0.90379006, 0.0, 0.0, 0.71139002, 0.99000001, 0.0, 0.060180001, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.81431013, 0.0, 0.91772014, 0.95000005, 1.0, 0.99000001, 0.21338998, 0.75380003, 0.0, 0.0, 0.0, 0.050000012, 0.0 }, - { 0.0, 0.050000012, 0.0, 0.0, 0.0, 0.50191998, 0.91153014, 0.0, 0.0, 0.56999999, 1.0, 0.94110012, 0.0, 0.0, 1.0, 1.0 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.96000004, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.80282009, 0.72819012, 0.44, 0.0, 1.0, 0.0, 0.0, 0.95277017, 0.44000003, 0.0, 0.41999999, 1.0, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.5998801, 0.0, 0.98000008, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.98000002, 0.95000005, 0.0, 0.0, 0.74013019, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.60082018, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.97000003, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.61000007, 0.39999998, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.91469014, 0.0, 0.39000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.92000008, 0.99000001, 0.98000002, 0.0, 0.0, 0.0, 0.0, 0.0, 0.96000004, 0.0, 0.99000001, 0.0, 1.0, 0.81000018, 1.0 }, + { 0.97000003, 0.0, 0.0, 0.99000001, 1.0, 0.0, 1.0, 0.0, 0.0, 0.96000004, 0.89000016, 0.71000028, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences83() { return new double[][] { - { 0.0, 0.0, 0.93377006, 0.0, 0.0, 0.25271001, 0.25229999, 1.0, 0.0, 0.0, 0.81139004, 1.0, 0.0, 0.050180003, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.91431016, 0.0, 0.90772015, 1.0, 1.0, 0.98000002, 0.31338999, 0.85380006, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.49191999, 1.0, 0.0, 0.0, 0.67000002, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.58988011, 0.0, 0.97000009, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.7301302, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.70082021, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 0.0, 0.96000004, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.60000008, 0.49999997, 0.0, 0.99000001, 1.0, 0.0, 1.0, 0.90469015, 0.0, 0.38000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.96000004, 0.0, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.99000019, 0.8100003, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences84() { return new double[][] { - { 0.0, 0.0, 0.93377006, 0.0, 0.0, 0.25271001, 0.25229999, 1.0, 0.0, 0.0, 0.81139004, 1.0, 0.0, 0.050180003, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.91431016, 0.0, 0.90772015, 1.0, 1.0, 0.98000002, 0.31338999, 0.85380006, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.49191999, 1.0, 0.0, 0.0, 0.67000002, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.58988011, 0.0, 0.97000009, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.7301302, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.70082021, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 0.0, 0.96000004, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.60000008, 0.49999997, 0.0, 0.99000001, 1.0, 0.0, 1.0, 0.90469015, 0.0, 0.38000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.96000004, 0.0, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.99000019, 0.8100003, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences85() { return new double[][] { - { 0.0, 0.0, 0.93377006, 0.0, 0.0, 0.25271001, 0.25229999, 1.0, 0.0, 0.0, 0.81139004, 1.0, 0.0, 0.050180003, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.91431016, 0.0, 0.90772015, 1.0, 1.0, 0.98000002, 0.31338999, 0.85380006, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.49191999, 1.0, 0.0, 0.0, 0.67000002, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001 }, - { 0.92988014, 0.0, 0.69008011, 0.0, 1.0, 0.97000003, 0.0, 0.99000001, 0.99000001, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.57401001, 1.0, 0.87402016, 0.81946009, 0.0, 0.0, 0.59423006, 0.0, 0.0, 0.98227018, 0.60265011 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.58988011, 0.0, 0.97000009, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.7301302, 0.99000001 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.98000002, 0.70082021, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 0.0, 0.96000004, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.60000008, 0.49999997, 0.0, 0.99000001, 1.0, 0.0, 1.0, 0.90469015, 0.0, 0.38000005, 0.0 }, + { 0.98000002, 0.0, 0.92819017, 0.0, 0.0, 0.28999999, 0.98000002, 0.0, 1.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.37000003, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.96000004, 0.0, 0.0, 1.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.99000019, 0.8100003, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences86() { return new double[][] { - { 0.0, 0.0, 0.92377007, 0.0, 0.0, 0.35271001, 0.24229999, 1.0, 0.0, 0.0, 0.91139007, 1.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.90431017, 0.0, 1.0, 0.99000001, 1.0, 1.0, 0.41338998, 0.95380008, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.59192002, 0.99000001, 0.0, 0.0, 0.77000004, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.98000002 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.67401004, 0.99000001, 0.97402018, 0.91946012, 0.0, 0.0, 0.69423008, 0.0, 0.0, 0.97227019, 0.59265012 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.57988012, 0.0, 0.9600001, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.72013021, 0.98000002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.97000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 0.69082022, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.95000005, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.70000011, 0.48999998, 0.0, 1.0, 1.0, 0.0, 1.0, 0.89469016, 0.0, 0.37000006, 0.0 }, + { 0.97000003, 0.0, 0.91819018, 0.0, 0.0, 0.38999999, 0.97000003, 0.0, 1.0, 0.28999999, 0.0, 0.0, 0.0, 0.0, 0.36000004, 0.99000001 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.95000005, 0.0, 0.0, 0.99000001, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.91000032, 0.0, 0.0, 0.0, 0.98000002 }, }; } public double[][] getPermanences87() { return new double[][] { - { 0.0, 0.0, 0.92377007, 0.0, 0.0, 0.35271001, 0.24229999, 1.0, 0.0, 0.0, 0.91139007, 1.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.90431017, 0.0, 1.0, 0.99000001, 1.0, 1.0, 0.41338998, 0.95380008, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.59192002, 0.99000001, 0.0, 0.0, 0.77000004, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.98000002 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.67401004, 0.99000001, 0.97402018, 0.91946012, 0.0, 0.0, 0.69423008, 0.0, 0.0, 0.97227019, 0.59265012 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.57988012, 0.0, 0.9600001, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.72013021, 0.98000002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.97000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 0.69082022, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.95000005, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.70000011, 0.48999998, 0.0, 1.0, 1.0, 0.0, 1.0, 0.89469016, 0.0, 0.37000006, 0.0 }, + { 0.97000003, 0.0, 0.91819018, 0.0, 0.0, 0.38999999, 0.97000003, 0.0, 1.0, 0.28999999, 0.0, 0.0, 0.0, 0.0, 0.36000004, 0.99000001 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.95000005, 0.0, 0.0, 0.99000001, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.91000032, 0.0, 0.0, 0.0, 0.98000002 }, }; } public double[][] getPermanences88() { return new double[][] { - { 0.0, 0.0, 0.92377007, 0.0, 0.0, 0.35271001, 0.24229999, 1.0, 0.0, 0.0, 0.91139007, 1.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.90431017, 0.0, 1.0, 0.99000001, 1.0, 1.0, 0.41338998, 0.95380008, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.59192002, 0.99000001, 0.0, 0.0, 0.77000004, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.98000002 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 0.99000001, 0.99000001, 0.0, 0.0, 0.99000001, 0.0, 0.68392015, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.42000002, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.67401004, 0.99000001, 0.97402018, 0.91946012, 0.0, 0.0, 0.69423008, 0.0, 0.0, 0.97227019, 0.59265012 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.6500001, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 0.95000005, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.93000007, 1.0, 0.0, 0.98000002, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.57988012, 0.0, 0.9600001, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.72013021, 0.98000002 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.97000003, 0.0, 0.98000002, 0.0, 0.0, 1.0, 0.69082022, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.95000005, 0.0 }, + { 0.0, 0.0, 0.98000002, 0.0, 0.0, 0.70000011, 0.48999998, 0.0, 1.0, 1.0, 0.0, 1.0, 0.89469016, 0.0, 0.37000006, 0.0 }, + { 0.97000003, 0.0, 0.91819018, 0.0, 0.0, 0.38999999, 0.97000003, 0.0, 1.0, 0.28999999, 0.0, 0.0, 0.0, 0.0, 0.36000004, 0.99000001 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.95000005, 0.0, 0.0, 0.99000001, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 1.0, 1.0, 0.91000032, 0.0, 0.0, 0.0, 0.98000002 }, }; } public double[][] getPermanences89() { return new double[][] { - { 0.0, 0.0, 0.92377007, 0.0, 0.0, 0.35271001, 0.24229999, 1.0, 0.0, 0.0, 0.91139007, 1.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.90431017, 0.0, 1.0, 0.99000001, 1.0, 1.0, 0.41338998, 0.95380008, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.58192003, 1.0, 0.0, 0.0, 0.76000005, 1.0, 0.99000001, 0.0, 0.0, 1.0, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.56988013, 0.0, 0.95000011, 0.0, 1.0, 0.0, 0.0, 0.99000001, 1.0, 0.99000001, 0.0, 0.0, 0.82013023, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.97000003, 0.0, 0.0, 0.99000001, 0.79082024, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 1.0, 0.0, 0.90819019, 0.0, 0.0, 0.38, 1.0, 0.0, 1.0, 0.28, 0.0, 0.0, 0.0, 0.0, 0.46000004, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 1.0, 0.0, 0.0, 0.98000002, 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.99000001, 1.0, 0.90000033, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences90() { return new double[][] { - { 0.0, 0.0, 0.92377007, 0.0, 0.0, 0.35271001, 0.24229999, 1.0, 0.0, 0.0, 0.91139007, 1.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 1.0, 0.58791006, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.97391015, 0.53000003, 0.0, 0.69948006, 0.0, 0.97000003, 0.0 }, - { 0.0, 0.0, 0.0, 0.90431017, 0.0, 1.0, 0.99000001, 1.0, 1.0, 0.41338998, 0.95380008, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.58192003, 1.0, 0.0, 0.0, 0.76000005, 1.0, 0.99000001, 0.0, 0.0, 1.0, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.7928201, 0.82819015, 0.43000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.54000002, 0.0, 0.41, 0.99000001, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.56988013, 0.0, 0.95000011, 0.0, 1.0, 0.0, 0.0, 0.99000001, 1.0, 0.99000001, 0.0, 0.0, 0.82013023, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.96000004, 0.60401016, 0.0, 1.0, 0.79402018, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 1.0, 0.0, 0.97000003, 0.0, 0.0, 0.99000001, 0.79082024, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 1.0, 0.0, 0.90819019, 0.0, 0.0, 0.38, 1.0, 0.0, 1.0, 0.28, 0.0, 0.0, 0.0, 0.0, 0.46000004, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 1.0, 0.0, 0.0, 0.98000002, 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.99000001, 1.0, 0.90000033, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences91() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.68791008, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.96391016, 0.63000005, 0.0, 0.68948007, 0.0, 0.96000004, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.99000001, 0.99000001, 0.40338999, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.89282012, 0.92819017, 0.42000002, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.64000005, 0.0, 0.40000001, 0.98000002, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89082026, 0.0, 0.99000001, 0.0, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.47999999, 1.0, 0.0, 0.99000001, 0.27000001, 0.0, 0.0, 0.0, 0.0, 0.45000005, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.99000001, 0.0, 0.0, 1.0, 0.96000004, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.89000034, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences92() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.68791008, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.96391016, 0.63000005, 0.0, 0.68948007, 0.0, 0.96000004, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.99000001, 0.99000001, 0.40338999, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.89282012, 0.92819017, 0.42000002, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.64000005, 0.0, 0.40000001, 0.98000002, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89082026, 0.0, 0.99000001, 0.0, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.47999999, 1.0, 0.0, 0.99000001, 0.27000001, 0.0, 0.0, 0.0, 0.0, 0.45000005, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.99000001, 0.0, 0.0, 1.0, 0.96000004, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.89000034, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences93() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.68791008, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.96391016, 0.63000005, 0.0, 0.68948007, 0.0, 0.96000004, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.99000001, 0.99000001, 0.40338999, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.89282012, 0.92819017, 0.42000002, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.64000005, 0.0, 0.40000001, 0.98000002, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89082026, 0.0, 0.99000001, 0.0, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.47999999, 1.0, 0.0, 0.99000001, 0.27000001, 0.0, 0.0, 0.0, 0.0, 0.45000005, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.99000001, 0.0, 0.0, 1.0, 0.96000004, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.89000034, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences94() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.99000001, 0.68791008, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.96391016, 0.63000005, 0.0, 0.68948007, 0.0, 0.96000004, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.99000001, 0.99000001, 0.40338999, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.91988015, 0.0, 0.68008012, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.97000003, 0.62734008, 0.0, 0.0, 0.0, 0.0, 0.28000003, 0.61857998, 0.51728004, 0.0, 0.0, 0.80164009, 0.85435009, 0.0, 0.0 }, - { 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 0.0, 0.98000002, 1.0, 0.0, 1.0, 0.99000001, 0.99000001, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.89282012, 0.92819017, 0.42000002, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.64000005, 0.0, 0.40000001, 0.98000002, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.94000006, 0.0, 0.0, 0.0, 0.97000003, 0.0, 0.92000008, 0.99000001, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 1.0, 1.0, 0.0, 1.0, 0.89000016, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.75000012, 0.0, 0.98000002, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 1.0, 0.89082026, 0.0, 0.99000001, 0.0, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.97000003, 0.0, 0.0, 0.69000012, 0.58999997, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 0.88469017, 0.0, 0.47000006, 0.0 }, + { 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.47999999, 1.0, 0.0, 0.99000001, 0.27000001, 0.0, 0.0, 0.0, 0.0, 0.45000005, 1.0 }, + { 0.0, 0.91000009, 0.98000002, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.99000001, 0.80000019, 0.99000001 }, + { 0.99000001, 0.0, 0.0, 1.0, 0.96000004, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.89000034, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences95() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.98000002, 0.7879101, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.62000006, 0.0, 0.78948009, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.99000001, 0.99000001, 0.40338999, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.90988016, 0.0, 0.78008014, 0.0, 0.98000002, 1.0, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.96000004, 0.7273401, 0.0, 0.0, 0.0, 0.0, 0.27000004, 0.71858001, 0.61728007, 0.0, 0.0, 0.90164012, 0.8443501, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.99000001, 0.0, 1.0, 1.0, 0.0, 0.99000001, 1.0, 0.98000002, 0.0, 0.0 }, - { 1.0, 0.95000005, 0.98000002, 0.0, 0.99000001, 0.0, 0.0, 0.0, 0.75000012, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.89282012, 0.92819017, 0.42000002, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.64000005, 0.0, 0.40000001, 0.98000002, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.91000009, 1.0, 0.0, 1.0, 0.99000001 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 0.99000001, 0.0, 0.99000001, 0.88000017, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.85000014, 0.0, 1.0, 0.0 }, + { 0.98000002, 0.0, 1.0, 0.0, 0.0, 1.0, 0.88082027, 0.0, 1.0, 0.0, 0.99000001, 0.97000003, 0.0, 0.0, 1.0, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.79000014, 0.57999998, 0.0, 1.0, 1.0, 0.0, 0.98000002, 0.98469019, 0.0, 0.57000005, 0.0 }, + { 0.98000002, 0.0, 1.0, 0.0, 0.0, 0.57999998, 0.99000001, 0.0, 1.0, 0.37, 0.0, 0.0, 0.0, 0.0, 0.55000007, 0.99000001 }, + { 0.0, 0.9000001, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.98000002, 0.90000021, 0.98000002 }, + { 0.99000001, 0.0, 0.0, 1.0, 0.96000004, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.89000034, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences96() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.98000002, 0.7879101, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.62000006, 0.0, 0.78948009, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 1.0, 0.98000002, 1.0, 0.39339, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.68192005, 1.0, 0.0, 0.0, 0.75000006, 1.0, 0.98000002, 0.0, 0.0, 0.99000001, 1.0 }, - { 0.90988016, 0.0, 0.78008014, 0.0, 0.98000002, 1.0, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 1.0, 0.0, 0.0, 0.0, 0.0, 0.66401005, 1.0, 0.96402019, 1.0, 0.0, 0.0, 0.68423009, 0.0, 0.0, 1.0, 0.69265014 }, - { 0.0, 0.95000005, 0.82734013, 0.0, 0.0, 0.0, 0.1, 0.26000005, 0.81858003, 0.60728008, 0.0, 0.0, 0.89164013, 0.94435012, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.98000002, 0.99000001, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.94000006, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.85000014, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.99282014, 1.0, 0.41000003, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.74000007, 0.0, 0.39000002, 1.0, 0.0, 0.0 }, - { 0.97000003, 0.97000003, 0.0, 0.72000009, 0.93000013, 0.55000001, 0.0, 0.35894999, 0.0, 0.0, 0.0, 0.0, 0.0, 0.83000016, 0.0, 1.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.98000002, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.91000009, 1.0, 0.0, 1.0, 0.99000001 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 0.99000001, 0.0, 0.99000001, 0.88000017, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.85000014, 0.0, 1.0, 0.0 }, + { 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.9808203, 0.0, 1.0, 0.0, 1.0, 0.96000004, 0.0, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 1.0, 0.0, 0.0, 0.78000015, 0.68000001, 0.0, 1.0, 0.99000001, 0.0, 0.97000003, 0.9746902, 0.0, 0.56000006, 0.0 }, + { 0.97000003, 0.0, 1.0, 0.0, 0.0, 0.56999999, 1.0, 0.0, 1.0, 0.36000001, 0.0, 0.0, 0.0, 0.0, 0.54000008, 0.98000002 }, + { 0.0, 0.8900001, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.98000002, 0.0, 1.0, 0.89000022, 0.97000003 }, + { 0.98000002, 0.0, 0.0, 1.0, 0.95000005, 0.0, 1.0, 0.0, 0.0, 0.97000003, 1.0, 0.88000035, 0.0, 0.0, 0.0, 0.99000001 }, }; } public double[][] getPermanences97() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.98000002, 0.7879101, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.62000006, 0.0, 0.78948009, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.97000003, 1.0, 0.38339001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.78192008, 0.99000001, 0.0, 0.0, 0.74000007, 1.0, 1.0, 0.0, 0.0, 0.98000002, 1.0 }, - { 0.90988016, 0.0, 0.78008014, 0.0, 0.98000002, 1.0, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.76401007, 0.99000001, 0.9540202, 1.0, 0.0, 0.0, 0.78423011, 0.0, 0.0, 0.99000001, 0.79265016 }, - { 0.0, 0.95000005, 0.82734013, 0.0, 0.0, 0.0, 0.1, 0.26000005, 0.81858003, 0.60728008, 0.0, 0.0, 0.89164013, 0.94435012, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.98000002, 0.99000001, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.94000006, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.85000014, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.99282014, 1.0, 0.41000003, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.74000007, 0.0, 0.39000002, 1.0, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.0, 0.82000011, 0.92000014, 0.65000004, 0.0, 0.34895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.82000017, 0.0, 1.0 }, - { 0.98000002, 0.0, 0.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 0.99000001, 0.0, 0.99000001, 0.88000017, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.85000014, 0.0, 1.0, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.97082031, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.88000017, 0.67000002, 0.0, 1.0, 0.98000002, 0.0, 1.0, 0.96469021, 0.0, 0.55000007, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 0.67000002, 0.99000001, 0.0, 1.0, 0.35000002, 0.0, 0.0, 0.0, 0.0, 0.53000009, 1.0 }, + { 0.0, 0.88000011, 0.99000001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 1.0, 0.0, 0.99000001, 0.88000023, 1.0 }, + { 0.97000003, 0.0, 0.0, 1.0, 0.94000006, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 1.0, 0.98000038, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences98() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.98000002, 0.7879101, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.62000006, 0.0, 0.78948009, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.97000003, 1.0, 0.38339001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.78192008, 0.99000001, 0.0, 0.0, 0.74000007, 1.0, 1.0, 0.0, 0.0, 0.98000002, 1.0 }, - { 0.90988016, 0.0, 0.78008014, 0.0, 0.98000002, 1.0, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.76401007, 0.99000001, 0.9540202, 1.0, 0.0, 0.0, 0.78423011, 0.0, 0.0, 0.99000001, 0.79265016 }, - { 0.0, 0.95000005, 0.82734013, 0.0, 0.0, 0.0, 0.1, 0.26000005, 0.81858003, 0.60728008, 0.0, 0.0, 0.89164013, 0.94435012, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.98000002, 0.99000001, 1.0, 0.0, 0.0 }, - { 0.99000001, 0.94000006, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.0, 0.85000014, 0.0, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.99000001 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.99282014, 1.0, 0.41000003, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.74000007, 0.0, 0.39000002, 1.0, 0.0, 0.0 }, - { 0.96000004, 0.96000004, 0.0, 0.82000011, 0.92000014, 0.65000004, 0.0, 0.34895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.82000017, 0.0, 1.0 }, - { 0.98000002, 0.0, 0.0, 0.0, 0.97000003, 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 1.0, 0.99000001, 0.0, 0.99000001, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.84153008, 0.0, 0.0, 0.0, 0.1, 0.82891011, 0.0, 0.0, 1.0, 0.92064011, 1.0 }, + { 0.0, 0.0, 0.66988015, 0.0, 0.94000012, 0.0, 1.0, 0.0, 0.0, 0.98000002, 1.0, 0.98000002, 0.0, 0.0, 0.81013024, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.95000005, 0.70401019, 0.0, 0.99000001, 0.8940202, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.99000001, 0.99000001, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.99000001, 0.99000001, 0.0, 0.99000001, 0.88000017, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.85000014, 0.0, 1.0, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.97082031, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.88000017, 0.67000002, 0.0, 1.0, 0.98000002, 0.0, 1.0, 0.96469021, 0.0, 0.55000007, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 0.67000002, 0.99000001, 0.0, 1.0, 0.35000002, 0.0, 0.0, 0.0, 0.0, 0.53000009, 1.0 }, + { 0.0, 0.88000011, 0.99000001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 1.0, 0.0, 0.99000001, 0.88000023, 1.0 }, + { 0.97000003, 0.0, 0.0, 1.0, 0.94000006, 0.0, 0.99000001, 0.0, 0.0, 0.96000004, 1.0, 0.98000038, 0.0, 0.0, 0.0, 1.0 }, }; } public double[][] getPermanences99() { return new double[][] { - { 0.0, 0.0, 1.0, 0.0, 0.0, 0.45271, 0.3423, 0.99000001, 0.0, 0.0, 1.0, 0.99000001, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.97000003, 0.77791011, 0.98000002, 0.0, 1.0, 0.0, 0.0, 0.0, 0.99000001, 0.72000009, 0.0, 0.88948011, 0.0, 1.0, 0.0 }, - { 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.97000003, 1.0, 0.38339001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.8819201, 0.98000002, 0.0, 0.0, 0.73000008, 1.0, 0.99000001, 0.0, 0.0, 1.0, 1.0 }, - { 0.90988016, 0.0, 0.78008014, 0.0, 0.98000002, 1.0, 0.0, 0.99000001, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.16743, 0.0, 0.0, 0.0, 0.48294002, 0.058449998, 0.0, 0.61796004, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0 }, - { 1.0, 0.98000002, 0.0, 0.0, 0.98000002, 0.0, 0.78392017, 0.0, 1.0, 0.0, 0.0, 0.99000001, 0.99000001, 0.0, 0.52000004, 0.0 }, - { 0.99000001, 0.0, 0.0, 0.0, 0.0, 0.76401007, 0.99000001, 0.9540202, 1.0, 0.0, 0.0, 0.78423011, 0.0, 0.0, 0.99000001, 0.79265016 }, - { 0.0, 0.95000005, 0.82734013, 0.0, 0.0, 0.0, 0.1, 0.26000005, 0.81858003, 0.60728008, 0.0, 0.0, 0.89164013, 0.94435012, 0.0, 0.0 }, - { 0.0, 0.0, 1.0, 0.0, 0.97000003, 0.0, 1.0, 0.0, 1.0, 0.99000001, 0.0, 0.98000002, 0.99000001, 1.0, 0.0, 0.0 }, - { 0.98000002, 0.93000007, 0.99000001, 0.0, 1.0, 0.0, 0.0, 0.0, 0.84000015, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0 }, - { 1.0, 0.94000012, 0.28999999, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.78477013, 0.0, 0.0, 0.98000002, 0.26000002 }, - { 0.0, 0.0, 0.99282014, 1.0, 0.41000003, 0.0, 1.0, 0.0, 0.0, 0.98000002, 0.74000007, 0.0, 0.39000002, 1.0, 0.0, 0.0 }, - { 0.95000005, 0.95000005, 0.0, 0.81000012, 1.0, 0.75000006, 0.0, 0.33895001, 0.0, 0.0, 0.0, 0.0, 0.0, 0.81000018, 0.0, 1.0 }, - { 0.97000003, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 0.99000001, 1.0, 0.0, 1.0, 1.0 }, + { 0.070000008, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.80139005, 1.0, 0.0, 0.48018, 0.0, 0.0 }, + { 1.0, 0.78000003, 0.0, 0.76953006, 0.0, 0.0, 0.0, 1.0, 0.76391011, 0.0, 0.0, 0.46000001, 0.59948003, 0.0, 0.99000001, 0.0 }, + { 0.0, 0.0, 0.65431005, 0.0, 0.75772005, 1.0, 0.99000001, 0.0, 1.0, 0.053390004, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.94153011, 0.0, 0.0, 0.0, 0.090000004, 0.92891014, 0.0, 0.0, 0.99000001, 1.0, 1.0 }, + { 0.0, 0.0, 0.65988016, 0.0, 1.0, 0.0, 0.99000001, 0.0, 0.0, 0.97000003, 1.0, 0.97000003, 0.0, 0.0, 0.91013026, 1.0 }, + { 0.0, 0.0, 0.0, 0.0, 0.0, 0.057429999, 0.0, 0.0, 0.0, 0.59294003, 0.058449998, 0.0, 0.50796002, 0.1, 0.1, 0.0 }, + { 0.62000006, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.9139201, 0.0, 0.78768021, 0.97000003, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0 }, + { 0.0, 0.94000006, 0.6940102, 0.0, 1.0, 0.99402022, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.98000002, 0.0, 1.0 }, + { 0.74513, 0.0, 0.0, 0.057340004, 0.0, 0.0, 0.0, 0.051069997, 0.26857999, 0.057280004, 0.0, 0.0, 0.0, 0.45163998, 0.17434999, 0.0 }, + { 0.98000002, 0.98000002, 0.0, 0.98000002, 0.9800002, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.95000017, 0.0, 1.0, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 1.0, 0.97082031, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.98000002, 0.0 }, + { 0.0, 0.0, 0.99000001, 0.0, 0.0, 0.88000017, 0.67000002, 0.0, 1.0, 0.98000002, 0.0, 1.0, 0.96469021, 0.0, 0.55000007, 0.0 }, + { 0.96000004, 0.0, 0.99000001, 0.0, 0.0, 0.67000002, 0.99000001, 0.0, 1.0, 0.35000002, 0.0, 0.0, 0.0, 0.0, 0.53000009, 1.0 }, + { 0.0, 0.88000011, 0.99000001, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.98000002, 0.0, 1.0, 0.0, 0.99000001, 0.88000023, 1.0 }, + { 0.96000004, 0.0, 0.0, 0.99000001, 1.0, 0.0, 0.98000002, 0.0, 0.0, 0.95000005, 1.0, 0.97000039, 0.0, 0.0, 0.0, 1.0 }, }; } diff --git a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java index 257c3f43..30e1c850 100644 --- a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java +++ b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java @@ -72,6 +72,18 @@ public void testCompatability1() { int[][] connecteds = c. getConnecteds(); double[][] perms = c.getPermanences(); +// for(int[] pots : potentials) { +// System.out.println(Arrays.toString(pots)); +// } +// System.out.println("\n\n"); +// for(int[] conns : connecteds) { +// System.out.println(Arrays.toString(conns)); +// } +// System.out.println("\n\n"); +// for(double[] perm : perms) { +// System.out.println(Arrays.toString(perm)); +// } + int[][] expectedInitialPotentials = getPythonInitialPotentialMapping1(); int[][] expectedInitialColumnConnects = getPythonInitialColumnConnections(); double[][] expectedInitialPerms = getPythonInitialPermanences1(); @@ -84,7 +96,14 @@ public void testCompatability1() { .allMatch(i -> Arrays.equals(connecteds[i], expectedInitialColumnConnects[i]))); assertTrue( IntStream.range(0, perms.length) - .allMatch(d -> Arrays.equals(perms[d], expectedInitialPerms[d]))); + .allMatch(d -> { + return IntStream.range(0, perms[d].length).allMatch(i -> { + return areEqualDouble(perms[d][i], expectedInitialPerms[d][i], 4); + }); + + })); + + // Set the percentage of 1's in the test inputs @@ -98,6 +117,10 @@ public void testCompatability1() { runSideBySide(sp, c, pythonInputMatrix, numRecords, new SpatialPoolerCompatibilityActives(), new SpatialPoolerCompatibilityPermanences()); } + public static boolean areEqualDouble(double a, double b, int precision) { + return Math.abs(a - b) <= Math.pow(10, -precision); + } + /** * Main loop of the test which calls compute and then compares the {@link SpatialPooler}'s * state to the stored test from the Python version of the same test. @@ -295,21 +318,21 @@ private Tuple createSP() { */ private int[][] getPythonInitialColumnConnections() { return new int[][] { - { 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0 }, - { 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0 }, - { 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1 }, - { 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, - { 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0 }, - { 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0 }, - { 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 }, - { 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0 }, - { 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0 }, - { 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 } + {0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0}, + {1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0}, + {0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1}, + {0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1}, + {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0}, + {0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0}, + {0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0}, + {1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0}, + {1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1}, + {0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + {1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1} }; } @@ -320,21 +343,21 @@ private int[][] getPythonInitialColumnConnections() { */ private int[][] getPythonInitialPotentialMapping1() { return new int[][] { - { 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0 }, - { 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0 }, - { 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0 }, - { 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1 }, - { 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0 }, - { 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0 }, - { 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0 }, - { 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1 }, - { 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0 }, - { 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0 }, - { 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1 }, - { 1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1 }, - { 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0 }, - { 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1 }, - { 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1 } + {1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0}, + {1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0}, + {0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0}, + {0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1}, + {0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1}, + {0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0}, + {1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0}, + {0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1}, + {1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0}, + {1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0}, + {1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0}, + {0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0}, + {1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1}, + {0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1}, + {1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1} }; } @@ -344,21 +367,21 @@ private int[][] getPythonInitialPotentialMapping1() { */ private double[][] getPythonInitialPermanences1() { return new double[][] { - { 0.0, 0.0, 0.74377, 0.0, 0.0, 0.06271, 0.0623, 0.81379, 0.0, 0.0, 0.51139, 0.99208, 0.0, 0.08018, 0.0, 0.0 }, - { 0.0, 0.68185, 0.05791, 0.11953, 0.0, 0.5941, 0.0, 0.0, 0.0, 0.33391, 0.0, 0.0, 0.05948, 0.0, 0.45874, 0.0 }, - { 0.0, 0.0, 0.0, 0.56431, 0.0, 0.66772, 0.83539, 0.95185, 0.81082, 0.07339, 0.0638, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.0, 0.0, 0.0, 0.05192, 0.46153, 0.0, 0.0, 0.0, 0.55891, 0.7111, 0.0, 0.0, 0.54064, 0.94915 }, - { 0.09988, 0.0, 0.08008, 0.0, 0.828, 0.66268, 0.0, 0.35614, 0.96175, 0.24013, 0.0, 0.0, 0.75304, 0.0, 0.0, 0.0 }, - { 0.0, 0.0, 0.06743, 0.0, 0.0, 0.0, 0.49294, 0.06845, 0.0, 0.51796, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }, - { 0.0, 0.79075, 0.0, 0.0, 0.61381, 0.0, 0.08392, 0.0, 0.61768, 0.0, 0.0, 0.59041, 0.43822, 0.0, 0.0, 0.0 }, - { 0.34363, 0.0, 0.0, 0.0, 0.0, 0.05401, 0.6598, 0.13402, 0.07946, 0.0, 0.0, 0.07423, 0.0, 0.0, 0.35227, 0.08265 }, - { 0.0, 0.64513, 0.06734, 0.0, 0.0, 0.0, 0.0, 0.06107, 0.16858, 0.06727, 0.0, 0.0, 0.35164, 0.07435, 0.0, 0.0 }, - { 0.0, 0.0, 0.27271, 0.0, 0.90487, 0.0, 0.67375, 0.0, 0.07149, 0.19324, 0.0, 0.09281, 0.0, 0.37126, 0.0, 0.0 }, - { 0.0, 0.30159, 0.84898, 0.0, 0.18082, 0.0, 0.0, 0.0, 0.05324, 0.0, 0.80101, 0.0, 0.07576, 0.0, 0.0, 0.8974 }, - { 0.62569, 0.0, 0.0, 0.0, 0.0, 0.46846, 0.0, 0.80119, 0.0, 0.0, 0.0, 0.07477, 0.0, 0.0, 0.09469, 0.0 }, - { 0.0, 0.0, 0.06282, 0.09819, 0.0, 0.0, 0.79606, 0.0, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.52515, 0.0, 0.0 }, - { 0.48619, 0.45531, 0.0, 0.0, 0.0, 0.0, 0.0, 0.08895, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.09234 }, - { 0.2368, 0.0, 0.0, 0.0, 0.99505, 0.33265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.33742, 0.07621, 0.0, 0.0, 0.20548 } + {0.0, 0.0, 0.74377, 0.0, 0.0, 0.062710002, 0.0623, 0.81379002, 0.0, 0.0, 0.51138997, 0.99207997, 0.0, 0.080179997, 0.0, 0.0}, + {0.68185002, 0.057909999, 0.0, 0.11953, 0.0, 0.0, 0.0, 0.5941, 0.33390999, 0.0, 0.0, 0.0, 0.05948, 0.0, 0.45874, 0.0}, + {0.0, 0.0, 0.56431001, 0.0, 0.66772002, 0.83538997, 0.95185, 0.0, 0.81081998, 0.07339, 0.0, 0.0638, 0.0, 0.0, 0.0, 0.0}, + {0.0, 0.0, 0.0, 0.05192, 0.0, 0.46153, 0.0, 0.0, 0.0, 0.0, 0.55891001, 0.0, 0.0, 0.71109998, 0.54064, 0.94915003}, + {0.0, 0.0, 0.099880002, 0.0, 0.080080003, 0.0, 0.82801002, 0.0, 0.0, 0.66267997, 0.35613999, 0.96174997, 0.0, 0.0, 0.24013001, 0.75304002}, + {0.0, 0.0, 0.0, 0.0, 0.0, 0.067429997, 0.0, 0.0, 0.0, 0.49294001, 0.068449996, 0.0, 0.51796001, 0.0, 0.0, 0.0}, + {0.0, 0.0, 0.0, 0.79075003, 0.61381, 0.0, 0.083920002, 0.0, 0.61768001, 0.59040999, 0.0, 0.0, 0.43821999, 0.0, 0.0, 0.0}, + {0.0, 0.34362999, 0.05401, 0.0, 0.65979999, 0.13402, 0.0, 0.0, 0.0, 0.0, 0.079460002, 0.0, 0.07423, 0.35227001, 0.0, 0.082649998}, + {0.64512998, 0.0, 0.0, 0.067340001, 0.0, 0.0, 0.0, 0.061069999, 0.16858, 0.067280002, 0.0, 0.0, 0.0, 0.35163999, 0.074349999, 0.0}, + {0.27271, 0.90486997, 0.0, 0.67374998, 0.071489997, 0.19324, 0.0, 0.0, 0.0, 0.0, 0.092809997, 0.0, 0.0, 0.0, 0.37125999, 0.0}, + {0.0, 0.0, 0.30159, 0.0, 0.0, 0.84898001, 0.18082, 0.0, 0.053240001, 0.0, 0.80101001, 0.075759999, 0.0, 0.0, 0.89740002, 0.0}, + {0.0, 0.0, 0.62568998, 0.0, 0.0, 0.0, 0.0, 0.0, 0.46845999, 0.80119002, 0.0, 0.074770004, 0.094690003, 0.0, 0.0, 0.0}, + {0.062820002, 0.0, 0.098190002, 0.0, 0.0, 0.0, 0.79606003, 0.0, 0.21277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.52516001}, + {0.0, 0.48618999, 0.45532, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.088950001, 0.0, 0.09234}, + {0.2368, 0.0, 0.0, 0.99505001, 0.33265001, 0.0, 0.0, 0.0, 0.0, 0.33741999, 0.07621, 0.0, 0.0, 0.0, 0.0, 0.20547999} }; } From 88d5899c6df027c66d9555b0faa8bbbb6274c5f3 Mon Sep 17 00:00:00 2001 From: cogmission Date: Thu, 6 Oct 2016 17:08:50 -0500 Subject: [PATCH 5/7] Updated tests to account for new SP output --- .../numenta/nupic/util/UniversalRandom.java | 2 +- .../org/numenta/nupic/network/LayerTest.java | 29 +-- .../nupic/network/PersistenceAPITest.java | 19 +- ...ial_pooler_compatability_test_generator.py | 169 ++++++++++++++++++ 4 files changed, 195 insertions(+), 24 deletions(-) create mode 100755 src/test/resources/spatial_pooler_compatability_test_generator.py diff --git a/src/main/java/org/numenta/nupic/util/UniversalRandom.java b/src/main/java/org/numenta/nupic/util/UniversalRandom.java index 21274b62..91a8e8c5 100644 --- a/src/main/java/org/numenta/nupic/util/UniversalRandom.java +++ b/src/main/java/org/numenta/nupic/util/UniversalRandom.java @@ -132,7 +132,7 @@ public int[] shuffle(int[] array) { array[index] ^= array[i]; } } - System.out.println("shuffle: " + Arrays.toString(array)); + //System.out.println("shuffle: " + Arrays.toString(array)); return array; } diff --git a/src/test/java/org/numenta/nupic/network/LayerTest.java b/src/test/java/org/numenta/nupic/network/LayerTest.java index 445a308c..1ba9aee8 100644 --- a/src/test/java/org/numenta/nupic/network/LayerTest.java +++ b/src/test/java/org/numenta/nupic/network/LayerTest.java @@ -41,6 +41,7 @@ import org.junit.Test; import org.numenta.nupic.Parameters; import org.numenta.nupic.Parameters.KEY; +import org.numenta.nupic.SDR; import org.numenta.nupic.algorithms.Anomaly; import org.numenta.nupic.algorithms.Anomaly.Mode; import org.numenta.nupic.algorithms.CLAClassifier; @@ -134,7 +135,7 @@ public void testGetAllValues() { @Override public void onNext(Inference i) { assertNotNull(i); - assertEquals(54, i.getSDR().length); + assertEquals(42, i.getSDR().length); } }); @@ -504,8 +505,8 @@ public void testLayerWithGenericObservable() { inputs[5] = new int[] { 0, 0, 0, 0, 1, 1, 1, 0 }; inputs[6] = new int[] { 0, 0, 0, 0, 0, 1, 1, 1 }; - final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1 }; - final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1 }; + final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; + final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; Func1 addedFunc = l -> { return l.customObject("Interposed: " + Arrays.toString(l.getSDR())); @@ -528,11 +529,11 @@ public void testLayerWithGenericObservable() { public void onNext(Inference i) { if(test == 0) { assertTrue(Arrays.equals(expected0, i.getSDR())); - assertEquals("Interposed: [1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1]", i.getCustomObject()); + assertEquals("Interposed: [1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0]", i.getCustomObject()); } if(test == 1) { assertTrue(Arrays.equals(expected1, i.getSDR())); - assertEquals("Interposed: [1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1]", i.getCustomObject()); + assertEquals("Interposed: [1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]", i.getCustomObject()); } ++test; } @@ -717,8 +718,8 @@ public void testBasicSetup_SpatialPooler_MANUAL_MODE() { inputs[5] = new int[] { 0, 0, 0, 0, 1, 1, 1, 0 }; inputs[6] = new int[] { 0, 0, 0, 0, 0, 1, 1, 1 }; - final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1 }; - final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1 }; + final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; + final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; Layer l = new Layer<>(p, null, new SpatialPooler(), null, null, null); @@ -768,8 +769,8 @@ public void testBasicSetup_SpatialPooler_AUTO_MODE() { Layer l = new Layer<>(n); l.add(htmSensor).add(new SpatialPooler()); - final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1 }; - final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1 }; + final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; + final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; TestObserver tester; l.subscribe(tester = new TestObserver() { int test = 0; @@ -829,8 +830,8 @@ public void testBasicSetup_TemporalMemory_MANUAL_MODE() { @Override public void onNext(Inference output) { if(seq / 7 >= timeUntilStable) { -// System.out.println("seq: " + (seq) + " --> " + (test) + " output = " + Arrays.toString(output.getSDR()) + -// ", \t\t\t\t cols = " + Arrays.toString(SDR.asColumnIndices(output.getSDR(), l.getConnections().getCellsPerColumn()))); + System.out.println("seq: " + (seq) + " --> " + (test) + " output = " + Arrays.toString(output.getSDR()) + + ", \t\t\t\t cols = " + Arrays.toString(SDR.asColumnIndices(output.getSDR(), l.getConnections().getCellsPerColumn()))); assertTrue(output.getSDR().length >= 5); } @@ -905,8 +906,8 @@ public void testSpatialPoolerPrimerDelay() { inputs[5] = new int[] { 0, 0, 0, 0, 1, 1, 1, 0 }; inputs[6] = new int[] { 0, 0, 0, 0, 0, 1, 1, 1 }; - final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1 }; - final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1 }; + final int[] expected0 = new int[] { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; + final int[] expected1 = new int[] { 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; // First test without prime directive :-P Layer l = new Layer<>(p, null, new SpatialPooler(), null, null, null); @@ -977,7 +978,7 @@ public void testBasicClassifierSetup() { @Override public void onNext(Inference i) { assertNotNull(i); - assertEquals(54, i.getSDR().length); + assertEquals(42, i.getSDR().length); } }); diff --git a/src/test/java/org/numenta/nupic/network/PersistenceAPITest.java b/src/test/java/org/numenta/nupic/network/PersistenceAPITest.java index 1c4d915a..829e0a2f 100644 --- a/src/test/java/org/numenta/nupic/network/PersistenceAPITest.java +++ b/src/test/java/org/numenta/nupic/network/PersistenceAPITest.java @@ -1287,8 +1287,9 @@ public void testStoreAndLoad_SynchronousNetwork() { m.put("timestamp", dateEncoder.parse(sa[0])); m.put("consumption", Double.parseDouble(sa[1])); // System.out.println(m); - Inference inf = network.computeImmediate(m); - System.out.println("" + inf.getRecordNum() + ", " + inf.getAnomalyScore()); +// Inference inf = network.computeImmediate(m); + network.computeImmediate(m); +// System.out.println("" + inf.getRecordNum() + ", " + inf.getAnomalyScore()); } network.reset(); } @@ -1858,13 +1859,13 @@ private Network createAndRunTestSpatialPoolerNetwork(int start, int runTo) { inputs[5] = new int[] { 0, 0, 0, 0, 1, 1, 1, 0 }; inputs[6] = new int[] { 0, 0, 0, 0, 0, 1, 1, 1 }; - int[] expected0 = new int[] { 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0 }; - int[] expected1 = new int[] { 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }; - int[] expected2 = new int[] { 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0 }; - int[] expected3 = new int[] { 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0 }; - int[] expected4 = new int[] { 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0 }; - int[] expected5 = new int[] { 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0 }; - int[] expected6 = new int[] { 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0 }; + int[] expected0 = new int[] { 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0 }; + int[] expected1 = new int[] { 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 }; + int[] expected2 = new int[] { 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 }; + int[] expected3 = new int[] { 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0 }; + int[] expected4 = new int[] { 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0 }; + int[] expected5 = new int[] { 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0 }; + int[] expected6 = new int[] { 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0 }; int[][] expecteds = new int[][] { expected0, expected1, expected2, expected3, expected4, expected5, expected6 }; TestObserver tester; diff --git a/src/test/resources/spatial_pooler_compatability_test_generator.py b/src/test/resources/spatial_pooler_compatability_test_generator.py new file mode 100755 index 00000000..d3d55436 --- /dev/null +++ b/src/test/resources/spatial_pooler_compatability_test_generator.py @@ -0,0 +1,169 @@ +#! /usr/bin/env python +# ---------------------------------------------------------------------- +# Numenta Platform for Intelligent Computing (NuPIC) +# Copyright (C) 2013, Numenta, Inc. Unless you have an agreement +# with Numenta, Inc., for a separate license for this software code, the +# following terms and conditions apply: +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero Public License version 3 as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU Affero Public License for more details. +# +# You should have received a copy of the GNU Affero Public License +# along with this program. If not, see http://www.gnu.org/licenses. +# +# http://numenta.org/licenses/ +# ---------------------------------------------------------------------- + +import cPickle as pickle +import numpy +import unittest2 as unittest +import time +import traceback + +from nupic.research.spatial_pooler import SpatialPooler as PySpatialPooler +from nupic.math.universal_random import UniversalRandom +from nupic.math.spatial_pooler_output_javaclass_writer import SpatialPoolerOutputWriter + +realType = "NTA_Real" +uintType = "uint32" +numRecords = 100 + + + +class SpatialPoolerCompatabilityTest(unittest.TestCase): + """ + Tests to ensure that the PY and CPP implementations of the spatial pooler + are functionally identical. + """ + + def setUp(self): + # Set to 1 for more verbose debugging output + self.verbosity = 1 + + + def runSideBySide(self, params): + """ + Run the PY and CPP implementations side by side on random inputs. + If seed is None a random seed will be chosen based on time, otherwise + the fixed seed will be used. + + If learnMode is None learning will be randomly turned on and off. + If it is False or True then set it accordingly. + + If convertEveryIteration is True, the CPP will be copied from the PY + instance on every iteration just before each compute. + """ + pySp = self.CreateSP("py", params) + numColumns = pySp.getNumColumns() + numInputs = pySp.getNumInputs() + + self.printPotentials(pySp, numInputs) + print("\n\n") + self.printConnects(pySp, numInputs) + print("\n\n") + self.printPermanences(pySp, numInputs) + + threshold = 0.4 + random = UniversalRandom(42) + inputMatrix = random.bin_distrib(numRecords, numInputs, threshold).astype(uintType) +# for i in xrange(len(inputMatrix)): +# print str(list(inputMatrix[i])) + + writer = SpatialPoolerOutputWriter("/Users/cogmission/git/newspatial/htm.java") + random = UniversalRandom(42) + # Run side by side for numRecords iterations + for i in xrange(numRecords): + learn = (random.nextDouble() > 0.5) + + if self.verbosity > 1: + print "Iteration:",i,"learn=",learn + PyActiveArray = numpy.zeros(numColumns).astype(uintType) + inputVector = inputMatrix[i,:] + + pySp.compute(inputVector, learn, PyActiveArray) + + writer.collectActive(PyActiveArray) + writer.writePermanences(pySp, i) + + writer.writeActives() + writer.closeOutputs() + + + def testCompatability1(self): + params = { + "inputDimensions": [4,4], + "columnDimensions": [5,3], + "potentialRadius": 20, + "potentialPct": 0.5, + "globalInhibition": True, + "localAreaDensity": 0, + "numActiveColumnsPerInhArea": 5, + "stimulusThreshold": 0, + "synPermInactiveDec": 0.01, + "synPermActiveInc": 0.1, + "synPermConnected": 0.10, + "minPctOverlapDutyCycle": 0.001, + "minPctActiveDutyCycle": 0.001, + "dutyCyclePeriod": 30, + "maxBoost": 10.0, + "seed": 4, + "spVerbosity": 0, + "urandom": UniversalRandom(42) + } + # This seed used to cause problems if learnMode is set to None + self.runSideBySide(params) + + + def CreateSP(self, imp, params): + """ + Helper class for creating an instance of the appropriate spatial pooler using + given parameters. + + Parameters: + ---------------------------- + imp: Either 'py' or 'cpp' for creating the appropriate instance. + params: A dict for overriding constructor parameters. The keys must + correspond to contructor parameter names. + + Returns the SP object. + """ + if (imp == "py"): + spClass = PySpatialPooler + elif (imp == "cpp"): + spClass = CPPSpatialPooler + else: + raise RuntimeError("unrecognized implementation") + + sp = spClass(**params) + + return sp + + + def printPotentials(self, pySp, numInputs): + for i in xrange(pySp.getNumColumns()): + pyPot = numpy.zeros(numInputs).astype(uintType) + pySp.getPotential(i, pyPot) + print str(list(pyPot)) + + + def printConnects(self, pySp, numInputs): + for i in xrange(pySp.getNumColumns()): + pyCon = numpy.zeros(numInputs).astype(uintType) + pySp.getConnectedSynapses(i, pyCon) + print str(list(pyCon)) + + + def printPermanences(self, pySp, numInputs): + for i in xrange(pySp.getNumColumns()): + pyPerm = numpy.zeros(numInputs).astype(numpy.float32) + pySp.getPermanence(i, pyPerm) + print str(list(pyPerm)) #[ float("{:.6f}".format(d)) for d in pyPerm])) + +if __name__ == "__main__": + unittest.main() From 38912b09eb1a9e6b4cf483db3eb80869ec04e8af Mon Sep 17 00:00:00 2001 From: cogmission Date: Fri, 7 Oct 2016 09:03:27 -0500 Subject: [PATCH 6/7] Added Generator test and AbstractSparseBinaryMatrixTest --- .../util/AbstractSparseBinaryMatrix.java | 16 +- .../org/numenta/nupic/util/Generator.java | 2 +- .../SpatialPoolerCompatibilityTest.java | 24 +- .../util/AbstractSparseBinaryMatrixTest.java | 209 ++++++++++++++++++ .../org/numenta/nupic/util/GeneratorTest.java | 21 ++ .../nupic/util/SparseBinaryMatrixTest.java | 6 +- 6 files changed, 261 insertions(+), 17 deletions(-) create mode 100644 src/test/java/org/numenta/nupic/util/AbstractSparseBinaryMatrixTest.java diff --git a/src/main/java/org/numenta/nupic/util/AbstractSparseBinaryMatrix.java b/src/main/java/org/numenta/nupic/util/AbstractSparseBinaryMatrix.java index 4262aadb..ae1b083e 100644 --- a/src/main/java/org/numenta/nupic/util/AbstractSparseBinaryMatrix.java +++ b/src/main/java/org/numenta/nupic/util/AbstractSparseBinaryMatrix.java @@ -90,8 +90,8 @@ public AbstractSparseBinaryMatrix(int[] dimensions, boolean useColumnMajorOrderi */ protected void sliceError(int... coordinates) { throw new IllegalArgumentException( - "This method only returns the array holding the specified index: " + - Arrays.toString(coordinates)); + "This method only returns the array holding the specified maximum index: " + + Arrays.toString(dimensions)); } /** @@ -101,14 +101,16 @@ protected void sliceError(int... coordinates) { protected int[] getSliceIndexes(int[] coordinates) { int[] dimensions = getDimensions(); // check for valid coordinates - if (coordinates.length >= dimensions.length) + if (coordinates.length >= dimensions.length) { sliceError(coordinates); + } int sliceDimensionsLength = dimensions.length - coordinates.length; int[] sliceDimensions = (int[]) Array.newInstance(int.class, sliceDimensionsLength); - for (int i = coordinates.length ; i < dimensions.length; i++) + for (int i = coordinates.length ; i < dimensions.length; i++) { sliceDimensions[i - coordinates.length] = dimensions[i]; + } int[] elementCoordinates = Arrays.copyOf(coordinates, coordinates.length + 1); int sliceSize = Arrays.stream(sliceDimensions).reduce((n,i) -> n*i).getAsInt(); @@ -252,8 +254,9 @@ public int[] getTrueCounts() { public void clearStatistics(int row) { trueCounts[row] = 0; - for (int index : getSliceIndexes(new int[] { row })) + for (int index : getSliceIndexes(new int[] { row })) { set(index, 0); + } } /** @@ -284,8 +287,9 @@ public int getIntValue(int index) { public int[] getSparseIndices() { TIntList indexes = new TIntArrayList(); for (int i = 0; i <= getMaxIndex(); i ++) { - if (get(i) > 0) + if (get(i) > 0) { indexes.add(i); + } } return indexes.toArray(); diff --git a/src/main/java/org/numenta/nupic/util/Generator.java b/src/main/java/org/numenta/nupic/util/Generator.java index 02f3a1f5..d554b63a 100644 --- a/src/main/java/org/numenta/nupic/util/Generator.java +++ b/src/main/java/org/numenta/nupic/util/Generator.java @@ -56,7 +56,7 @@ default void reset() {} */ static Generator of(List l, Generator i) { /** - * Inner implementation of an {@code AbstractGenerator} for {@code DistalDendrite}s + * Inner implementation of an {@code Generator} */ return new Generator() { private static final long serialVersionUID = 1L; diff --git a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java index 30e1c850..1bb9291f 100644 --- a/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java +++ b/src/test/java/org/numenta/nupic/algorithms/SpatialPoolerCompatibilityTest.java @@ -71,7 +71,11 @@ public void testCompatability1() { int[][] potentials = c.getPotentials(); int[][] connecteds = c. getConnecteds(); double[][] perms = c.getPermanences(); - + + ///////////////////////////////////////////////////////////////////////////// + // Used to write the 3 needed outputs to be inserted in the initialization // + // part of the SP compatibility test // + ///////////////////////////////////////////////////////////////////////////// // for(int[] pots : potentials) { // System.out.println(Arrays.toString(pots)); // } @@ -100,12 +104,8 @@ public void testCompatability1() { return IntStream.range(0, perms[d].length).allMatch(i -> { return areEqualDouble(perms[d][i], expectedInitialPerms[d][i], 4); }); - })); - - - // Set the percentage of 1's in the test inputs double sparsity = 0.4d; int[][] inputMatrix = new UniversalRandom(42).binDistrib(numRecords, c.getNumInputs(), sparsity); @@ -117,9 +117,19 @@ public void testCompatability1() { runSideBySide(sp, c, pythonInputMatrix, numRecords, new SpatialPoolerCompatibilityActives(), new SpatialPoolerCompatibilityPermanences()); } + /** + * Used to specify the number of places after the decimal for which + * the comparison should be made. + * + * @param a the first double to compare + * @param b the second double to compare + * @param precision the number of places after the decimal point + * @return a flag indicating whether the two specified doubles are equal + * at the specified precision. + */ public static boolean areEqualDouble(double a, double b, int precision) { return Math.abs(a - b) <= Math.pow(10, -precision); - } + } /** * Main loop of the test which calls compute and then compares the {@link SpatialPooler}'s @@ -200,9 +210,7 @@ private void printPermanences(Connections c) { private void comparePermanences(Connections c, SpatialPoolerCompatibilityPermanences compats, int iteration) { double[][] comp = getPermsForIteration(compats, iteration); double[][] actual = c.getPermanences(); - //System.out.println("\nComparing permanences for iteration: " + iteration); for(int i = 0;i < comp.length;i++) { - //System.out.println("tested for comp: " + Arrays.toString(comp[i]) + " actual: " + Arrays.toString(actual[i]) + " -- col = " + i); for(int j = 0;j < comp[i].length;j++) { try { assertEquals(comp[i][j], actual[i][j], 0.0001); diff --git a/src/test/java/org/numenta/nupic/util/AbstractSparseBinaryMatrixTest.java b/src/test/java/org/numenta/nupic/util/AbstractSparseBinaryMatrixTest.java new file mode 100644 index 00000000..69dba805 --- /dev/null +++ b/src/test/java/org/numenta/nupic/util/AbstractSparseBinaryMatrixTest.java @@ -0,0 +1,209 @@ +package org.numenta.nupic.util; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.util.Arrays; + +import org.junit.Test; + +import gnu.trove.list.array.TIntArrayList; + +public class AbstractSparseBinaryMatrixTest { + + public AbstractSparseBinaryMatrix getTestMatrix() { + AbstractSparseBinaryMatrix matrix = new AbstractSparseBinaryMatrix(new int[] { 2, 2, 2 }) { + private static final long serialVersionUID = 1L; + private int value1; + private int value2; + + @Override + public AbstractFlatMatrix set(int index, Object value) { + // TODO Auto-generated method stub + return null; + } + + @Override + public AbstractSparseBinaryMatrix setForTest(int index, int value) { + // TODO Auto-generated method stub + if(index == 0) value1 = value; + else value2 = value; + return this; + } + + @Override + public AbstractSparseBinaryMatrix set(int value, int... coordinates) { + // TODO Auto-generated method stub + if(Arrays.toString(coordinates).equals("[0, 0, 0]")) { + value1 = value; + if(value1 == 1) { + setTrueCount(0, 1); + } + }else{ + value2 = value; + if(value2 == 1) { + setTrueCount(1, 1); + } + } + return this; + } + + @Override + public void rightVecSumAtNZ(int[] inputVector, int[] results, double stimulusThreshold) { + // TODO Auto-generated method stub + + } + + @Override + public void rightVecSumAtNZ(int[] inputVector, int[] results) { + // TODO Auto-generated method stub + + } + + @Override + public Object getSlice(int... coordinates) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Integer get(int index) { + return index == 0 ? value1 : value2; + } + }; + + return matrix; + } + + @Test + public void testGetSliceIndexes() { + // Test handling of out of bounds coordinates + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + try { + matrix.getSliceIndexes(new int[] { 1, 1, 1 }); + fail(); + }catch(Exception e) { + assertEquals("This method only returns the array holding the specified maximum index: [2, 2, 2]", e.getMessage()); + } + + int[] sliceIndexes = matrix.getSliceIndexes(new int[] { 0 }); + assertArrayEquals(new int[] {0, 1, 2, 3}, sliceIndexes); + } + + @Test + public void setIndexes() { + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + boolean isTest = false; + matrix.set(new int[] { 0, 1 }, new int[] { 33, 44 }, isTest); + assertEquals(33, (int)matrix.get(0)); + assertEquals(44, (int)matrix.get(1)); + + matrix = getTestMatrix(); + isTest = true; + matrix.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + assertEquals(1, (int)matrix.get(0)); + assertEquals(1, (int)matrix.get(1)); + } + + @Test + public void clearIndexes() { + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + boolean isTest = false; + matrix.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + assertEquals(1, matrix.getTrueCount(0)); + matrix.clearStatistics(0); + assertEquals(0, matrix.getTrueCount(0)); + } + + @Test + public void testOr() { + AbstractSparseBinaryMatrix matrix2 = getTestMatrix(); + boolean isTest = true; + matrix2.set(new int[] { 1 }, new int[] { 1 }, isTest); + + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + assertEquals(0, matrix.getTrueCount(1)); + assertEquals(0, matrix.getSparseIndices().length); + + matrix.or(matrix2); + assertEquals(1, matrix.getTrueCount(1)); + assertEquals(7, matrix.getSparseIndices().length); + + // Now for trove collection + matrix = getTestMatrix(); + assertEquals(0, matrix.getTrueCount(1)); + assertEquals(0, matrix.getSparseIndices().length); + + TIntArrayList tl = new TIntArrayList(); + tl.add(1); + matrix.or(tl); + assertEquals(1, matrix.getTrueCount(1)); + assertEquals(7, matrix.getSparseIndices().length); + + } + + @Test + public void testAll() { + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + AbstractSparseBinaryMatrix matrix2 = getTestMatrix(); + assertTrue(matrix.all(matrix2)); + + boolean isTest = true; + matrix2.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + assertFalse(matrix.all(matrix2)); + + // Now with trove + matrix = getTestMatrix(); + matrix2 = getTestMatrix(); + assertTrue(matrix.all(matrix2)); + + matrix2.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + TIntArrayList tl = new TIntArrayList(); + tl.add(1); + assertFalse(matrix.all(tl)); + } + + @Test + public void testAny() { + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + AbstractSparseBinaryMatrix matrix2 = getTestMatrix(); + assertFalse(matrix.any(matrix2)); + + boolean isTest = true; + matrix2.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + assertFalse(matrix.any(matrix2)); + + // Now with trove + matrix = getTestMatrix(); + matrix2 = getTestMatrix(); + assertFalse(matrix.any(matrix2)); + + matrix2.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + TIntArrayList tl = new TIntArrayList(); + tl.add(1); + assertFalse(matrix.any(tl)); + assertTrue(matrix2.any(tl)); + + int[] onBits = { 0 }; + assertFalse(matrix.any(onBits)); + assertTrue(matrix2.any(onBits)); + } + + @Test + public void testEquals() { + AbstractSparseBinaryMatrix matrix = getTestMatrix(); + AbstractSparseBinaryMatrix matrix2 = getTestMatrix(); + + assertTrue(matrix.equals(matrix)); + + assertFalse(matrix.equals(new Object())); + + boolean isTest = false; + matrix2.set(new int[] { 0, 1 }, new int[] { 1, 1 }, isTest); + assertFalse(matrix.equals(matrix2)); + } + +} diff --git a/src/test/java/org/numenta/nupic/util/GeneratorTest.java b/src/test/java/org/numenta/nupic/util/GeneratorTest.java index 3649a58d..272fbf25 100644 --- a/src/test/java/org/numenta/nupic/util/GeneratorTest.java +++ b/src/test/java/org/numenta/nupic/util/GeneratorTest.java @@ -1,7 +1,12 @@ package org.numenta.nupic.util; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.util.ArrayList; +import java.util.List; import org.junit.Test; @@ -38,5 +43,21 @@ public void testInterface() { assertEquals(bg, bg.iterator()); assertTrue(bg.hasNext()); assertEquals((Integer)42, (Integer)bg.next()); + + // Test other interface methods + assertEquals(-1, bg.get()); + assertEquals(-1, bg.size()); + try { + bg.reset(); + }catch(Exception e) { fail(); } + } + + @Test + public void testOf() { + List l = new ArrayList<>(); + l.add(42); + Generator g = Generator.of(l, IntGenerator.of(0, 1)); + assertEquals(42, (int)g.next()); + assertFalse(g.hasNext()); } } diff --git a/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java b/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java index 74e465ff..d1e8b3bd 100644 --- a/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java +++ b/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java @@ -218,12 +218,14 @@ private void doTestBackingStoreAndSliceAccessManyDimensions(AbstractSparseBinary } } } - int[] slice = (int[])sm.getSlice(4, 4); + for (int i = 0; i < 5; i++) { assertEquals(1, sm.getTrueCount(i)); } - System.out.println("slice:" + ArrayUtils.intArrayToString(slice)); + + int[] slice = (int[])sm.getSlice(4, 4); assertEquals(1, slice[4]); + /*update first row to true, other to false*/ for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { From debcefb73903faab28bfd7650b209018905f8d44 Mon Sep 17 00:00:00 2001 From: cogmission Date: Fri, 7 Oct 2016 09:14:55 -0500 Subject: [PATCH 7/7] Changed error message comparison --- .../org/numenta/nupic/util/SparseBinaryMatrixTest.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java b/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java index d1e8b3bd..46568935 100644 --- a/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java +++ b/src/test/java/org/numenta/nupic/util/SparseBinaryMatrixTest.java @@ -79,8 +79,8 @@ private void doTestBackingStoreAndSliceAccess(AbstractSparseBinaryMatrix sm) { sm.getSlice(0, 4); fail(); } catch (Exception e) { - assertEquals("This method only returns the array holding the specified index: " + - Arrays.toString(new int[]{0, 4}), e.getMessage()); + assertEquals("This method only returns the array holding the specified maximum index: " + + Arrays.toString(sm.getDimensions()), e.getMessage()); } } @@ -218,12 +218,11 @@ private void doTestBackingStoreAndSliceAccessManyDimensions(AbstractSparseBinary } } } - + int[] slice = (int[])sm.getSlice(4, 4); for (int i = 0; i < 5; i++) { assertEquals(1, sm.getTrueCount(i)); } - - int[] slice = (int[])sm.getSlice(4, 4); + System.out.println("slice:" + ArrayUtils.intArrayToString(slice)); assertEquals(1, slice[4]); /*update first row to true, other to false*/