docs: def btc_get_privkey_address(privkey_info, **blockchain_opts):
      """
      Get the address for a given private key info bundle
      (be it multisig or singlesig)
  
      Return the address on success
      Raise exception on error
      """
      
      from .multisig import make_multisig_segwit_address_from_witness_script
  
      if btc_is_singlesig(privkey_info):
          return btc_address_reencode( ecdsalib.ecdsa_private_key(privkey_info).public_key().address() )
      
      if btc_is_multisig(privkey_info) or btc_is_singlesig_segwit(privkey_info):
          redeem_script = str(privkey_info['redeem_script'])
          return btc_make_p2sh_address(redeem_script)
      
      if btc_is_multisig_segwit(privkey_info):
          return make_multisig_segwit_address_from_witness_script(str(privkey_info['redeem_script']))
  
      raise ValueError("Invalid private key info")