Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
0ed05059
Commit
0ed05059
authored
Aug 06, 2012
by
Benjamin Peterson
Browse files
Options
Browse Files
Download
Plain Diff
merge heads
parents
b37df519
d340b43d
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
96 additions
and
84 deletions
+96
-84
Doc/library/functions.rst
Doc/library/functions.rst
+1
-1
Doc/library/importlib.rst
Doc/library/importlib.rst
+1
-1
Doc/library/stdtypes.rst
Doc/library/stdtypes.rst
+8
-5
Lib/importlib/_bootstrap.py
Lib/importlib/_bootstrap.py
+3
-2
Lib/pydoc.py
Lib/pydoc.py
+5
-5
Misc/NEWS
Misc/NEWS
+5
-0
Python/bltinmodule.c
Python/bltinmodule.c
+1
-1
Python/importlib.h
Python/importlib.h
+72
-69
No files found.
Doc/library/functions.rst
View file @
0ed05059
...
...
@@ -1443,7 +1443,7 @@ are always available. They are listed here in alphabetical order.
True
.. function:: __import__(name, globals=
{}, locals={}, fromlist=[]
, level=0)
.. function:: __import__(name, globals=
None, locals=None, fromlist=()
, level=0)
.. index::
statement: import
...
...
Doc/library/importlib.rst
View file @
0ed05059
...
...
@@ -63,7 +63,7 @@ Details on custom importers can be found in :pep:`302`.
Functions
---------
..
function
::
__import__
(
name
,
globals
=
{},
locals
={},
fromlist
=
list
(),
level
=
0
)
..
function
::
__import__
(
name
,
globals
=
None
,
locals
=
None
,
fromlist
=
(),
level
=
0
)
An
implementation
of
the
built
-
in
:
func
:`
__import__
`
function
.
...
...
Doc/library/stdtypes.rst
View file @
0ed05059
...
...
@@ -1351,16 +1351,19 @@ functions based on regular expressions.
.. method:: str.splitlines([keepends])
Return a list of the lines in the string, breaking at line boundaries. Line
breaks are not included in the resulting list unless *keepends* is given and
true. This method uses the universal newlines approach to splitting lines.
Unlike :meth:`~str.split`, if the string ends with line boundary characters
the returned list does ``not`` have an empty last element.
Return a list of the lines in the string, breaking at line boundaries.
This method uses the universal newlines approach to splitting lines.
Line breaks are not included in the resulting list unless *keepends* is
given and true.
For example, ``'ab c\n\nde fg\rkl\r\n'.splitlines()`` returns
``['ab c', '', 'de fg', 'kl']``, while the same call with ``splitlines(True)``
returns ``['ab c\n', '\n, 'de fg\r', 'kl\r\n']``.
Unlike :meth:`~str.split` when a delimiter string *sep* is given, this
method returns an empty list for the empty string, and a terminal line
break does not result in an extra line.
.. method:: str.startswith(prefix[, start[, end]])
...
...
Lib/importlib/_bootstrap.py
View file @
0ed05059
...
...
@@ -1587,7 +1587,7 @@ def _get_supported_file_loaders():
return
[
extensions
,
source
,
bytecode
]
def
__import__
(
name
,
globals
=
{},
locals
=
{},
fromlist
=
[]
,
level
=
0
):
def
__import__
(
name
,
globals
=
None
,
locals
=
None
,
fromlist
=
()
,
level
=
0
):
"""Import a module.
The 'globals' argument is used to infer where the import is occuring from
...
...
@@ -1601,7 +1601,8 @@ def __import__(name, globals={}, locals={}, fromlist=[], level=0):
if
level
==
0
:
module
=
_gcd_import
(
name
)
else
:
package
=
_calc___package__
(
globals
)
globals_
=
globals
if
globals
is
not
None
else
{}
package
=
_calc___package__
(
globals_
)
module
=
_gcd_import
(
name
,
package
,
level
)
if
not
fromlist
:
# Return up to the first dot in 'name'. This is complicated by the fact
...
...
Lib/pydoc.py
View file @
0ed05059
...
...
@@ -163,11 +163,11 @@ def _split_list(s, predicate):
def
visiblename
(
name
,
all
=
None
,
obj
=
None
):
"""Decide whether to show documentation on a variable."""
# Certain special names are redundant.
if
name
in
{
'__
builtins__'
,
'__doc__'
,
'__file__'
,
'__path
__'
,
'__module__'
,
'__name__'
,
'__slots__'
,
'__package
__'
,
'__cached__'
,
'__author__'
,
'__credits__'
,
'__dat
e__'
,
'__version__'
,
'__qualname__'
,
'__initializing
__'
}:
# Certain special names are redundant
or internal
.
if
name
in
{
'__
author__'
,
'__builtins__'
,
'__cached__'
,
'__credits
__'
,
'__date__'
,
'__doc__'
,
'__file__'
,
'__initializing
__'
,
'__loader__'
,
'__module__'
,
'__name__'
,
'__packag
e__'
,
'__path__'
,
'__qualname__'
,
'__slots__'
,
'__version
__'
}:
return
0
# Private names are hidden, but special names are displayed.
if
name
.
startswith
(
'__'
)
and
name
.
endswith
(
'__'
):
return
1
...
...
Misc/NEWS
View file @
0ed05059
...
...
@@ -80,6 +80,11 @@ Core and Builtins
Library
-------
-
Issue
#
15163
:
Pydoc
shouldn
't list __loader__ as module data.
- Issue #15471: Do not use mutable objects as defaults for
importlib.__import__().
- Issue #15559: To avoid a problematic failure mode when passed to the bytes
constructor, objects in the ipaddress module no longer implement __index__
(they still implement __int__ as appropriate)
...
...
Python/bltinmodule.c
View file @
0ed05059
...
...
@@ -195,7 +195,7 @@ builtin___import__(PyObject *self, PyObject *args, PyObject *kwds)
}
PyDoc_STRVAR
(
import_doc
,
"__import__(name, globals=
{}, locals={}, fromlist=[]
, level=0) -> module
\n
\
"__import__(name, globals=
None, locals=None, fromlist=()
, level=0) -> module
\n
\
\n
\
Import a module. Because this function is meant for use by the Python
\n
\
interpreter and not for general use it is better to use
\n
\
...
...
Python/importlib.h
View file @
0ed05059
...
...
@@ -57,8 +57,8 @@ unsigned char _Py_M__importlib[] = {
100
,
110
,
0
,
132
,
0
,
0
,
90
,
65
,
0
,
100
,
125
,
0
,
100
,
45
,
0
,
100
,
111
,
0
,
100
,
112
,
0
,
132
,
2
,
0
,
90
,
66
,
0
,
100
,
113
,
0
,
100
,
114
,
0
,
132
,
0
,
0
,
90
,
67
,
0
,
100
,
115
,
0
,
100
,
116
,
0
,
132
,
0
,
0
,
90
,
68
,
0
,
100
,
117
,
0
,
100
,
118
,
0
,
132
,
0
,
0
,
90
,
69
,
0
,
10
5
,
0
,
0
,
105
,
0
,
0
,
103
,
0
,
0
,
100
,
45
,
0
,
100
,
119
,
0
,
100
,
120
,
90
,
68
,
0
,
100
,
117
,
0
,
100
,
118
,
0
,
132
,
0
,
0
,
90
,
69
,
0
,
10
0
,
125
,
0
,
100
,
125
,
0
,
102
,
0
,
0
,
100
,
45
,
0
,
100
,
119
,
0
,
100
,
120
,
0
,
132
,
4
,
0
,
90
,
70
,
0
,
100
,
121
,
0
,
100
,
122
,
0
,
132
,
0
,
0
,
90
,
71
,
0
,
100
,
123
,
0
,
100
,
124
,
0
,
132
,
0
,
0
,
90
,
72
,
0
,
100
,
125
,
0
,
83
,
40
,
127
,
0
,
0
,
0
,
117
,
83
,
1
,
0
,
0
,
67
,
111
,
114
,
...
...
@@ -3912,69 +3912,72 @@ unsigned char _Py_M__importlib[] = {
0
,
0
,
0
,
5
,
21
,
1
,
15
,
1
,
15
,
1
,
117
,
27
,
0
,
0
,
0
,
95
,
103
,
101
,
116
,
95
,
115
,
117
,
112
,
112
,
111
,
114
,
116
,
101
,
100
,
95
,
102
,
105
,
108
,
101
,
95
,
108
,
111
,
97
,
100
,
101
,
114
,
115
,
99
,
5
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
0
,
0
,
0
,
5
,
0
,
0
,
0
,
67
,
0
,
0
,
0
,
115
,
203
,
0
,
0
,
0
,
124
,
4
,
0
,
100
,
1
,
0
,
107
,
2
,
0
,
114
,
27
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
131
,
1
,
0
,
125
,
5
,
0
,
110
,
30
,
0
,
116
,
1
,
0
,
124
,
1
,
0
,
131
,
1
,
0
,
125
,
6
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
124
,
6
,
0
,
124
,
4
,
0
,
131
,
3
,
0
,
125
,
5
,
0
,
124
,
3
,
0
,
115
,
183
,
0
,
124
,
4
,
0
,
100
,
1
,
0
,
107
,
2
,
0
,
114
,
98
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
106
,
2
,
0
,
100
,
2
,
0
,
131
,
1
,
0
,
100
,
1
,
0
,
25
,
131
,
1
,
0
,
83
,
124
,
0
,
0
,
115
,
108
,
0
,
124
,
5
,
0
,
83
,
116
,
3
,
0
,
124
,
0
,
0
,
131
,
1
,
0
,
116
,
3
,
0
,
124
,
0
,
0
,
106
,
2
,
0
,
100
,
2
,
0
,
131
,
1
,
0
,
100
,
1
,
0
,
25
,
131
,
1
,
0
,
24
,
125
,
7
,
0
,
116
,
4
,
0
,
106
,
5
,
0
,
124
,
5
,
0
,
106
,
6
,
0
,
100
,
3
,
0
,
116
,
3
,
0
,
124
,
5
,
0
,
106
,
6
,
0
,
131
,
1
,
0
,
124
,
7
,
0
,
24
,
133
,
2
,
0
,
25
,
25
,
83
,
110
,
16
,
0
,
116
,
7
,
0
,
124
,
5
,
0
,
124
,
3
,
0
,
116
,
0
,
0
,
131
,
3
,
0
,
83
,
100
,
3
,
0
,
83
,
40
,
4
,
0
,
0
,
0
,
117
,
214
,
1
,
0
,
0
,
73
,
109
,
112
,
111
,
114
,
116
,
32
,
97
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
46
,
10
,
10
,
32
,
32
,
32
,
32
,
84
,
104
,
101
,
32
,
39
,
103
,
108
,
111
,
98
,
97
,
108
,
115
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
105
,
115
,
32
,
117
,
115
,
101
,
100
,
32
,
116
,
111
,
32
,
105
,
110
,
102
,
101
,
114
,
32
,
119
,
104
,
101
,
114
,
101
,
32
,
116
,
104
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
105
,
115
,
32
,
111
,
99
,
99
,
117
,
114
,
105
,
110
,
103
,
32
,
102
,
114
,
111
,
109
,
10
,
32
,
32
,
32
,
32
,
116
,
111
,
32
,
104
,
97
,
110
,
100
,
108
,
101
,
32
,
114
,
101
,
108
,
97
,
116
,
105
,
118
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
115
,
46
,
32
,
84
,
104
,
101
,
32
,
39
,
108
,
111
,
99
,
97
,
108
,
115
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
105
,
115
,
32
,
105
,
103
,
110
,
111
,
114
,
101
,
100
,
46
,
32
,
84
,
104
,
101
,
10
,
32
,
32
,
32
,
32
,
39
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
115
,
112
,
101
,
99
,
105
,
102
,
105
,
101
,
115
,
32
,
119
,
104
,
97
,
116
,
32
,
115
,
104
,
111
,
117
,
108
,
100
,
32
,
101
,
120
,
105
,
115
,
116
,
32
,
97
,
115
,
32
,
97
,
116
,
116
,
114
,
105
,
98
,
117
,
116
,
101
,
115
,
32
,
111
,
110
,
32
,
116
,
104
,
101
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
10
,
32
,
32
,
32
,
32
,
98
,
101
,
105
,
110
,
103
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
101
,
100
,
32
,
40
,
101
,
46
,
103
,
46
,
32
,
96
,
96
,
102
,
114
,
111
,
109
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
60
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
62
,
96
,
96
,
41
,
46
,
32
,
32
,
84
,
104
,
101
,
32
,
39
,
108
,
101
,
118
,
101
,
108
,
39
,
10
,
32
,
32
,
32
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
114
,
101
,
112
,
114
,
101
,
115
,
101
,
110
,
116
,
115
,
32
,
116
,
104
,
101
,
32
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
32
,
108
,
111
,
99
,
97
,
116
,
105
,
111
,
110
,
32
,
116
,
111
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
102
,
114
,
111
,
109
,
32
,
105
,
110
,
32
,
97
,
32
,
114
,
101
,
108
,
97
,
116
,
105
,
118
,
101
,
10
,
32
,
32
,
32
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
40
,
101
,
46
,
103
,
46
,
32
,
96
,
96
,
102
,
114
,
111
,
109
,
32
,
46
,
46
,
112
,
107
,
103
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
109
,
111
,
100
,
96
,
96
,
32
,
119
,
111
,
117
,
108
,
100
,
32
,
104
,
97
,
118
,
101
,
32
,
97
,
32
,
39
,
108
,
101
,
118
,
101
,
108
,
39
,
32
,
111
,
102
,
32
,
50
,
41
,
46
,
10
,
10
,
32
,
32
,
32
,
32
,
105
,
0
,
0
,
0
,
0
,
117
,
1
,
0
,
0
,
0
,
46
,
78
,
40
,
8
,
0
,
0
,
0
,
117
,
11
,
0
,
0
,
0
,
95
,
103
,
99
,
100
,
95
,
105
,
109
,
112
,
111
,
114
,
116
,
117
,
17
,
0
,
0
,
0
,
95
,
99
,
97
,
108
,
99
,
95
,
95
,
95
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
95
,
95
,
117
,
9
,
0
,
0
,
0
,
112
,
97
,
114
,
116
,
105
,
116
,
105
,
111
,
110
,
117
,
3
,
0
,
0
,
0
,
108
,
101
,
110
,
117
,
3
,
0
,
0
,
0
,
115
,
121
,
115
,
117
,
7
,
0
,
0
,
0
,
109
,
111
,
100
,
117
,
108
,
101
,
115
,
117
,
8
,
0
,
0
,
0
,
95
,
95
,
110
,
97
,
109
,
101
,
95
,
95
,
117
,
16
,
0
,
0
,
0
,
95
,
104
,
97
,
110
,
100
,
108
,
101
,
95
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
40
,
8
,
0
,
0
,
0
,
117
,
4
,
0
,
0
,
0
,
110
,
97
,
109
,
101
,
117
,
7
,
0
,
0
,
0
,
103
,
108
,
111
,
98
,
97
,
108
,
115
,
117
,
6
,
0
,
0
,
0
,
108
,
111
,
99
,
97
,
108
,
115
,
117
,
8
,
0
,
0
,
0
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
117
,
5
,
0
,
0
,
0
,
108
,
101
,
118
,
101
,
108
,
117
,
6
,
0
,
0
,
0
,
109
,
111
,
100
,
117
,
108
,
101
,
117
,
7
,
0
,
0
,
0
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
117
,
7
,
0
,
0
,
0
,
99
,
117
,
116
,
95
,
111
,
102
,
102
,
40
,
0
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
117
,
29
,
0
,
0
,
0
,
60
,
102
,
114
,
111
,
122
,
101
,
110
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
108
,
105
,
98
,
46
,
95
,
98
,
111
,
111
,
116
,
115
,
116
,
114
,
97
,
112
,
62
,
117
,
10
,
0
,
0
,
0
,
95
,
95
,
105
,
109
,
112
,
111
,
114
,
116
,
95
,
95
,
54
,
6
,
0
,
0
,
115
,
24
,
0
,
0
,
0
,
0
,
11
,
12
,
1
,
15
,
2
,
12
,
1
,
18
,
1
,
6
,
0
,
0
,
0
,
9
,
0
,
0
,
0
,
5
,
0
,
0
,
0
,
67
,
0
,
0
,
0
,
115
,
227
,
0
,
0
,
0
,
124
,
4
,
0
,
100
,
1
,
0
,
107
,
2
,
0
,
114
,
27
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
131
,
1
,
0
,
125
,
5
,
0
,
110
,
54
,
0
,
124
,
1
,
0
,
100
,
3
,
0
,
107
,
9
,
0
,
114
,
45
,
0
,
124
,
1
,
0
,
110
,
3
,
0
,
105
,
0
,
0
,
125
,
6
,
0
,
116
,
2
,
0
,
124
,
6
,
0
,
131
,
1
,
0
,
125
,
7
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
124
,
7
,
0
,
124
,
4
,
0
,
131
,
3
,
0
,
125
,
5
,
0
,
124
,
3
,
0
,
115
,
207
,
0
,
124
,
4
,
0
,
100
,
1
,
0
,
107
,
2
,
0
,
114
,
122
,
0
,
116
,
0
,
0
,
124
,
0
,
0
,
106
,
3
,
0
,
100
,
2
,
0
,
131
,
1
,
0
,
100
,
1
,
0
,
25
,
131
,
1
,
0
,
83
,
124
,
0
,
0
,
115
,
132
,
0
,
124
,
5
,
0
,
83
,
116
,
4
,
0
,
124
,
0
,
0
,
131
,
1
,
0
,
116
,
4
,
0
,
124
,
0
,
0
,
106
,
3
,
0
,
100
,
2
,
0
,
131
,
1
,
0
,
100
,
1
,
0
,
25
,
131
,
1
,
0
,
24
,
125
,
8
,
0
,
116
,
5
,
0
,
106
,
6
,
0
,
124
,
5
,
0
,
106
,
7
,
0
,
100
,
3
,
0
,
116
,
4
,
0
,
124
,
5
,
0
,
106
,
7
,
0
,
131
,
1
,
0
,
124
,
8
,
0
,
24
,
133
,
2
,
0
,
25
,
25
,
83
,
110
,
16
,
0
,
116
,
8
,
0
,
124
,
5
,
0
,
124
,
3
,
0
,
116
,
0
,
0
,
131
,
3
,
0
,
83
,
100
,
3
,
0
,
83
,
40
,
4
,
0
,
0
,
0
,
117
,
214
,
1
,
0
,
0
,
73
,
109
,
112
,
111
,
114
,
116
,
32
,
97
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
46
,
10
,
10
,
32
,
32
,
32
,
32
,
84
,
104
,
101
,
32
,
39
,
103
,
108
,
111
,
98
,
97
,
108
,
115
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
105
,
115
,
32
,
117
,
115
,
101
,
100
,
32
,
116
,
111
,
32
,
105
,
110
,
102
,
101
,
114
,
32
,
119
,
104
,
101
,
114
,
101
,
32
,
116
,
104
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
105
,
115
,
32
,
111
,
99
,
99
,
117
,
114
,
105
,
110
,
103
,
32
,
102
,
114
,
111
,
109
,
10
,
32
,
32
,
32
,
32
,
116
,
111
,
32
,
104
,
97
,
110
,
100
,
108
,
101
,
32
,
114
,
101
,
108
,
97
,
116
,
105
,
118
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
115
,
46
,
32
,
84
,
104
,
101
,
32
,
39
,
108
,
111
,
99
,
97
,
108
,
115
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
105
,
115
,
32
,
105
,
103
,
110
,
111
,
114
,
101
,
100
,
46
,
32
,
84
,
104
,
101
,
10
,
32
,
32
,
32
,
32
,
39
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
39
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
115
,
112
,
101
,
99
,
105
,
102
,
105
,
101
,
115
,
32
,
119
,
104
,
97
,
116
,
32
,
115
,
104
,
111
,
117
,
108
,
100
,
32
,
101
,
120
,
105
,
115
,
116
,
32
,
97
,
115
,
32
,
97
,
116
,
116
,
114
,
105
,
98
,
117
,
116
,
101
,
115
,
32
,
111
,
110
,
32
,
116
,
104
,
101
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
10
,
32
,
32
,
32
,
32
,
98
,
101
,
105
,
110
,
103
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
101
,
100
,
32
,
40
,
101
,
46
,
103
,
46
,
32
,
96
,
96
,
102
,
114
,
111
,
109
,
32
,
109
,
111
,
100
,
117
,
108
,
101
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
60
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
62
,
96
,
96
,
41
,
46
,
32
,
32
,
84
,
104
,
101
,
32
,
39
,
108
,
101
,
118
,
101
,
108
,
39
,
10
,
32
,
32
,
32
,
32
,
97
,
114
,
103
,
117
,
109
,
101
,
110
,
116
,
32
,
114
,
101
,
112
,
114
,
101
,
115
,
101
,
110
,
116
,
115
,
32
,
116
,
104
,
101
,
32
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
32
,
108
,
111
,
99
,
97
,
116
,
105
,
111
,
110
,
32
,
116
,
111
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
102
,
114
,
111
,
109
,
32
,
105
,
110
,
32
,
97
,
32
,
114
,
101
,
108
,
97
,
116
,
105
,
118
,
101
,
10
,
32
,
32
,
32
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
40
,
101
,
46
,
103
,
46
,
32
,
96
,
96
,
102
,
114
,
111
,
109
,
32
,
46
,
46
,
112
,
107
,
103
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
32
,
109
,
111
,
100
,
96
,
96
,
32
,
119
,
111
,
117
,
108
,
100
,
32
,
104
,
97
,
118
,
101
,
32
,
97
,
32
,
39
,
108
,
101
,
118
,
101
,
108
,
39
,
32
,
111
,
102
,
32
,
50
,
41
,
46
,
10
,
10
,
32
,
32
,
32
,
32
,
105
,
0
,
0
,
0
,
0
,
117
,
1
,
0
,
0
,
0
,
46
,
78
,
40
,
9
,
0
,
0
,
0
,
117
,
11
,
0
,
0
,
0
,
95
,
103
,
99
,
100
,
95
,
105
,
109
,
112
,
111
,
114
,
116
,
117
,
4
,
0
,
0
,
0
,
78
,
111
,
110
,
101
,
117
,
17
,
0
,
0
,
0
,
95
,
99
,
97
,
108
,
99
,
95
,
95
,
95
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
95
,
95
,
117
,
9
,
0
,
0
,
0
,
112
,
97
,
114
,
116
,
105
,
116
,
105
,
111
,
110
,
117
,
3
,
0
,
0
,
0
,
108
,
101
,
110
,
117
,
3
,
0
,
0
,
0
,
115
,
121
,
115
,
117
,
7
,
0
,
0
,
0
,
109
,
111
,
100
,
117
,
108
,
101
,
115
,
117
,
8
,
0
,
0
,
0
,
95
,
95
,
110
,
97
,
109
,
101
,
95
,
95
,
117
,
16
,
0
,
0
,
0
,
95
,
104
,
97
,
110
,
100
,
108
,
101
,
95
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
40
,
9
,
0
,
0
,
0
,
117
,
4
,
0
,
0
,
0
,
110
,
97
,
109
,
101
,
117
,
7
,
0
,
0
,
0
,
103
,
108
,
111
,
98
,
97
,
108
,
115
,
117
,
6
,
0
,
0
,
0
,
108
,
111
,
99
,
97
,
108
,
115
,
117
,
8
,
0
,
0
,
0
,
102
,
114
,
111
,
109
,
108
,
105
,
115
,
116
,
117
,
5
,
0
,
0
,
0
,
108
,
101
,
118
,
101
,
108
,
117
,
6
,
0
,
0
,
0
,
109
,
111
,
100
,
117
,
108
,
101
,
117
,
8
,
0
,
0
,
0
,
103
,
108
,
111
,
98
,
97
,
108
,
115
,
95
,
117
,
7
,
0
,
0
,
0
,
112
,
97
,
99
,
107
,
97
,
103
,
101
,
117
,
7
,
0
,
0
,
0
,
99
,
117
,
116
,
95
,
111
,
102
,
102
,
40
,
0
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
117
,
29
,
0
,
0
,
0
,
60
,
102
,
114
,
111
,
122
,
101
,
110
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
108
,
105
,
98
,
46
,
95
,
98
,
111
,
111
,
116
,
115
,
116
,
114
,
97
,
112
,
62
,
117
,
10
,
0
,
0
,
0
,
95
,
95
,
105
,
109
,
112
,
111
,
114
,
116
,
95
,
95
,
54
,
6
,
0
,
0
,
115
,
26
,
0
,
0
,
0
,
0
,
11
,
12
,
1
,
15
,
2
,
24
,
1
,
12
,
1
,
18
,
1
,
6
,
3
,
12
,
1
,
23
,
1
,
6
,
1
,
4
,
2
,
35
,
1
,
40
,
2
,
117
,
10
,
0
,
0
,
0
,
95
,
95
,
105
,
109
,
112
,
111
,
114
,
116
,
95
,
95
,
99
,
2
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
14
,
0
,
0
,
0
,
13
,
0
,
0
,
0
,
67
,
0
,
0
,
...
...
@@ -4052,7 +4055,7 @@ unsigned char _Py_M__importlib[] = {
40
,
0
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
117
,
29
,
0
,
0
,
0
,
60
,
102
,
114
,
111
,
122
,
101
,
110
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
108
,
105
,
98
,
46
,
95
,
98
,
111
,
111
,
116
,
115
,
116
,
114
,
97
,
112
,
62
,
117
,
9
,
0
,
0
,
0
,
60
,
103
,
101
,
110
,
101
,
120
,
112
,
114
,
62
,
11
2
,
6
,
0
,
0
,
115
,
2
,
0
,
60
,
103
,
101
,
110
,
101
,
120
,
112
,
114
,
62
,
11
3
,
6
,
0
,
0
,
115
,
2
,
0
,
0
,
0
,
6
,
0
,
117
,
25
,
0
,
0
,
0
,
95
,
115
,
101
,
116
,
117
,
112
,
46
,
60
,
108
,
111
,
99
,
97
,
108
,
115
,
62
,
46
,
60
,
103
,
101
,
110
,
101
,
120
,
112
,
114
,
62
,
105
,
0
,
0
,
0
,
0
,
117
,
7
,
0
,
0
,
0
,
69
,
77
,
88
,
...
...
@@ -4107,7 +4110,7 @@ unsigned char _Py_M__importlib[] = {
109
,
111
,
100
,
117
,
108
,
101
,
40
,
0
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
117
,
29
,
0
,
0
,
0
,
60
,
102
,
114
,
111
,
122
,
101
,
110
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
108
,
105
,
98
,
46
,
95
,
98
,
111
,
111
,
116
,
115
,
116
,
114
,
97
,
112
,
62
,
117
,
6
,
0
,
0
,
0
,
95
,
115
,
101
,
116
,
117
,
112
,
8
5
,
6
,
0
,
112
,
62
,
117
,
6
,
0
,
0
,
0
,
95
,
115
,
101
,
116
,
117
,
112
,
8
6
,
6
,
0
,
0
,
115
,
88
,
0
,
0
,
0
,
0
,
9
,
6
,
1
,
6
,
2
,
19
,
1
,
15
,
1
,
16
,
2
,
13
,
1
,
13
,
1
,
15
,
1
,
18
,
2
,
13
,
1
,
20
,
2
,
48
,
1
,
19
,
2
,
31
,
1
,
10
,
1
,
15
,
1
,
13
,
1
,
4
,
2
,
3
,
1
,
15
,
2
,
...
...
@@ -4150,7 +4153,7 @@ unsigned char _Py_M__importlib[] = {
111
,
97
,
100
,
101
,
114
,
115
,
40
,
0
,
0
,
0
,
0
,
40
,
0
,
0
,
0
,
0
,
117
,
29
,
0
,
0
,
0
,
60
,
102
,
114
,
111
,
122
,
101
,
110
,
32
,
105
,
109
,
112
,
111
,
114
,
116
,
108
,
105
,
98
,
46
,
95
,
98
,
111
,
111
,
116
,
115
,
116
,
114
,
97
,
112
,
62
,
117
,
8
,
0
,
0
,
0
,
95
,
105
,
110
,
115
,
116
,
97
,
108
,
108
,
15
3
,
112
,
62
,
117
,
8
,
0
,
0
,
0
,
95
,
105
,
110
,
115
,
116
,
97
,
108
,
108
,
15
4
,
6
,
0
,
0
,
115
,
16
,
0
,
0
,
0
,
0
,
2
,
13
,
1
,
9
,
1
,
28
,
1
,
16
,
1
,
16
,
1
,
15
,
1
,
19
,
1
,
117
,
8
,
0
,
0
,
0
,
95
,
105
,
110
,
115
,
116
,
97
,
108
,
108
,
78
,
40
,
3
,
0
,
0
,
0
,
117
,
3
,
0
,
0
,
0
,
...
...
@@ -4252,5 +4255,5 @@ unsigned char _Py_M__importlib[] = {
12
,
18
,
12
,
11
,
12
,
13
,
19
,
57
,
19
,
54
,
19
,
50
,
19
,
82
,
22
,
124
,
19
,
29
,
25
,
38
,
25
,
24
,
19
,
41
,
19
,
55
,
19
,
18
,
19
,
81
,
19
,
135
,
19
,
13
,
12
,
9
,
12
,
17
,
12
,
17
,
6
,
2
,
12
,
46
,
12
,
13
,
18
,
24
,
12
,
23
,
12
,
15
,
12
,
11
,
24
,
3
1
,
12
,
68
,
12
,
23
,
12
,
15
,
12
,
11
,
24
,
3
2
,
12
,
68
,
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment