ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ ǚPc@sudZddlZddlZddlZddlmZdefdYZdefdYZdZ d efd YZ d efd YZ d efdYZ defdYZ defdYZdefdYZdefdYZddZyddlmZmZWn6ek rgddlmZdZdddZnXdZdS(sexception classesiN(tutilt MakoExceptioncBseZRS((t__name__t __module__(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR stRuntimeExceptioncBseZRS((RR(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyRscCs/|dkrd||fSd|||fSdS(Ns at line: %d char: %ds" in file '%s' at line: %d char: %d(tNone(tlinenotpostfilename((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyt_format_fileposs tCompileExceptioncBseZdZRS(cCsHtj||t|||||_||_||_||_dS(N(Rt__init__R RRRtsource(tselftmessageR RRR((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR s     (RRR (((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR stSyntaxExceptioncBseZdZRS(cCsHtj||t|||||_||_||_||_dS(N(RR R RRRR (R RR RRR((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR #s     (RRR (((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR"stUnsupportedErrorcBseZdZRS(s&raised when a retired feature is used.(RRt__doc__(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR+stNameConflictErrorcBseZdZRS(s3raised when a reserved word is used inappropriately(RRR(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR.stTemplateLookupExceptioncBseZRS((RR(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR1stTopLevelLookupExceptioncBseZRS((RR(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR4st RichTracebackcBsteZdZd d dZedZdZdZedZ edZ edZ dZ RS( sPull the current exception from the ``sys`` traceback and extracts Mako-specific template information. See the usage examples in :ref:`handling_exceptions`. cCsd\|_|_|dks*|dkrBtj\}}}n|dkr]|pW|}n|dkrr|}n||_|j||_t|jt t frddl }|jj|_|jj|_t |_ n|jdS(Ntii(Ri(R RRtsystexc_infoterrort_inittrecordst isinstanceR Rt mako.templatetTruet _has_sourcet _init_message(R Rt tracebacktttvaluettbacktmako((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR >s      cCstj|jS(N(Rtexception_nameR(R ((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyt errornameUscCsyt|j|_WnNtk rfyt|j|_Wqgtk rb|jjd|_qgXnXt|jtst|jdd|_ndS(s+Find a unicode representation of self.erroritasciitreplaceN(tunicodeRRt UnicodeErrortstrtUnicodeEncodeErrortargsR(R ((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR Ys  ccs[xT|D]L}|ddk rA|d|d|d|dfVqt|dd!VqWdS(Niiiii(Rttuple(R Rtrec((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyt_get_reformatted_recordsgs $cCst|j|jS(sReturn a list of 4-tuple traceback records (i.e. normal python format) with template-corresponding lines remapped to the originating template. (tlistR1R(R ((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyR!nscCs t|jS(N(treversedR(R ((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pytreverse_recordswscCst|j|jS(sDReturn the same data as traceback, except in reverse order. (R2R1R4(R ((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pytreverse_traceback{sc Csrddl}i}tj|}g}x8|D]0\}}}} | sOd} ny||\} } Wntk ry7|jj|} | j} | j}| jp|}Wntk rat j s6y,t |d}t j |}|j Wntk rd}nX|r!| j|} q6| jdd} n|j|||| ddddfq.nXd}}i} x[| jdD]J} tjd | }|rt|jd}n|d7}|| | <%! from mako.exceptions import RichTraceback %>\ <% tback = RichTraceback(error=error, traceback=traceback) %>\ Traceback (most recent call last): % for (filename, lineno, function, line) in tback.traceback: File "${filename}", line ${lineno}, in ${function or '?'} ${line | trim} % endfor ${tback.errorname}: ${tback.message} (RR9tTemplate(tlookupR%((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyttext_error_templates  (tsyntax_highlighttpygments_html_formatter(t html_escapeRcCstS(N(Rd(Rtlanguage((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyRbscCs.ddl}|jjddtjddS(sProvides a template that renders a stack trace in an HTML format, providing an excerpt of code as well as substituting source template filenames, line numbers and code for that of the originating source template, as applicable. The template's default ``encoding_errors`` value is ``'htmlentityreplace'``. The template has two options. With the ``full`` option disabled, only a section of an HTML document is returned. With the ``css`` option disabled, the default stylesheet won't be included. iNs <%! from mako.exceptions import RichTraceback, syntax_highlight,\ pygments_html_formatter %> <%page args="full=True, css=True, error=None, traceback=None"/> % if full: Mako Runtime Error % endif % if css: % endif % if full: % endif

Error !

<% tback = RichTraceback(error=error, traceback=traceback) src = tback.source line = tback.lineno if src: lines = src.split('\n') else: lines = None %>

${tback.errorname}: ${tback.message|h}

% if lines:
% for index in range(max(0, line-4),min(len(lines), line+5)): <% if pygments_html_formatter: pygments_html_formatter.linenostart = index + 1 %> % if index + 1 == line: <% if pygments_html_formatter: old_cssclass = pygments_html_formatter.cssclass pygments_html_formatter.cssclass = 'error ' + old_cssclass %> ${lines[index] | syntax_highlight(language='mako')} <% if pygments_html_formatter: pygments_html_formatter.cssclass = old_cssclass %> % else: ${lines[index] | syntax_highlight(language='mako')} % endif % endfor
% endif
% for (filename, lineno, function, line) in tback.reverse_traceback:
${filename}, line ${lineno}:
<% if pygments_html_formatter: pygments_html_formatter.linenostart = lineno %>
${line | syntax_highlight(filename)}
% endfor
% if full: % endif toutput_encodingtencoding_errorsthtmlentityreplace(RR9R_Rtgetdefaultencoding(R%((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pythtml_error_templates  g(RR!RRER%Rt ExceptionRRR R RRRRRtobjectRRRatmako.ext.pygmentpluginRbRct ImportErrort mako.filtersRdRj(((s@/opt/alt/python27/lib/python2.7/site-packages/mako/exceptions.pyts($