implemented exonphaser