# Path: morph_net/testing/op_regularizer_stub.py
# class OpRegularizerStub(generic_regularizers.OpRegularizer):
# class OpRegularizerStubFactory(object):
#   def __init__(self, regularization_vector, alive_vector):
#   def regularization_vector(self):
#   def alive_vector(self):
#   def __init__(self, alive_stub_dict, reg_stub_dict):
#   def _create_stub(self, key):
#   def create_conv2d_regularizer(self, conv_op, manager=None):
# def image_stub():


from morph_net.testing import op_regularizer_stub
from tensorflow.contrib import layers as contrib_layers
import tensorflow.compat.v1 as tf
from __future__ import division
from __future__ import print_function


layers = contrib_layers

ALIVE_STUB = {
    'conv1': [False, True, True],
    'conv2': [False, True, True],
    'conv3': [False, True, True],
    'conv4': [False, True, True],
}


REG_STUB = {
    'conv1': [0.1, 0.3, 0.6],
    'conv2': [0.1, 0.3, 0.6],
    'conv3': [0.1, 0.3, 0.6],
    'conv4': [0.1, 0.3, 0.6],
}


MOCK_REG_DICT = {
    'Conv2D':
        op_regularizer_stub.OpRegularizerStubFactory(ALIVE_STUB, REG_STUB)
        .create_conv2d_regularizer
}


def image_stub():

# Path: morph_net/testing/op_regularizer_stub.py
# class OpRegularizerStub(generic_regularizers.OpRegularizer):
# class OpRegularizerStubFactory(object):
#   def __init__(self, regularization_vector, alive_vector):
#   def regularization_vector(self):
#   def alive_vector(self):
#   def __init__(self, alive_stub_dict, reg_stub_dict):
#   def _create_stub(self, key):
#   def create_conv2d_regularizer(self, conv_op, manager=None):
# def image_stub():


# Path: morph_net/testing/ladder_model_stub.py
from morph_net.testing import op_regularizer_stub
from tensorflow.contrib import layers as contrib_layers
import tensorflow.compat.v1 as tf

from __future__ import division
from __future__ import print_function


layers = contrib_layers

ALIVE_STUB = {
    'conv1': [False, True, True],
    'conv2': [False, True, True],
    'conv3': [False, True, True],
    'conv4': [False, True, True],
}


REG_STUB = {
    'conv1': [0.1, 0.3, 0.6],
    'conv2': [0.1, 0.3, 0.6],
    'conv3': [0.1, 0.3, 0.6],
    'conv4': [0.1, 0.3, 0.6],
}


MOCK_REG_DICT = {
    'Conv2D':
        op_regularizer_stub.OpRegularizerStubFactory(ALIVE_STUB, REG_STUB)
        .create_conv2d_regularizer
}


def image_stub():

  return op_regularizer_stub.image_stub()