message: allow segwit utxos to be staked
diff: @@ -4343,13 +4343,13 @@ bool CWallet::CreateCoinStake(const CKeyStore& keystore, unsigned int nBits, int
  }
  if (gArgs.GetBoolArg("-debug", false) && gArgs.GetBoolArg("-printcoinstake", false))
  LogPrintf("CreateCoinStake : parsed kernel type=%d\n", whichType);
  - if (whichType != TX_PUBKEY && whichType != TX_PUBKEYHASH)
  + if (whichType != TX_PUBKEY && whichType != TX_PUBKEYHASH && whichType != TX_WITNESS_V0_KEYHASH)
  {
  if (gArgs.GetBoolArg("-debug", false) && gArgs.GetBoolArg("-printcoinstake", false))
  LogPrintf("CreateCoinStake : no support for kernel type=%d\n", whichType);
  - break; // only support pay to public key and pay to address
  + break; // only support pay to public key and pay to address and pay to witness keyhash
  }
  - if (whichType == TX_PUBKEYHASH) // pay to address type
  + if (whichType == TX_PUBKEYHASH || whichType == TX_WITNESS_V0_KEYHASH) // pay to address type or witness keyhash
  {
  // convert to pay to public key type
  CKey key;
  