<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def wait_for_stateful_block_init(context, mri, timeout=DEFAULT_TIMEOUT):
 """Wait until a Block backed by a StatefulController has initialized Args: context (Context):
 The context to use to make the child block mri (str):
 The mri of the child block timeout (float):
 The maximum time to wait """

    context.when_matches(
        [mri, "state", "value"], StatefulStates.READY,
        bad_values=[StatefulStates.FAULT, StatefulStates.DISABLED],
        timeout=timeout)