| 1:1-1:3 |
TYP |
typ |
| 1:5-1:5 |
ID |
i |
| 1:7-1:7 |
EQUALS |
= |
| 1:9-1:11 |
INT |
int |
| 2:1-2:3 |
TYP |
typ |
| 2:5-2:5 |
ID |
c |
| 2:7-2:7 |
EQUALS |
= |
| 2:9-2:12 |
CHAR |
char |
| 3:1-3:3 |
TYP |
typ |
| 3:5-3:5 |
ID |
b |
| 3:7-3:7 |
EQUALS |
= |
| 3:9-3:12 |
BOOL |
bool |
| 4:1-4:3 |
TYP |
typ |
| 4:5-4:6 |
ID |
pi |
| 4:8-4:8 |
EQUALS |
= |
| 4:10-4:10 |
HAT |
^ |
| 4:11-4:11 |
ID |
i |
| 5:1-5:3 |
TYP |
typ |
| 5:5-5:6 |
ID |
pb |
| 5:8-5:8 |
EQUALS |
= |
| 5:10-5:10 |
HAT |
^ |
| 5:11-5:11 |
ID |
b |
| 7:1-7:3 |
VAR |
var |
| 7:5-7:11 |
ID |
counter |
| 7:13-7:13 |
COLON |
: |
| 7:15-7:15 |
ID |
i |
| 8:1-8:3 |
VAR |
var |
| 8:5-8:8 |
ID |
flag |
| 8:10-8:10 |
COLON |
: |
| 8:12-8:12 |
ID |
b |
| 9:1-9:3 |
VAR |
var |
| 9:5-9:10 |
ID |
result |
| 9:12-9:12 |
COLON |
: |
| 9:14-9:14 |
ID |
i |
| 11:1-11:3 |
FUN |
fun |
| 11:5-11:13 |
ID |
ext_print |
| 11:14-11:14 |
LBRACKET |
( |
| 11:15-11:15 |
ID |
x |
| 11:17-11:17 |
COLON |
: |
| 11:19-11:19 |
ID |
i |
| 11:20-11:20 |
RBRACKET |
) |
| 11:22-11:22 |
COLON |
: |
| 11:24-11:24 |
ID |
i |
| 12:1-12:3 |
FUN |
fun |
| 12:5-12:12 |
ID |
ext_read |
| 12:13-12:13 |
LBRACKET |
( |
| 12:14-12:14 |
RBRACKET |
) |
| 12:16-12:16 |
COLON |
: |
| 12:18-12:18 |
ID |
i |
| 14:1-14:3 |
FUN |
fun |
| 14:5-14:11 |
ID |
is_zero |
| 14:12-14:12 |
LBRACKET |
( |
| 14:13-14:13 |
ID |
n |
| 14:15-14:15 |
COLON |
: |
| 14:17-14:17 |
ID |
i |
| 14:18-14:18 |
RBRACKET |
) |
| 14:20-14:20 |
COLON |
: |
| 14:22-14:22 |
ID |
b |
| 14:24-14:24 |
EQUALS |
= |
| 15:5-15:5 |
ID |
n |
| 15:7-15:8 |
EEQUALS |
== |
| 15:10-15:10 |
NUM |
0 |
| 17:1-17:3 |
FUN |
fun |
| 17:5-17:11 |
ID |
is_even |
| 17:12-17:12 |
LBRACKET |
( |
| 17:13-17:13 |
ID |
n |
| 17:15-17:15 |
COLON |
: |
| 17:17-17:17 |
ID |
i |
| 17:18-17:18 |
RBRACKET |
) |
| 17:20-17:20 |
COLON |
: |
| 17:22-17:22 |
ID |
b |
| 17:24-17:24 |
EQUALS |
= |
| 18:5-18:5 |
ID |
n |
| 18:7-18:7 |
PERCENT |
% |
| 18:9-18:9 |
NUM |
2 |
| 18:11-18:12 |
EEQUALS |
== |
| 18:14-18:14 |
NUM |
0 |
| 20:1-20:3 |
FUN |
fun |
| 20:5-20:11 |
ID |
abs_val |
| 20:12-20:12 |
LBRACKET |
( |
| 20:13-20:13 |
ID |
n |
| 20:15-20:15 |
COLON |
: |
| 20:17-20:17 |
ID |
i |
| 20:18-20:18 |
RBRACKET |
) |
| 20:20-20:20 |
COLON |
: |
| 20:22-20:22 |
ID |
i |
| 20:24-20:24 |
EQUALS |
= |
| 21:5-21:6 |
IF |
if |
| 21:8-21:8 |
ID |
n |
| 21:10-21:10 |
LT |
< |
| 21:12-21:12 |
NUM |
0 |
| 21:14-21:17 |
THEN |
then |
| 22:9-22:9 |
NUM |
0 |
| 22:11-22:11 |
MINUS |
- |
| 22:13-22:13 |
ID |
n |
| 23:5-23:8 |
ELSE |
else |
| 24:9-24:9 |
ID |
n |
| 25:5-25:7 |
END |
end |
| 27:1-27:3 |
FUN |
fun |
| 27:5-27:7 |
ID |
max |
| 27:8-27:8 |
LBRACKET |
( |
| 27:9-27:9 |
ID |
a |
| 27:11-27:11 |
COLON |
: |
| 27:13-27:13 |
ID |
i |
| 27:14-27:14 |
COMMA |
, |
| 27:16-27:16 |
ID |
b |
| 27:18-27:18 |
COLON |
: |
| 27:20-27:20 |
ID |
i |
| 27:21-27:21 |
RBRACKET |
) |
| 27:23-27:23 |
COLON |
: |
| 27:25-27:25 |
ID |
i |
| 27:27-27:27 |
EQUALS |
= |
| 28:5-28:6 |
IF |
if |
| 28:8-28:8 |
ID |
a |
| 28:10-28:10 |
GT |
> |
| 28:12-28:12 |
ID |
b |
| 28:14-28:17 |
THEN |
then |
| 29:9-29:9 |
ID |
a |
| 30:5-30:8 |
ELSE |
else |
| 31:9-31:9 |
ID |
b |
| 32:5-32:7 |
END |
end |
| 34:1-34:3 |
FUN |
fun |
| 34:5-34:7 |
ID |
min |
| 34:8-34:8 |
LBRACKET |
( |
| 34:9-34:9 |
ID |
a |
| 34:11-34:11 |
COLON |
: |
| 34:13-34:13 |
ID |
i |
| 34:14-34:14 |
COMMA |
, |
| 34:16-34:16 |
ID |
b |
| 34:18-34:18 |
COLON |
: |
| 34:20-34:20 |
ID |
i |
| 34:21-34:21 |
RBRACKET |
) |
| 34:23-34:23 |
COLON |
: |
| 34:25-34:25 |
ID |
i |
| 34:27-34:27 |
EQUALS |
= |
| 35:5-35:6 |
IF |
if |
| 35:8-35:8 |
ID |
a |
| 35:10-35:10 |
LT |
< |
| 35:12-35:12 |
ID |
b |
| 35:14-35:17 |
THEN |
then |
| 36:9-36:9 |
ID |
a |
| 37:5-37:8 |
ELSE |
else |
| 38:9-38:9 |
ID |
b |
| 39:5-39:7 |
END |
end |
| 41:1-41:3 |
FUN |
fun |
| 41:5-41:7 |
ID |
pow |
| 41:8-41:8 |
LBRACKET |
( |
| 41:9-41:12 |
ID |
base |
| 41:14-41:14 |
COLON |
: |
| 41:16-41:16 |
ID |
i |
| 41:17-41:17 |
COMMA |
, |
| 41:19-41:21 |
ID |
exp |
| 41:23-41:23 |
COLON |
: |
| 41:25-41:25 |
ID |
i |
| 41:26-41:26 |
RBRACKET |
) |
| 41:28-41:28 |
COLON |
: |
| 41:30-41:30 |
ID |
i |
| 41:32-41:32 |
EQUALS |
= |
| 42:5-42:6 |
IF |
if |
| 42:8-42:14 |
ID |
is_zero |
| 42:15-42:15 |
LBRACKET |
( |
| 42:16-42:18 |
ID |
exp |
| 42:19-42:19 |
RBRACKET |
) |
| 42:21-42:24 |
THEN |
then |
| 43:9-43:9 |
NUM |
1 |
| 44:5-44:8 |
ELSE |
else |
| 45:9-45:12 |
ID |
base |
| 45:14-45:14 |
ASTERISK |
* |
| 45:16-45:18 |
ID |
pow |
| 45:19-45:19 |
LBRACKET |
( |
| 45:20-45:23 |
ID |
base |
| 45:24-45:24 |
COMMA |
, |
| 45:26-45:28 |
ID |
exp |
| 45:30-45:30 |
MINUS |
- |
| 45:32-45:32 |
NUM |
1 |
| 45:33-45:33 |
RBRACKET |
) |
| 46:5-46:7 |
END |
end |
| 48:1-48:3 |
FUN |
fun |
| 48:5-48:7 |
ID |
gcd |
| 48:8-48:8 |
LBRACKET |
( |
| 48:9-48:9 |
ID |
a |
| 48:11-48:11 |
COLON |
: |
| 48:13-48:13 |
ID |
i |
| 48:14-48:14 |
COMMA |
, |
| 48:16-48:16 |
ID |
b |
| 48:18-48:18 |
COLON |
: |
| 48:20-48:20 |
ID |
i |
| 48:21-48:21 |
RBRACKET |
) |
| 48:23-48:23 |
COLON |
: |
| 48:25-48:25 |
ID |
i |
| 48:27-48:27 |
EQUALS |
= |
| 49:5-49:6 |
IF |
if |
| 49:8-49:14 |
ID |
is_zero |
| 49:15-49:15 |
LBRACKET |
( |
| 49:16-49:16 |
ID |
b |
| 49:17-49:17 |
RBRACKET |
) |
| 49:19-49:22 |
THEN |
then |
| 50:9-50:9 |
ID |
a |
| 51:5-51:8 |
ELSE |
else |
| 52:9-52:11 |
ID |
gcd |
| 52:12-52:12 |
LBRACKET |
( |
| 52:13-52:13 |
ID |
b |
| 52:14-52:14 |
COMMA |
, |
| 52:16-52:16 |
ID |
a |
| 52:18-52:18 |
PERCENT |
% |
| 52:20-52:20 |
ID |
b |
| 52:21-52:21 |
RBRACKET |
) |
| 53:5-53:7 |
END |
end |
| 55:1-55:3 |
FUN |
fun |
| 55:5-55:7 |
ID |
fib |
| 55:8-55:8 |
LBRACKET |
( |
| 55:9-55:9 |
ID |
n |
| 55:11-55:11 |
COLON |
: |
| 55:13-55:13 |
ID |
i |
| 55:14-55:14 |
RBRACKET |
) |
| 55:16-55:16 |
COLON |
: |
| 55:18-55:18 |
ID |
i |
| 55:20-55:20 |
EQUALS |
= |
| 56:5-56:6 |
IF |
if |
| 56:8-56:8 |
ID |
n |
| 56:10-56:11 |
EEQUALS |
== |
| 56:13-56:13 |
NUM |
0 |
| 56:15-56:18 |
THEN |
then |
| 57:9-57:9 |
NUM |
0 |
| 58:5-58:8 |
ELSE |
else |
| 59:9-59:10 |
IF |
if |
| 59:12-59:12 |
ID |
n |
| 59:14-59:15 |
EEQUALS |
== |
| 59:17-59:17 |
NUM |
1 |
| 59:19-59:22 |
THEN |
then |
| 60:13-60:13 |
NUM |
1 |
| 61:9-61:12 |
ELSE |
else |
| 62:13-62:15 |
ID |
fib |
| 62:16-62:16 |
LBRACKET |
( |
| 62:17-62:17 |
ID |
n |
| 62:19-62:19 |
MINUS |
- |
| 62:21-62:21 |
NUM |
1 |
| 62:22-62:22 |
RBRACKET |
) |
| 62:24-62:24 |
PLUS |
+ |
| 62:26-62:28 |
ID |
fib |
| 62:29-62:29 |
LBRACKET |
( |
| 62:30-62:30 |
ID |
n |
| 62:32-62:32 |
MINUS |
- |
| 62:34-62:34 |
NUM |
2 |
| 62:35-62:35 |
RBRACKET |
) |
| 63:9-63:11 |
END |
end |
| 64:5-64:7 |
END |
end |
| 66:1-66:3 |
FUN |
fun |
| 66:5-66:10 |
ID |
sum_to |
| 66:11-66:11 |
LBRACKET |
( |
| 66:12-66:12 |
ID |
n |
| 66:14-66:14 |
COLON |
: |
| 66:16-66:16 |
ID |
i |
| 66:17-66:17 |
RBRACKET |
) |
| 66:19-66:19 |
COLON |
: |
| 66:21-66:21 |
ID |
i |
| 66:23-66:23 |
EQUALS |
= |
| 67:5-67:6 |
IF |
if |
| 67:8-67:14 |
ID |
is_zero |
| 67:15-67:15 |
LBRACKET |
( |
| 67:16-67:16 |
ID |
n |
| 67:17-67:17 |
RBRACKET |
) |
| 67:19-67:22 |
THEN |
then |
| 68:9-68:9 |
NUM |
0 |
| 69:5-69:8 |
ELSE |
else |
| 70:9-70:9 |
ID |
n |
| 70:11-70:11 |
PLUS |
+ |
| 70:13-70:18 |
ID |
sum_to |
| 70:19-70:19 |
LBRACKET |
( |
| 70:20-70:20 |
ID |
n |
| 70:22-70:22 |
MINUS |
- |
| 70:24-70:24 |
NUM |
1 |
| 70:25-70:25 |
RBRACKET |
) |
| 71:5-71:7 |
END |
end |
| 73:1-73:3 |
FUN |
fun |
| 73:5-73:11 |
ID |
collatz |
| 73:12-73:12 |
LBRACKET |
( |
| 73:13-73:13 |
ID |
n |
| 73:15-73:15 |
COLON |
: |
| 73:17-73:17 |
ID |
i |
| 73:18-73:18 |
RBRACKET |
) |
| 73:20-73:20 |
COLON |
: |
| 73:22-73:22 |
ID |
i |
| 73:24-73:24 |
EQUALS |
= |
| 74:5-74:6 |
IF |
if |
| 74:8-74:8 |
ID |
n |
| 74:10-74:11 |
EEQUALS |
== |
| 74:13-74:13 |
NUM |
1 |
| 74:15-74:18 |
THEN |
then |
| 75:9-75:9 |
NUM |
0 |
| 76:5-76:8 |
ELSE |
else |
| 77:9-77:10 |
IF |
if |
| 77:12-77:18 |
ID |
is_even |
| 77:19-77:19 |
LBRACKET |
( |
| 77:20-77:20 |
ID |
n |
| 77:21-77:21 |
RBRACKET |
) |
| 77:23-77:26 |
THEN |
then |
| 78:13-78:13 |
NUM |
1 |
| 78:15-78:15 |
PLUS |
+ |
| 78:17-78:23 |
ID |
collatz |
| 78:24-78:24 |
LBRACKET |
( |
| 78:25-78:25 |
ID |
n |
| 78:27-78:27 |
SLASH |
/ |
| 78:29-78:29 |
NUM |
2 |
| 78:30-78:30 |
RBRACKET |
) |
| 79:9-79:12 |
ELSE |
else |
| 80:13-80:13 |
NUM |
1 |
| 80:15-80:15 |
PLUS |
+ |
| 80:17-80:23 |
ID |
collatz |
| 80:24-80:24 |
LBRACKET |
( |
| 80:25-80:25 |
NUM |
3 |
| 80:27-80:27 |
ASTERISK |
* |
| 80:29-80:29 |
ID |
n |
| 80:31-80:31 |
PLUS |
+ |
| 80:33-80:33 |
NUM |
1 |
| 80:34-80:34 |
RBRACKET |
) |
| 81:9-81:11 |
END |
end |
| 82:5-82:7 |
END |
end |
| 84:1-84:3 |
FUN |
fun |
| 84:5-84:13 |
ID |
ackermann |
| 84:14-84:14 |
LBRACKET |
( |
| 84:15-84:15 |
ID |
m |
| 84:17-84:17 |
COLON |
: |
| 84:19-84:19 |
ID |
i |
| 84:20-84:20 |
COMMA |
, |
| 84:22-84:22 |
ID |
n |
| 84:24-84:24 |
COLON |
: |
| 84:26-84:26 |
ID |
i |
| 84:27-84:27 |
RBRACKET |
) |
| 84:29-84:29 |
COLON |
: |
| 84:31-84:31 |
ID |
i |
| 84:33-84:33 |
EQUALS |
= |
| 85:5-85:6 |
IF |
if |
| 85:8-85:14 |
ID |
is_zero |
| 85:15-85:15 |
LBRACKET |
( |
| 85:16-85:16 |
ID |
m |
| 85:17-85:17 |
RBRACKET |
) |
| 85:19-85:22 |
THEN |
then |
| 86:9-86:9 |
ID |
n |
| 86:11-86:11 |
PLUS |
+ |
| 86:13-86:13 |
NUM |
1 |
| 87:5-87:8 |
ELSE |
else |
| 88:9-88:10 |
IF |
if |
| 88:12-88:18 |
ID |
is_zero |
| 88:19-88:19 |
LBRACKET |
( |
| 88:20-88:20 |
ID |
n |
| 88:21-88:21 |
RBRACKET |
) |
| 88:23-88:26 |
THEN |
then |
| 89:13-89:21 |
ID |
ackermann |
| 89:22-89:22 |
LBRACKET |
( |
| 89:23-89:23 |
ID |
m |
| 89:25-89:25 |
MINUS |
- |
| 89:27-89:27 |
NUM |
1 |
| 89:28-89:28 |
COMMA |
, |
| 89:30-89:30 |
NUM |
1 |
| 89:31-89:31 |
RBRACKET |
) |
| 90:9-90:12 |
ELSE |
else |
| 91:13-91:21 |
ID |
ackermann |
| 91:22-91:22 |
LBRACKET |
( |
| 91:23-91:23 |
ID |
m |
| 91:25-91:25 |
MINUS |
- |
| 91:27-91:27 |
NUM |
1 |
| 91:28-91:28 |
COMMA |
, |
| 91:30-91:38 |
ID |
ackermann |
| 91:39-91:39 |
LBRACKET |
( |
| 91:40-91:40 |
ID |
m |
| 91:41-91:41 |
COMMA |
, |
| 91:43-91:43 |
ID |
n |
| 91:45-91:45 |
MINUS |
- |
| 91:47-91:47 |
NUM |
1 |
| 91:48-91:48 |
RBRACKET |
) |
| 91:49-91:49 |
RBRACKET |
) |
| 92:9-92:11 |
END |
end |
| 93:5-93:7 |
END |
end |
| 95:1-95:3 |
FUN |
fun |
| 95:5-95:13 |
ID |
digit_sum |
| 95:14-95:14 |
LBRACKET |
( |
| 95:15-95:15 |
ID |
n |
| 95:17-95:17 |
COLON |
: |
| 95:19-95:19 |
ID |
i |
| 95:20-95:20 |
RBRACKET |
) |
| 95:22-95:22 |
COLON |
: |
| 95:24-95:24 |
ID |
i |
| 95:26-95:26 |
EQUALS |
= |
| 96:5-96:6 |
IF |
if |
| 96:8-96:8 |
ID |
n |
| 96:10-96:10 |
LT |
< |
| 96:12-96:13 |
NUM |
10 |
| 96:15-96:18 |
THEN |
then |
| 97:9-97:9 |
ID |
n |
| 98:5-98:8 |
ELSE |
else |
| 99:9-99:9 |
ID |
n |
| 99:11-99:11 |
PERCENT |
% |
| 99:13-99:14 |
NUM |
10 |
| 99:16-99:16 |
PLUS |
+ |
| 99:18-99:26 |
ID |
digit_sum |
| 99:27-99:27 |
LBRACKET |
( |
| 99:28-99:28 |
ID |
n |
| 99:30-99:30 |
SLASH |
/ |
| 99:32-99:33 |
NUM |
10 |
| 99:34-99:34 |
RBRACKET |
) |
| 100:5-100:7 |
END |
end |
| 102:1-102:3 |
FUN |
fun |
| 102:5-102:17 |
ID |
is_palindrome |
| 102:18-102:18 |
LBRACKET |
( |
| 102:19-102:19 |
ID |
n |
| 102:21-102:21 |
COLON |
: |
| 102:23-102:23 |
ID |
i |
| 102:24-102:24 |
COMMA |
, |
| 102:26-102:28 |
ID |
rev |
| 102:30-102:30 |
COLON |
: |
| 102:32-102:32 |
ID |
i |
| 102:33-102:33 |
RBRACKET |
) |
| 102:35-102:35 |
COLON |
: |
| 102:37-102:37 |
ID |
b |
| 102:39-102:39 |
EQUALS |
= |
| 103:5-103:6 |
IF |
if |
| 103:8-103:14 |
ID |
is_zero |
| 103:15-103:15 |
LBRACKET |
( |
| 103:16-103:16 |
ID |
n |
| 103:17-103:17 |
RBRACKET |
) |
| 103:19-103:22 |
THEN |
then |
| 104:9-104:9 |
ID |
n |
| 104:11-104:12 |
EEQUALS |
== |
| 104:14-104:16 |
ID |
rev |
| 105:5-105:8 |
ELSE |
else |
| 106:9-106:21 |
ID |
is_palindrome |
| 106:22-106:22 |
LBRACKET |
( |
| 106:23-106:23 |
ID |
n |
| 106:25-106:25 |
SLASH |
/ |
| 106:27-106:28 |
NUM |
10 |
| 106:29-106:29 |
COMMA |
, |
| 106:31-106:33 |
ID |
rev |
| 106:35-106:35 |
ASTERISK |
* |
| 106:37-106:38 |
NUM |
10 |
| 106:40-106:40 |
PLUS |
+ |
| 106:42-106:42 |
ID |
n |
| 106:44-106:44 |
PERCENT |
% |
| 106:46-106:47 |
NUM |
10 |
| 106:48-106:48 |
RBRACKET |
) |
| 107:5-107:7 |
END |
end |
| 109:1-109:3 |
FUN |
fun |
| 109:5-109:14 |
ID |
count_bits |
| 109:15-109:15 |
LBRACKET |
( |
| 109:16-109:16 |
ID |
n |
| 109:18-109:18 |
COLON |
: |
| 109:20-109:20 |
ID |
i |
| 109:21-109:21 |
RBRACKET |
) |
| 109:23-109:23 |
COLON |
: |
| 109:25-109:25 |
ID |
i |
| 109:27-109:27 |
EQUALS |
= |
| 110:5-110:6 |
IF |
if |
| 110:8-110:14 |
ID |
is_zero |
| 110:15-110:15 |
LBRACKET |
( |
| 110:16-110:16 |
ID |
n |
| 110:17-110:17 |
RBRACKET |
) |
| 110:19-110:22 |
THEN |
then |
| 111:9-111:9 |
NUM |
0 |
| 112:5-112:8 |
ELSE |
else |
| 113:9-113:9 |
ID |
n |
| 113:11-113:11 |
PERCENT |
% |
| 113:13-113:13 |
NUM |
2 |
| 113:15-113:15 |
PLUS |
+ |
| 113:17-113:26 |
ID |
count_bits |
| 113:27-113:27 |
LBRACKET |
( |
| 113:28-113:28 |
ID |
n |
| 113:30-113:30 |
SLASH |
/ |
| 113:32-113:32 |
NUM |
2 |
| 113:33-113:33 |
RBRACKET |
) |
| 114:5-114:7 |
END |
end |
| 116:1-116:3 |
FUN |
fun |
| 116:5-116:8 |
ID |
main |
| 116:9-116:9 |
LBRACKET |
( |
| 116:10-116:10 |
RBRACKET |
) |
| 116:12-116:12 |
COLON |
: |
| 116:14-116:14 |
ID |
i |
| 116:16-116:16 |
EQUALS |
= |
| 117:5-117:7 |
LET |
let |
| 118:9-118:11 |
VAR |
var |
| 118:13-118:13 |
ID |
a |
| 118:15-118:15 |
COLON |
: |
| 118:17-118:17 |
ID |
i |
| 119:9-119:11 |
VAR |
var |
| 119:13-119:14 |
ID |
bb |
| 119:16-119:16 |
COLON |
: |
| 119:18-119:18 |
ID |
i |
| 120:9-120:11 |
VAR |
var |
| 120:13-120:14 |
ID |
cc |
| 120:16-120:16 |
COLON |
: |
| 120:18-120:18 |
ID |
i |
| 121:9-121:11 |
VAR |
var |
| 121:13-121:14 |
ID |
dd |
| 121:16-121:16 |
COLON |
: |
| 121:18-121:18 |
ID |
i |
| 122:9-122:11 |
VAR |
var |
| 122:13-122:13 |
ID |
e |
| 122:15-122:15 |
COLON |
: |
| 122:17-122:17 |
ID |
i |
| 123:9-123:11 |
VAR |
var |
| 123:13-123:13 |
ID |
f |
| 123:15-123:15 |
COLON |
: |
| 123:17-123:17 |
ID |
b |
| 124:9-124:11 |
VAR |
var |
| 124:13-124:13 |
ID |
g |
| 124:15-124:15 |
COLON |
: |
| 124:17-124:17 |
ID |
b |
| 125:9-125:11 |
TYP |
typ |
| 125:13-125:14 |
ID |
li |
| 125:16-125:16 |
EQUALS |
= |
| 125:18-125:18 |
ID |
i |
| 126:9-126:11 |
TYP |
typ |
| 126:13-126:14 |
ID |
lb |
| 126:16-126:16 |
EQUALS |
= |
| 126:18-126:18 |
ID |
b |
| 127:9-127:11 |
FUN |
fun |
| 127:13-127:21 |
ID |
local_max |
| 127:22-127:22 |
LBRACKET |
( |
| 127:23-127:23 |
ID |
x |
| 127:25-127:25 |
COLON |
: |
| 127:27-127:28 |
ID |
li |
| 127:29-127:29 |
COMMA |
, |
| 127:31-127:31 |
ID |
y |
| 127:33-127:33 |
COLON |
: |
| 127:35-127:36 |
ID |
li |
| 127:37-127:37 |
RBRACKET |
) |
| 127:39-127:39 |
COLON |
: |
| 127:41-127:42 |
ID |
li |
| 127:44-127:44 |
EQUALS |
= |
| 128:13-128:14 |
IF |
if |
| 128:16-128:16 |
ID |
x |
| 128:18-128:18 |
GT |
> |
| 128:20-128:20 |
ID |
y |
| 128:22-128:25 |
THEN |
then |
| 129:17-129:17 |
ID |
x |
| 130:13-130:16 |
ELSE |
else |
| 131:17-131:17 |
ID |
y |
| 132:13-132:15 |
END |
end |
| 133:9-133:11 |
FUN |
fun |
| 133:13-133:21 |
ID |
local_and |
| 133:22-133:22 |
LBRACKET |
( |
| 133:23-133:23 |
ID |
x |
| 133:25-133:25 |
COLON |
: |
| 133:27-133:28 |
ID |
lb |
| 133:29-133:29 |
COMMA |
, |
| 133:31-133:31 |
ID |
y |
| 133:33-133:33 |
COLON |
: |
| 133:35-133:36 |
ID |
lb |
| 133:37-133:37 |
RBRACKET |
) |
| 133:39-133:39 |
COLON |
: |
| 133:41-133:42 |
ID |
lb |
| 133:44-133:44 |
EQUALS |
= |
| 134:13-134:13 |
ID |
x |
| 134:15-134:17 |
AND |
and |
| 134:19-134:19 |
ID |
y |
| 135:9-135:11 |
FUN |
fun |
| 135:13-135:18 |
ID |
triple |
| 135:19-135:19 |
LBRACKET |
( |
| 135:20-135:20 |
ID |
x |
| 135:22-135:22 |
COLON |
: |
| 135:24-135:25 |
ID |
li |
| 135:26-135:26 |
RBRACKET |
) |
| 135:28-135:28 |
COLON |
: |
| 135:30-135:31 |
ID |
li |
| 135:33-135:33 |
EQUALS |
= |
| 136:13-136:13 |
ID |
x |
| 136:15-136:15 |
ASTERISK |
* |
| 136:17-136:17 |
NUM |
3 |
| 137:9-137:11 |
FUN |
fun |
| 137:13-137:19 |
ID |
compose |
| 137:20-137:20 |
LBRACKET |
( |
| 137:21-137:21 |
ID |
x |
| 137:23-137:23 |
COLON |
: |
| 137:25-137:26 |
ID |
li |
| 137:27-137:27 |
RBRACKET |
) |
| 137:29-137:29 |
COLON |
: |
| 137:31-137:32 |
ID |
li |
| 137:34-137:34 |
EQUALS |
= |
| 138:13-138:18 |
ID |
triple |
| 138:19-138:19 |
LBRACKET |
( |
| 138:20-138:25 |
ID |
triple |
| 138:26-138:26 |
LBRACKET |
( |
| 138:27-138:27 |
ID |
x |
| 138:28-138:28 |
RBRACKET |
) |
| 138:29-138:29 |
RBRACKET |
) |
| 139:5-139:6 |
IN |
in |
| 140:9-140:15 |
ID |
counter |
| 140:17-140:17 |
EQUALS |
= |
| 140:19-140:19 |
NUM |
0 |
| 140:20-140:20 |
COMMA |
, |
| 141:9-141:14 |
ID |
result |
| 141:16-141:16 |
EQUALS |
= |
| 141:18-141:18 |
NUM |
0 |
| 141:19-141:19 |
COMMA |
, |
| 142:9-142:12 |
ID |
flag |
| 142:14-142:14 |
EQUALS |
= |
| 142:16-142:19 |
TRUE |
true |
| 142:20-142:20 |
COMMA |
, |
| 143:9-143:9 |
ID |
a |
| 143:11-143:11 |
EQUALS |
= |
| 143:13-143:15 |
ID |
fib |
| 143:16-143:16 |
LBRACKET |
( |
| 143:17-143:18 |
NUM |
10 |
| 143:19-143:19 |
RBRACKET |
) |
| 143:20-143:20 |
COMMA |
, |
| 144:9-144:10 |
ID |
bb |
| 144:12-144:12 |
EQUALS |
= |
| 144:14-144:16 |
ID |
pow |
| 144:17-144:17 |
LBRACKET |
( |
| 144:18-144:18 |
NUM |
2 |
| 144:19-144:19 |
COMMA |
, |
| 144:21-144:21 |
NUM |
8 |
| 144:22-144:22 |
RBRACKET |
) |
| 144:23-144:23 |
COMMA |
, |
| 145:9-145:10 |
ID |
cc |
| 145:12-145:12 |
EQUALS |
= |
| 145:14-145:16 |
ID |
gcd |
| 145:17-145:17 |
LBRACKET |
( |
| 145:18-145:19 |
ID |
bb |
| 145:20-145:20 |
COMMA |
, |
| 145:22-145:22 |
ID |
a |
| 145:23-145:23 |
RBRACKET |
) |
| 145:24-145:24 |
COMMA |
, |
| 146:9-146:10 |
ID |
dd |
| 146:12-146:12 |
EQUALS |
= |
| 146:14-146:19 |
ID |
sum_to |
| 146:20-146:20 |
LBRACKET |
( |
| 146:21-146:23 |
NUM |
100 |
| 146:24-146:24 |
RBRACKET |
) |
| 146:25-146:25 |
COMMA |
, |
| 147:9-147:9 |
ID |
e |
| 147:11-147:11 |
EQUALS |
= |
| 147:13-147:19 |
ID |
collatz |
| 147:20-147:20 |
LBRACKET |
( |
| 147:21-147:22 |
NUM |
27 |
| 147:23-147:23 |
RBRACKET |
) |
| 147:24-147:24 |
COMMA |
, |
| 148:9-148:9 |
ID |
f |
| 148:11-148:11 |
EQUALS |
= |
| 148:13-148:19 |
ID |
is_even |
| 148:20-148:20 |
LBRACKET |
( |
| 148:21-148:21 |
ID |
a |
| 148:22-148:22 |
RBRACKET |
) |
| 148:23-148:23 |
COMMA |
, |
| 149:9-149:9 |
ID |
g |
| 149:11-149:11 |
EQUALS |
= |
| 149:13-149:25 |
ID |
is_palindrome |
| 149:26-149:26 |
LBRACKET |
( |
| 149:27-149:31 |
NUM |
12321 |
| 149:32-149:32 |
COMMA |
, |
| 149:34-149:34 |
NUM |
0 |
| 149:35-149:35 |
RBRACKET |
) |
| 149:36-149:36 |
COMMA |
, |
| 150:9-150:14 |
ID |
result |
| 150:16-150:16 |
EQUALS |
= |
| 150:18-150:26 |
ID |
local_max |
| 150:27-150:27 |
LBRACKET |
( |
| 150:28-150:28 |
ID |
a |
| 150:29-150:29 |
COMMA |
, |
| 150:31-150:32 |
ID |
bb |
| 150:33-150:33 |
RBRACKET |
) |
| 150:34-150:34 |
COMMA |
, |
| 151:9-151:14 |
ID |
result |
| 151:16-151:16 |
EQUALS |
= |
| 151:18-151:24 |
ID |
compose |
| 151:25-151:25 |
LBRACKET |
( |
| 151:26-151:31 |
ID |
result |
| 151:32-151:32 |
RBRACKET |
) |
| 151:33-151:33 |
COMMA |
, |
| 152:9-152:15 |
ID |
counter |
| 152:17-152:17 |
EQUALS |
= |
| 152:19-152:27 |
ID |
ackermann |
| 152:28-152:28 |
LBRACKET |
( |
| 152:29-152:29 |
NUM |
3 |
| 152:30-152:30 |
COMMA |
, |
| 152:32-152:32 |
NUM |
2 |
| 152:33-152:33 |
RBRACKET |
) |
| 152:34-152:34 |
COMMA |
, |
| 153:9-153:11 |
LET |
let |
| 154:13-154:15 |
VAR |
var |
| 154:17-154:24 |
ID |
shadow_a |
| 154:26-154:26 |
COLON |
: |
| 154:28-154:28 |
ID |
i |
| 155:13-155:15 |
VAR |
var |
| 155:17-155:24 |
ID |
shadow_b |
| 155:26-155:26 |
COLON |
: |
| 155:28-155:28 |
ID |
i |
| 156:13-156:15 |
VAR |
var |
| 156:17-156:24 |
ID |
shadow_f |
| 156:26-156:26 |
COLON |
: |
| 156:28-156:28 |
ID |
b |
| 157:13-157:15 |
VAR |
var |
| 157:17-157:23 |
ID |
counter |
| 157:25-157:25 |
COLON |
: |
| 157:27-157:27 |
ID |
i |
| 158:13-158:15 |
VAR |
var |
| 158:17-158:22 |
ID |
result |
| 158:24-158:24 |
COLON |
: |
| 158:26-158:26 |
ID |
i |
| 159:13-159:15 |
FUN |
fun |
| 159:17-159:26 |
ID |
shadow_fib |
| 159:27-159:27 |
LBRACKET |
( |
| 159:28-159:28 |
ID |
n |
| 159:30-159:30 |
COLON |
: |
| 159:32-159:32 |
ID |
i |
| 159:33-159:33 |
RBRACKET |
) |
| 159:35-159:35 |
COLON |
: |
| 159:37-159:37 |
ID |
i |
| 159:39-159:39 |
EQUALS |
= |
| 160:17-160:18 |
IF |
if |
| 160:20-160:20 |
ID |
n |
| 160:22-160:23 |
EEQUALS |
== |
| 160:25-160:25 |
NUM |
0 |
| 160:27-160:30 |
THEN |
then |
| 161:21-161:21 |
NUM |
0 |
| 162:17-162:20 |
ELSE |
else |
| 163:21-163:22 |
IF |
if |
| 163:24-163:24 |
ID |
n |
| 163:26-163:27 |
EEQUALS |
== |
| 163:29-163:29 |
NUM |
1 |
| 163:31-163:34 |
THEN |
then |
| 164:25-164:25 |
NUM |
1 |
| 165:21-165:24 |
ELSE |
else |
| 166:25-166:34 |
ID |
shadow_fib |
| 166:35-166:35 |
LBRACKET |
( |
| 166:36-166:36 |
ID |
n |
| 166:38-166:38 |
MINUS |
- |
| 166:40-166:40 |
NUM |
1 |
| 166:41-166:41 |
RBRACKET |
) |
| 166:43-166:43 |
PLUS |
+ |
| 166:45-166:54 |
ID |
shadow_fib |
| 166:55-166:55 |
LBRACKET |
( |
| 166:56-166:56 |
ID |
n |
| 166:58-166:58 |
MINUS |
- |
| 166:60-166:60 |
NUM |
2 |
| 166:61-166:61 |
RBRACKET |
) |
| 167:21-167:23 |
END |
end |
| 168:17-168:19 |
END |
end |
| 169:13-169:15 |
FUN |
fun |
| 169:17-169:26 |
ID |
accumulate |
| 169:27-169:27 |
LBRACKET |
( |
| 169:28-169:28 |
ID |
n |
| 169:30-169:30 |
COLON |
: |
| 169:32-169:32 |
ID |
i |
| 169:33-169:33 |
COMMA |
, |
| 169:35-169:37 |
ID |
acc |
| 169:39-169:39 |
COLON |
: |
| 169:41-169:41 |
ID |
i |
| 169:42-169:42 |
RBRACKET |
) |
| 169:44-169:44 |
COLON |
: |
| 169:46-169:46 |
ID |
i |
| 169:48-169:48 |
EQUALS |
= |
| 170:17-170:18 |
IF |
if |
| 170:20-170:26 |
ID |
is_zero |
| 170:27-170:27 |
LBRACKET |
( |
| 170:28-170:28 |
ID |
n |
| 170:29-170:29 |
RBRACKET |
) |
| 170:31-170:34 |
THEN |
then |
| 171:21-171:23 |
ID |
acc |
| 172:17-172:20 |
ELSE |
else |
| 173:21-173:30 |
ID |
accumulate |
| 173:31-173:31 |
LBRACKET |
( |
| 173:32-173:32 |
ID |
n |
| 173:34-173:34 |
MINUS |
- |
| 173:36-173:36 |
NUM |
1 |
| 173:37-173:37 |
COMMA |
, |
| 173:39-173:41 |
ID |
acc |
| 173:43-173:43 |
PLUS |
+ |
| 173:45-173:45 |
ID |
n |
| 173:46-173:46 |
RBRACKET |
) |
| 174:17-174:19 |
END |
end |
| 175:9-175:10 |
IN |
in |
| 176:13-176:20 |
ID |
shadow_a |
| 176:22-176:22 |
EQUALS |
= |
| 176:24-176:33 |
ID |
shadow_fib |
| 176:34-176:34 |
LBRACKET |
( |
| 176:35-176:36 |
NUM |
15 |
| 176:37-176:37 |
RBRACKET |
) |
| 176:38-176:38 |
COMMA |
, |
| 177:13-177:20 |
ID |
shadow_b |
| 177:22-177:22 |
EQUALS |
= |
| 177:24-177:33 |
ID |
accumulate |
| 177:34-177:34 |
LBRACKET |
( |
| 177:35-177:36 |
NUM |
50 |
| 177:37-177:37 |
COMMA |
, |
| 177:39-177:39 |
NUM |
0 |
| 177:40-177:40 |
RBRACKET |
) |
| 177:41-177:41 |
COMMA |
, |
| 178:13-178:20 |
ID |
shadow_f |
| 178:22-178:22 |
EQUALS |
= |
| 178:24-178:32 |
ID |
local_and |
| 178:33-178:33 |
LBRACKET |
( |
| 178:34-178:34 |
ID |
f |
| 178:35-178:35 |
COMMA |
, |
| 178:37-178:37 |
ID |
g |
| 178:38-178:38 |
RBRACKET |
) |
| 178:39-178:39 |
COMMA |
, |
| 179:13-179:19 |
ID |
counter |
| 179:21-179:21 |
EQUALS |
= |
| 179:23-179:31 |
ID |
digit_sum |
| 179:32-179:32 |
LBRACKET |
( |
| 179:33-179:40 |
ID |
shadow_a |
| 179:42-179:42 |
ASTERISK |
* |
| 179:44-179:51 |
ID |
shadow_b |
| 179:52-179:52 |
RBRACKET |
) |
| 179:53-179:53 |
COMMA |
, |
| 180:13-180:18 |
ID |
result |
| 180:20-180:20 |
EQUALS |
= |
| 180:22-180:24 |
ID |
min |
| 180:25-180:25 |
LBRACKET |
( |
| 180:26-180:33 |
ID |
shadow_a |
| 180:34-180:34 |
COMMA |
, |
| 180:36-180:43 |
ID |
shadow_b |
| 180:44-180:44 |
RBRACKET |
) |
| 180:45-180:45 |
COMMA |
, |
| 181:13-181:17 |
WHILE |
while |
| 181:19-181:25 |
ID |
counter |
| 181:27-181:27 |
GT |
> |
| 181:29-181:29 |
NUM |
0 |
| 181:31-181:32 |
DO |
do |
| 182:17-182:18 |
IF |
if |
| 182:20-182:26 |
ID |
is_even |
| 182:27-182:27 |
LBRACKET |
( |
| 182:28-182:34 |
ID |
counter |
| 182:35-182:35 |
RBRACKET |
) |
| 182:37-182:40 |
THEN |
then |
| 183:21-183:26 |
ID |
result |
| 183:28-183:28 |
EQUALS |
= |
| 183:30-183:35 |
ID |
result |
| 183:37-183:37 |
PLUS |
+ |
| 183:39-183:48 |
ID |
shadow_fib |
| 183:49-183:49 |
LBRACKET |
( |
| 183:50-183:56 |
ID |
counter |
| 183:57-183:57 |
RBRACKET |
) |
| 184:17-184:20 |
ELSE |
else |
| 185:21-185:26 |
ID |
result |
| 185:28-185:28 |
EQUALS |
= |
| 185:30-185:35 |
ID |
result |
| 185:37-185:37 |
MINUS |
- |
| 185:39-185:47 |
ID |
digit_sum |
| 185:48-185:48 |
LBRACKET |
( |
| 185:49-185:55 |
ID |
counter |
| 185:56-185:56 |
RBRACKET |
) |
| 186:17-186:19 |
END |
end |
| 186:20-186:20 |
COMMA |
, |
| 187:17-187:23 |
ID |
counter |
| 187:25-187:25 |
EQUALS |
= |
| 187:27-187:33 |
ID |
counter |
| 187:35-187:35 |
MINUS |
- |
| 187:37-187:37 |
NUM |
1 |
| 188:13-188:15 |
END |
end |
| 188:16-188:16 |
COMMA |
, |
| 189:13-189:15 |
LET |
let |
| 190:17-190:19 |
VAR |
var |
| 190:21-190:25 |
ID |
deep1 |
| 190:27-190:27 |
COLON |
: |
| 190:29-190:29 |
ID |
i |
| 191:17-191:19 |
VAR |
var |
| 191:21-191:25 |
ID |
deep2 |
| 191:27-191:27 |
COLON |
: |
| 191:29-191:29 |
ID |
i |
| 192:17-192:19 |
VAR |
var |
| 192:21-192:25 |
ID |
deep3 |
| 192:27-192:27 |
COLON |
: |
| 192:29-192:29 |
ID |
b |
| 193:17-193:19 |
VAR |
var |
| 193:21-193:25 |
ID |
deep4 |
| 193:27-193:27 |
COLON |
: |
| 193:29-193:29 |
ID |
i |
| 194:17-194:19 |
TYP |
typ |
| 194:21-194:22 |
ID |
di |
| 194:24-194:24 |
EQUALS |
= |
| 194:26-194:26 |
ID |
i |
| 195:17-195:19 |
FUN |
fun |
| 195:21-195:28 |
ID |
deep_pow |
| 195:29-195:29 |
LBRACKET |
( |
| 195:30-195:30 |
ID |
b |
| 195:32-195:32 |
COLON |
: |
| 195:34-195:35 |
ID |
di |
| 195:36-195:36 |
COMMA |
, |
| 195:38-195:38 |
ID |
e |
| 195:40-195:40 |
COLON |
: |
| 195:42-195:43 |
ID |
di |
| 195:44-195:44 |
RBRACKET |
) |
| 195:46-195:46 |
COLON |
: |
| 195:48-195:49 |
ID |
di |
| 195:51-195:51 |
EQUALS |
= |
| 196:21-196:22 |
IF |
if |
| 196:24-196:30 |
ID |
is_zero |
| 196:31-196:31 |
LBRACKET |
( |
| 196:32-196:32 |
ID |
e |
| 196:33-196:33 |
RBRACKET |
) |
| 196:35-196:38 |
THEN |
then |
| 197:25-197:25 |
NUM |
1 |
| 198:21-198:24 |
ELSE |
else |
| 199:25-199:25 |
ID |
b |
| 199:27-199:27 |
ASTERISK |
* |
| 199:29-199:36 |
ID |
deep_pow |
| 199:37-199:37 |
LBRACKET |
( |
| 199:38-199:38 |
ID |
b |
| 199:39-199:39 |
COMMA |
, |
| 199:41-199:41 |
ID |
e |
| 199:43-199:43 |
MINUS |
- |
| 199:45-199:45 |
NUM |
1 |
| 199:46-199:46 |
RBRACKET |
) |
| 200:21-200:23 |
END |
end |
| 201:17-201:19 |
FUN |
fun |
| 201:21-201:32 |
ID |
deep_collatz |
| 201:33-201:33 |
LBRACKET |
( |
| 201:34-201:34 |
ID |
n |
| 201:36-201:36 |
COLON |
: |
| 201:38-201:39 |
ID |
di |
| 201:40-201:40 |
RBRACKET |
) |
| 201:42-201:42 |
COLON |
: |
| 201:44-201:45 |
ID |
di |
| 201:47-201:47 |
EQUALS |
= |
| 202:21-202:22 |
IF |
if |
| 202:24-202:24 |
ID |
n |
| 202:26-202:27 |
EEQUALS |
== |
| 202:29-202:29 |
NUM |
1 |
| 202:31-202:34 |
THEN |
then |
| 203:25-203:25 |
NUM |
0 |
| 204:21-204:24 |
ELSE |
else |
| 205:25-205:26 |
IF |
if |
| 205:28-205:34 |
ID |
is_even |
| 205:35-205:35 |
LBRACKET |
( |
| 205:36-205:36 |
ID |
n |
| 205:37-205:37 |
RBRACKET |
) |
| 205:39-205:42 |
THEN |
then |
| 206:29-206:29 |
NUM |
1 |
| 206:31-206:31 |
PLUS |
+ |
| 206:33-206:44 |
ID |
deep_collatz |
| 206:45-206:45 |
LBRACKET |
( |
| 206:46-206:46 |
ID |
n |
| 206:48-206:48 |
SLASH |
/ |
| 206:50-206:50 |
NUM |
2 |
| 206:51-206:51 |
RBRACKET |
) |
| 207:25-207:28 |
ELSE |
else |
| 208:29-208:29 |
NUM |
1 |
| 208:31-208:31 |
PLUS |
+ |
| 208:33-208:44 |
ID |
deep_collatz |
| 208:45-208:45 |
LBRACKET |
( |
| 208:46-208:46 |
NUM |
3 |
| 208:48-208:48 |
ASTERISK |
* |
| 208:50-208:50 |
ID |
n |
| 208:52-208:52 |
PLUS |
+ |
| 208:54-208:54 |
NUM |
1 |
| 208:55-208:55 |
RBRACKET |
) |
| 209:25-209:27 |
END |
end |
| 210:21-210:23 |
END |
end |
| 211:17-211:19 |
FUN |
fun |
| 211:21-211:26 |
ID |
toggle |
| 211:27-211:27 |
LBRACKET |
( |
| 211:28-211:28 |
ID |
x |
| 211:30-211:30 |
COLON |
: |
| 211:32-211:33 |
ID |
lb |
| 211:34-211:34 |
RBRACKET |
) |
| 211:36-211:36 |
COLON |
: |
| 211:38-211:39 |
ID |
lb |
| 211:41-211:41 |
EQUALS |
= |
| 212:21-212:22 |
IF |
if |
| 212:24-212:24 |
ID |
x |
| 212:26-212:29 |
THEN |
then |
| 213:25-213:29 |
FALSE |
false |
| 214:21-214:24 |
ELSE |
else |
| 215:25-215:28 |
TRUE |
true |
| 216:21-216:23 |
END |
end |
| 217:13-217:14 |
IN |
in |
| 218:17-218:21 |
ID |
deep1 |
| 218:23-218:23 |
EQUALS |
= |
| 218:25-218:32 |
ID |
deep_pow |
| 218:33-218:33 |
LBRACKET |
( |
| 218:34-218:34 |
NUM |
2 |
| 218:35-218:35 |
COMMA |
, |
| 218:37-218:43 |
ID |
counter |
| 218:45-218:45 |
PERCENT |
% |
| 218:47-218:48 |
NUM |
10 |
| 218:49-218:49 |
RBRACKET |
) |
| 218:50-218:50 |
COMMA |
, |
| 219:17-219:21 |
ID |
deep2 |
| 219:23-219:23 |
EQUALS |
= |
| 219:25-219:36 |
ID |
deep_collatz |
| 219:37-219:37 |
LBRACKET |
( |
| 219:38-219:44 |
ID |
abs_val |
| 219:45-219:45 |
LBRACKET |
( |
| 219:46-219:51 |
ID |
result |
| 219:52-219:52 |
RBRACKET |
) |
| 219:54-219:54 |
PLUS |
+ |
| 219:56-219:56 |
NUM |
1 |
| 219:57-219:57 |
RBRACKET |
) |
| 219:58-219:58 |
COMMA |
, |
| 220:17-220:21 |
ID |
deep3 |
| 220:23-220:23 |
EQUALS |
= |
| 220:25-220:30 |
ID |
toggle |
| 220:31-220:31 |
LBRACKET |
( |
| 220:32-220:39 |
ID |
shadow_f |
| 220:40-220:40 |
RBRACKET |
) |
| 220:41-220:41 |
COMMA |
, |
| 221:17-221:21 |
ID |
deep4 |
| 221:23-221:23 |
EQUALS |
= |
| 221:25-221:27 |
ID |
max |
| 221:28-221:28 |
LBRACKET |
( |
| 221:29-221:33 |
ID |
deep1 |
| 221:34-221:34 |
COMMA |
, |
| 221:36-221:40 |
ID |
deep2 |
| 221:41-221:41 |
RBRACKET |
) |
| 221:42-221:42 |
COMMA |
, |
| 222:17-222:20 |
ID |
flag |
| 222:22-222:22 |
EQUALS |
= |
| 222:24-222:32 |
ID |
local_and |
| 222:33-222:33 |
LBRACKET |
( |
| 222:34-222:38 |
ID |
deep3 |
| 222:39-222:39 |
COMMA |
, |
| 222:41-222:47 |
ID |
is_even |
| 222:48-222:48 |
LBRACKET |
( |
| 222:49-222:53 |
ID |
deep4 |
| 222:54-222:54 |
RBRACKET |
) |
| 222:55-222:55 |
RBRACKET |
) |
| 222:56-222:56 |
COMMA |
, |
| 223:17-223:21 |
WHILE |
while |
| 223:23-223:27 |
ID |
deep4 |
| 223:29-223:29 |
GT |
> |
| 223:31-223:31 |
NUM |
0 |
| 223:33-223:34 |
DO |
do |
| 224:21-224:22 |
IF |
if |
| 224:24-224:30 |
ID |
is_even |
| 224:31-224:31 |
LBRACKET |
( |
| 224:32-224:36 |
ID |
deep4 |
| 224:37-224:37 |
RBRACKET |
) |
| 224:39-224:42 |
THEN |
then |
| 225:25-225:26 |
IF |
if |
| 225:28-225:32 |
ID |
deep4 |
| 225:34-225:34 |
GT |
> |
| 225:36-225:38 |
NUM |
100 |
| 225:40-225:43 |
THEN |
then |
| 226:29-226:33 |
ID |
deep4 |
| 226:35-226:35 |
EQUALS |
= |
| 226:37-226:41 |
ID |
deep4 |
| 226:43-226:43 |
SLASH |
/ |
| 226:45-226:45 |
NUM |
2 |
| 227:25-227:28 |
ELSE |
else |
| 228:29-228:33 |
ID |
deep4 |
| 228:35-228:35 |
EQUALS |
= |
| 228:37-228:41 |
ID |
deep4 |
| 228:43-228:43 |
MINUS |
- |
| 228:45-228:45 |
NUM |
1 |
| 229:25-229:27 |
END |
end |
| 230:21-230:24 |
ELSE |
else |
| 231:25-231:26 |
IF |
if |
| 231:28-231:34 |
ID |
is_zero |
| 231:35-231:35 |
LBRACKET |
( |
| 231:36-231:40 |
ID |
deep4 |
| 231:42-231:42 |
PERCENT |
% |
| 231:44-231:44 |
NUM |
3 |
| 231:45-231:45 |
RBRACKET |
) |
| 231:47-231:50 |
THEN |
then |
| 232:29-232:33 |
ID |
deep4 |
| 232:35-232:35 |
EQUALS |
= |
| 232:37-232:41 |
ID |
deep4 |
| 232:43-232:43 |
MINUS |
- |
| 232:45-232:45 |
NUM |
3 |
| 233:25-233:28 |
ELSE |
else |
| 234:29-234:33 |
ID |
deep4 |
| 234:35-234:35 |
EQUALS |
= |
| 234:37-234:41 |
ID |
deep4 |
| 234:43-234:43 |
ASTERISK |
* |
| 234:45-234:45 |
NUM |
2 |
| 234:47-234:47 |
MINUS |
- |
| 234:49-234:53 |
ID |
deep4 |
| 234:55-234:55 |
MINUS |
- |
| 234:57-234:57 |
NUM |
1 |
| 235:25-235:27 |
END |
end |
| 236:21-236:23 |
END |
end |
| 237:17-237:19 |
END |
end |
| 237:20-237:20 |
COMMA |
, |
| 238:17-238:19 |
LET |
let |
| 239:21-239:23 |
VAR |
var |
| 239:25-239:30 |
ID |
ultra1 |
| 239:32-239:32 |
COLON |
: |
| 239:34-239:34 |
ID |
i |
| 240:21-240:23 |
VAR |
var |
| 240:25-240:30 |
ID |
ultra2 |
| 240:32-240:32 |
COLON |
: |
| 240:34-240:34 |
ID |
b |
| 241:21-241:23 |
VAR |
var |
| 241:25-241:30 |
ID |
ultra3 |
| 241:32-241:32 |
COLON |
: |
| 241:34-241:34 |
ID |
i |
| 242:21-242:23 |
FUN |
fun |
| 242:25-242:33 |
ID |
ultra_gcd |
| 242:34-242:34 |
LBRACKET |
( |
| 242:35-242:35 |
ID |
a |
| 242:37-242:37 |
COLON |
: |
| 242:39-242:39 |
ID |
i |
| 242:40-242:40 |
COMMA |
, |
| 242:42-242:42 |
ID |
b |
| 242:44-242:44 |
COLON |
: |
| 242:46-242:46 |
ID |
i |
| 242:47-242:47 |
RBRACKET |
) |
| 242:49-242:49 |
COLON |
: |
| 242:51-242:51 |
ID |
i |
| 242:53-242:53 |
EQUALS |
= |
| 243:25-243:26 |
IF |
if |
| 243:28-243:34 |
ID |
is_zero |
| 243:35-243:35 |
LBRACKET |
( |
| 243:36-243:36 |
ID |
b |
| 243:37-243:37 |
RBRACKET |
) |
| 243:39-243:42 |
THEN |
then |
| 244:29-244:29 |
ID |
a |
| 245:25-245:28 |
ELSE |
else |
| 246:29-246:37 |
ID |
ultra_gcd |
| 246:38-246:38 |
LBRACKET |
( |
| 246:39-246:39 |
ID |
b |
| 246:40-246:40 |
COMMA |
, |
| 246:42-246:42 |
ID |
a |
| 246:44-246:44 |
PERCENT |
% |
| 246:46-246:46 |
ID |
b |
| 246:47-246:47 |
RBRACKET |
) |
| 247:25-247:27 |
END |
end |
| 248:21-248:23 |
FUN |
fun |
| 248:25-248:33 |
ID |
ultra_sum |
| 248:34-248:34 |
LBRACKET |
( |
| 248:35-248:35 |
ID |
n |
| 248:37-248:37 |
COLON |
: |
| 248:39-248:39 |
ID |
i |
| 248:40-248:40 |
RBRACKET |
) |
| 248:42-248:42 |
COLON |
: |
| 248:44-248:44 |
ID |
i |
| 248:46-248:46 |
EQUALS |
= |
| 249:25-249:26 |
IF |
if |
| 249:28-249:34 |
ID |
is_zero |
| 249:35-249:35 |
LBRACKET |
( |
| 249:36-249:36 |
ID |
n |
| 249:37-249:37 |
RBRACKET |
) |
| 249:39-249:42 |
THEN |
then |
| 250:29-250:29 |
NUM |
0 |
| 251:25-251:28 |
ELSE |
else |
| 252:29-252:29 |
ID |
n |
| 252:31-252:31 |
PLUS |
+ |
| 252:33-252:41 |
ID |
ultra_sum |
| 252:42-252:42 |
LBRACKET |
( |
| 252:43-252:43 |
ID |
n |
| 252:45-252:45 |
MINUS |
- |
| 252:47-252:47 |
NUM |
1 |
| 252:48-252:48 |
RBRACKET |
) |
| 253:25-253:27 |
END |
end |
| 254:21-254:23 |
FUN |
fun |
| 254:25-254:34 |
ID |
ultra_bits |
| 254:35-254:35 |
LBRACKET |
( |
| 254:36-254:36 |
ID |
n |
| 254:38-254:38 |
COLON |
: |
| 254:40-254:40 |
ID |
i |
| 254:41-254:41 |
RBRACKET |
) |
| 254:43-254:43 |
COLON |
: |
| 254:45-254:45 |
ID |
i |
| 254:47-254:47 |
EQUALS |
= |
| 255:25-255:26 |
IF |
if |
| 255:28-255:34 |
ID |
is_zero |
| 255:35-255:35 |
LBRACKET |
( |
| 255:36-255:36 |
ID |
n |
| 255:37-255:37 |
RBRACKET |
) |
| 255:39-255:42 |
THEN |
then |
| 256:29-256:29 |
NUM |
0 |
| 257:25-257:28 |
ELSE |
else |
| 258:29-258:29 |
ID |
n |
| 258:31-258:31 |
PERCENT |
% |
| 258:33-258:33 |
NUM |
2 |
| 258:35-258:35 |
PLUS |
+ |
| 258:37-258:46 |
ID |
ultra_bits |
| 258:47-258:47 |
LBRACKET |
( |
| 258:48-258:48 |
ID |
n |
| 258:50-258:50 |
SLASH |
/ |
| 258:52-258:52 |
NUM |
2 |
| 258:53-258:53 |
RBRACKET |
) |
| 259:25-259:27 |
END |
end |
| 260:17-260:18 |
IN |
in |
| 261:21-261:26 |
ID |
ultra1 |
| 261:28-261:28 |
EQUALS |
= |
| 261:30-261:38 |
ID |
ultra_gcd |
| 261:39-261:39 |
LBRACKET |
( |
| 261:40-261:44 |
ID |
deep1 |
| 261:45-261:45 |
COMMA |
, |
| 261:47-261:51 |
ID |
deep2 |
| 261:52-261:52 |
RBRACKET |
) |
| 261:53-261:53 |
COMMA |
, |
| 262:21-262:26 |
ID |
ultra2 |
| 262:28-262:28 |
EQUALS |
= |
| 262:30-262:36 |
ID |
is_even |
| 262:37-262:37 |
LBRACKET |
( |
| 262:38-262:43 |
ID |
ultra1 |
| 262:44-262:44 |
RBRACKET |
) |
| 262:45-262:45 |
COMMA |
, |
| 263:21-263:26 |
ID |
ultra3 |
| 263:28-263:28 |
EQUALS |
= |
| 263:30-263:38 |
ID |
ultra_sum |
| 263:39-263:39 |
LBRACKET |
( |
| 263:40-263:49 |
ID |
ultra_bits |
| 263:50-263:50 |
LBRACKET |
( |
| 263:51-263:55 |
ID |
deep4 |
| 263:57-263:57 |
PLUS |
+ |
| 263:59-263:64 |
ID |
ultra1 |
| 263:65-263:65 |
RBRACKET |
) |
| 263:66-263:66 |
RBRACKET |
) |
| 263:67-263:67 |
COMMA |
, |
| 264:21-264:27 |
ID |
counter |
| 264:29-264:29 |
EQUALS |
= |
| 264:31-264:36 |
ID |
ultra3 |
| 264:38-264:38 |
PLUS |
+ |
| 264:40-264:49 |
ID |
count_bits |
| 264:50-264:50 |
LBRACKET |
( |
| 264:51-264:56 |
ID |
ultra1 |
| 264:57-264:57 |
RBRACKET |
) |
| 264:58-264:58 |
COMMA |
, |
| 265:21-265:26 |
ID |
result |
| 265:28-265:28 |
EQUALS |
= |
| 265:30-265:38 |
ID |
ext_print |
| 265:39-265:39 |
LBRACKET |
( |
| 265:40-265:46 |
ID |
counter |
| 265:47-265:47 |
RBRACKET |
) |
| 265:48-265:48 |
COMMA |
, |
| 266:21-266:24 |
ID |
flag |
| 266:26-266:26 |
EQUALS |
= |
| 266:28-266:36 |
ID |
local_and |
| 266:37-266:37 |
LBRACKET |
( |
| 266:38-266:43 |
ID |
ultra2 |
| 266:44-266:44 |
COMMA |
, |
| 266:46-266:50 |
ID |
deep3 |
| 266:51-266:51 |
RBRACKET |
) |
| 266:52-266:52 |
COMMA |
, |
| 267:21-267:25 |
WHILE |
while |
| 267:27-267:32 |
ID |
ultra3 |
| 267:34-267:34 |
GT |
> |
| 267:36-267:36 |
NUM |
0 |
| 267:38-267:39 |
DO |
do |
| 268:25-268:30 |
ID |
ultra1 |
| 268:32-268:32 |
EQUALS |
= |
| 268:34-268:42 |
ID |
ultra_gcd |
| 268:43-268:43 |
LBRACKET |
( |
| 268:44-268:49 |
ID |
ultra3 |
| 268:50-268:50 |
COMMA |
, |
| 268:52-268:57 |
ID |
ultra1 |
| 268:59-268:59 |
PLUS |
+ |
| 268:61-268:61 |
NUM |
1 |
| 268:62-268:62 |
RBRACKET |
) |
| 268:63-268:63 |
COMMA |
, |
| 269:25-269:30 |
ID |
ultra3 |
| 269:32-269:32 |
EQUALS |
= |
| 269:34-269:39 |
ID |
ultra3 |
| 269:41-269:41 |
MINUS |
- |
| 269:43-269:43 |
NUM |
1 |
| 270:21-270:23 |
END |
end |
| 270:24-270:24 |
COMMA |
, |
| 271:21-271:29 |
ID |
ext_print |
| 271:30-271:30 |
LBRACKET |
( |
| 271:31-271:36 |
ID |
result |
| 271:37-271:37 |
RBRACKET |
) |
| 271:38-271:38 |
COMMA |
, |
| 272:21-272:26 |
ID |
ultra3 |
| 273:17-273:19 |
END |
end |
| 274:13-274:15 |
END |
end |
| 275:9-275:11 |
END |
end |
| 276:5-276:7 |
END |
end |
| |
EOF |
|