a àMÒe¦ã@sXddlZddlZddlZddlZddlZddlZdd„ZejjGdd„dej j ƒƒZ dS)éNcCs(t|ƒ}| t d|¡¡| |¡dS)Nz!B)ÚlenÚwriteÚstructÚpack)ÚfileÚsÚl©r ú8/usr/lib/python3.9/site-packages/dns/rdtypes/IN/NAPTR.pyÚ _write_stringsr csleZdZdZgd¢Z‡fdd„Zddd„Zedd d „ƒZdd d „Z eddd„ƒZ dd„Z edd„ƒZ ‡Z S)ÚNAPTRz NAPTR record)ÚorderÚ preferenceÚflagsÚserviceÚregexpÚ replacementc sftƒ ||¡| |dd¡|_| |dd¡|_| |dd¡|_| |¡|_| |¡|_|  |¡|_ dS)NTéÿ) ÚsuperÚ__init__Z _as_bytesrrrZ _as_uint16r rZ_as_namer) ÚselfÚrdclassÚrdtyper rrrrr©Ú __class__r r r*s  zNAPTR.__init__NTcKsD|j ||¡}d|j|jtj |j¡tj |j¡tj |j ¡|fS)Nz%d %d "%s" "%s" "%s" %s) rZchoose_relativityr rÚdnsÚrdataZ _escapifyrrr)rÚoriginÚ relativizeÚkwrr r r Úto_text5s   úz NAPTR.to_textc CsL| ¡}| ¡}| ¡} | ¡} | ¡} | |||¡} |||||| | | | ƒS©N)Z get_uint16Z get_stringÚget_name) ÚclsrrÚtokrrZ relativize_tor rrrrrr r r Ú from_text@sÿzNAPTR.from_textFcCsVt d|j|j¡}| |¡t||jƒt||jƒt||jƒ|j   ||||¡dS)Nú!HH) rrr rrr rrrrZto_wire)rrÚcompressrZ canonicalizeZtwo_intsr r r Ú_to_wireNs     zNAPTR._to_wirec Cs^| d¡\}}g}tdƒD]}| ¡} | | ¡q| |¡} ||||||d|d|d| ƒS)Nr&éréé)Z get_structÚrangeZget_counted_bytesÚappendr") r#rrÚparserrr rÚstringsÚ_rrr r r Úfrom_wire_parserVs    øzNAPTR.from_wire_parsercCs |j|jfSr!)r r)rr r r Ú_processing_priorityiszNAPTR._processing_prioritycCstjj |¡Sr!)rZrdtypesÚutilZpriority_processing_order)r#Úiterabler r r Ú_processing_orderlszNAPTR._processing_order)NT)NTN)NNF)N)Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú __slots__rr Ú classmethodr%r(r1r2r5Ú __classcell__r r rr r "s ÿ  r ) rZ dns.exceptionrZ dns.immutableZdns.nameZ dns.rdataZdns.rdtypes.utilr Z immutablerZRdatar r r r r Ús