@neural_computation<EOL><INDENT>def get_step_inputs(self, input_var, states=None, mask=None, additional_inputs=None):<DEDENT>
step_inputs = {}<EOL>if self._input_type == "<STR_LIT>":<EOL><INDENT>if not additional_inputs:<EOL><INDENT>additional_inputs = []<EOL><DEDENT>if mask:<EOL><INDENT>step_inputs['<STR_LIT>'] = mask.dimshuffle(<NUM_LIT:1>, <NUM_LIT:0>)<EOL><DEDENT>step_inputs.update(self.merge_inputs(input_var, additional_inputs=additional_inputs))<EOL><DEDENT>else:<EOL><INDENT>if additional_inputs:<EOL><INDENT>step_inputs.update(self.merge_inputs(None, additional_inputs=additional_inputs))<EOL><DEDENT><DEDENT>if states:<EOL><INDENT>for name in self.state_names:<EOL><INDENT>step_inputs[name] = states[name]<EOL><DEDENT><DEDENT>return step_inputs<EOL>
:type input_var: T.var
:rtype: dict