Add idf func