<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def overlay(main_parent_node, overlay_parent_node, eof_action='repeat', **kwargs):
 """Overlay one video on top of another. Args: x: Set the expression for the x coordinates of the overlaid video on the main video. Default value is 0. In case the expression is invalid, it is set to a huge value (meaning that the overlay will not be displayed within the output visible area). y: Set the expression for the y coordinates of the overlaid video on the main video. Default value is 0. In case the expression is invalid, it is set to a huge value (meaning that the overlay will not be displayed within the output visible area). eof_action: The action to take when EOF is encountered on the secondary input; it accepts one of the following values: * ``repeat``: Repeat the last frame (the default). * ``endall``: End both streams. * ``pass``: Pass the main input through. eval: Set when the expressions for x, and y are evaluated. It accepts the following values: * ``init``: only evaluate expressions once during the filter initialization or when a command is processed * ``frame``: evaluate expressions for each incoming frame Default value is ``frame``. shortest: If set to 1, force the output to terminate when the shortest input terminates. Default value is 0. format: Set the format for the output video. It accepts the following values: * ``yuv420``: force YUV420 output * ``yuv422``: force YUV422 output * ``yuv444``: force YUV444 output * ``rgb``: force packed RGB output * ``gbrp``: force planar RGB output Default value is ``yuv420``. rgb (deprecated):
 If set to 1, force the filter to accept inputs in the RGB color space. Default value is 0. This option is deprecated, use format instead. repeatlast: If set to 1, force the filter to draw the last overlay frame over the main input until the end of the stream. A value of 0 disables this behavior. Default value is 1. Official documentation: `overlay <https://ffmpeg.org/ffmpeg-filters.html#overlay-1>`__ """

    kwargs['eof_action'] = eof_action
    return FilterNode([main_parent_node, overlay_parent_node], overlay.__name__, kwargs=kwargs, max_inputs=2).stream()