add feature extraction part