ó <¿CVc@ s{ddlmZmZmZddlmZddlmZedefd„ƒYƒZ d„Z e dkrwe ƒndS( iÿÿÿÿ(tprint_functiontdivisiontunicode_literals(tCounter(tpython_2_unicode_compatiblet FStructurecB s›eZd„Zd„Zd„Zd„Zd„Zdd„Zd„Z e d„ƒZ e ddd„ƒZ e d „ƒZ d „Zd „Zd d „ZRS(cC s.||krg||/suheadureludepsuaddressi( tnltk.parse.dependencygraphRtnodest _to_depgraphtitemstvaluest setdefaultRtroot( RtrelRRRtaddresstnodetn2trelation((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyR&s   $ c C sIt|ƒ}||ji|d6|jdd6|jdd6|d6|d6ƒxôt|ƒD]æ}xÝt||ƒD]Ë}t|tƒr|j|||ƒqrt|tƒr÷t|ƒ}||ji|d6|dd6|dd6|d6|d6ƒqrt|tƒr-x4|D]}|j|||ƒq Wqrt d|ƒ‚qrWq[WdS( Nuaddressiuwordiutaguheadurelu0feature %s is not an FStruct, a list, or a tuple( tlentupdatetpredtsortedt isinstanceRRttupletlistt Exception( RRtheadRtindextfeatureR t new_indexR((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyR9s2        cC stj|j|ƒS(N(Rt_read_depgraphR(R((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyt read_depgraph[sc C sa|stƒ}n|djƒd kr:|d|dfStƒ}d|_tj|jƒƒ|_||_|d|d}}|d dkrÎ|dd!d kr¸|j d dƒn||d f|_n|jsé||f|_ngt t |d j ƒƒgƒD]}|j |^q }x4|D],} |j | dtj| |||ƒƒq)W|SdS(NureluspecupunctuwordutagiuVBiuDutenseuPASTudeps(uspecupunct(uPASTutense(RR RtNoneR&t _make_labeltgettlabeltparentR tsumR*RRR0( R!Rt label_counterR6tfstructtwordttagtidxtchildrentchild((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyR0_s&     9 *cC sŽddddddddd d d d d dddddddddddddg|d}t|ƒd}|dkr†|t|ƒS|SdS(u³ Pick an alphabetic character as identifier for an entity in the model. :param value: where to index into the list of characters :type value: int ufuguhuiujukulumunuoupuqurusutuuuvuwuxuyuzuaubucudueiiiN(tinttstr(Rtlettertnum((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyR3~s *2 cC s|jƒjddƒS(Nu u(t __unicode__treplace(R((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyt__repr__ŽscC s |jƒS(N(t pretty_format(R((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyt__str__‘sic C spyd|j}Wntk r*d}nXy|d|jd7}Wntk rWnXx t|ƒD]ÿ}xö||D]ê}t|tƒrÓ|t|ƒdt|jƒ}|dd|||j|ƒf7}qvt|tƒr|dd|||df7}qvt|t ƒrP|d d||d d|t|ƒd j |ƒf7}qvt d |ƒ‚qvWqeW|d S(Nu%s:[u[u pred '%s'iiu %s%s %su u %s%s '%s'u %s%s {%s}u %siu0feature %s is not an FStruct, a list, or a tupleu]( R5t NameErrorR&R'R(RR$RFR)R*tjoinR+(RtindenttaccumR.R t next_indent((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyRF”s&   !'"=N(t__name__t __module__R R RRRR2RRt staticmethodR1R0R3RERGRF(((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pyRs      "  cC szddlm}|dƒ}|dƒ}|dƒ}|dƒ}||||g}x!|D]}ttj|ƒƒqYWdS(Niÿÿÿÿ(RuýEsso NNP 2 SUB said VBD 0 ROOT the DT 5 NMOD Whiting NNP 5 NMOD field NN 6 SUB started VBD 2 VMOD production NN 6 OBJ Tuesday NNP 6 VMOD uUJohn NNP 2 SUB sees VBP 0 ROOT Mary NNP 2 OBJ uWa DT 2 SPEC man NN 3 SUBJ walks VB 0 ROOT uevery DT 2 SPEC girl NN 3 SUBJ chases VB 0 ROOT a DT 5 SPEC dog NN 3 OBJ (RRtprintRR1(Rtdg1tdg2tdg3tdg4t depgraphstdg((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pytdemo_read_depgraph­s     u__main__N( t __future__RRRtnltk.internalsRt nltk.compatRR RRWRM(((s^/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/lfg.pytsž "