22 captures
25 May 2020 - 31 Dec 2025
Sep
OCT
Nov
04
2019
2020
2021
success
fail
About this capture
COLLECTED BY
Organization:
Internet Archive
Focused crawls are collections of frequently-updated webcrawl data from narrow (as opposed to broad or wide) web crawls, often focused on a single domain or subdomain.
Collection:
github.com
TIMESTAMPS
T
h
e
W
a
y
b
a
c
k
M
a
c
h
i
n
e
-
h
t
t
p
:
/
/
w
e
b
.
a
r
c
h
i
v
e
.
o
r
g
/
w
e
b
/
2
0
2
0
1
0
0
4
0
4
0
4
5
3
/
h
t
t
p
s
:
/
/
g
i
t
h
u
b
.
c
o
m
/
t
o
p
i
c
s
/
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
S
k
i
p
t
o
c
o
n
t
e
n
t
S
i
g
n
up
●
W
h
y
G
i
t
H
u
b
?
F
e
a
t
u
r
e
s
→
●
C
o
d
e
r
e
v
i
e
w
●
P
r
o
j
e
c
t
m
a
n
a
g
e
m
e
n
t
●
I
n
t
e
g
r
a
t
i
o
n
s
●
A
c
t
i
o
n
s
●
P
a
c
k
a
g
e
s
●
S
e
c
u
r
i
t
y
●
T
e
a
m
m
a
n
a
g
e
m
e
n
t
●
H
o
s
t
i
n
g
●
M
o
b
i
l
e
●
C
u
s
t
o
m
e
r
s
t
o
r
i
e
s
→
●
S
e
c
u
r
i
t
y
→
●
T
e
a
m
●
E
n
t
e
r
p
r
i
s
e
●
E
x
p
l
o
r
e
●
E
x
p
l
o
r
e
G
i
t
H
u
b
→
L
e
a
r
n
&
c
o
n
t
r
i
b
u
t
e
●
T
o
p
i
c
s
●
C
o
l
l
e
c
t
i
o
n
s
●
T
r
e
n
d
i
n
g
●
L
e
a
r
n
i
n
g
L
a
b
●
O
p
e
n
s
o
u
r
c
e
g
u
i
d
e
s
C
o
n
n
e
c
t
w
i
t
h
o
t
h
e
r
s
●
E
v
e
n
t
s
●
C
o
m
m
u
n
i
t
y
f
o
r
u
m
●
G
i
t
H
u
b
E
d
u
c
a
t
i
o
n
●
G
i
t
H
u
b
S
t
a
r
s
p
r
o
g
r
a
m
●
M
a
r
k
e
t
p
l
a
c
e
●
P
r
i
c
i
n
g
P
l
a
n
s
→
●
C
o
m
p
a
r
e
p
l
a
n
s
●
C
o
n
t
a
c
t
S
a
l
e
s
●
N
o
n
p
r
o
f
i
t
→
●
E
d
u
c
a
t
i
o
n
→
In this topic
All GitHub
↵
Jump to
↵
No suggested jump to results
In this topic
All GitHub
↵
Jump to
↵
In this topic
All GitHub
↵
Jump to
↵
S
i
g
n
in
S
i
g
n
up
{
{
m
e
s
s
a
g
e
}
}
E
x
p
l
o
r
e
T
o
p
i
c
s
T
r
e
n
d
i
n
g
C
o
l
l
e
c
t
i
o
n
s
E
v
e
n
t
s
G
i
t
H
u
b
S
p
o
n
s
o
r
s
G
e
t
e
m
a
i
l
u
p
d
a
t
e
s
#
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
S
t
a
r
H
e
r
e
a
r
e
1
4
0
p
u
b
l
i
c
r
e
p
o
s
i
t
o
r
i
e
s
m
a
t
c
h
i
n
g
t
h
i
s
t
o
p
i
c
.
.
.
L
a
n
g
u
a
g
e
:
A
l
l
F
i
l
t
e
r
b
y
l
a
n
g
u
a
g
e
A
l
l
1
4
0
P
y
t
h
o
n
89
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
28
H
T
M
L
6
E
m
a
c
s
L
i
s
p
1
J
a
v
a
1
S
h
e
l
l
1
S
o
r
t
:
B
e
s
t
m
a
t
c
h
S
o
r
t
o
p
t
i
o
n
s
B
e
s
t
m
a
t
c
h
M
o
s
t
s
t
a
r
s
F
e
w
e
s
t
s
t
a
r
s
M
o
s
t
f
o
r
k
s
F
e
w
e
s
t
f
o
r
k
s
R
e
c
e
n
t
l
y
u
p
d
a
t
e
d
L
e
a
s
t
r
e
c
e
n
t
l
y
u
p
d
a
t
e
d
J
u
n
n
p
l
u
s
/
a
w
e
s
o
m
e
-
p
y
t
h
o
n
-
b
o
o
k
s
S
t
a
r
2
.
5
k
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
📚
D
i
r
e
c
t
o
r
y
o
f
P
y
t
h
o
n
b
o
o
k
s
b
o
o
k
l
e
a
r
n
i
n
g
-
p
y
t
h
o
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
b
o
o
k
p
y
t
h
o
n
-
c
o
o
k
b
o
o
k
●
U
p
d
a
t
e
d
M
a
r
1
5
,
2
0
2
0
M
i
r
a
c
l
e
Y
o
u
n
g
/
Y
o
u
-
a
r
e
-
P
y
t
h
o
n
i
s
t
a
S
t
a
r
5
5
8
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
汇
聚
︻
P
y
t
h
o
n
应
用
︼
︻
P
y
t
h
o
n
实
训
︼
︻
P
y
t
h
o
n
技
术
分
享
︼
等
等
p
y
t
h
o
n
l
e
a
r
n
i
n
g
-
p
y
t
h
o
n
p
y
t
h
o
n
-
s
c
r
i
p
t
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
l
e
a
r
n
i
n
g
z
e
r
o
-
s
h
o
t
-
l
e
a
r
n
i
n
g
a
w
e
s
o
m
e
-
p
y
t
h
o
n
p
y
t
h
o
n
-
p
r
o
j
e
c
t
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
-
e
x
e
r
c
i
s
e
s
p
y
t
h
o
n
-
l
e
a
r
n
i
n
g
-
n
o
t
e
s
●
U
p
d
a
t
e
d
A
p
r
1
4
,
2
0
2
0
●
P
y
t
h
o
n
O
m
k
a
r
P
a
t
h
a
k
/
P
y
t
h
o
n
-
P
r
o
g
r
a
m
s
S
t
a
r
4
4
5
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
M
y
c
o
l
l
e
c
t
i
o
n
o
f
P
y
t
h
o
n
P
r
o
g
r
a
m
s
o
o
p
s
c
r
i
p
t
s
c
o
m
p
e
t
i
t
i
v
e
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
O
c
t
3
,
2
0
2
0
●
P
y
t
h
o
n
M
u
r
p
h
y
W
a
n
/
P
y
t
h
o
n
-
f
i
r
s
t
-
P
r
a
c
t
i
c
e
S
t
a
r
4
1
3
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
O
n
l
y
u
s
e
3
d
a
y
s
t
o
g
e
t
t
h
e
b
a
s
i
c
c
o
n
c
e
p
t
o
f
P
y
t
h
o
n
(
C
h
i
n
e
s
e
V
e
r
s
i
o
n
|
D
a
t
a
S
c
i
e
n
t
i
s
t
D
i
r
e
c
t
i
o
n
)
p
y
t
h
o
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
l
e
a
r
n
i
n
g
-
b
a
s
i
c
-
p
y
t
h
o
n
w
i
t
h
i
n
-
3
-
d
a
y
s
●
U
p
d
a
t
e
d
O
c
t
1
,
2
0
2
0
●
P
y
t
h
o
n
4
2
-
A
I
/
b
o
o
t
c
a
m
p
_
p
y
t
h
o
n
S
t
a
r
1
8
6
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
B
o
o
t
c
a
m
p
t
o
l
e
a
r
n
P
y
t
h
o
n
f
o
r
M
a
c
h
i
n
e
L
e
a
r
n
i
n
g
l
e
a
r
n
i
n
g
m
a
c
h
i
n
e
-
l
e
a
r
n
i
n
g
n
u
m
p
y
p
a
n
d
a
s
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
l
a
n
g
u
a
g
e
●
U
p
d
a
t
e
d
S
e
p
2
2
,
2
0
2
0
●
P
y
t
h
o
n
A
P
r
i
o
r
i
I
n
v
e
s
t
m
e
n
t
s
/
t
y
p
e
d
_
p
y
t
h
o
n
S
t
a
r
64
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
A
n
l
l
v
m
-
b
a
s
e
d
f
r
a
m
e
w
o
r
k
f
o
r
g
e
n
e
r
a
t
i
n
g
a
n
d
c
a
l
l
i
n
g
i
n
t
o
h
i
g
h
-
p
e
r
f
o
r
m
a
n
c
e
n
a
t
i
v
e
c
o
d
e
f
r
o
m
P
y
t
h
o
n
.
c
o
m
p
i
l
e
r
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
O
c
t
3
,
2
0
2
0
●
P
y
t
h
o
n
n
i
x
a
w
k
/
h
e
l
l
o
-
p
y
t
h
o
n
2
S
t
a
r
60
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
P
y
t
h
o
n
l
i
b
r
a
r
i
e
s
d
e
m
o
s
p
y
t
h
o
n
p
y
t
h
o
n
-
l
i
b
r
a
r
y
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
D
e
c
1
,
2
0
1
8
●
P
y
t
h
o
n
m
a
h
m
u
d
a
h
s
a
n
/
t
h
i
n
k
d
i
f
f
S
t
a
r
58
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
M
y
o
p
e
n
s
o
u
r
c
e
p
r
o
j
e
c
t
l
i
n
k
s
,
p
r
o
g
r
a
m
m
i
n
g
a
n
d
s
o
f
t
w
a
r
e
d
e
v
e
l
o
p
m
e
n
t
r
e
l
a
t
e
d
c
o
d
e
a
n
d
t
u
t
o
r
i
a
l
s
a
r
e
i
n
t
h
i
s
r
e
p
o
.
C
o
n
t
e
n
t
t
y
p
e
s
:
P
y
t
h
o
n
,
J
a
v
a
S
c
r
i
p
t
,
D
a
r
t
|
D
j
a
n
g
o
,
R
e
a
c
t
,
F
l
u
t
t
e
r
,
R
e
a
c
t
-
N
a
t
i
v
e
e
t
c
.
r
e
a
c
t
n
o
d
e
j
s
j
a
v
a
s
c
r
i
p
t
p
y
t
h
o
n
d
a
r
t
d
j
a
n
g
o
e
x
p
r
e
s
s
n
o
d
e
r
e
a
c
t
-
n
a
t
i
v
e
d
j
a
n
g
o
-
r
e
s
t
-
f
r
a
m
e
w
o
r
k
d
j
a
n
g
o
-
a
p
p
l
i
c
a
t
i
o
n
e
x
p
r
e
s
s
j
s
t
u
t
o
r
i
a
l
s
d
j
a
n
g
o
-
f
r
a
m
e
w
o
r
k
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
b
a
n
g
l
a
f
l
u
t
t
e
r
t
u
t
o
r
i
a
l
-
c
o
d
e
d
j
a
n
g
o
-
p
r
o
j
e
c
t
●
U
p
d
a
t
e
d
S
e
p
2
1
,
2
0
2
0
●
H
T
M
L
P
a
c
k
t
P
u
b
l
i
s
h
i
n
g
/
M
a
s
t
e
r
i
n
g
-
C
o
n
c
u
r
r
e
n
c
y
-
i
n
-
P
y
t
h
o
n
S
t
a
r
43
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
M
a
s
t
e
r
i
n
g
C
o
n
c
u
r
r
e
n
c
y
i
n
P
y
t
h
o
n
,
p
u
b
l
i
s
h
e
d
b
y
P
a
c
k
t
p
y
t
h
o
n
c
o
n
c
u
r
r
e
n
c
y
p
a
r
a
l
l
e
l
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
a
c
k
t
●
U
p
d
a
t
e
d
N
o
v
2
9
,
2
0
1
8
●
H
T
M
L
G
e
x
o
s
/
C
o
r
e
-
P
y
t
h
o
n
-
P
r
o
g
r
a
m
m
i
n
g
-
2
n
d
-
E
d
i
t
i
o
n
-
E
x
a
m
p
l
e
s
-
a
n
d
-
S
o
u
r
c
e
-
C
o
d
e
S
t
a
r
32
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
E
x
a
m
p
l
e
s
a
n
d
s
o
u
r
c
e
c
o
d
e
f
r
o
m
t
h
e
b
o
o
k
p
y
t
h
o
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
O
c
t
1
,
2
0
2
0
●
P
y
t
h
o
n
V
e
d
a
n
t
-
B
h
a
l
g
a
m
a
/
D
r
0
p
F
i
S
t
a
r
32
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
U
s
i
n
g
t
h
i
s
t
o
o
l
,
Y
o
u
c
a
n
c
a
p
t
u
r
e
a
l
l
W
i
F
i
P
a
s
s
w
o
r
d
s
s
t
o
r
e
d
o
n
W
i
n
d
o
w
s
C
o
m
p
u
t
e
r
a
n
d
m
a
i
l
t
h
e
m
t
o
y
o
u
r
e
m
a
i
l
a
c
c
o
u
n
t
!
p
y
t
h
o
n
m
a
l
w
a
r
e
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
c
a
p
t
u
r
e
p
y
t
h
o
n
-
2
7
p
a
s
s
w
o
r
d
-
s
t
e
a
l
e
r
p
y
t
h
o
n
-
m
a
l
w
a
r
e
w
i
f
i
-
p
a
s
s
w
o
r
d
s
●
U
p
d
a
t
e
d
A
u
g
2
2
,
2
0
2
0
●
P
y
t
h
o
n
s
e
r
h
i
i
7
3
/
p
l
a
c
e
2
l
i
v
e
S
t
a
r
29
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
A
n
a
l
y
s
i
s
o
f
t
h
e
c
h
a
r
a
c
t
e
r
i
s
t
i
c
s
o
f
d
i
f
f
e
r
e
n
t
c
o
u
n
t
r
i
e
s
p
y
t
h
o
n
o
p
e
n
-
s
o
u
r
c
e
o
p
e
n
s
o
u
r
c
e
b
e
g
i
n
n
e
r
-
p
r
o
j
e
c
t
r
e
g
u
l
a
r
-
e
x
p
r
e
s
s
i
o
n
p
a
n
d
a
s
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
r
e
q
u
e
s
t
s
s
c
r
a
p
y
n
e
w
b
i
e
h
a
c
k
t
o
b
e
r
f
e
s
t
b
e
a
u
t
i
f
u
l
s
o
u
p
4
f
i
r
s
t
-
i
s
s
u
e
h
a
c
k
t
o
b
e
r
f
e
s
t
2
0
1
9
●
U
p
d
a
t
e
d
O
c
t
3
,
2
0
2
0
●
P
y
t
h
o
n
d
a
t
a
-
f
l
a
i
r
/
p
y
t
h
o
n
-
t
u
t
o
r
i
a
l
S
t
a
r
23
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
P
y
t
h
o
n
T
u
t
o
r
i
a
l
-
l
e
a
r
n
P
y
t
h
o
n
f
r
o
m
s
c
r
a
t
c
h
w
i
t
h
2
7
0
+
P
y
t
h
o
n
t
u
t
o
r
i
a
l
s
f
o
r
b
e
g
i
n
n
e
r
s
&
e
x
p
e
r
i
e
n
c
e
d
.
E
x
p
l
o
r
e
P
y
t
h
o
n
f
e
a
t
u
r
e
s
,
s
y
n
t
a
x
,
p
y
t
h
o
n
a
p
p
l
i
c
a
t
i
o
n
s
,
p
y
t
h
o
n
u
s
e
-
c
a
s
e
s
,
p
y
t
h
o
n
a
r
c
h
i
t
e
c
t
u
r
e
,
p
y
t
h
o
n
p
r
o
j
e
c
t
s
a
n
d
m
a
n
y
m
o
r
e
.
p
y
t
h
o
n
d
a
t
a
-
s
c
i
e
n
c
e
m
a
c
h
i
n
e
-
l
e
a
r
n
i
n
g
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
t
u
t
o
r
i
a
l
l
e
a
r
n
-
p
y
t
h
o
n
p
y
t
h
o
n
-
i
n
t
e
r
v
i
e
w
-
q
u
e
s
t
i
o
n
s
p
y
t
h
o
n
-
p
r
o
j
e
c
t
p
y
t
h
o
n
-
f
o
r
-
b
e
g
i
n
n
e
r
s
w
h
a
t
-
i
s
-
p
y
t
h
o
n
p
y
t
h
o
n
-
i
n
t
r
o
d
u
c
t
i
o
n
p
y
t
h
o
n
-
c
a
r
e
e
r
●
U
p
d
a
t
e
d
O
c
t
1
7
,
2
0
1
9
r
i
s
h
a
b
h
v
e
r
m
a
1
7
/
s
m
s
_
s
l
a
n
g
_
t
r
a
n
s
l
a
t
o
r
S
t
a
r
17
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
P
y
t
h
o
n
S
c
r
i
p
t
t
o
a
b
b
r
e
v
i
a
t
e
s
l
a
n
g
s
s
m
s
p
y
t
h
o
n
-
s
c
r
i
p
t
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
3
a
b
b
r
e
v
i
a
t
i
o
n
s
p
y
t
h
o
n
-
a
p
p
l
i
c
a
t
i
o
n
p
y
t
h
o
n
-
p
r
o
j
e
c
t
s
m
s
-
s
l
a
n
g
-
t
r
a
n
s
l
a
t
o
r
p
y
t
h
o
n
-
t
r
a
n
s
l
a
t
o
r
p
y
h
t
o
n
3
s
a
m
p
l
e
c
o
d
e
a
b
b
r
e
v
i
a
t
e
-
s
l
a
n
g
s
p
y
h
t
o
n
-
a
p
p
p
y
h
t
o
n
3
-
a
p
p
●
U
p
d
a
t
e
d
J
a
n
1
9
,
2
0
1
8
●
P
y
t
h
o
n
J
S
h
i
l
p
a
/
P
y
t
h
o
n
-
P
r
o
g
r
a
m
s
S
t
a
r
12
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
C
o
l
l
e
c
t
i
o
n
o
f
m
y
P
y
t
h
o
n
p
r
o
g
r
a
m
s
a
n
d
n
o
t
e
s
o
n
P
y
t
h
o
n
b
a
s
i
c
s
,
D
a
t
a
S
t
r
u
c
t
u
r
e
s
a
n
d
A
l
g
o
r
i
t
h
m
s
.
a
l
g
o
r
i
t
h
m
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
d
a
t
a
-
s
t
r
u
c
t
u
r
e
s
t
u
t
o
r
i
a
l
-
s
o
u
r
c
e
c
o
d
e
●
U
p
d
a
t
e
d
M
a
y
1
6
,
2
0
1
8
●
P
y
t
h
o
n
t
o
b
y
h
o
d
g
e
s
/
I
T
P
P
S
t
a
r
11
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
I
n
t
r
o
d
u
c
t
i
o
n
t
o
P
y
t
h
o
n
P
r
o
g
r
a
m
m
i
n
g
p
r
o
g
r
a
m
m
i
n
g
-
l
a
n
g
u
a
g
e
b
i
n
d
e
r
c
o
u
r
s
e
-
m
a
t
e
r
i
a
l
s
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
e
x
e
r
c
i
s
e
s
b
e
g
i
n
n
e
r
-
f
r
i
e
n
d
l
y
j
u
p
y
t
e
r
-
n
o
t
e
b
o
o
k
s
p
y
t
h
o
n
-
l
a
n
g
u
a
g
e
l
a
n
g
u
a
g
e
-
p
y
t
h
o
n
●
U
p
d
a
t
e
d
M
a
r
3
1
,
2
0
2
0
●
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
R
a
m
-
9
5
/
P
y
t
h
o
n
-
C
o
m
p
e
t
i
t
i
v
e
-
P
r
o
g
r
a
m
m
i
n
g
S
t
a
r
11
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
💻
[
C
o
m
p
e
t
i
t
i
v
e
P
r
o
g
r
a
m
m
i
n
g
]
T
h
i
s
R
e
p
o
c
o
n
s
i
s
t
s
o
f
a
l
l
t
h
e
p
r
a
c
t
i
c
e
p
r
o
b
l
e
m
s
o
f
P
y
t
h
o
n
[
H
a
c
k
e
r
R
a
n
k
,
L
e
e
t
c
o
d
e
,
C
o
d
e
f
o
r
c
e
s
,
C
o
d
e
C
h
e
f
e
t
c
.
]
p
r
o
g
r
a
m
m
i
n
g
l
e
e
t
c
o
d
e
c
o
d
e
c
h
e
f
c
o
m
p
e
t
i
t
i
v
e
-
p
r
o
g
r
a
m
m
i
n
g
h
a
c
k
e
r
r
a
n
k
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
g
e
e
k
s
f
o
r
g
e
e
k
s
c
o
d
e
f
o
r
c
e
s
h
a
c
k
e
r
e
a
r
t
h
p
r
o
b
l
e
m
-
s
o
l
v
i
n
g
p
y
t
h
o
n
-
p
r
a
c
t
i
c
e
c
o
m
p
e
t
i
t
i
v
e
-
p
r
o
g
r
a
m
m
i
n
g
-
c
o
n
t
e
s
t
s
d
a
t
a
-
s
t
r
u
c
t
u
r
e
s
-
a
n
d
-
a
l
g
o
r
i
t
h
m
s
p
y
t
h
o
n
-
c
o
m
p
e
t
i
t
i
v
e
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
S
e
p
3
0
,
2
0
2
0
●
P
y
t
h
o
n
s
e
c
t
o
o
l
/
P
y
t
h
o
n
-
R
a
n
d
o
m
-
P
a
s
s
w
o
r
d
-
G
e
n
e
r
a
t
o
r
S
t
a
r
11
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
P
y
t
h
o
n
-
R
a
n
d
o
m
P
a
s
s
w
o
r
d
G
e
n
e
r
a
t
o
r
(
R
.
P
.
G
.
)
g
i
t
h
u
b
p
y
t
h
o
n
h
a
s
h
i
n
g
s
e
c
u
r
i
t
y
p
a
s
s
w
o
r
d
-
g
e
n
e
r
a
t
o
r
p
y
t
h
o
n
-
s
c
r
i
p
t
p
a
s
s
w
o
r
d
p
r
o
j
e
c
t
h
a
s
h
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
a
s
s
w
o
r
d
-
h
a
s
h
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
-
l
a
n
g
u
a
g
e
p
a
s
s
w
o
r
d
s
p
y
t
h
o
n
2
p
y
t
h
o
n
-
s
e
c
u
r
i
t
y
r
a
n
d
o
m
-
p
a
s
s
w
o
r
d
s
e
c
u
r
i
t
y
-
t
o
o
l
s
p
y
t
h
o
n
-
s
e
c
u
r
i
t
y
-
b
o
o
t
c
a
m
p
h
a
s
h
l
i
b
s
e
c
u
r
i
t
y
-
p
r
o
j
e
c
t
●
U
p
d
a
t
e
d
M
a
r
2
,
2
0
2
0
●
P
y
t
h
o
n
w
a
n
g
c
o
n
g
c
o
n
g
1
2
3
/
a
u
t
o
_
c
o
d
i
n
g
S
t
a
r
10
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
A
b
a
s
i
c
a
n
d
s
i
m
p
l
e
t
o
o
l
f
o
r
c
o
d
e
a
u
t
o
c
o
m
p
l
e
t
i
o
n
n
a
t
u
r
a
l
-
l
a
n
g
u
a
g
e
-
p
r
o
c
e
s
s
i
n
g
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
g
e
n
e
r
a
t
i
v
e
-
m
o
d
e
l
g
p
t
-
2
a
u
t
o
-
c
o
d
e
-
g
e
n
e
r
a
t
o
r
●
U
p
d
a
t
e
d
A
u
g
1
6
,
2
0
2
0
●
P
y
t
h
o
n
m
o
b
a
s
s
i
r
9
4
/
P
r
o
g
r
a
m
m
i
n
g
-
C
o
l
l
e
c
t
i
v
e
-
I
n
t
e
l
l
i
g
e
n
c
e
-
U
s
i
n
g
-
P
Y
T
H
O
N
S
t
a
r
8
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
C
o
r
e
P
y
t
h
o
n
P
r
o
g
r
a
m
m
i
n
g
a
n
d
D
e
s
i
g
n
i
n
g
L
e
a
r
n
i
n
g
A
l
g
o
r
i
t
h
m
s
f
r
o
m
t
o
b
y
s
e
g
a
r
a
n
'
s
b
o
o
k
f
o
r
B
u
i
l
d
i
n
g
S
m
a
r
t
W
e
b
A
p
p
l
i
c
a
t
i
o
n
s
u
s
i
n
g
m
a
c
h
i
n
e
l
e
a
r
n
i
n
g
A
l
g
o
r
i
t
h
m
s
r
a
s
p
b
e
r
r
y
-
p
i
m
a
c
h
i
n
e
-
l
e
a
r
n
i
n
g
ai
l
e
a
r
n
i
n
g
-
p
y
t
h
o
n
m
a
c
h
i
n
e
-
l
e
a
r
n
i
n
g
-
a
l
g
o
r
i
t
h
m
s
ml
a
r
t
i
f
i
c
i
a
l
-
i
n
t
e
l
l
i
g
e
n
c
e
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
a
r
t
i
f
i
c
i
a
l
-
n
e
u
r
a
l
-
n
e
t
w
o
r
k
s
p
y
t
h
o
n
-
3
c
o
l
l
e
c
t
i
v
e
-
i
n
t
e
l
l
i
g
e
n
c
e
m
a
c
h
i
n
e
-
l
e
a
r
n
i
n
g
-
c
o
u
r
s
e
r
a
a
r
t
i
f
i
c
i
a
l
-
i
n
t
e
l
l
i
g
e
n
c
e
-
a
l
g
o
r
i
t
h
m
s
●
U
p
d
a
t
e
d
O
c
t
2
2
,
2
0
1
8
●
P
y
t
h
o
n
j
u
h
i
l
s
o
m
a
i
y
a
/
A
P
I
-
I
n
t
e
g
r
a
t
i
o
n
s
-
P
y
t
h
o
n
S
t
a
r
8
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
T
h
i
s
r
e
p
o
s
i
t
o
r
y
i
n
c
l
u
d
e
s
d
i
f
f
e
r
e
n
t
t
y
p
e
s
o
f
A
P
I
i
n
t
e
g
r
a
t
i
o
n
s
w
i
t
h
P
y
t
h
o
n
.
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
a
p
i
a
p
i
-
i
n
t
e
g
r
a
t
i
o
n
p
y
t
h
o
n
-
p
r
o
j
e
c
t
●
U
p
d
a
t
e
d
M
a
y
2
9
,
2
0
2
0
●
P
y
t
h
o
n
p
r
o
f
-
r
o
s
s
e
t
t
i
/
n
y
u
-
i
n
f
o
-
2
3
3
5
-
2
0
1
8
0
5
S
t
a
r
7
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
P
r
o
g
r
a
m
m
i
n
g
i
n
P
y
t
h
o
n
&
F
u
n
d
a
m
e
n
t
a
l
s
o
f
S
o
f
t
w
a
r
e
D
e
v
e
l
o
p
m
e
n
t
-
S
u
m
m
e
r
2
0
1
8
p
y
t
h
o
n
h
e
r
o
k
u
g
i
t
s
t
u
d
e
n
t
s
o
p
e
n
-
s
o
u
r
c
e
d
o
t
e
n
v
c
o
u
r
s
e
c
o
u
r
s
e
-
m
a
t
e
r
i
a
l
s
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
e
s
t
p
i
p
e
x
a
m
a
p
i
s
s
o
f
t
w
a
r
e
-
d
e
v
e
l
o
p
m
e
n
t
f
u
n
d
a
m
e
n
t
a
l
s
s
o
f
t
w
a
r
e
-
t
e
s
t
i
n
g
n
y
u
p
r
o
f
e
s
s
o
r
s
d
l
c
p
i
p
e
n
v
c
o
m
m
a
n
d
-
l
i
n
e
-
c
o
m
p
u
t
i
n
g
●
U
p
d
a
t
e
d
J
u
l
3
,
2
0
1
8
●
P
y
t
h
o
n
r
y
a
n
-
l
e
u
n
g
/
P
H
Y
S
4
6
5
0
_
P
y
t
h
o
n
_
T
u
t
o
r
i
a
l
S
t
a
r
6
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
T
h
i
s
i
s
a
r
e
p
o
s
i
t
o
r
y
f
o
r
t
h
e
u
p
d
a
t
e
d
P
y
t
h
o
n
T
r
a
i
n
i
n
g
W
o
r
k
s
h
o
p
w
o
r
k
s
h
o
p
a
s
t
r
o
n
o
m
y
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
J
a
n
3
1
,
2
0
1
9
●
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
a
d
i
t
y
a
m
a
n
g
a
l
1
/
P
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
R
e
p
o
s
i
t
o
r
y
t
o
s
t
o
r
e
s
a
m
p
l
e
p
y
t
h
o
n
p
r
o
g
r
a
m
s
f
o
r
p
y
t
h
o
n
l
e
a
r
n
i
n
g
.
P
y
t
h
o
n
'
s
s
i
m
p
l
e
,
e
a
s
y
t
o
l
e
a
r
n
s
y
n
t
a
x
e
m
p
h
a
s
i
z
e
s
t
h
e
r
e
a
d
a
b
i
l
i
t
y
.
c
a
l
c
u
l
a
t
o
r
l
i
s
t
m
o
d
u
l
e
s
d
i
c
t
i
o
n
a
r
y
f
u
n
c
t
i
o
n
s
s
t
r
i
n
g
s
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
r
e
q
u
e
s
t
s
s
w
a
p
p
i
c
k
l
e
p
y
t
h
o
n
-
l
e
a
r
n
i
n
g
s
w
a
p
p
i
n
g
i
f
-
e
l
i
f
-
e
l
s
e
p
r
a
c
t
i
s
e
-
p
y
t
h
o
n
s
t
r
i
n
g
s
-
p
y
t
h
o
n
f
s
t
r
i
n
g
s
p
i
c
k
l
i
n
g
p
r
a
c
t
i
s
e
-
p
u
r
p
o
s
e
s
-
o
n
l
y
●
U
p
d
a
t
e
d
O
c
t
3
,
2
0
2
0
●
P
y
t
h
o
n
A
n
i
r
u
d
d
h
-
0
7
0
1
/
P
y
t
h
o
n
_
P
r
o
g
r
a
m
m
i
n
g
_
N
o
t
e
s
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
N
o
t
e
s
f
o
r
i
n
-
d
e
p
t
h
l
e
a
r
n
i
n
g
o
f
b
a
s
i
c
c
o
n
c
e
p
t
s
i
n
p
y
t
h
o
n
p
r
o
g
r
a
m
m
i
n
g
.
l
i
s
t
n
o
t
e
s
f
u
n
c
t
i
o
n
s
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
d
a
t
a
-
s
t
r
u
c
t
u
r
e
s
i
p
y
n
b
c
o
n
d
i
t
i
o
n
a
l
-
s
t
a
t
e
m
e
n
t
s
p
r
a
c
t
i
c
e
-
p
r
o
g
r
a
m
m
i
n
g
c
l
a
s
s
e
s
-
a
n
d
-
o
b
j
e
c
t
s
l
o
o
p
i
n
g
-
s
t
a
t
e
m
e
n
t
s
●
U
p
d
a
t
e
d
O
c
t
3
,
2
0
2
0
●
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
r
i
c
c
a
r
d
o
m
u
r
r
i
/
p
y
t
h
o
n
-
f
o
r
-
s
c
i
e
n
c
e
-
i
n
t
r
o
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
A
s
h
o
r
t
i
n
t
r
o
d
u
c
t
i
o
n
t
o
P
y
t
h
o
n
a
n
d
i
t
s
t
o
o
l
k
i
t
s
f
o
r
s
c
i
e
n
t
i
f
i
c
s
o
f
t
w
a
r
e
p
y
t
h
o
n
t
u
t
o
r
i
a
l
n
u
m
p
y
p
a
n
d
a
s
s
e
a
b
o
r
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
w
o
r
k
f
l
o
w
s
i
n
t
r
o
b
r
a
i
n
h
a
c
k
g
c
3
p
i
e
●
U
p
d
a
t
e
d
J
a
n
2
3
,
2
0
1
9
●
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
r
a
m
n
e
s
/
.
e
m
a
c
s
.
d
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
M
y
E
m
a
c
s
c
o
n
f
i
g
,
m
a
i
n
l
y
f
o
r
P
y
t
h
o
n
p
r
o
g
r
a
m
m
i
n
g
e
m
a
c
s
e
m
a
c
s
-
c
o
n
f
i
g
u
r
a
t
i
o
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
●
U
p
d
a
t
e
d
A
u
g
6
,
2
0
2
0
●
E
m
a
c
s
L
i
s
p
j
a
s
s
i
c
s
/
l
e
a
r
n
i
n
g
-
p
y
t
h
o
n
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
L
e
a
r
n
i
n
g
P
y
t
h
o
n
w
i
t
h
e
x
a
m
p
l
e
s
p
y
t
h
o
n
l
e
a
r
n
i
n
g
-
p
y
t
h
o
n
p
y
t
h
o
n
3
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
3
p
y
t
h
o
n
-
s
c
r
i
p
t
s
p
y
t
h
o
n
-
p
r
a
c
t
i
c
e
●
U
p
d
a
t
e
d
S
e
p
4
,
2
0
2
0
●
P
y
t
h
o
n
I
v
a
n
H
o
r
n
u
n
g
/
P
Y
4
E
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
C
o
d
e
s
p
e
r
t
a
i
n
i
n
g
t
o
U
n
i
v
e
r
s
i
t
y
o
f
M
i
c
h
i
g
a
n
'
s
P
y
t
h
o
n
F
o
r
E
v
e
r
y
b
o
d
y
S
p
e
c
i
a
l
i
z
a
t
i
o
n
o
n
C
o
u
r
s
e
r
a
.
C
o
n
t
e
n
t
i
n
c
l
u
d
e
s
P
y
t
h
o
n
P
r
o
g
r
a
m
m
i
n
g
,
S
y
n
t
a
x
,
a
n
d
S
e
m
a
n
t
i
c
s
,
J
S
O
N
&
X
M
L
p
a
r
s
i
n
g
,
D
a
t
a
b
a
s
e
s
(
D
B
M
S
)
,
S
Q
L
,
S
q
l
i
t
e
,
D
a
t
a
S
t
r
u
c
t
u
r
e
s
,
a
n
d
W
e
b
S
c
r
a
p
i
n
g
.
j
s
o
n
s
q
l
j
s
o
n
-
s
c
h
e
m
a
x
m
l
s
q
l
i
t
e
s
q
l
i
t
e
-
d
a
t
a
b
a
s
e
d
b
m
s
c
o
u
r
s
e
r
a
d
a
t
a
b
a
s
e
s
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
x
m
l
-
p
a
r
s
i
n
g
d
a
t
a
-
s
t
r
u
c
t
u
r
e
s
w
e
b
-
s
c
r
a
p
i
n
g
x
m
l
-
s
c
h
e
m
a
j
s
o
n
-
p
a
r
s
i
n
g
p
y
4
e
p
y
t
h
o
n
-
s
y
n
t
a
x
p
y
t
h
o
n
-
s
e
m
a
n
t
i
c
s
●
U
p
d
a
t
e
d
O
c
t
1
,
2
0
2
0
●
P
y
t
h
o
n
s
u
n
e
e
l
p
a
t
e
l
/
P
y
t
h
o
n
-
f
o
r
-
B
e
g
i
n
n
e
r
s
S
t
a
r
4
C
o
d
e
I
s
s
u
e
s
P
u
l
l
r
e
q
u
e
s
t
s
F
i
n
d
R
e
a
l
P
y
t
h
o
n
’
s
B
e
g
i
n
n
e
r
s
R
o
a
d
m
a
p
f
o
r
L
e
a
r
n
i
n
g
P
y
t
h
o
n
!
W
e
a
l
s
o
o
f
f
e
r
a
b
e
g
i
n
n
e
r
’
s
l
e
v
e
l
u
s
e
r
g
u
i
d
e
,
w
h
i
c
h
u
s
e
s
i
n
t
e
r
e
s
t
i
n
g
e
x
a
m
p
l
e
s
t
o
h
e
l
p
y
o
u
l
e
a
r
n
p
r
o
g
r
a
m
m
i
n
g
a
n
d
w
e
b
d
e
v
e
l
o
p
m
e
n
t
.
H
a
p
p
y
C
o
d
i
n
g
!
p
y
t
h
o
n
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
p
y
t
h
o
n
-
c
o
d
e
s
p
y
t
h
o
n
-
b
a
s
i
c
s
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
e
r
p
y
t
h
o
n
-
c
o
d
e
-
b
a
s
e
d
-
o
n
-
c
o
n
c
e
p
t
●
U
p
d
a
t
e
d
A
u
g
2
2
,
2
0
1
9
●
J
u
p
y
t
e
r
N
o
t
e
b
o
o
k
Load more…
I
m
p
r
o
v
e
t
h
i
s
p
a
g
e
A
d
d
a
d
e
s
c
r
i
p
t
i
o
n
,
i
m
a
g
e
,
a
n
d
l
i
n
k
s
t
o
t
h
e
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
t
o
p
i
c
p
a
g
e
s
o
t
h
a
t
d
e
v
e
l
o
p
e
r
s
c
a
n
m
o
r
e
e
a
s
i
l
y
l
e
a
r
n
a
b
o
u
t
i
t
.
C
u
r
a
t
e
t
h
i
s
t
o
p
i
c
A
d
d
t
h
i
s
t
o
p
i
c
t
o
y
o
u
r
r
e
p
o
T
o
a
s
s
o
c
i
a
t
e
y
o
u
r
r
e
p
o
s
i
t
o
r
y
w
i
t
h
t
h
e
p
y
t
h
o
n
-
p
r
o
g
r
a
m
m
i
n
g
t
o
p
i
c
,
v
i
s
i
t
y
o
u
r
r
e
p
o
'
s
l
a
n
d
i
n
g
p
a
g
e
a
n
d
s
e
l
e
c
t
"
m
a
n
a
g
e
t
o
p
i
c
s
.
"
L
e
a
r
n
m
o
r
e
P
r
o
d
u
c
t
●
F
e
a
t
u
r
e
s
●
S
e
c
u
r
i
t
y
●
T
e
a
m
●
E
n
t
e
r
p
r
i
s
e
●
C
u
s
t
o
m
e
r
s
t
o
r
i
e
s
●
T
h
e
R
e
a
d
M
E
P
r
o
j
e
c
t
●
P
r
i
c
i
n
g
●
R
e
s
o
u
r
c
e
s
●
R
o
a
d
m
a
p
P
l
a
t
f
o
r
m
●
D
e
v
e
l
o
p
e
r
A
P
I
●
P
a
r
t
n
e
r
s
●
A
t
o
m
●
E
l
e
c
t
r
o
n
●
G
i
t
H
u
b
D
e
s
k
t
o
p
S
u
p
p
o
r
t
●
H
e
l
p
●
C
o
m
m
u
n
i
t
y
F
o
r
u
m
●
P
r
o
f
e
s
s
i
o
n
a
l
S
e
r
v
i
c
e
s
●
L
e
a
r
n
i
n
g
L
a
b
●
S
t
a
t
u
s
●
C
o
n
t
a
c
t
G
i
t
H
u
b
C
o
m
p
a
n
y
●
A
b
o
u
t
●
B
l
o
g
●
C
a
r
e
e
r
s
●
P
r
e
s
s
●
S
o
c
i
a
l
I
m
p
a
c
t
●
S
h
o
p
●
T
w
i
t
t
e
r
●
F
a
c
e
b
o
o
k
●
Y
o
u
T
u
b
e
●
L
i
n
k
e
d
I
n
●
G
i
t
H
u
b
●
©
2
0
2
0
G
i
t
H
u
b
,
I
n
c
.
●
T
e
r
m
s
●
P
r
i
v
a
c
y
●
S
i
t
e
M
a
p
●
W
h
a
t
i
s
G
i
t
?
Y
o
u
c
a
n
’
t
p
e
r
f
o
r
m
t
h
a
t
a
c
t
i
o
n
a
t
t
h
i
s
t
i
m
e
.
Y
o
u
s
i
g
n
e
d
i
n
w
i
t
h
a
n
o
t
h
e
r
t
a
b
o
r
w
i
n
d
o
w
.
R
e
l
o
a
d
t
o
r
e
f
r
e
s
h
y
o
u
r
s
e
s
s
i
o
n
.
Y
o
u
s
i
g
n
e
d
o
u
t
i
n
a
n
o
t
h
e
r
t
a
b
o
r
w
i
n
d
o
w
.
R
e
l
o
a
d
t
o
r
e
f
r
e
s
h
y
o
u
r
s
e
s
s
i
o
n
.