anchor.diff:  
   --%>
   <%@ page session="false" contentType="application/xml; charset=UTF-8" %>
  -<%@ page import="java.util.Map.Entry" %>
  +<%@ page import="java.util.*, java.util.Map.Entry" %>
   <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
   <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
   <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
  
positive.code:                    	<%
                     	    Entry entry = (Entry) pageContext.getAttribute("attr");
                     	    Object value = entry.getValue();
                     	    pageContext.setAttribute("isAString", value instanceof String);
                     	%>
                      <c:choose>
                          <%-- it's a String, output it once --%>
                          <c:when test="${isAString}">
                              <cas:${fn:escapeXml(attr.key)}>${fn:escapeXml(attr.value)}</cas:${fn:escapeXml(attr.key)}>
                          </c:when>
                          <%-- if attribute is multi-valued, list each value under the same attribute name --%>
  
negative.code:                         </c:otherwise>
                      </c:choose>
                  </c:forEach>
                  <cas:isFromNewLogin>${fn:escapeXml(assertion.fromNewLogin)}</cas:isFromNewLogin>
                  <cas:longTermAuthenticationRequestTokenUsed>${fn:escapeXml(longTermAuthenticationRequestTokenUsed)}</cas:longTermAuthenticationRequestTokenUsed>
                  <cas:authenticationDate>${fn:escapeXml(assertion.primaryAuthentication.authenticatedDate)}</cas:authenticationDate>
              </cas:attributes>
          </c:if>
  
  