public void mergeWithChunkOnEdge(Chunk chunk, Edge edge){
		//get the reads
		Read rightReadInThisChunk = this.reads.get(this.reads.size() - 1);
		Read leftInOther = chunk.reads.get(0);
		//establish a connection between them, reuse the edge
		edge.setIdA(rightReadInThisChunk.getId());
		edge.setIdB(leftInOther.getId());
		rightReadInThisChunk.addEdge(edge);
		leftInOther.addEdge(edge);
		//remove the edge from chunks
		this.edges.remove(edge);
		chunk.edges.remove(edge);
		if(this == chunk){
			System.out.println("SAM SA SOBOM!");
			System.out.println("EDGE "+edge);
		}
		//add the reads from other chunk to this one
		for(Read readInOtherChunk : chunk.reads){
			this.reads.add(readInOtherChunk);
		}
		//redirect the edges from other chunk to this one
		for(Edge edgeInOtherChunk : chunk.edges){
			if(edgeInOtherChunk.getIdA() == chunk.getId()){
				edgeInOtherChunk.setIdA(this.id);
			}else{
				edgeInOtherChunk.setIdB(this.id);
			}
			this.edges.add(edgeInOtherChunk);
		}
	}