
    PhF                     d   d Z ddlZddlZddlZddlZddlmZ ddlmZ ddl	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZL ddlmMZM ddlmNZN dd	lmOZO dd
lmPZP ddlmQZQ ddlmRZR ej                  ZTej                  ZUi ZVi ZWdD ]  ZXdeWeX<   	  eYej                  j                  d ej                                     Z\d ej                   ej                  e\            z   dz    ed      z   dz    ed      z   dz    ed      z   dz    ed      z   dz    ed      z   dz    ed      z   dz    ed      z   dz    ed       z   d!z    ed"      z   d#z    ed$      z   d%z    ed&      z   d'z    ed(      z   d)z    ed*      z   d+z    ed,      z   d-z    ed.      z   d/z   eUz   d0z   d+d+d1g d2d3d4gd5Z_d6d7d8d9d:d;d<d=d=ed> eGe      d=id?
gZ`eWd@dAdBdCdDdEdFg dGedHidIdJgdKgdLZai dMi dNddOddPddQddRddSdTdUddVddWddXddYdZd[dd\dd]dd^dd_dd`d=dad=dbd=dcd=ddd=ded=dPdfdgdhdid=djd=dYd=d[d=dUdkdVdldWdmdXdni d\dod]dpd^dqd_drdsd=dtd=dud=dvdwdxdygdzd{d|d}gd~ddQddOddRddNddd=d=d=d=d=d=d=d=d=d=d=d=d=ed eGe      d=idddd= eGe3      dddd=e3dd eF eG eHe3e%             eGe            d eF eGe3      e% eGe            de3d=ed=i eG eHe3e%e            d eF eGe3      e% eGe            d eF eGe3      e      di eF eG eHe3e%             eGe            diedgiedie>diedi eG eHee            die>diedig eFe; eGe=            dd eG eHe3e            ded=i eG eHe3e            dedi eG eHe3e            di eG eHe3e            ddgiedgiedie>di eG eHee            diedie>diedige!dd eG eHe3e            ded=i eG eHe3e            dedi eG eHe3e            di eG eHe3e            ddgiedgiedie>di eG eHee            diedie>diedige=dd eGe(      diddedig eFee:      di eFe eGe:            dig eFe  eGe!            d eF eG eHe3e%             eGe            d eF eGe3      e% eGe            ded=i eF eG eHe3e%             eGe            d eF eGe3      e% eGe            dedied eGe      diedigedie>diedi eG eHee            die>diedi eFee      di eFe eGe            digedi eGe      diedie2die0dig eGe(      died eG eHee(            di eFe  eGe:       eGe!            d	d eG eHe3e%            d eF eGe3      e%      diddgdddddddddedie>dide>diediedidgdddg dԢ eFe: eGe!            d՜
dddedٜg
Zbe1de/de.de@deDde?deBdeAdeEdeCde7de"dediZcdMeWidedigdecddediedi eFe6 eGe            ddddd eFe6 eGe      e+      ddediedddgdge8dg ddediedigedd eFe eGe            id eFe eGe      e*      ide#d=dd eHeAe@      d=ddeEd=ddeCd=dded=dedide9dgZdg dMeWidedigdd=ecd eFe4e*      di eFe5e*      die+di eFe4e*      dedigi eFe5e*      dedigie+d eFee(      d eFee*      d igid=ddd eFe* eGe4            dddd eFe*e4      ddde+di de*d	id
e*didVe*didXdd_dd]e*didPddd eGe&      digde*dide5dide4dide*didse5didte4didddSddb eGe&      didd d!gdei eGe&      d"ie&d#id$ed% eGe&      d&igid'gd(d)d*ged=d+ded,i eHe%e<      d eG eHe%e<            d-ie+di eFe6 eGe            d.edi eFe6 eGe            d/d0e5die4die5d1ie4d1ie)d2ie)d3ie)d4i eFe6 eGe       eGe8      e*      d5	ed6d7d=i eFe4 eGe            d8d7d=i eGe-      d9ie-d:igd; eGe-      d<i eFe6 eGe      e*      d=d+ediec eFe6 eGe      e(      d=d=ed,i eFe6 eGe            d=d>de%d eGe%      d-ied?ie+d@iedAd0e5die4die5d1ie4d1ie)d4ie)dBie)dCi eFee*      dD	edEi eFe4 eGe            d8id9gdFd<g eFee*      d=d+e+d0i eFee(      dGedi eFee(      d=d>e+dHidgedIed?ied=d>g dJddKedLi eFe+ eGe%            dMige+did eFe+ eGe%            dNige8dOdP eGe%      dQigdRd<ddS eGe%      dNige8d=d+e5die4die5d1ie4d1i eFe) eGe%            dMie)dTige)d3ie)d4 eFe) eGe%            dNi eFe8e*      dUd eFe8e(      iedLie8d=d>dVdWdXdYdZe9d[igde9dKie+d\ided]d^d_d`dadbdcdd eFee,      dedf eFee,      d=d>dgd_d`dadhdcdi eFee'      dedf eFee'      d=d>ediediged=dd0e5die4die5d1ie4d1i eFee*      djdkdldme(dnie*doidpe9dqiee*drie(dsiedtidugigdv eG eHe+e(            dwi eFe( eGe+            dxiedyiged=dzd eFe eGe            id eFe eGe      e*      ide#d=ddeAd=ddeEd=ddeCd=dded=dded/ded/edide9dZeed{idd|d}d~d eFe6 eGe            d=dddde8d=dddded=dddddgZfd Zgddddddddddd
Zhd Ziy(  aG  

Rules for building C/API module with f2py2e.

Here is a skeleton of a new wrapper function (13Dec2001):

wrapper_function(args)
  declarations
  get_python_arguments, say, `a' and `b'

  get_a_from_python
  if (successful) {

    get_b_from_python
    if (successful) {

      callfortran
      if (successful) {

        put_a_to_python
        if (successful) {

          put_b_to_python
          if (successful) {

            buildvalue = ...

          }

        }

      }

    }
    cleanup_b

  }
  cleanup_a

  return buildvalue

Copyright 1999,2000 Pearu Peterson all rights reserved,
Pearu Peterson <pearu@ioc.ee>
Permission to use, modify, and distribute this software is given under the
terms of the NumPy License.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
$Date: 2005/08/30 08:58:42 $
Pearu Peterson

    N)Path   )__version__)C
