protected Map<String, List<Object>> collectDuoAuthenticationResultAttributes(final Token result) {
        val attributes = new LinkedHashMap<String, List<Object>>();
        val authResult = result.getAuth_result();
        if (authResult != null) {
            collectDuoAttribute(attributes, "duoAuthResult", CollectionUtils.wrap(authResult.getResult()));
            collectDuoAttribute(attributes, "duoAuthResultStatus", CollectionUtils.wrap(authResult.getStatus()));
            collectDuoAttribute(attributes, "duoAuthResultStatusMessage", CollectionUtils.wrap(authResult.getStatus_msg()));
        }
        return attributes;
    }
An abstraction that encapsulates interaction with
Duo 2fa authentication service via its universal prompt API.

@author Misagh Moayyed
@since 6.3.0
support/cas-server-support-duo-core/src/main/java/org/apereo/cas/adaptors/duo/authn/UniversalPromptDuoSecurityAuthenticationService.java