import tensorflow as tf

            # print('vnet scope T/R', is_train, reuse_unet)
            encoderscope = 'unet_enc'
            decoderscope = 'unet_dec'
            reuse_encoder = reuse_unet
            reuse_decoder = reuse_unet
        
        print([encoderscope, ' ', decoderscope])

        # ===============================================================================ENCODER
        with tf.variable_scope(encoderscope) as scope:
            if reuse_encoder: scope.reuse_variables()

            with tf.variable_scope('color_encoder'):
                X = encoder_conf('eI', I[:, :, :, :-1], 96, 5, 1, norm, reuse_encoder, is_train, self.args.dropout) # 128 > 124
                X0 = encoder_conf('d0', X, 96, 2, 2, norm, reuse_encoder, is_train, self.args.dropout)              # 124 > 62  @2
                X = encoder_conf('e1', X0, 128, 3, 1, norm, reuse_encoder, is_train, self.args.dropout)             # 62  > 60
                X_EARLY = X
                X1 = encoder_conf('d1', X, 128, 2, 2, norm, reuse_encoder, is_train, self.args.dropout)             # 60  > 30  @4
                X = encoder_conf('e2', X1, 256, 3, 1, norm, reuse_encoder, is_train, self.args.dropout)             # 30  > 28
                X2 = encoder_conf('d2', X, 256, 2, 2, norm, reuse_encoder, is_train, self.args.dropout)             # 28  > 14  @8
                X = encoder_conf('e3', X2, 512, 3, 1, norm, reuse_encoder, is_train, self.args.dropout)             # 14  > 12
                X_MIDDLE = X

        # ===============================================================================DECODER
