public void insert(int key)
	{
		if (!contains(key))
		{
			Node_Nunez newNode = new Node_Nunez(key);

			// insert parent node
			if (size() == 0)
			{
				binaryTree.add(newNode);
			}
			else
			{
				Node_Nunez parentNode = getRootNode();
				Node_Nunez currentNode = getRootNode();

				// search for next available node position in bst
				while (currentNode != null)
				{
					parentNode = currentNode;

					if (key < currentNode.getKey())
					{
						currentNode = currentNode.getLeftNode();
					}
					else
					{
						currentNode = currentNode.getRightNode();
					}
				}

				// store new node in next available bst position
				if (key < parentNode.getKey())
				{
					newNode.setParentNode(parentNode);
					parentNode.setLeftNode(newNode);
				}
				else
				{
					newNode.setParentNode(parentNode);
					parentNode.setRightNode(newNode);
				}

				binaryTree.add(newNode);
			}
		}
	}