�
&�`� � � � d Z dZ ddlmZ dZn%# e$ r G d� d� � Z G d� d� � ZY nw xY w e� � Ze� d � � Zd
S )z�
Implements signals based on blinker if available, otherwise
falls silently back to a noop. Shamelessly stolen from flask.signals:
https://github.com/mitsuhiko/flask/blob/master/flask/signals.py
F� )� NamespaceTc � � e Zd Zdd�ZdS )r Nc �"