text selection restructured