def u_shape(units: tf.Tensor,<EOL>n_hidden_list: List,<EOL>filter_width=<NUM_LIT:7>,<EOL>use_batch_norm=False,<EOL>training_ph=None):
<EOL>units_for_skip_conn = []<EOL>conv_net_params = {'<STR_LIT>': filter_width,<EOL>'<STR_LIT>': use_batch_norm,<EOL>'<STR_LIT>': training_ph}<EOL>for n_hidden in n_hidden_list:<EOL><INDENT>units = stacked_cnn(units, [n_hidden], **conv_net_params)<EOL>units_for_skip_conn.append(units)<EOL>units = tf.layers.max_pooling1d(units, pool_size=<NUM_LIT:2>, strides=<NUM_LIT:2>, padding='<STR_LIT>')<EOL><DEDENT>units = stacked_cnn(units, [n_hidden], **conv_net_params)<EOL>for down_step, n_hidden in enumerate(n_hidden_list[::-<NUM_LIT:1>]):<EOL><INDENT>units = tf.expand_dims(units, axis=<NUM_LIT:2>)<EOL>units = tf.layers.conv2d_transpose(units, n_hidden, filter_width, strides=(<NUM_LIT:2>, <NUM_LIT:1>), padding='<STR_LIT>')<EOL>units = tf.squeeze(units, axis=<NUM_LIT:2>)<EOL>skip_units = units_for_skip_conn[-(down_step + <NUM_LIT:1>)]<EOL>if skip_units.get_shape().as_list()[-<NUM_LIT:1>] != n_hidden:<EOL><INDENT>skip_units = tf.layers.dense(skip_units, n_hidden)<EOL><DEDENT>units = skip_units + units<EOL>units = stacked_cnn(units, [n_hidden], **conv_net_params)<EOL><DEDENT>return units<EOL>
Network architecture inspired by One Hundred layer Tiramisu.
        https://arxiv.org/abs/1611.09326. U-Net like.

        Args:
            units: a tensorflow tensor with dimensionality [None, n_tokens, n_features]
            n_hidden_list: list with number of hidden units at the ouput of each layer
            filter_width: width of the kernel in tokens
            use_batch_norm: whether to use batch normalization between layers
            training_ph: boolean placeholder determining whether is training phase now or not.
                It is used only for batch normalization to determine whether to use
                current batch average (std) or memory stored average (std)
        Returns:
            units: tensor at the output of the last convolutional layer
                    with dimensionality [None, n_tokens, n_hidden_list[-1]]