diff --git a/haas-imagej-client/pom.xml b/haas-imagej-client/pom.xml
index 21819a78d58ca4ba71a750b09a7979e4cdc3cc80..66e3de879b6adca653082dc4641d44ebdaf82100 100644
--- a/haas-imagej-client/pom.xml
+++ b/haas-imagej-client/pom.xml
@@ -101,5 +101,12 @@
 			<artifactId>slf4j-simple</artifactId>
 		</dependency>
 
+		<!-- https://mvnrepository.com/artifact/org.yaml/snakeyaml -->
+		<dependency>
+		    <groupId>org.yaml</groupId>
+		    <artifactId>snakeyaml</artifactId>
+		    <version>1.19</version>
+		</dependency>
+
 	</dependencies>
 </project>
diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/BenchmarkJobManager.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/BenchmarkJobManager.java
index 0e0f2ee91fd2f81429df711a1898a95b12d4b239..e0c7df7830d87b149fd8248cfa506e74ecf7cfee 100644
--- a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/BenchmarkJobManager.java
+++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/BenchmarkJobManager.java
@@ -4,8 +4,13 @@ import java.io.IOException;
 import java.nio.file.Path;
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 import cz.it4i.fiji.haas.JobManager.JobInfo;
+import cz.it4i.fiji.haas.JobManager.JobSynchronizableFile;
 import cz.it4i.fiji.haas_java_client.HaaSClient;
 import cz.it4i.fiji.haas_java_client.JobState;
 import net.imagej.updater.util.Progress;
@@ -14,34 +19,57 @@ public class BenchmarkJobManager {
 	private static final String CONFIG_YAML = "config.yaml";
 	private JobManager jobManager;
 	private Progress progress;
-	
+	private Map<Long,JobInfo> jobs = new HashMap<>();
 
 	public BenchmarkJobManager(Path workDirectory, Progress progress) throws IOException {
 		jobManager = new JobManager(workDirectory, TestingConstants.getSettings(2, 6));
 		this.progress = progress;
 	}
 
-	public JobInfo createJob() throws IOException {
+	public long createJob() throws IOException {
 		JobInfo jobInfo = jobManager.createJob(progress);
 		jobInfo.storeDataInWorkdirectory(getUploadingFile());
-		return jobInfo;
+		return indexJob(jobInfo);
 	}
 
-	public void startJob(JobInfo jobInfo) {
+	public void startJob(long jobId) {
+		JobInfo jobInfo = jobs.get(jobId);
 		jobInfo.uploadFilesByName(() -> Arrays.asList(CONFIG_YAML).stream());
 		jobInfo.submit();
 	}
 
+	
+	public Collection<Long> getJobs() throws IOException {
+		return jobManager.getJobs(progress).stream().map(this::indexJob).collect(Collectors.toList());
+	}
+	
 	public JobState getState(long jobId) {
-		return jobManager.getState(jobId);
+		return jobs.get(jobId).getState();
 	}
 
+	public void downloadData(long jobId) {
+		// TODO Auto-generated method stub
+		
+		
+		
+	}
+	public Iterable<String> getOutput(long jobId, List<JobSynchronizableFile> files) {
+		return jobs.get(jobId).getOutput(files);
+	}
+	
 	private HaaSClient.UploadingFile getUploadingFile() {
 		return new UploadingFileFromResource("", CONFIG_YAML);
 	}
 
-	public Collection<JobInfo> getJobs() throws IOException {
-		return jobManager.getJobs(progress);
+	private long indexJob(JobInfo jobInfo) {
+		jobs.put(jobInfo.getId(), jobInfo);
+		return jobInfo.getId();
 	}
 
+	
+
+	
+
+	
+
 }
diff --git a/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/RunBenchmark.java b/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/RunBenchmark.java
index 64c189ae81a874da130ca767c37e7e29ccdc50ec..eb50cc28d4e1de6ba81117339ae827d2c6cb319b 100644
--- a/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/RunBenchmark.java
+++ b/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/RunBenchmark.java
@@ -9,7 +9,6 @@ import java.util.Arrays;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import cz.it4i.fiji.haas.JobManager.JobInfo;
 import cz.it4i.fiji.haas_java_client.JobState;
 import cz.it4i.fiji.haas_java_client.SynchronizableFileType;
 import net.imagej.updater.util.Progress;
@@ -24,7 +23,7 @@ public class RunBenchmark {
 				Files.createDirectory(p);
 			}
 			BenchmarkJobManager benchmarkJobManager = new BenchmarkJobManager(p, new P_Progress());
-			JobInfo ji = benchmarkJobManager.createJob();
+			long ji = benchmarkJobManager.createJob();
 			log.info("job: " + ji + " created.");
 		}
 	}
@@ -36,14 +35,15 @@ public class RunBenchmark {
 				Files.createDirectory(p);
 			}
 			BenchmarkJobManager benchmarkJobManager = new BenchmarkJobManager(p, new P_Progress());
-			for (JobInfo ji : benchmarkJobManager.getJobs()) {
-				log.info("job: " + ji.getId() + " hasStatus " + ji.getState());
-				if (ji.getState() == JobState.Configuring) {
-					benchmarkJobManager.startJob(ji);
-				} else if (ji.getState() != JobState.Running && ji.getState() != JobState.Queued) {
-					ji.downloadData(new P_Progress());
-				} else if (ji.getState() == JobState.Running) {
-					log.info(ji.getOutput(Arrays.asList(
+			for (long jobId : benchmarkJobManager.getJobs()) {
+				JobState state;
+				log.info("job: " + jobId + " hasStatus " + (state = benchmarkJobManager.getState(jobId)));
+				if (state == JobState.Configuring) {
+					benchmarkJobManager.startJob(jobId);
+				} else if (state != JobState.Running && state != JobState.Queued) {
+					benchmarkJobManager.downloadData(jobId);
+				} else if (state == JobState.Running) {
+					log.info(benchmarkJobManager.getOutput(jobId,Arrays.asList(
 							new JobManager.JobSynchronizableFile(SynchronizableFileType.StandardErrorFile, 0))).iterator().next());
 				}
 			}
diff --git a/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/TestYaml.java b/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/TestYaml.java
new file mode 100644
index 0000000000000000000000000000000000000000..bfd5b70b3b4577b122f8f05f56f0162d197b32d5
--- /dev/null
+++ b/haas-imagej-client/src/test/java/cz/it4i/fiji/haas/TestYaml.java
@@ -0,0 +1,25 @@
+package cz.it4i.fiji.haas;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.yaml.snakeyaml.Yaml;
+
+public class TestYaml {
+
+	private static Logger log = LoggerFactory.getLogger(cz.it4i.fiji.haas.TestYaml.class);
+	
+	public static void main(String[] args) throws IOException {
+		try(InputStream is = args.getClass().getResourceAsStream("config.yaml")){
+			Yaml yaml = new Yaml();
+			
+			Map map = yaml.load(is);
+			log.info("common.hdf5_xml_filename: "  + ((Map)map.get("common")).get("hdf5_xml_filename"));
+		}
+
+	}
+
+}