https://t.me/RX1948
Server : Apache
System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
User : dh_edsupp ( 6597262)
PHP Version : 8.2.26
Disable Function : NONE
Directory :  /lib/python3/dist-packages/numpy/f2py/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/numpy/f2py/__pycache__/rules.cpython-310.pyc
o

6��a���@s�dZddlZddlZddlZddlmZejZejZddl	m
Z
mZmZm
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm 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@mAZAmBZBmCZCmDZDmEZEmFZFmGZGddlmHZHddlmIZIddlmJZJdd	lmKZKdd
lmLZLddlmMZMiZNiZOdD]ZPd
eOeP<q�eQejR�Sde����ZTde�Ue�VeT��ded�ded�ded�ded�ded�ded�ded�ded�d ed!�d"ed#�d$ed%�d&ed'�d(ed)�d*ed+�d,ed-�d.ed/d*d*d0�gd1�d2d3gd4�ZWd5d6d7d8d9d:d;d<d<ed=eBe�d<id>�
gZXeOd?d@dAdBdCdDdEgdF�edGidHdIgdJgdK�ZYidLidMd
�dNd
�dOd
�dPd
�dQd
�dRdS�dTd
�dUd
�dVd
�dWd
�dXdY�dZd
�d[d
�d\d
�d]d
�d^d
��d_d<�d`d<�dad<�dbd<�dcd<�ddd<�dOde�dfdg�dhd<�did<�dXd<�dZd<�dTdj�dUdk�dVdl�dWdm�id[dn�d\do�d]dp�d^dq�drd<�dsd<�dtd<�dudv�dwdxg�dydz�d{d|g�d}d~�dPd�dNd��dQd��dMd��d�d<��d<d<d<d<d<d<d<d<d<d<d<d<ed�eBe�d<id��
�d�d�d<eBe/�d��d�d�d<e/d��d�eAeBeCe/e!��eBe��d�eAeBe/�e!eBe��d�e/d<ed<ieBeCe/e!e��d�eAeBe/�e!eBe��d�eAeBe/�e�d�ieAeBeCe/e!��eBe��d�ied�gied�ie9d�ied�ieBeCee��d�ie9d�ied�igeAe7eBe8��d��d�eBeCe/e��d�ed<ieBeCe/e��d�ed�ieBeCe/e��d�ieBeCe/e��d�d�gied�gied�ie9d�ieBeCee��d�ied�ie9d�ied�iged��d�eBeCe/e��d�ed<ieBeCe/e��d�ed�ieBeCe/e��d�ieBeCe/e��d�d�gied�gied�ie9d�ieBeCee��d�ied�ie9d�ied�ige8d��d�eBe$�d�id�d�ed�igeAee6�d�ieAeeBe6��d�igeAeeBe��d��eAeBeCe/e!��eBe��d�eAeBe/�e!eBe��d�ed<ieAeBeCe/e!��eBe��d�eAeBe/�e!eBe��d�ed�ied�eBe�d�ied�iged�ie9d�ied�ieBeCee��d�ie9d�ied�ieAee�d�ieAeeBe��d�iged�ieBe�d�ied�ie.d�ie,d�igeBe$�d�ied�eBeCee$��d�ieAeeBe6�eBe��d��	d�eBeCe/e!��d�eAeBe/�e!�d�id�d�gd�d�d�d�d�d�d�d�d�ed�ie9d�id�e9d�ied�ied�id�gd�d�d�gdТeAe6eBe��dќ
d�d�d�ed՜g
ZZe-d�e+d�e*d�e;d�e?d�e:d�e=d�e<d�e@d�e>d�e3d�iZ[dLeOid�ed�igd�e[dޜd�ed�ied�ieAe2eBe��d�d�d�d�d�eAe2eBe�e'�d�d�ed�ied�d�d�gd�ge4d�gd�d�ed�ied�iged�d�eAeeBe��id�eAeeBe�e&�id�ed<d�d�e<d<d�d�e@d<d�d�e>d<d�d�ed<d�ed�id�e5d��gZ\gdLeOi�d�ed�igd�d<e[d���eAe0e&�d�ieAe1e&�d�ie'd�ieAe0e&�d�ed�igieAe1e&�d�ed�igie'd�eAee$�d�eAee&�d�igid<d���d�d�eAe&eBe0��d���d�d�d�eAe&e0��d��d�d�e'�d��i�de&�di��de&�di�dUe&�di�dW�d�d^�d�d\e&�d	i�dO�d
�d�deBe"��d
ig��de&�di�d�e1�di��de0�di��de&�di�dre1�di�dse0�di��d�d�dR�d�daeBe"��di��d�d�dg�d�ei��eBe"��die"�di�de�deBe"��d igi�d!g�d"�d#�d$ged<�d%��d�e�d&ie!d�eBe!��d'ie'd�ieAe2eBe���d(��ed�ieAe2eBe���d)���d*e1�die0�die1�d+ie0�d+ie%�d,ie%�d-ie%�d.ieAe2eBe�e&��d/�	�e�d0�d1d<ieAe0eBe���d2�d1d<ieBe)��d3ie)�d4ig�d5eBe)��d6ieAe2eBe�e&�d<�d%��ed�ie[eAe2eBe�e$�d<�d7��e�d&ieAe2eBe��d<�d8��d�e!d�eBe!��d'ie�d9ie'�d:ie�d;���d*e1�die0�die1�d+ie0�d+ie%�d.ie%�d<ie%�d=ieAee&��d>�	�e�d?ieAe0eBe���d2i�d3g�d@�d6geAee&�d<�d%��e'�d*ieAee$��dA��ed�ieAee$�d<�d8��e'�dBid�ge�dC��e�d9ied<�d8��g�dD�d��dEe�dFie'd�id�ge4�dG���dH�dIg�dJ�e4d<�d%��e1�die0�die1�d+ie0�d+ie%�dKie%�d-ie%�d.ieAe4e&��dL��d�eAe4e$�i�e�dFie4d<�d8��g�dM�d�e'�dNid�e�dO���dP�dQ�dR�dS�dT�dU�dVeAee(��dW���dXeAee(�d<�d8���dY�dQ�dR�dS�dZ�dU�d[eAee#��dW���dXeAee#�d<�d8��ed�ied�iged<d���d*e1�die0�die1�d+ie0�d+ieAee&��d\���d]�d^e$�d_ie&�d`i�daee&�dbie$�dcie�ddi�degig�dfeBeCe'e$���dgieAe$eBe'���dhie�diiged<�dj��d�eAeeBe��i�d�eAeeBe�e&�i�d�ed<d��d�e<d<d��d�e@d<d��d�e>d<d��d�ed<d��ed�id�e5d���Z]e�dkid�dl��dm�dn�doeAe2eBe��d<�dp��dq�dr�dse4d<�dp��dt�du�dved<�dw��dx�dy�dz�d{�gZ^�d|�d}�Z_�d~�d�d��d��d��d��d��d��d��d��d��
Z`�d��d��ZadS(�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�)�__version__)>�
applyrules�	debugcapi�
dictappend�errmess�gentitle�getargs2�hascallstatement�hasexternals�hasinitvalue�hasnote�
hasresultnote�isarray�isarrayofstrings�	iscomplex�iscomplexarray�iscomplexfunction�iscomplexfunction_warn�isdummyroutine�
isexternal�
isfunction�isfunction_wrap�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�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�	cppmacrosrC�	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: zv
 * Do not edit this file directly unless you know what you are doing!!!
 */

#ifdef __cplusplus
extern "C" {
#endif

zSee f2py2e/cfuncs.py: includesz
#includes#
#includes0#

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

zSee f2py2e/cfuncs.py: typedefsz
#typedefs#

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

zSee f2py2e/cfuncs.py: cppmacrosz
#cppmacros#

zSee 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#

zSee 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#

zSee 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("a;");
	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
)rWrX)z*\section{Module \texttt{#texmodulename#}}
z
#modnote#
z
#latexdoc#zdModule #modulename#
================================================================================z

#restdoc#)�
modulebody�
separatorsforrWrXz/*eof body*/z/*eof method*/z/*eof externroutines*/z/*eof routine_defs*/z/*eof initf90modhooks*/z/*eof initf2pywraphooks*/z/*eof initcommonhooks*/�z#note#)
�bodyrLrZrYr_r[r]rWrX�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#``
--------------------------------------------------------------------------------)rdrfrYr[rZ�doc�docshort�docs�needrUrWrXrd�callfortranroutine�routdebugenterrH�routdebugleave�routdebugfailure�	setjmpbufz || �	docstrreq�	docstropt�	docstrout�	docstrcbs�docstrsignsz\n"
"�latexdocstrsigns�latexdocstrreq�latexdocstropt�latexdocstrout�latexdocstrcbs�kwlist�	kwlistopt�callfortran�callfortranappend�docsign�
docsignoptz/*decl*/rOz/*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�functyperIz
/*frompyobj*/rJz/*end of cleanupfrompyobj*/rMz
/*pyobjfrom*/rNz/*end of closepyobjfrom*/rKz/*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�routnotezf2py_rout_#modulename#_#name#z#modulename#.#name#)�apiname�pynamerH�_checkz-f2py_rout_#modulename#_#f90modulename#_#name#z##modulename#.#f90modulename#.#name#�voidzGextern void #F_FUNC#(#fortranname#,#FORTRANNAME#)(#callprotoargument#);z/extern void #fortranname#(#callprotoargument#);zn	{"#name#",-1,{{-1}},0,(char *)#F_FUNC#(#fortranname#,#FORTRANNAME#),(f2py_init_func)#apiname#,doc_#apiname#},zV	{"#name#",-1,{{-1}},0,(char *)#fortranname#,(f2py_init_func)#apiname#,doc_#apiname#},zE	{"#name#",-1,{{-1}},0,NULL,(f2py_init_func)#apiname#,doc_#apiname#},�F_FUNCzR	fprintf(stderr,"debug-capi:Fortran subroutine `#fortranname#(#callfortran#)'\n");z4		if (#setjmpbuf#) {
			f2py_success = 0;
		} else {z			Py_BEGIN_ALLOW_THREADSz9				#callstatement#;
				/*(*f2py_func)(#callfortran#);*/z 				(*f2py_func)(#callfortran#);z			Py_END_ALLOW_THREADSz		})r��declfortranroutine�routine_defrmrnr�zFextern void #F_WRAPPEDFUNC#(#name_lower#,#NAME#)(#callprotoargument#);zm	{"#name#",-1,{{-1}},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_WRAPPEDFUNCzY	fprintf(stderr,"debug-capi:Fortran subroutine `f2pywrap#name_lower#(#callfortran#)'\n");z1	if (#setjmpbuf#) {
		f2py_success = 0;
	} else {z	Py_BEGIN_ALLOW_THREADSz	(*f2py_func)(#callfortran#);z3	#callstatement#;
	/*(*f2py_func)(#callfortran#);*/z	Py_END_ALLOW_THREADSz	})r�r�r�r�rmrnr�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
zW	fprintf(stderr,"debug-capi:Fortran function #ctype# #fortranname#(#callfortran#)\n");
)r�r�rur{rnr�zJextern #ctype# #F_FUNC#(#fortranname#,#FORTRANNAME#)(#callprotoargument#);z2extern #ctype# #fortranname#(#callprotoargument#);z#	#ctype# #name#_return_value={0,0};z	#ctype# #name#_return_value=0;z.	PyObject *#name#_return_value_capi = Py_None;zJ	#callstatement#;
/*	#name#_return_value = (*f2py_func)(#callfortran#);*/
z3	#name#_return_value = (*f2py_func)(#callfortran#);zV	fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value.r,#name#_return_value.i);z>	fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value);zE	#name#_return_value_capi = pyobj_from_#ctype#1(#name#_return_value);zpyobj_from_#ctype#1�	long_long�long_doublez	#rformat#z,#name#_return_value_capiz,#name#_return_value)	r�r�rHrnrMrmr�r�r�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#;z`	if ((#name#_return_value = (string)malloc(sizeof(char)*(#name#_return_value_len+1))) == NULL) {z6		PyErr_SetString(PyExc_MemoryError, "out of memory");z		f2py_success = 0;z		} else {z8		(#name#_return_value)[#name#_return_value_len] = '\0';z	if (f2py_success) {z		Py_BEGIN_ALLOW_THREADSzj#ifdef USESCOMPAQFORTRAN
		(*f2py_func)(#callcompaqfortran#);
#else
		(*f2py_func)(#callfortran#);
#endif
z		Py_END_ALLOW_THREADSzW		fprintf(stderr,"#routdebugshowvalue#\n",#name#_return_value_len,#name#_return_value);z/	} /* if (f2py_success) after (string)malloc */z!	STRINGFREE(#name#_return_value);)r�r��
STRINGFREE)
r�r�rHrrnr�r�rOrmr�zZ	fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#(#docsignature#)\n");zW	fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#: successful.\n");zT	fprintf(stderr,"debug-capi:Python C/API function #modulename#.#name#: failure.\n");)rorprqr��complex_long_double�
unsigned_char�unsigned_short�unsigned�unsigned_long_longz.	/* Processing auxiliary variable #varname# */z$	fprintf(stderr,"#vardebuginfo#\n");z)	/* End of cleaning variable #varname# */)rIrJrmz	#ctype# #varname# = 0;zmath.hz	#varname# = #init#;)rHrmrIr�z
,#varname#z
#outvarname#,z#varrformat#)r�rur�r�r�z	#ctype# #varname#;z0	#varname#.r = #init.r#, #varname#.i = #init.i#;)rHrIr��	#ctype# #varname# = NULL;�	int slen(#varname#);�len..)rHrmr�)�	#ctype# *#varname# = NULL;�1	npy_intp #varname#_Dims[#rank#] = {#rank*[-1]#};�#	const int #varname#_Rank = #rank#;�forcombrhr�)rmr��_dependzflen(#varname#),�string)r�rmr�z$	/* Processing variable #varname# */)rIrJr�rmz#pydocsign#z\item[]{{}\verb@#pydocsign#@{}}z--- See above.)rtrsrurzryr{�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�zO!z,&#varname#_cb.capir�z!,&PyTuple_Type,&#varname#_xa_capiz(setjmp(#varname#_cb.jmpbuf))z#varname#_cptr,rmz#cbname#zsetjmp.hz�if(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)rIrJrmr�r�z3	fprintf(stderr,"#vardebugshowvalue#\n",#varname#);z&#varname#,)rHrMrr�r�)rmr��$	PyObject *#varname#_capi = Py_None;z,&#varname#_capizW	f2py_success = try_pyarr_from_#ctype#(#varname#_capi,&#varname#);
	if (f2py_success) {z/	} /*if (f2py_success) of #varname# pyobjfrom*/ztry_pyarr_from_#ctype#)	rHr�r�r�r�rMrNrmr�z8	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) {z`		#varname# = (#ctype#)PyObject_IsTrue(#varname#_capi);
		f2py_success = 1;
	if (f2py_success) {z%	} /*if (f2py_success) of #varname#*/�#ctype#_from_pyobj)rIrmr�r�)rIr�r�zA	fprintf(stderr,"#vardebugshowvalue#\n",#varname#.r,#varname#.i);z,#varname#_capi)rHrrMr�r�zY		f2py_success = try_pyarr_from_#ctype#(#varname#_capi,&#varname#);
		if (f2py_success) {z0		} /*if (f2py_success) of #varname# pyobjfrom*/)	rHr�r�r�r�rmrMrNr�zT	if (#varname#_capi==Py_None) {#varname#.r = #init.r#, #varname#.i = #init.i#;} elsez0	}  /*if (f2py_success) of #varname# frompyobj*/)rHr�z1	#varname#_capi = pyobj_from_#ctype#1(#varname#);)rMrmr�)r�r�r�zslen(#varname#),zC	fprintf(stderr,"#vardebugshowvalue#\n",slen(#varname#),#varname#);)rHrr�rMr�rmr�z�	slen(#varname#) = #length#;
	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?		STRINGFREE(#varname#);
	}  /*if (f2py_success) of #varname#*/)r�r�r�zV	f2py_success = try_pyarr_from_#ctype#(#varname#_capi,#varname#);
	if (f2py_success) {)r�r�r�r�rMrNrmr�)r�r�r�z*	PyArrayObject *capi_#varname#_tmp = NULL;z	int capi_#varname#_intent = 0;z,capi_#varname#_tmp)rHrr�rmr�z"	int capi_overwrite_#varname# = 1;z"overwrite_#varname#",�iz,&capi_overwrite_#varname#zoverwrite_#varname#=1,zoverwrite_#varname#,z9overwrite_#varname# : input int, optional\n    Default: 1)rHr�r�r�r�r�rtr�zH	capi_#varname#_intent |= (capi_overwrite_#varname#?0:F2PY_INTENT_COPY);z"	int capi_overwrite_#varname# = 0;zoverwrite_#varname#=0,z9overwrite_#varname# : input int, optional\n    Default: 0)rHr�r�r�r�r�z	#setdims#;z#	capi_#varname#_intent |= #intent#;zl	capi_#varname#_tmp = array_from_pyobj(#atype#,#varname#_Dims,#varname#_Rank,capi_#varname#_intent,Py_None);zs	capi_#varname#_tmp = array_from_pyobj(#atype#,#varname#_Dims,#varname#_Rank,capi_#varname#_intent,#varname#_capi);aR	if (capi_#varname#_tmp == NULL) {
		PyObject *exc, *val, *tb;
		PyErr_Fetch(&exc, &val, &tb);
		PyErr_SetString(exc ? exc : #modulename#_error,"failed in converting #nth# `#varname#' of #pyname# to C/Fortran array" );
		npy_PyErr_ChainExceptionsCause(exc, val, tb);
	} else {
		#varname# = (#ctype# *)(PyArray_DATA(capi_#varname#_tmp));
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#_tmp),PyArray_NDIM(capi_#varname#_tmp),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) {z=	}  /*if (capi_#varname#_tmp == NULL) ... else of #varname#*/zY	if((PyObject *)capi_#varname#_tmp!=#varname#_capi) {
		Py_XDECREF(capi_#varname#_tmp); }z!		Py_XDECREF(capi_#varname#_tmp);z+	}  /*if (f2py_success) of #varname# init*/)rIrJr�r�z3	fprintf(stderr,"debug-capi:Checking `#check#'\n");)rIrmzN	CHECKSCALAR(#check#,"#check#","#nth# #varname#","#varshowvalue#",#varname#) {z	} /*CHECKSCALAR(#check#)*/�CHECKSCALAR)rIrJrmr��_breakzN	CHECKSTRING(#check#,"#check#","#nth# #varname#","#varshowvalue#",#varname#) {z	} /*CHECKSTRING(#check#)*/�CHECKSTRING�
CHECKARRAYz2	CHECKARRAY(#check#,"#check#","#nth# #varname#") {z	} /*CHECKARRAY(#check#)*/)rmrIrJr�r��CHECKGENERICz4	CHECKGENERIC(#check#,"#check#","#nth# #varname#") {z	} /*CHECKGENERIC(#check#)*/)rmrIrJc Cstd|d�i}tdd�}t�|�}tdti|�}g}g}|dD]}d}	|dD]}
|
ddvr9td	�q,|
dD]}|d|krI|}	nq=q,|	sTtd
|�q$|	g}d|	vr{|	d��D]\}
}t�	|	�}|d=|
|d<||d<|�
|�qa|D]%}	t|	�}t|	�\}}|r�|r�|�
|�n|�
|�t
||�}t||�}q}q$t�|�\}}|r�|�
|�t
||�}t||�}t�|�\}}|r�|�
|�t
||�}t||�}|D]}t�||d
|d�}t||�}q�t��}i}|��D]�}g||<||D]�}
d}|
tjv�rtj|
}nu|
tjv�rtj|
}ni|
tjv�r&tj|
}n]|
tjv�r2tj|
}nQ|
tjv�r>tj|
}nE|
tjv�rJtj|
}n9|
tjv�rVtj|
}n-|
tjv�rbtj|
}n!|
tjv�rntj|
}n|
tjv�rztj|
}n	tdt|
��q�||�
|�q�q�|�
|�|D]}d|v�r�|d|��s�d|v�r�t
|||�}t||�}�q�t
t |�}t!j"�#t$d|d�}||d<t%|d��}|�&|d�'dd��Wd�n	1�s�wYtd|d|f�t$d�r5t!j"�#t$d|dd�}t%|d��}|�&d�|�&d�#|d��Wd�n	1�s$wYtdt$d|df�t$d �r�t!j"�#t$d|dd!�}||d"<t%|d��-}|�&d#t�d$t$v�rl|�&d%�|�&d�#|d&��d$t$v�rv|�&d'�Wd�n	1�s�wYtd(t$d|df�|�rBt!j"�#t$d|d)�}||d*<t%|d���}|�&d+�|�&d,t�|�&d-�g}d.�#|�d�(d�D]V}d/|�)d0�k�r�d1k�r�nn	|�
|d��q�|�r|d/d2k�rt*|�d1k�r|�
|dd1�d3�|d1d�}t*|�d1k�s�|�
|d��q�|�
|d��q�d�#|��'d4d�}|�&|�Wd�n	1�s7wYtd5|�|�r	t!j"�#t$dd6|d�}||d*<t%|d���}|�&d7�|�&d8t�|�&d9�g}d.�#|�d�(d�D]k}d/|�)d0�k�r�d:k�r�nn	|�
|d��qyt*|�d:k�r�|d/d2k�r�|�
|dd:�d;�|d:d�}t*|�d1k�r�|�
|dd1�d;�|d1d�}t*|�d1k�s�|�
|d��qy|�
|d��qyd�#|��'d4d�}|�&|�Wd�n	1�s�wYtd<|�|S)=z
    Return
    z	Building module "%s"...
