# File rexml/text.rb, line 30
  def initialize(arg, respect_whitespace=false, parent=nil, pattern=PATTERN, raw=false)
			@raw = raw
			if parent
				if parent == true
					@raw = true
					@parent = nil
				elsif parent.kind_of? Parent
					super( parent )
					@raw = parent.raw
				end
			else
				@parent = nil
			end
			if arg.kind_of? Source
				# OPTIMIZE
				# We've got two lines to do one search.  Can we improve this?
				arg.match(PATTERN_SEARCH)
				md = arg.match(pattern, true)
				raise "no text to add" if md[0].length == 0
				@string = md[1]
				@string.squeeze!(" \n\t") unless respect_whitespace
				@normalized = true
				#@string = Node::read_with_substitution(@string, ILLEGAL) unless @raw
			elsif arg.kind_of? String
				@string = arg.clone
				@string.squeeze!(" \n\t") unless respect_whitespace
				@normalized = false
				#@string = Text::normalize(@string) unless @raw
				#@string = Node::read_with_substitution(@string) unless @raw
			elsif arg.kind_of? Text
				@string = arg.string
				@raw = arg.raw
				@normalized = true
			elsif arg.kind_of? Parent
				super( arg )
			elsif [true,false].include? arg
				@raw = arg
			end
		end