diff --git a/datok.go b/datok.go
index f804bf0..7e5a36d 100644
--- a/datok.go
+++ b/datok.go
@@ -951,6 +951,15 @@
 			}
 		}
 
+		if eot {
+			eot = false
+			textEnd = true
+			w.TextEnd(0)
+			if DEBUG {
+				fmt.Println("END OF TEXT")
+			}
+		}
+
 		// Rewind the buffer if necessary
 		if rewindBuffer {
 
@@ -976,15 +985,6 @@
 			}
 		}
 
-		if eot {
-			eot = false
-			textEnd = true
-			w.TextEnd(0)
-			if DEBUG {
-				fmt.Println("END OF TEXT")
-			}
-		}
-
 		// Move to representative state
 		if ta.isSeparate() {
 			t = ta.getBase()
diff --git a/matrix.go b/matrix.go
index 2ac31c3..3a06951 100644
--- a/matrix.go
+++ b/matrix.go
@@ -503,6 +503,16 @@
 			}
 		}
 
+		if eot {
+			eot = false
+			textEnd = true
+			w.TextEnd(buffc)
+			rewindBuffer = true
+			if DEBUG {
+				fmt.Println("END OF TEXT")
+			}
+		}
+
 		// Rewind the buffer if necessary
 		if rewindBuffer {
 
@@ -528,14 +538,6 @@
 			}
 		}
 
-		if eot {
-			eot = false
-			textEnd = true
-			w.TextEnd(buffc)
-			if DEBUG {
-				fmt.Println("END OF TEXT")
-			}
-		}
 		t &= ^FIRSTBIT
 
 		newchar = true
diff --git a/token_writer.go b/token_writer.go
index d75b261..9f4088a 100644
--- a/token_writer.go
+++ b/token_writer.go
@@ -48,6 +48,7 @@
 			// TODO:
 			//   Store in []uint16
 			//   and write to string
+
 			posC += offset
 			pos = append(pos, posC)
 			posC += len(buf) - offset
@@ -79,7 +80,7 @@
 			}
 			writer.WriteRune('\n')
 
-			posC = 0 - offset
+			posC = 0
 			pos = pos[:0]
 		}
 	} else {
diff --git a/token_writer_test.go b/token_writer_test.go
index 71524fb..291c3b9 100644
--- a/token_writer_test.go
+++ b/token_writer_test.go
@@ -49,4 +49,11 @@
 
 	matStr := w.String()
 	assert.Equal("This\n.\n\n0 4 4 5\nAnd\n.\n\n0 3 3 4\n", matStr)
+
+	w.Reset()
+	mat.TransduceTokenWriter(strings.NewReader("\nThis.\x0a\x04\nAnd.\n\x04\n"), tws)
+
+	matStr = w.String()
+	assert.Equal("This\n.\n\n1 5 5 6\nAnd\n.\n\n1 4 4 5\n", matStr)
+
 }
