add ipp functions