<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def on_block_received(self, block_id):
 """This is exposed for unit tests, and should not be called directly. """

        _libexec('chain_controller_on_block_received', self.pointer,
                 ctypes.c_char_p(block_id.encode('utf-8')))