updated extractor