starting to redefine PP functions