 
 : (rawtext-state) ( document n/f string ch/f -- document n'/f string )
     {
-        [ unimplemented* ]
+        { [ dup CHAR: < = ] [ drop rawtext-less-than-sign-state ] }
+        { [ dup CHAR: \0 = ] [ drop unexpected-null-character ] }
+        { [ dup f = ] [ drop pick emit-eof ] }
+        [ reach emit-char rawtext-state ]
     } cond ;
 
 : rawtext-state ( document n/f string -- document n'/f string )


: (script-data-escaped-end-tag-name-state) ( document n/f string ch/f -- document n'/f string )
    {
        [ unimplemented* ]
    } cond ;

: script-data-escaped-end-tag-name-state ( document n/f string -- document n'/f string )


: (script-data-escape-start-state) ( document n/f string ch/f -- document n'/f string )
    {
        { [ dup CHAR: - = ] [ drop script-data-escape-start-dash-state ] }
        [ (script-data-state) ]
    } cond ;

: script-data-escape-start-state ( document n/f string -- document n'/f string )