applyrules	debugcapi
dictappenderrmessgentitlegetargs2hascallstatementhasexternalshasinitvaluehasnotehasresultnoteisarrayisarrayofstringsischaracterischaracterarrayischaracter_or_characterarray	iscomplexiscomplexarrayiscomplexfunctioniscomplexfunction_warnisdummyroutine
isexternal
isfunctionisfunction_wrapisint1isint1arrayisintent_aux
isintent_cisintent_callbackisintent_copyisintent_hideisintent_inoutisintent_nothideisintent_outisintent_overwrite	islogicalislong_complexislong_doubleislong_doublefunctionislong_longislong_longfunctionismoduleroutine
isoptional
isrequiredisscalarissigned_long_longarrayisstringisstringarrayisstringfunctionissubroutineisattr_valueissubroutine_wrapisthreadsafe
isunsignedisunsigned_charisunsigned_chararrayisunsigned_long_longisunsigned_long_longarrayisunsigned_shortisunsigned_shortarrayl_andl_notl_oroutmessreplace
stripcommarequiresf90wrapper)	capi_maps)cfuncs)common_rules)	use_rules)f90mod_rules)	func2subr)decl	frompyobjcleanupfrompyobjtopyarrmethod	pyobjfromclosepyobjfromfreememuserincludes	includes0includestypedefstypedefs_generated	cppmacrosrJ   	callbackslatexdocrestdocroutine_defsexternroutinesinitf2pywraphookscommonhooksinitcommonhooksf90modhooksinitf90modhooks
SOURCE_DATE_EPOCHz/* File: #modulename#module.c
 * This file is auto-generated with f2py (version:#f2py_version#).
 * f2py is a Fortran to Python Interface Generator (FPIG), Second Edition,
 * written by Pearu Peterson <pearu@cens.ioc.ee>.
 * Generation date: a  
 * Do not edit this file directly unless you know what you are doing!!!
 */

