Slide 37
Slide 37 text
i
m
p
o
r
t c
a
t
s
.
A
p
p
l
i
c
a
t
i
v
e
d
e
f t
r
a
v
e
r
s
e
L
i
s
t
[
G
[
_
]
, A
, B
]
(
a
s
: L
i
s
t
[
A
]
)
(
f
: A =
> G
[
B
]
)
(
i
m
p
l
i
c
i
t G
: A
p
p
l
i
c
a
t
i
v
e
[
G
]
)
: G
[
L
i
s
t
[
B
]
] =
a
s
.
f
o
l
d
R
i
g
h
t
(
G
.
p
u
r
e
(
L
i
s
t
.
e
m
p
t
y
[
B
]
)
) { (
a
, b
s
) =
>
G
.
m
a
p
2
(
f
(
a
)
, b
s
)
(
(
h
, t
) =
> h :
: t
)
}
i
m
p
o
r
t c
a
t
s
.
i
m
p
l
i
c
i
t
s
.
_
i
m
p
o
r
t s
c
a
l
a
.
c
o
n
c
u
r
r
e
n
t
.
F
u
t
u
r
e
i
m
p
o
r
t s
c
a
l
a
.
c
o
n
c
u
r
r
e
n
t
.
E
x
e
c
u
t
i
o
n
C
o
n
t
e
x
t
.
I
m
p
l
i
c
i
t
s
.
g
l
o
b
a
l
d
e
f p
a
r
s
e
I
n
t
O
p
t
i
o
n
(
s
: S
t
r
i
n
g
)
: O
p
t
i
o
n
[
I
n
t
] =
i
f (
s
.
m
a
t
c
h
e
s
(
"
-
?
[
0
-
9
]
+
"
)
) S
o
m
e
(
s
.
t
o
I
n
t
) e
l
s
e N
o
n
e
t
r
a
v
e
r
s
e
L
i
s
t
(
L
i
s
t
(
"
1
"
, "
2
"
, "
3
"
)
)
(
p
a
r
s
e
I
n
t
O
p
t
i
o
n
)
/
/ r
e
s
2
: O
p
t
i
o
n
[
L
i
s
t
[
I
n
t
]
] = S
o
m
e
(
L
i
s
t
(
1
, 2
, 3
)
)
t
r
a
v
e
r
s
e
L
i
s
t
(
L
i
s
t
(
"
h
e
l
l
o
"
, "
1
"
, "
w
o
r
l
d
"
)
)
(
p
a
r
s
e
I
n
t
O
p
t
i
o
n
)
/
/ r
e
s
3
: O
p
t
i
o
n
[
L
i
s
t
[
I
n
t
]
] = N
o
n
e
t
r
a
v
e
r
s
e
L
i
s
t
(
L
i
s
t
(
"
h
e
l
l
o
"
, "
w
o
r
l
d
"
)
)
(
s =
> F
u
t
u
r
e
(
s +
+ s
)
)
/
/ r
e
s
4
: s
c
a
l
a
.
c
o
n
c
u
r
r
e
n
t
.
F
u
t
u
r
e
[
L
i
s
t
[
S
t
r
i
n
g
]
] = s
c
a
l
a
.
c
o
n
c
u
r
r
e
n
t
.
i
m
p
l
.
P
r
o
m
i
s
e
$
D
e
f
a
u
l
t
P
r
o
m
t
r
a
v
e
r
s
e
L
i
s
t
(
L
i
s
t
(
'
a
'
, '
b
'
, '
c
'
)
)
(
c =
> L
i
s
t
(
c
, c
, c
)
)
/
/ r
e
s
5
: L
i
s
t
[
L
i
s
t
[
C
h
a
r
]
] = L
i
s
t
(
L
i
s
t
(
a
, b
, c
)
, L
i
s
t
(
a
, b
, c
)
, L
i
s
t
(
a
, b
, c
)
, L
i
s
t
(
a
, b
, c
15 / 23