code: func (w *Wallet) SignTxWithPassphrase(account accounts.Account, passphrase string, tx *types.Transaction, chainID *big.Int) (*types.Transaction, error) {
  	if !w.session.verified {
  		if err := w.Open(passphrase); err != nil {
  			return nil, err
  		}
  	}
  	return w.SignTx(account, tx, chainID)
  }
docs: // SignTxWithPassphrase requests the wallet to sign the given transaction, with the
  // given passphrase as extra authentication information.
  //
  // It looks up the account specified either solely via its address contained within,
  // or optionally with the aid of any location metadata from the embedded URL field.