def store(self, store=None, usage='both', mech=None,
              overwrite=False, set_default=False):
        if store is None:
            if rcred_rfc5588 is None:
                raise NotImplementedError("Your GSSAPI implementation does "
                                          "not have support for RFC 5588")
            return rcred_rfc5588.store_cred(self, usage, mech,
                                            overwrite, set_default)
        else:
            if rcred_cred_store is None:
                raise NotImplementedError("Your GSSAPI implementation does "
                                          "not have support for manipulating "
                                          "credential stores directly")
            store = _encode_dict(store)
            return rcred_cred_store.store_cred_into(store, self, usage, mech,
                                                    overwrite, set_default)