Uses of Class
unbbayes.prs.Node

Packages that use Node
unbbayes.controller   
unbbayes.draw   
unbbayes.draw.extension   
unbbayes.evaluation   
unbbayes.gui   
unbbayes.gui.table.extension   
unbbayes.io   
unbbayes.prs   
unbbayes.prs.bn   
unbbayes.prs.builder   
unbbayes.prs.builder.extension   
unbbayes.prs.builder.impl   
unbbayes.prs.extension   
unbbayes.prs.hybridbn   
unbbayes.prs.id   
unbbayes.simulation.likelihoodweighting.sampling   
unbbayes.simulation.montecarlo.sampling   
unbbayes.util   
 

Uses of Node in unbbayes.controller
 

Methods in unbbayes.controller that return Node
 Node NetworkController.getSelectedNode()
          Returns the selected node.
 Node SENController.insertContinuousNode(double x, double y)
          Inserts the desired node inside the network creating default state, symbol and description
 Node NetworkController.insertContinuousNode(double x, double y)
          Insert a new continuous node in the SingleEntityNetwork with the standard label and description.
 Node SENController.insertDecisionNode(double x, double y)
          Inserts the desired node inside a network creating a default state, symbol and description.
 Node NetworkController.insertDecisionNode(double x, double y)
          Insert a new decision node in the SingleEntityNetwork with the standard label and description.
 Node SENController.insertProbabilisticNode(double x, double y)
          Inserts the desired node inside the network creating default state, symbol and description
 Node NetworkController.insertProbabilisticNode(double x, double y)
          Insert a new probabilistic node in the SingleEntityNetwork with the standard label and description.
 Node SENController.insertUtilityNode(double x, double y)
          Inserts the desired node inside a network creating a default state, symbol and description.
 Node NetworkController.insertUtilityNode(double x, double y)
          Insert a new utility node in the SingleEntityNetwork with the standard label and description.
 

Methods in unbbayes.controller with parameters of type Node
 void SENController.createDiscreteTable(Node node)
          Creates and shows the panel where the user can edit the discrete node table.
 void NetworkController.createDiscreteTable(Node node)
          Creates and shows the panel where the user can edit the discrete node table.
 void NetworkController.createTable(Node node)
          Creates and shows the panel to edit the node's table.
 void SENController.insertState(Node node)
          Inserts a new state for a selected node
 void NetworkController.insertState(Node node)
          Insert a new state for the given node.
 JTable SENController.makeTable(Node node)
          This method is responsible to represent the potential table as a JTable, including its table model.
 JTable NetworkController.makeTable(Node node)
          Construct a potential table of the given node.
 JTable SENController.makeTableOld(Node node)
          Deprecated.  
 void SENController.removeState(Node node)
          Deletes the last state of a selected node
 void NetworkController.removeState(Node node)
          Remove the last state from the given node.
 void NetworkController.selectNode(Node node)
          Selects a node
 

Method parameters in unbbayes.controller with type arguments of type Node
 ProbabilisticNetwork MainController.makeProbabilisticNetwork(ArrayList<Node> nodeList)
          Method responsible for creating a network based on its variables.
 

Uses of Node in unbbayes.draw
 

Fields in unbbayes.draw declared as Node
protected  Node UShape.node
           
 

Methods in unbbayes.draw that return Node
 Node UShape.getNode()
           
 Node INodeHolderShape.getNode()
          Obtains the node carried by this object
 Node UCanvas.getSelectedShapesNode()
           
 

Methods in unbbayes.draw with parameters of type Node
 UShape UCanvas.getNodeUShape(Node n)
          Does a linear search for a UShape instance containing a node n
 UShape UCanvas.getNodeUShape(UShape parent, Node n)
           
 void UShape.setNode(Node n)
           
 

Constructors in unbbayes.draw with parameters of type Node
UShape(UCanvas c, Node pNode, int x, int y, int w, int h)
           
UShapeDecisionNode(UCanvas c, Node pNode, int x, int y, int w, int h)
           
UShapeFrame(UCanvas c, Node n, int x, int y, int w, int h)
           
UShapeProbabilisticNode(UCanvas c, Node pNode, int x, int y, int w, int h)
           
UShapeState(UCanvas s, Node pNode, int x, int y, int w, int h)
           
