Ñò æ—qUc @sÝdZddkZdge_ddkZddklZlZlZlZee ƒZ e e _ de _ ddkZddkZdZd„Zd„Ze id d d d gƒd „ƒZe djoe iƒndS(s DNSSEC Demo. iÿÿÿÿNs jinja2 >= 2.4(tFlasktrequesttrender_templatetflasht'very_secret_key_for_flash_function_onlys^[-a-z0-9_]+\.fi$cCsz|i|titiƒ\}}|djoH|io>g}x'|iiD]}|it|ƒƒqKWdi |ƒSdS(Nis ( tresolvetunboundt RR_TYPE_MXt RR_CLASS_INthavedatatdatatmx_listtappendtstrtjoin(tresolvertdomaintstatustresultR tk((s/var/www/html/cira/index.pytget_txts cCs1tiƒ}t||ƒ}tdd|d|ƒS(s2 User entered valid domain. Show results. s result.htmlRR(Rtub_ctxRR(RRR((s/var/www/html/cira/index.pytvalidate_domain%s  t/tmethodstGETtPOSTcCsdtiiddƒiƒ}|o2tit|ƒptddƒqTt|ƒSnt dd|ƒS(s* Start page: Ask for domain name. Rts"Sorry, that domain is not allowed.tdangers start.html( RtvaluestgettlowertretmatchtALLOWED_DOMAINRRR(R((s/var/www/html/cira/index.pyt main_page1st__main__(t__doc__R$t __requires__t pkg_resourcestflaskRRRRt__name__tapptTruetdebugt secret_keyR RR"RRtrouteR#trun(((s/var/www/html/cira/index.pyts   "      $