extracting patterns