<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def hybrid_forward(self, F, inputs, mask=None):
 # pylint: disable=arguments-differ r""" Forward computation for char_encoder Parameters inputs: NDArray The input tensor is of shape `(seq_len, batch_size, embedding_size)` TNC. mask: NDArray The mask applied to the input of shape `(seq_len, batch_size)`, the mask will be broadcasted along the embedding dimension. Returns output: NDArray The output of the encoder with shape `(batch_size, output_size)` """

        if mask is not None:
            inputs = F.broadcast_mul(inputs, mask.expand_dims(-1))

        inputs = F.transpose(inputs, axes=(1, 2, 0))

        output = self._convs(inputs)

        if self._highways:
            output = self._highways(output)

        if self._projection:
            output = self._projection(output)

        return output