d2d?d4d5d6e8d7d@e6j7dAdBd2dCd4d5d6e8d7dDe6j9\Z:Z;e<e;dEkre6j=dFne2dGe:j>Z?e"e?j@e;dHjAdIdJe:jBdKe:jCZDeDeEkreFeEn>eDjGjHZDe:jIreFeDjIjJn eDjKndS(Lu An interface to Boxer. This interface relies on the latest version of the development (subversion) version of C&C and Boxer. Usage: Set the environment variable CANDC to the bin directory of your CandC installation. The models directory should be in the CandC root directory. For example: /path/to/candc/ bin/ candc boxer models/ boxer/ i(tprint_functiontunicode_literalsN(t OptionParser(treduce(tCountert find_binary(tExpectedMoreTokensExceptiontLogicalExpressionExceptiontUnexpectedTokenExceptiontVariable( tDRStDrtApplicationExpressiontDrtEqualityExpressiontDrtNegatedExpressiontDrtOrExpressiont DrtParsertDrtPropositiont DrtTokenstDrtVariableExpression(tpython_2_unicode_compatibletBoxercBseZdZd ed eedZedZd eedZd eedZ d eedZ d eedZ edZ edZ ed Zged Zd Zd ZRS(u This class is an interface to Johan Bos's program Boxer, a wide-coverage semantic parser that produces Discourse Representation Structures (DRSs). cCsG|dkrt}n||_||_||_|j||dS(u :param boxer_drs_interpreter: A class that converts from the ``AbstractBoxerDrs`` object hierarchy to a different object. The default is ``NltkDrtBoxerDrsInterpreter``, which converts to the NLTK DRT hierarchy. :param elimeq: When set to true, Boxer removes all equalities from the DRSs and discourse referents standing in the equality relation are unified, but only if this can be done in a meaning-preserving manner. :param resolve: When set to true, Boxer will resolve all anaphoric DRSs and perform merge-reduction. Resolution follows Van der Sandt's theory of binding and accommodation. N(tNonetNltkDrtBoxerDrsInterpretert_boxer_drs_interpretert_resolvet_elimeqt set_bin_dir(tselftboxer_drs_interpretertelimeqtbin_dirtverbosetresolve((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__init__6s     cCs_|jd|||_tjjtjj|jd d|_|jd|||_dS(Nucandciu ../modelsuboxer(t _find_binaryt _candc_bintostpathtnormpathtjoint_candc_models_patht _boxer_bin(RRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRKs+cCsY|dk r|gnd}|j|gg|||\}|sUtd|n|S(uI Use Boxer to give a first order representation. :param input: str Input sentence to parse :param occur_index: bool Should predicates be occurrence indexed? :param discourse_id: str An identifier to be inserted to each occurrence-indexed predicate. :return: ``drt.DrtExpression`` uUnable to interpret: "%s"N(Rtinterpret_multi_sentst Exception(Rtinputt discourse_idtquestionRt discourse_idstd((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt interpretPs !cCsV|dk r|gnd}|j|g|||\}|sRtd|n|S(uh Use Boxer to give a first order representation. :param input: list of str Input sentences to parse as a single discourse :param occur_index: bool Should predicates be occurrence indexed? :param discourse_id: str An identifier to be inserted to each occurrence-indexed predicate. :return: ``drt.DrtExpression`` uUnable to interpret: "%s"N(RR*R+(RR,R-R.RR/R0((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytinterpret_multi_s cCs,|jg|D]}|g^q |||S(u{ Use Boxer to give a first order representation. :param inputs: list of str Input sentences to parse as individual discourses :param occur_index: bool Should predicates be occurrence indexed? :param discourse_ids: list of str Identifiers to be inserted to each occurrence-indexed predicate. :return: list of ``drt.DrtExpression`` (R*(RtinputsR/R.RR,((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytinterpret_sentsns c Cs|dk rUt|t|ks*tttjd|DsLtt}n'ttt t t|}t }|j |||d|}|j |d|}|j||}g|D]} |j| d^qS(uc Use Boxer to give a first order representation. :param inputs: list of list of str Input discourses to parse :param occur_index: bool Should predicates be occurrence indexed? :param discourse_ids: list of str Identifiers to be inserted to each occurrence-indexed predicate. :return: ``drt.DrtExpression`` css|]}|dk VqdS(N(R(t.0tid((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys sRN(RtlentAssertionErrorRtoperatortand_tTruetlisttmaptstrtrangetFalset _call_candct _call_boxert_parse_to_drs_dicttget( RR3R/R.Rt use_disc_idt candc_outt boxer_outtdrs_dictR6((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR*ys " !cCsldtjj|jddg|ddg}|jdjtdt||Dg|j||S(uF Call the ``candc`` binary with the given input. :param inputs: list of list of str Input discourses to parse :param discourse_ids: list of str Identifiers to be inserted to each occurrence-indexed predicate. :param filename: str A filename for the output file :return: stdout u--modelsuboxeru questionsu--candc-printeru css&|]\}}d|g|VqdS(u '%s'N((R5R0R6((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys s(R$R%R'R(t_calltsumtzipR#(RR3R/R.Rtargs((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRAs " cCsd}zGtjdddddt\}}tj|d}|j|Wd|rc|jnXdd d d d d d g|jdd d g|j dddd d|g}|j d|j ||}tj ||S(u Call the ``boxer`` binary with the given input. :param candc_out: str output from C&C parser :return: stdout tprefixuboxer-tsuffixu.inttextuwNu--boxufalseu --semanticsudrsu --resolveutrueu--elimequ--formatuprologu --instantiateu--input( RttempfiletmkstempR;R$tfdopentwritetcloseRRRIR)tremove(RRFRtftfdt temp_filenameRLtstdout((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRBs"$  c Cs5t|d|ddgddd||dgd|S( Nt path_to_bintenv_varsuCANDCturlu)http://svn.ask.it.usyd.edu.au/trac/candc/t binary_namesu.exeR(R(RtnameRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR"s   c Csi|rNtd|td|td|td|ddj|n|dkr|g|}tj|dtjdtj}nCd||dj|f}tj|dtjdtjd t}|j\}}|r+td |j|rtd |d n|r+td |d q+n|jdkret d|dj||j|fn|S(u Call the binary with the given input. :param input_str: A string whose contents are used as stdin. :param binary: The location of the binary to call :param args: A list of command-line arguments. :return: stdout uCalling:uArgs:uInput:uCommand:u RYtstderruecho "%s" | %s %stshellu Return code:ustdout: u ustderr: iu&ERROR CALLING: %s %s Returncode: %d %sN( tprintR'Rt subprocesstPopentPIPER;t communicatet returncodeR+( Rt input_strtbinaryRLRtcmdtpRYR_((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRIs(    !  $'+cCs<|jd}i}d}x|t|kr7||}|jdr*|jd}|d|!}|ddkr|ddkr|dd!}n||d|jd !} |d7}||}|jd | st|d d kr|d d }n|jd std|td| } d} d} xt|| D]\} }|dkrn| d7} n|dkrI| d8} | dkr| | d} || | d!dkr| d} n | d} PqqIqIW| dkst|| d!j}|j|||}|j j |||s(RRRRR(R((RRRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR{s csjjdjjjdjjjdjjjdjjjdfdS(Nu(u,u)cstj||S(N(t BoxerNamedR-(RR(R^RRttypeR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs(RRR(R((R^RRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs    csjjdjjjdjjjdjjjdtjjjdfdS(Nu(u,u)cstj||S(N(tBoxerRelR-(RR(trelRRtvar1tvar2(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs(RRRR(R((RRRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs   cCsa|j|jd|j}|j|jd|j|}|j|jd|S(Nu(u,u)(RRRt_handle_time_expression(Rtargt new_conds((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs  csjjjddkr@j}n"dkr^j}ndSjjdfdgg|D]fd^qS(Nu(udateutimeu)cstj||ddS(Nuni(RR-(RR(RRR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscsS(N((RR(R(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs(RRt _handle_datet _handle_timeR(RRR((RRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs   c Csg}|j|j\\}}|j|jd|j}|j|jd|jt|j|||d|dd|j|jd|j|j\\}}|j}|dkr|jdd }|jt|j|||d |ddn|j|jd|j|j\\}}|j}|d kr|jt|j|||d |ddn|j|jd|j|j\\}}|j}|d kr |jt|j|||d |ddn|S(Nu(u)u date_pol_%suaiu,uXXXXu:u_u date_year_%suXXu date_month_%su date_day_%s(Rt_parse_index_listRRtappendRR-treplace( RRRRRtpoltyeartmonthtday((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs. ,  /  /  /cCsg}|j|j}|dkrG|j|jd||n|j|jd|j|j}|dkr|j|jd||n|j|jd|j|j}|dkr|j|jd||n|S(NuXXur_hour_2u,ur_min_2ur_sec_2(RRRt _make_atomR(RRRthourtmintsec((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs          csjjdjjjdjjjdjjjdfdS(Nu(u,u)cstj||S(N(t BoxerCardR-(RR(RRtvalueR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR s(RRR(R((RRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs   cspjjdjjjdjdjjdfdS(Nu(u,u)cstj||S(N(t BoxerPropR-(RR(RRR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs(RRRRR(R((RRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR s  cCsg}|j|jdxN|jddkrl|j|j|jddkr|jqqW|j|j|jd|S(Nu[iu]u,u:(RRRt parse_index(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs cCsa|j|jd|j|jdt}xZ|jddkr|j}|j|j|jddkr8|jq8q8W|j|j|jd|j|jdg}x]|jddkr-|j}|j|j||jddkr|jqqW|j|j|jdtt ||S(Nu(u[iu]u,u)( RRtsetRtaddRtextendRtBoxerDrsR<(RtrefsRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR s(     css|j|jd|jd|j|jd|jd|j|jdfdS(Nu(u,u)cs||S(N((RR(tdrs1tdrs2t make_callback(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR?s(RRRR(RR((RRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR9s cs|j|jd|j}|j|jd|jd|j|jd|jd|j|jdfdS(Nu(u,u)cs||S(N((RR(RRR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRIs(RRRR(RRR((RRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRAs csmjjdjjjdjjjdfdS(Nu(u,u)cstj||S(N(tBoxerEqR-(RR(RRR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRQs(RRR(R((RRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRKs   csjjdjjdgxjddkrj}jjd|dkrjjq5|dkrjdj}|d krjd qj|q5jjq5Wjjjd jdjjd jjjd jdjjd fd S(Nu(u[iu]u:udesunumunumberucouucountu,u)cstj||S(N(RR-(RR(RRRRR(s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRos(RRRRRR(Rtcatttyp((RRRRRs`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRTs0        cCs!t|j|j|j|jS(N(RRR(RRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRqscCst|j||||S(N(tBoxerOrR-(RRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRtscCst|j|j|S(N(RRR(RRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRwscCs.|j}tjd|s*t||S(Nu ^[exps]\d+$(RtretmatchR8(Rtvar((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRzs cCst|jS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCstd|D}|rg}xV|D]N}g|D](}||ddkr6|dd^q6}|j||fq)W|Sg|D]}|dd^q}d|fgSdS(uD :return: list of (sent_index, word_indices) tuples css)|]}|dkr|ddVqdS(iiiN((R5Rs((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys siiN(RRR(RRt sent_indicestpairsRRsR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs 5!N("RRRR!RRRRRRRRRRRRRRRRRRRRRRRRRRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR~s>      (             tBoxerDrsParsercBsGeZdZddZdZdZdZdZdZ RS(uD Reparse the str form of subclasses of ``AbstractBoxerDrs`` cCstj|||_dS(N(RR!R-(RR-((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s cCs"tjtjtjtjtjgS(N(RtOPENtCLOSEtCOMMAt OPEN_BRACKETt CLOSE_BRACKET(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs|S(N((RRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs y9 |dkr0|jtj|j|jf|jdk }|jtj|j}|jtjtt t |j }|jtjt |j}|jtj|j}|jtj|j}|jtjt |j} |jtj t ||||||| S|dkr]|jtj|j|jf|jdk }|jtjt |j}|jtjt t |j }|jtjt |j}|jtj|j}|jtj|j} |jtjt |j} |jtj t|||||| | S|dkr|jtj|j|jf|jdk }|jtj|j}|jtjtt t |j }|jtjt |j} |jtjt |j} |jtj|j} |jtjt |j} |jtj t|||| | | | S|dkr|jtj|j|jf|jdk }|jtjt |j}|jtjtt t |j }|jtjt |j}|jtj|jd}|jtj t|||||S|dkr|jtj|jd}|jtj t|S|dkr7|jtj|jd}|jtj|jd}|jtj t|j|j|S|dkr|jtj|j|jf|jdk }|jtj|j}|jtjt t |j }|jtj|jd}|jtj|jd}|jtj t|||||S|dkr |jtj|j|jf|jdk }|jtj|j}|jtjtt t |j }|jtjt |j} |jtjt |j} |jtj t|||| | S|d kr |jtj|j|jf|jdk }|jtj|j}|jtjt t |j }|jtjt |j}|jtj|j}|jtj|j} |jtj t|||||| S|d kr8 |jtj|j|jf|jdk }|jtj|j}|jtjtt t |j }|jtj|j }|jtj|jd}|jtjt |j}|jtj|jd}|jtj t|||||||SWn+tk rf }t|jt|nXts tt |dS( Nupredunamedurelupropunotuimpuoruequcarduwhq(!tassertNextTokenRRRR-RRtnullableIntTokenR<R=Rt handle_refsRRRRRRRRRRRRRRR+Rt _currentIndexR>R@R8trepr(RRRtdisc_idtsent_idtword_idsRR^RRRRRRRRRRRRte((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs "    "   "   "    "  "  "    "   cCs&|j}dt|g|dkS(NuNone(RRR(Rtt((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR5s cCs:y|jSWn%tk r5}t|jdnXdS(NuVariable expected.(RRRm(Rt descriptionR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytget_next_token_variable9sN( RRRRR!RRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs    tAbstractBoxerDrscBsPeZdZdZdZdZdZdZdZdZ RS(cCs.|j\}}}|||B|||fS(uK :return: (set, set, set) (t _variables(Rt variablesteventst propositions((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRBscCsKi}x>td|jD]'\}}x|D]}|||, set, set) (R(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRPscCstS(N(R(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytatomsVscCs|S(N((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytcleanYscCs|jddjddS(Nu-u_u'(R(RR^((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt _clean_name\scCs|S(N((RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytrenumber_sentences_scCstd|S(Nu%s(thash(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__hash__bs( RRRRRRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRAs       RcBs\eZddZdZdZdZdZdZdZ dZ e j Z RS( cCs,tj|||_||_||_dS(N(RR!RRt consequent(RRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!hs   cCstttf}xD|jD]9}x0t||jD]\}}|j|q>Wq"W|jdk rx6t||jjD]\}}|j|qWn|S(N(RRRKRtupdateRR(RRRtsR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRns"%cCsQttjd|jDt}|jdk rM|j|jjn|S(Ncss|]}|jVqdS(N(R(R5R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys ys( RR9tor_RRRRRR(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRxs%cCsM|jr|jjnd}t|jg|jD]}|j^q1|S(N(RRRRRR(RRR{((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR~scCsS|jr|jj|nd}t|jg|jD]}|j|^q4|S(N(RRRRRR(RRVRR{((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs!cCseddjd|jDdjd|jDf}|jdk rad||jf}n|S(Nudrs([%s], [%s])u, css|]}d|VqdS(u%sN((R5tr((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys scss|]}d|VqdS(u%sN((R5R{((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys su imp(%s, %s)(R'RRRR(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__repr__s  cCs}|j|jko||j|jko|t|jt|jko|ttjdt|j|jDo||j|jkS(Ncss!|]\}}||kVqdS(N((R5tc1tc2((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys s( t __class__RR7RRR9R:RKR(Rtother((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__eq__s +cCs ||k S(N((RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__ne__sN( RRRR!RRRRR RRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRfs       RcBsYeZdZdZdZdZdZdZdZdZ e j Z RS(cCstj|||_dS(N(RR!R(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s cCs |jjS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs |jjS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCst|jjS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCst|jj|S(N(RRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs d|jS(Nunot(%s)(R(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR scCs"|j|jko!|j|jkS(N(RR(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs ||k S(N((RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs( RRR!RRRRR RRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs        t BoxerIndexedcBs>eZdZdZdZdZejZdZRS(cCs,tj|||_||_||_dS(N(RR!R-RR(RR-RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s   cCs t|gS(N(R(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCsk|j|jkoj|j|jkoj|j|jkoj|j|jkojttjdt||DS(Ncss!|]\}}||kVqdS(N((R5Rto((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys s(RR-RRRR9R:RK(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs cCs ||k S(N((RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs_d|j|j|jdjd|jDf}x|D]}|d|7}q?W|dS(Nu%s(%s, %s, [%s]u, css|]}d|VqdS(u%sN((R5twi((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pys su, %su)(t_predR-RR'R(RRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR s & ( RRR!RRRRRR (((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs      RcBsGeZdZdZdZdZdZdZdZRS(cCs>tj||||||_||_||_||_dS(N(RR!RR^RR(RR-RRRR^RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s    cCst|jgttfS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs.t|j|j|j||j|j|jS(N(RR-RRR^RR(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt change_varscCs:t|j|j|j|j|j|j|j|jS(N( RR-RRRRR^RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs=||j}t|j||j|j|j|j|jS(N(RRR-RRR^RR(RRVtnew_sent_index((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs"t|j|j|j|jfS(N(titerRR^RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyt__iter__scCsdS(Nupred((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs( RRR!RRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs      RcBsGeZdZdZdZdZdZdZdZRS(cCs>tj||||||_||_||_||_dS(N(RR!RR^RR(RR-RRRR^RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s    cCst|jgttfS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs.t|j|j|j||j|j|jS(N(RR-RRR^RR(RR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs:t|j|j|j|j|j|j|j|jS(N( RR-RRRRR^RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs7t|j||j|j|j|j|j|jS(N(RR-RRRR^RR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs"t|j|j|j|jfS(N(RRR^RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCsdS(Nunamed((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs( RRR!RRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs      RcBs>eZdZdZdZdZdZdZRS(cCs>tj||||||_||_||_||_dS(N(RR!RRRR(RR-RRRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR! s    cCs%t|j|jgttfS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs:t|j|j|j|j|j|j|j|jS(N( RR-RRRRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs7t|j||j|j|j|j|j|jS(N(RR-RRRRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs"t|j|j|j|jfS(N(RRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCsdS(Nurel((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs(RRR!RRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR s      RcBsPeZdZdZdZdZdZdZdZdZ RS(cCs,tj||||||_||_dS(N(RR!RR(RR-RRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!"s cCs=tttjttt|jgf|jjS(N(ttupleR=R9R RRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR'scCst|jgS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytreferenced_labels*scCs |jjS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR-scCs+t|j|j|j|j|jjS(N(RR-RRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR0scCs4t|j||j|j|j|jj|S(N(RR-RRRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR3scCst|j|jfS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR6scCsdS(Nuprop((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR9s( RRR!RRRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s       RcBs>eZdZdZdZdZdZdZRS(cCs,tj||||||_||_dS(N(RR!RR(RR-RRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!=s cCs%t|j|jgttfS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRBscCstS(N(R(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyREscCs+t|j||j|j|j|jS(N(RR-RRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRHscCst|j|jfS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRKscCsdS(Nueq((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRNs(RRR!RRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR<s      RcBs5eZdZdZdZdZdZRS(cCs5tj||||||_||_||_dS(N(RR!RRR(RR-RRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!Rs  cCst|jgttfS(N(RR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRXscCs1t|j||j|j|j|j|jS(N(RR-RRRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR[scCst|j|j|jfS(N(RRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR^scCsdS(Nucard((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRas(RRR!RRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRQs     RcBsGeZdZdZdZdZdZdZdZRS(cCs,tj||||||_||_dS(N(RR!RR(RR-RRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!es cCs+tttj|jj|jjS(N(RR=R9R RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRjscCs|jj|jjBS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRmscCs1t|j|j|j|jj|jjS(N(RR-RRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRpscCs+t|j||j|j|j|jS(N(RR-RRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRsscCst|j|jfS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRvscCsdS(Nuor((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRys( RRR!RRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRds      RcBsGeZdZdZdZdZdZdZdZRS(cCs>tj||||||_||_||_||_dS(N(RR!RRRR(RR-RRRRRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!}s    cCsItttjt|jgttf|jj|jjS(N( RR=R9R RRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs|jj|jjBS(N(RRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs=t|j|j|j|j|jj|j|jjS(N( RR-RRRRRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs7t|j||j|j|j|j|j|jS(N(RR-RRRRRR(RRV((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCs3tddj|jd|j|j|jfS(Nu[u,u](RR'RRRR(R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRscCsdS(Nuwhq((R((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs( RRR!RRRRRR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR|s      tPassthroughBoxerDrsInterpretercBseZdZRS(cCs|S(N((Rtex((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR1s(RRR1(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRsRcBs/eZedZdZdZdZRS(cCs ||_dS(N(t _occur_index(Rt occur_index((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!scCst|trztg|jD]}t|^qtt|j|j}|j dk rv|j|j |_ n|St|t rt |j|j St|tr|jd|j|jf|}|j||jSt|tr'|jd|j|jf|}|j||jSt|trh|jd|j|}|j||j|jSt|trtt|j|j|j St|trttt|jtt|jSt|tr|jd|j|j f|}|j||jSt|t!rKt"|j|j#|j|j$St|t%r|j|j#}|j|j$}t|j|j|j|jSt&st'd|j(j)|fdS(uT :param ex: ``AbstractBoxerDrs`` :return: ``DrtExpression`` u%s_%sune_%s_%su%su card_%s_%su%s: %sN(*t isinstanceRR RR R<R=R1RRRRR RRt_add_occur_indexingRR^RRRRRRRRRRRR RRRRRRRRR@R8RR(RRR RtpredRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR1s>@""""%!cGsBtt|}x)|D]!}t|tt|}qW|S(N(RR R (RR"RLRR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs cCsh|jrd|jdk rd|jr5|d|j7}n|d|j7}|dt|jd7}n|S(Nu_%su_s%su_w%si(RRRR-tsortedR(RtbaseR((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR!s  (RRR@R!R1RR!(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyRs  % tUnparseableInputExceptioncBseZRS((RR(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pyR%su__main__uusage: %prog TEXT [options]u --verboseu-vthelpudisplay verbose logstactionu store_truetdefaulttdestuverboseu--folu-fu output FOLufolu --questionu-quinput is a questionuquestionu--occuru-ouoccurrence indexu occur_indexiuincorrect number of argumentsRiu\nR.R(LRt __future__RRR$RR9RbtoptparseRRPt functoolsRtnltk.internalsRRtnltk.sem.logicRRRR t nltk.sem.drtR R R R RRRRRt nltk.compatRtobjectRR~RRRRRRRRRRRRRRRR+R%Rtoptst add_optionR@t parse_argstoptionsRLR7terrorRt interpreterR2RkR.RRRRatsimplifyteliminate_equalitytfolt normalizet pretty_print(((s`/private/var/folders/cc/xm4nqn811x9b50x1q_zpkmvdjlphkp/T/pip-build-FUwmDn/nltk/nltk/sem/boxer.pytsf     "@%38  ((((4