<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def simple_notification(connection, queue_name, exchange_name, routing_key, text_body):
 """ Publishes a simple notification. Inputs: - connection: A rabbitmq connection object. - queue_name: The name of the queue to be checked or created. - exchange_name: The name of the notification exchange. - routing_key: The routing key for the exchange-queue binding. - text_body: The text to be published. """

    channel = connection.channel()
    try:
        channel.queue_declare(queue_name, durable=True, exclusive=False, auto_delete=False)
    except PreconditionFailed:
        pass
    try:
        channel.exchange_declare(exchange_name, type="fanout", durable=True, auto_delete=False)
    except PreconditionFailed:
        pass
    channel.queue_bind(queue_name, exchange_name, routing_key=routing_key)

    message = Message(text_body)
    channel.basic_publish(message, exchange_name, routing_key)