#ifdef __cplusplus
extern "C" {
#endif

#ifndef PY_SSIZE_T_CLEAN
#define PY_SSIZE_T_CLEAN
#endif /* PY_SSIZE_T_CLEAN */

/* Unconditionally included */
#include <Python.h>
#include <numpy/npy_os.h>

zSee f2py2e/cfuncs.py: includesz
#includes#
#includes0#

z,See f2py2e/rules.py: mod_rules['modulebody']zM
static PyObject *#modulename#_error;
static PyObject *#modulename#_module;

zSee f2py2e/cfuncs.py: typedefsz
#typedefs#

z(See f2py2e/cfuncs.py: typedefs_generatedz
#typedefs_generated#

zSee f2py2e/cfuncs.py: cppmacrosz
#cppmacros#

zSee f2py2e/cfuncs.py: cfuncsz
#cfuncs#

z"See f2py2e/cfuncs.py: userincludesz
#userincludes#

z"See f2py2e/capi_rules.py: usercodez9
#usercode#

/* See f2py2e/rules.py */
#externroutines#

z#See f2py2e/capi_rules.py: usercode1z
#usercode1#

z%See f2py2e/cb_rules.py: buildcallbackz
#callbacks#

zSee f2py2e/rules.py: buildapiz	
#body#

z&See f2py2e/f90mod_rules.py: buildhooksz
#f90modhooks#

z/See f2py2e/rules.py: module_rules['modulebody']

z&See f2py2e/common_rules.py: buildhooksz
#commonhooks#

zSee f2py2e/rules.pya,  

static FortranDataDef f2py_routine_defs[] = {
#routine_defs#
    {NULL}
};

static PyMethodDef f2py_module_methods[] = {
#pymethoddef#
    {NULL,NULL}
};

static struct PyModuleDef moduledef = {
    PyModuleDef_HEAD_INIT,
    "#modulename#",
    NULL,
    -1,
    f2py_module_methods,
    NULL,
    NULL,
    NULL,
    NULL
};

PyMODINIT_FUNC PyInit_#modulename#(void) {
    int i;
    PyObject *m,*d, *s, *tmp;
    m = #modulename#_module = PyModule_Create(&moduledef);
    Py_SET_TYPE(&PyFortran_Type, &PyType_Type);
    import_array();
    if (PyErr_Occurred())
        {PyErr_SetString(PyExc_ImportError, "can't initialize module #modulename# (failed to import numpy)"); return m;}
    d = PyModule_GetDict(m);
    s = PyUnicode_FromString("#f2py_version#");
    PyDict_SetItemString(d, "__version__", s);
    Py_DECREF(s);
    s = PyUnicode_FromString(
        "This module '#modulename#' is auto-generated with f2py (version:#f2py_version#).\nFunctions:\n"
#docs#".");
    PyDict_SetItemString(d, "__doc__", s);
    Py_DECREF(s);
    s = PyUnicode_FromString("az  ");
    PyDict_SetItemString(d, "__f2py_numpy_version__", s);
    Py_DECREF(s);
    #modulename#_error = PyErr_NewException ("#modulename#.error", NULL, NULL);
    /*
     * Store the error object inside the dict, so that it could get deallocated.
     * (in practice, this is a module, so it likely will not and cannot.)
     */
    PyDict_SetItemString(d, "_#modulename#_error", #modulename#_error);
    Py_DECREF(#modulename#_error);
    for(i=0;f2py_routine_defs[i].name!=NULL;i++) {
        tmp = PyFortranObject_NewAsAttr(&f2py_routine_defs[i]);
        PyDict_SetItemString(d, f2py_routine_defs[i].name, tmp);
        Py_DECREF(tmp);
    }
#initf2pywraphooks#
#initf90modhooks#
#initcommonhooks#
#interface_usercode#

#ifdef F2PY_REPORT_ATEXIT
    if (! PyErr_Occurred())
        on_exit(f2py_report_on_exit,(void*)"#modulename#");
#endif
    return m;
}
#ifdef __cplusplus
}
#endif
)r^   r_   )z*\section{Module \texttt{#texmodulename#}}
z
#modnote#
z
#latexdoc#zdModule #modulename#
================================================================================z

#restdoc#)
modulebodyseparatorsforr^   r_   z/*eof body*/z/*eof method*/z/*eof externroutines*/z/*eof routine_defs*/z/*eof initf90modhooks*/z/*eof initf2pywraphooks*/z/*eof initcommonhooks*/ z#note#)
bodyrS   ra   r`   rf   rb   rd   r^   r_   modnotea=  
#begintitle#
static char doc_#apiname#[] = "\
#docreturn##name#(#docsignatureshort#)\n\nWrapper for ``#name#``.\
\n#docstrsigns#";
/* #declfortranroutine# */
static PyObject *#apiname#(const PyObject *capi_self,
                           PyObject *capi_args,
                           PyObject *capi_keywds,
                           #functype# (*f2py_func)(#callprotoargument#)) {
    PyObject * volatile capi_buildvalue = NULL;
    volatile int f2py_success = 1;
#decl#
    static char *capi_kwlist[] = {#kwlist##kwlistopt##kwlistxa#NULL};
#usercode#
#routdebugenter#
#ifdef F2PY_REPORT_ATEXIT
f2py_start_clock();
#endif
    if (!PyArg_ParseTupleAndKeywords(capi_args,capi_keywds,\
        "#argformat#|#keyformat##xaformat#:#pyname#",\
        capi_kwlist#args_capi##keys_capi##keys_xa#))
        return NULL;
#frompyobj#
/*end of frompyobj*/
#ifdef F2PY_REPORT_ATEXIT
f2py_start_call_clock();
#endif
#callfortranroutine#
if (PyErr_Occurred())
  f2py_success = 0;
#ifdef F2PY_REPORT_ATEXIT
f2py_stop_call_clock();
#endif
/*end of callfortranroutine*/
        if (f2py_success) {
#pyobjfrom#
/*end of pyobjfrom*/
        CFUNCSMESS("Building return value.\n");
        capi_buildvalue = Py_BuildValue("#returnformat#"#return#);
/*closepyobjfrom*/
#closepyobjfrom#
        } /*if (f2py_success) after callfortranroutine*/
/*cleanupfrompyobj*/
#cleanupfrompyobj#
    if (capi_buildvalue == NULL) {
#routdebugfailure#
    } else {
#routdebugleave#
    }
    CFUNCSMESS("Freeing memory.\n");
#freemem#
#ifdef F2PY_REPORT_ATEXIT
f2py_stop_clock();
#endif
    return capi_buildvalue;
}
#endtitle#
z#routine_def#z#initf2pywraphook#z#declfortranroutine#z!#docreturn##name#(#docsignature#)z&#docreturn##name#(#docsignatureshort#)z*"    #docreturn##name#(#docsignature#)\n"
)zarrayobject.h
CFUNCSMESSMINMAXz#define DEBUGCFUNCSz1\subsection{Wrapper function \texttt{#texname#}}
zk
\noindent{{}\verb@#docreturn##name#@{}}\texttt{(#latexdocsignatureshort#)}
#routnote#

#latexdocstrsigns#
zlWrapped function ``#name#``
--------------------------------------------------------------------------------)rk   rm   r`   rb   ra   docdocshortdocsneedr\   r^   r_   rk   callfortranroutineroutdebugenterrO   routdebugleaveroutdebugfailure	setjmpbufz || 	docstrreq	docstropt	docstrout	docstrcbsdocstrsignsz\n"
"latexdocstrsignslatexdocstrreqlatexdocstroptlatexdocstroutlatexdocstrcbskwlist	kwlistoptcallfortrancallfortranappenddocsign
docsignoptz/*decl*/rV   z/*freemem*/docsignshortdocsignoptshortz\nParameters\n----------z$\nOther Parameters\n----------------z\nReturns\n-------z'\nNotes\n-----\nCall-back functions::\nz\noindent Required arguments:z\noindent Optional arguments:z\noindent Return objects:z\noindent Call-back functions:	args_capi	keys_capifunctyperP   z/*frompyobj*/rQ   z/*end of cleanupfrompyobj*/rT   z/*pyobjfrom*/rU   z/*end of closepyobjfrom*/rR   z/*topyarr*/z/*routdebugleave*/z/*routdebugenter*/z/*routdebugfailure*/z/*callfortranroutine*/	argformatz
--- #note#)	keyformatneed_cfuncs	docreturnreturnreturnformatrformatkwlistxakeys_xaxaformat	docsignxadocsignxashortinitf2pywraphookroutnotezf2py_rout_#modulename#_#name#z#modulename#.#name#)apinamepynamerO   _checkz-f2py_rout_#modulename#_#f90modulename#_#name#z##modulename#.#f90modulename#.#name#voidzGextern void #F_FUNC#(#fortranname#,#FORTRANNAME#)(#callprotoargument#);z/extern void #fortranname#(#callprotoargument#);zw    {"#name#",-1,{{-1}},0,0,(char *)  #F_FUNC#(#fortranname#,#FORTRANNAME#),  (f2py_init_func)#apiname#,doc_#apiname#},z]    {"#name#",-1,{{-1}},0,0,(char *)#fortranname#,  (f2py_init_func)#apiname#,doc_#apiname#},zL    {"#name#",-1,{{-1}},0,0,NULL,  (f2py_init_func)#apiname#,doc_#apiname#},F_FUNCzU    fprintf(stderr,"debug-capi:Fortran subroutine `#fortranname#(#callfortran#)'\n");zI        if (#setjmpbuf#) {
            f2py_success = 0;
        } else {z"            Py_BEGIN_ALLOW_THREADSzQ                #callstatement#;
                /*(*f2py_func)(#callfortran#);*/z,                (*f2py_func)(#callfortran#);z             Py_END_ALLOW_THREADSz	        })r   declfortranroutineroutine_defrt   ru   r   zFextern void #F_WRAPPEDFUNC#(#name_lower#,#NAME#)(#callprotoargument#);zv    {"#name#",-1,{{-1}},0,0,(char *)  #F_WRAPPEDFUNC#(#name_lower#,#NAME#),  (f2py_init_func)#apiname#,doc_#apiname#},a  
    {
      extern #ctype# #F_FUNC#(#name_lower#,#NAME#)(void);
      PyObject* o = PyDict_GetItemString(d,"#name#");
      tmp = F2PyCapsule_FromVoidPtr((void*)#F_FUNC#(#name_lower#,#NAME#),NULL);
      PyObject_SetAttrString(o,"_cpointer", tmp);
      Py_DECREF(tmp);
      s = PyUnicode_FromString("#name#");
      PyObject_SetAttrString(o,"__name__", s);
      Py_DECREF(s);
    }
    F_WRAPPEDFUNCz\    fprintf(stderr,"debug-capi:Fortran subroutine `f2pywrap#name_lower#(#callfortran#)'\n");z=    if (#setjmpbuf#) {
        f2py_success = 0;
    } else {z    Py_BEGIN_ALLOW_THREADSz     (*f2py_func)(#callfortran#);z9    #callstatement#;
    /*(*f2py_func)(#callfortran#);*/z    Py_END_ALLOW_THREADSz    })r   r   r   r   rt   ru   r   a  
    {
      extern void #F_FUNC#(#name_lower#,#NAME#)(void);
      PyObject* o = PyDict_GetItemString(d,"#name#");
      tmp = F2PyCapsule_FromVoidPtr((void*)#F_FUNC#(#name_lower#,#NAME#),NULL);
      PyObject_SetAttrString(o,"_cpointer", tmp);
      Py_DECREF(tmp);
      s = PyUnicode_FromString("#name#");
      PyObject_SetAttrString(o,"__name__", s);
      Py_DECREF(s);
    }
    #ctype#z#rname#,z#pydocsignout#z"\item[]{{}\verb@#pydocsignout#@{}}z--- #resultnote#z#ifdef USESCOMPAQFORTRAN
    fprintf(stderr,"debug-capi:Fortran function #ctype# #fortranname#(#callcompaqfortran#)\n");
#else
    fprintf(stderr,"debug-capi:Fortran function #ctype# #fortranname#(#callfortran#)\n");
#endif
zZ    fprintf(stderr,"debug-capi:Fortran function #ctype# #fortranname#(#callfortran#)\n");
)r   r   r|   r   ru   r   zJextern #ctype# #F_FUNC#(#fortranname#,#FORTRANNAME#)(#callprotoargument#);z2extern #ctype# #fortranname#(#callprotoargument#);zJ    {"#name#",-1,{{-1}},0,0,NULL,(f2py_init_func)#apiname#,doc_#apiname#},z&    #ctype# #name#_return_value={0,0};z"    #ctype# #name#_return_value=0;z1    PyObject *#name#_return_value_capi = Py_None;zP    #callstatement#;
/*    #name#_return_value = (*f2py_func)(#callfortran#);*/
z6    #name#_return_value = (*f2py_func)(#callfortran#);zY    fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value.r,#name#_return_value.i);zA    fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value);zH    #name#_return_value_capi = pyobj_from_#ctype#1(#name#_return_value);zpyobj_from_#ctype#1	long_longlong_doublez	#rformat#z,#name#_return_value_capiz,#name#_return_value)	r   r   rO   ru   rT   rt   r   r   r   zs    {"#name#",-1,{{-1}},0,0,(char *)#F_FUNC#(#fortranname#,#FORTRANNAME#),(f2py_init_func)#apiname#,doc_#apiname#},z[    {"#name#",-1,{{-1}},0,0,(char *)#fortranname#,(f2py_init_func)#apiname#,doc_#apiname#},z'    #ctype# #name#_return_value = NULL;z$    int #name#_return_value_len = 0;z,#name#_return_value,#name#_return_value_len,z(    #name#_return_value_len = #rlength#;zS    if ((#name#_return_value = (string)malloc(#name#_return_value_len+1) == NULL) {z<        PyErr_SetString(PyExc_MemoryError, "out of memory");z        f2py_success = 0;z    } else {z>        (#name#_return_value)[#name#_return_value_len] = '\0';z    if (f2py_success) {z        Py_BEGIN_ALLOW_THREADSzv#ifdef USESCOMPAQFORTRAN
        (*f2py_func)(#callcompaqfortran#);
#else
        (*f2py_func)(#callfortran#);
#endif
z        Py_END_ALLOW_THREADSz]        fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value_len,#name#_return_value);z2    } /* if (f2py_success) after (string)malloc */z$    STRINGFREE(#name#_return_value);)r   r   
STRINGFREE)
r   r   rO   r   ru   r   r   rV   rt   r   z]    fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#(#docsignature#)\n");zZ    fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#: successful.\n");zW    fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#: failure.\n");)rv   rw   rx   r   complex_long_doubleunsigned_charunsigned_shortunsignedunsigned_long_longsigned_char	characterz1    /* Processing auxiliary variable #varname# */z'    fprintf(stderr,"#vardebuginfo#\n");z,    /* End of cleaning variable #varname# */)rP   rQ   rt   z    #ctype# #varname# = 0;zmath.hz    #varname# = #init#;)rO   rt   rP   r   z
,#varname#z#outvarname#,z#varrformat#)r   r|   r   r   r   z    #ctype# #varname#;z3    #varname#.r = #init.r#, #varname#.i = #init.i#;)rO   rP   r       #ctype# #varname# = NULL;    int slen(#varname#);zlen..)rO   rt   r   )    #ctype# *#varname# = NULL;4    npy_intp #varname#_Dims[#rank#] = {#rank*[-1]#};&    const int #varname#_Rank = #rank#;forcombro   r   )rt   r   _dependzflen(#varname#),string)r   rt   r   z'    /* Processing variable #varname# */)rP   rQ   r   rt   z#pydocsign#z\item[]{{}\verb@#pydocsign#@{}}z--- See above.)r{   rz   r|   r   r   r   dependz"#varname#",z
#varname#,)r   r   r   z#varname#=#showinit#,)r   r   r   r   )r   r   r   r   z#varname#_extra_args=(),r   z#varname#_extra_args,z=#varname#_extra_args : input tuple, optional\n    Default: ()z
#cbdocstr#z\item[] #cblatexdocstr#z}\item[]{{}\verb@#varname#_extra_args := () input tuple@{}} --- Extra arguments for call-back function {{}\verb@#varname#@{}}.z3    #cbname#_t #varname#_cb = { Py_None, NULL, 0 };z1    #cbname#_t *#varname#_cb_ptr = &#varname#_cb;z,    PyTupleObject *#varname#_xa_capi = NULL;z$    #cbname#_typedef #varname#_cptr;r   z"#varname#_extra_args",Or   r   zO!z,&#varname#_cb.capir   z!,&PyTuple_Type,&#varname#_xa_capiz(setjmp(#varname#_cb.jmpbuf))z#varname#_cptr,rt   z#cbname#zsetjmp.hzif(F2PyCapsule_Check(#varname#_cb.capi)) {
  #varname#_cptr = F2PyCapsule_AsVoidPtr(#varname#_cb.capi);
} else {
  #varname#_cptr = #cbname#;
}
a  if (#varname#_cb.capi==Py_None) {
  #varname#_cb.capi = PyObject_GetAttrString(#modulename#_module,"#varname#");
  if (#varname#_cb.capi) {
    if (#varname#_xa_capi==NULL) {
      if (PyObject_HasAttrString(#modulename#_module,"#varname#_extra_args")) {
        PyObject* capi_tmp = PyObject_GetAttrString(#modulename#_module,"#varname#_extra_args");
        if (capi_tmp) {
          #varname#_xa_capi = (PyTupleObject *)PySequence_Tuple(capi_tmp);
          Py_DECREF(capi_tmp);
        }
        else {
          #varname#_xa_capi = (PyTupleObject *)Py_BuildValue("()");
        }
        if (#varname#_xa_capi==NULL) {
          PyErr_SetString(#modulename#_error,"Failed to convert #modulename#.#varname#_extra_args to tuple.\n");
          return NULL;
        }
      }
    }
  }
  if (#varname#_cb.capi==NULL) {
    PyErr_SetString(#modulename#_error,"Callback #varname# not defined (as an argument or module #modulename# attribute).\n");
    return NULL;
  }
}
z    if (create_cb_arglist(#varname#_cb.capi,#varname#_xa_capi,#maxnofargs#,#nofoptargs#,&#varname#_cb.nofargs,&#varname#_cb.args_capi,"failed in processing argument list for call-back #varname#.")) {
z        fprintf(stderr,"debug-capi:Assuming %d arguments; at most #maxnofargs#(-#nofoptargs#) is expected.\n",#varname#_cb.nofargs);
        CFUNCSMESSPY("for #varname#=",#varname#_cb.capi);zK        fprintf(stderr,"#vardebugshowvalue# (call-back in C).\n",#cbname#);z        CFUNCSMESS("Saving callback variables for `#varname#`.\n");
        #varname#_cb_ptr = swap_active_#cbname#(#varname#_cb_ptr);z        CFUNCSMESS("Restoring callback variables for `#varname#`.\n");
        #varname#_cb_ptr = swap_active_#cbname#(#varname#_cb_ptr);
        Py_DECREF(#varname#_cb.args_capi);
    }SWAPcreate_cb_arglist)rP   rQ   rt   r   r   z6    fprintf(stderr,"#vardebugshowvalue#\n",#varname#);z&#varname#,)rO   rT   r   r   r   )rt   r   '    PyObject *#varname#_capi = Py_None;z,&#varname#_capiz]    f2py_success = try_pyarr_from_#ctype#(#varname#_capi,&#varname#);
    if (f2py_success) {z2    } /*if (f2py_success) of #varname# pyobjfrom*/ztry_pyarr_from_#ctype#)	rO   r   r   r   r   rT   rU   rt   r   z;    if (#varname#_capi == Py_None) #varname# = #init#; elser   z"    if (#varname#_capi != Py_None)z        f2py_success = #ctype#_from_pyobj(&#varname#,#varname#_capi,"#pyname#() #nth# (#varname#) can't be converted to #ctype#");
    if (f2py_success) {zo        #varname# = (#ctype#)PyObject_IsTrue(#varname#_capi);
        f2py_success = 1;
    if (f2py_success) {z(    } /*if (f2py_success) of #varname#*/z#ctype#_from_pyobj)rP   rt   r   r   )rP   r   r   zD    fprintf(stderr,"#vardebugshowvalue#\n",#varname#.r,#varname#.i);z,#varname#_capi)rO   r   rT   r   r   ze        f2py_success = try_pyarr_from_#ctype#(#varname#_capi,&#varname#);
        if (f2py_success) {z6        } /*if (f2py_success) of #varname# pyobjfrom*/)	rO   r   r   r   r   rt   rT   rU   r   zW    if (#varname#_capi==Py_None) {#varname#.r = #init.r#, #varname#.i = #init.i#;} elsez3    }  /*if (f2py_success) of #varname# frompyobj*/)rO   r   z4    #varname#_capi = pyobj_from_#ctype#1(#varname#);)rT   rt   r   )r   r   r   zslen(#varname#),zF    fprintf(stderr,"#vardebugshowvalue#\n",slen(#varname#),#varname#);z:        STRINGPADN(#varname#, slen(#varname#), ' ', '\0');
STRINGPADN)rO   r   r   rT   r   rt   r   z    slen(#varname#) = #elsize#;
    f2py_success = #ctype#_from_pyobj(&#varname#,&slen(#varname#),#init#,#varname#_capi,"#ctype#_from_pyobj failed in converting #nth#`#varname#' of #pyname# to C #ctype#");
    if (f2py_success) {z:        STRINGPADN(#varname#, slen(#varname#), '\0', ' ');zH        STRINGFREE(#varname#);
    }  /*if (f2py_success) of #varname#*/r   z    f2py_success = try_pyarr_from_#ctype#(#varname#_capi, #varname#,
                                          slen(#varname#));
    if (f2py_success) {)r   r   r   r   rT   rU   rt   r   r   r   r   z2    PyArrayObject *capi_#varname#_as_array = NULL;z"    int capi_#varname#_intent = 0;z    int slen(#varname#) = 0;z,capi_#varname#_as_array)rO   r   r   r   rt   r   z%    int capi_overwrite_#varname# = 1;z"overwrite_#varname#",iz,&capi_overwrite_#varname#zoverwrite_#varname#=1,zoverwrite_#varname#,z9overwrite_#varname# : input int, optional\n    Default: 1)rO   r   r   r   r   r   r{   r   zK    capi_#varname#_intent |= (capi_overwrite_#varname#?0:F2PY_INTENT_COPY);z%    int capi_overwrite_#varname# = 0;zoverwrite_#varname#=0,z9overwrite_#varname# : input int, optional\n    Default: 0)rO   r   r   r   r   r   z    #setdims#;z&    capi_#varname#_intent |= #intent#;zk    const char * capi_errmess = "#modulename#.#pyname#: failed to create array from the #nth# `#varname#`";z    capi_#varname#_as_array = ndarray_from_pyobj(  #atype#,#elsize#,#varname#_Dims,#varname#_Rank,  capi_#varname#_intent,Py_None,capi_errmess);z    capi_#varname#_as_array = ndarray_from_pyobj(  #atype#,#elsize#,#varname#_Dims,#varname#_Rank,  capi_#varname#_intent,#varname#_capi,capi_errmess);a9      if (capi_#varname#_as_array == NULL) {
        PyObject* capi_err = PyErr_Occurred();
        if (capi_err == NULL) {
            capi_err = #modulename#_error;
            PyErr_SetString(capi_err, capi_errmess);
        }
    } else {
        #varname# = (#ctype# *)(PyArray_DATA(capi_#varname#_as_array));
z/    slen(#varname#) = f2py_itemsize(#varname#);z$    if (#varname#_capi == Py_None) {z    {z        #ctype# capi_c;a          int *_i,capi_i=0;
        CFUNCSMESS("#name#: Initializing #varname#=#init#\n");
        if (initforcomb(PyArray_DIMS(capi_#varname#_as_array),
                        PyArray_NDIM(capi_#varname#_as_array),1)) {
            while ((_i = nextforcomb()))
                #varname#[capi_i++] = #init#; /* fortran way */
        } else {
            PyObject *exc, *val, *tb;
            PyErr_Fetch(&exc, &val, &tb);
            PyErr_SetString(exc ? exc : #modulename#_error,
                "Initialization of #nth# #varname# failed (initforcomb).");
            npy_PyErr_ChainExceptionsCause(exc, val, tb);
            f2py_success = 0;
        }
    }
    if (f2py_success) {zG    }  /* if (capi_#varname#_as_array == NULL) ... else of #varname# */zl    if((PyObject *)capi_#varname#_as_array!=#varname#_capi) {
        Py_XDECREF(capi_#varname#_as_array); }z,        Py_XDECREF(capi_#varname#_as_array);z.    }  /*if (f2py_success) of #varname# init*/)rP   rQ   r   r   z6    fprintf(stderr,"debug-capi:Checking `#check#'\n");)rP   rt   zQ    CHECKSCALAR(#check#,"#check#","#nth# #varname#","#varshowvalue#",#varname#) {z    } /*CHECKSCALAR(#check#)*/CHECKSCALAR)rP   rQ   rt   r   _breakzQ    CHECKSTRING(#check#,"#check#","#nth# #varname#","#varshowvalue#",#varname#) {z    } /*CHECKSTRING(#check#)*/CHECKSTRING
CHECKARRAYz5    CHECKARRAY(#check#,"#check#","#nth# #varname#") {z    } /*CHECKARRAY(#check#)*/)rt   rP   rQ   r   r   CHECKGENERICz7    CHECKGENERIC(#check#,"#check#","#nth# #varname#") {z    } /*CHECKGENERIC(#check#)*/)rt   rP   rQ   c           	         t        d| d   z         i }t        dd }t        j                  |       }t	        dt
        i|      }g }g }| d   D ]  }d}	| d   D ]+  }
|
d   dvrt        d	       |
d   D ]  }|d   |k(  s|}	 + - |	st        d
|z  t        j                         Z|	g}d|	v rN|	d   j                         D ]8  \  }}t        j                  |	      }|d= ||d<   ||d<   |j                  |       : |D ]+  }	t        |	      }t        d   rt        d   }|d   }t        d       t!        | d|d          j#                          |r]t        d| d       t!        | d| d      j#                          t        d| d       t!        | d| d      j#                          n.t        d| d       t!        | d| d      j#                          t%        |	      \  }}|r%|r|j                  |       n|j                  |       t'        ||      }t	        ||      }.  t)        j*                  |       \  }}|r|j                  |       t'        ||      }t	        ||      }t-        j*                  |       \  }}|r|j                  |       t'        ||      }t	        ||      }|D ]-  }t/        j0                  || d   |d            }t	        ||      }/ t3        j4                         }|dxx   t        j6                  D cg c]  }|t8        j;                         v r| c}z  cc<   i }|j=                         D ]  }g ||<   ||   D ]  }d}|t2        j>                  v rt2        j>                  |   }nq|t2        j@                  v rt2        j@                  |   }nJ|t2        jB                  v rt2        jB                  |   }n#|t2        jD                  v rt2        jD                  |   }n|t2        jF                  v rt2        jF                  |   }n|t2        jH                  v rt2        jH                  |   }n|t2        j2                  v rt2        j2                  |   }n|t2        jJ                  v rt2        jJ                  |   }ne|t2        jL                  v rt2        jL                  |   }n?|t2        jN                  v rt2        jN                  |   }nt        dtQ        |      z         ||   j                  |         |j                  |       |D ]/  }d|v r |d   |       sd|vst'        |||       }t	        ||      }1 t'        tR        |      }tT        jV                  jY                  t        d   |d         }||d<   t[        |d      5 }|j]                  |d    j_                  d!d"             ddd       t        d#| d   d$|d%       t        d&   rtT        jV                  jY                  t        d   |d   d'z         }t[        |d      5 }|j]                  d(       |j]                  d)jY                  |d*                ddd       t        d+t        d   d|d   d,       t        d-   rtT        jV                  jY                  t        d   |d   d.z         }||d/<   t[        |d      5 }|j]                  d0t
        z         d1t        vr4|j]                  d2       |j]                  d)jY                  |d3                d1t        vr|j]                  d4       ddd       t        d5t        d   d|d   d6       |rtT        jV                  jY                  t        d   |d7         } | |d8<   t[        | d      5 }|j]                  d9       |j]                  d:t
        z         |j]                  d;       g }!d<jY                  |      d)z   ja                  d)      D ]  }"d=|"jc                  d>      cxk  rd?k  rn n|!j                  |"d)z          5|"rV|"d=   d@k(  rNte        |"      d?k\  r+|!j                  |"dd? dAz          |"d?d }"te        |"      d?k\  r+|!j                  |"d)z          |!j                  |"d)z           djY                  |!      j_                  dBd)      }!|j]                  |!       ddd       t        dC| z         |rtT        jV                  jY                  t        d   dD|d   z        } | |d8<   t[        | d      5 }|j]                  dE       |j]                  dFt
        z         |j]                  dG       g }!d<jY                  |      d)z   ja                  d)      D ]  }"d=|"jc                  d>      cxk  rdHk  rn n|!j                  |"d)z          5te        |"      dHkD  rr|"d=   d@k(  rj|!j                  |"ddH dIz          |"dHd }"te        |"      d?kD  r+|!j                  |"dd? dIz          |"d?d }"te        |"      d?kD  r+|!j                  |"d)z          |!j                  |"d)z           djY                  |!      j_                  dBd)      }!|j]                  |!       ddd       t        dJ| z         |S c c}w # 1 sw Y   xY w# 1 sw Y   PxY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   RxY w)Kz
    Return
    z    Building module "%s"...