UShapeUtilityNode(UCanvas c, Node pNode, int x, int y, int w, int h)
           
 

Uses of Node in unbbayes.draw.extension
 

Methods in unbbayes.draw.extension with parameters of type Node
 UShape IPluginUShape.getUShape(Node node, UCanvas canvas)
          Obtains an UShape in order to draw a node within a canvas.
 

Uses of Node in unbbayes.evaluation
 

Fields in unbbayes.evaluation with type parameters of type Node
protected  List<Node> FastMCApproximateEvaluation.positionNodeList
           
protected  List<Node> FastLWApproximateEvaluation.positionNodeList
           
 

Uses of Node in unbbayes.gui
 

Fields in unbbayes.gui with type parameters of type Node
 ArrayList<Node> GraphPane.nodeList
           
 List<Node> GraphPane.selectedGroup
           
 

Methods in unbbayes.gui that return Node
 Node HierarchicTree.getNodeInformation(DefaultMutableTreeNode treeNode)
           
 Node EvidenceTree.getNodeMap(DefaultMutableTreeNode node)
           
 Node PNEditionPane.getTableOwner()
           
 Node NetworkWindow.getTableOwner()
           
 

Methods in unbbayes.gui that return types with arguments of type Node
 ArrayList<Node> HierarchicTree.getAllNodeInformations()
          Extracts all nodes managed by this class
 List<Node> GraphPane.getSelectedGroup()
          Retorna uma lista de selecionados (List), que podem ser um Node e/ou Edge
 

Methods in unbbayes.gui with parameters of type Node
protected  JComponent PNEditionPane.buildCPFPaneFromPlugin(Node tableOwner)
          Builds a JTabbedPane containing panels to edit conditional probability functions, from plugins.
 void GraphPane.compiled(boolean reset, Node selectedNode)
           
 void GraphPane.createNode(Node newNode)
          This method literally re-generates the UShape instance for a given newNode parameter.
 void GraphPane.selectNode(Node n)
           
 void EvidenceTree.selectTreeItemByNode(Node n)
           
 void EvidenceTree.selectTreeItemByState(Node node, String stateName)
           
 void PNEditionPane.setTable(JTable table, Node tableOwner)
          Change the shown table to the given one.
 void NetworkWindow.setTable(JTable table, Node tableOwner)
          Delegates to #getPnEditionPane()#setTable(JTable, Node)
 void PNEditionPane.setTableOwner(Node node)
           
 void NetworkWindow.setTableOwner(Node node)
           
 void GraphPane.showCPT(Node newNode)
           
 

Uses of Node in unbbayes.gui.table.extension
 

Methods in unbbayes.gui.table.extension that return Node
 Node IProbabilityFunctionPanelBuilder.getProbabilityFunctionOwner()
          Gets the node currently owning the probability distribution function
 

Methods in unbbayes.gui.table.extension with parameters of type Node
 void IProbabilityFunctionPanelBuilder.setProbabilityFunctionOwner(Node node)
          Sets the node owning the probability distribution function.
 

Uses of Node in unbbayes.io
 

Methods in unbbayes.io with parameters of type Node
protected  void NetIO.loadNodeDeclarationBody(StreamTokenizer st, Node node)
          Reads inside the node declaration.
protected  void DneIO.loadNodeDeclarationBody(StreamTokenizer st, Node node, SingleEntityNetwork net)
          Reads inside the node declaration.
protected  void DneIO.loadParents(StreamTokenizer st, Node node, SingleEntityNetwork net)
          If the current declaration is "potential", treat that declaration and adds it to a node contained within net.
protected  void NetIO.loadPotentialDataContinuous(StreamTokenizer st, Node node)
          Loads potential declaration assuming it is declaring continuous distribution
protected  void NetIO.loadPotentialDataOrdinal(StreamTokenizer st, Node node)
          Loads potential declaration's content assuming it is declaring ordinal "stateful" probability declaration
protected  void DneIO.loadPotentialDataOrdinal(StreamTokenizer st, Node node)
          Loads potential declaration's content assuming it is declaring ordinal "stateful" probability declaration
protected  void NetIO.saveNodeDeclaration(PrintStream stream, Node node, SingleEntityNetwork net)
          Writes to a PrintStream a node/decision/utility{} declaration.
