code: List<Long> getPositionList() {
  		List<Long> ret = new ArrayList<Long>();
  
  		ret.add(-1L);
  		/*
  		 * This -1 is pointing to the previous position of the first valid
  		 * position of the bit vector, which starts at index 0. Since the zeroth
  		 * occurrence of a bit is undefined, the first occurrence can be at
  		 * position 0, or later.
  		 */
  
  		long count = 0;
  		for (long index = 0; index < this.bitVector.size(); index++) {
  			if (this.bitVector.getBit(index) == this.bit) {
  				count++;
  			}
  			if (count >= this.blockSize) {
  				count = 0;
  				ret.add(index);
  			}
  		}
  		return ret;
  	}
docs: Returns a list of Long that contains the indices of positions computed
  according to the given bit vector.
  
  @return a list of Long that contains the indices of positions computed
  according to the given bit vector