nameNf2py_version
interfacedrm   block)	interfacezabstract interfacez1buildmodule: Expected interface block. Skipping.
zKbuildmodule: Could not find the body of interfaced routine "%s". Skipping.
)fileentryargsemptygen	buildpath
modulenamez(    Generating possibly empty wrappers"
/coutputz    Maybe empty "z-f2pywrappers2.f90"
z-f2pywrappers2.f90z-f2pywrappers.f"
z-f2pywrappers.fuserZ   rl   zbuildmodule: unknown need %s.
r   csrcwrj   	z  z    Wrote C/API module "z" to file "z"
	dorestdoczmodule.restz.. -*- rest -*-
rg   r_   z)    ReST Documentation is saved to file "zmodule.rest"

dolatexdocz
module.texltxz6%% This file is auto-generated with f2py (version:%s)

shortlatexzO\documentclass{article}
\usepackage{a4wide}
\begin{document}
\tableofcontents

r^   z\end{document}z$    Documentation is saved to file "zmodule.tex"
f2py_wrapper_outputfsrczC     -*- fortran -*-
z8C     This file is autogenerated with f2py (version:%s)
z<C     It contains Fortran 77 wrappers to fortran functions.
ri   r   !B    z
     &z
     &
z*    Fortran 77 wrappers are saved to "%s"
z%s-f2pywrappers2.f90z!     -*- f90 -*-
z8!     This file is autogenerated with f2py (version:%s)
z<!     It contains Fortran 90 wrappers to fortran functions.
H   z&
     &z*    Fortran 90 wrappers are saved to "%s"
)3rE   defmod_rulesrI   modsign2mapr   r   r	   printsysstderritemscopydeepcopyappendrH   optionsr   touchbuildapir   rK   
buildhooksrM   rL   buildusevarsrJ   	get_needsf2cmap_mappedtypedef_need_dictvalueskeysrX   rY   rW   rZ   r[   r\   r]   re   rc   reprmodule_rulesospathjoinopenwriterF   splitfindlen)#mumret	mod_rulesvrdrdfuncwrappersfuncwrappers2nnbbibnb_listkanb1isf90b_pathm_nameapiwraparcrmruneedscvarcodecrfnfwnlinesls#                                      [C:\Users\daisl\Desktop\realtime-object-detection\venv\Lib\site-packages\numpy/f2py/rules.pybuildmoduler!    s	
    +qy9:
