docs: public Wallet readWallet(InputStream input, boolean forceReset, @Nullable WalletExtension[] extensions) throws UnreadableWalletException {
          try {
              Protos.Wallet walletProto = parseToProto(input);
              final String paramsID = walletProto.getNetworkIdentifier();
              NetworkParameters params = NetworkParameters.fromID(paramsID);
              if (params == null)
                  throw new UnreadableWalletException("Unknown network parameters ID " + paramsID);
              return readWallet(params, extensions, walletProto, forceReset);
          } catch (IOException e) {
              throw new UnreadableWalletException("Could not parse input stream to protobuf", e);
          } catch (IllegalStateException e) {
              throw new UnreadableWalletException("Could not parse input stream to protobuf", e);
          } catch (IllegalArgumentException e) {
              throw new UnreadableWalletException("Could not parse input stream to protobuf", e);
          }
      }