updating pn derivation