�nameN�f2py_version�
interfacedrf�block)�	interfacezabstract interfacez1buildmodule: Expected interface block. Skipping.
zLbuildmodule: Could not found the body of interfaced routine "%s". Skipping.
�entry�args�userezbuildmodule: unknown need %s.
r��	buildpath�coutput�csrc�wrc�	z  z&	Wrote C/API module "%s" to file "%s"
�	dorestdoc�
modulenamezmodule.restz.. -*- rest -*-
r`rXz8	ReST Documentation is saved to file "%s/%smodule.rest"
�
dolatexdocz
module.tex�ltxz6%% This file is auto-generated with f2py (version:%s)
�
shortlatexzO\documentclass{article}
\usepackage{a4wide}
\begin{document}
\tableofcontents

rWz\end{document}z2	Documentation is saved to file "%s/%smodule.tex"
�f2py_wrapper_output�fsrczC     -*- fortran -*-
z8C     This file is autogenerated with f2py (version:%s)
z<C     It contains Fortran 77 wrappers to fortran functions.
rbr�!�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.
�Hz&
     &z'	Fortran 90 wrappers are saved to "%s"
)+r>�defmod_rulesrB�modsign2maprr�r�items�copy�deepcopy�appendrA�buildapirrD�
buildhooksrFrE�buildusevarsrC�	get_needs�keysrQrRrPrSrTrUrVr^r\�repr�module_rules�os�path�join�options�open�writer?�split�find�len) �m�um�ret�	mod_rules�vrd�rd�funcwrappers�
funcwrappers2�n�nb�bi�b�nb_list�k�a�nb1�isf90�api�wrap�ar�cr�mr�u�needs�code�c�r�fn�f�wn�lines�l�r
�2/usr/lib/python3/dist-packages/numpy/f2py/rules.py�buildmodule�sv
���


�





�
"
�
�
�
��
��
�

��	�
��"���
��"��r�st�ndr��th)
r��������	rcCs�t�|�\}}t|�\}}|t_|d}t|�r%td|d|df�ntd|d�t�|�}ti|�}t	D]}d|vrE|d|�sId|vrTt
|||�}t||�}q9d\}	}
i}|D]|}t�|||�}t||�rpt
}
n8t}
t||�s�t||�s�|	d}	t|	�t|	d	d
|d<n|
d}
t|
�t|
d	d|d<nd
|d<|||<|
D]*}d|vr�q�d|vr�|d||�s�d|vr�t
||||�}t||�}d|vr�nq�q]|D]d}t||�r�t
}
nt}
||}|
D].}d|vr�q�d|v�r|d||��s	d|v�rt
||||�}t||�}d|v�rnq�d||v�r@||dD]}||d<t
t|||�}t||�}�q+q�t|dt��rO|d��t|dt��r]|d��ttd|d|d|dd���|d<ttd|d|dd���}|dk�r�ttdd|di��|d<ntd |d|d!��|d<|d�d"d#�|d$<|d$�d%d&�|d$<ttd'|d(|d)d*���}t|d)�dk�r�ttd+|d(|d)d*���|d,<n||d,<||d(<t|d-t��r�ttd.d-|d-i��d/|d-<g|d0<g|d1<d2D]G}||v�rt||t��r|d0|||d0<d3|}||v�rHt||t��rH|d1||d4d�d5g||dd�d6g|d1<�qt
t|�}t|��r`td7|d8�||fStd9|d8�||fS):N�varsz,			Constructing wrapper function "%s.%s"...
r�r�z(		Constructing wrapper function "%s"...
r�)rrr�
z	 argument�nthz keyword�hiddenr�r��checkrJrNz #docsign##docsignopt##docsignxa#r�r�r�)r�r�r��docsignaturez#docsignopt##docsignxa#r�r�)r�r�rez	#docsign#�docsignatureshortz#docsign#[#docsignopt#])r�r��_z\_�latexdocsignatureshort�,z, z #callfortran##callfortranappend#rr�)rr�z##callfortran# 0,#callfortranappend#�callcompaqfortranr�z#docreturn#z = rwrx)rsrtrurv�latexrz\begin{description}z\end{description}z			  %s
rkz		  %s
)rG�assubrr	rB�depargsr)r>�routsign2mapr�
rout_rulesr�sign2mapr�	aux_rules�	arg_rulesrr*r��stnd�check_rules�
isinstance�list�reverser@r?r��
routine_rules)�routr�r�r%�varr�r�rr�r�nthk�savevrdr��_rulesr�optargs�cfsr�r
r
rr�>s��


� 
�&

���
���

�����
��������

�r�)b�__doc__r��timer�rer�versionr��
numpy_version�auxfuncsrrrrrr	r
rrr
rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGr��sepdictr��int�environ�get�generationtime�asctime�gmtimer�r�r0r'�typedef_need_dictr)r*r,rr+r�r
r
r
r�<module>s�3�
��
�
�����������!�!�$�$�*�*�-�-�0�0�3�3�6�6�8�8�;�;�c�c�����
��8��Q��������������
�
�
�
�����
�
��������������������� �!�"�"
�(���������������'�������'
�����������
�
��(�����+���	������	���	�
���������V�����

�
�

������ ��'��,��
���
����
�
���
�
�������F��-
��~��������$������5���:���@���F���R�����\���_���c���g���m���w�������
������������!����*����/����8����<����@����G��	���%��	����y����{����~���������	��������������������#������";�

https://t.me/RX1948 - 2025