http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/main/scala/org/apache/flink/test/util/ForkableFlinkMiniCluster.scala
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/main/scala/org/apache/flink/test/util/ForkableFlinkMiniCluster.scala
 
b/flink-test-utils/src/main/scala/org/apache/flink/test/util/ForkableFlinkMiniCluster.scala
deleted file mode 100644
index 8a348a1..0000000
--- 
a/flink-test-utils/src/main/scala/org/apache/flink/test/util/ForkableFlinkMiniCluster.scala
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.flink.test.util
-
-import java.util.concurrent.TimeoutException
-
-import akka.actor.{ActorRef, ActorSystem}
-import akka.pattern.Patterns._
-import akka.pattern.ask
-import org.apache.curator.test.TestingCluster
-import org.apache.flink.configuration.{ConfigConstants, Configuration}
-import org.apache.flink.runtime.akka.AkkaUtils
-import org.apache.flink.runtime.clusterframework.FlinkResourceManager
-import org.apache.flink.runtime.clusterframework.types.ResourceID
-import org.apache.flink.runtime.jobmanager.{JobManager, RecoveryMode}
-import org.apache.flink.runtime.minicluster.LocalFlinkMiniCluster
-import org.apache.flink.runtime.taskmanager.TaskManager
-import 
org.apache.flink.runtime.testingUtils.TestingTaskManagerMessages.NotifyWhenRegisteredAtJobManager
-import org.apache.flink.runtime.testingUtils.{TestingJobManager, 
TestingMemoryArchivist, TestingTaskManager, TestingUtils}
-
-import org.apache.flink.runtime.testutils.TestingResourceManager
-
-import scala.concurrent.{Await, Future}
-
-/**
- * A forkable mini cluster is a special case of the mini cluster, used for 
parallel test execution
- * on build servers. If multiple tests run in parallel, the cluster picks up 
the fork number and
- * uses it to avoid port conflicts.
- *
- * @param userConfiguration Configuration object with the user provided 
configuration values
- * @param singleActorSystem true, if all actors (JobManager and TaskManager) 
shall be run in the
- *                          same [[ActorSystem]], otherwise false.
- */
-class ForkableFlinkMiniCluster(
-    userConfiguration: Configuration,
-    singleActorSystem: Boolean)
-  extends LocalFlinkMiniCluster(userConfiguration, singleActorSystem) {
-
-  def this(userConfiguration: Configuration) = this(userConfiguration, true)
-
-  // --------------------------------------------------------------------------
-
-  var zookeeperCluster: Option[TestingCluster] = None
-
-  override def generateConfiguration(userConfiguration: Configuration): 
Configuration = {
-    val forkNumberString = System.getProperty("forkNumber")
-
-    val forkNumber = try {
-      Integer.parseInt(forkNumberString)
-    }
-    catch {
-      case e: NumberFormatException => -1
-    }
-
-    val config = userConfiguration.clone()
-
-    if (forkNumber != -1) {
-      val jobManagerRPC = 1024 + forkNumber*400
-      val taskManagerRPC = 1024 + forkNumber*400 + 100
-      val taskManagerData = 1024 + forkNumber*400 + 200
-      val resourceManagerRPC = 1024 + forkNumber*400 + 300
-
-      config.setInteger(ConfigConstants.JOB_MANAGER_IPC_PORT_KEY, 
jobManagerRPC)
-      config.setInteger(ConfigConstants.TASK_MANAGER_IPC_PORT_KEY, 
taskManagerRPC)
-      config.setInteger(ConfigConstants.TASK_MANAGER_DATA_PORT_KEY, 
taskManagerData)
-      config.setInteger(ConfigConstants.RESOURCE_MANAGER_IPC_PORT_KEY, 
resourceManagerRPC)
-    }
-
-    super.generateConfiguration(config)
-  }
-
-  override def startJobManager(index: Int, actorSystem: ActorSystem): ActorRef 
= {
-    val config = configuration.clone()
-
-    val jobManagerName = getJobManagerName(index)
-    val archiveName = getArchiveName(index)
-
-    val jobManagerPort = config.getInteger(
-      ConfigConstants.JOB_MANAGER_IPC_PORT_KEY,
-      ConfigConstants.DEFAULT_JOB_MANAGER_IPC_PORT)
-
-    if (jobManagerPort > 0) {
-      config.setInteger(ConfigConstants.JOB_MANAGER_IPC_PORT_KEY, 
jobManagerPort + index)
-    }
-
-    val (jobManager, _) = JobManager.startJobManagerActors(
-      config,
-      actorSystem,
-      Some(jobManagerName),
-      Some(archiveName),
-      classOf[TestingJobManager],
-      classOf[TestingMemoryArchivist])
-
-    jobManager
-  }
-
-  override def startResourceManager(index: Int, system: ActorSystem): ActorRef 
= {
-    val config = configuration.clone()
-
-    val resourceManagerName = getResourceManagerName(index)
-
-    val resourceManagerPort = config.getInteger(
-      ConfigConstants.RESOURCE_MANAGER_IPC_PORT_KEY,
-      ConfigConstants.DEFAULT_RESOURCE_MANAGER_IPC_PORT)
-
-    if (resourceManagerPort > 0) {
-      config.setInteger(ConfigConstants.RESOURCE_MANAGER_IPC_PORT_KEY, 
resourceManagerPort + index)
-    }
-
-    val resourceManager = FlinkResourceManager.startResourceManagerActors(
-      config,
-      system,
-      createLeaderRetrievalService(),
-      classOf[TestingResourceManager],
-      resourceManagerName)
-
-    resourceManager
-  }
-
-  override def startTaskManager(index: Int, system: ActorSystem): ActorRef = {
-    val config = configuration.clone()
-
-    val rpcPort = config.getInteger(
-      ConfigConstants.TASK_MANAGER_IPC_PORT_KEY,
-      ConfigConstants.DEFAULT_TASK_MANAGER_IPC_PORT)
-
-    val dataPort = config.getInteger(
-      ConfigConstants.TASK_MANAGER_DATA_PORT_KEY,
-      ConfigConstants.DEFAULT_TASK_MANAGER_DATA_PORT)
-
-    if (rpcPort > 0) {
-      config.setInteger(ConfigConstants.TASK_MANAGER_IPC_PORT_KEY, rpcPort + 
index)
-    }
-    if (dataPort > 0) {
-      config.setInteger(ConfigConstants.TASK_MANAGER_DATA_PORT_KEY, dataPort + 
index)
-    }
-
-    val localExecution = numTaskManagers == 1
-
-    TaskManager.startTaskManagerComponentsAndActor(
-      config,
-      ResourceID.generate(),
-      system,
-      hostname,
-      Some(TaskManager.TASK_MANAGER_NAME + index),
-      Some(createLeaderRetrievalService()),
-      localExecution,
-      classOf[TestingTaskManager])
-  }
-
-  def restartLeadingJobManager(): Unit = {
-    this.synchronized {
-      (jobManagerActorSystems, jobManagerActors) match {
-        case (Some(jmActorSystems), Some(jmActors)) =>
-          val leader = getLeaderGateway(AkkaUtils.getTimeout(configuration))
-          val index = getLeaderIndex(AkkaUtils.getTimeout(configuration))
-
-          clearLeader()
-
-          val stopped = gracefulStop(leader.actor(), 
TestingUtils.TESTING_DURATION)
-          Await.result(stopped, TestingUtils.TESTING_DURATION)
-
-          if(!singleActorSystem) {
-            jmActorSystems(index).shutdown()
-            jmActorSystems(index).awaitTermination()
-          }
-
-          val newJobManagerActorSystem = if(!singleActorSystem) {
-            startJobManagerActorSystem(index)
-          } else {
-            jmActorSystems.head
-          }
-
-          val newJobManagerActor = startJobManager(index, 
newJobManagerActorSystem)
-
-          jobManagerActors = Some(jmActors.patch(index, 
Seq(newJobManagerActor), 1))
-          jobManagerActorSystems = Some(jmActorSystems.patch(
-            index,
-            Seq(newJobManagerActorSystem),
-            1))
-
-          val lrs = createLeaderRetrievalService()
-
-          jobManagerLeaderRetrievalService = Some(lrs)
-          lrs.start(this)
-
-        case _ => throw new Exception("The JobManager of the 
ForkableFlinkMiniCluster have not " +
-          "been started properly.")
-      }
-    }
-  }
-
-
-  def restartTaskManager(index: Int): Unit = {
-    (taskManagerActorSystems, taskManagerActors) match {
-      case (Some(tmActorSystems), Some(tmActors)) =>
-        val stopped = gracefulStop(tmActors(index), 
TestingUtils.TESTING_DURATION)
-        Await.result(stopped, TestingUtils.TESTING_DURATION)
-
-        if(!singleActorSystem) {
-          tmActorSystems(index).shutdown()
-          tmActorSystems(index).awaitTermination()
-        }
-
-        val taskManagerActorSystem  = if(!singleActorSystem) {
-          startTaskManagerActorSystem(index)
-        } else {
-          tmActorSystems.head
-        }
-
-        val taskManagerActor = startTaskManager(index, taskManagerActorSystem)
-
-        taskManagerActors = Some(tmActors.patch(index, Seq(taskManagerActor), 
1))
-        taskManagerActorSystems = Some(tmActorSystems.patch(index, 
Seq(taskManagerActorSystem), 1))
-
-      case _ => throw new Exception("The TaskManager of the 
ForkableFlinkMiniCluster have not " +
-        "been started properly.")
-    }
-  }
-
-  override def start(): Unit = {
-    val zookeeperURL = 
configuration.getString(ConfigConstants.ZOOKEEPER_QUORUM_KEY, "")
-
-    zookeeperCluster = if(recoveryMode == RecoveryMode.ZOOKEEPER && 
zookeeperURL.equals("")) {
-      LOG.info("Starting ZooKeeper cluster.")
-
-      val testingCluster = new TestingCluster(1)
-
-      configuration.setString(ConfigConstants.ZOOKEEPER_QUORUM_KEY, 
testingCluster.getConnectString)
-
-      testingCluster.start()
-
-      Some(testingCluster)
-    } else {
-      None
-    }
-
-    super.start()
-  }
-
-  override def stop(): Unit = {
-    super.stop()
-
-    zookeeperCluster.foreach{
-      LOG.info("Stopping ZooKeeper cluster.")
-      _.close()
-    }
-  }
-
-  def waitForTaskManagersToBeRegisteredAtJobManager(jobManager: ActorRef): 
Unit = {
-    val futures = taskManagerActors.map {
-      _.map {
-        tm => (tm ? NotifyWhenRegisteredAtJobManager(jobManager))(timeout)
-      }
-    }.getOrElse(Seq())
-
-    try {
-      Await.ready(Future.sequence(futures), timeout)
-    } catch {
-      case t: TimeoutException =>
-        throw new Exception("Timeout while waiting for TaskManagers to 
register at " +
-          s"${jobManager.path}")
-    }
-
-  }
-}
-
-object ForkableFlinkMiniCluster {
-
-  import 
org.apache.flink.runtime.testingUtils.TestingUtils.DEFAULT_AKKA_ASK_TIMEOUT
-
-  def startCluster(
-                    numSlots: Int,
-                    numTaskManagers: Int,
-                    timeout: String = DEFAULT_AKKA_ASK_TIMEOUT)
-  : ForkableFlinkMiniCluster = {
-
-    val config = new Configuration()
-    config.setInteger(ConfigConstants.TASK_MANAGER_NUM_TASK_SLOTS, numSlots)
-    config.setInteger(ConfigConstants.LOCAL_NUMBER_TASK_MANAGER, 
numTaskManagers)
-    config.setString(ConfigConstants.AKKA_ASK_TIMEOUT, timeout)
-
-    val cluster = new ForkableFlinkMiniCluster(config)
-
-    cluster.start()
-
-    cluster
-  }
-}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/ConnectedComponentsData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/ConnectedComponentsData.java
 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/ConnectedComponentsData.java
