improved extraction rules