pdriver.read( nr*blockSize, data, 0, blockSize); result=new Block(data);
api.read(nr * blockSize, data, 0, blockSize); result = new Block(data);
	public byte[] getBlock(long nr) throws IOException{		int blockSize = superblock.getBlockSize();		Block result;				Integer key=new Integer((int)nr);		//check if the block has already been retrieved		if(cache.containsKey(key)) 			result=(Block)cache.get(key);		else{			byte[] data = new byte[blockSize];			pdriver.read( nr*blockSize, data, 0, blockSize);			result=new Block(data);			cache.put(key, result);		}					return result.getData();	}