code: func (ethash *Ethash) CalcDifficulty(chain consensus.ChainReader, time uint64, parent *types.Header) *big.Int {
  	return CalcDifficulty(chain.Config(), time, parent)
  }
docs: // CalcDifficulty is the difficulty adjustment algorithm. It returns
  // the difficulty that a new block should have when created at time
  // given the parent block's time and difficulty.