# Buggy code
def category_map(self):
    return odict(
        (
            (
                "Channel Configuration",
                (
                    "channels",
                    "channel_alias",
                    "default_channels",
                    "override_channels_enabled",
                    "whitelist_channels",
                    "custom_channels",
                    "custom_multichannels",
                    "migrated_channel_aliases",
                    "migrated_custom_channels",
                    "add_anaconda_token",
                    "allow_non_channel_urls",
                ),
            ),
            (
                "Basic Conda Configuration",
                (  # TODO: Is there a better category name here?
                    "env_prompt",
                    "envs_dirs",
                    "pkgs_dirs",
                ),
            ),
            (
                "Network Configuration",
                (
                    "client_ssl_cert",
                    "client_ssl_cert_key",
                    "local_repodata_ttl",
                    "offline",
                    "proxy_servers",
                    "remote_connect_timeout_secs",
                    "remote_max_retries",
                    "remote_read_timeout_secs",
                    "ssl_verify",
                ),
            ),
            (
                "Solver Configuration",
                (
                    "aggressive_update_packages",
                    "auto_update_conda",
                    "channel_priority",
                    "create_default_packages",
                    "disallowed_packages",
                    "pinned_packages",
                    "track_features",
                    "prune",
                    "force_reinstall",
                ),
            ),
            (
                "Package Linking and Install-time Configuration",
                (
                    "allow_softlinks",
                    "always_copy",
                    "always_softlink",
                    "path_conflict",
                    "rollback_enabled",
                    "safety_checks",
                    "extra_safety_checks",
                    "shortcuts",
                    "non_admin_enabled",
                ),
            ),
            (
                "Conda-build Configuration",
                (
                    "bld_path",
                    "croot",
                    "anaconda_upload",
                    "conda_build",
                ),
            ),
            (
                "Output, Prompt, and Flow Control Configuration",
                (
                    "always_yes",
                    "auto_activate_base",
                    "changeps1",
                    "json",
                    "notify_outdated_conda",
                    "quiet",
                    "report_errors",
                    "show_channel_urls",
                    "verbosity",
                ),
            ),
            (
                "CLI-only",
                (
                    "deps_modifier",
                    "update_modifier",
                    "force",
                    "force_remove",
                    "clobber",
                    "dry_run",
                    "download_only",
                    "ignore_pinned",
                    "use_index_cache",
                    "use_local",
                ),
            ),
            (
                "Hidden and Undocumented",
                (
                    "allow_cycles",  # allow cyclical dependencies, or raise
                    "allow_conda_downgrades",
                    "add_pip_as_python_dependency",
                    "debug",
                    "default_python",
                    "enable_private_envs",
                    "error_upload_url",  # should remain undocumented
                    "featureless_minimization_disabled_feature_flag",
                    "force_32bit",
                    "pip_interop_enabled",  # temporary feature flag
                    "root_prefix",
                    "sat_solver",
                    "solver_ignore_timestamps",
                    "subdir",
                    "subdirs",
                    # https://conda.io/docs/config.html#disable-updating-of-dependencies-update-dependencies # NOQA
                    # I don't think this documentation is correct any longer. # NOQA
                    "target_prefix_override",
                    # used to override prefix rewriting, for e.g. building docker containers or RPMs  # NOQA
                ),
            ),
        )
    )


# Traceback (RuntimeError)
error: RuntimeError('Could not run any SAT solver.')
command: C:\Tools\Progs\python\anaconda3\scripts\conda-script.py install -p C:\Tools\Progs\python\anaconda3 -y anaconda-client==1.7.2
user_agent: conda/4.6.1 requests/2.21.0 CPython/3.7.1 Windows/10 Windows/10.0.15063
_messageid: -9223372036617369659
_messagetime: 1548779675918 / 2019-01-29 10:34:35