protected  void DneIO.saveNodeDeclaration(PrintStream stream, Node node, SingleEntityNetwork net)
          Writes to a PrintStream a node/decision/utility{} declaration.
protected  void NetIO.saveNodeDeclarationBody(PrintStream stream, Node node, SingleEntityNetwork net)
          Writes to a PrintStream the body of node/decision/utility{} declaration.
protected  void DneIO.saveNodeDeclarationBody(PrintStream stream, Node node, SingleEntityNetwork net)
          Writes to a PrintStream the body of node/decision/utility{} declaration.
protected  void NetIO.saveNodeLabelAndPosition(PrintStream stream, Node node)
          Stores node's label = "[LABEL]"; and position = ([X], [Y]); declarations inside "node" declaration's body
protected  void DneIO.saveNodeLabelAndPosition(PrintStream stream, Node node)
          Stores node's label = "[LABEL]"; and position = ([X], [Y]); declarations inside "node" declaration's body
protected  void NetIO.savePotentialDeclaration(PrintStream stream, Node node, SingleEntityNetwork net)
          Stores to PrintStream the potential{} declaration
protected  void DneIO.savePotentialDeclaration(PrintStream stream, Node node, SingleEntityNetwork net)
          Stores to PrintStream the potential{} declaration
protected  void NetIO.savePotentialDeclarationBody(PrintStream stream, Node node, SingleEntityNetwork net)
          Stores to PrintStream the [BODY] of potential {[BODY]} declaration
protected  void DneIO.savePotentialDeclarationBody(PrintStream stream, Node node, SingleEntityNetwork net)
          Stores to PrintStream the [BODY] of potential {[BODY]} declaration
 

Method parameters in unbbayes.io with type arguments of type Node
 void NetworkCompilationLogManager.finishLog(JunctionTree tree, ArrayList<Node> nodes)
           
 

Uses of Node in unbbayes.prs
 

Fields in unbbayes.prs with type parameters of type Node
protected  ArrayList<Node> Network.nodeList
          List of nodes that this network has.
protected  ArrayList<Node> Node.parents
           
 

Methods in unbbayes.prs that return Node
 Node Edge.getDestinationNode()
          Retorna o segundo nÔøΩ associado ao arco.
 Node Network.getNode(String name)
          Returns the node that has the given name.
 Node Network.getNodeAt(int index)
          Retorna o nÔøΩ do grafo com o respectivo ÔøΩndice.
 Node Edge.getOriginNode()
          Retorna o primeiro nÔøΩ associado ao arco.
 

Methods in unbbayes.prs that return types with arguments of type Node
 ArrayList<Node> Node.getAdjacents()
          Obtains a list of adjacents.
 ArrayList<Node> Node.getChildren()
          Obtains a list of children.
 ArrayList<Node> Network.getNodes()
          Retorna os nÔøΩs do grafo.
 ArrayList<Node> Graph.getNodes()
          Retorna os nÔøΩs do grafo.
 ArrayList<Node> Node.getParents()
          Obtains a list of parents.
 

Methods in unbbayes.prs with parameters of type Node
 void Node.addChild(Node child)
           
 void Network.addNode(Node node)
          Add the node.
 void Graph.addNode(Node no)
          Adiciona novo nÔøΩ ao grafo.
 void Node.addParent(Node parent)
           
 int Node.compareTo(Node arg0)
           
 Edge Network.getEdge(Node no1, Node no2)
          Retorna o arco entre dois n√≥s caso ele exista
 int Network.hasEdge(Node no1, Node no2)
          Verifica existÔøΩncia de determinado arco.
 int Graph.hasEdge(Node no1, Node no2)
          Verifica existÔøΩncia de determinado arco.
protected  int Network.hasEdge(Node no1, Node no2, List<Edge> vetArcos)
           
 boolean Node.isChildOf(Node parent)
           
 boolean Node.isParentOf(Node child)
           
 void Node.removeChild(Node child)
           
 void Network.removeNode(Node element)
          Remove node.
 void Graph.removeNode(Node elemento)
          Remove nÔøΩ do grafo.
 void Node.removeParent(Node parent)
           
 