CQI



"C	^\2C	8BLM|_F)B'{"EELMZV9>B  	  ^bcdknkukuw$b=7))+1mmB'LFFs# , B 'r*Ez" -\*CDxqY 01288:/x7LMNF81VH,>?@FFH/x7IJKF81VHO<=CCE /x7IJKF81VHO<=CCE IC!((. ''-C%BB#B7 / j &&q)HBD!	B	B	B	B &&q)HBT"	B	B	B	B##Aqx&	':;B  E	*9+B+B A+B4!%6%=%=%?? +B A ADZZ\QqAAF$$$$$Q'foo%OOA&f)))''*foo%OOA&f///--a0f&&&$$Q'fmm#MM!$f&&&$$Q'f(((&&q)f(((&&q)9T!WEFGNN13  8 TMkak!n(!2CAsA&BB#B  
L"	%B	gk*C	N	;BCK	b#!	< ((w78 
AfIrJK{WW\\K #l"3m"CE"c]aGG'(GGDIIbm,-  	%s<'8: 	;|WW\\K #l"3l"BDE
"c]aGGI\Z\7*np		"Z.127*)*  	%s<'8: 	;WW\\'+.4I0JKF"c]aGG-.GGK|\^GGOQEkk,/$6==dCs(b(LLT*1Q43;a&B,QsVj%89bcF a&B, LLT*LLT* D GGEN**<>EGGEN' ( 	=DEWW\\K "8C<M"NPF"c]aGG)*GGK|\^GGOQEkk-047>>tDs(b(LLT*Vb[QqTS[LL3B+!56"#Aa&2+QsVk%9:bcF a&2+ LLT*LLT* E GGEN**<>EGGEN+ , 	=DEJmAP 
 ] ] ]2 ]sS   j
