Within a supervisor tree, all supervisor processes are responsible for managing the lifecycle of their child processes, and this includes handling situations in which those child processes crash. Any process can become a supervisor by first spawning a child process, then calling codice_33 on that process. If the monitored process then crashes, the supervisor will receive a message containing a tuple whose first member is the atom codice_34. The supervisor is responsible firstly for listening for such messages and secondly, for taking the appropriate action to correct the error condition.