Method parameters in unbbayes.prs with type arguments of type Node
 void Node.setAdjacents(ArrayList<Node> adjacents)
          Sets the adjacents.
 void Node.setChildren(ArrayList<Node> children)
          Sets a new list of children.
 void Node.setParents(ArrayList<Node> parents)
          Sets a new list of parents.
 

Constructors in unbbayes.prs with parameters of type Node
Edge(Node no1, Node no2)
          Creates an edge from node1 to node2.
 

Uses of Node in unbbayes.prs.bn
 

Subclasses of Node in unbbayes.prs.bn
 class LearningNode
          Classe que define um variÔøΩvel de um banco de casos, as variÔøΩveis possuem um vetor de pais(do tipo LearningNode), um veto de estados (do tipo String), um vetor de predecessores, que sÔøΩo os candidatos a pais (do tipo LearningNode), um nome e um numero mÔøΩximo de pais.
 class ProbabilisticNode
          Represents probabilistic variable.
 class TreeVariable
          Abstract class for variables that will be shown in the tree of nodes and states with their probabilities in the compilation panel.
 

Fields in unbbayes.prs.bn with type parameters of type Node
protected  ArrayList<Node> SingleEntityNetwork.copiaNos
          CÔøΩpia dos nÔøΩs sem os nÔøΩs de utilidade.
protected  ArrayList<Node> SingleEntityNetwork.decisionNodes
          NÔøΩs de decisÔøΩo utilizado no processo de transformaÔøΩÔøΩo.
protected  ArrayList<Node> SingleEntityNetwork.oe
          Ordem de eliminaÔøΩÔøΩo dos nÔøΩs.
protected  List<Node> PotentialTable.variableList
          RVs that are in the table, including the variable that owns the table.
 

Methods in unbbayes.prs.bn that return types with arguments of type Node
 List<Node> PotentialTable.cloneVariables()
          Returns a copy of the variables in this table.
 ArrayList<Node> Clique.getAssociatedProbabilisticNodes()
          Retorna o vetor de nÔøΩs probabilÔøΩsticos associados.
 ArrayList<Node> Clique.getAssociatedUtilityNodes()
          Retorna o vetor de nÔøΩs de utilidade associados.
 ArrayList<Node> SingleEntityNetwork.getDescriptionNodes()
           
 ArrayList<Node> SingleEntityNetwork.getExplanationNodes()
           
 ArrayList<Node> Separator.getNodes()
          Retorna a lista de nÔøΩs clusterizados.
 ArrayList<Node> Clique.getNodes()
          Retorna o vetor de nÔøΩs clusterizados.
 ArrayList<Node> SingleEntityNetwork.getNodesCopy()
          Return a copy of the nodes (without utility nodes).
 ArrayList<Node> LearningNode.getPais()
          MÔøΩtodo que retorna os pais de uma variÔøΩvel.
 ArrayList<Node> LearningNode.getPredecessores()
          MÔøΩtodo que retorna os predecessores de uma variÔøΩvel, ou seja, as variÔøΩveis que podem ser pais dessa variÔøΩvel.
 

Methods in unbbayes.prs.bn with parameters of type Node
 int PotentialTable.getVariableIndex(Node variable)
           
 int PotentialTable.indexOfVariable(Node node)
           
 

Method parameters in unbbayes.prs.bn with type arguments of type Node
protected  int SingleEntityNetwork.getCliqueIndex(ArrayList<Node> listaNos, ArrayList<Node> alpha)
          SUB-FUNÔøΩÔøΩO do mÔøΩtodo arvoreForte
protected  int SingleEntityNetwork.getCliqueIndex(ArrayList<Node> listaNos, ArrayList<Node> alpha)
          SUB-FUNÔøΩÔøΩO do mÔøΩtodo arvoreForte
protected  boolean SingleEntityNetwork.minimumWeightElimination(ArrayList<Node> auxNos)
          Sub-rotina do mÔøΩtodo triangula.
 void Separator.setNodes(ArrayList<Node> nos)
          Insere uma nova lista de nÔøΩs clusterizados.
 

Uses of Node in unbbayes.prs.builder
 

Methods in unbbayes.prs.builder that return Node
 Node INodeBuilder.buildNode()
          Builds a new instance of Node
 

