priority = -0.5d; isAnyNode = (nodeTypeTest.getNodeType() == 0);
p = -0.5d; a = (nodeTypeTest.getNodeType() == 0);
  Template(Stylesheet stylesheet,            QName name, Pattern match, TemplateNode node,           int precedence, double priority, QName mode)  {    this.stylesheet = stylesheet;    this.name = name;    this.match = match;    this.node = node;    // adjust priority if necessary    // see XSLT section 5.5    Test test = getNodeTest(match);    if (test != null)      {        if (test instanceof NameTest)          {            NameTest nameTest = (NameTest) test;            if (nameTest.matchesAny() ||                nameTest.matchesAnyLocalName())                priority = -0.25d;            else                priority = 0.0d;            isAnyNode = false;          }        else          {            NodeTypeTest nodeTypeTest = (NodeTypeTest) test;            if (nodeTypeTest.getNodeType() ==                Node.PROCESSING_INSTRUCTION_NODE &&                nodeTypeTest.getData() != null)                priority = 0.0d;            else                priority = -0.5d;            isAnyNode = (nodeTypeTest.getNodeType() == 0);              }          }    else      isAnyNode = false;    this.precedence = precedence;    this.priority = priority;    this.mode = mode;  }