adding updated BIP32 key derivation code