implementation text selectioner