# Path: disentanglement_lib/config/study.py
# class Study(object):
#   def get_model_config(self, model_num=0):
#   def print_model_config(self, model_num=0):
#   def get_postprocess_config_files(self):
#   def print_postprocess_config(self):
#   def get_eval_config_files(self):
#   def print_eval_config(self):
# 
# Path: disentanglement_lib/utils/resources.py
# def get_file(path):
# def get_files_in_folder(path):


from disentanglement_lib.config import study
from disentanglement_lib.utils import resources
from six.moves import range
import disentanglement_lib.utils.hyperparams as h
  return all_models


def get_config():
  """Returns the hyperparameter configs for different experiments."""
  arch_enc = h.fixed("encoder.encoder_fn", "@conv_encoder", length=1)
  arch_dec = h.fixed("decoder.decoder_fn", "@deconv_decoder", length=1)
  architecture = h.zipit([arch_enc, arch_dec])
  return h.product([
      get_datasets(),
      architecture,
      get_default_models(),
      get_seeds(50),
  ])


class FairnessStudyV1(study.Study):
  """Defines the study for the paper."""

  def get_model_config(self, model_num=0):
    """Returns model bindings and config file."""
    config = get_config()[model_num]
    model_bindings = h.to_bindings(config)
    model_config_file = resources.get_file(
        "config/fairness_study_v1/model_configs/shared.gin")
    return model_bindings, model_config_file

  def get_postprocess_config_files(self):
    """Returns postprocessing config files."""
    return list(

# Path: disentanglement_lib/config/study.py
# class Study(object):
#   def get_model_config(self, model_num=0):
#   def print_model_config(self, model_num=0):
#   def get_postprocess_config_files(self):
#   def print_postprocess_config(self):
#   def get_eval_config_files(self):
#   def print_eval_config(self):
# 
# Path: disentanglement_lib/utils/resources.py
# def get_file(path):
# def get_files_in_folder(path):


# Path: disentanglement_lib/config/fairness_study_v1/sweep.py
from disentanglement_lib.config import study
from disentanglement_lib.utils import resources
from six.moves import range
import disentanglement_lib.utils.hyperparams as h

  return all_models


def get_config():
  """Returns the hyperparameter configs for different experiments."""
  arch_enc = h.fixed("encoder.encoder_fn", "@conv_encoder", length=1)
  arch_dec = h.fixed("decoder.decoder_fn", "@deconv_decoder", length=1)
  architecture = h.zipit([arch_enc, arch_dec])
  return h.product([
      get_datasets(),
      architecture,
      get_default_models(),
      get_seeds(50),
  ])


class FairnessStudyV1(study.Study):
  """Defines the study for the paper."""

  def get_model_config(self, model_num=0):
    """Returns model bindings and config file."""
    config = get_config()[model_num]
    model_bindings = h.to_bindings(config)
    model_config_file = resources.get_file(
        "config/fairness_study_v1/model_configs/shared.gin")
    return model_bindings, model_config_file

  def get_postprocess_config_files(self):
    """Returns postprocessing config files."""
    return list(

        resources.get_files_in_folder(