import tensorflow as tf

            self.saver = tf.train.Saver(tf.global_variables())

    def _get_lstm_cell(self, config, is_training):
        if config.rnn_mode == BASIC:
            return tf.contrib.rnn.BasicLSTMCell(
                config.hidden_size, forget_bias=0., state_is_tuple=True,
                reuse=not is_training)
        if config.rnn_mode == BLOCK:
            return tf.contrib.rnn.LSTMBlockCell(
                config.hidden_size, forget_bias=0.)
        raise ValueError('rnn_mode {} not supported'.format(config.rnn_mode))


    def _build_rnn_graph(self, inputs, config, is_training):
        def make_cell():
            cell = self._get_lstm_cell(config, is_training)