#%j'5j*A.j7Ck/Ak#C?k#Akj'*j47kkkstndr  th)
r                        	   r   c           	      @	   t        j                  |       \  } }t        |       \  }}|t        _        | d   }t        |       rt        d| d   d| d   d       nt        d| d   z         t        j                  |       }t        i |      }t        D ]/  }d|v r |d   |       sd|vst        |||       }t        ||      }1 d	\  }	}
i }|D ]  }t        j                  |||         }t        ||         rt        }not        }t        ||         sVt!        ||         s$|	d
z   }	t#        |	      t$        |	dz     z   dz   |d<   n)|
d
z   }
t#        |
      t$        |
dz     z   dz   |d<   nd|d<   |||<   |D ]@  }d|v rd|v r |d   ||         sd|vst        ||||         }t        ||      }d|v s@   |D ]  }t        ||         rt        }nt        }||   }|D ]@  }d|vrd|v r |d   ||         sd|vst        ||||         }t        ||      }d|v s@ n d||   v sp||   d   D ]'  }||d<   t        t&        |||         }t        ||      })  t)        |d   t*              r|d   j-                          t)        |d   t*              r|d   j-                          t/        t1        d|d   |d   |d   d            |d<   t/        t1        d|d   |d   d            }|dk(  rt/        t1        d d|d   i            |d!<   nt1        d"|d   |d#      |d!<   |d!   j1                  d$d%      |d&<   |d&   j1                  d'd(      |d&<   t/        t1        d)|d*   |d+   d,            }t3        |d+         d
kD  r"t/        t1        d-|d*   |d+   d,            |d.<   n||d.<   ||d*<   t)        |d/   t*              r t/        t1        d0d/|d/   i            d1z   |d/<   g |d2<   g |d3<   d4D ]g  }||v r!t)        ||   t*              r|d2   ||   z   |d2<   d5|z   }||v s2t)        ||   t*              sF|d3   ||   d6d
 z   d7gz   ||   d