Traceback (most recent call last):
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\exceptions.py", line 1001, in __call__
return func(*args, **kwargs)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\cli\main.py", line 84, in _main
exit_code = do_call(args, p)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 81, in do_call
exit_code = getattr(module, func_name)(args, parser)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\cli\main_install.py", line 21, in execute
install(args, parser, 'install')
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\cli\install.py", line 250, in install
force_reinstall=context.force_reinstall or context.force,
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\core\solve.py", line 107, in solve_for_transaction
force_remove, force_reinstall)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\core\solve.py", line 145, in solve_for_diff
force_remove)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\core\solve.py", line 240, in solve_final_state
ssc = self._find_inconsistent_packages(ssc)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\core\solve.py", line 342, in _find_inconsistent_packages
_, inconsistent_precs = ssc.r.bad_installed(ssc.solution_precs, ())
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\resolve.py", line 896, in bad_installed
C = r2.gen_clauses()
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\common\io.py", line 85, in decorated
return f(*args, **kwds)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\resolve.py", line 668, in gen_clauses
C = Clauses(sat_solver_cls=get_sat_solver_cls(context.sat_solver))
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\_vendor\auxlib\decorators.py", line 56, in _memoized_func
result = func(*args, **kwargs)
File "C:\Tools\Progs\python\anaconda3\lib\site-packages\conda\common\logic.py", line 293, in get_sat_solver_cls
raise RuntimeError('Could not run any SAT solver.')
RuntimeError: Could not run any SAT solver.

# Fixed code
def category_map(self):
    return odict(
        (
            (
                "Channel Configuration",
                (
                    "channels",
                    "channel_alias",
                    "default_channels",
                    "override_channels_enabled",
                    "whitelist_channels",
                    "custom_channels",
                    "custom_multichannels",
                    "migrated_channel_aliases",
                    "migrated_custom_channels",
                    "add_anaconda_token",
                    "allow_non_channel_urls",
                ),
            ),
            (
                "Basic Conda Configuration",
                (  # TODO: Is there a better category name here?
                    "envs_dirs",
                    "pkgs_dirs",
                ),
            ),
            (
                "Network Configuration",
                (
                    "client_ssl_cert",
                    "client_ssl_cert_key",
                    "local_repodata_ttl",
                    "offline",
                    "proxy_servers",
                    "remote_connect_timeout_secs",
                    "remote_max_retries",
                    "remote_read_timeout_secs",
                    "ssl_verify",
                ),
            ),
            (
                "Solver Configuration",
                (
                    "aggressive_update_packages",
                    "auto_update_conda",
                    "channel_priority",
                    "create_default_packages",
                    "disallowed_packages",
                    "pinned_packages",
                    "track_features",
                    "prune",
                    "force_reinstall",
                ),
            ),
            (
                "Package Linking and Install-time Configuration",
                (
                    "allow_softlinks",
                    "always_copy",
                    "always_softlink",
                    "path_conflict",
                    "rollback_enabled",
                    "safety_checks",
                    "extra_safety_checks",
                    "shortcuts",
                    "non_admin_enabled",
                ),
            ),
            (
                "Conda-build Configuration",
                (
                    "bld_path",
                    "croot",
                    "anaconda_upload",
                    "conda_build",
                ),
            ),
            (
                "Output, Prompt, and Flow Control Configuration",
                (
                    "always_yes",
                    "auto_activate_base",
                    "changeps1",
                    "env_prompt",
                    "json",
                    "notify_outdated_conda",
                    "quiet",
                    "report_errors",
                    "show_channel_urls",
                    "verbosity",
                ),
            ),
            (
                "CLI-only",
                (
                    "deps_modifier",
                    "update_modifier",
                    "force",
                    "force_remove",
                    "clobber",
                    "dry_run",
                    "download_only",
                    "ignore_pinned",
                    "use_index_cache",
                    "use_local",
                ),
            ),
            (
                "Hidden and Undocumented",
                (
                    "allow_cycles",  # allow cyclical dependencies, or raise
                    "allow_conda_downgrades",
                    "add_pip_as_python_dependency",
                    "debug",
                    "default_python",
                    "enable_private_envs",
                    "error_upload_url",  # should remain undocumented
                    "featureless_minimization_disabled_feature_flag",
                    "force_32bit",
                    "pip_interop_enabled",  # temporary feature flag
                    "root_prefix",
                    "sat_solver",
                    "solver_ignore_timestamps",
                    "subdir",
                    "subdirs",
                    # https://conda.io/docs/config.html#disable-updating-of-dependencies-update-dependencies # NOQA
                    # I don't think this documentation is correct any longer. # NOQA
                    "target_prefix_override",
                    # used to override prefix rewriting, for e.g. building docker containers or RPMs  # NOQA
                ),
            ),
        )
    )