update add key func