Use KeyValGateway always, should we remove it as a parameter?