pattern extraction