Uses of Node in unbbayes.prs.builder.extension
 

Methods in unbbayes.prs.builder.extension that return Node
 Node PluginNodeBuilder.buildNode()
          This method is eqivalent to #buildPluginNode().getNode()
 

Uses of Node in unbbayes.prs.builder.impl
 

Methods in unbbayes.prs.builder.impl that return Node
 Node DefaultUtilityNodeBuilder.buildNode()
           
 Node DefaultProbabilisticNodeBuilder.buildNode()
           
 Node DefaultDecisionNodeBuilder.buildNode()
           
 Node DefaultContinuousNodeBuilder.buildNode()
           
 

Uses of Node in unbbayes.prs.extension
 

Methods in unbbayes.prs.extension that return Node
 Node IPluginNode.getNode()
          Obtains a Node representation of this plugin node.
 

Uses of Node in unbbayes.prs.hybridbn
 

Subclasses of Node in unbbayes.prs.hybridbn
 class ContinuousNode
           
 

Fields in unbbayes.prs.hybridbn with type parameters of type Node
protected  List<Node> CNNormalDistribution.continuousParentList
           
protected  List<Node> CNNormalDistribution.discreteParentList
           
protected  List<Node> GaussianMixture.nodeOrderQueue
           
 

Methods in unbbayes.prs.hybridbn that return types with arguments of type Node
 List<Node> CNNormalDistribution.getContinuousParentList()
           
 List<Node> CNNormalDistribution.getDiscreteParentList()
           
 List<Node> GaussianMixture.getNodeOrderQueue()
          Return the order the nodes are in the sampled matrix.
 

Methods in unbbayes.prs.hybridbn with parameters of type Node
protected  void GaussianMixture.addAdjacentNodes(Node node, List<Node> nodeInNetwork)
           
 void ContinuousNode.addChild(Node child)
           
 void ContinuousNode.addParent(Node parent)
           
protected  Integer GaussianMixture.getIndexInQueue(Node node)
          Retrieves the node's index in the queue.
 void ContinuousNode.removeChild(Node child)
           
 void ContinuousNode.removeParent(Node parent)
           
 

Method parameters in unbbayes.prs.hybridbn with type arguments of type Node
protected  void GaussianMixture.addAdjacentNodes(Node node, List<Node> nodeInNetwork)
           
protected  void GaussianMixture.addToOrderQueue(ArrayList<Node> children, boolean[] nodeAddedList)
          Take the children of a node that have already been added to the queue.
 

Uses of Node in unbbayes.prs.id
 

Subclasses of Node in unbbayes.prs.id
 class DecisionNode
          Variavel de decisao
 class UtilityNode
          This class represents the utility node.
 

Uses of Node in unbbayes.simulation.likelihoodweighting.sampling
 

Fields in unbbayes.simulation.likelihoodweighting.sampling with type parameters of type Node
protected  List<Node> LikelihoodWeightingSampling.evidenceNodeList
           
 

Uses of Node in unbbayes.simulation.montecarlo.sampling
 

Fields in unbbayes.simulation.montecarlo.sampling with type parameters of type Node
protected  List<Node> AMonteCarloSampling.samplingNodeOrderQueue
           
 

Methods in unbbayes.simulation.montecarlo.sampling that return types with arguments of type Node
 List<Node> IMonteCarloSampling.getSamplingNodeOrderQueue()
          Return the order the nodes are in the sampled matrix.
 List<Node> AMonteCarloSampling.getSamplingNodeOrderQueue()
          Return the order the nodes are in the sampled matrix.
 

Methods in unbbayes.simulation.montecarlo.sampling with parameters of type Node
protected  Integer AMonteCarloSampling.getIndexInQueue(Node node)
          Retrieves the node's index in the queue.
 

Method parameters in unbbayes.simulation.montecarlo.sampling with type arguments of type Node
protected  void AMonteCarloSampling.addToSamplingOrderQueue(ArrayList<Node> children, boolean[] nodeAddedList)
          Take the children of a node that have already been added to the queue.
 

Uses of Node in unbbayes.util
 

Fields in unbbayes.util with type parameters of type Node
protected  List<List<Node>> GraphLayoutUtil.graphLevelMatrix
           
protected  HashMap<Node,Integer> GraphLayoutUtil.nodeIndexMap
           
 

