def METHOD_NAME(
    self, create_iam_role_for_sfn, create_state_machine, sfn_snapshot, aws_client
):
    snf_role_arn = create_iam_role_for_sfn()
    sfn_snapshot.add_transformer(RegexTransformer(snf_role_arn, "snf_role_arn"))
    sfn_snapshot.add_transformer(
        JsonpathTransformer(
            "$..events..executionSucceededEventDetails.output.FunctionResult",
            "RandomNumberGenerated",
            replace_reference=False,
        )
    )
    sfn_snapshot.add_transformer(
        JsonpathTransformer(
            "$..events..stateExitedEventDetails.output.FunctionResult",
            "RandomNumberGenerated",
            replace_reference=False,
        )
    )
    sm_name: str = f"statemachine_{short_uid()}"
    definition = IFT.load_sfn_template(IFT.MATH_RANDOM_SEEDED)
    definition_str = json.dumps(definition)
    creation_resp = create_state_machine(
        name=sm_name, definition=definition_str, roleArn=snf_role_arn
    )
    sfn_snapshot.add_transformer(sfn_snapshot.transform.sfn_sm_create_arn(creation_resp, 0))
    state_machine_arn = creation_resp["stateMachineArn"]
    input_value = {"fst": 0, "snd": 999, "trd": 3}
    exec_input_dict = {IFT.FUNCTION_INPUT_KEY: input_value}
    exec_input = json.dumps(exec_input_dict)
    exec_resp = aws_client.stepfunctions.start_execution(
        stateMachineArn=state_machine_arn, input=exec_input
    )
    sfn_snapshot.add_transformer(sfn_snapshot.transform.sfn_sm_exec_arn(exec_resp, 0))
    execution_arn = exec_resp["executionArn"]
    await_execution_success(
        stepfunctions_client=aws_client.stepfunctions, execution_arn=execution_arn
    )
    exec_hist_resp = aws_client.stepfunctions.get_execution_history(executionArn=execution_arn)
    sfn_snapshot.match("exec_hist_resp", exec_hist_resp)