# Path: deep_architect/contrib/misc/search_spaces/tensorflow/common.py
# D = hp.Discrete


import deep_architect.contrib.misc.search_spaces.tensorflow.dnn as css_dnn
import deep_architect.contrib.misc.search_spaces.tensorflow.cnn2d as css_cnn2d
import deep_architect.modules as mo
from deep_architect.contrib.misc.search_spaces.tensorflow.common import D


def get_dnn_search_space_fn(num_classes):
    return mo.SearchSpaceFactory(
        lambda: css_dnn.dnn_net(num_classes)).get_search_space


def get_conv_search_space_fn(num_classes):

    def search_space_fn():
        h_num_spatial_reductions = D([2, 3, 4])

# Path: deep_architect/contrib/misc/search_spaces/tensorflow/common.py
# D = hp.Discrete


# Path: examples/benchmarks/search_spaces.py
import deep_architect.contrib.misc.search_spaces.tensorflow.dnn as css_dnn
import deep_architect.contrib.misc.search_spaces.tensorflow.cnn2d as css_cnn2d
import deep_architect.modules as mo
from deep_architect.contrib.misc.search_spaces.tensorflow.common import D



def get_dnn_search_space_fn(num_classes):
    return mo.SearchSpaceFactory(
        lambda: css_dnn.dnn_net(num_classes)).get_search_space


def get_conv_search_space_fn(num_classes):

    def search_space_fn():
        h_num_spatial_reductions = D([2, 3, 4])

        h_pool_op = D(['max', 'avg'])