func (t *TagHarvester) HandleToken(l *lex.Lexer, o io.Writer) error {
	switch l.Token() {
	case lex.TagTok:
		tag := l.Field(1)
		io.WriteString(o, l.Line())
		l.Consume()
		var mark int
		_, err := fmt.Sscanf(l.Line(), "from :%d\n", &mark)
		if err != nil {
			return fmt.Errorf("invalid 'from' line: %s", l.Line())
		}
		t.TagToMark[tag] = mark

		io.WriteString(o, l.Line())
		l.Consume()

	default:
		io.WriteString(o, l.Line())
		l.Consume()
	}
	return nil
}