d  z   d8gz   |d3<   i t        t4        |      }t        |       rt        d9|d:   z         ||fS t        d;|d:   z         ||fS )<Nvarsz+            Constructing wrapper function "r   .r   z"...
z.        Constructing wrapper function "%s"...
r   )r   r   r   
   z	 argumentnthz keywordhiddenr   r   checkrQ   rU   z #docsign##docsignopt##docsignxa#r   r   r   )r   r   r   docsignaturez#docsignopt##docsignxa#r   r   )r   r   rl   z	#docsign#docsignatureshortz#docsign#[#docsignopt#])r   r   _z\_latexdocsignatureshort,z, z #callfortran##callfortranappend#r   r   )r   r   z##callfortran# 0,#callfortranappend#callcompaqfortranr   z#docreturn#z = r~   r   )rz   r{   r|   r}   latexr   z\begin{description}z\end{description}z              %s
rr   z          %s
)rN   assubrr   rI   depargsr/   rE   routsign2mapr   
rout_rulesr   sign2mapr    	aux_rules	arg_rulesr$   r0   r   stndcheck_rules
isinstancelistreverserG   rF   r   routine_rules)routr  r   r<  varr  r  r  r  r1  nthksavevrdr  _rulesr  optargscfsr
  s                     r   r   r     s   !!$'JD$TNMD'I