Methods in unbbayes.util that return Node
 Node NodeList.get(int index)
          Deprecated. Returns the element at the specified position in this list.
 Node[] NodeList.getData()
          Deprecated. 
static Node[] NodeList.getData(ArrayList<Node> array)
          Deprecated.  
 Node NodeList.remove(int index)
          Deprecated. Removes the element at the specified position in this list.
 Node NodeList.set(int index, Node element)
          Deprecated. Replaces the element at the specified position in this list with the specified element.
 

Methods in unbbayes.util that return types with arguments of type Node
static ArrayList<Node> SetToolkit.clone(ArrayList<Node> conjunto)
           
static ArrayList<Node> SetToolkit.intersection(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Realiza a interseÔøΩÔøΩo entre dois conjuntos.
static ArrayList<Node> SetToolkit.union(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Make the union between two sets
 

Methods in unbbayes.util with parameters of type Node
 void NodeList.add(int index, Node element)
          Deprecated. Inserts the specified element at the specified position in this list.
 boolean NodeList.add(Node newElement)
          Deprecated. Appends the specified element to the end of this list.
 boolean NodeList.contains(Node elem)
          Deprecated. Returns true if this list contains the specified element.
 int NodeList.indexOf(Node elem)
          Deprecated. Searches for the first occurence of the given argument, testing for equality using the equals method.
 Node NodeList.set(int index, Node element)
          Deprecated. Replaces the element at the specified position in this list with the specified element.
static void NodeList.setData(ArrayList<Node> list, Node[] data)
          Deprecated. Sets the data of list with the elements of data.
 void NodeList.setData(Node[] data)
          Deprecated. 
 

Method parameters in unbbayes.util with type arguments of type Node
protected  boolean GraphLayoutUtil.addChildrenToNextLevel(ArrayList<Node> children, List<Node> nodeList)
          Take the children of a node that have already been added to the queue.
protected  boolean GraphLayoutUtil.addChildrenToNextLevel(ArrayList<Node> children, List<Node> nodeList)
          Take the children of a node that have already been added to the queue.
static ArrayList<Node> SetToolkit.clone(ArrayList<Node> conjunto)
           
static boolean NodeList.containsAll(ArrayList<Node> originalList, ArrayList<Node> testNodeList)
          Deprecated.  
static boolean NodeList.containsAll(ArrayList<Node> originalList, ArrayList<Node> testNodeList)
          Deprecated.  
static Node[] NodeList.getData(ArrayList<Node> array)
          Deprecated.  
static ArrayList<Node> SetToolkit.intersection(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Realiza a interseÔøΩÔøΩo entre dois conjuntos.
static ArrayList<Node> SetToolkit.intersection(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Realiza a interseÔøΩÔøΩo entre dois conjuntos.
static boolean NodeList.removeAll(ArrayList<Node> originalList, ArrayList<Node> removeNodesList)
          Deprecated. Remove from originalList all nodes that are present in removeNodesList
static boolean NodeList.removeAll(ArrayList<Node> originalList, ArrayList<Node> removeNodesList)
          Deprecated. Remove from originalList all nodes that are present in removeNodesList
static boolean NodeList.retainAll(ArrayList<Node> originalList, ArrayList<Node> testNodeList)
          Deprecated. Remove from the originalList all nodes that don't exists in testNodeList
static boolean NodeList.retainAll(ArrayList<Node> originalList, ArrayList<Node> testNodeList)
          Deprecated. Remove from the originalList all nodes that don't exists in testNodeList
static void NodeList.setData(ArrayList<Node> list, Node[] data)
          Deprecated. Sets the data of list with the elements of data.
static void SortUtil.sortNodeListByDescription(List<Node> nodeList)
          Responsible for ordering the given node list by the node's description.
static void SortUtil.sortNodeListByName(List<Node> nodeList)
          Responsible for ordering the given node list by the node's name.
static ArrayList<Node> SetToolkit.union(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Make the union between two sets
static ArrayList<Node> SetToolkit.union(ArrayList<Node> conjuntoA, ArrayList<Node> conjuntoB)
          Make the union between two sets
 



Copyright © 2001-2010 University of Brasilia - UnB. All Rights Reserved.