python
import blinker
def event_generator():
sender = blinker.signal('custom-event')
while True:
input_data = yield
sender.send(input_data)
def event_handler(sender, **kwargs):
print(f'Received event data: {kwargs}')
if __name__ == '__main__':
generator = event_generator()
next(generator)
sender = blinker.signal('custom-event')
sender.connect(event_handler)
while True:
user_input = input('Enter event data (or q to quit): ')
if user_input == 'q':
break
generator.send(user_input)