def mine(rounds=1000, start_nonce=0)
      blk = @block
      bin_nonce, mixhash = _mine(blk.number, blk.difficulty, blk.mining_hash, start_nonce, rounds)

      if bin_nonce.true?
        blk.mixhash = mixhash
        blk.nonce = bin_nonce
        return blk
      end
    end
def mine(rounds=1000, start_nonce=0)
      blk = @block
      bin_nonce, mixhash = _mine(blk.number, blk.difficulty, blk.mining_hash, start_nonce, rounds)

      if bin_nonce.true?
        blk.mixhash = mixhash
        blk.nonce = bin_nonce
        return blk
      end
    end
Mines on the current head. Stores received transactions.

 The process of finalising a block involves four stages:

 1. validate (or, if mining, determine) uncles;
 2. validate (or, if mining, determine) transactions;
 3. apply rewards;
 4. verify (or, if mining, compute a valid) state and nonce.