new file mode 100644
index 0000000..60cd319
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/ConnectedComponentsData.java
@@ -0,0 +1,128 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.test.testdata;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.util.List;
+import java.util.Random;
+import java.util.regex.Pattern;
+
+import org.apache.flink.api.java.tuple.Tuple2;
+import org.junit.Assert;
+
+
+public class ConnectedComponentsData {
+
+       public static final String getEnumeratingVertices(int num) {
+               if (num < 1 || num > 1000000) {
+                       throw new IllegalArgumentException();
+               }
+
+               StringBuilder bld = new StringBuilder(3 * num);
+               for (int i = 1; i <= num; i++) {
+                       bld.append(i);
+                       bld.append('\n');
+               }
+               return bld.toString();
+       }
+
+       /**
+        * Creates random edges such that even numbered vertices are connected 
with even numbered vertices
+        * and odd numbered vertices only with other odd numbered ones.
+        */
+       public static final String getRandomOddEvenEdges(int numEdges, int 
numVertices, long seed) {
+               if (numVertices < 2 || numVertices > 1000000 || numEdges < 
numVertices || numEdges > 1000000) {
+                       throw new IllegalArgumentException();
+               }
+
+               StringBuilder bld = new StringBuilder(5 * numEdges);
+
+               // first create the linear edge sequence even -> even and odd 
-> odd to make sure they are
+               // all in the same component
+               for (int i = 3; i <= numVertices; i++) {
+                       bld.append(i - 2).append(' ').append(i).append('\n');
+               }
+
+               numEdges -= numVertices - 2;
+               Random r = new Random(seed);
+
+               for (int i = 1; i <= numEdges; i++) {
+                       int evenOdd = r.nextBoolean() ? 1 : 0;
+
+                       int source = r.nextInt(numVertices) + 1;
+                       if (source % 2 != evenOdd) {
+                               source--;
+                               if (source < 1) {
+                                       source = 2;
+                               }
+                       }
+
+                       int target = r.nextInt(numVertices) + 1;
+                       if (target % 2 != evenOdd) {
+                               target--;
+                               if (target < 1) {
+                                       target = 2;
+                               }
+                       }
+
+                       bld.append(source).append(' 
').append(target).append('\n');
+               }
+               return bld.toString();
+       }
+
+       public static void checkOddEvenResult(BufferedReader result) throws 
IOException {
+               Pattern split = Pattern.compile(" ");
+               String line;
+               while ((line = result.readLine()) != null) {
+                       String[] res = split.split(line);
+                       Assert.assertEquals("Malformed result: Wrong number of 
tokens in line.", 2, res.length);
+                       try {
+                               int vertex = Integer.parseInt(res[0]);
+                               int component = Integer.parseInt(res[1]);
+
+                               int should = vertex % 2;
+                               if (should == 0) {
+                                       should = 2;
+                               }
+                               Assert.assertEquals("Vertex is in wrong 
component.", should, component);
+                       } catch (NumberFormatException e) {
+                               Assert.fail("Malformed result.");
+                       }
+               }
+       }
+       
+       public static void checkOddEvenResult(List<Tuple2<Long, Long>> lines) 
throws IOException {
+               for (Tuple2<Long, Long> line : lines) {
+                       try {
+                               long vertex = line.f0;
+                               long component = line.f1;
+                               long should = vertex % 2;
+                               if (should == 0) {
+                                       should = 2;
+                               }
+                               Assert.assertEquals("Vertex is in wrong 
component.", should, component);
+                       } catch (NumberFormatException e) {
+                               Assert.fail("Malformed result.");
+                       }
+               }
+       }
+
+       private ConnectedComponentsData() {}
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/EnumTriangleData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/EnumTriangleData.java
 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/EnumTriangleData.java
new file mode 100644
index 0000000..b170404
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/EnumTriangleData.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.test.testdata;
+
+public class EnumTriangleData {
+
+       public static final String EDGES = 
+                       "1 2\n" +
+                       "1 3\n" +
+                       "1 4\n" +
+                       "1 5\n" +
+                       "2 3\n" +
+                       "2 5\n" +
+                       "3 4\n" +
+                       "3 7\n" +
+                       "5 6\n" +
+                       "3 8\n" +
+                       "7 8\n";
+
+       public static final String TRIANGLES_BY_ID = 
+                       "1,2,3\n" +
+                       "1,3,4\n" +
+                       "1,2,5\n" +
+                       "3,7,8\n"; 
+       
+       public static final String TRIANGLES_BY_DEGREE = 
+                       "2,1,3\n" +
+                       "4,1,3\n" +
+                       "2,1,5\n" +
+                       "7,3,8\n";
+
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/KMeansData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/KMeansData.java 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/KMeansData.java
new file mode 100644
index 0000000..1319e84
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/KMeansData.java
@@ -0,0 +1,257 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.test.testdata;
+
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+import java.util.StringTokenizer;
+
+import org.junit.Assert;
+
+
+public class KMeansData {
+
+       // 
--------------------------------------------------------------------------------------------
+       //  3-dimensional data
+       // 
--------------------------------------------------------------------------------------------
+       
+       public final static String DATAPOINTS = "0|50.90|16.20|72.08|\n" + 
"1|73.65|61.76|62.89|\n" + "2|61.73|49.95|92.74|\n"
+                       + "3|1.60|70.11|16.32|\n" + "4|2.43|19.81|89.56|\n" + 
"5|67.99|9.00|14.48|\n" + "6|87.80|84.49|55.83|\n"
+                       + "7|90.26|42.99|53.29|\n" + "8|51.36|6.16|9.35|\n" + 
"9|12.43|9.52|12.54|\n" + "10|80.01|8.78|29.74|\n"
+                       + "11|92.76|2.93|80.07|\n" + "12|46.32|100.00|22.98|\n" 
+ "13|34.11|45.61|58.60|\n"
+                       + "14|68.82|16.36|96.60|\n" + "15|81.47|76.45|28.40|\n" 
+ "16|65.55|40.21|43.43|\n"
+                       + "17|84.22|88.56|13.31|\n" + "18|36.99|68.36|57.12|\n" 
+ "19|28.87|37.69|91.04|\n"
+                       + "20|31.56|13.22|86.00|\n" + "21|18.49|34.45|54.52|\n" 
+ "22|13.33|94.02|92.07|\n"
+                       + "23|91.19|81.62|55.06|\n" + "24|85.78|39.02|25.58|\n" 
+ "25|94.41|47.07|78.23|\n"
+                       + "26|90.62|10.43|80.20|\n" + "27|31.52|85.81|39.79|\n" 
+ "28|24.65|77.98|26.35|\n"
+                       + "29|69.34|75.79|63.96|\n" + "30|22.56|78.61|66.66|\n" 
+ "31|91.74|83.82|73.92|\n"
+                       + "32|76.64|89.53|44.66|\n" + "33|36.02|73.01|92.32|\n" 
+ "34|87.86|18.94|10.74|\n"
+                       + "35|91.94|34.61|5.20|\n" + "36|12.52|47.01|95.29|\n" 
+ "37|44.01|26.19|78.50|\n"
+                       + "38|26.20|73.36|10.08|\n" + "39|15.21|17.37|54.33|\n" 
+ "40|27.96|94.81|44.41|\n"
+                       + "41|26.44|44.81|70.88|\n" + "42|53.29|26.69|2.40|\n" 
+ "43|23.94|11.50|1.71|\n"
+                       + "44|19.00|25.48|50.80|\n" + "45|82.26|1.88|58.08|\n" 
+ "46|47.56|82.54|82.73|\n"
+                       + "47|51.54|35.10|32.95|\n" + "48|86.71|55.51|19.08|\n" 
+ "49|54.16|23.68|32.41|\n"
+                       + "50|71.81|32.83|46.66|\n" + "51|20.70|14.19|64.96|\n" 
+ "52|57.17|88.56|55.23|\n"
+                       + "53|91.39|49.38|70.55|\n" + "54|47.90|62.07|76.03|\n" 
+ "55|55.70|37.77|30.15|\n"
+                       + "56|87.87|74.62|25.95|\n" + "57|95.70|45.04|15.27|\n" 
+ "58|41.61|89.37|24.45|\n"
+                       + "59|82.19|20.84|11.13|\n" + "60|49.88|2.62|18.62|\n" 
+ "61|16.42|53.30|74.13|\n"
+                       + "62|38.37|72.62|35.16|\n" + "63|43.26|49.59|92.56|\n" 
+ "64|28.96|2.36|78.49|\n"
+                       + "65|88.41|91.43|92.55|\n" + "66|98.61|79.58|33.03|\n" 
+ "67|4.94|18.65|30.78|\n"
+                       + "68|75.89|79.30|63.90|\n" + "69|93.18|76.26|9.50|\n" 
+ "70|73.43|70.50|76.49|\n"
+                       + "71|78.64|90.87|34.49|\n" + "72|58.47|63.07|8.82|\n" 
+ "73|69.74|54.36|64.43|\n"
+                       + "74|38.47|36.60|33.39|\n" + "75|51.07|14.75|2.54|\n" 
+ "76|24.18|16.85|15.00|\n"
+                       + "77|7.56|50.72|93.45|\n" + "78|64.28|97.01|57.31|\n" 
+ "79|85.30|24.13|76.57|\n"
+                       + "80|72.78|30.78|13.11|\n" + "81|18.42|17.45|32.20|\n" 
+ "82|87.44|74.98|87.90|\n"
+                       + "83|38.30|17.77|37.33|\n" + "84|63.62|7.90|34.23|\n" 
+ "85|8.84|67.87|30.65|\n"
+                       + "86|76.12|51.83|80.12|\n" + "87|32.30|74.79|4.39|\n" 
+ "88|41.73|45.34|18.66|\n"
+                       + "89|58.13|18.43|83.38|\n" + "90|98.10|33.46|83.07|\n" 
+ "91|17.76|4.10|88.51|\n"
+                       + "92|60.58|18.15|59.96|\n" + "93|50.11|33.25|85.64|\n" 
+ "94|97.74|60.93|38.97|\n"
+                       + "95|76.31|52.50|95.43|\n" + "96|7.71|85.85|36.26|\n" 
+ "97|9.32|72.21|42.17|\n"
+                       + "98|71.29|51.88|57.62|\n" + "99|31.39|7.27|88.74|";
+
+       public static final String INITIAL_CENTERS =
+                       "0|1.96|65.04|20.82|\n" +
+                       "1|53.99|84.23|81.59|\n" +
+                       "2|97.28|74.50|40.32|\n" +
+                       "3|63.57|24.53|87.07|\n" +
+                       "4|28.10|43.27|86.53|\n" +
+                       "5|99.51|62.70|64.48|\n" +
+                       "6|30.31|30.36|80.46|";
+
+       public static final String CENTERS_AFTER_ONE_STEP =
+                       "0|28.47|54.80|21.88|\n" +
+                       "1|52.74|80.10|73.03|\n" +
+                       "2|83.92|60.45|25.17|\n" +
+                       "3|70.73|20.18|67.06|\n" +
+                       "4|22.51|47.19|86.23|\n" +
+                       "5|82.70|53.79|68.68|\n" +
+                       "6|29.74|19.17|59.16|";
+       
+
+       public static final String CENTERS_AFTER_ONE_STEP_SINGLE_DIGIT =
+                       "0|28.5|54.8|21.9|\n" +
+                       "1|52.7|80.1|73.0|\n" +
+                       "2|83.9|60.5|25.2|\n" +
+                       "3|70.7|20.2|67.0|\n" +
+                       "4|22.5|47.2|86.2|\n" +
+                       "5|82.7|53.8|68.7|\n" +
+                       "6|29.7|19.2|59.2|";
+       
+       
+       public static final String CENTERS_AFTER_20_ITERATIONS_SINGLE_DIGIT =
+                       "0|38.3|54.5|19.3|\n" +
+                       "1|32.1|83.0|50.4|\n" +
+                       "2|87.5|56.6|20.3|\n" +
+                       "3|75.4|18.6|67.5|\n" +
+                       "4|24.9|29.2|77.6|\n" +
+                       "5|78.7|66.1|70.8|\n" +
+                       "6|39.5|14.0|18.7|\n";
+       
+       public static final String CENTERS_AFTER_20_ITERATIONS_DOUBLE_DIGIT =
+                       "0|38.25|54.52|19.34|\n" +
+                       "1|32.14|83.04|50.35|\n" +
+                       "2|87.48|56.57|20.27|\n" +
+                       "3|75.40|18.65|67.49|\n" +
+                       "4|24.93|29.25|77.56|\n" +
+                       "5|78.67|66.07|70.82|\n" +
+                       "6|39.51|14.04|18.74|\n";
+       
+       // 
--------------------------------------------------------------------------------------------
+       //  2-dimensional data
+       // 
--------------------------------------------------------------------------------------------
+       
+       public final static String DATAPOINTS_2D = "0|50.90|16.20|\n" + 
"1|73.65|61.76|\n" + "2|61.73|49.95|\n"
+                       + "3|1.60|70.11|\n"   + "4|2.43|19.81|\n"   + 
"5|67.99|9.00|\n" + "6|87.80|84.49|\n"
+                       + "7|90.26|42.99|\n"  + "8|51.36|6.16|\n"   + 
"9|12.43|9.52|\n" + "10|80.01|8.78|\n"
+                       + "11|92.76|2.93|\n"  + "12|46.32|100.00|\n"+ 
"13|34.11|45.61|\n"
+                       + "14|68.82|16.36|\n" + "15|81.47|76.45|\n" + 
"16|65.55|40.21|\n"
+                       + "17|84.22|88.56|\n" + "18|36.99|68.36|\n" + 
"19|28.87|37.69|\n"
+                       + "20|31.56|13.22|\n" + "21|18.49|34.45|\n" + 
"22|13.33|94.02|\n"
+                       + "23|91.19|81.62|\n" + "24|85.78|39.02|\n" + 
"25|94.41|47.07|\n"
+                       + "26|90.62|10.43|\n" + "27|31.52|85.81|\n" + 
"28|24.65|77.98|\n"
+                       + "29|69.34|75.79|\n" + "30|22.56|78.61|\n" + 
"31|91.74|83.82|\n"
+                       + "32|76.64|89.53|\n" + "33|36.02|73.01|\n" + 
"34|87.86|18.94|\n"
+                       + "35|91.94|34.61|\n" + "36|12.52|47.01|\n" + 
"37|44.01|26.19|\n"
+                       + "38|26.20|73.36|\n" + "39|15.21|17.37|\n" + 
"40|27.96|94.81|\n"
+                       + "41|26.44|44.81|\n" + "42|53.29|26.69|\n" + 
"43|23.94|11.50|n"
+                       + "44|19.00|25.48|\n" + "45|82.26|1.88|\n"  + 
"46|47.56|82.54|\n"
+                       + "47|51.54|35.10|\n" + "48|86.71|55.51|\n" + 
"49|54.16|23.68|\n"
+                       + "50|71.81|32.83|\n" + "51|20.70|14.19|\n" + 
"52|57.17|88.56|\n"
+                       + "53|91.39|49.38|\n" + "54|47.90|62.07|\n" + 
"55|55.70|37.77|\n"
+                       + "56|87.87|74.62|\n" + "57|95.70|45.04|\n" + 
"58|41.61|89.37|\n"
+                       + "59|82.19|20.84|\n" + "60|49.88|2.62|\n"  + 
"61|16.42|53.30|\n"
+                       + "62|38.37|72.62|\n" + "63|43.26|49.59|\n" + 
"64|28.96|2.36|\n"
+                       + "65|88.41|91.43|\n" + "66|98.61|79.58|\n" + 
"67|4.94|18.65|\n"
+                       + "68|75.89|79.30|\n" + "69|93.18|76.26|\n" + 
"70|73.43|70.50|\n"
+                       + "71|78.64|90.87|\n" + "72|58.47|63.07|\n" + 
"73|69.74|54.36|\n"
+                       + "74|38.47|36.60|\n" + "75|51.07|14.75|\n" + 
"76|24.18|16.85|\n"
+                       + "77|7.56|50.72|\n"  + "78|64.28|97.01|\n" + 
"79|85.30|24.13|\n"
+                       + "80|72.78|30.78|\n" + "81|18.42|17.45|\n" + 
"82|87.44|74.98|\n"
+                       + "83|38.30|17.77|\n" + "84|63.62|7.90|\n"  + 
"85|8.84|67.87|\n"
+                       + "86|76.12|51.83|\n" + "87|32.30|74.79|n"  + 
"88|41.73|45.34|\n"
+                       + "89|58.13|18.43|\n" + "90|98.10|33.46|\n" + 
"91|17.76|4.10|\n"
+                       + "92|60.58|18.15|\n" + "93|50.11|33.25|\n" + 
"94|97.74|60.93|\n"
+                       + "95|76.31|52.50|\n" + "96|7.71|85.85|\n"  + 
"97|9.32|72.21|\n"
+                       + "98|71.29|51.88|\n" + "99|31.39|7.27|";
+       
+       public static final String INITIAL_CENTERS_2D =
+                       "0|1.96|65.04|\n" +
+                       "1|53.99|84.23|\n" +
+                       "2|97.28|74.50|\n" +
+                       "3|63.57|24.53|\n" +
+                       "4|28.10|43.27|\n" +
+                       "5|99.51|62.70|\n" +
+                       "6|30.31|30.36|";
+
+       public static final String 
CENTERS_2D_AFTER_SINGLE_ITERATION_DOUBLE_DIGIT =
+                       "0|13.53|74.53|\n" +
+                       "1|49.12|80.49|\n" +
+                       "2|87.20|81.83|\n" +
+                       "3|67.39|23.32|\n" +
+                       "4|26.94|46.34|\n" +
+                       "5|88.39|48.64|\n" +
+                       "6|23.20|16.71|";
+       
+       public static final String CENTERS_2D_AFTER_20_ITERATIONS_DOUBLE_DIGIT =
+                       "0|15.80|79.42|\n" +
+                       "1|43.11|78.20|\n" +
+                       "2|83.13|82.18|\n" +
+                       "3|65.70|18.49|\n" +
+                       "4|25.13|44.42|\n" +
+                       "5|82.90|48.16|\n" +
+                       "6|20.79|13.08|";
+       
+       // 
--------------------------------------------------------------------------------------------
+       //  testing / verification
+       // 
--------------------------------------------------------------------------------------------
+       
+       public static void checkResultsWithDelta(String expectedResults, 
List<String> resultLines, final double maxDelta) {
+               
+               Comparator<String> deltaComp = new Comparator<String>() {
+
+                       @Override
+                       public int compare(String o1, String o2) {
+                               
+                               StringTokenizer st1 = new StringTokenizer(o1, 
"|");
+                               StringTokenizer st2 = new StringTokenizer(o2, 
"|");
+                               
+                               if(st1.countTokens() != st2.countTokens()) {
+                                       return st1.countTokens() - 
st2.countTokens();
+                               }
+                               
+                               // first token is ID
+                               String t1 = st1.nextToken();
+                               String t2 = st2.nextToken();
+                               if(!t1.equals(t2)) {
+                                       return t1.compareTo(t2);
+                               }
+                               
+                               while(st1.hasMoreTokens()) {
+                                       t1 = st1.nextToken();
+                                       t2 = st2.nextToken();
+                                       
+                                       double d1 = Double.parseDouble(t1);
+                                       double d2 = Double.parseDouble(t2);
+                                       
+                                       if (Math.abs(d1-d2) > maxDelta) {
+                                               return d1 < d2 ? -1 : 1;
+                                       }
+                               }
+                               
+                               return 0;
+                       }
+               };
+               
+               // ------- Test results -----------
+               
+               Collections.sort(resultLines, deltaComp);
+               
+               final String[] should = expectedResults.split("\n");
+               final String[] is = (String[]) resultLines.toArray(new 
String[resultLines.size()]);
+               
+               Assert.assertEquals("Wrong number of result lines.", 
should.length, is.length);
+               
+               for (int i = 0; i < should.length; i++) {
+                       StringTokenizer shouldRecord = new 
StringTokenizer(should[i], "|");
+                       StringTokenizer isRecord = new StringTokenizer(is[i], 
"|");
+                       
+                       Assert.assertEquals("Records don't match.", 
shouldRecord.countTokens(), isRecord.countTokens());
+                       
+                       // first token is ID
+                       String shouldToken = shouldRecord.nextToken();
+                       String isToken = isRecord.nextToken();
+                       
+                       Assert.assertEquals("Records don't match.", 
shouldToken, isToken);
+
+                       while (shouldRecord.hasMoreTokens()) {
+                               shouldToken = shouldRecord.nextToken();
+                               isToken = isRecord.nextToken();
+                               
+                               double shouldDouble = 
Double.parseDouble(shouldToken);
+                               double isDouble = Double.parseDouble(isToken);
+                               
+                               Assert.assertTrue("Value " + isDouble + " is 
out of range of " + shouldDouble + " +/- " + maxDelta, shouldDouble - maxDelta 
<= isDouble && shouldDouble + maxDelta >= isDouble);
+                       }
+               }
+       }
+       
+       
+       private KMeansData() {}
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/PageRankData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/PageRankData.java
 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/PageRankData.java
new file mode 100644
index 0000000..f91e611
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/PageRankData.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+package org.apache.flink.test.testdata;
+
+public class PageRankData {
+
+       public static final int NUM_VERTICES = 5;
+       
+       public static final String VERTICES =   "1\n" +
+                                                                               
        "2\n" +
+                                                                               
        "5\n" +
+                                                                               
        "3\n" +
+                                                                               
        "4";
+       
+       public static final String EDGES = "2 1\n" +
+                                                                               
"5 2\n" + 
+                                                                               
"5 4\n" +
+                                                                               
"4 3\n" +
+                                                                               
"4 2\n" +
+                                                                               
"1 4\n" +
+                                                                               
"1 2\n" +
+                                                                               
"1 3\n" +
+                                                                               
"3 5\n";
+
+       
+       public static final String RANKS_AFTER_3_ITERATIONS = "1 0.237\n" +
+                                                                               
                                "2 0.248\n" + 
+                                                                               
                                "3 0.173\n" +
+                                                                               
                                "4 0.175\n" +
+                                                                               
                                "5 0.165";
+
+       
+       public static final String RANKS_AFTER_EPSILON_0_0001_CONVERGENCE = "1 
0.238\n" +
+                                                                               
                                                                "2 0.244\n" +
+                                                                               
                                                                "3 0.170\n" +
+                                                                               
                                                                "4 0.171\n" +
+                                                                               
                                                                "5 0.174";
+       
+       private PageRankData() {}
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/TransitiveClosureData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/TransitiveClosureData.java
 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/TransitiveClosureData.java
new file mode 100644
index 0000000..652b195
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/TransitiveClosureData.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+package org.apache.flink.test.testdata;
+
+import org.junit.Assert;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.util.regex.Pattern;
+
+public class TransitiveClosureData {
+
+       public static void checkOddEvenResult(BufferedReader result) throws 
IOException {
+               Pattern split = Pattern.compile(" ");
+               String line;
+               while ((line = result.readLine()) != null) {
+                       String[] res = split.split(line);
+                       Assert.assertEquals("Malformed result: Wrong number of 
tokens in line.", 2, res.length);
+                       try {
+                               int from = Integer.parseInt(res[0]);
+                               int to = Integer.parseInt(res[1]);
+
+                               Assert.assertEquals("Vertex should not be 
reachable.", from % 2, to % 2);
+                       } catch (NumberFormatException e) {
+                               Assert.fail("Malformed result.");
+                       }
+               }
+       }
+
+       private TransitiveClosureData() {}
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/70978f56/flink-test-utils/src/test/java/org/apache/flink/test/testdata/WebLogAnalysisData.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils/src/test/java/org/apache/flink/test/testdata/WebLogAnalysisData.java
 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/WebLogAnalysisData.java
new file mode 100644
index 0000000..ffbf7d1
--- /dev/null
+++ 
b/flink-test-utils/src/test/java/org/apache/flink/test/testdata/WebLogAnalysisData.java
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.test.testdata;
+
+
+public class WebLogAnalysisData {
+       public static final String DOCS =
+               "url_10|volutpat magna quis consectetuer volutpat ad erat 
editors exerci oscillations euismod volutpat Lorem convectionullamcorper Lorem 
volutpat enim tation elit |\n" +
+                       "url_11|adipiscing enim diam ex tincidunt tincidunt 
nonummy volutpat minim euismod volutpat suscipit ex sed laoreet aliquip quis 
diam tincidunt wisi diam elit sed ut minim ad nonummy amet volutpat nostrud 
erat |\n" +
+                       "url_12|ut nostrud adipiscing adipiscing ipsum nonummy 
amet volutpat volutpat sit enim Ut amet |\n" +
+                       "url_13|euismod sit adipiscing ex suscipit ea veniam 
tincidunt laoreet nibh editors ullamcorper consectetuer convection commodo sed 
nostrud ea ex ullamcorper dolor dolore ad diam dolore amet ut tincidunt nonummy 
euismod enim ullamcorper tincidunt dolor sit volutpat dolor tincidunt aliquam 
nisl tation ullamcorper sed consectetuer sit sit laoreet ex |\n" +
+                       "url_14|ad magna ipsum nonummy aliquip dolore aliquam 
veniam lobortis nostrud aliquip nibh amet aliquam editors magna aliquam 
volutpat nonummy sed tation erat adipiscing nostrud magna ut sit dolore 
volutpat laoreet nisl wisi Ut veniam nibh laoreet ad nostrud ut aliquip |\n" +
+                       "url_15|enim ipsum veniam ex editor Lorem elit laoreet 
exerci ea wisi oscillations convection euismod euismod diam ut euismod ad Lorem 
ut Ut tation wisi diam suscipit nibh nostrud minim dolor |\n" +
+                       "url_16|tation ad sed veniam lobortis editor nonummy Ut 
ea ipsum aliquip dolore ut laoreet tation ad ut Lorem ipsum minim nostrud quis 
Lorem enim |\n" +
+                       "url_17|veniam editor veniam Lorem aliquam ipsum amet 
ut convection veniam enim commodo ad ex magna nibh Ut ex sed ut nostrud amet 
volutpat nibh Ut wisi ea laoreet Lorem amet minim ullamcorper tincidunt veniam 
laoreet laoreet |\n" +
+                       "url_18|veniam diam tincidunt ullamcorper adipiscing 
oscillations adipiscing aliquip quis nibh suscipit ex sit sit wisi diam aliquam 
aliquip ea diam euismod ad erat ut ipsum lobortis ea exerci |\n" +
+                       "url_19|adipiscing nisl oscillations ea editors 
tincidunt tation convection tincidunt tincidunt ut wisi tincidunt ut ut Ut nibh 
aliquam laoreet exerci enim ea nibh erat nonummy |\n" +
+                       "url_20|ut diam aliquip ipsum laoreet elit volutpat 
suscipit nostrud convection tation nisl suscipit nonummy tation tation ut enim 
dolor nisl magna aliquam enim consectetuer sed tincidunt quis amet elit |\n" +
+                       "url_21|tation ad exerci volutpat tincidunt sit 
ullamcorper oscillations ut minim sed diam Lorem adipiscing |\n" +
+                       "url_22|sit exerci ad ut minim convection ad ea dolore 
Lorem ipsum amet sit wisi sed ullamcorper ipsum enim aliquam tincidunt elit 
nonummy laoreet laoreet dolore tation ullamcorper commodo Ut elit sit minim 
suscipit nisl laoreet |\n" +
+                       "url_23|Lorem nibh ea ea ex ut tation euismod tincidunt 
lobortis enim ullamcorper euismod amet magna sit erat enim editor diam dolor 
volutpat diam nisl ut erat commodo amet veniam consectetuer ex commodo sed 
magna ea erat ullamcorper dolor sed diam enim euismod |\n" +
+                       "url_24|nisl dolor magna editors ad consectetuer veniam 
commodo Ut dolor wisi dolore amet dolore dolore volutpat convection Ut 
oscillations |\n" +
+                       "url_25|ut euismod quis ad nostrud volutpat dolor wisi 
oscillations nostrud sed nonummy wisi exerci convection sed erat nostrud quis 
editors Ut nostrud consectetuer aliquip exerci ut Ut tincidunt aliquam suscipit 
erat |\n" +
+                       "url_26|nisl elit ea minim aliquam dolor consectetuer 
consectetuer quis Ut convection laoreet sit enim nostrud sed dolor magna dolor 
elit adipiscing |\n" +
+                       "url_27|nisl euismod ipsum ex adipiscing erat euismod 
diam quis oscillations aliquip nisl ut sit dolor wisi enim tincidunt amet 
ullamcorper adipiscing nibh Ut volutpat sed nonummy ex ea wisi exerci aliquam 
elit Ut aliquip nostrud ad nibh ut sit suscipit ut commodo wisi Lorem nibh |\n" 
+
+                       "url_28|laoreet sed editor dolor diam convection sed 
diam exerci laoreet oscillations consectetuer ullamcorper suscipit ut editors 
quis commodo editor veniam nibh ea diam ex magna ea elit sit sed nibh lobortis 
consectetuer erat erat sit minim ea ad ea nisl magna volutpat ut |\n" +
+                       "url_29|consectetuer convection amet diam erat euismod 
erat editor oscillations ipsum tation tation editors minim wisi tation quis 
adipiscing euismod nonummy erat ut diam suscipit tincidunt ut consectetuer 
Lorem editor sit quis euismod veniam tincidunt aliquam ut veniam adipiscing 
magna Ut ut dolore euismod minim veniam |";
+
+       public static final String RANKS =
+               "77|url_10|51|\n" + "7|url_11|24|\n" + "19|url_12|28|\n" + 
"13|url_13|50|\n" +
+                       "81|url_14|41|\n" + "87|url_15|28|\n" + 
"78|url_16|29|\n" + "70|url_17|7|\n" +
+                       "91|url_18|38|\n" + "99|url_19|11|\n" + 
"37|url_20|46|\n" + "64|url_21|46|\n" +
+                       "25|url_22|14|\n" + "6|url_23|12|\n" + 
"87|url_24|39|\n" + "0|url_25|27|\n" +
+                       "97|url_26|27|\n" + "9|url_27|54|\n" + 
"59|url_28|41|\n" + "40|url_29|11|";
+
+       public static final String VISITS =
+               "112.99.215.248|url_20|2011-5-1|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"189.69.147.166|url_19|2009-8-2|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "83.7.97.153|url_21|2010-3-20|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"215.57.124.59|url_10|2008-1-26|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "174.176.121.10|url_25|2007-12-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"66.225.121.11|url_16|2007-10-8|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "57.11.211.126|url_14|2010-12-6|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"129.127.115.129|url_28|2009-2-5|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "137.249.175.115|url_27|2011-5-7|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "101.92.9.112|url_12|2012-1-10|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "113.108.207.12|url_24|2011-3-20|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"179.141.87.220|url_18|2007-10-3|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "46.10.118.101|url_20|2009-7-4|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "91.67.84.155|url_20|2012-7-7|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "102.142.34.164|url_22|2010-7-18|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "203.67.94.61|url_14|2007-7-27|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "229.121.13.143|url_19|2010-4-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"209.154.189.12|url_16|2011-4-24|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "57.113.29.197|url_13|2008-9-23|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"132.90.139.12|url_16|2007-10-17|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "101.21.109.146|url_29|2009-2-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "171.69.34.255|url_29|2009-2-1|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "11.114.192.13|url_25|2008-9-8|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"37.188.212.141|url_15|2011-1-21|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "102.40.251.47|url_26|2010-7-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"136.85.230.245|url_17|2010-8-12|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "68.96.194.82|url_29|2007-10-12|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"62.126.40.210|url_29|2011-2-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "12.81.184.191|url_11|2008-1-12|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"12.232.205.52|url_18|2008-1-26|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "227.83.79.30|url_25|2008-6-4|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"88.222.17.152|url_21|2007-10-1|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "55.87.23.63|url_22|2008-8-16|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "54.41.77.25|url_18|2012-12-18|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "203.83.250.233|url_10|2009-4-5|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"42.13.134.196|url_15|2012-9-23|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "224.51.182.133|url_27|2008-11-13|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"180.209.212.98|url_27|2008-6-27|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "29.173.47.29|url_24|2011-9-18|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"251.153.164.73|url_18|2008-3-6|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "195.164.244.58|url_23|2010-12-21|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"96.167.244.51|url_18|2007-2-10|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "131.169.48.126|url_19|2009-6-10|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"171.151.109.83|url_12|2011-6-24|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "150.87.176.48|url_22|2008-10-3|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"56.172.201.54|TPCHQuery3ITCaseurl_25|2012-11-3|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" +
+                       "175.241.83.44|url_13|2008-2-22|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "105.222.1.251|url_18|2012-7-6|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "195.117.130.95|url_10|2012-4-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"10.139.236.176|url_14|2011-4-9|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "207.100.168.191|url_22|2007-5-1|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"196.129.126.177|url_25|2008-4-2|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "170.239.116.200|url_27|2010-3-15|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "99.79.118.85|url_13|2008-3-12|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "112.65.132.135|url_15|2010-8-3|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"109.15.235.196|url_14|2012-8-25|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "240.201.229.137|url_21|2008-9-22|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"74.53.245.171|url_18|2007-6-19|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "158.230.101.250|url_17|2011-4-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"198.197.213.210|url_11|2012-5-1|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "1.54.145.90|url_11|2009-6-16|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "2.236.14.86|url_13|2007-9-7|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "203.180.186.150|url_16|2010-2-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"135.83.247.101|url_22|2007-12-7|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "54.214.72.16|url_12|2007-5-2|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"238.115.186.34|url_10|2007-5-24|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "6.251.55.92|url_26|2007-5-18|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"196.96.11.111|url_16|2007-11-7|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "209.40.86.220|url_24|2009-5-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"130.208.66.140|url_19|2011-9-22|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "176.157.170.178|url_27|2008-12-12|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"103.4.119.128|url_15|2010-6-19|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "31.181.160.159|url_12|2009-8-10|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "166.238.60.79|url_23|2009-2-1|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "64.165.114.139|url_19|2007-9-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "11.45.238.55|url_26|2011-8-17|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "189.121.92.228|url_18|2008-1-16|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"137.114.181.208|url_14|2007-6-15|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "165.194.234.136|url_18|2012-3-7|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"210.145.85.234|url_10|2007-9-3|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "227.37.135.138|url_21|2010-5-4|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "39.87.120.86|url_25|2007-2-6|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "107.144.159.246|url_11|2010-7-6|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"160.38.166.236|url_15|2009-6-18|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "79.44.39.160|url_10|2008-12-19|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"143.52.62.175|url_19|2011-12-8|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "68.54.137.193|url_19|2007-6-6|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"199.137.128.158|url_27|2008-4-26|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "10.0.80.61|url_10|2011-3-15|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "4.30.48.164|url_29|2007-2-26|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "136.29.50.223|url_12|2008-3-5|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"83.101.200.110|url_23|2009-1-26|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "11.149.83.246|url_29|2010-9-18|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"154.119.20.134|url_14|2011-1-4|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "191.124.167.123|url_15|2009-6-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"27.158.167.38|url_11|2011-5-16|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "16.197.156.206|url_16|2009-2-1|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"222.150.206.233|url_20|2012-2-11|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "198.59.29.225|url_21|2007-2-25|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "182.91.244.40|url_18|2010-5-7|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "23.110.45.72|url_28|2008-6-23|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "94.241.8.36|url_11|2007-7-4|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "226.223.202.210|url_17|2007-10-15|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "73.16.194.132|url_14|2012-7-2|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "195.45.98.110|url_13|2012-2-23|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"189.123.80.178|url_29|2011-1-1|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "190.134.174.18|url_23|2011-12-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"133.54.252.245|url_13|2011-3-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "244.29.167.182|url_18|2012-10-11|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"125.32.251.232|url_26|2010-4-22|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "74.139.30.20|url_16|2012-2-8|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"100.73.180.209|url_29|2010-4-4|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "133.155.158.147|url_16|2011-11-22|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"185.53.212.102|url_15|2010-12-19|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "154.189.125.92|url_27|2007-10-5|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"12.209.166.107|url_26|2007-5-1|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "106.99.152.22|url_25|2011-12-4|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "37.120.32.53|url_22|2008-12-8|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "29.17.125.185|url_12|2011-8-18|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "233.125.12.14|url_19|2011-2-7|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "241.78.212.114|url_25|2007-12-22|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"153.183.247.90|url_18|2011-9-23|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "245.43.17.177|url_15|2012-4-21|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"55.13.54.220|url_24|2008-11-17|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "104.149.82.217|url_10|2011-9-26|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "36.15.167.145|url_24|2008-1-9|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "145.149.81.203|url_20|2008-5-27|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "68.89.4.115|url_18|2007-7-17|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "236.88.134.53|url_15|2010-5-2|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"180.140.58.209|url_29|2012-8-5|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "138.46.241.237|url_17|2010-11-13|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"254.217.79.58|url_29|2007-1-11|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "142.184.197.136|url_10|2007-11-3|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"216.118.94.220|url_12|2007-2-18|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "53.99.54.0|url_14|2008-3-9|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "95.151.221.37|url_28|2009-5-2|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "46.110.43.78|url_27|2007-11-9|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"172.96.203.180|url_11|2012-1-17|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "22.188.231.143|url_21|2007-10-23|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"216.46.80.239|url_22|2009-9-18|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "103.213.7.86|url_26|2007-12-25|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"186.204.3.180|url_27|2012-1-22|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "129.197.116.192|url_10|2012-5-1|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"8.164.181.242|url_24|2008-11-17|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "145.52.12.132|url_28|2012-8-6|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "20.22.62.146|url_11|2007-4-27|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "233.255.32.151|url_19|2008-6-25|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"31.233.226.148|url_24|2011-8-4|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "57.130.120.117|url_25|2008-12-9|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "29.98.249.152|url_21|2011-8-7|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "25.187.66.122|url_20|2008-12-17|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"236.205.44.215|url_26|2008-9-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "18.40.99.157|url_23|2012-1-7|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"204.221.88.206|url_24|2012-11-8|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "199.5.94.240|url_24|2011-9-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"57.175.34.24|url_14|2009-12-10|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "130.25.116.220|url_10|2007-6-5|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"134.174.12.250|url_22|2011-6-22|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "162.185.114.212|url_13|2011-8-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "8.113.137.95|url_14|2011-6-22|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "176.253.5.99|url_12|2010-4-12|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "3.110.24.0|url_12|2009-6-18|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "159.128.152.207|url_17|2012-2-2|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"104.145.150.244|url_10|2012-2-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "203.19.224.207|url_12|2012-9-24|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"225.163.125.108|url_20|2010-4-8|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "197.137.29.71|url_21|2007-10-25|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"29.207.144.144|url_12|2012-7-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "139.222.222.113|url_14|2010-4-15|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"169.225.20.141|url_29|2012-2-18|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "137.86.141.104|url_26|2012-3-10|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"193.100.2.122|url_24|2011-12-15|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "20.105.209.161|url_13|2010-2-7|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"116.81.52.207|url_11|2007-4-13|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "141.88.224.116|url_19|2009-4-12|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + "72.198.58.37|url_26|2012-2-2|0.12|Mozilla 
Firefox 3.1|de|de|Nothing special|124|\n" +
+                       "13.37.92.90|url_22|2011-5-16|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"191.163.173.142|url_24|2012-5-2|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "183.57.175.105|url_27|2007-8-13|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"230.212.34.87|url_10|2010-12-21|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|\n" +
+                       "133.150.217.96|url_24|2012-7-27|0.12|Mozilla Firefox 
3.1|de|de|Nothing special|124|\n" + 
"62.254.96.239|url_24|2011-5-15|0.12|Mozilla Firefox 3.1|de|de|Nothing 
special|124|";
+
+       public static final String EXCEPTED_RESULT = "87|url_24|39\n" + 
"59|url_28|41\n";
+
+       private WebLogAnalysisData() {}
+
+}

Reply via email to