Ë
    7^(h   ã                   ó>   — d dl mZ d dlmZ d dlmZ d dlmZ 	 dd„Zy)é    )Úchain)ÚModule)ÚDummy)ÚFCodePrinterNc                 óf  — |xs dddœ}t        |«      }t        «       }t        | t        «      rt	        d«      ‚t        |t        ||g«      | «      }|j                  |«      }ddj                  |j                  j                  «       D ��	cg c]  \  }}	d|›dd	j                  |	«      ›�‘Œ c}	}«      z  }
|
d
z  }
|
dz  }
|
dd	j                  | D �cg c]%  }t        |dd«      sŒt        |j                  «      ‘Œ' c}«      z  z  }
|j                  |j                  |«      |
«      S c c}	}w c c}w )a”   Creates a ``Module`` instance and renders it as a string.

    This generates Fortran source code for a module with the correct ``use`` statements.

    Parameters
    ==========

    definitions : iterable
        Passed to :class:`sympy.codegen.fnodes.Module`.
    name : str
        Passed to :class:`sympy.codegen.fnodes.Module`.
    declarations : iterable
        Passed to :class:`sympy.codegen.fnodes.Module`. It will be extended with
        use statements, 'implicit none' and public list generated from ``definitions``.
    printer_settings : dict
        Passed to ``FCodePrinter`` (default: ``{'standard': 2003, 'source_format': 'free'}``).

    iÓ  Úfree)ÚstandardÚsource_formatz7This function expects to construct a module on its own.z   %s
z   
zuse z, only: z, z   implicit none
z   private
z   public %s
ÚnameN)r   r   Ú
isinstancer   Ú
ValueErrorr   ÚdoprintÚjoinÚmodule_usesÚitemsÚgetattrÚstrr   Úreplace)Údefinitionsr   ÚdeclarationsÚprinter_settingsÚprinterÚdummyÚmodÚfstrÚkÚvÚmodule_use_strÚnodes               úR/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/codegen/futils.pyÚrender_as_moduler!   	   s)  € ð& (ÒV¸ÈvÑ+VÐÜÐ+Ó,€GÜ‹G€EÜ�+œvÔ&ÜÐRÓSÐSÜ
�”u˜\¨E¨7Ó3°[Ó
A€CØ�?‰?˜3Ó€DØ §¡Ø8?×8KÑ8K×8QÑ8QÓ8S÷/UÙ04°±1ò FGÈÏ	É	ÐRSÌÒ/Uó /Uó "Vñ V€NàÐ*Ñ*€NØ�nÑ$€NØÐ&¨¯©È{Ö3zÀtÔ^eÐfjÐlrÐtxÕ^y´C¸¿	¹	µNÒ3zÓ){Ñ{Ñ{€NØ�<‰<˜Ÿ™¨Ó.°Ó?Ð?ùó/Uùò 4{s   Â!D(ÃD.Ã%D.)© N)	Ú	itertoolsr   Úsympy.codegen.fnodesr   Úsympy.core.symbolr   Úsympy.printing.fortranr   r!   r"   ó    r    ú<module>r(      s   ðÝ Ý 'Ý #Ý /à Bô@r'   