Type Extractor rewritten