+ independent text extraction update