private function flatten( $input, $depth = 0, $startIndex = 0 )
	{
		$result = array();

		if ( ! is_array( $input ) ) return $result;

		foreach ( $input as $key => $item )
		{
			if ( is_array( $item ) )
			{
				$x = $this->flatten( $item, $depth + 1, $startIndex );
				$result = $result + $x;
				$startIndex += count( $x );
			}
			else
			{
				$result[ $startIndex ] = str_repeat( "\t", $depth ) . $item;
				$startIndex++;
			}
		}

		return $result;
	}