# Path: util/logger.py
# class _MyFormatter(logging.Formatter):
#     def format(self, record):
# def set_file_handler(path=None, prefix='', time_str=''):
# _LOGGING_METHOD = ['info', 'warning', 'error', 'critical',
#                    'warn', 'exception', 'debug']
# 
# Path: graph_util/structure_mapper.py
# _BASE_DIR = init_path.get_base_dir()
# def map_output(transfer_env, i_value, added_constant, gnn_option_list):
# def map_input(transfer_env, i_value, added_constant, gnn_option_list):
# def map_transfer_env_running_mean(ienv, oenv, running_mean_info,
#                                   observation_size,
#                                   gnn_node_option, root_connection_option,
#                                   gnn_output_option, gnn_embedding_option):


import init_path
import numpy as np
import os
from util import logger
from graph_util import structure_mapper
                sess.run(assign_op)  # or `assign_op.op.run()`
        else:
            logger.warning('\t\t**** Parameters Not Exist **** {}'.format(name))

    if len(tf_name_list) > 0:
        logger.warning(
            'Some parameters are not load from the checkpoint: {}'.format(
                tf_name_list
            )
        )


def load_numpy_model(model_path, numpy_var_list={}):
    '''
        @brief: load numpy variables from npy files. The variables could be
            from baseline or from ob_normalizer
        @output:
            It is worth mentioning that this function only returns the value,
            but won't load the value (while the tf variables will be loaded at
            the same time)
    '''
    is_file_valid(model_path)
    logger.info('LOADING numpy variables')

    output_save_list = np.load(model_path, encoding='latin1').item()
    numpy_name_list = [key for key, val in numpy_var_list.items()]

    # get the weights one by one
    for name, val in output_save_list.items():
        if name in numpy_name_list:

# Path: util/logger.py
# class _MyFormatter(logging.Formatter):
#     def format(self, record):
# def set_file_handler(path=None, prefix='', time_str=''):
# _LOGGING_METHOD = ['info', 'warning', 'error', 'critical',
#                    'warn', 'exception', 'debug']
# 
# Path: graph_util/structure_mapper.py
# _BASE_DIR = init_path.get_base_dir()
# def map_output(transfer_env, i_value, added_constant, gnn_option_list):
# def map_input(transfer_env, i_value, added_constant, gnn_option_list):
# def map_transfer_env_running_mean(ienv, oenv, running_mean_info,
#                                   observation_size,
#                                   gnn_node_option, root_connection_option,
#                                   gnn_output_option, gnn_embedding_option):


# Path: util/model_saver.py
import init_path
import numpy as np
import os
from util import logger
from graph_util import structure_mapper

                sess.run(assign_op)  # or `assign_op.op.run()`
        else:
            logger.warning('\t\t**** Parameters Not Exist **** {}'.format(name))

    if len(tf_name_list) > 0:
        logger.warning(
            'Some parameters are not load from the checkpoint: {}'.format(
                tf_name_list
            )
        )


def load_numpy_model(model_path, numpy_var_list={}):
    '''
        @brief: load numpy variables from npy files. The variables could be
            from baseline or from ob_normalizer
        @output:
            It is worth mentioning that this function only returns the value,
            but won't load the value (while the tf variables will be loaded at
            the same time)
    '''
    is_file_valid(model_path)
    logger.info('LOADING numpy variables')

    output_save_list = np.load(model_path, encoding='latin1').item()
    numpy_name_list = [key for key, val in numpy_var_list.items()]

    # get the weights one by one
    for name, val in output_save_list.items():
        if name in numpy_name_list:

            logger.info(