import tensorflow as tf

        num_out_blocks = tf.size(unused_indices)

        # Select only unused blocks
        with tf.variable_scope('select'):
            stacked_blocks = tf.stack(cell_inputs + blocks)
            out_blocks = tf.gather(stacked_blocks, unused_indices, axis=0)
            out_blocks = tf.transpose(out_blocks, (1, 2, 3, 0, 4))

        # Combine to constant channels
        with tf.variable_scope('combine'):
            W = self._make_var('W', (ni, block_ch * block_ch))
            W = tf.gather(W, unused_indices, axis=0)
