docs: @Override
    public final TaxDestination revealTaxRules(final Map<String, Object> pRqVs,
      final Cart pCart, final AccSettings pAs) throws Exception {
      if (pCart.getBuyer().getRegCustomer() == null) {
        //copy buyer info into non-persistable customer.
        pCart.getBuyer().setRegCustomer(new DebtorCreditor());
        pCart.getBuyer().getRegCustomer()
          .setIsForeigner(pCart.getBuyer().getForeig());
        pCart.getBuyer().getRegCustomer()
          .setRegZip(pCart.getBuyer().getRegZip());
        pCart.getBuyer().getRegCustomer()
          .setTaxDestination(pCart.getBuyer().getTaxDest());
      }
      TaxDestination txRules = null;
      if (pAs.getIsExtractSalesTaxFromSales()
        && !pCart.getBuyer().getRegCustomer().getIsForeigner()) {
        if (pCart.getBuyer().getRegCustomer().getTaxDestination() != null) {
          //override tax method:
          txRules = pCart.getBuyer().getRegCustomer().getTaxDestination();
        } else {
          txRules = new TaxDestination();
          txRules.setSalTaxIsInvoiceBase(pAs.getSalTaxIsInvoiceBase());
          txRules.setSalTaxUseAggregItBas(pAs.getSalTaxUseAggregItBas());
          txRules.setSalTaxRoundMode(pAs.getSalTaxRoundMode());
        }
      }
      return txRules;
    }