public function render()
	{
		// set the group's render flag to false
		$this->isRendered = false;
		
		// loop through the group's children
		foreach ($this->children as $k => $child) {
			// get the child's (starting) style...
			//
			// if this child is the first-child, it inherits the group's style; otherwise, 
			//     it inherits the previous child's (ending) style
			//
			if ($k == 0) {
				$style = $this->style;
			} else {
				$previous = $this->children[$k - 1];
				$style = $previous->getStyle();
			}
			
			// set the child's style...
			//
			// be sure to clone the style to create a distinct copy of the child's state;
			//     otherwise, changes to the child's state will affect the group's state,
			//     and the group's (ending) state will be the last child's (ending) state
			//
			$child->setStyle(clone $style);
			
			// if the child is a group, render it
			// otherwise, if the child is a control word or symbol, run it
			//
			if ($child instanceof Group) {
				$child->render();
			} elseif ($child instanceof Control\Control) {
				$child->run();
			}
			
			// finally, merge the (ending) state of the current child with the (ending)
			//     state of the previous sibling (to save memory)
			//	
			$child->getStyle()->merge($style);
		}
		
		// set the group's flag to true
		$this->isRendered = true;
		
		return;
	}