2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								/*[clinic input]
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								preserve 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								[ clinic  start  generated  code ] */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								# if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-31 23:42:34 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								#   include "pycore_gc.h"           // PyGC_Head
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								#   include "pycore_runtime.h"      // _Py_ID()
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								# endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-31 23:42:34 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								# include  "pycore_abstract.h"      // _PyNumber_Index() 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_getcodesize__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" getcodesize($module, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_GETCODESIZE_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " getcodesize " ,  ( PyCFunction ) _sre_getcodesize ,  METH_NOARGS ,  _sre_getcodesize__doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  int 
							 
						 
					
						
							
								
									
										
										
										
											2016-07-07 17:35:15 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_getcodesize_impl ( PyObject  * module ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2016-07-07 17:35:15 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_getcodesize ( PyObject  * module ,  PyObject  * Py_UNUSED ( ignored ) ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_getcodesize_impl ( module ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyLong_FromLong ( ( long ) _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-05-09 23:37:14 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_ascii_iscased__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" ascii_iscased($module, character, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_ASCII_ISCASED_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " ascii_iscased " ,  ( PyCFunction ) _sre_ascii_iscased ,  METH_O ,  _sre_ascii_iscased__doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  int 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_ascii_iscased_impl ( PyObject  * module ,  int  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_ascii_iscased ( PyObject  * module ,  PyObject  * arg ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  character ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-08-25 00:51:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    character  =  PyLong_AsInt ( arg ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-25 13:23:47 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( character  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-09 23:37:14 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_ascii_iscased_impl ( module ,  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyBool_FromLong ( ( long ) _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_unicode_iscased__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" unicode_iscased($module, character, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_UNICODE_ISCASED_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " unicode_iscased " ,  ( PyCFunction ) _sre_unicode_iscased ,  METH_O ,  _sre_unicode_iscased__doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  int 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_unicode_iscased_impl ( PyObject  * module ,  int  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_unicode_iscased ( PyObject  * module ,  PyObject  * arg ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  character ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-08-25 00:51:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    character  =  PyLong_AsInt ( arg ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-25 13:23:47 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( character  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-09 23:37:14 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_unicode_iscased_impl ( module ,  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyBool_FromLong ( ( long ) _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_ascii_tolower__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" ascii_tolower($module, character, /) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								# define _SRE_ASCII_TOLOWER_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " ascii_tolower " ,  ( PyCFunction ) _sre_ascii_tolower ,  METH_O ,  _sre_ascii_tolower__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  int 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_ascii_tolower_impl ( PyObject  * module ,  int  character ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_ascii_tolower ( PyObject  * module ,  PyObject  * arg ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  character ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-08-25 00:51:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    character  =  PyLong_AsInt ( arg ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-25 13:23:47 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( character  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_ascii_tolower_impl ( module ,  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  PyLong_FromLong ( ( long ) _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_unicode_tolower__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" unicode_tolower($module, character, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_UNICODE_TOLOWER_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " unicode_tolower " ,  ( PyCFunction ) _sre_unicode_tolower ,  METH_O ,  _sre_unicode_tolower__doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  int 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_unicode_tolower_impl ( PyObject  * module ,  int  character ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_unicode_tolower ( PyObject  * module ,  PyObject  * arg ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  character ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  _return_value ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-17 01:35:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-08-25 00:51:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    character  =  PyLong_AsInt ( arg ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-25 13:23:47 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( character  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-17 01:35:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-05 10:42:46 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_unicode_tolower_impl ( module ,  character ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyLong_FromLong ( ( long ) _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_match__doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" match($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Matches zero or more characters at the beginning of the string. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_MATCH_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " match " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_match ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_match__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_match_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                            PyObject  * string ,  Py_ssize_t  pos , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                            Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_match ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " match " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_match_impl ( self ,  cls ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_fullmatch__doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" fullmatch($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-04 20:09:49 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" Matches against all of the string. " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_FULLMATCH_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " fullmatch " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_fullmatch ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_fullmatch__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_fullmatch_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                PyObject  * string ,  Py_ssize_t  pos , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_fullmatch ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " fullmatch " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_fullmatch_impl ( self ,  cls ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_search__doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" search($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Scan through string looking for a match, and return a corresponding match object instance. \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return None if no position in the string matches. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_SEARCH_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " search " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_search ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_search__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_search_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                             PyObject  * string ,  Py_ssize_t  pos , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                             Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_search ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " search " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_search_impl ( self ,  cls ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_findall__doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" findall($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return a list of all non-overlapping matches of pattern in string. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_FINDALL_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " findall " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_findall ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_findall__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_findall_impl ( PatternObject  * self ,  PyObject  * string , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              Py_ssize_t  pos ,  Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_findall ( PatternObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " findall " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-28 10:33:45 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-28 10:33:45 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_findall_impl ( self ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_finditer__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" finditer($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return an iterator over all non-overlapping matches for the RE pattern in string. \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" For each match, the iterator returns a match object. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_FINDITER_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " finditer " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_finditer ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_finditer__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_finditer_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                               PyObject  * string ,  Py_ssize_t  pos , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                               Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_finditer ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " finditer " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_finditer_impl ( self ,  cls ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_scanner__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" scanner($self, /, string, pos=0, endpos=sys.maxsize) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_SCANNER_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " scanner " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_scanner ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_scanner__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_scanner_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                              PyObject  * string ,  Py_ssize_t  pos , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                              Py_ssize_t  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_scanner ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( pos ) ,  & _Py_ID ( endpos ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " pos " ,  " endpos " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " scanner " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  endpos  =  PY_SSIZE_T_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( args [ 1 ] )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            pos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! - - noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        endpos  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_scanner_impl ( self ,  cls ,  string ,  pos ,  endpos ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_split__doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" split($self, /, string, maxsplit=0) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Split string by the occurrences of pattern. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_SPLIT_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " split " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_split ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_split__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_split_impl ( PatternObject  * self ,  PyObject  * string , 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                            Py_ssize_t  maxsplit ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_split ( PatternObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 2 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( string ) ,  & _Py_ID ( maxsplit ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " string " ,  " maxsplit " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " split " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 2 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  maxsplit  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  2 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    string  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-28 10:33:45 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        maxsplit  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-13 08:53:58 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_split_impl ( self ,  string ,  maxsplit ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_sub__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" sub($self, /, repl, string, count=0) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return the string obtained by replacing the leftmost non-overlapping occurrences of pattern in string by the replacement repl. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_SUB_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " sub " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_sub ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_sub__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_sub_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                          PyObject  * repl ,  PyObject  * string ,  Py_ssize_t  count ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_sub ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( repl ) ,  & _Py_ID ( string ) ,  & _Py_ID ( count ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " repl " ,  " string " ,  " count " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " sub " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * repl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  count  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  2 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    repl  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    string  =  args [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        count  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_sub_impl ( self ,  cls ,  repl ,  string ,  count ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern_subn__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" subn($self, /, repl, string, count=0) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return the tuple (new_string, number_of_subs_made) found by replacing the leftmost non-overlapping occurrences of pattern with the replacement repl. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN_SUBN_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " subn " ,  _PyCFunction_CAST ( _sre_SRE_Pattern_subn ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Pattern_subn__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_subn_impl ( PatternObject  * self ,  PyTypeObject  * cls , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                           PyObject  * repl ,  PyObject  * string , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                           Py_ssize_t  count ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern_subn ( PatternObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 3 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( repl ) ,  & _Py_ID ( string ) ,  & _Py_ID ( count ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " repl " ,  " string " ,  " count " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " subn " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * repl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * string ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  count  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  2 ,  3 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    repl  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    string  =  args [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 2 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        count  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Pattern_subn_impl ( self ,  cls ,  repl ,  string ,  count ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern___copy____doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" __copy__($self, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN___COPY___METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " __copy__ " ,  ( PyCFunction ) _sre_SRE_Pattern___copy__ ,  METH_NOARGS ,  _sre_SRE_Pattern___copy____doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern___copy___impl ( PatternObject  * self ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Pattern___copy__ ( PatternObject  * self ,  PyObject  * Py_UNUSED ( ignored ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  _sre_SRE_Pattern___copy___impl ( self ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Pattern___deepcopy____doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-04-16 10:16:03 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" __deepcopy__($self, memo, /) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_PATTERN___DEEPCOPY___METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2017-04-16 10:16:03 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " __deepcopy__ " ,  ( PyCFunction ) _sre_SRE_Pattern___deepcopy__ ,  METH_O ,  _sre_SRE_Pattern___deepcopy____doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_compile__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" compile($module, /, pattern, flags, code, groups, groupindex, \n " 
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								"         indexgroup) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_COMPILE_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " compile " ,  _PyCFunction_CAST ( _sre_compile ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_compile__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2016-07-07 17:35:15 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_compile_impl ( PyObject  * module ,  PyObject  * pattern ,  int  flags , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								                  PyObject  * code ,  Py_ssize_t  groups ,  PyObject  * groupindex , 
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                  PyObject  * indexgroup ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_compile ( PyObject  * module ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 6 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( pattern ) ,  & _Py_ID ( flags ) ,  & _Py_ID ( code ) ,  & _Py_ID ( groups ) ,  & _Py_ID ( groupindex ) ,  & _Py_ID ( indexgroup ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " pattern " ,  " flags " ,  " code " ,  " groups " ,  " groupindex " ,  " indexgroup " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " compile " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 6 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * pattern ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    int  flags ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * code ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  groups ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * groupindex ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * indexgroup ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  6 ,  6 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    pattern  =  args [ 0 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-25 00:51:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    flags  =  PyLong_AsInt ( args [ 1 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( flags  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! PyList_Check ( args [ 2 ] ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-08-29 16:49:08 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        _PyArg_BadArgument ( " compile " ,  " argument 'code' " ,  " list " ,  args [ 2 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    code  =  args [ 2 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Py_ssize_t  ival  =  - 1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-28 10:33:45 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        PyObject  * iobj  =  _PyNumber_Index ( args [ 3 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( iobj  ! =  NULL )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ival  =  PyLong_AsSsize_t ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            Py_DECREF ( iobj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ival  = =  - 1  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        groups  =  ival ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! PyDict_Check ( args [ 4 ] ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-08-29 16:49:08 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        _PyArg_BadArgument ( " compile " ,  " argument 'groupindex' " ,  " dict " ,  args [ 4 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    groupindex  =  args [ 4 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! PyTuple_Check ( args [ 5 ] ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2019-08-29 16:49:08 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        _PyArg_BadArgument ( " compile " ,  " argument 'indexgroup' " ,  " tuple " ,  args [ 5 ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    indexgroup  =  args [ 5 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-06-17 01:19:44 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_compile_impl ( module ,  pattern ,  flags ,  code ,  groups ,  groupindex ,  indexgroup ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-10-24 01:57:30 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_template__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" template($module, pattern, template, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"   template \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"     A list containing interleaved literal strings (str or bytes) and group \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"     indices (int), as returned by re._parser.parse_template(): \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"         [literal1, group1, ..., literalN, groupN] " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_TEMPLATE_METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " template " ,  _PyCFunction_CAST ( _sre_template ) ,  METH_FASTCALL ,  _sre_template__doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_template_impl ( PyObject  * module ,  PyObject  * pattern ,  PyObject  * template ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_template ( PyObject  * module ,  PyObject  * const  * args ,  Py_ssize_t  nargs ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * pattern ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * template ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! _PyArg_CheckPositional ( " template " ,  nargs ,  2 ,  2 ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    pattern  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! PyList_Check ( args [ 1 ] ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        _PyArg_BadArgument ( " template " ,  " argument 2 " ,  " list " ,  args [ 1 ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    template  =  args [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_template_impl ( module ,  pattern ,  template ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_expand__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" expand($self, /, template) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return the string obtained by doing backslash substitution on the string template, as done by the sub() method. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_EXPAND_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " expand " ,  _PyCFunction_CAST ( _sre_SRE_Match_expand ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Match_expand__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_expand_impl ( MatchObject  * self ,  PyObject  * template ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_expand ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 1 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( template ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " template " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " expand " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 1 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * template ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  1 ,  1 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    template  =  args [ 0 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Match_expand_impl ( self ,  template ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_groups__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" groups($self, /, default=None) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return a tuple containing all the subgroups of the match, from 1. \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"   default \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"     Is used for groups that did not participate in the match. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_GROUPS_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " groups " ,  _PyCFunction_CAST ( _sre_SRE_Match_groups ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Match_groups__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_groups_impl ( MatchObject  * self ,  PyObject  * default_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_groups ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 1 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( default ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " default " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " groups " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * default_value  =  Py_None ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  0 ,  1 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    default_value  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Match_groups_impl ( self ,  default_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_groupdict__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" groupdict($self, /, default=None) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return a dictionary containing all the named subgroups of the match, keyed by the subgroup name. \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"   default \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								"     Is used for groups that did not participate in the match. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_GROUPDICT_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " groupdict " ,  _PyCFunction_CAST ( _sre_SRE_Match_groupdict ) ,  METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Match_groupdict__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_groupdict_impl ( MatchObject  * self ,  PyObject  * default_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_groupdict ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE) 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define NUM_KEYWORDS 1 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  struct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyGC_Head  _this_is_not_used ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject_VAR_HEAD 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyObject  * ob_item [ NUM_KEYWORDS ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    }  _kwtuple  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_base  =  PyVarObject_HEAD_INIT ( & PyTuple_Type ,  NUM_KEYWORDS ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . ob_item  =  {  & _Py_ID ( default ) ,  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef NUM_KEYWORDS 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-13 12:09:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    # define KWTUPLE (&_kwtuple.ob_base.ob_base) 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # else   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    #   define KWTUPLE NULL 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # endif   // !Py_BUILD_CORE
 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-14 10:52:18 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  const  char  *  const  _keywords [ ]  =  { " default " ,  NULL } ; 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-11 15:25:49 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    static  _PyArg_Parser  _parser  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . keywords  =  _keywords , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . fname  =  " groupdict " , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        . kwtuple  =  KWTUPLE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    # undef KWTUPLE 
 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    PyObject  * argsbuf [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  noptargs  =  nargs  +  ( kwnames  ?  PyTuple_GET_SIZE ( kwnames )  :  0 )  -  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * default_value  =  Py_None ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    args  =  _PyArg_UnpackKeywords ( args ,  nargs ,  NULL ,  kwnames ,  & _parser ,  0 ,  1 ,  0 ,  argsbuf ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    if  ( ! args )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-14 10:32:22 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! noptargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional_pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    default_value  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional_pos : 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Match_groupdict_impl ( self ,  default_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_start__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" start($self, group=0, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return index of the start of the substring matched by group. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_START_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " start " ,  _PyCFunction_CAST ( _sre_SRE_Match_start ) ,  METH_FASTCALL ,  _sre_SRE_Match_start__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  Py_ssize_t 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_start_impl ( MatchObject  * self ,  PyObject  * group ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_start ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * group  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! _PyArg_CheckPositional ( " start " ,  nargs ,  0 ,  1 ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-17 02:21:47 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( nargs  <  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    group  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional : 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_SRE_Match_start_impl ( self ,  group ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyLong_FromSsize_t ( _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_end__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" end($self, group=0, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" Return index of the end of the substring matched by group. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_END_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " end " ,  _PyCFunction_CAST ( _sre_SRE_Match_end ) ,  METH_FASTCALL ,  _sre_SRE_Match_end__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  Py_ssize_t 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_end_impl ( MatchObject  * self ,  PyObject  * group ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_end ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * group  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    Py_ssize_t  _return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! _PyArg_CheckPositional ( " end " ,  nargs ,  0 ,  1 ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-17 02:21:47 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( nargs  <  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    group  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional : 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    _return_value  =  _sre_SRE_Match_end_impl ( self ,  group ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ( _return_value  = =  - 1 )  & &  PyErr_Occurred ( ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-09 16:16:06 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  PyLong_FromSsize_t ( _return_value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match_span__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" span($self, group=0, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-04 20:09:49 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" For match object m, return the 2-tuple (m.start(group), m.end(group)). " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH_SPAN_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " span " ,  _PyCFunction_CAST ( _sre_SRE_Match_span ) ,  METH_FASTCALL ,  _sre_SRE_Match_span__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_span_impl ( MatchObject  * self ,  PyObject  * group ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2017-12-15 13:11:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Match_span ( MatchObject  * self ,  PyObject  * const  * args ,  Py_ssize_t  nargs ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * return_value  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    PyObject  * group  =  NULL ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( ! _PyArg_CheckPositional ( " span " ,  nargs ,  0 ,  1 ) )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-17 02:21:47 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        goto  exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-11 18:01:42 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( nargs  <  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        goto  skip_optional ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    group  =  args [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								skip_optional : 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								    return_value  =  _sre_SRE_Match_span_impl ( self ,  group ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								exit : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  return_value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match___copy____doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" __copy__($self, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH___COPY___METHODDEF    \ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { " __copy__ " ,  ( PyCFunction ) _sre_SRE_Match___copy__ ,  METH_NOARGS ,  _sre_SRE_Match___copy____doc__ } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match___copy___impl ( MatchObject  * self ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								_sre_SRE_Match___copy__ ( MatchObject  * self ,  PyObject  * Py_UNUSED ( ignored ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    return  _sre_SRE_Match___copy___impl ( self ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Match___deepcopy____doc__ , 
							 
						 
					
						
							
								
									
										
										
										
											2017-04-16 10:16:03 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								" __deepcopy__($self, memo, /) \n " 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_MATCH___DEEPCOPY___METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2017-04-16 10:16:03 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " __deepcopy__ " ,  ( PyCFunction ) _sre_SRE_Match___deepcopy__ ,  METH_O ,  _sre_SRE_Match___deepcopy____doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Scanner_match__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" match($self, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_SCANNER_MATCH_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " match " ,  _PyCFunction_CAST ( _sre_SRE_Scanner_match ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Scanner_match__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Scanner_match_impl ( ScannerObject  * self ,  PyTypeObject  * cls ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Scanner_match ( ScannerObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( nargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyErr_SetString ( PyExc_TypeError ,  " match() takes no arguments " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        return  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return  _sre_SRE_Scanner_match_impl ( self ,  cls ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								PyDoc_STRVAR ( _sre_SRE_Scanner_search__doc__ , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" search($self, /) \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" -- \n " 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								" \n " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								# define _SRE_SRE_SCANNER_SEARCH_METHODDEF    \ 
 
							 
						 
					
						
							
								
									
										
										
										
											2022-05-03 20:25:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { " search " ,  _PyCFunction_CAST ( _sre_SRE_Scanner_search ) ,  METH_METHOD | METH_FASTCALL | METH_KEYWORDS ,  _sre_SRE_Scanner_search__doc__ } , 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Scanner_search_impl ( ScannerObject  * self ,  PyTypeObject  * cls ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								static  PyObject  * 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								_sre_SRE_Scanner_search ( ScannerObject  * self ,  PyTypeObject  * cls ,  PyObject  * const  * args ,  Py_ssize_t  nargs ,  PyObject  * kwnames ) 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    if  ( nargs )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        PyErr_SetString ( PyExc_TypeError ,  " search() takes no arguments " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        return  NULL ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-20 13:36:23 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-30 13:15:02 +03:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    return  _sre_SRE_Scanner_search_impl ( self ,  cls ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-03 15:54:23 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-31 23:42:34 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								/*[clinic end generated code: output=46d83927cbafa93a input=a9049054013a1b77]*/