code: def setUp(self):
      super(CategoricalDistDoubleQLearningTest, self).setUp()
  
      self.q_t_selector = tf.constant(
          [
              [0, 2, 0, 5],
              [0, 1, 2, 1],
              [0, 2, 5, 0],
              [0, 1, 2, 1],
              [1, 2, 3, 1],
          ],
          dtype=tf.float32,
      )
  
      self.inputs = [
          self.atoms_tm1,
          self.logits_q_tm1,
          self.a_tm1,
          self.r_t,
          self.pcont_t,
          self.atoms_t,
          self.logits_q_t,
          self.q_t_selector,
      ]
      self.qlearning = rl.categorical_dist_double_qlearning(
          *self.inputs
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import tensorflow.compat.v1
  from trfl import dist_value_ops
label_desc: Use image node_id 1 for calling the CategoricalDistDoubleQLearningTest obj's underlying member method code with example usage: obj.setUp() without return types