docs: public RequestedSecurityToken getRequestSecurityTokenFromResult(final String wresult) {
          LOGGER.debug("Result token received from ADFS is [{}]", wresult);
          try (InputStream in = new ByteArrayInputStream(wresult.getBytes(StandardCharsets.UTF_8))) {
              LOGGER.debug("Parsing token into a document");
              val document = configBean.getParserPool().parse(in);
              val metadataRoot = document.getDocumentElement();
              val unmarshallerFactory = configBean.getUnmarshallerFactory();
              val unmarshaller = unmarshallerFactory.getUnmarshaller(metadataRoot);
              if (unmarshaller == null) {
                  throw new IllegalArgumentException("Unmarshaller for the metadata root element cannot be determined");
              }
              LOGGER.debug("Unmarshalling the document into a security token response");
              val rsToken = (RequestSecurityTokenResponse) unmarshaller.unmarshall(metadataRoot);
              if (rsToken.getRequestedSecurityToken() == null) {
                  throw new IllegalArgumentException("Request security token response is null");
              }
              LOGGER.debug("Locating list of requested security tokens");
              val rst = rsToken.getRequestedSecurityToken();
              if (rst.isEmpty()) {
                  throw new IllegalArgumentException("No requested security token response is provided in the response");
              }
              LOGGER.debug("Locating the first occurrence of a requested security token in the list");
              val reqToken = rst.get(0);
              if (reqToken.getSecurityTokens() == null || reqToken.getSecurityTokens().isEmpty()) {
                  throw new IllegalArgumentException("Requested security token response is not carrying any security tokens");
              }
              return reqToken;
          } catch (final Exception ex) {
              LOGGER.error(ex.getMessage(), ex);
          }
          return null;
      }