public boolean unzipFile(byte[] byteArray, File unzipped){
		int currentReturnCarriage = 0;
		try{
			InputStream in = new ByteArrayInputStream(byteArray);
			FileOutputStream out = new FileOutputStream(unzipped);
			BZip2CompressorInputStream bzIn = new BZip2CompressorInputStream(in);
			byte[] buffer = byteArray.clone();
			int n = 0;
			while (-1 != (n = bzIn.read(buffer))) {
				byte[] writing = buffer;
			for(int i = 0; i<writing.length; i++){
				if(writing[i]==0x0a && buffer[i+1]==0x0d){
					if(iteration%Math.pow(2, currentReturnCarriage++)==0){
						byte[] part1 = new byte[i];
						byte[] part2 = new byte[writing.length-i-1];
						System.arraycopy(writing, 0, part1, 0, i);
						System.arraycopy(writing, writing.length-i+1, part2, 0, writing.length-i-1);
						writing = new byte[writing.length -1];
						System.arraycopy(part1, 0, writing, 0, i);
						System.arraycopy(part2, 0, writing, i+1, part2.length);
					}
				}
			}
			  out.write(writing, 0, n);
			}
			out.close();
			bzIn.close();
		}catch(Exception e){
			unzipped.delete();
			return false;
		}
		return true;
	}