A B C D E G H I J L N P R S T V W X 

A

AbstractDomNodeProxy - Class in net.sourceforge.pmd.lang.xml.ast
Moves boilerplate out of XmlNodeWrapper.
AbstractDomNodeProxy(Node) - Constructor for class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
AbstractDomXmlRule - Class in net.sourceforge.pmd.lang.xml.rule
This is a base class for XML Java bases rules that which to visit the nodes using the DOM.
AbstractDomXmlRule() - Constructor for class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
AbstractWsdlRule - Class in net.sourceforge.pmd.lang.wsdl.rule
Created by bernardo-macedo on 24.06.15.
AbstractWsdlRule() - Constructor for class net.sourceforge.pmd.lang.wsdl.rule.AbstractWsdlRule
 
AbstractXmlRule - Class in net.sourceforge.pmd.lang.xml.rule
This is a base class for XML Java bases rules.
AbstractXmlRule() - Constructor for class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
AbstractXmlRule(Language) - Constructor for class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
appendChild(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
apply(List<? extends Node>, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 

B

BEGIN_COLUMN - Static variable in interface net.sourceforge.pmd.lang.xml.ast.XmlNode
 
BEGIN_LINE - Static variable in interface net.sourceforge.pmd.lang.xml.ast.XmlNode
 

C

canParse() - Method in class net.sourceforge.pmd.lang.xml.XmlParser
 
cloneNode(boolean) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
COALESCING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
COALESCING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
COALESCING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
compareDocumentPosition(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
createRuleViolation(Rule, RuleContext, Node, String) - Method in class net.sourceforge.pmd.lang.xml.rule.XmlRuleViolationFactory
 
createRuleViolation(Rule, RuleContext, Node, String, int, int) - Method in class net.sourceforge.pmd.lang.xml.rule.XmlRuleViolationFactory
 
createTokenManager(Reader) - Method in class net.sourceforge.pmd.lang.xml.XmlParser
 

D

DumpFacade - Class in net.sourceforge.pmd.lang.xml.ast
 
DumpFacade() - Constructor for class net.sourceforge.pmd.lang.xml.ast.DumpFacade
 

E

END_COLUMN - Static variable in interface net.sourceforge.pmd.lang.xml.ast.XmlNode
 
END_LINE - Static variable in interface net.sourceforge.pmd.lang.xml.ast.XmlNode
 
equals(Object) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
EXPAND_ENTITY_REFERENCES_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
EXPAND_ENTITY_REFERENCES_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
EXPAND_ENTITY_REFERENCES_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 

G

getAsDocument() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getAttributeIterator() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getAttributes() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getBaseURI() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getBeginColumn() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getBeginLine() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getChildNodes() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getDataFlowNode() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getDefaultParserOptions() - Method in class net.sourceforge.pmd.lang.xml.XmlHandler
 
getDumpFacade(Writer, String, boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlHandler
 
getEndColumn() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getEndLine() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getEntityResolver() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
getFeature(String, String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getFirstChild() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getImage() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getLastChild() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getLocalName() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getNamespaceURI() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getNextSibling() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getNode() - Method in interface net.sourceforge.pmd.lang.xml.ast.XmlNode
Provide access to the underlying DOM node.
getNode() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getNodeName() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getNodeType() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getNodeValue() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getOwnerDocument() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getParentNode() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getParser(ParserOptions) - Method in class net.sourceforge.pmd.lang.xml.XmlHandler
 
getParserOptions() - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
getParserOptions() - Method in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
getPrefix() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getPreviousSibling() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getRuleViolationFactory() - Method in class net.sourceforge.pmd.lang.xml.XmlHandler
 
getSuppressMap() - Method in class net.sourceforge.pmd.lang.xml.XmlParser
 
getTextContent() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getUserData() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
getUserData(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
getXPathHandler() - Method in class net.sourceforge.pmd.lang.xml.XmlHandler
 
getXPathNodeName() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 

H

hasAttributes() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
hasChildNodes() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
hashCode() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
hasImageEqualTo(String) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 

I

IGNORING_COMMENTS_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
IGNORING_COMMENTS_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
IGNORING_COMMENTS_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
IGNORING_ELEMENT_CONTENT_WHITESPACE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
IGNORING_ELEMENT_CONTENT_WHITESPACE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
IGNORING_ELEMENT_CONTENT_WHITESPACE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
indexNodes(List<Node>, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.XmlRuleChainVisitor
 
initializeWith(Writer, String, boolean, XmlNode) - Method in class net.sourceforge.pmd.lang.xml.ast.DumpFacade
 
insertBefore(Node, Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
INSTANCE - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlRuleViolationFactory
 
isCoalescing() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isDefaultNamespace(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
isEqualNode(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
isExpandEntityReferences() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isFindBoundary() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
isIgnoringComments() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isIgnoringElementContentWhitespace() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isLookupDescriptorDoc() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isNamespaceAware() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isSameNode(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
isSupported(String, String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
isValidating() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
isXincludeAware() - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 

J

jjtAddChild(Node, int) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtClose() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtGetChild(int) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtGetChildIndex() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtGetId() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtGetNumChildren() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtGetParent() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtSetChildIndex(int) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
jjtSetParent(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 

L

LOOKUP_DESCRIPTOR_DTD - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
lookupNamespaceURI(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
lookupPrefix(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 

N

NAME - Static variable in class net.sourceforge.pmd.lang.pom.PomLanguageModule
 
NAME - Static variable in class net.sourceforge.pmd.lang.wsdl.WsdlLanguageModule
 
NAME - Static variable in class net.sourceforge.pmd.lang.xml.XmlLanguageModule
 
NAME - Static variable in class net.sourceforge.pmd.lang.xsl.XslLanguageModule
 
NAMESPACE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
NAMESPACE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
NAMESPACE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
net.sourceforge.pmd.lang.pom - package net.sourceforge.pmd.lang.pom
 
net.sourceforge.pmd.lang.wsdl - package net.sourceforge.pmd.lang.wsdl
 
net.sourceforge.pmd.lang.wsdl.rule - package net.sourceforge.pmd.lang.wsdl.rule
 
net.sourceforge.pmd.lang.xml - package net.sourceforge.pmd.lang.xml
 
net.sourceforge.pmd.lang.xml.ast - package net.sourceforge.pmd.lang.xml.ast
 
net.sourceforge.pmd.lang.xml.rule - package net.sourceforge.pmd.lang.xml.rule
 
net.sourceforge.pmd.lang.xsl - package net.sourceforge.pmd.lang.xsl
 
node - Variable in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
nodeCache - Variable in class net.sourceforge.pmd.lang.xml.ast.XmlParser
 
normalize() - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 

P

parse(Reader) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlParser
 
parse(String, Reader) - Method in class net.sourceforge.pmd.lang.xml.XmlParser
 
parseDocument(Reader) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlParser
 
parserOptions - Variable in class net.sourceforge.pmd.lang.xml.ast.XmlParser
 
PomLanguageModule - Class in net.sourceforge.pmd.lang.pom
 
PomLanguageModule() - Constructor for class net.sourceforge.pmd.lang.pom.PomLanguageModule
 

R

remove() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
removeChild(Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
removeChildAtIndex(int) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
replaceChild(Node, Node) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 

S

setCoalescing(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setDataFlowNode(DataFlowNode) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
setExpandEntityReferences(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setIgnoringComments(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setIgnoringElementContentWhitespace(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setImage(String) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
setLookupDescriptorDoc(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setNamespaceAware(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setNodeValue(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
setPrefix(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
setTextContent(String) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
setUserData(Object) - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
setUserData(String, Object, UserDataHandler) - Method in class net.sourceforge.pmd.lang.xml.ast.AbstractDomNodeProxy
 
setValidating(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
setXincludeAware(boolean) - Method in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
SILENT_ENTITY_RESOLVER - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 

T

TERSE_NAME - Static variable in class net.sourceforge.pmd.lang.pom.PomLanguageModule
 
TERSE_NAME - Static variable in class net.sourceforge.pmd.lang.wsdl.WsdlLanguageModule
 
TERSE_NAME - Static variable in class net.sourceforge.pmd.lang.xml.XmlLanguageModule
 
TERSE_NAME - Static variable in class net.sourceforge.pmd.lang.xsl.XslLanguageModule
 
toString() - Method in class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 

V

VALIDATING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
VALIDATING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
VALIDATING_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
visit(XmlNode, Object) - Method in class net.sourceforge.pmd.lang.xml.ast.DumpFacade
 
visit(XmlNode, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
visit(XmlNode, Attr, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, CharacterData, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Comment, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Document, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, DocumentType, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Element, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, EntityReference, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Entity, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Notation, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, ProcessingInstruction, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(XmlNode, Text, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visit(Rule, Node, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.XmlRuleChainVisitor
 
visitAll(List<? extends Node>, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
visitAttributeNodes(XmlNode, Node, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 
visitDomNode(XmlNode, Node, RuleContext) - Method in class net.sourceforge.pmd.lang.xml.rule.AbstractDomXmlRule
 

W

WsdlLanguageModule - Class in net.sourceforge.pmd.lang.wsdl
Created by bernardo-macedo on 24.06.15.
WsdlLanguageModule() - Constructor for class net.sourceforge.pmd.lang.wsdl.WsdlLanguageModule
 

X

XINCLUDE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.AbstractXmlRule
 
XINCLUDE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
XINCLUDE_AWARE_DESCRIPTOR - Static variable in class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
XmlHandler - Class in net.sourceforge.pmd.lang.xml
Implementation of LanguageVersionHandler for the XML.
XmlHandler() - Constructor for class net.sourceforge.pmd.lang.xml.XmlHandler
 
XmlLanguageModule - Class in net.sourceforge.pmd.lang.xml
Created by christoferdutz on 20.09.14.
XmlLanguageModule() - Constructor for class net.sourceforge.pmd.lang.xml.XmlLanguageModule
 
XmlNode - Interface in net.sourceforge.pmd.lang.xml.ast
This interface represents all XML AST nodes.
XmlNodeWrapper - Class in net.sourceforge.pmd.lang.xml.ast
Proxy wrapping an XML DOM node (Node) to implement PMD interfaces.
XmlNodeWrapper(XmlParser, Node) - Constructor for class net.sourceforge.pmd.lang.xml.ast.XmlNodeWrapper
 
XmlParser - Class in net.sourceforge.pmd.lang.xml.ast
 
XmlParser - Class in net.sourceforge.pmd.lang.xml
Adapter for the XmlParser.
XmlParser(ParserOptions) - Constructor for class net.sourceforge.pmd.lang.xml.XmlParser
 
XmlParser(XmlParserOptions) - Constructor for class net.sourceforge.pmd.lang.xml.ast.XmlParser
 
XmlParser.RootXmlNode - Class in net.sourceforge.pmd.lang.xml.ast
The root should implement RootNode.
XmlParserOptions - Class in net.sourceforge.pmd.lang.xml
 
XmlParserOptions() - Constructor for class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
XmlParserOptions(Rule) - Constructor for class net.sourceforge.pmd.lang.xml.XmlParserOptions
 
XmlRuleChainVisitor - Class in net.sourceforge.pmd.lang.xml.rule
 
XmlRuleChainVisitor() - Constructor for class net.sourceforge.pmd.lang.xml.rule.XmlRuleChainVisitor
 
XmlRuleViolationFactory - Class in net.sourceforge.pmd.lang.xml.rule
 
XmlXPathRule - Class in net.sourceforge.pmd.lang.xml.rule
 
XmlXPathRule() - Constructor for class net.sourceforge.pmd.lang.xml.rule.XmlXPathRule
 
XslLanguageModule - Class in net.sourceforge.pmd.lang.xsl
Created by christoferdutz on 20.09.14.
XslLanguageModule() - Constructor for class net.sourceforge.pmd.lang.xsl.XslLanguageModule
 
A B C D E G H I J L N P R S T V W X 
Skip navigation links

Copyright © 2002–2018 PMD. All rights reserved.