ó `8(Zc@`sFddlmZmZmZddlmZdefd„ƒYZdS(i(tabsolute_importtdivisiontunicode_literals(tMappingtTriecB`s5eZdZdd„Zd„Zd„Zd„ZRS(uAbstract base class for triescC`sWtt|ƒjƒ}|dkr+t|ƒStg|D]}|j|ƒr5|^q5ƒS(N(tsuperRtkeystNonetsett startswith(tselftprefixRtx((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pyR s  cC`s.x'|jƒD]}|j|ƒr tSq WtS(N(RR tTruetFalse(R R tkey((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pythas_keys_with_prefixscC`s^||kr|Sx;tdt|ƒdƒD] }|| |kr*|| Sq*Wt|ƒ‚dS(Ni(trangetlentKeyError(R R ti((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pytlongest_prefixs    cC`s|j|ƒ}|||fS(N(R(R R tlprefix((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pytlongest_prefix_item$sN(t__name__t __module__t__doc__RRRRR(((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pyRs   N(t __future__RRRt collectionsRR(((s=/tmp/pip-build-0nEYGB/pip/pip/_vendor/html5lib/_trie/_base.pyts