code: func (bc *BlockChain) GetBlockByNumber(number uint64) *types.Block {
  	hash := rawdb.ReadCanonicalHash(bc.db, number)
  	if hash == (common.Hash{}) {
  		return nil
  	}
  	return bc.GetBlock(hash, number)
  }
docs: // GetBlockByNumber retrieves a block from the database by number, caching it
  // (associated with its hash) if found.