add key parsing