code: @Override
  	public void initialize(InputSplit split, TaskAttemptContext context) throws IOException, InterruptedException {
  		   FileSplit fSplit = (FileSplit)split;
  		   // Initialize start and end of split
  		      start = fSplit.getStart();
  		      end = start + fSplit.getLength();
  		      final Path file = fSplit.getPath();
  		      codec = new CompressionCodecFactory(context.getConfiguration()).getCodec(file);
  		      final FileSystem fs = file.getFileSystem(context.getConfiguration());
  		      FSDataInputStream fileIn = fs.open(file);
  		      // open stream
  		        if (isCompressedInput()) { // decompress
  		        	decompressor = CodecPool.getDecompressor(codec);
  		        	if (codec instanceof SplittableCompressionCodec) {
  		  		
  		          	final SplitCompressionInputStream cIn =((SplittableCompressionCodec)codec).createInputStream(fileIn, decompressor, start, end,SplittableCompressionCodec.READ_MODE.CONTINUOUS);
  		  				ebr = new EthereumBlockReader(cIn, this.maxSizeEthereumBlock,this.bufferSize,this.useDirectBuffer);
  		  				start = cIn.getAdjustedStart();
  		         		end = cIn.getAdjustedEnd();
  		          	filePosition = cIn; // take pos from compressed stream
  		        } else {
  		        	ebr = new EthereumBlockReader(codec.createInputStream(fileIn,decompressor), this.maxSizeEthereumBlock,this.bufferSize,this.useDirectBuffer);
  		        	filePosition = fileIn;
  		        }
  		      } else {
  		        fileIn.seek(start);
  		        ebr = new EthereumBlockReader(fileIn, this.maxSizeEthereumBlock,this.bufferSize,this.useDirectBuffer);
  		        filePosition = fileIn;
  		      }
  	}
docs: *
  Initializes readers
  
  @param split Split to be used (asssumed to be a file split)
  œüaram context context of the job
  @throws java.io.IOException in case of errors reading from the filestream provided by Hadoop
  @throws java.lang.InterruptedException in case of thread interruption