v,Ctl#T&\3 	4 	AT&\RS

 
 
&C	B	BMkak$/XQ5FAsD)BB#B  ICG  CF+AFF Q(!#a&)'C!%cT#(^!;k!ICJ!8D!%dd4"9o!=
!JCJ%E

AA~A+!H+c!f"581;L3A/B'q= ! 0 AFFajA!A+!H+c!f"581;L3A/B'q=  c!fVG_ GS#a&9B' % & "'($/
&&("%&-
$$&#G,N8:9;=l;K:<[/-K%L MB~ !:/12B/C023D0E"G# $G "}",K)R	]!;<#> #**C68m9@+-#. $&&9#:#B#B3#NB #% $"")'#t"4  
W?$&}$5BObLcBe f gC
2!"#a'",W5Z<>}<Mdfgzd{]} .~ # #&B}"[/4($MKK#ABDFKL;B}BA7z"Q%. "= 1BqE 9B}aK7z"Q%.%'(:%;beAaj%H'(&)+-a59&5%&&'B!" B 
M2	&Bt$:78 t8O 	 BzN34t8O    )j__doc__r   r   timer   pathlibr   rl   r   auxfuncsr   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   versionr   numpy_versionr   sepdictr
  intenvirongetgenerationtimeasctimegmtimer   r   rG  r>  r   r@  rA  rC  r!  rB  r    rO  r   <module>r^     sK  2f                      (      ""##


,A GAJ
,& RZZ^^$7EF
 '$,,{t{{>'BCD
G* /0+1*4+2 =>3?2B3: /0;1:4; @ 9:A ;@>A#F 01G#2F5G&L -.M&/L2M)R 34S)5R8S,X 34Y,5X8Y2d 45e26d9e5j 67k58j;k8p ./q80p3q;v 78w;9v<w>| @A}>B|E}@@ 78A@9@<ACF $%GC&F()#Gk#V &3Wk3V6WHR #)!') 3_Qh /+151(E'NB7
 7p $-,.8:523G ; SLb' . 6F fVZ *D2Dd%v &t .9$ ALT &t	 .;I	
 -d +D 3CD +D 3CD' 	"' "2' (5b' ;Nr' 	2' $R' *0' 	=' 	' .r' 	r' .r' 	1'  	=!'" 	+#'$ 	B%'& 	:''( 	:)'* 	6+', 	;-'. 	R/'. %b/'. +5b/'0 	_1'4 	:;5'6 	_7': 	67;'< 	=='< #34H='> 	.?'@ 	2A'B 	6C'D 	RE'D ')2rb22BZ\lE'NB?M'P 3'(	 C7!	 $U4+L%MuUcOde  hq$U?%;Z~I^_  bS.-r! $
NCD: %(*eN6KL:%(.9:
 uT/:>?~AVWYaboq r   ?@  4 54(.9:CE=>?+
 e,=&>?G$J $T/>%JK  NV-r!
 $78: :
 #4#HI L 	 tO^<=QY?Z[vx y   784(.9:79LN567#
 "W,Z $T/>%JK  NV-r!
 $78: :
 #4#HI L 	 tO^<=QY?Z[vx y   784(.9:79LN567#
 $W,Z M*J7%A)+=>@ %i1A B E   !&i7G1H I L  
! 
E/$:;#&  %U4+L%MuUcOde  ht$U?%;Z~I^_  bV-r!
 %_j9:'); %(*eN6KL;8
 )*R)*,PR#EG    78    4(.9:MO567#9/0qs9e$5679}~@  ()st'2#%:;%{3'79 }-{;$&A/?@BXZ
E*:$;U?=ST_0b hd?J?@ PeO4jAw
 ;79DHH^9,_%7+ .   ,-MN  ,-KL+[9( #CDR3 6 $(93')?@S*X {wv	wa
J	 !+"M#%:$o%'7)+?)?*,<.0D,k]2K " 	 J "LMQJ!	 -x("$=>%	"23	 %$&%	"2LA )"$YZ 1+ y ,	2\<4PQ 	%~!67 	%~!68HI 
 (/:
 $
 (
  /0BC_T	lII
 @ "LMQJ!	I J(89=IJ(89=I"$45 -=>AdBI<AXAZ [ -=>AdBI<AXAZ ['*P+0-+H,+0:J+KM]+_*` a I6 !(%
*;<5I@ $-'(*5	?IN %&MIX&(BC+-DE 	&(hi 	\	
 	4 	+  .p  q 	FD?)*8: 	%'@A 	j#& 	j#&  	%t,!" 	j"78#$ 	j"78%& 	6'( 	4)* 	/02CD+, 	Z(-. 	/YIL ./ 2    6  ?   12  5I  JK LFQ+
Z		
 ,-k6KI| -!Z[Z6eDQ[]iLjFkmz{.%	"23{IH x(%	"23GIN : #& #& "45 "45$ '  *+_`!9:%	"2E(O(*MIH X:u\235Y9      /
8 Gy!#78%	"24DEA!gIj #$=>!%	"2MB	iIt  !Z[%	"23sI@ )"L%
2C]S!hi!23IL : #& #& "45 "45!9:$ '   *+cd	#34KId $%~Z|)<=CE23
 R%&	#34
cIx HI	=1wI~ #$YZ	=1}IF #$Z[&'EIN  !hiMIZ< #.DE <z!23JL
  .eJ&78,GI#YI@ :JL

- &w
#\24%}Id !#& #& "45 "45>5#45JL   *+_`!9~uZ'89<I"23cID	 	%-0C	IH	  !jkG	IT	 2G9E5!?@ #+-?@!;<S	In	 8,/-0Q!34	m	I@
 c!34	IJ
 8,/-0Q/	I
I\
 c/[
Id
 	*\<,HIc
Il
 : #& #& "45 "45!12k
I|
 4D>? EF	 >@!79(!:; 3/bO4m45 82 3 =%"56GIKL	
 y=y
Ix 	%~!67wI| 	%~!68HI{IB CIL #MIV $WI` (aIj kIv uI@ "IJ /0BCII	^  !]^ o<%	"23 o< P; R=-DIZ DTdtDTdt5srO  