def receive(self, input):
        if IRichInput.providedBy(input):
            symbol = input.symbol()
            if not isinstance(input, self._richInputs):
                raise IllegalInput(symbol)
            outputs = self._fsm.receive(symbol)
        else:
            # if it's not a symbol, the underlying FSM will raise IllegalInput
            outputs = self._fsm.receive(input)

        for output in outputs:
            adapter = self._inputContext.get(output, lambda o: o)
            self._world.output(output, adapter(input))
        return outputs
user_to_become should be added to the context.
dataset/ETHPy150Open ClusterHQ/machinist/machinist/_fsm.py/_FiniteStateInterpreter.receive--crossover with--dataset/ETHPy150Open ofa/connect/open_connect/accounts/tests/test_views.py/BecomeUserViewTest.test_get_context_adds_user_to_become