PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` 3 ,[ @sfdZdZyddlmZdZWn4ek rPGdddeZGdddeZYnXeZejd Z d 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@seZdZdddZdS)rNcCs t||S)N) _FakeSignal)selfnamedocr/usr/lib/python3.6/signals.pysignal szNamespace.signal)N)__name__ __module__ __qualname__r rrrrr src@sDeZdZdZd ddZddZddZeZZZ Z Z Z [dS) raIf blinker is unavailable, create a fake class with the same interface that allows sending of signals but will fail with an error on anything else. Instead of doing anything on send, it will just ignore the arguments and do nothing instead. NcCs||_||_dS)N)r__doc__)rrrrrr__init__sz_FakeSignal.__init__cOs tddS)NzOsignalling support is unavailable because the blinker library is not installed.) RuntimeError)rargskwargsrrr_failsz_FakeSignal._failcOsdS)Nr)akwrrrsz_FakeSignal.)N) r r r r rrsendZconnectZ disconnectZhas_receivers_forZ receivers_forZtemporarily_connected_toZ connected_torrrrrs  rz scope-changedN) r Zsignals_availableZblinkerr ImportErrorobjectrZ_signalsr Z scope_changedrrrrs