add struct TextPosition