davidheineman
commited on
Commit
•
00aec5d
1
Parent(s):
4e0405e
add docker compose
Browse files- .gitignore +2 -1
- Dockerfile +2 -2
- README.md +11 -13
- docker-compose.yml +39 -0
- index/0.codes.pt +2 -2
- index/0.metadata.json +2 -2
- index/0.residuals.pt +2 -2
- index/avg_residual.pt +2 -2
- index/buckets.pt +2 -2
- index/centroids.pt +2 -2
- index/doclens.0.json +1 -1
- index/ivf.pid.pt +2 -2
- index/metadata.json +2 -2
- index/plan.json +59 -15
- index_large/0.codes.pt +3 -0
- index_large/0.metadata.json +6 -0
- index_large/0.residuals.pt +3 -0
- {index → index_large}/1.codes.pt +0 -0
- {index → index_large}/1.metadata.json +0 -0
- {index → index_large}/1.residuals.pt +0 -0
- index_large/avg_residual.pt +3 -0
- index_large/buckets.pt +3 -0
- index_large/centroids.pt +3 -0
- index_large/doclens.0.json +1 -0
- {index → index_large}/doclens.1.json +0 -0
- index_large/ivf.pid.pt +3 -0
- index_large/metadata.json +55 -0
- index_large/plan.json +62 -0
- requirements.txt +1 -1
- src/db.py +7 -6
- src/server.py +2 -2
.gitignore
CHANGED
@@ -1,3 +1,4 @@
|
|
1 |
__pycache__
|
2 |
experiments
|
3 |
-
.DS_Store
|
|
|
|
1 |
__pycache__
|
2 |
experiments
|
3 |
+
.DS_Store
|
4 |
+
app
|
Dockerfile
CHANGED
@@ -3,7 +3,7 @@ FROM python:3.10
|
|
3 |
WORKDIR /app
|
4 |
|
5 |
RUN apt-get update && \
|
6 |
-
apt-get install -y
|
7 |
rm -rf /var/lib/apt/lists/*
|
8 |
|
9 |
RUN git clone https://huggingface.co/davidheineman/colbert-acl
|
@@ -13,5 +13,5 @@ RUN pip install --no-cache-dir -r requirements.txt
|
|
13 |
|
14 |
COPY . .
|
15 |
|
16 |
-
CMD ["python", "server.py"]
|
17 |
# CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:8893", "server:app"]
|
|
|
3 |
WORKDIR /app
|
4 |
|
5 |
RUN apt-get update && \
|
6 |
+
apt-get install -y git && \
|
7 |
rm -rf /var/lib/apt/lists/*
|
8 |
|
9 |
RUN git clone https://huggingface.co/davidheineman/colbert-acl
|
|
|
13 |
|
14 |
COPY . .
|
15 |
|
16 |
+
CMD ["python", "colbert-acl/src/server.py"]
|
17 |
# CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:8893", "server:app"]
|
README.md
CHANGED
@@ -33,13 +33,6 @@ python parse.py
|
|
33 |
python index.py
|
34 |
```
|
35 |
|
36 |
-
### Setup MySQL
|
37 |
-
|
38 |
-
```sh
|
39 |
-
# initalize database service
|
40 |
-
python db.py
|
41 |
-
```
|
42 |
-
|
43 |
### Search with ColBERT
|
44 |
|
45 |
```sh
|
@@ -47,13 +40,13 @@ python db.py
|
|
47 |
python server.py
|
48 |
|
49 |
# or start a production API endpoint
|
50 |
-
gunicorn -w 4 -b 0.0.0.0:
|
51 |
```
|
52 |
|
53 |
Then, to test, visit:
|
54 |
```
|
55 |
-
http://localhost:8893/api/colbert?
|
56 |
-
http://localhost:8893/api/search?
|
57 |
```
|
58 |
or for an interface:
|
59 |
```
|
@@ -61,9 +54,8 @@ http://localhost:8893
|
|
61 |
```
|
62 |
|
63 |
### Deploy as a Docker App
|
64 |
-
```
|
65 |
-
docker
|
66 |
-
docker run -d -p 5000:5000 acl-colbert
|
67 |
```
|
68 |
|
69 |
## Example notebooks
|
@@ -77,6 +69,12 @@ To see an example of search, visit:
|
|
77 |
- https://github.com/stanford-futuredata/ColBERT/issues/111
|
78 |
|
79 |
- TODO:
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
- Make sure to re-index
|
81 |
- Profile bibtexparser.load(f)
|
82 |
- Add UI
|
|
|
33 |
python index.py
|
34 |
```
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
### Search with ColBERT
|
37 |
|
38 |
```sh
|
|
|
40 |
python server.py
|
41 |
|
42 |
# or start a production API endpoint
|
43 |
+
gunicorn -w 4 -b 0.0.0.0:8893 server:app
|
44 |
```
|
45 |
|
46 |
Then, to test, visit:
|
47 |
```
|
48 |
+
http://localhost:8893/api/colbert?query=Information retrevial with BERT
|
49 |
+
http://localhost:8893/api/search?query=Information retrevial with BERT
|
50 |
```
|
51 |
or for an interface:
|
52 |
```
|
|
|
54 |
```
|
55 |
|
56 |
### Deploy as a Docker App
|
57 |
+
```sh
|
58 |
+
docker-compose up --build
|
|
|
59 |
```
|
60 |
|
61 |
## Example notebooks
|
|
|
69 |
- https://github.com/stanford-futuredata/ColBERT/issues/111
|
70 |
|
71 |
- TODO:
|
72 |
+
- Move code to github and index to hf, then use this to download the index:
|
73 |
+
from huggingface_hub import snapshot_download
|
74 |
+
|
75 |
+
# Download indexed repo at: https://huggingface.co/davidheineman/colbert-acl
|
76 |
+
!mkdir "acl"
|
77 |
+
index_name = snapshot_download(repo_id="davidheineman/colbert-acl", local_dir="acl")
|
78 |
- Make sure to re-index
|
79 |
- Profile bibtexparser.load(f)
|
80 |
- Add UI
|
docker-compose.yml
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
version: '3.8'
|
2 |
+
|
3 |
+
services:
|
4 |
+
mysql:
|
5 |
+
image: mysql:8.0
|
6 |
+
container_name: mysql_db
|
7 |
+
environment:
|
8 |
+
MYSQL_ROOT_PASSWORD:
|
9 |
+
MYSQL_ALLOW_EMPTY_PASSWORD: true
|
10 |
+
MYSQL_DATABASE: anthology
|
11 |
+
MYSQL_USER: myuser
|
12 |
+
MYSQL_PASSWORD:
|
13 |
+
volumes:
|
14 |
+
- mysql_data:/var/lib/mysql
|
15 |
+
networks:
|
16 |
+
- mysql_network
|
17 |
+
|
18 |
+
python:
|
19 |
+
build:
|
20 |
+
context: .
|
21 |
+
dockerfile: Dockerfile
|
22 |
+
container_name: python_app
|
23 |
+
working_dir: /app
|
24 |
+
volumes:
|
25 |
+
- ./app:/app
|
26 |
+
command: python colbert-acl/src/server.py
|
27 |
+
ports:
|
28 |
+
- "8893:8893"
|
29 |
+
depends_on:
|
30 |
+
- mysql
|
31 |
+
networks:
|
32 |
+
- mysql_network
|
33 |
+
|
34 |
+
networks:
|
35 |
+
mysql_network:
|
36 |
+
driver: bridge
|
37 |
+
|
38 |
+
volumes:
|
39 |
+
mysql_data:
|
index/0.codes.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:5c45e2bf437111f126465d4264feee03388d3e1d58eaec0536011826d4aaad7f
|
3 |
+
size 34780
|
index/0.metadata.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
{
|
2 |
"passage_offset": 0,
|
3 |
-
"num_passages":
|
4 |
-
"num_embeddings":
|
5 |
"embedding_offset": 0
|
6 |
}
|
|
|
1 |
{
|
2 |
"passage_offset": 0,
|
3 |
+
"num_passages": 50,
|
4 |
+
"num_embeddings": 8412,
|
5 |
"embedding_offset": 0
|
6 |
}
|
index/0.residuals.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:44885eebdba408f4aa8459073a99677dce142f0ed7dc745dbcf5417c0872643d
|
3 |
+
size 270384
|
index/avg_residual.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:20d35fb188bb3d18f56b75e05c68f0bc044eca847505ccce764add95e140c002
|
3 |
+
size 1205
|
index/buckets.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:0577e0fd88972f5cc8382164c1dda27eb53cd894f471e0263194ad3f714fcd0c
|
3 |
+
size 1432
|
index/centroids.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:3c8aa51837543dbf6a0298bbfa250b54795b045820931cebb5b8a460ce78011b
|
3 |
+
size 263334
|
index/doclens.0.json
CHANGED
@@ -1 +1 @@
|
|
1 |
-
[12,35,132,226,189,156,12,114,101,35,52,53,216,15,34,166,51,94,191,123,123,108,159,19,125,137,250,151,178,133,94,142,113,170,185,263,154,122,177,169,90,171,154,172,198,152,131,149,158,66,108,106,174,176,183,128,90,96,167,190,94,136,205,152,135,126,118,81,153,83,121,125,126,217,159,190,248,151,164,87,158,95,109,134,170,243,137,79,138,194,150,243,169,136,194,189,246,254,148,210,199,235,177,211,199,146,265,167,161,147,135,125,218,161,54,60,168,228,186,140,96,135,122,100,130,132,198,221,139,181,268,189,92,72,241,165,182,240,74,153,216,169,188,174,128,167,150,145,111,205,103,154,182,154,163,191,60,171,115,205,171,128,198,132,189,233,222,206,191,196,148,114,257,196,149,171,179,130,136,186,249,185,231,112,170,146,237,185,219,178,141,209,143,184,200,76,174,141,126,107,225,148,236,232,137,189,173,200,110,151,121,124,192,161,151,101,144,182,168,149,212,223,235,127,213,246,164,118,147,79,180,174,81,216,149,142,236,164,142,168,123,248,148,106,151,139,196,150,136,125,141,111,104,113,172,187,145,169,244,106,121,140,118,124,183,169,129,128,126,102,228,225,178,135,228,127,183,115,226,129,134,91,212,137,159,209,110,134,223,174,187,230,183,125,223,194,223,211,162,192,192,115,135,203,117,180,173,186,170,189,141,119,135,107,185,192,88,152,230,218,214,106,214,246,132,232,162,211,178,252,166,256,195,243,156,221,226,208,108,109,117,204,195,205,194,237,216,183,184,165,194,170,233,175,129,201,147,191,194,234,157,169,218,140,201,132,192,253,165,252,225,173,108,130,185,211,154,194,155,209,141,200,172,195,214,189,226,206,177,220,92,144,163,146,169,226,256,212,245,211,166,177,203,202,212,176,166,247,128,137,168,167,219,175,193,161,233,180,127,216,146,157,190,228,132,181,123,168,160,189,140,167,150,194,227,247,173,194,250,128,188,90,146,159,119,172,201,218,175,92,235,172,144,130,126,82,152,181,106,105,270,194,198,127,132,106,73,194,240,248,240,250,155,240,198,118,178,160,112,264,157,254,117,129,143,123,175,163,110,163,127,165,181,93,92,151,113,117,253,236,143,177,186,181,225,156,180,248,217,187,158,174,130,113,145,205,117,153,143,201,110,224,173,187,238,140,213,175,159,141,126,225,155,175,124,206,144,164,137,126,181,136,168,181,157,136,159,134,127,173,207,232,171,123,129,169,134,209,213,161,123,108,203,115,195,98,164,254,152,116,238,203,248,223,167,168,124,66,120,87,144,152,62,160,139,213,211,119,135,169,163,130,144,154,76,119,161,98,213,163,157,81,146,142,161,136,124,115,136,145,146,146,182,227,120,112,87,176,135,157,113,89,59,92,93,112,222,160,125,153,218,195,85,131,205,140,220,120,190,235,149,108,174,105,178,119,177,215,121,203,168,139,139,171,151,192,172,156,165,219,147,102,158,102,148,157,143,126,179,182,141,190,135,163,121,190,124,157,150,261,114,70,103,111,95,183,131,125,243,201,210,121,118,91,148,181,119,247,105,192,146,187,137,124,141,211,209,129,170,90,133,132,129,182,248,105,195,43,223,188,251,194,113,145,154,110,198,88,86,154,149,107,99,146,160,146,127,142,167,226,105,162,111,164,173,176,139,164,232,218,121,133,153,194,84,171,107,208,126,133,196,203,242,133,99,138,183,125,217,97,143,214,104,257,269,225,136,215,34,191,136,143,230,149,189,131,233,166,54,130,132,201,199,128,108,155,71,208,197,110,234,198,180,127,161,66,156,118,134,130,129,161,128,110,143,118,139,119,109,177,239,161,98,164,90,165,129,242,175,162,138,230,241,174,108,223,122,204,86,151,150,195,187,252,120,129,78,165,186,134,76,109,201,184,206,131,177,125,106,124,135,125,207,88,109,138,181,102,149,94,190,143,102,254,136,179,247,183,117,152,269,217,124,166,179,210,257,155,80,185,118,139,116,170,104,152,141,159,138,132,92,219,158,207,188,220,188,169,155,228,137,144,151,217,117,147,179,210,228,250,171,155,187,135,179,124,161,238,268,223,161,207,147,178,175,171,179,241,165,202,236,149,171,252,185,142,206,124,207,174,103,223,241,189,111,89,165,184,211,141,159,185,153,168,221,150,222,139,143,96,150,251,184,152,161,161,262,235,182,272,242,176,108,159,174,135,185,187,157,71,189,156,188,106,132,266,227,137,234,178,158,86,108,96,171,211,170,122,187,170,134,222,183,135,69,149,83,143,197,161,158,211,166,101,123,190,121,175,183,187,195,161,143,91,222,166,168,238,207,90,183,131,239,207,201,173,229,144,101,161,105,165,254,149,225,163,167,175,193,134,196,157,225,197,207,121,193,183,170,85,85,231,111,126,264,169,176,183,252,107,228,243,217,149,179,171,213,198,207,233,158,45,122,155,157,125,121,216,198,169,114,150,144,121,207,136,103,179,123,143,153,108,154,82,132,123,221,165,161,105,152,175,140,157,80,97,132,87,150,132,172,139,165,106,90,172,99,194,142,118,146,131,98,163,160,154,126,179,131,200,240,142,73,113,118,179,129,77,189,157,52,130,144,236,177,148,81,120,104,140,226,149,168,126,113,135,143,160,118,250,190,207,208,222,104,245,259,223,147,149,194,138,232,133,168,164,83,99,158,163,235,242,164,132,128,185,85,112,203,254,257,241,122,125,3,147,80,246,244,225,182,141,72,61,181,157,187,208,104,189,220,199,154,163,228,180,126,198,103,126,80,201,210,61,232,180,102,131,113,158,94,125,232,110,202,146,146,187,163,202,235,163,168,159,139,155,167,265,156,165,255,230,147,215,136,221,91,211,107,177,148,201,136,237,139,177,187,250,225,244,253,205,167,258,245,229,148,159,156,224,121,76,209,201,193,219,131,211,172,145,148,118,131,106,145,244,139,97,131,65,84,203,132,159,128,118,128,250,210,232,250,212,129,223,258,252,167,246,249,198,269,111,253,105,129,207,211,174,187,138,127,207,119,256,84,200,192,224,166,123,208,199,191,163,105,176,152,199,161,243,236,243,153,245,170,236,133,99,179,159,203,160,113,171,107,130,140,263,99,202,184,155,136,75,247,71,120,206,194,179,189,208,169,208,145,230,246,131,168,176,150,134,145,211,114,178,137,140,158,213,153,182,170,108,198,175,172,139,191,148,202,125,155,204,138,210,133,130,119,177,130,165,170,139,175,63,156,190,224,228,162,252,239,244,247,245,147,198,154,213,177,112,200,172,221,147,213,97,159,200,253,80,99,127,71,192,191,140,144,148,98,118,146,164,204,90,135,199,189,185,145,106,132,131,115,120,135,163,180,119,163,145,93,198,174,187,160,186,138,70,183,257,166,76,140,230,109,188,102,158,120,195,151,183,185,179,209,181,146,164,189,195,183,131,187,189,161,188,190,188,186,184,208,201,179,200,189,187,194,203,206,190,138,215,136,170,159,188,192,208,168,192,196,197,214,186,197,197,180,195,200,183,188,196,215,183,191,193,199,195,193,113,164,184,190,108,197,197,188,199,191,205,179,205,184,208,193,201,189,179,211,95,75,190,208,162,206,201,123,149,181,182,180,183,205,193,192,191,196,193,204,212,188,191,108,176,141,199,199,200,177,212,202,86,198,209,181,153,145,201,185,175,178,195,110,102,77,243,215,206,188,158,121,155,185,192,210,185,117,153,139,163,175,213,167,201,161,254,248,197,160,123,126,233,233,141,163,72,174,149,153,129,190,155,123,109,138,214,139,92,228,215,140,212,221,201,234,150,103,147,139,154,142,105,104,244,187,133,140,188,114,217,125,147,148,119,176,125,115,151,142,145,218,215,161,150,181,165,150,73,151,156,75,99,155,211,179,206,165,119,158,92,135,203,148,182,135,108,166,65,265,139,121,110,195,251,185,193,208,197,176,229,205,193,177,146,242,170,194,114,120,260,162,235,233,242,151,96,246,237,142,128,174,122,203,159,170,164,116,165,193,133,140,74,123,113,119,102,203,188,70,165,241,117,68,190,172,173,232,50,172,98,115,211,185,102,135,119,180,182,179,201,155,77,216,126,107,155,87,148,161,254,179,171,133,155,231,146,99,134,166,197,150,104,79,162,99,236,95,79,121,187,154,194,130,153,145,151,240,193,109,110,207,266,139,200,128,111,141,217,200,117,81,134,166,105,152,123,128,146,105,183,222,246,190,125,222,116,208,200,163,111,256,190,212,114,135,191,172,160,250,163,236,170,191,228,201,190,262,135,140,155,167,244,257,172,206,156,179,170,246,162,185,156,178,167,242,154,204,247,259,201,218,185,202,186,248,147,229,124,209,148,199,191,161,253,247,195,212,258,215,159,143,161,196,208,157,215,251,172,157,204,197,219,156,246,196,185,157,242,239,175,240,190,236,195,252,222,184,168,156,248,218,206,179,251,173,177,250,202,161,211,269,137,211,180,170,200,228,180,172,161,228,168,190,254,246,148,150,157,167,247,224,144,191,197,86,234,169,223,203,244,231,240,193,224,201,217,247,160,150,179,260,187,209,171,242,203,211,240,171,239,213,124,230,173,188,192,253,228,215,146,80,195,234,192,254,175,165,188,139,231,253,261,208,109,237,171,103,182,213,171,228,174,202,144,241,214,168,214,228,217,184,146,232,201,177,207,144,224,204,154,249,232,208,146,209,231,115,200,212,190,167,243,159,255,149,192,140,245,233,200,157,254,117,250,161,160,142,143,216,172,203,226,169,253,191,224,229,200,170,149,142,169,145,154,221,255,159,211,265,219,178,237,199,182,239,248,234,140,174,201,212,197,193,175,166,205,183,217,230,228,179,128,163,187,218,247,211,166,213,161,249,181,261,209,116,203,222,212,220,177,172,211,188,185,210,201,228,240,261,220,264,134,191,211,180,111,213,241,148,171,241,122,196,226,259,204,192,226,201,145,138,223,223,157,160,247,195,148,215,133,255,238,235,193,238,137,153,214,149,220,178,222,251,193,148,125,137,128,218,171,190,178,203,242,187,193,177,185,210,178,158,203,200,177,240,240,133,223,180,199,206,170,209,213,127,187,250,242,241,158,214,181,160,234,180,254,203,192,253,248,228,162,160,200,179,148,195,213,163,204,230,174,115,190,168,178,218,121,229,196,193,221,216,213,209,214,236,265,201,235,254,235,193,246,225,133,202,157,215,148,228,161,207,192,203,140,208,175,146,138,232,142,230,178,233,169,199,201,253,178,257,214,176,180,169,158,235,187,197,193,198,229,186,240,249,176,192,197,170,184,227,174,233,137,220,216,209,168,168,249,158,175,262,238,115,191,210,194,213,220,127,251,168,177,182,206,208,165,202,154,199,140,189,215,161,225,214,222,221,202,145,256,184,201,216,214,186,211,147,210,216,172,192,221,151,213,245,225,173,189,221,188,170,242,218,217,165,174,177,210,176,158,158,257,190,186,157,252,195,245,145,263,189,193,222,203,143,236,228,224,218,140,97,245,202,154,197,246,202,244,187,206,238,184,196,214,200,114,153,199,105,194,144,195,262,195,217,181,260,159,207,189,209,154,153,173,158,239,245,224,247,261,239,141,170,184,145,241,228,248,207,201,165,242,175,189,209,200,205,178,161,172,175,210,193,252,189,143,161,163,157,183,130,111,221,209,155,206,178,160,204,178,213,228,236,250,183,227,192,233,243,217,193,246,229,218,192,248,227,156,254,245,189,249,168,137,188,250,163,191,234,239,254,221,226,194,191,201,205,196,162,214,132,175,190,168,241,195,186,190,149,208,196,146,253,189,198,250,174,185,174,180,206,245,157,221,188,202,201,249,191,125,166,227,213,205,169,159,191,193,161,155,138,148,225,167,254,173,183,229,229,257,166,234,167,199,230,139,178,192,257,215,213,155,208,133,175,166,212,206,237,151,162,241,215,188,218,143,197,231,241,159,249,203,167,198,254,194,175,263,187,154,145,240,164,183,153,197,201,195,246,232,125,211,128,186,109,267,178,207,182,189,219,222,140,219,215,215,211,128,267,159,189,168,102,225,169,207,156,213,212,218,234,195,247,188,201,245,134,202,258,215,147,185,173,212,247,191,120,183,161,158,244,214,241,221,134,218,138,155,248,248,215,131,175,131,231,214,170,167,182,230,150,221,180,128,174,214,200,250,208,172,265,161,224,186,199,127,161,184,182,144,170,187,201,246,165,256,187,189,218,263,153,266,199,199,136,213,159,165,162,184,220,204,217,145,217,135,173,210,135,222,234,226,237,164,174,256,174,231,171,197,158,215,215,258,155,191,227,261,258,205,173,181,162,202,187,140,202,180,207,209,185,176,206,193,212,138,239,173,195,203,131,198,197,181,253,106,174,178,172,162,244,204,222,136,176,253,212,256,168,229,139,160,177,94,192,212,155,166,236,189,173,214,177,155,229,245,157,249,204,214,182,180,233,170,236,185,194,211,210,188,191,198,182,216,233,235,222,248,238,218,211,155,174,234,234,226,148,203,226,139,122,155,210,177,235,182,245,217,233,172,216,139,257,184,156,226,234,228,145,150,192,177,161,181,210,170,207,142,168,225,170,260,125,264,250,170,156,163,171,150,193,188,191,209,203,156,266,204,201,182,158,194,181,186,250,206,242,136,188,149,102,155,205,161,117,204,176,193,210,119,173,148,191,163,226,155,174,234,115,233,184,172,195,141,187,175,184,228,163,114,174,218,152,221,218,121,190,151,195,3,161,166,156,182,208,141,196,168,130,197,259,189,228,248,188,158,172,182,235,187,200,176,194,209,200,245,239,157,173,226,158,213,223,257,175,179,231,169,178,134,249,185,185,216,186,232,206,263,183,145,213,198,277,172,167,172,145,165,185,159,246,203,176,219,169,177,187,118,196,215,227,236,106,197,210,193,266,181,194,161,182,160,176,185,215,250,153,180,212,184,119,130,185,199,152,198,211,115,203,132,180,177,257,243,229,145,225,164,179,217,177,166,152,200,163,204,244,149,193,146,178,152,164,174,157,190,222,248,154,264,162,170,248,131,206,154,193,159,264,229,237,200,260,197,215,136,97,127,117,151,174,158,145,129,182,189,256,154,199,234,153,245,222,226,191,260,248,151,171,176,231,172,174,259,182,165,241,266,209,264,243,212,186,251,194,143,250,117,171,182,130,210,230,209,130,190,237,217,149,224,253,138,139,226,231,191,192,228,210,232,138,180,111,226,224,144,207,147,158,187,183,221,86,183,153,214,214,182,207,180,213,191,166,212,150,165,190,195,228,186,118,258,150,213,236,213,148,189,214,224,223,203,231,176,188,206,211,228,166,173,207,207,257,219,159,248,114,119,199,165,247,163,216,221,159,188,255,224,247,132,144,184,177,198,204,197,243,180,250,190,243,239,183,168,167,183,209,228,235,228,138,150,169,210,189,170,174,165,169,181,191,254,184,180,239,239,255,233,227,209,238,109,173,160,248,185,225,151,144,173,169,94,213,175,185,106,156,203,194,261,210,186,220,251,163,220,214,178,223,163,226,204,168,172,197,220,252,181,162,187,135,217,177,153,190,167,239,149,187,148,186,199,185,215,209,179,265,229,176,203,219,265,161,270,259,161,220,165,131,199,161,123,144,185,237,203,253,237,194,210,229,184,190,240,181,207,233,200,182,263,176,176,218,194,180,180,169,241,209,257,109,218,154,228,225,218,129,97,209,131,200,187,214,214,163,187,168,156,170,174,91,199,179,233,191,248,208,199,213,239,143,157,187,224,169,165,182,159,177,255,230,264,195,113,159,114,172,255,224,254,238,192,265,188,191,223,229,225,147,192,259,227,239,199,241,230,172,208,230,222,171,237,251,229,189,179,213,256,256,167,156,186,199,210,197,174,203,228,196,184,179,197,144,139,237,198,106,197,201,167,109,155,158,166,259,244,245,165,122,125,175,200,104,218,239,198,241,151,257,259,210,222,238,177,221,226,176,167,228,229,209,164,161,159,165,230,232,165,130,255,195,182,153,178,198,269,195,190,172,170,168,183,225,193,168,156,172,150,216,221,160,142,218,232,124,225,205,234,153,228,190,257,198,166,166,138,259,178,173,239,169,137,264,243,152,182,120,178,223,188,188,193,167,140,256,259,114,155,156,129,196,191,166,156,247,159,196,194,203,224,234,114,239,196,114,220,193,228,220,198,249,181,214,203,199,179,216,198,208,202,166,167,252,255,173,176,235,258,240,155,182,219,211,216,207,111,244,238,140,182,214,238,152,202,180,226,156,229,185,185,241,189,235,205,190,189,129,175,185,116,151,222,215,146,230,176,183,141,212,213,255,223,249,184,198,175,230,120,238,241,154,205,189,162,223,247,179,145,260,197,247,243,213,141,144,189,249,160,213,231,237,226,208,230,220,217,241,169,166,178,227,178,163,182,230,118,130,139,204,180,207,190,186,173,137,222,220,150,239,196,222,232,163,202,220,197,222,213,128,175,190,250,131,127,261,179,168,235,211,261,137,125,192,244,197,151,149,194,187,181,175,138,219,167,159,162,116,252,148,204,168,133,203,126,174,188,183,156,192,179,250,230,264,179,179,162,172,117,252,181,218,187,199,192,166,238,221,178,241,226,106,234,158,240,255,237,188,118,150,178,178,97,212,195,248,182,184,177,203,262,175,195,150,196,219,265,254,187,164,148,213,139,170,195,175,203,179,217,149,275,188,194,188,212,216,167,165,209,201,211,149,211,185,129,203,198,129,164,176,242,126,255,171,221,229,174,236,193,182,136,163,176,180,197,171,196,252,172,178,207,141,213,200,217,249,182,176,147,166,205,173,179,205,243,144,233,198,249,191,200,202,212,172,250,234,262,230,135,165,160,133,163,209,208,229,195,184,181,152,215,225,177,195,227,139,193,171,189,214,243,242,189,214,141,226,233,193,249,140,177,160,175,223,152,249,106,138,207,190,237,197,235,181,220,226,238,241,218,138,144,158,187,253,173,210,165,194,248,190,180,155,175,200,231,119,126,124,158,226,271,169,257,250,187,216,170,168,209,148,156,197,162,175,248,187,261,139,245,250,149,174,174,240,192,147,248,159,178,170,177,116,162,254,183,175,236,135,140,167,151,167,235,143,149,191,137,117,119,160,241,271,101,225,179,210,145,210,132,217,124,219,261,207,101,162,229,191,228,266,113,123,106,239,213,223,127,139,118,242,89,244,236,187,258,253,161,182,245,140,188,177,205,179,260,226,179,148,202,205,230,199,223,248,202,208,234,192,260,240,217,89,185,186,204,171,209,193,262,199,240,165,216,259,182,211,169,169,249,248,169,219,213,167,174,219,228,170,141,200,217,202,208,194,161,192,240,194,196,147,151,205,250,166,175,203,161,213,224,171,160,231,124,209,144,201,205,232,220,205,205,208,171,153,174,243,202,136,215,169,200,145,159,242,241,143,245,239,194,185,243,266,185,123,190,235,227,155,240,207,234,136,153,196,252,193,160,239,217,191,165,242,96,232,212,181,222,243,203,223,262,229,193,224,175,192,158,209,196,206,186,243,152,144,149,214,240,226,239,237,192,237,227,128,248,170,244,233,199,161,183,198,142,194,180,133,190,201,234,175,201,188,251,230,182,164,206,222,157,200,200,242,241,228,116,238,204,222,184,243,183,220,169,247,244,199,164,181,193,137,200,221,243,213,217,215,169,242,242,225,180,217,236,153,193,210,169,156,134,251,189,207,231,262,266,180,228,154,122,197,198,263,248,208,175,131,261,200,214,251,206,215,195,226,168,189,268,178,161,237,234,246,229,203,220,218,204,259,190,205,246,218,230,219,193,136,142,157,182,247,144,171,162,189,198,211,198,129,195,145,197,209,175,209,199,186,202,179,212,217,225,208,129,212,134,224,161,250,236,174,172,213,181,140,174,178,173,245,173,222,233,219,190,244,148,191,214,258,262,209,192,200,217,233,217,165,175,227,205,229,203,187,204,260,189,252,192,105,178,215,183,184,198,165,195,178,207,254,211,224,179,203,191,174,209,180,172,199,168,198,145,201,125,255,229,189,168,172,166,138,183,213,231,169,163,223,174,248,120,136,209,189,177,259,195,212,193,157,237,190,183,208,211,165,187,196,213,169,163,158,142,169,234,204,250,232,166,193,185,200,127,232,193,126,186,151,205,191,222,176,176,211,131,199,233,237,193,258,193,207,262,220,230,161,190,243,228,170,197,215,183,206,262,171,163,230,160,139,105,229,210,181,166,227,178,238,187,254,169,175,242,228,218,229,168,276,160,160,211,251,248,212,117,241,194,274,243,183,217,232,189,203,248,204,230,233,159,251,216,210,139,195,160,224,193,204,210,182,220,196,145,248,148,231,267,234,195,186,193,229,87,150,163,207,242,244,238,227,245,184,218,208,216,200,247,219,206,246,192,189,206,190,245,270,225,181,148,216,217,213,163,133,242,246,225,255,97,126,190,251,199,255,172,86,215,186,131,173,134,263,200,207,235,211,178,143,120,254,176,235,244,180,159,246,205,157,194,158,204,158,275,202,160,159,264,189,222,184,238,254,258,245,207,189,205,167,197,124,252,181,223,193,211,170,224,187,242,113,205,231,180,246,174,244,190,218,241,228,124,143,194,260,183,171,249,151,187,185,225,256,196,147,142,218,151,97,153,193,216,205,197,165,245,217,229,219,223,155,163,222,195,227,216,189,147,242,161,180,197,210,257,182,207,195,149,189,222,245,255,180,185,241,225,153,205,251,142,163,242,212,180,221,188,179,128,144,151,164,152,155,237,157,196,209,244,220,228,241,140,178,184,202,220,202,194,222,143,173,224,149,165,221,189,258,254,183,247,186,119,160,240,184,196,151,164,182,145,180,169,196,221,167,174,91,238,240,138,150,243,181,183,247,258,220,232,227,240,228,155,219,250,211,185,190,172,139,162,162,200,152,177,199,182,176,201,217,160,148,181,177,201,230,173,219,246,197,223,225,153,233,261,224,237,160,188,249,209,178,162,151,268,227,154,178,196,169,200,221,275,179,151,215,217,208,176,178,178,215,182,149,221,127,201,149,210,197,170,242,212,174,199,196,193,226,182,204,164,248,142,111,203,234,218,164,173,166,229,244,195,259,226,192,161,234,172,207,238,207,119,166,151,190,245,235,155,228,221,250,183,209,171,207,243,155,210,242,132,142,221,221,263,242,238,161,187,165,163,216,174,202,226,154,171,168,127,230,149,172,240,205,203,185,245,203,210,136,190,233,162,167,236,218,190,184,215,201,138,199,209,204,224,223,195,197,211,245,175,237,184,190,150,155,189,257,176,264,221,185,134,247,169,217,138,231,194,175,169,127,152,240,192,203,234,171,207,145,150,207,171,161,147,196,127,226,255,191,115,241,205,175,230,208,209,261,167,241,237,192,140,170,199,215,160,230,191,196,146,120,152,251,178,251,245,179,224,170,137,140,172,217,215,199,229,213,170,187,93,149,164,254,211,207,111,159,142,168,144,190,163,125,231,228,121,143,134,262,125,187,178,141,194,170,158,221,226,220,157,212,155,188,249,189,219,194,208,262,176,172,205,254,186,210,203,183,222,130,168,226,208,171,203,238,261,109,189,210,155,207,242,191,138,166,237,185,194,149,160,205,254,156,178,131,157,240,202,215,179,113,229,116,162,189,186,244,152,216,188,176,223,225,142,184,136,266,196,141,169,191,140,136,152,176,233,244,180,212,147,203,146,208,189,173,149,259,147,228,190,174,207,224,194,238,144,167,168,167,232,171,136,189,162,124,108,182,144,180,95,171,196,255,99,170,188,214,134,209,265,183,255,162,190,133,245,139,197,136,255,138,173,221,162,161,226,164,176,177,205,249,152,237,260,174,154,156,118,181,190,158,180,192,206,179,117,135,159,127,194,156,201,165,191,242,147,157,218,139,177,110,134,191,152,174,185,111,232,131,120,263,164,143,122,182,106,128,94,124,69,61,95,121,45,68,101,111,109,75,77,43,127,64,106,207,133,202,112,141,83,210,173,206,207,145,131,148,172,133,228,150,153,166,225,177,133,207,232,172,257,218,168,174,246,143,213,206,175,266,119,216,177,204,151,252,138,195,198,137,113,199,202,199,217,150,205,219,223,190,223,189,174,182,164,198,126,232,204,183,144,151,206,169,204,231,127,182,176,169,221,200,147,154,127,266,139,173,234,252,228,129,125,167,143,158,178,169,216,167,232,214,180,206,150,184,147,192,164,258,110,192,190,216,177,138,164,202,153,176,235,167,167,172,135,192,237,192,104,239,141,193,196,211,117,71,171,226,223,204,75,157,199,205,136,160,158,248,184,198,215,151,185,259,214,157,214,109,144,175,209,240,152,204,138,193,234,217,252,208,170,192,201,198,220,87,230,207,153,245,196,142,217,230,149,152,193,157,167,207,167,181,224,256,227,177,198,242,236,240,215,220,193,164,192,240,193,166,156,194,171,209,163,145,209,170,138,239,186,165,257,191,257,184,233,192,164,219,121,152,139,192,194,134,175,220,189,209,213,204,194,126,151,238,123,189,97,214,217,150,252,200,223,202,166,185,181,163,165,181,195,158,255,99,260,256,163,177,228,188,208,157,249,138,225,186,242,250,156,263,214,225,206,217,229,202,189,182,256,262,212,115,205,223,135,133,116,254,205,167,125,184,196,241,253,229,166,189,265,186,175,126,143,161,140,147,203,215,187,146,167,161,116,239,212,251,113,185,167,164,116,229,150,224,136,205,155,124,139,44,218,213,151,182,214,145,259,188,160,221,143,163,248,157,201,154,146,145,180,132,124,109,143,221,251,213,164,166,100,168,239,181,183,175,251,126,72,254,179,118,234,153,198,146,152,230,151,152,176,139,210,100,139,95,200,188,172,109,161,225,105,149,189,93,138,157,213,252,173,173,153,156,212,213,121,237,135,212,110,95,161,232,81,115,82,176,155,152,211,203,128,145,242,134,183,180,162,137,209,154,175,147,212,149,167,88,109,117,183,156,181,90,129,140,74,169,174,109,90,138,242,112,117,182,191,196,218,183,93,170,177,122,154,144,138,88,185,113,246,247,207,126,177,95,221,217,145,264,159,105,245,196,213,170,115,205,241,185,232,165,149,124,227,202,203,167,245,189,202,171,171,167,180,134,150,211,171,249,170,196,166,244,186,219,153,151,260,106,90,167,130,109,182,84,156,162,213,160,208,138,145,63,165,98,145,221,234,166,182,187,235,157,128,137,171,184,176,102,152,169,117,132,153,222,251,243,118,239,263,183,185,160,193,172,233,254,227,135,263,148,247,234,163,154,193,160,117,236,177,174,121,175,221,136,113,175,93,140,107,194,216,160,183,237,95,145,80,142,160,205,158,137,170,164,175,135,186,159,209,83,245,172,116,243,250,98,211,193,256,224,184,142,209,277,167,219,216,262,199,103,155,248,283,255,263,271,223,223,249,182,223,284,242,97,163,200,261,230,278,156,156,285,155,141,219,283,277,251,231,110,188,178,161,284,226,142,285,213,289,151,272,259,154,214,205,285,274,286,223,280,283,206,284,204,279,277,253,278,221,277,276,260,257,278,197,198,188,274,282,284,237,282,284,288,208,249,288,287,199,238,221,261,271,272,277,283,245,189,276,171,277,282,274,283,227,237,134,176,254,252,204,181,202,230,186,198,183,189,166,202,195,224,203,179,147,182,259,206,262,231,140,146,256,67,127,224,218,234,186,167,212,232,93,180,133,145,131,119,163,111,169,183,132,77,188,69,202,122,267,235,164,141,231,156,176,183,94,164,158,177,192,247,238,157,147,180,165,123,179,167,173,174,93,173,112,111,124,248,113,140,68,211,65,144,156,135,125,104,241,131,197,209,173,199,100,149,115,149,182,116,187,238,144,196,232,210,200,144,154,226,233,181,140,247,167,149,135,230,131,184,217,181,133,167,195,182,212,140,139,180,230,172,172,147,200,180,207,210,248,148,146,91,227,185,191,188,158,81,129,254,237,164,235,143,128,145,191,261,254,169,131,174,190,172,177,126,204,208,160,162,190,214,202,126,104,200,175,156,117,133,154,68,126,142,167,157,208,218,92,256,96,178,102,219,106,122,210,90,161,165,132,195,148,156,188,219,193,104,226,116,196,136,212,148,161,204,149,126,134,128,236,101,209,193,199,106,130,183,151,123,166,145,247,160,237,163,123,181,232,203,154,122,168,157,147,99,263,138,148,220,176,125,177,138,157,120,247,186,219,198,206,209,113,192,169,252,131,150,148,218,138,133,160,248,228,144,125,255,147,209,231,208,242,140,235,116,200,131,268,243,104,157,160,112,158,149,184,120,205,200,148,231,166,156,211,214,174,117,169,223,223,144,118,146,170,114,215,163,182,164,186,144,110,102,125,153,128,141,170,158,199,199,134,168,175,227,173,117,133,187,145,204,180,118,221,215,70,128,151,150,270,187,208,218,254,192,227,250,167,230,170,186,216,160,162,109,155,167,122,266,174,168,197,171,154,233,138,226,166,250,140,152,168,151,123,161,150,165,249,131,78,127,93,226,187,136,206,146,170,158,141,188,165,156,112,175,186,97,158,180,130,112,226,137,116,65,187,116,122,131,144,191,137,135,146,130,159,136,141,93,192,124,204,138,136,145,105,174,120,167,220,140,198,158,168,177,145,154,225,110,143,178,199,130,125,59,218,122,153,71,99,122,127,115,131,184,61,30,64,91,99,170,142,203,117,206,179,247,160,106,115,259,145,68,178,192,144,197,208,136,247,122,145,142,88,176,167,162,248,164,245,162,257,223,132,166,175,190,151,185,213,153,110,173,188,157,218,192,213,132,109,227,115,163,212,150,148,142,231,197,188,97,140,153,196,156,210,125,261,171,149,162,76,147,123,102,120,180,171,212,184,159,160,157,209,95,190,184,130,163,205,151,202,160,205,135,136,176,199,167,215,147,127,167,193,134,161,203,148,166,254,199,143,145,141,144,248,171,167,194,130,140,226,142,200,192,168,224,118,153,123,135,139,117,175,124,222,175,207,234,133,180,129,122,97,181,165,247,247,158,131,102,139,225,172,244,181,212,172,115,146,181,167,169,117,161,162,128,174,162,148,192,105,166,137,179,169,124,188,103,197,226,139,179,177,154,171,207,165,164,148,179,202,134,150,160,161,175,105,168,252,180,132,176,125,165,177,228,95,174,179,161,197,129,189,212,210,155,233,158,140,163,229,128,170,178,228,202,132,171,182,108,84,175,250,253,220,197,270,205,216,261,208,195,145,167,208,164,176,251,197,235,190,224,102,248,167,186,225,207,151,247,198,184,167,191,140,242,228,190,248,215,261,213,233,247,198,224,188,241,212,249,199,176,213,235,137,236,221,175,175,205,211,239,227,225,272,145,144,247,184,255,247,200,179,121,235,155,251,200,159,168,173,222,242,191,210,234,162,245,192,165,180,142,144,252,192,216,157,155,165,147,237,238,157,209,188,155,218,199,147,189,200,237,146,205,154,182,201,250,188,250,241,244,170,189,183,250,191,262,166,152,176,142,202,250,223,247,205,220,178,223,178,184,134,263,236,169,240,179,238,260,224,214,243,180,173,159,178,193,251,189,194,245,182,253,223,251,225,117,153,182,165,197,181,191,251,204,212,188,180,221,203,221,181,183,205,232,207,136,227,240,190,144,202,198,181,203,123,195,177,128,202,196,260,231,265,227,175,163,206,199,198,252,254,214,230,192,156,181,204,181,152,195,141,175,253,192,189,225,191,253,187,164,229,255,228,162,116,165,213,187,258,207,163,216,195,164,198,174,228,260,238,177,199,182,260,250,183,252,243,200,215,155,192,163,247,143,221,164,220,157,192,225,196,226,202,223,153,152,200,218,219,242,255,228,157,236,238,259,217,174,251,209,230,177,236,101,208,216,216,235,141,225,157,250,252,232,203,143,252,221,250,247,163,253,182,243,243,186,200,221,210,142,255,197,207,256,167,229,221,220,185,183,176,252,235,181,119,205,181,228,147,219,230,130,255,155,239,234,229,223,204,259,250,217,186,210,145,122,191,180,207,148,176,214,239,168,238,192,161,151,161,155,191,155,164,211,173,208,182,261,183,202,196,197,125,167,260,184,190,178,168,276,230,227,151,208,190,135,221,257,171,189,232,206,259,255,188,221,200,190,235,178,209,204,117,185,172,255,177,192,219,260,186,234,256,208,261,256,220,230,188,188,163,214,187,217,240,177,69,208,194,207,180,194,117,186,220,215,222,251,229,209,205,231,166,237,146,240,141,244,263,265,186,151,155,189,168,247,175,137,196,240,169,175,203,164,191,188,229,183,247,209,209,251,245,186,239,194,174,220,186,164,210,166,125,166,208,235,216,251,243,186,185,155,200,268,259,224,167,195,253,247,238,146,258,191,183,198,237,249,209,214,173,211,176,198,170,200,220,238,164,202,213,161,218,171,247,246,132,191,240,236,218,202,107,146,237,181,216,209,241,151,213,194,204,233,232,164,240,242,201,234,211,230,209,220,209,243,172,165,112,258,243,132,237,226,268,182,158,195,179,172,252,202,180,256,193,207,241,203,237,212,186,201,207,214,172,233,208,82,136,183,231,222,254,207,171,194,167,184,165,192,234,120,206,222,232,167,195,221,235,212,205,202,234,223,201,159,180,182,211,202,221,245,160,252,206,211,251,112,199,191,224,206,213,271,122,209,207,222,187,238,224,223,244,195,184,198,240,203,204,251,189,236,200,247,191,113,163,152,197,164,229,206,189,193,239,174,260,254,227,215,161,261,167,207,260,225,220,187,220,234,167,161,253,246,260,183,146,257,253,157,216,149,150,196,184,227,174,256,235,238,178,104,213,187,190,245,159,208,185,202,191,192,189,224,239,230,204,211,210,248,167,197,205,192,176,173,192,163,221,212,222,252,206,224,207,171,172,193,206,204,260,251,195,245,165,161,206,157,181,162,190,253,178,217,173,187,229,238,182,185,216,193,263,250,222,150,213,157,140,240,223,244,247,208,263,265,151,151,129,164,204,199,141,241,227,207,266,273,207,137,214,164,235,183,201,185,240,162,144,213,204,177,220,226,178,125,154,259,170,162,221,215,173,238,200,154,217,142,247,233,171,146,173,151,156,236,193,218,172,198,224,220,207,234,236,241,203,229,205,238,197,195,182,180,242,239,198,235,148,190,243,254,142,154,195,239,226,211,219,256,175,202,188,163,247,207,236,154,215,203,139,142,176,242,151,180,244,175,214,230,268,154,225,139,204,165,186,204,143,169,191,168,170,210,223,244,207,242,220,199,143,249,179,200,195,227,180,183,194,261,248,216,151,211,180,207,213,161,230,237,157,219,196,208,150,191,172,172,243,223,178,157,193,196,159,170,161,169,158,192,113,120,176,187,246,178,169,206,152,232,156,166,211,179,201,188,175,210,222,192,153,185,254,209,218,175,246,145,196,179,151,139,191,151,259,180,124,168,159,133,157,199,180,203,162,259,209,135,240,121,171,97,203,168,128,188,140,186,151,176,191,193,100,203,113,147,189,179,104,223,239,162,146,181,71,155,75,171,160,138,122,202,237,217,133,204,228,124,239,233,176,166,266,205,124,173,180,217,116,121,148,145,178,161,193,146,196,150,96,234,203,154,119,175,98,161,133,202,171,111,192,164,139,157,108,180,136,187,197,214,130,128,241,151,95,185,183,147,106,223,171,224,172,115,148,186,170,152,148,145,105,121,117,60,192,164,89,258,185,113,115,141,204,116,143,212,186,197,118,140,159,135,130,248,135,187,106,148,158,122,118,208,272,84,195,112,118,167,176,164,150,170,231,98,79,121,149,145,161,179,177,185,111,143,164,144,168,195,150,133,188,160,168,125,185,171,233,136,124,113,209,141,246,206,123,231,167,131,151,96,158,154,147,193,155,208,209,122,155,245,91,155,123,169,130,195,144,136,197,160,129,124,131,145,105,104,112,171,153,156,269,232,160,216,114,207,76,184,253,155,168,235,217,160,221,112,146,221,175,166,121,117,126,167,151,257,117,246,243,184,208,237,157,182,236,189,146,254,173,177,171,154,173,140,138,137,146,229,179,123,110,222,127,188,221,132,166,116,60,123,168,242,199,184,78,247,204,135,154,155,165,208,180,203,186,167,245,110,175,106,135,170,223,171,208,183,165,150,130,234,102,121,150,96,190,124,125,121,165,138,141,187,125,84,164,168,183,239,238,194,231,138,201,77,142,127,181,114,174,126,100,149,198,223,135,147,83,247,195,89,195,208,137,144,84,235,172,142,73,177,98,213,184,186,106,230,198,137,137,168,148,177,162,140,139,141,131,143,193,173,240,207,156,138,113,80,62,127,142,135,189,131,115,211,96,192,127,234,124,162,155,173,123,146,134,115,96,203,144,100,116,136,112,256,257,212,164,230,236,173,138,244,121,228,109,156,85,88,146,156,173,124,180,161,227,199,243,107,145,199,168,138,190,147,231,124,182,110,170,152,168,192,89,164,138,253,172,149,143,137,143,171,103,239,95,185,141,131,201,125,179,248,179,143,142,166,111,249,97,114,93,110,148,220,105,177,80,110,166,131,149,162,142,123,148,214,240,134,169,64,236,219,134,215,163,186,207,181,208,255,195,116,151,239,130,197,249,223,177,229,244,147,229,269,229,222,147,248,188,246,161,230,132,203,175,259,183,152,206,136,136,213,203,259,218,143,158,173,197,159,133,141,116,172,189,195,186,120,191,175,202,179,191,154,169,167,202,142,208,144,187,191,178,209,132,186,225,209,120,240,214,154,193,249,248,203,153,189,160,200,167,248,133,209,103,166,153,245,181,220,186,252,188,133,94,156,179,168,117,249,158,142,169,72,194,150,264,164,94,157,128,176,176,179,126,136,140,125,190,211,148,208,180,158,178,152,137,167,115,251,163,109,174,181,189,228,212,233,128,120,166,135,132,74,128,98,131,130,155,162,143,136,104,155,123,127,98,102,90,81,97,89,110,112,145,81,133,143,140,108,71,124,150,165,190,192,90,100,118,127,138,149,128,76,83,148,70,134,263,88,143,110,253,115,144,141,118,179,141,236,263,231,100,139,229,132,144,231,167,221,264,239,158,136,113,122,209,163,219,206,105,90,216,189,116,102,114,210,89,95,99,128,207,219,252,237,231,179,152,213,171,148,253,92,222,165,115,191,164,182,230,186,241,198,130,150,185,131,264,124,147,174,94,118,107,130,121,143,89,162,89,162,166,125,137,78,236,200,168,256,119,194,117,224,169,115,164,182,131,95,259,184,237,225,181,168,178,211,137,209,157,248,202,222,158,185,210,221,259,130,190,107,205,213,224,186,195,92,188,110,87,158,82,219,74,150,207,141,231,108,147,101,134,163,175,198,123,115,78,162,150,163,118,96,163,222,164,174,178,123,210,166,188,160,170,84,182,149,165,181,243,120,236,167,222,140,170,90,157,107,125,91,134,195,228,183,199,200,232,131,182,197,160,156,158,238,122,108,192,170,138,210,133,162,148,203,148,206,131,105,133,124,159,216,172,188,203,222,103,170,151,188,242,117,90,115,74,177,160,171,145,102,168,125,95,113,204,128,124,141,87,148,212,193,146,93,156,187,109,174,171,129,237,152,187,126,142,96,208,192,131,155,138,137,138,118,116,190,197,131,204,142,265,124,237,177,234,155,178,108,212,137,142,114,146,96,207,66,111,123,125,212,148,222,151,135,161,117,177,167,132,152,216,172,166,144,105,131,143,139,135,76,141,218,222,147,115,108,224,172,155,140,190,205,143,136,155,188,138,135,183,197,124,135,132,135,141,149,135,120,91,242,203,143,123,181,148,214,131,133,112,185,174,141,179,76,105,157,249,183,163,194,123,149,177,136,149,111,167,154,258,107,184,168,102,159,105,97,185,106,121,145,175,92,109,142,130,173,153,104,119,114,115,99,136,95,120,129,145,81,132,172,165,221,171,165,125,127,181,102,184,170,141,202,145,160,190,132,115,146,99,144,240,195,187,181,158,108,114,145,125,127,95,162,154,156,121,95,136,79,188,100,165,159,88,174,164,103,170,190,250,235,129,221,129,128,162,230,203,132,154,178,132,167,142,147,138,117,181,124,185,80,134,111,153,227,149,280,110,130,143,215,144,177,165,130,171,262,262,105,159,232,221,154,174,214,187,167,118,168,159,218,148,122,265,265,122,143,140,158,231,192,136,241,187,129,107,114,200,152,117,182,221,122,176,196,280,134,105,193,185,120,114,150,206,166,138,119,82,209,136,159,177,140,163,236,58,158,144,129,245,234,185,160,168,164,145,93,120,173,211,130,191,135,150,166,197,167,141,175,152,217,137,183,172,132,183,266,212,224,223,195,242,187,232,222,148,240,174,168,233,104,271,166,172,162,192,238,161,168,208,169,193,195,152,207,156,132,133,199,122,212,123,111,215,159,108,136,150,271,62,103,216,101,169,124,97,231,237,188,123,160,180,128,193,180,128,107,226,214,155,147,246,217,205,235,245,215,226,146,164,161,174,269,187,141,244,195,234,152,237,163,120,250,114,162,244,259,101,241,193,247,80,199,210,189,219,139,163,149,232,185,210,193,128,208,168,185,107,255,198,244,128,121,164,84,246,117,183,255,209,234,88,113,175,162,152,100,142,180,84,136,195,197,222,162,148,228,184,226,135,104,255,131,193,173,171,114,246,213,143,219,246,264,232,87,121,224,233,127,120,149,182,159,98,119,133,112,214,200,237,106,163,104,198,77,178,105,196,156,198,150,95,138,169,211,218,171,119,122,212,229,104,263,210,120,199,95,176,237,199,185,177,183,219,205,216,157,84,124,211,122,139,123,185,142,175,153,167,132,128,139,181,254,109,150,71,118,149,185,184,195,130,189,66,236,243,153,16,180,172,214,192,125,168,271,220,103,109,187,232,189,158,96,245,126,165,200,191,134,104,142,205,199,119,177,191,100,132,131,120,166,230,159,201,138,93,177,146,116,103,177,123,155,200,118,66,183,207,90,200,141,176,148,188,169,163,159,213,154,199,166,122,192,219,193,194,168,227,165,176,169,209,205,128,264,199,146,230,178,144,147,189,133,239,183,217,220,159,180,192,257,203,141,183,207,170,188,90,175,177,222,92,235,182,182,153,217,157,151,200,217,133,214,240,178,253,194,248,164,170,194,263,144,191,249,148,123,167,197,190,216,237,246,175,241,174,182,145,188,182,196,128,195,210,233,216,153,150,194,159,136,237,218,213,153,205,151,186,170,188,155,200,211,149,264,225,221,219,187,249,177,198,195,171,203,238,162,152,223,106,105,168,135,277,134,217,223,213,246,207,172,114,157,227,141,229,224,182,146,253,219,188,108,226,198,188,128,206,203,91,167,224,178,159,247,259,200,250,180,139,215,177,171,236,131,133,101,162,209,232,142,130,135,183,172,203,187,183,162,232,185,149,228,219,247,216,250,189,197,237,215,156,136,266,224,182,138,187,221,157,103,162,158,243,241,228,176,97,180,195,144,207,201,261,147,146,166,212,175,158,160,266,204,221,234,218,195,129,152,200,215,180,181,139,189,165,179,261,166,90,229,196,176,178,164,155,230,196,255,157,166,139,203,191,106,211,148,261,181,255,172,160,205,253,235,191,237,217,194,150,208,218,267,169,94,179,215,179,224,245,166,173,259,172,195,201,195,264,130,127,170,127,130,191,148,149,135,141,133,207,171,192,212,191,168,210,160,203,187,157,195,165,210,219,150,189,214,172,192,143,176,142,237,195,196,152,127,135,188,169,218,228,162,148,169,229,159,119,200,123,218,77,208,107,144,135,148,163,166,143,133,231,206,187,210,200,183,211,194,239,237,213,189,150,218,151,176,162,185,230,143,153,160,180,168,184,135,178,197,206,129,152,212,124,164,174,195,187,226,157,100,155,148,200,258,202,165,177,243,160,142,176,235,166,209,205,195,125,260,215,158,192,201,146,185,210,111,252,162,181,223,207,202,225,198,141,163,219,254,193,220,192,231,148,123,209,136,131,156,153,136,136,255,211,179,155,198,202,192,259,169,215,208,186,173,155,209,252,111,202,177,181,164,122,106,252,155,249,142,113,116,193,129,137,193,151,188,111,115,157,185,143,230,135,160,222,147,179,156,134,227,116,232,173,173,224,199,110,129,215,185,145,172,217,202,226,121,100,231,101,193,239,181,226,96,187,223,196,139,122,259,145,196,140,10,258,242,224,163,144,160,142,136,181,233,202,235,194,236,158,157,247,203,167,172,170,168,236,154,105,87,199,93,77,105,145,188,103,168,137,174,164,158,180,150,167,150,150,147,209,166,168,131,199,137,150,228,117,155,99,246,209,193,169,259,130,108,184,112,156,81,171,187,136,112,122,148,173,252,164,140,137,246,133,188,193,146,148,138,214,164,127,106,124,125,110,127,121,187,174,208,209,165,115,164,239,265,209,192,216,122,203,99,68,137,189,194,156,163,176,138,195,245,142,180,158,253,119,98,190,262,203,219,249,146,169,93,214,162,88,164,212,229,218,155,225,244,152,226,161,177,158,143,155,217,177,191,224,222,252,236,203,206,211,179,234,157,209,241,245,171,213,135,134,188,157,171,217,252,161,197,173,156,166,165,197,270,141,163,184,172,181,247,108,139,176,140,117,175,221,209,214,177,165,195,248,137,142,151,231,217,192,201,224,219,161,178,246,204,173,119,189,147,142,228,163,199,233,260,170,236,237,217,208,167,137,131,256,254,166,194,132,97,105,248,173,127,117,135,190,166,165,132,180,126,81,200,231,151,114,208,157,181,255,172,67,238,95,255,172,170,235,252,236,242,247,256,153,198,154,178,169,262,199,146,243,228,218,193,166,185,267,172,146,223,192,199,196,82,212,192,252,169,167,183,192,158,265,133,251,201,249,175,83,126,176,150,191,164,250,193,199,201,195,121,115,222,205,154,154,253,162,167,175,165,191,232,217,184,144,136,122,167,188,136,190,143,229,213,80,154,199,221,175,192,198,225,248,234,177,88,270,207,123,203,98,248,163,219,190,147,228,122,179,154,164,146,203,118,156,127,212,69,201,215,194,153,220,241,201,194,201,248,186,146,150,161,122,206,103,209,147,91,202,158,221,209,247,200,193,93,210,231,223,184,261,149,250,213,129,134,133,235,134,208,145,209,162,195,205,133,191,164,240,249,239,224,110,255,185,161,224,187,128,189,171,214,155,237,215,229,206,171,186,231,206,183,97,218,202,251,205,179,226,244,241,196,188,176,164,190,199,204,182,179,184,128,201,139,84,256,154,187,268,106,198,89,191,201,181,99,221,201,163,200,200,102,135,182,221,168,220,229,119,112,226,251,193,188,228,178,75,181,205,225,206,144,131,216,278,204,253,156,197,146,222,171,122,163,131,167,222,221,223,196,150,188,166,138,172,249,208,125,144,200,148,189,239,146,185,134,189,161,113,221,182,247,185,180,209,178,246,252,230,130,230,122,99,175,96,225,202,178,164,216,235,172,228,92,171,200,126,230,148,190,229,220,224,226,233,139,216,231,222,120,268,223,183,182,218,223,230,173,159,102,169,186,95,167,146,150,162,129,181,206,224,216,216,246,229,187,219,127,169,104,155,217,235,139,196,78,162,228,97,210,142,147,155,192,204,139,283,264,243,185,181,181,204,232,207,191,249,232,150,173,118,180,158,126,206,205,150,190,191,194,157,198,189,216,133,94,256,263,158,162,88,203,227,118,145,128,95,175,240,256,249,217,138,190,213,202,141,245,66,78,197,140,256,216,204,232,138,191,150,232,229,181,174,114,161,193,229,164,237,155,178,131,96,173,205,122,126,176,245,193,113,235,184,212,221,223,192,111,74,219,87,163,270,194,167,160,185,170,150,184,107,156,236,107,190,136,129,246,174,123,112,222,171,207,186,87,213,232,241,136,206,250,132,205,240,140,222,156,146,170,207,213,204,185,140,233,183,146,223,151,179,228,214,244,195,177,171,229,241,226,145,95,217,146,192,129,170,177,193,157,193,188,194,179,258,211,171,201,153,267,131,193,179,189,239,226,176,186,126,152,165,185,237,195,127,139,71,242,190,207,106,176,215,176,164,254,179,144,221,98,139,234,231,115,159,202,259,208,140,255,110,185,174,182,165,246,187,180,185,197,165,131,236,230,216,180,214,178,221,194,226,244,256,167,207,193,162,253,198,203,201,132,244,234,236,260,142,250,162,145,239,138,184,164,193,243,188,260,168,226,196,181,125,143,143,222,135,170,223,229,202,274,211,137,201,152,258,153,178,144,161,267,262,140,155,125,141,201,219,155,171,103,240,173,182,229,204,210,189,163,219,184,178,164,134,192,184,118,102,162,178,185,182,59,82,126,113,140,124,143,105,198,200,147,27,214,211,178,198,148,102,205,26,159,60,112,222,75,236,114,210,122,133,199,129,174,192,101,91,91,159,98,132,132,235,123,152,136,82,129,87,198,164,192,157,100,204,165,101,131,271,241,223,245,106,242,196,181,249,129,240,61,211,204,186,125,156,139,133,165,102,112,210,110,144,209,254,146,109,135,194,243,208,227,170,152,99,137,179,200,112,205,179,180,198,187,198,193,187,146,201,173,202,177,186,183,166,207,202,145,190,210,180,51,200,179,196,193,159,191,195,179,206,198,201,186,202,190,169,192,179,192,218,192,175,176,73,208,196,203,200,202,212,189,187,155,196,227,188,152,166,206,194,198,151,189,194,192,203,170,201,178,179,171,184,187,197,162,144,133,95,189,231,182,128,223,167,109,175,176,208,151,154,122,247,169,146,171,252,81,260,126,54,159,247,239,128,109,175,198,206,162,160,195,160,182,200,207,226,271,204,204,191,149,232,148,158,107,99,175,147,167,188,105,181,160,111,189,115,110,156,124,163,231,136,139,202,124,245,141,159,161,107,98,129,193,125,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,272,109,144,236,165,112,135,132,141,139,101,178,116,139,242,125,148,79,94,163,117,155,130,171,135,132,175,218,171,162,169,133,132,239,259,194,212,121,104,108,116,77,217,163,136,194,230,144,138,132,223,247,131,219,198,198,172,164,114,151,157,215,264,154,228,152,154,212,222,253,259,244,162,154,158,171,239,140,164,101,260,193,170,191,80,108,132,154,137,141,126,126,168,162,129,108,167,93,98,132,122,62,89,202,177,87,195,261,108,213,104,152,123,179,169,125,71,127,70,146,114,139,126,190,204,115,179,163,159,249,183,151,159,211,183,147,222,91,178,262,127,173,201,163,182,184,131,196,161,268,142,197,199,155,143,160,107,211,213,218,146,124,108,164,151,92,132,254,192,130,161,136,201,204,203,210,259,161,117,219,203,194,181,166,227,202,126,93,164,171,148,148,230,217,166,148,179,122,204,140,218,130,90,159,220,126,120,193,226,202,156,172,210,157,158,221,181,142,148,192,112,195,157,96,107,77,142,100,196,148,181,137,120,137,152,157,180,132,143,179,159,192,112,207,130,138,117,129,94,165,144,106,152,138,121,148,126,151,191,198,200,136,190,177,206,183,224,190,209,106,261,135,209,177,181,125,165,95,194,160,133,124,258,168,234,236,130,198,203,152,196,145,197,172,207,145,239,256,193,93,173,163,235,242,150,209,244,147,201,107,219,234,210,193,190,232,195,217,229,121,153,184,125,193,224,137,140,187,244,184,215,255,181,105,234,217,192,152,142,210,242,229,225,222,191,159,181,167,175,196,255,169,210,179,201,240,244,206,201,240,182,186,220,172,166,177,192,79,202,241,203,229,220,127,181,232,269,191,118,144,163,195,192,264,215,242,154,242,152,185,176,152,202,139,164,194,277,237,150,188,202,197,211,159,188,255,133,168,168,199,244,248,174,147,197,156,119,129,158,239,193,210,182,190,187,218,157,252,187,181,148,237,197,246,152,236,137,190,176,123,162,169,128,194,129,207,217,209,203,239,204,154,244,154,187,163,148,220,183,155,196,99,132,268,204,148,250,204,159,174,201,191,143,190,162,228,101,147,203,257,217,131,210,169,148,173,207,179,150,195,251,156,195,210,154,166,190,201,215,273,161,165,271,224,199,180,148,193,185,147,227,215,149,241,214,166,136,121,238,166,210,227,223,154,166,242,154,250,192,188,204,241,163,237,174,217,181,266,216,198,199,201,244,185,219,193,201,180,221,177,164,178,192,171,204,229,146,167,215,144,211,179,252,160,183,150,138,154,207,182,154,164,188,134,256,220,217,189,265,159,186,265,200,222,150,200,145,214,205,210,248,208,265,222,170,163,229,155,237,172,145,234,199,214,192,147,237,205,199,134,188,209,249,146,149,201,131,158,218,148,239,219,221,200,207,169,192,130,235,98,167,182,211,150,211,176,228,251,158,240,172,151,171,129,188,227,239,223,249,112,219,217,209,209,136,180,217,250,127,175,205,216,111,250,127,142,123,156,155,212,134,202,158,210,159,221,212,230,176,252,204,197,234,179,222,242,236,250,204,178,198,162,229,218,213,209,192,110,223,135,176,215,175,145,151,217,97,136,187,162,188,133,163,248,213,175,199,226,170,233,119,214,209,179,184,231,170,181,222,216,247,244,199,213,190,169,210,181,120,250,188,208,125,238,185,236,169,235,204,108,195,139,196,241,182,119,185,213,156,192,191,257,157,196,172,240,194,139,201,187,198,247,258,212,220,188,220,164,135,174,180,160,141,210,84,211,188,147,236,206,216,194,195,162,244,165,200,219,144,244,165,235,156,220,202,213,227,242,245,211,185,89,208,131,165,155,182,165,210,247,258,179,206,129,129,174,206,177,164,188,251,204,167,158,216,122,206,186,141,204,150,220,239,250,259,229,172,168,219,109,160,176,255,174,187,230,131,251,175,171,168,219,206,238,171,247,207,242,146,209,260,185,199,194,206,244,191,219,238,239,206,246,216,170,220,260,206,255,212,154,226,165,198,167,209,173,214,201,193,202,227,173,147,169,157,193,110,187,185,167,208,180,194,124,200,172,105,176,249,192,218,172,261,204,220,233,155,158,229,162,139,183,229,220,147,261,171,195,209,175,202,216,159,203,205,263,191,213,205,207,242,180,225,89,173,177,265,146,181,214,143,170,250,179,181,149,198,249,187,122,195,206,205,168,210,161,204,220,202,216,155,245,172,175,196,178,188,153,171,176,209,182,202,175,196,257,229,177,239,211,236,135,147,204,155,102,182,169,177,245,112,218,229,187,260,115,154,205,125,222,185,157,239,171,203,194,144,170,182,181,218,88,244,203,188,149,224,193,246,225,201,192,207,228,228,170,244,203,206,230,187,205,165,201,160,166,120,261,141,141,200,205,149,253,156,245,227,152,148,142,254,217,257,179,177,251,192,158,163,97,164,206,241,190,182,156,238,258,188,169,189,202,165,186,131,249,218,103,198,114,132,202,258,206,176,198,105,169,117,163,223,233,200,105,195,176,268,156,187,242,232,210,180,195,178,116,183,198,160,180,271,162,233,154,168,169,189,138,194,214,142,170,241,219,152,235,227,164,113,198,200,203,245,214,268,104,199,270,171,164,226,168,181,176,199,159,154,186,159,173,219,217,164,188,150,181,128,193,208,171,154,168,181,166,193,228,226,157,211,176,205,211,213,180,205,236,136,176,223,120,102,198,218,143,220,197,187,236,243,106,206,239,152,214,153,245,208,243,186,240,188,98,238,217,188,176,133,233,225,160,177,190,205,153,181,220,210,228,164,210,188,163,132,205,232,102,234,142,209,185,181,111,238,174,148,169,171,156,192,221,159,214,212,120,134,167,215,116,193,214,172,209,86,182,258,239,197,161,122,162,208,258,96,166,207,206,194,156,179,141,183,140,161,188,191,193,252,132,191,224,179,188,200,226,146,206,117,211,197,185,200,193,215,266,192,235,222,172,160,119,142,153,192,127,193,194,179,142,166,187,258,152,126,179,219,162,133,174,154,163,236,169,218,215,152,237,127,85,168,151,192,152,178,269,229,183,154,178,136,162,222,125,191,188,211,252,248,184,133,144,242,192,182,192,166,179,220,214,200,148,249,176,162,205,162,189,138,162,246,149,178,166,207,123,174,200,154,171,199,123,137,193,156,192,213,137,201,248,154,118,195,183,139,117,148,198,166,181,253,197,245,149,218,241,139,164,175,153,225,146,131,199,242,177,187,218,210,152,136,165,113,167,135,135,203,209,95,200,106,119,240,190,161,192,186,144,205,228,159,134,159,140,120,216,207,197,167,158,62,183,273,187,202,208,134,150,150,134,227,140,167,114,133,159,173,192,182,153,249,198,202,212,160,211,209,206,249,159,182,180,193,251,246,206,205,202,240,157,208,215,222,206,189,192,199,166,239,188,175,138,251,187,230,246,178,173,151,160,221,173,213,178,221,188,262,256,256,219,184,186,209,233,280,231,202,205,194,243,186,227,203,165,203,173,156,150,186,221,188,167,173,142,243,197,191,194,204,153,227,232,253,198,179,238,208,217,214,163,185,185,143,217,148,197,119,131,253,154,189,197,187,177,199,219,205,234,235,169,196,184,156,158,116,135,155,125,183,153,218,177,118,208,248,221,222,211,219,149,250,219,200,255,189,191,227,161,227,165,257,179,233,147,230,238,167,158,181,212,157,216,157,242,188,234,172,70,184,163,229,200,206,195,163,186,230,184,191,192,132,210,197,175,261,181,194,213,244,227,210,229,226,224,245,236,175,249,186,204,269,180,260,264,142,180,190,238,257,177,201,142,250,162,198,197,221,211,179,190,165,263,211,166,160,237,218,222,240,229,196,148,241,164,213,226,184,190,183,204,154,218,136,193,198,185,196,217,184,212,175,239,188,184,242,201,166,193,203,221,188,176,197,162,145,184,210,105,248,199,234,181,184,248,119,142,174,205,170,217,197,196,230,193,170,220,215,205,235,228,196,131,268,199,146,186,217,171,180,173,165,179,130,203,214,200,160,220,232,257,158,194,209,187,208,143,184,231,195,239,236,189,249,206,147,172,239,222,171,198,242,159,253,210,236,173,188,197,186,243,137,227,137,221,235,184,196,121,214,223,155,205,233,121,109,219,239,251,225,173,226,200,212,238,123,246,232,237,187,168,206,242,184,274,195,174,254,169,243,207,264,146,235,151,163,220,175,190,241,183,216,232,210,208,142,203,167,170,138,217,243,139,211,183,217,174,159,149,205,238,172,169,217,191,258,162,181,86,185,150,153,200,172,187,193,266,123,155,226,213,168,182,233,217,182,243,145,220,221,219,192,258,241,243,219,233,199,181,183,249,146,145,186,201,216,159,142,214,238,233,210,171,260,213,147,213,242,195,249,203,166,261,191,188,147,160,249,206,134,220,167,240,262,215,222,223,196,188,259,264,249,193,184,264,214,232,229,124,170,156,241,169,208,146,243,173,249,183,195,259,193,226,164,200,247,218,146,164,212,167,264,182,258,209,157,205,182,227,236,205,151,207,231,192,198,210,230,175,203,254,163,241,267,222,189,212,185,156,181,159,183,136,169,206,169,172,213,133,200,237,157,210,132,222,222,229,250,234,195,204,227,249,209,173,187,202,132,223,178,203,174,223,163,184,202,155,196,218,123,233,249,145,231,194,211,226,161,199,126,149,192,248,146,154,214,248,161,127,228,176,180,203,154,192,222,142,132,210,238,231,199,175,172,181,169,152,212,244,233,173,170,210,222,219,207,185,128,250,165,184,232,161,245,158,246,204,220,196,194,178,146,150,250,173,209,171,215,252,244,165,234,251,189,196,129,216,174,242,205,218,229,146,243,198,218,244,200,201,234,205,144,231,183,118,155,210,184,159,161,180,257,206,141,175,176,124,180,156,130,223,125,179,146,189,156,184,85,252,138,199,178,263,173,201,217,124,183,217,171,209,172,229,228,224,159,279,165,206,193,146,233,198,241,252,210,148,200,166,134,242,112,201,221,250,169,204,133,223,195,213,241,195,142,252,210,168,202,205,154,187,141,190,181,219,184,259,221,213,227,177,197,120,228,188,261,159,201,158,204,130,201,70,149,146,216,3,190,181,138,3,225,173,189,207,193,137,161,211,230,172,213,232,170,139,178,203,121,170,195,217,167,208,140,151,188,149,234,218,138,212,228,150,231,184,187,150,153,184,263,248,262,187,223,219,178,92,190,164,236,181,201,172,131,267,167,229,201,228,160,98,139,126,134,175,254,165,201,251,195,231,199,138,255,148,239,158,178,163,94,181,240,226,74,191,228,158,91,157,219,157,97,210,152,203,172,148,229,171,206,132,155,136,205,163,144,212,153,236,230,177,147,162,191,120,121,154,181,200,243,198,174,209,217,127,234,243,157,246,121,94,89,153,167,153,121,207,149,159,106,147,159,228,194,91,224,220,250,137,186,133,214,201,109,174,145,75,85,149,259,162,223,193,255,180,178,207,169,204,195,122,100,188,211,191,125,174,198,174,150,169,268,187,117,204,150,234,171,130,139,170,152,125,168,194,214,100,129,176,179,199,97,266,140,129,117,55,60,103,89,122,36,127,42,44,66,104,53,265,111,97,124,58,80,141,55,169,109,67,56,48,32,121,66,57,65,91,54,69,99,96,73,69,78,60,119,60,167,220,253,149,111,131,155,178,158,248,115,78,160,173,176,195,81,155,101,193,117,174,257,106,154,139,240,164,130,190,152,238,145,201,161,181,195,121,196,91,157,144,157,166,176,138,163,177,122,219,159,213,133,193,149,201,82,179,154,203,67,98,169,179,202,168,231,211,136,241,167,165,144,167,163,170,143,169,133,174,212,174,229,258,135,132,165,144,208,185,188,130,243,186,124,171,199,243,157,222,138,170,250,184,258,227,135,226,200,153,153,159,101,131,206,239,130,201,165,118,178,229,195,138,119,197,139,233,129,233,202,117,174,250,251,153,249,172,198,199,146,145,215,214,115,154,166,233,99,142,222,235,127,162,173,201,151,212,197,134,224,152,124,188,138,223,191,96,217,151,112,188,176,159,82,86,155,118,131,154,120,72,92,254,158,175,212,186,158,179,193,99,138,96,250,221,165,170,152,139,163,183,258,210,143,219,274,167,125,252,142,172,164,205,194,119,207,251,257,161,258,183,207,155,135,242,96,155,226,203,239,250,128,166,74,100,108,230,189,102,122,117,121,202,186,186,150,157,159,152,224,187,184,126,196,227,160,159,256,256,137,204,177,153,180,196,229,204,196,204,221,139,252,211,200,192,184,215,175,181,179,158,262,212,146,205,189,127,96,143,228,160,182,249,201,198,147,166,208,226,219,246,94,245,185,177,165,180,163,144,121,96,146,89,199,148,89,144,153,155,174,172,253,224,255,257,208,218,129,264,149,132,139,234,205,195,148,240,159,144,190,169,228,208,204,244,191,199,193,144,248,227,223,117,158,193,230,170,128,154,113,170,251,195,181,209,210,240,126,171,200,178,197,181,239,124,198,154,187,241,195,181,219,149,141,236,107,159,179,200,237,186,254,271,152,242,162,209,236,209,230,213,148,181,194,164,240,180,243,175,199,176,141,144,157,164,222,176,236,211,163,205,202,154,198,189,234,201,205,229,234,201,179,147,158,154,150,201,168,185,132,189,240,214,207,194,143,179,125,195,163,181,169,169,224,209,199,173,184,155,239,159,164,105,233,148,170,197,202,156,228,210,118,186,134,218,221,180,153,173,162,143,126,229,187,186,190,213,146,163,160,130,111,182,237,188,244,177,181,181,188,166,212,203,176,234,117,230,103,152,245,140,174,139,186,192,214,198,140,179,203,181,172,182,153,138,181,154,199,85,199,187,213,188,202,149,190,134,171,217,229,153,110,228,224,153,208,181,137,121,219,150,212,181,183,266,195,112,238,174,158,95,143,143,190,194,94,139,200,138,170,158,112,216,232,196,204,220,145,206,202,172,163,264,113,216,189,214,268,189,183,197,171,92,204,209,220,160,193,87,150,170,172,263,204,159,246,174,235,176,103,198,151,163,202,224,189,140,159,195,197,117,137,217,200,101,166,201,253,240,260,155,209,101,184,183,175,68,224,244,238,244,155,219,203,189,115,189,231,100,239,170,110,102,205,231,201,146,208,162,218,180,255,165,261,185,214,232,221,201,143,173,203,182,171,201,124,222,145,196,153,246,204,156,152,201,240,185,148,119,202,217,138,126,206,206,235,161,195,172,135,237,139,184,235,136,218,180,184,176,176,86,79,164,229,171,175,211,133,165,164,146,135,143,183,176,200,203,134,225,208,195,183,129,129,194,251,172,231,214,223,207,115,216,174,179,180,173,207,203,233,142,172,179,179,135,263,200,151,181,147,91,151,208,224,138,253,204,201,232,128,155,159,208,265,175,238,199,227,191,204,204,86,216,143,207,66,199,189,162,207,253,202,184,138,221,197,204,206,211,208,218,266,226,233,172,215,177,167,180,212,186,188,107,176,176,162,168,216,110,169,182,205,169,127,230,162,252,197,205,175,236,196,259,178,264,197,214,253,214,173,205,221,163,160,201,118,192,158,148,169,224,216,157,202,205,150,217,154,164,159,207,175,192,135,115,171,143,268,229,261,189,192,143,140,190,207,226,152,134,183,156,159,180,180,136,151,115,179,185,136,249,82,112,150,174,117,107,144,136,216,198,113,139,93,141,210,57,66,151,221,203,167,162,181,171,152,96,198,139,160,165,155,111,144,160,141,126,166,123,228,232,162,194,172,146,194,109,144,142,209,162,163,221,174,173,156,173,123,187,211,175,127,170,146,217,245,119,253,232,174,143,174,182,215,113,155,148,170,204,201,216,235,230,226,249,201,179,166,207,102,122,91,110,244,205,221,131,91,204,183,186,171,101,203,160,79,170,164,211,218,188,107,144,150,5,204,167,181,175,89,53,197,150,201,155,132,267,157,269,204,220,253,176,152,268,273,193,146,277,184,264,127,250,95,142,226,192,250,271,256,267,89,181,254,268,194,211,141,91,150,242,200,240,228,227,267,244,205,262,282,277,287,261,213,284,281,221,199,195,207,208,188,213,186,285,268,260,269,277,258,269,257,198,251,198,286,214,280,187,263,226,211,286,276,228,285,289,284,281,284,176,260,286,290,226,219,235,239,287,289,273,280,287,198,209,269,200,146,155,215,169,213,195,196,166,233,223,181,176,234,169,160,132,145,154,171,164,105,108,212,135,178,197,200,260,118,175,124,187,187,106,174,209,174,174,130,160,112,156,147,203,115,155,217,101,133,115,186,254,88,239,172,244,171,146,130,245,192,174,206,180,102,244,219,200,133,228,174,134,202,194,150,114,101,182,133,195,212,128,208,161,150,204,160,164,227,182,237,237,163,202,190,167,239,109,239,168,193,208,171,177,193,162,243,172,236,151,232,244,185,163,149,221,176,205,171,103,120,223,162,149,194,205,186,132,241,233,204,181,148,184,210,146,163,131,65,197,219,117,250,197,184,163,144,164,205,155,204,197,218,154,133,113,232,99,124,203,119,137,138,227,136,165,136,159,154,103,90,167,254,198,241,254,216,99,262,76,76,208,205,241,109,153,185,124,125,135,222,150,178,126,188,124,120,123,114,187,139,134,158,193,176,174,157,199,197,97,129,122,159,217,94,95,59,150,83,248,254,161,149,181,208,227,179,185,257,144,179,163,152,133,154,179,149,167,149,120,102,162,178,157,154,164,166,181,140,177,160,137,172,79,84,256,199,110,254,254,172,165,145,215,246,170,235,164,250,168,240,178,188,111,154,183,276,119,185,266,145,150,238,181,171,94,106,230,216,167,131,108,157,142,237,132,172,175,89,157,139,132,121,225,196,167,231,226,166,163,174,146,164,142,169,165,165,177,233,181,193,182,148,239,140,183,144,246,171,225,230,109,152,149,151,175,165,131,149,141,146,118,254,231,160,77,138,120,193,175,161,186,97,103,167,181,178,176,143,90,141,170,182,126,188,221,150,227,193,191,261,164,156,160,158,113,254,149,209,181,178,267,171,163,160,266,152,193,158,104,111,149,145,135,140,179,141,53,159,108,93,202,162,168,180,147,127,177,140,129,118,112,120,172,130,113,150,219,139,109,162,143,190,176,173,170,182,121,140,129,212,109,133,171,149,149,141,141,125,144,99,155,226,139,203,180,232,230,204,228,164,243,205,214,128,247,105,180,217,158,171,257,233,180,226,144,155,140,131,223,163,241,187,217,210,207,131,204,248,234,210,184,203,222,138,216,161,173,210,218,220,104,270,158,124,211,243,173,165,103,264,172,196,161,180,224,196,220,189,182,229,202,216,173,180,221,178,230,185,170,222,225,182,162,251,190,154,165,270,147,256,165,159,155,220,132,185,147,179,187,164,129,135,223,172,135,188,214,206,197,254,212,220,162,161,250,212,191,177,251,198,200,165,188,206,125,171,199,256,185,204,226,214,161,220,204,173,211,173,204,206,183,135,190,167,190,203,166,140,160,131,247,212,257,233,202,155,234,121,122,173,211,213,199,169,204,175,157,238,177,237,193,245,204,228,261,248,222,183,164,256,168,206,252,135,190,189,158,229,225,225,183,204,244,190,204,167,157,198,146,243,193,150,202,231,194,196,225,187,248,160,147,190,142,231,243,142,159,202,158,250,254,146,205,143,243,196,215,160,163,153,216,190,123,178,161,185,250,185,200,158,152,124,224,250,171,181,231,154,216,164,231,178,192,122,193,136,245,191,195,162,182,133,165,257,164,210,117,127,181,160,173,162,195,154,236,193,148,105,149,194,119,191,154,177,240,156,140,157,229,223,169,173,225,251,178,142,187,231,150,155,183,212,190,137,201,217,205,210,146,243,258,183,200,203,195,168,198,95,176,187,191,183,257,182,180,162,254,187,106,149,205,246,209,187,232,189,173,197,187,211,201,222,187,226,161,163,138,160,217,252,164,216,104,238,227,214,227,98,149,204,146,259,130,154,180,261,157,174,205,238,225,195,175,254,153,251,143,167,210,141,211,226,181,230,150,140,144,116,205,174,124,179,174,235,152,241,159,165,200,156,165,126,179,221,181,219,221,173,177,189,246,207,162,232,176,155,180,157,152,234,200,150,153,166,240,213,128,245,214,95,197,215,232,173,228,206,158,190,233,186,142,188,185,252,242,165,194,251,124,165,252,228,180,208,188,204,263,152,191,234,143,232,161,176,221,173,193,178,225,233,203,206,143,160,115,169,134,171,194,216,181,188,126,152,108,221,149,158,156,171,173,203,138,156,169,208,135,210,200,173,183,259,110,254,228,131,154,168,201,137,152,231,160,165,214,179,247,252,145,162,172,128,172,139,102,219,118,203,142,194,195,153,114,217,184,204,166,150,214,257,132,98,152,201,176,220,160,158,227,113,189,253,206,225,226,155,202,190,214,184,178,252,215,147,171,227,266,115,124,154,229,130,181,170,130,203,114,134,237,170,180,192,201,138,119,237,154,143,202,189,157,239,131,207,167,240,213,206,211,178,264,168,256,124,166,194,217,202,225,139,219,222,228,169,177,211,171,129,163,102,139,245,156,202,216,149,171,224,186,115,123,104,161,146,164,181,215,229,206,91,105,175,174,235,129,181,116,163,171,189,162,172,129,106,227,87,200,189,125,175,141,125,174,181,150,147,98,159,124,134,150,124,140,162,173,176,166,212,227,151,153,158,138,129,154,231,147,103,191,140,207,198,162,195,149,100,127,125,132,138,127,136,209,207,164,196,145,177,216,248,177,203,230,210,211,189,190,126,216,202,143,193,180,173,263,127,220,166,169,226,157,205,218,236,220,147,255,134,161,161,225,160,128,176,196,139,196,233,260,207,142,186,180,195,237,157,110,170,254,247,100,228,158,216,219,150,172,171,226,158,245,242,106,192,188,161,191,178,222,155,174,150,261,191,112,251,149,256,168,184,209,182,219,278,132,188,108,122,253,132,239,194,212,137,169,146,144,197,112,154,159,143,188,185,120,143,120,183,162,221,161,141,107,172,185,203,236,172,190,85,87,187,142,244,166,107,177,170,169,123,89,78,186,134,173,173,198,227,125,105,87,147,158,175,127,141,167,205,165,155,257,179,205,122,91,122,134,220,136,84,180,186,236,191,226,118,173,143,142,230,147,133,145,252,137,219,159,260,168,104,178,85,72,59,155,78,148,106,59,174,160,108,108,146,57,129,245,195,218,131,137,189,162,113,87,101,158,138,72,130,267,59,228,129,107,127,125,193,210,121,113,132,89,124,63,157,181,149,149,104,148,137,132,149,159,207,71,191,222,223,165,145,222,211,218,212,111,106,93,97,134,225,155,129,134,156,139,108,125,187,136,78,121,123,82,126,110,108,122,39,154,144,116,166,186,139,115,173,161,109,100,160,206,127,151,99,83,263,90,187,119,208,123,201,241,224,184,165,111,189,194,210,60,152,203,69,168,97,115,206,195,157,143,165,219,122,186,125,106,160,160,217,154,190,146,121,108,190,91,216,140,187,127,184,272,157,149,168,118,183,179,156,147,173,142,221,133,180,133,130,191,251,255,115,138,175,164,174,118,146,140,155,121,137,178,167,200,181,152,173,138,205,213,190,168,156,161,122,146,126,206,236,225,148,173,223,108,131,176,166,128,207,190,107,157,160,116,169,141,156,160,177,110,77,198,106,113,139,148,90,222,143,231,140,124,153,127,136,106,150,177,109,160,173,129,75,92,226,149,154,121,206,116,97,185,162,199,72,201,107,105,154,121,196,159,197,195,141,179,114,3,196,184,3,194,194,199,233,201,245,200,90,116,263,197,199,123,115,159,88,134,238,121,105,222,206,127,179,167,128,215,218,181,152,145,176,147,108,148,237,106,198,187,155,128,189,143,167,86,52,118,30,56,133,68,102,57,110,74,82,89,166,106,87,87,125,52,101,145,143,186,221,134,154,256,190,150,129,179,111,181,244,186,186,214,154,176,170,169,171,148,214,146,244,239,216,235,183,182,194,159,142,75,145,133,139,159,155,161,204,139,214,182,88,158,229,151,211,211,204,171,119,130,232,202,161,201,245,151,160,154,167,210,145,86,242,110,191,214,237,210,114,161,171,121,152,234,100,181,150,200,111,146,74,225,222,178,191,207,101,130,158,220,175,151,151,251,170,236,168,135,195,110,142,206,92,267,223,204,261,232,207,213,150,247,203,203,152,179,196,209,272,116,155,234,224,160,235,140,147,157,69,216,114,142,134,193,111,119,119,171,180,249,143,81,255,142,76,153,62,136,162,228,124,169,117,154,127,165,240,101,252,131,152,211,142,160,157,145,143,157,159,191,141,207,149,132,241,189,221,136,255,205,182,161,173,116,105,191,94,83,105,152,97,151,64,101,113,94,110,111,130,125,171,103,47,111,127,152,91,75,132,171,106,155,152,82,125,258,189,123,181,166,101,76,156,109,132,157,128,166,175,136,127,88,253,127,120,124,56,101,72,192,174,160,163,105,155,190,193,222,63,154,179,112,204,77,219,134,173,230,182,210,212,130,160,197,224,204,250,91,173,144,182,165,122,187,231,218,139,259,134,95,119,161,161,190,194,185,241,119,135,131,183,151,212,98,157,163,171,169,196,137,206,211,195,141,158,183,134,127,138,173,138,110,185,133,122,171,100,162,124,146,203,254,153,144,161,228,187,106,165,156,88,154,183,186,110,249,127,109,229,148,151,110,175,170,232,129,225,110,154,55,208,215,153,148,202,89,194,211,120,121,126,241,193,133,172,87,97,129,236,138,249,121,130,104,260,177,95,117,229,245,125,211,182,120,141,96,75,108,125,156,172,84,193,117,204,117,110,160,104,102,90,68,174,151,114,103,123,95,98,154,205,197,112,170,126,87,207,265,94,153,123,93,172,121,146,182,110,137,186,179,72,208,148,133,142,104,152,146,123,160,129,77,108,119,158,164,120,165,151,182,73,180,137,131,95,183,80,189,96,143,169,179,157,137,146,204,143,155,201,135,195,217,176,89,125,114,168,250,133,144,196,147,127,140,93,131,103,162,131,135,88,88,113,114,148,96,196,215,48,93,156,136,185,172,102,175,175,118,231,169,103,128,144,179,128,123,175,106,194,127,153,153,203,91,143,194,208,149,217,141,187,85,199,129,230,215,118,145,145,169,141,165,195,112,237,165,134,168,219,138,187,158,160,154,257,210,119,165,115,191,232,93,204,124,149,226,273,266,146,178,146,101,97,91,90,106,117,175,172,104,131,221,225,137,139,108,151,195,187,202,164,159,131,150,190,185,93,94,212,216,245,162,204,269,219,257,166,155,189,216,130,78,175,201,131,132,136,78,135,196,151,184,44,143,194,177,152,157,152,117,262,54,162,147,198,128,109,196,174,125,175,164,92,136,192,152,209,208,237,165,197,180,166,217,183,177,196,139,80,144,227,168,164,153,131,140,172,182,156,104,128,153,135,224,203,188,231,160,126,166,154,190,208,99,58,179,184,219,229,194,207,186,82,126,176,123,218,116,167,227,170,172,191,147,146,120,164,129,168,125,229,188,146,136,200,149,165,189,229,236,196,260,209,175,194,104,162,193,167,210,201,157,198,144,191,242,173,156,149,157,130,155,194,106,206,248,123,145,234,93,159,165,105,100,197,164,170,146,150,129,248,168,138,165,137,140,160,237,190,154,140,165,121,101,229,183,127,223,122,124,202,148,112,162,241,255,141,208,129,106,145,197,137,115,210,135,119,129,91,103,156,221,103,106,128,136,174,175,127,270,141,169,138,232,152,185,160,131,199,190,145,113,133,78,202,183,176,110,224,215,106,144,109,257,235,212,199,210,98,183,112,126,233,170,145,152,116,154,99,149,94,92,169,98,262,160,151,118,131,177,123,150,94,160,112,237,167,170,84,169,92,156,157,115,155,223,227,160,182,177,110,159,95,87,122,144,141,156,146,90,218,103,122,140,132,191,160,84,110,75,64,142,76,132,132,82,101,125,196,114,160,210,161,139,97,137,162,195,123,192,82,208,167,82,186,167,163,193,181,231,225,172,178,167,183,149,225,141,161,219,245,150,189,126,131,132,101,155,155,103,125,195,151,154,211,187,104,142,104,106,87,163,155,143,107,117,151,159,228,187,106,142,166,179,147,196,137,205,78,120,121,227,117,177,192,211,217,156,123,151,193,192,194,159,209,213,174,176,144,108,115,168,168,136,219,215,190,165,183,199,196,122,99,100,171,158,146,191,123,135,135,107,78,219,121,172,193,254,133,145,201,194,132,263,122,191,129,216,119,161,192,95,125,147,216,201,155,114,212,213,212,140,121,177,127,115,80,199,106,196,78,200,180,253,195,54,141,138,144,163,105,179,117,96,170,203,149,119,134,125,193,103,190,142,124,161,168,166,214,129,207,170,204,177,269,151,209,126,259,200,168,149,229,156,153,162,224,163,157,216,196,152,205,127,99,195,249,255,212,183,179,143,132,189,200,191,162,181,140,195,146,180,177,214,157,121,187,68,141,215,137,185,208,121,263,132,182,250,236,150,230,150,216,252,216,215,205,123,214,244,214,200,216,179,210,221,197,227,135,208,258,181,190,137,219,218,235,162,116,161,86,163,170,238,201,247,237,195,201,105,132,161,215,208,197,241,161,184,175,156,211,219,209,170,149,215,198,208,229,201,217,230,134,152,232,179,163,85,111,138,97,147,174,239,218,136,187,193,123,238,176,187,190,204,237,175,194,231,208,195,219,192,156,212,155,215,217,177,203,173,120,114,185,270,210,221,136,188,212,123,235,174,91,156,213,170,149,182,234,139,156,193,138,175,174,268,149,183,150,123,259,267,211,166,160,183,156,222,178,156,152,147,169,176,157,128,88,241,198,249,129,212,247,153,228,184,214,182,206,145,201,78,114,194,164,192,198,126,214,177,43,137,174,154,255,158,153,138,132,221,195,187,143,207,175,189,112,151,147,206,215,188,193,72,169,235,166,176,128,231,131,194,188,188,189,136,161,165,203,197,177,136,231,152,183,180,125,162,121,220,184,237,203,214,262,155,160,191,173,130,141,229,205,226,131,158,165,176,115,185,189,200,236,180,135,169,192,164,133,109,199,194,232,173,171,164,239,152,134,187,230,166,192,126,142,154,232,172,162,236,246,195,199,197,133,143,230,125,218,233,266,220,201,197,124,133,203,187,113,206,165,140,156,119,178,144,137,152,193,166,254,132,207,188,114,127,171,147,247,103,186,123,102,149,158,146,89,224,260,147,163,176,167,156,217,130,196,150,102,124,232,139,203,134,162,241,180,195,147,132,126,246,166,165,177,124,165,209,180,132,143,149,153,211,213,180,199,179,164,151,175,99,133,173,179,245,232,148,117,120,114,167,187,155,146,108,106,185,215,125,217,119,152,238,155,125,243,143,208,174,202,211,222,218,159,122,122,137,142,139,179,201,212,190,148,134,204,146,182,209,165,130,196,143,167,156,209,144,155,199,171,227,193,162,147,166,177,215,179,128,144,152,150,199,126,136,134,152,132,112,193,158,90,149,236,140,106,161,256,144,219,129,201,191,210,113,178,222,154,135,134,114,250,114,147,146,147,82,265,115,90,160,78,180,196,168,168,111,67,164,146,118,195,96,107,108,99,170,214,79,83,184,75,159,97,209,165,165,134,219,178,251,107,121,130,211,245,211,272,243,149,254,143,193,266,201,245,172,132,254,235,232,207,257,125,145,142,227,195,252,162,213,165,196,237,164,118,204,202,106,90,149,147,107,156,171,219,212,101,56,126,105,201,50,235,115,212,183,86,208,193,157,162,163,176,119,198,89,209,180,138,129,83,172,126,216,155,139,218,113,239,100,191,176,150,165,129,226,180,195,235,136,161,202,237,167,195,96,84,193,88,131,148,100,185,169,215,155,121,223,90,230,202,187,175,65,132,99,207,133,172,189,220,134,139,255,148,167,153,161,191,195,155,230,194,134,104,108,140,184,157,168,170,205,207,121,205,167,85,173,124,112,118,176,151,159,154,133,66,153,112,93,139,111,166,194,208,94,242,79,129,115,242,187,76,247,276,145,189,199,147,149,156,100,142,225,113,88,123,168,213,149,131,135,228,98,174,189,214,175,155,167,205,161,100,130,198,135,177,234,229,214,153,112,155,236,215,165,258,180,166,146,203,174,112,232,186,147,227,206,205,126,147,89,173,196,193,188,182,169,181,210,137,210,218,179,191,189,193,178,185,118,208,176,126,185,205,199,181,54,180,84,64,60,176,187,193,195,192,128,143,178,186,197,188,197,191,71,187,167,177,201,178,177,132,184,186,171,172,168,75,175,50,161,152,133,207,254,130,228,237,160,112,181,143,135,158,86,177,168,141,252,164,114,157,146,107,144,234,165,258,210,80,121,116,154,120,152,182,189,119,219,172,174,112,218,123,69,130,112,48,178,106,165,220,190,168,132,119,195,88,141,183,198,198,112,123,114,135,104,162,114,61,157,163,106,166,123,132,210,118,136,138,113,220,204,186,116,232,87,165,156,116,151,132,145,152,95,180,67,180,200,132,103,129,136,133,144,147,101,113,102,215,94,155,177,244,141,165,106,149,204,180,181,195,120,219,89,107,199,68,106,153,170,110,134,87,182,150,120,104,78,92,200,234,198,120,100,157,116,121,145,260,96,133,178,134,200,144,250,99,165,184,132,124,192,126,231,255,78,160,195,75,97,257,226,105,212,139,129,237,120,165,168,219,191,237,197,175,185,132,202,168,262,192,211,200,193,189,191,223,163,195,123,135,168,246,155,229,122,147,129,106,207,134,120,184,190,143,158,148,113,93,118,207,207,209,190,155,161,149,224,178,170,170,157,163,227,151,249,106,170,130,176,126,140,259,125,134,172,162,263,106,241,188,181,151,76,141,70,128,140,219,140,128,121,124,189,101,180,132,110,192,94,98,121,140,115,140,137,73,168,178,3,68,116,85,99,88,146,202,103,156,162,110,142,132,186,103,168,148,126,154,106,136,133,95,109,176,120,146,99,110,112,99,166,101,123,200,124,140,66,151,207,96,76,114,108,150,91,145,174,93,156,125,127,229,144,86,199,229,85,112,222,118,95,124,175,128,68,227,109,157,196,136,172,146,104,147,176,194,90,94,139,131,155,179,153,154,121,129,168,119,107,181,143,218,214,211,178,163,98,206,99,205,233,195,209,197,238,114,225,210,236,138,209,154,261,146,200,186,148,230,155,234,200,153,158,211,228,177,262,180,159,216,137,197,232,186,152,260,239,148,202,193,186,205,178,250,218,180,150,177,142,228,196,114,145,174,225,243,143,195,161,155,202,234,150,172,165,153,203,129,170,188,213,151,199,225,139,135,136,226,175,240,162,173,136,120,175,217,171,181,144,170,196,232,179,196,174,182,211,170,100,191,232,147,190,184,197,182,140,242,210,233,133,129,218,188,140,133,180,248,180,137,150,239,254,177,191,204,151,157,246,171,213,234,163,240,155,130,167,130,204,225,152,162,233,142,239,227,83,175,130,216,209,270,112,182,263,188,228,159,213,239,234,194,217,171,236,221,225,197,167,165,183,195,206,115,127,179,213,200,201,184,171,185,233,157,230,159,208,123,211,177,174,154,150,206,212,200,209,177,156,169,174,233,196,152,208,166,116,137,176,218,243,183,267,143,141,198,175,133,159,132,255,155,227,136,262,192,200,155,168,139,181,182,178,215,235,162,208,88,138,100,127,181,222,189,152,163,239,235,178,195,156,187,184,147,234,85,215,211,155,173,211,176,158,144,161,96,232,177,148,138,116,179,161,222,142,157,141,182,262,159,253,217,154,152,243,183,124,222,245,200,201,215,229,230,190,261,239,128,196,147,250,152,245,219,143,115,217,193,169,193,194,264,119,147,72,168,147,124,193,195,181,219,216,233,138,152,233,169,162,255,117,162,238,188,134,207,185,187,147,138,211,166,140,148,145,191,194,197,263,187,175,197,171,76,220,109,219,200,135,170,245,147,171,159,179,270,133,120,178,199,193,207,168,130,137,197,136,229,200,141,191,199,177,219,147,223,168,188,182,151,254,174,221,190,100,172,161,220,132,177,128,125,165,221,212,148,182,196,237,237,200,160,111,194,138,212,229,122,141,187,153,139,3,200,136,160,141,128,135,127,196,203,104,148,131,123,179,174,166,126,108,182,170,176,237,126,175,112,149,169,217,140,130,160,215,169,85,157,131,144,205,126,141,142,199,135,206,250,200,170,237,186,215,191,180,222,189,178,151,239,144,209,249,130,222,242,220,159,175,229,171,133,180,211,137,174,182,197,203,187,175,191,113,215,238,174,213,142,145,140,162,213,203,166,201,187,172,198,266,166,240,139,138,197,240,221,164,219,197,144,138,147,194,140,168,154,233,195,172,254,152,138,192,162,195,213,198,136,190,204,145,209,246,254,146,218,145,204,187,205,195,193,200,214,235,128,169,144,73,189,103,228,215,162,234,203,142,231,220,191,234,159,208,234,206,155,168,184,155,261,140,247,174,153,248,170,154,154,238,219,231,130,188,131,160,93,187,203,165,143,189,153,201,221,191,155,174,225,176,94,127,162,167,218,217,205,215,243,191,194,155,168,187,215,170,185,166,160,165,182,198,211,114,224,181,123,264,233,180,143,256,217,173,185,194,224,134,232,124,149,235,129,186,223,242,204,156,195,247,156,158,176,182,243,201,151,174,143,203,172,238,196,199,188,189,191,197,222,247,184,233,155,189,185,185,174,166,236,238,212,188,144,171,203,214,133,162,151,233,196,152,215,153,197,202,185,183,201,187,112,202,154,176,177,144,203,143,183,173,217,229,92,165,202,191,247,141,230,201,200,209,191,166,205,149,186,253,212,139,124,218,186,163,213,229,153,208,213,242,141,151,170,222,209,151,203,208,195,150,220,173,174,200,114,152,199,146,144,174,150,199,166,195,169,202,183,246,228,210,195,162,234,238,134,227,149,134,228,258,201,177,188,142,147,150,268,221,252,199,148,184,133,158,228,221,250,184,135,172,182,152,225,194,192,157,227,123,144,84,173,235,146,145,189,153,191,262,180,147,224,132,187,122,178,204,131,187,143,152,179,133,190,219,195,198,143,162,88,200,206,209,185,254,198,240,198,220,150,206,180,181,141,123,230,195,185,151,128,236,88,240,152,215,230,162,178,145,219,199,248,133,192,122,251,218,130,177,144,138,170,159,172,171,182,205,263,187,183,216,93,177,158,218,230,199,156,189,205,178,182,207,189,204,172,225,238,159,195,261,137,126,237,193,153,200,201,229,175,140,185,191,105,180,71,100,183,222,198,195,160,193,189,190,221,135,172,249,188,224,170,199,189,252,128,224,194,144,190,167,199,242,242,195,153,220,179,224,237,181,161,202,227,212,246,184,222,222,237,228,192,194,158,256,163,149,197,260,179,134,222,205,139,159,154,158,132,144,165,237,128,196,157,166,164,191,135,198,226,144,160,166,214,198,184,204,175,191,159,173,186,169,173,100,186,143,137,242,197,235,207,262,163,183,208,170,203,177,256,190,155,237,211,139,217,205,215,170,182,185,188,226,215,198,209,190,189,202,170,257,217,153,122,223,133,245,215,225,159,181,236,162,194,255,139,150,161,202,191,199,149,214,117,246,177,170,139,110,129,151,209,247,213,145,191,264,208,184,134,182,218,211,208,184,190,135,221,230,104,209,234,235,188,166,152,186,199,195,176,182,206,202,122,176,159,229,195,113,125,218,132,259,212,205,226,186,142,233,138,168,180,258,217,199,139,133,226,201,117,95,148,187,242,221,217,242,228,173,195,120,131,258,123,225,207,210,205,210,221,198,194,167,262,194,189,136,267,152,196,231,177,199,203,201,164,212,154,252,217,242,123,184,123,258,136,215,188,216,138,211,163,140,158,105,188,157,228,165,161,152,214,193,199,126,111,132,234,158,193,179,219,206,225,157,210,200,214,196,180,254,177,178,230,186,180,153,250,97,178,135,188,139,159,225,92,221,174,200,131,205,119,188,135,195,206,251,235,165,172,190,171,204,142,195,236,170,160,158,158,181,146,121,135,179,263,196,186,180,239,135,192,160,127,181,200,162,246,111,115,115,138,198,188,206,204,171,164,166,190,209,229,225,221,190,188,113,110,221,119,218,139,200,155,166,198,136,118,222,98,146,157,190,72,98,154,120,201,177,173,142,175,239,97,194,157,208,111,205,166,149,236,153,126,175,174,107,261,151,130,159,99,93,150,134,166,214,214,259,161,222,221,164,191,240,231,261,196,234,208,223,151,102,147,113,170,178,206,196,248,203,179,180,198,239,147,112,89,123,176,127,150,104,91,174,144,185,158,175,115,143,133,172,137,203,193,181,184,151,143,194,161,118,130,203,234,206,136,162,244,187,146,173,99,201,246,176,128,202,248,195,204,176,147,225,217,175,152,182,244,100,162,123,128,191,160,162,216,165,199,127,190,185,174,95,157,183,117,233,81,199,135,159,119,106,141,224,118,206,147,138,196,149,122,149,191,157,243,214,159,206,129,176,170,142,181,172,119,168,112,206,176,208,164,191,139,174,215,132,228,187,279,197,176,159,157,131,155,161,185,137,274,94,177,133,150,180,214,198,170,228,154,116,207,140,126,142,141,163,82,138,127,180,198,109,107,148,185,135,199,158,171,242,170,183,239,197,130,173,110,141,199,206,169,95,177,136,177,140,187,208,175,154,148,146,154,169,161,196,164,87,170,95,214,145,113,186,244,148,118,167,156,218,196,165,182,167,125,156,130,157,137,184,137,203,122,162,115,181,152,101,212,179,184,155,234,52,213,172,153,247,136,171,160,220,153,138,161,159,121,175,183,183,252,263,258,152,122,266,239,251,216,256,234,97,152,162,189,167,234,227,222,220,174,172,186,109,105,130,158,124,153,112,150,132,167,182,227,184,254,231,130,184,188,192,146,142,185,201,149,204,164,164,213,179,131,130,200,118,186,104,108,105,244,231,192,184,154,171,178,240,180,158,191,131,143,185,190,139,155,138,182,223,220,171,160,150,210,194,149,182,162,173,138,191,165,118,223,237,184,156,188,99,153,211,79,176,146,102,152,207,177,133,246,226,159,204,152,203,159,79,106,103,76,198,95,220,221,190,242,240,162,108,67,184,96,182,179,172,215,50,106,164,194,183,131,167,84,127,85,136,83,156,79,174,135,187,207,146,106,183,220,248,159,207,199,201,123,224,200,112,109,250,164,237,134,129,136,159,114,190,63,147,107,202,189,209,125,107,115,141,189,141,207,105,173,124,90,178,193,136,189,72,218,156,147,114,243,173,181,112,171,142,214,160,92,149,169,155,247,177,237,158,112,113,153,201,204,165,237,174,97,169,145,174,111,212,186,103,128,198,190,181,138,70,209,222,260,191,172,116,125,224,112,89,244,156,206,194,91,167,139,94,95,204,116,251,141,172,150,157,224,125,121,161,164,156,163,147,169,227,209,184,225,196,178,154,132,219,176,195,218,135,181,190,175,181,205,158,109,160,218,231,192,169,185,194,181,194,113,211,219,106,151,213,197,231,166,224,176,155,198,188,190,157,129,162,214,170,147,238,215,132,61,138,244,98,122,65,65,186,139,142,167,128,178,154,178,199,111,156,106,122,229,201,76,183,116,199,190,169,186,150,92,121,89,139,88,130,130,88,92,152,148,154,203,199,127,146,148,122,118,172,209,125,109,174,264,137,164,112,162,166,118,119,119,185,129,67,214,124,160,120,240,205,135,126,227,255,267,251,246,258,172,77,262,257,258,171,259,169,144,200,258,267,182,53,206,140,279,276,155,149,188,133,190,191,163,142,188,248,251,247,288,284,252,262,231,217,222,290,257,200,248,243,280,275,239,286,221,285,244,256,285,209,260,285,289,232,283,273,271,282,269,286,263,274,231,163,225,146,187,293,149,286,186,258,166,180,290,267,279,197,237,216,281,286,213,243,201,260,271,243,214,178,228,286,288,278,277,217,280,234,271,272,292,277,286,180,201,192,239,236,236,220,193,155,211,137,194,256,247,254,158,98,192,221,204,164,261,234,191,234,181,256,281,226,166,220,203,264,254,99,248,118,156,154,109,155,242,111,144,169,231,114,101,145,148,158,75,165,182,166,152,150,250,119,104,229,144,148,240,209,214,152,96,113,121,226,217,141,153,121,178,249,157,211,145,150,144,106,95,216,110,147,103,209,114,82,159,110,138,94,139,171,122,123,160,132,144,131,136,173,215,120,210,185,181,219,132,234,190,97,216,189,201,188,131,167,172,198,105,192,195,176,230,179,125,111,204,215,97,178,185,90,101,166,208,169,41,187,170,226,172,130,227,148,163,202,184,153,157,236,188,128,186,190,159,135,94,169,132,215,202,160,118,83,208,175,163,181,107,233,110,192,197,151,103,170,92,132,255,217,97,191,116,180,210,120,179,198,101,133,90,201,192,180,136,47,92,254,151,215,56,72,232,227,135,139,153,105,22,114,122,113,222,165,205,140,208,216,171,179,193,199,241,160,178,157,131,78,179,162,116,54,143,95,104,79,139,150,169,153,169,108,148,154,86,235,207,111,100,98,162,158,183,133,170,131,103,87,159,109,99,129,133,222,76,160,134,187,124,96,211,224,126,141,243,162,196,145,188,139,144,169,236,208,127,133,116,103,173,132,148,134,97,118,97,114,154,182,172,89,216,189,210,194,145,166,137,166,174,111,210,209,130,203,213,121,159,74,179,204,129,196,258,136,249,114,79,222,101,148,103,147,184,229,223,117,142,140,205,212,172,228,137,140,203,183,190,88,188,137,142,138,189,212,187,248,204,180,103,191,215,103,134,116,166,217,136,127,183,156,115,169,139,187,142,146,218,227,132,151,158,142,154,154,197,168,135,119,160,122,133,148,165,179,143,155,223,125,133,159,157,134,129,147,153,147,167,167,207,224,206,161,200,129,155,182,196,113,153,155,193,154,187,122,164,81,182,167,194,151,97,130,178,143,120,228,202,199,135,142,116,180,146,134,117,209,182,98,104,147,143,157,201,186,151,177,149,138,147,120,118,168,169,184,92,162,185,190,89,172,174,191,170,152,170,238,213,150,183,188,136,193,110,184,161,155,186,212,260,119,174,108,173,152,194,169,132,184,182,150,171,173,181,197,175,192,173,255,191,198,179,253,195,204,256,185,162,161,234,192,175,165,262,193,153,263,213,166,213,177,182,217,251,212,120,220,225,196,159,219,243,143,199,137,211,214,180,201,212,186,199,212,224,213,121,185,179,246,135,184,195,207,155,182,241,206,249,183,147,195,216,195,130,253,231,239,204,216,203,218,191,236,138,157,162,173,155,149,179,235,160,143,240,210,199,169,248,192,225,139,233,176,210,177,182,164,153,254,211,221,151,219,132,192,191,145,239,190,174,173,232,190,174,176,235,162,230,167,157,176,214,256,244,214,167,123,156,257,195,153,242,169,249,187,167,140,144,244,143,168,104,178,211,260,230,225,180,174,176,210,209,191,241,195,191,200,204,169,150,225,209,184,134,223,204,129,195,188,188,211,176,228,198,232,151,212,137,255,186,151,179,166,199,189,190,206,173,248,234,140,191,227,162,244,225,163,253,247,264,192,252,122,147,248,227,142,187,195,203,143,222,218,184,218,178,180,152,161,220,195,253,189,176,175,192,199,188,116,220,248,246,180,151,187,123,235,178,183,175,120,236,209,175,121,151,238,243,117,187,132,204,250,155,225,192,138,127,179,246,162,257,199,128,196,164,237,172,117,192,192,175,163,191,168,172,176,194,206,238,179,166,206,138,203,198,217,136,213,232,186,167,236,133,259,98,210,193,241,141,188,244,202,179,171,188,209,223,232,171,179,195,171,261,120,207,165,126,188,261,116,269,169,178,72,171,158,169,164,192,157,168,122,219,210,119,215,219,200,134,237,251,244,211,191,197,176,215,249,164,216,207,211,165,177,191,167,238,168,161,214,105,185,220,180,178,188,204,155,170,176,186,148,182,184,161,207,196,257,177,178,153,222,205,234,166,195,194,214,195,198,153,160,229,152,182,148,199,177,168,177,148,182,244,150,263,207,169,167,233,158,180,152,229,205,239,195,225,256,164,202,125,110,239,197,226,161,211,218,204,195,159,222,181,183,143,187,228,173,238,181,215,206,184,244,207,177,140,138,255,198,219,230,171,262,247,150,161,147,198,226,189,265,203,193,174,201,197,167,143,163,168,182,167,206,222,177,190,251,213,212,257,243,188,253,204,149,238,168,167,153,147,156,217,166,172,142,207,196,201,252,211,167,221,270,212,165,192,147,203,191,219,222,231,185,172,167,173,252,162,229,217,136,190,172,273,213,201,184,136,240,253,220,173,237,132,107,200,205,161,144,190,207,248,232,255,180,147,234,142,112,227,159,110,119,156,177,208,189,203,159,258,247,176,193,172,183,147,165,124,141,156,146,174,150,192,209,139,164,138,205,147,164,145,124,242,169,107,212,142,160,150,204,141,219,184,163,182,249,124,180,119,119,122,218,187,184,195,209,233,202,234,267,175,199,210,102,115,80,203,86,162,229,204,169,135,195,253,97,83,144,179,231,157,133,172,163,157,139,163,139,171,133,207,153,142,115,88,212,261,117,118,76,157,170,64,23,187,122,135,129,155,155,142,189,103,151,113,76,123,144,150,152,121,229,79,93,110,142,152,79,48,119,160,123,130,162,151,150,87,125,129,103,114,146,137,193,214,164,197,94,86,161,116,142,150,90,242,99,97,122,119,102,84,117,139,105,37,71,77,104,182,120,114,86,139,129,64,87,170,133,106,88,128,134,135,159,169,144,158,163,109,267,108,171,136,61,72,153,109,186,132,131,125,98,172,124,196,119,171,224,263,150,261,106,262,198,168,145,156,185,180,237,134,237,140,162,93,134,197,166,177,203,230,140,108,177,95,120,182,141,83,107,151,88,265,138,153,165,177,151,157,109,150,131,84,122,78,155,169,160,147,144,95,132,162,99,141,81,60,137,109,138,185,169,134,77,228,97,135,124,68,134,140,128,128,137,99,160,185,146,214,182,244,159,167,144,115,126,257,201,108,71,87,113,101,134,146,164,161,82,96,101,76,166,124,205,82,103,124,209,93,86,158,113,100,157,114,188,209,114,151,163,176,215,156,217,219,163,142,173,150,217,125,96,102,231,137,171,192,180,100,142,103,160,119,70,78,107,149,161,75,58,136,123,126,95,184,157,147,98,253,96,114,110,111,134,112,92,204,151,168,155,261,191,235,172,166,246,206,183,142,179,205,160,227,194,190,172,168,131,254,190,195,93,133,99,124,128,151,123,133,134,114,157,121,150,73,119,234,164,220,118,215,246,124,256,128,230,127,234,133,125,260,224,140,108,234,234,200,91,132,131,155,110,88,138,249,157,185,104,131,88,116,128,181,200,172,113,99,110,102,101,148,196,66,124,166,141,197,79,101,175,121,126,163,115,131,172,166,275,112,121,223,199,117,241,92,148,116,102,164,229,152,206,217,240,155,221,155,103,229,217,151,132,151,128,134,99,190,159,227,74,151,138,184,146,120,161,186,192,242,186,230,151,193,187,194,104,163,124,152,174,149,186,213,200,150,168,200,159,229,160,163,197,215,130,203,172,197,198,171,172,162,164,145,237,233,210,176,228,240,171,226,198,264,241,93,132,193,172,191,168,152,128,146,209,152,138,179,187,140,150,214,255,119,151,236,133,80,214,91,107,102,72,230,193,139,235,181,211,150,210,170,139,112,231,162,121,179,166,220,162,129,109,157,258,223,206,131,140,187,200,117,155,149,163,104,239,135,266,129,123,129,167,192,170,180,200,134,146,195,108,255,181,154,180,177,203,159,174,129,83,154,124,197,191,200,82,229,72,144,65,99,72,186,105,59,70,104,204,130,105,162,100,73,144,99,99,212,164,228,163,244,195,211,237,231,217,108,223,188,154,100,131,229,198,165,183,236,235,227,186,217,205,167,145,111,253,169,152,114,138,136,239,228,176,148,182,245,204,222,216,185,218,189,238,196,218,96,180,151,113,128,108,126,200,160,189,222,158,164,217,219,162,177,251,186,100,180,130,149,176,164,220,104,254,272,187,109,100,163,215,229,192,182,152,198,209,213,124,162,234,117,207,167,92,107,81,169,158,97,108,93,142,156,75,134,151,191,181,116,143,135,114,215,105,166,108,114,185,171,139,259,229,73,117,103,87,219,120,168,208,126,150,191,145,92,189,172,182,177,94,160,179,166,146,200,144,161,212,93,136,138,119,142,151,191,102,142,138,175,111,209,141,115,108,94,148,131,108,115,189,111,132,152,112,100,128,139,249,197,103,257,160,177,207,149,117,152,136,161,175,60,94,108,148,132,198,104,211,216,105,135,161,109,202,196,168,180,125,203,106,170,124,104,137,112,151,126,110,149,185,241,117,101,130,137,76,62,96,76,112,137,117,234,196,121,137,161,94,142,151,124,78,187,124,110,134,189,159,172,89,83,98,77,74,182,194,134,220,153,134,151,122,95,176,60,100,134,197,103,122,177,145,122,144,136,199,156,132,190,163,123,112,123,168,90,120,90,99,92,115,88,133,140,158,226,147,124,181,106,229,201,228,227,130,202,158,122,170,197,117,115,133,200,150,137,190,128,188,221,163,166,152,100,144,141,72,167,86,166,192,142,123,127,137,100,141,136,251,208,123,142,208,186,94,145,169,123,138,164,139,123,109,107,206,94,168,135,99,161,147,96,163,180,107,144,138,225,202,143,112,252,152,155,98,99,61,79,126,64,88,191,140,97,136,162,112,106,153,135,106,129,144,141,195,119,146,171,111,96,94,85,94,167,145,91,53,224,108,126,87,127,217,177,192,237,148,109,87,92,203,67,109,114,86,185,97,73,159,85,136,122,98,116,175,101,169,176,114,131,110,191,124,132,246,229,198,111,112,184,150,190,172,135,142,152,87,211,161,127,159,79,168,191,179,122,188,220,89,167,73,254,156,146,223,191,171,237,178,142,246,224,104,104,110,163,115,130,144,183,68,74,165,100,84,174,199,151,239,180,142,220,208,262,250,126,89,215,152,184,156,189,158,106,165,103,99,149,163,162,104,102,136,179,159,187,180,144,116,110,213,140,264,137,83,200,265,199,142,130,177,186,169,161,179,202,244,218,99,117,132,126,239,225,178,152,223,174,114,142,212,185,252,276,215,203,105,205,169,118,186,259,157,218,175,143,197,221,237,158,213,162,99,170,182,194,186,192,110,272,153,261,222,218,78,144,146,85,111,174,154,129,110,79,127,119,136,150,210,113,196,167,178,168,211,156,147,179,125,152,206,142,124,194,119,192,137,222,187,153,164,86,157,150,224,228,247,171,201,249,133,195,130,222,90,213,179,82,118,90,101,134,254,130,116,154,125,184,218,221,104,85,96,176,120,120,186,96,106,197,138,158,188,165,167,91,147,126,166,119,98,84,147,121,151,177,147,97,81,188,124,129,136,194,162,161,123,209,123,158,143,149,124,212,172,167,190,172,118,235,192,185,138,180,146,108,222,158,184,123,223,153,151,85,111,166,198,116,164,164,153,194,93,112,115,144,251,72,114,171,213,127,130,205,147,111,143,164,204,206,79,148,192,179,148,155,165,140,203,172,129,189,186,143,230,150,76,168,84,128,183,82,189,122,101,100,107,162,194,155,175,181,153,95,211,248,127,163,164,82,154,261,181,158,197,130,221,225,237,211,159,208,238,160,152,142,215,146,208,243,218,239,85,204,106,98,129,56,112,76,97,113,145,92,135,235,239,174,153,171,178,158,99,131,152,83,178,202,170,83,126,165,124,129,156,141,92,149,85,136,172,180,186,116,177,137,84,266,71,175,185,117,169,107,128,151,104,100,107,127,134,166,180,85,272,140,155,81,215,234,43,87,225,143,181,166,185,111,196,250,122,118,91,178,171,229,247,191,164,217,163,204,99,169,174,169,201,181,181,97,195,200,202,182,144,239,218,156,179,267,254,172,180,251,122,167,85,160,198,179,118,184,172,102,203,254,129,236,118,253,226,220,223,182,175,208,178,175,187,254,200,209,202,152,158,178,183,92,157,225,133,235,143,211,139,149,169,120,140,193,194,254,175,181,195,170,170,185,187,230,159,180,112,141,190,180,219,156,179,187,108,111,234,213,131,225,189,203,140,222,220,181,202,223,231,172,219,126,216,207,86,160,224,133,228,227,171,183,97,248,166,228,137,189,147,178,152,190,108,195,257,194,239,155,165,181,194,240,176,201,208,225,112,154,82,175,151,130,186,170,124,152,257,147,182,218,166,131,182,207,210,238,208,177,161,233,265,125,131,184,136,162,211,157,233,197,178,137,116,224,163,102,151,248,125,211,251,218,255,267,117,215,191,165,123,221,199,215,135,186,136,181,217,178,228,155,166,249,179,191,178,223,192,219,188,227,187,215,225,236,140,203,135,217,196,139,184,189,158,184,195,184,129,140,177,189,206,222,132,155,188,244,203,226,166,208,192,137,254,147,230,87,195,212,138,192,92,149,242,234,144,196,171,226,167,194,157,229,215,207,212,181,208,146,241,252,195,134,230,192,177,216,168,186,121,156,265,116,178,156,130,126,236,230,211,156,187,148,97,186,230,118,114,178,204,165,152,129,135,191,197,178,139,221,176,136,196,203,213,173,241,165,245,211,136,191,141,228,153,133,162,233,244,137,218,242,146,216,96,214,173,226,215,181,200,213,196,93,203,206,178,155,63,263,86,190,175,162,164,142,131,212,87,192,204,165,230,206,125,207,155,212,172,195,140,208,159,179,180,166,186,239,144,168,163,234,148,197,242,163,103,92,169,239,223,214,204,132,219,220,163,213,260,140,213,158,169,128,164,210,172,172,109,166,143,81,232,126,188,113,176,134,162,151,92,197,238,133,170,129,191,242,104,119,201,173,121,222,139,167,150,102,215,179,161,159,199,81,265,185,179,195,170,227,205,155,199,155,159,152,113,186,239,210,190,168,93,203,215,184,197,218,257,203,185,103,177,85,216,121,131,131,209,148,248,134,176,159,163,164,116,222,193,266,86,208,108,230,101,185,238,197,195,111,167,183,107,110,93,105,207,207,123,175,230,122,187,250,124,136,146,228,230,178,269,135,176,227,150,206,178,225,214,133,166,161,225,152,221,108,158,200,170,201,218,207,183,168,190,216,229,92,231,222,184,189,200,163,133,85,125,132,195,164,101,187,135,161,235,128,206,120,146,103,210,161,162,116,212,168,199,188,233,265,214,202,214,135,212,104,113,195,156,212,191,195,185,232,216,244,142,206,189,173,218,237,225,154,195,245,140,145,206,176,202,183,208,253,207,167,166,172,208,210,183,193,176,215,207,109,129,200,226,175,185,185,120,128,140,248,226,181,222,143,219,217,82,149,197,215,127,202,116,108,208,130,197,184,122,212,74,206,127,177,83,240,124,169,204,209,207,235,137,238,176,194,88,222,227,159,242,253,151,171,202,193,98,191,180,206,180,67,237,111,228,215,168,121,55,127,153,268,109,133,217,277,246,147,111,196,94,183,215,146,105,124,157,125,129,111,149,193,239,192,137,119,135,172,200,216,246,126,227,194,210,193,115,171,174,131,236,180,121,93,97,164,200,230,112,149,183,189,88,169,230,183,180,195,203,190,183,171,167,163,193,199,241,180,198,243,204,232,101,196,244,187,195,177,179,206,190,220,235,218,220,192,134,195,216,219,186,267,154,176,200,223,177,235,191,153,224,190,141,147,228,202,219,159,234,241,183,253,197,195,194,147,188,197,214,153,192,225,175,240,128,222,300,138,220,166,233,131,127,230,231,153,277,171,214,111,115,177,118,197,178,256,146,249,177,193,140,92,223,217,242,242,200,131,147,143,198,190,177,192,204,238,218,245,236,135,212,119,238,207,103,238,198,151,187,132,113,175,246,131,95,196,54,192,136,210,244,182,234,92,209,194,194,166,186,197,88,124,216,243,243,151,195,252,136,199,131,154,180,230,137,156,135,184,82,37,64,137,144,210,200,209,176,175,171,104,106,171,131,193,141,197,235,270,105,226,256,124,133,257,162,151,171,120,129,183,139,112,151,167,210,233,123,163,192,174,141,239,137,195,150,250,145,146,237,242,168,158,269,206,129,181,102,173,208,202,162,242,135,165,170,250,106,76,123,125,140,242,127,138,81,168,152,81,144,124,186,78,221,248,214,210,147,192,85,117,199,103,203,184,210,187,122,213,268,159,215,132,143,202,189,181,177,176,199,195,97,196,205,182,204,195,213,201,192,127,151,3,202,194,211,179,179,179,189,180,207,190,195,192,224,207,166,176,187,201,151,180,198,192,180,196,111,214,143,202,214,209,198,161,192,197,207,202,214,194,183,198,187,198,198,201,210,188,204,185,190,211,197,221,204,200,187,129,211,185,194,210,200,208,208,216,201,218,219,184,192,199,207,191,199,213,218,184,191,216,211,218,200,180,190,187,230,201,178,185,193,209,202,185,183,195,197,213,194,189,198,188,196,184,219,214,191,188,176,158,133,174,212,188,177,63,170,139,142,104,65,119,128,208,180,198,198,174,90,147,196,59,171,194,173,164,183,130,165,173,181,191,180,84,186,173,115,129,79,124,241,128,127,157,135,79,83,104,73,114,111,97,136,101,252,87,97,113,172,180,126,171,166,124,71,155,135,219,202,101,184,137,223,260,140,119,180,171,255,173,121,104,42,127,136,198,86,128,112,122,200,148,157,129,104,200,211,164,126,108,58,217,175,210,108,152,107,89,78,84,95,163,144,187,153,207,71,207,120,227,205,188,146,191,131,230,151,166,183,175,194,239,196,141,121,206,200,133,190,141,157,200,73,178,112,158,136,202,158,125,256,70,99,140,168,139,197,57,186,122,179,121,179,148,177,92,242,93,176,118,92,138,123,117,143,162,235,78,193,168,216,163,255,59,153,137,173,166,133,174,264,127,203,191,206,158,123,182,137,233,165,199,179,182,164,61,165,148,84,78,198,255,144,126,95,179,112,200,219,227,226,107,224,143,242,119,237,173,106,91,184,150,156,156,236,173,205,109,206,154,203,132,123,228,158,255,182,105,176,110,247,84,133,84,181,158,199,271,140,162,192,150,150,191,205,210,172,148,152,128,129,204,146,201,130,191,186,157,107,196,200,225,156,188,204,209,111,180,99,127,270,162,76,231,235,163,275,168,211,159,150,154,277,95,180,108,183,159,239,187,243,166,57,146,92,143,152,184,229,152,59,168,263,114,215,117]
|
|
|
1 |
+
[130,133,142,193,209,286,219,159,227,179,160,176,172,164,150,181,158,103,206,228,211,188,191,181,217,114,164,176,132,199,103,165,153,155,124,279,164,125,197,153,226,187,16,175,70,59,204,182,181,146]
|
index/ivf.pid.pt
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:95892641deaca90c70a9e2da29440a21259bc6ccc9f20804cd5ecbd2439b25f0
|
3 |
+
size 23256
|
index/metadata.json
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:2faf83831c0b6fbc584bfa60316628d8fd62143866d79476913ad5f352533085
|
3 |
+
size 51690
|
index/plan.json
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
"centroid_score_threshold": null,
|
9 |
"ndocs": null,
|
10 |
"load_index_with_mmap": false,
|
11 |
-
"index_path":
|
12 |
"nbits": 2,
|
13 |
"kmeans_niters": 4,
|
14 |
"resume": false,
|
@@ -31,32 +31,76 @@
|
|
31 |
"attend_to_mask_tokens": false,
|
32 |
"interaction": "colbert",
|
33 |
"dim": 128,
|
34 |
-
"doc_maxlen":
|
35 |
"mask_punctuation": true,
|
36 |
"checkpoint": "colbert-ir\/colbertv2.0",
|
37 |
"triples": null,
|
38 |
"collection": [
|
39 |
-
"
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
],
|
46 |
"queries": null,
|
47 |
"index_name": "index",
|
48 |
"overwrite": false,
|
49 |
-
"root": "\/
|
50 |
"experiment": "notebook",
|
51 |
"index_root": null,
|
52 |
-
"name": "2024-
|
53 |
"rank": 0,
|
54 |
"nranks": 1,
|
55 |
"amp": true,
|
56 |
-
"gpus":
|
57 |
},
|
58 |
-
"num_chunks":
|
59 |
-
"num_partitions":
|
60 |
-
"num_embeddings_est":
|
61 |
-
"avg_doclen_est":
|
62 |
}
|
|
|
8 |
"centroid_score_threshold": null,
|
9 |
"ndocs": null,
|
10 |
"load_index_with_mmap": false,
|
11 |
+
"index_path": "index",
|
12 |
"nbits": 2,
|
13 |
"kmeans_niters": 4,
|
14 |
"resume": false,
|
|
|
31 |
"attend_to_mask_tokens": false,
|
32 |
"interaction": "colbert",
|
33 |
"dim": 128,
|
34 |
+
"doc_maxlen": 512,
|
35 |
"mask_punctuation": true,
|
36 |
"checkpoint": "colbert-ir\/colbertv2.0",
|
37 |
"triples": null,
|
38 |
"collection": [
|
39 |
+
"This paper studies the correction of challenging authentic Finnish learner texts at beginner level (CEFR A1). Three state-of-the-art large language models are compared, and it is shown that GPT-4 outperforms GPT-3.5, which in turn outperforms Claude v1 on this task. Additionally, ensemble models based on classifiers combining outputs of multiple single models are evaluated. The highest accuracy for an ensemble model is 84.3{\\%}, whereas the best single model, which is a GPT-4 model, produces sentences that are fully correct 83.3{\\%} of the time. In general, the different models perform on a continuum, where grammatical correctness, fluency and coherence go hand in hand.",
|
40 |
+
"In recent years, large pre-trained language models (PLMs) have achieved remarkable performance on many natural language processing benchmarks. Despite their success, prior studies have shown that PLMs are vulnerable to attacks from adversarial examples. In this work, we focus on the named entity recognition task and study context-aware adversarial attack methods to examine the model{'}s robustness. Specifically, we propose perturbing the most informative words for recognizing entities to create adversarial examples and investigate different candidate replacement methods to generate natural and plausible adversarial examples. Experiments and analyses show that our methods are more effective in deceiving the model into making wrong predictions than strong baselines.",
|
41 |
+
"This paper investigates effects of noisy source texts (containing spelling and grammar errors, informal words or expressions, etc.) on human and machine translations, namely whether the noisy phenomena are kept in the translations, corrected, or caused errors. The analysed data consists of English user reviews of Amazon products translated into Croatian, Russian and Finnish by professional translators, translation students, machine translation (MT) systems, and ChatGPT language model. The results show that overall, ChatGPT and professional translators mostly correct\/standardise those parts, while students are often keeping them. Furthermore, MT systems are most prone to errors while ChatGPT is more robust, but notably less robust than human translators. Finally, some of the phenomena are particularly challenging both for MT systems and for ChatGPT, especially spelling errors and informal constructions.",
|
42 |
+
"The Stanceosaurus corpus (Zheng et al., 2022) was designed to provide high-quality, annotated, 5-way stance data extracted from Twitter, suitable for analyzing cross-cultural and cross-lingual misinformation. In the Stanceosaurus 2.0 iteration, we extend this framework to encompass Russian and Spanish. The former is of current significance due to prevalent misinformation amid escalating tensions with the West and the violent incursion into Ukraine. The latter, meanwhile, represents an enormous community that has been largely overlooked on major social media platforms. By incorporating an additional 3,874 Spanish and Russian tweets over 41 misinformation claims, our objective is to support research focused on these issues. To demonstrate the value of this data, we employed zero-shot cross-lingual transfer on multilingual BERT, yielding results on par with the initial Stanceosaurus study with a macro F1 score of 43 for both languages. This underlines the viability of stance classification as an effective tool for identifying multicultural misinformation.",
|
43 |
+
"While Bangla is considered a language with limited resources, sentiment analysis has been a subject of extensive research in the literature. Nevertheless, there is a scarcity of exploration into sentiment analysis specifically in the realm of noisy Bangla texts. In this paper, we introduce a dataset (NC-SentNoB) that we annotated manually to identify ten different types of noise found in a pre-existing sentiment analysis dataset comprising of around 15K noisy Bangla texts. At first, given an input noisy text, we identify the noise type, addressing this as a multi-label classification task. Then, we introduce baseline noise reduction methods to alleviate noise prior to conducting sentiment analysis. Finally, we assess the performance of fine-tuned sentiment analysis models with both noisy and noise-reduced texts to make comparisons. The experimental findings indicate that the noise reduction methods utilized are not satisfactory, highlighting the need for more suitable noise reduction methods in future research endeavors. We have made the implementation and dataset presented in this paper publicly available at https:\/\/github.com\/ktoufiquee\/A-Comparative-Analysis-of-Noise-Reduction-Methods-in-Sentiment-Analysis-on-Noisy-Bangla-Texts",
|
44 |
+
"Text classification is an important problem with a wide range of applications in NLP. However, naturally occurring data is imbalanced which can induce biases when training classification models. In this work, we introduce a novel contrastive learning (CL) approach to help with imbalanced text classification task. CL has an inherent structure which pushes similar data closer in embedding space and vice versa using data samples anchors. However, in traditional CL methods text embeddings are used as anchors, which are scattered over the embedding space. We propose a CL approach which learns key anchors in the form of label embeddings and uses them as anchors. This allows our approach to bring the embeddings closer to their labels in the embedding space and divide the embedding space between labels in a fairer manner. We also introduce a novel method to improve the interpretability of our approach in a multi-class classification scenario. This approach learns the inter-class relationships during training which provide insight into the model decisions. Since our approach is focused on dividing the embedding space between different labels we also experiment with hyperbolic embeddings since they have been proven successful in embedding hierarchical information. Our proposed method outperforms several state-of-the-art baselines by an average 11{\\%} F1. Our interpretable approach highlights key data relationships and our experiments with hyperbolic embeddings give us important insights for future investigations. We will release the implementation of our approach with the publication.",
|
45 |
+
"Maintenance short texts are invaluable unstructured data sources, serving as a diagnostic and prognostic window into the operational health and status of physical assets. These user-generated texts, created during routine or ad-hoc maintenance activities, offer insights into equipment performance, potential failure points, and maintenance needs. However, the use of information captured in these texts is hindered by inherent challenges: the prevalence of engineering jargon, domain-specific vernacular, random spelling errors without identifiable patterns, and the absence of standard grammatical structures. To transform these texts into accessible and analysable data, we introduce the MaintNorm dataset, the first resource specifically tailored for the lexical normalisation task of maintenance short texts. Comprising 12,000 examples, this dataset enables the efficient processing and interpretation of these texts. We demonstrate the utility of MaintNorm by training a lexical normalisation model as a sequence-to-sequence learning task with two learning objectives, namely, enhancing the quality of the texts and masking segments to obscure sensitive information to anonymise data. Our benchmark model demonstrates a universal error reduction rate of 95.8{\\%}. The dataset and benchmark outcomes are available to the public.",
|
46 |
+
"The extraction of valuable information from the vast amount of digital data available today has become increasingly important, making Named Entity Recognition models an essential component of information extraction tasks. This emphasizes the importance of understanding the factors that can compromise the performance of these models. Many studies have examined the impact of data annotation errors on NER models, leaving the broader implication of overall data quality on these models unexplored. In this work, we evaluate the robustness of three prominent NER models on datasets with varying amounts of textual noise types. The results show that as the noise in the dataset increases, model performance declines, with a minor impact for some noise types and a significant drop in performance for others. The findings of this research can be used as a foundation for building robust NER systems by enhancing dataset quality beforehand.",
|
47 |
+
"Emotion corpora are typically sampled based on keyword\/hashtag search or by asking study participants to generate textual instances. In any case, these corpora are not uniform samples representing the entirety of a domain. We hypothesize that this practice of data acquision leads to unrealistic correlations between overrepresented topics in these corpora that harm the generalizability of models. Such topic bias could lead to wrong predictions for instances like {``}I organized the service for my aunt{'}s funeral.{''} when funeral events are overpresented for instances labeled with sadness, despite the emotion of pride being more appropriate here. In this paper, we study this topic bias both from the data and the modeling perspective. We first label a set of emotion corpora automatically via topic modeling and show that emotions in fact correlate with specific topics. Further, we see that emotion classifiers are confounded by such topics. Finally, we show that the established debiasing method of adversarial correction via gradient reversal mitigates the issue. Our work points out issues with existing emotion corpora and that more representative resources are required for fair evaluation of models predicting affective concepts from text.",
|
48 |
+
"Data for the Rating Prediction (RP) sentiment analysis task such as star reviews are readily available. However, data for aspect-category sentiment analysis (ACSA) is often desired because of the fine-grained nature but are expensive to collect. In this work we present a method for learning ACSA using only RP labels. We propose Unified Sentiment Analysis (Uni-SA) to efficiently understand aspect and review sentiment in a unified manner. We propose a Distantly Supervised Pyramid Network (DSPN) to efficiently perform Aspect-Category Detection (ACD), ACSA, and OSA using only RP labels for training. We evaluate DSPN on multi-aspect review datasets in English and Chinese and find that with only star rating labels for supervision, DSPN performs comparably well to a variety of benchmark models. We also demonstrate the interpretability of DSPN{'}s outputs on reviews to show the pyramid structure inherent in document level end-to-end sentiment analysis.",
|
49 |
+
"Clarification requests are a mechanism to help solve communication problems, e.g. due to ambiguity or underspecification, in instruction-following interactions. Despite their importance, even skilful models struggle with producing or interpreting such repair acts. In this work, we test three hypotheses concerning the effects of action taking as an auxiliary task in modelling iCR policies. Contrary to initial expectations, we conclude that its contribution to learning an iCR policy is limited, but some information can still be extracted from prediction uncertainty. We present further evidence that even well-motivated, Transformer-based models fail to learn good policies for when to ask Instruction CRs (iCRs), while the task of determining what to ask about can be more successfully modelled. Considering the implications of these findings, we further discuss the shortcomings of the data-driven paradigm for learning meta-communication acts.",
|
50 |
+
"In this work, we analyze the uncertainty that is inherently present in the labels used for supervised machine learning in natural language inference (NLI). In cases where multiple annotations per instance are available, neither the majority vote nor the frequency of individual class votes is a trustworthy representation of the labeling uncertainty. We propose modeling the votes via a Bayesian mixture model to recover the data-generating process, i.e., the {``}true{''} latent classes, and thus gain insight into the class variations. This will enable a better understanding of the confusion happening during the annotation process. We also assess the stability of the proposed estimation procedure by systematically varying the numbers of i) instances and ii) labels. Thereby, we observe that few instances with many labels can predict the latent class borders reasonably well, while the estimation fails for many instances with only a few labels. This leads us to conclude that multiple labels are a crucial building block for properly analyzing label uncertainty.",
|
51 |
+
"Punctuation restoration is a crucial step after Automatic Speech Recognition (ASR) systems to enhance transcript readability and facilitate subsequent NLP tasks. Nevertheless, conventional lexical-based approaches are inadequate for solving the punctuation restoration task in Spanish, where ambiguity can be often found between unpunctuated declaratives and questions. In this study, we propose a novel hybrid acoustic-lexical punctuation restoration system for Spanish transcription, which consolidates acoustic and lexical signals through a modular process. Our experiment results show that the proposed system can effectively improve F1 score of question marks and overall punctuation restoration on both public and internal Spanish conversational datasets. Additionally, benchmark comparison against LLMs (Large Language Model) indicates the superiority of our approach in accuracy, reliability and latency. Furthermore, we demonstrate that the Word Error Rate (WER) of the ASR module also benefits from our proposed system.",
|
52 |
+
"The similarity of representations is crucial for WSD. However, a lot of information is encoded in the contextualized representations, and it is not clear which sentence context features drive this similarity and whether these features are significant to WSD. In this study, we address these questions. First, we identify the sentence context features that are responsible for the similarity of the contextualized representations of different occurrences of words. For this purpose, we conduct an explainability experiment and identify the sentence context features that lead to the formation of the clusters in word sense clustering with CWEs. Then, we provide a qualitative evaluation for assessing the significance of these features to WSD. Our results show that features that lack significance to WSD determine the similarity of the representations even when different senses of a word occur in highly diverse contexts and sentence context provides clear clues for different senses.",
|
53 |
+
"Literary language presents an ongoing challenge for Sentiment Analysis due to its complex, nuanced, and layered form of expression. It is often suggested that effective literary writing is evocative, operating beneath the surface and understating emotional expression. To explore features of implicitness in literary expression, this study takes Ernest Hemingway{'}s The Old Man and the Sea as a case for examining implicit sentiment expression. We examine sentences where automatic sentiment annotations show substantial divergences from human sentiment annotations, and probe these sentences for distinctive traits. We find that sentences where humans perceived a strong sentiment while models did not are significantly lower in arousal and higher in concreteness than sentences where humans and models were more aligned, suggesting the importance of simplicity and concreteness for implicit sentiment expression in literary prose.",
|
54 |
+
"This paper investigates the language of propaganda and its stylistic features. It presents the PPN dataset, standing for Propagandist Pseudo-News, a multisource, multilingual, multimodal dataset composed of news articles extracted from websites identified as propaganda sources by expert agencies. A limited sample from this set was randomly mixed with papers from the regular French press, and their URL masked, to conduct an annotation-experiment by humans, using 11 distinct labels. The results show that human annotators were able to reliably discriminate between the two types of press across each of the labels. We use different NLP techniques to identify the cues used by annotators, and to compare them with machine classification: first the analyzer VAGO to detect discourse vagueness and subjectivity, and then four different classifiers, two based on RoBERTa, one CATS using syntax, and one XGBoost combining syntactic and semantic features.",
|
55 |
+
"Named Entity Recognition (NER) is a key information extraction task with a long-standing tradition. While recent studies address and aim to correct annotation errors via re-labeling efforts, little is known about the sources of label variation, such as text ambiguity, annotation error, or guideline divergence. This is especially the case for high-quality datasets and beyond English CoNLL03. This paper studies disagreements in expert-annotated named entity datasets for three varieties: English, Danish, and DialectX. We show that text ambiguity and artificial guideline changes are dominant factors for diverse annotations among high-quality revisions. We survey student annotations on a subset of difficult entities and substantiate the feasibility and necessity of manifold annotations for understanding named entity ambiguities from a distributional perspective.",
|
56 |
+
"People successfully communicate in everyday situations using vague language. In particular, colour terms have no clear boundaries as to the ranges of colours they describe. We model people{'}s reasoning process in a dyadic reference game using the Rational Speech Acts (RSA) framework and probabilistic semantics, and we find that the implementation of probabilistic semantics requires a modification from pure theory to perform well on real-world data. In addition, we explore approaches to handling target disagreements in reference games, an issue that is rarely discussed in the RSA literature.",
|
57 |
+
"Large language models are increasingly deployed for high-stakes decision making, for example in financial and medical applications. In such applications, it is imperative that we be able to estimate our confidence in the answers output by a language model in order to assess risks. Although we can easily compute the probability assigned by a language model to the sequence of tokens that make up an answer, we cannot easily compute the probability of the answer itself, which could be phrased in numerous ways.While other works have engineered ways of assigning such probabilities to LLM outputs, a key problem remains: existing language models are poorly calibrated, often confident when they are wrong or unsure when they are correct. In this work, we devise a protocol called *calibration tuning* for finetuning LLMs to output calibrated probabilities. Calibration-tuned models demonstrate superior calibration performance compared to existing language models on a variety of question-answering tasks, including open-ended generation, without affecting accuracy. We further show that this ability transfers to new domains outside of the calibration-tuning train set.",
|
58 |
+
"Large language models (LLMs) have the remarkable ability to solve new tasks with just a few examples, but they need access to the right tools. Retrieval Augmented Generation (RAG) addresses this problem by retrieving a list of relevant tools for a given task. However, RAG{'}s tool retrieval step requires all the required information to be explicitly present in the query. This is a limitation, as semantic search, the widely adopted tool retrieval method, can fail when the query is incomplete or lacks context. To address this limitation, we propose Context Tuning for RAG, which employs a smart context retrieval system to fetch relevant information that improves both tool retrieval and plan generation. Our lightweight context retrieval model uses numerical, categorical, and habitual usage signals to retrieve and rank context items. Our empirical results demonstrate that context tuning significantly enhances semantic search, achieving a 3.5-fold and 1.5-fold improvement in Recall@K for context retrieval and tool retrieval tasks respectively, and resulting in an 11.6{\\%} increase in LLM-based planner accuracy. Additionally, we show that our proposed lightweight model using Reciprocal Rank Fusion (RRF) with LambdaMART outperforms GPT-4 based retrieval. Moreover, we observe context augmentation at plan generation, even after tool retrieval, reduces hallucination.",
|
59 |
+
"This work explores the effectiveness of employing Clinical BERT for Relation Extraction (RE) tasks in medical texts within an Active Learning (AL) framework. Our main objective is to optimize RE in medical texts through AL while examining the trade-offs between performance and computation time, comparing it with alternative methods like Random Forest and BiLSTM networks. Comparisons extend to feature engineering requirements, performance metrics, and considerations of annotation costs, including AL step times and annotation rates. The utilization of AL strategies aligns with our broader goal of enhancing the efficiency of relation classification models, particularly when dealing with the challenges of annotating complex medical texts in a Human-in-the-Loop (HITL) setting. The results indicate that uncertainty-based sampling achieves comparable performance with significantly fewer annotated samples across three categories of supervised learning methods, thereby reducing annotation costs for clinical and biomedical corpora. While Clinical BERT exhibits clear performance advantages across two different corpora, the trade-off involves longer computation times in interactive annotation processes. In real-world applications, where practical feasibility and timely results are crucial, optimizing this trade-off becomes imperative.",
|
60 |
+
"Large Language Models (LLMs) have taken the research field of Natural Language Processing by storm. Researchers are not only investigating their capabilities and possible applications, but also their weaknesses and how they may be exploited.This has resulted in various attacks and {``}jailbreaking{''} approaches that have gained large interest within the community.The vulnerability of LLMs to certain types of input may pose major risks regarding the real-world usage of LLMs in productive operations.We therefore investigate the relationship between a LLM{'}s uncertainty and its vulnerability to jailbreaking attacks.To this end, we focus on a probabilistic point of view of uncertainty and employ a state-of-the art open-source LLM.We investigate an attack that is based on linguistic obfuscation.Our results indicate that the model is subject to a higher level of uncertainty when confronted with manipulated prompts that aim to evade security mechanisms.This study lays the foundation for future research into the link between model uncertainty and its vulnerability to jailbreaks.",
|
61 |
+
"Automatically generated summaries can be evaluated along different dimensions, one being how faithfully the uncertainty from the source text is conveyed in the summary. We present a study on uncertainty alignment in automatic summarization, starting from a two-tier lexical and semantic categorization of linguistic expression of uncertainty, which we used to annotate source texts and automatically generate summaries. We collected a diverse dataset including news articles and personal blogs and generated summaries using GPT-4. Source texts and summaries were annotated based on our two-tier taxonomy using a markup language. The automatic annotation was refined and validated by subsequent iterations based on expert input. We propose a method to evaluate the fidelity of uncertainty transfer in text summarization. The method capitalizes on a small amount of expert annotations and on the capabilities of Large language models (LLMs) to evaluate how the uncertainty of the source text aligns with the uncertainty expressions in the summary.",
|
62 |
+
"Sequence labeling is a core task in text understanding for IE\/IR systems. Text generation models have increasingly become the go-to solution for such tasks (e.g., entity extraction and dialog slot filling). While most research has focused on the labeling accuracy, a key aspect {--} of vital practical importance {--} has slipped through the cracks: understanding model confidence. More specifically, we lack a principled understanding of how to reliably gauge the confidence of a model in its predictions for each labeled span. This paper aims to provide some empirical insights on estimating model confidence for generative sequence labeling. Most notably, we find that simply using the decoder{'}s output probabilities \\textbf{is not} the best in realizing well-calibrated confidence estimates. As verified over six public datasets of different tasks, we show that our proposed approach {--} which leverages statistics from top-$k$ predictions by a beam search {--} significantly reduces calibration errors of the predictions of a generative sequence labeling model.",
|
63 |
+
"Learning from human feedback can improve models for text generation or passage ranking, aligning them better to a user{'}s needs. Data is often collected by asking users to compare alternative outputs to a given input, which may require a large number of comparisons to learn a ranking function. The amount of comparisons needed can be reduced using Bayesian Optimisation (BO) to query the user about only the most promising candidate outputs. Previous applications of BO to text ranking relied on shallow surrogate models to learn ranking functions over candidate outputs,and were therefore unable to fine-tune rankers based on deep, pretrained language models. This paper leverages Bayesian deep learning (BDL) to adapt pretrained language models to highly specialised text ranking tasks, using BO to tune the model with a small number of pairwise preferences between candidate outputs. We apply our approach to community question answering (cQA) and extractive multi-document summarisation (MDS) with simulated noisy users, finding that our BDL approach significantly outperforms both a shallow Gaussian process model and traditional active learning with a standard deep neural network, while remaining robust to noise in the user feedback.",
|
64 |
+
"The data-centric revolution in AI has revealed the importance of high-quality training data for developing successful AI models. However, annotations are sensitive to annotator characteristics, training materials, and to the design and wording of the data collection instrument. This paper explores the impact of observation order on annotations. We find that annotators{'} judgments change based on the order in which they see observations. We use ideas from social psychology to motivate hypotheses about why this order effect occurs. We believe that insights from social science can help AI researchers improve data and model quality.",
|
65 |
+
"The highest probability sequences of most neural language generation models tend to be degenerate in some way, a problem known as the inadequacy of the mode. While many approaches to tackling particular aspects of the problem exist, such as dealing with too short sequences or excessive repetitions, explanations of why it occurs in the first place are rarer and do not agree with each other. We believe none of the existing explanations paint a complete picture. In this position paper, we want to bring light to the incredible complexity of the modelling task and the problems that generalising to previously unseen contexts bring. We argue that our desire for models to generalise to contexts it has never observed before is exactly what leads to spread of probability mass and inadequate modes. While we do not claim that adequate modes are impossible, we argue that they are not to be expected either.",
|
66 |
+
"Misinformation poses a variety of risks, such as undermining public trust and distorting factual discourse. Large Language Models (LLMs) like GPT-4 have been shown effective in mitigating misinformation, particularly in handling statements where enough context is provided. However, they struggle to assess ambiguous or context-deficient statements accurately. This work introduces a new method to resolve uncertainty in such statements. We propose a framework to categorize missing information and publish category labels for the LIAR-New dataset, which is adaptable to cross-domain content with missing information. We then leverage this framework to generate effective user queries for missing context. Compared to baselines, our method improves the rate at which generated questions are answerable by the user by 38 percentage points and classification performance by over 10 percentage points macro F1. Thus, this approach may provide a valuable component for future misinformation mitigation pipelines.",
|
67 |
+
"Researchers have raised awareness about the harms of aggregating labels especially in subjective tasks that naturally contain disagreements among human annotators. In this work we show that models that are only provided aggregated labels show low confidence on high-disagreement data instances. While previous studies consider such instances as mislabeled, we argue that the reason the high-disagreement text instances have been hard-to-learn is that the conventional aggregated models underperform in extracting useful signals from subjective tasks. Inspired by recent studies demonstrating the effectiveness of learning from raw annotations, we investigate classifying using Multiple Ground Truth (Multi-GT) approaches. Our experiments show an improvement of confidence for the high-disagreement instances.",
|
68 |
+
"Large Language Models have emerged as prime candidates to tackle misinformation mitigation. However, existing approaches struggle with hallucinations and overconfident predictions. We propose an uncertainty quantification framework that leverages both direct confidence elicitation and sampled-based consistency methods to provide better calibration for NLP misinformation mitigation solutions. We first investigate the calibration of sample-based consistency methods that exploit distinct features of consistency across sample sizes and stochastic levels. Next, we evaluate the performance and distributional shift of a robust numeric verbalization prompt across single vs. two-step confidence elicitation procedure. We also compare the performance of the same prompt with different versions of GPT and different numerical scales. Finally, we combine the sample-based consistency and verbalized methods to propose a hybrid framework that yields a better uncertainty estimation for GPT models. Overall, our work proposes novel uncertainty quantification methods that will improve the reliability of Large Language Models in misinformation mitigation applications.",
|
69 |
+
"This paper addresses the unique challenges associated with uncertainty quantification in AI models when applied to patient-facing contexts within healthcare. Unlike traditional eXplainable Artificial Intelligence (XAI) methods tailored for model developers or domain experts, additional considerations of communicating in natural language, its presentation and evaluating understandability are necessary. We identify the challenges in communication model performance, confidence, reasoning and unknown knowns using natural language in the context of risk prediction. We propose a design aimed at addressing these challenges, focusing on the specific application of in-vitro fertilisation outcome prediction.",
|
70 |
+
"In healthcare, agency refers to the ability of patients to actively participate in and control their health through collaborating with providers, informed decision-making and understanding health information. Conversational agents (CAs) are increasingly used for realizing digital health interventions, but it is still unclear how they are enhancing patient agency. This paper explores which technological components are required to enable CAs impacting on patient agency, and identifies metrics for measuring and evaluating this impact. We do this by drawing on existing work related to developing and evaluating healthcare CAs and through analysis of a concrete example of a CA. As a result, we identify five main areas where CAs enhance patient agency, namely by: improved access to health information, personalized advice, increased engagement, emotional support and reduced barriers to care. For each of these areas, specific technological functions have to be integrated into CAs such as sentiment and emotion analysis methods that allow a CA to support emotionally.",
|
71 |
+
"This position paper will analyze LLMs, the core technology of CAs, from a socio-technical and linguistic perspective in order to argue for a limitation of its use in academia, which should be reflected in a more cautious adoption of CAs in private spaces. The article describes how machine learning technologies like LLMs are inserted into a more general process of platformization (van Dijck, 2021), negatively affecting autonomy of research (Kersessens and van Dijck, 2022). Moreover, fine-tuning practices, as means to polish language models (Kasirzadeh and Gabriel, 2023) are questioned, explaining how these foster a deterministic approach to language. A leading role of universities in this general gain of awareness is strongly advocated, as institutions that support transparent and open science, in order to foster and protect democratic values in our societies.",
|
72 |
+
"This paper presents the initial steps taken to integrate language variations into conversational AI agents to enhance user engagement. The study is built upon sociolinguistic and pragmatic traditions and involves the creation of an annotation taxonomy. The taxonomy includes eleven classes, ranging from concrete to abstract, and the covered aspects are the instance itself, time, sentiment, register, state, region, type, grammar, part of speech, meaning, and language. The paper discusses the challenges of incorporating vernacular language into AI agents, the procedures for data collection, and the taxonomy organization. It also outlines the next steps, including the database expansion and the computational implementation. The authors believe that integrating language variation into conversational AI will build near-real language inventories and boost user engagement. The paper concludes by discussing the limitations and the importance of building rapport with users through their own vernacular.",
|
73 |
+
"Understanding the socio-cultural context is crucial in machine translation (MT). Although conversational AI systems and chatbots, in particular, are not designed for translation, they can be used for MT purposes. Yet, chatbots often struggle to identify any socio-cultural context during user interactions. In this paper, we highlight this challenge with real-world examples from popular chatbots. We advocate for the use of knowledge graphs as an external source of information that can potentially encapsulate socio-cultural contexts, aiding chatbots in enhancing translation. We further present a method to exploit external knowledge and extract contextual information that can significantly improve text translation, as evidenced by our interactions with these chatbots.",
|
74 |
+
"This paper investigates the appropriate responses that Conversational Agent systems (CAs) should employ when subjected to sexual harassment by users. Previous studies indicate that conventional CAs often respond neutrally or evade such requests. Enhancing the responsiveness of CAs to offensive speech is crucial, as users might carry over these interactions into their social interactions. To address this issue, we selected evaluators to compare a series of responses to sexual harassment from four commercial CAs (Amazon Alexa, Apple Siri, Google Home, and Microsoft Cortana) with alternative responses we realized based on insights from psychological and sociological studies. Focusing on CAs with a female voice, given their increased likelihood of encountering offensive language, we conducted two experiments involving 22 evaluators (11 females and 11 males). In the initial experiment, participants assessed the responses in a textual format, while the second experiment involved the evaluation of responses generated with a synthetic voice exhibiting three different intonations (angry, neutral, and assertive). Results from the first experiment revealed a general preference for the responses we formulated. For the most voted replies, female evaluators exhibited a tendency towards responses with an assertive intent, emphasizing the sexually harassing nature of the request. Conversely, male evaluators leaned towards a more neutral response, aligning with prior findings that highlight gender-based differences in the perception of sexual harassment. The second experiment underscored a preference for assertive responses. The study{'}s outcomes highlight the need to develop new, educational responses from CAs to instances of sexual harassment, aiming to discourage harmful behavior.",
|
75 |
+
"Non-referential functions of language such as setting group boundaries, identity construction and regulation of social proximity have rarely found place in the language technology creation process. Nevertheless, their importance has been postulated in literature. While multiple methods to include social information in large language models (LLM) cover group properties (gender, age, geographic relations, professional characteristics), a combination of group social characteristics and individual features of an agent (natural or artificial) play a role in social interaction but have not been studied in generated language. This article explores the orchestration of prompt engineering and retrieval-augmented generation techniques to linguistic features of social proximity and distance in language generated by an LLM. The study uses the immediacy\/distance model from literature to analyse language generated by an LLM for different recipients. This research reveals that kinship terms are almost the only way of displaying immediacy in LLM-made conversations.",
|
76 |
+
"Conversation systems accommodate diverse users with unique personalities and distinct writing styles. Within the domain of multi-turn dialogue modeling, this work studies the impact of varied utterance lengths on the quality of subsequent responses generated by conversation models. Using GPT-3 as the base model, multiple dialogue datasets, and several metrics, we conduct a thorough exploration of this aspect of conversational models. Our analysis sheds light on the complex relationship between utterance lengths and the quality of follow-up responses generated by dialogue systems. Empirical findings suggests that, for certain types of conversations, utterance lengths can be reduced by up to 72{\\%} without any noticeable difference in the quality of follow-up responses.",
|
77 |
+
"Human processing of nonlocal syntactic dependencies requires engagement of limited working memory for encoding, maintenance, and retrieval. This process creates an evolutionary pressure for language to be structured in a way that keeps the subparts of a dependency closer to each other, an efficiency principle termed dependency locality. The current study proposes that such a dependency locality pressure can be modulated by the surprisal of the antecedent, defined as the first part of a dependency, due to strategic allocation of working memory. In particular, antecedents with novel and unpredictable information are prioritized for memory encoding, receiving more robust representation against memory interference and decay, and thus are more capable of handling longer dependency length. We examine this claim by examining dependency corpora of six languages (Danish, English, Italian, Mandarin, Russian, and Spanish), with word surprisal generated from GPT-3 language model. In support of our hypothesis, we find evidence for a positive correlation between dependency length and the antecedent surprisal in most of the languages in our analyses.",
|
78 |
+
"Over 7,000 of the world{'}s 7,168 living languages are still low-resourced. This paper aims to narrow the language documentation gap by creating multiparallel dictionaries, clustered by SIL{'}s semantic domains. This task is new for machine learning and has previously been done manually by native speakers. We propose GUIDE, a language-agnostic tool that uses a GNN to create and populate semantic domain dictionaries, using seed dictionaries and Bible translations as a parallel text corpus. Our work sets a new benchmark, achieving an exemplary average precision of 60{\\%} in eight zero-shot evaluation languages and predicting an average of 2,400 dictionary entries. We share the code, model, multilingual evaluation data, and new dictionaries with the research community: https:\/\/github.com\/janetzki\/GUIDE",
|
79 |
+
"Traditional dialectology or dialect geography is the study of geographical variation of language. Originated in Europe and pioneered in Germany and France, this field has predominantly been focusing on sounds, more specifically, on segments. Similarly, quantitative approaches to language variation concerned with the phonetic level are in most cases focusing on segments as well. However, more than half of the world{'}s languages include lexical tones (Yip, 2002). Despite this, tones are still underexplored in quantitative language comparison, partly due to the low accessibility of the suitable data. This paper aims to introduce a newly digitised dataset which comes from the Yue- and Pinghua-speaking areas in Southern China, with over 100 dialects. This dataset consists of two parts: tones and segments. In this paper, we illustrate how we can computationaly model tones in order to explore linguistic variation. We have applied a tone distance metric on our data, and we have found that 1) dialects also form a continuum on the tonal level and 2) other than tonemic (inventory) and tonetic differences, dialects can also differ in the lexical distribution of tones. The availability of this dataset will hopefully enable further exploration of the role of tones in quantitative typology and NLP research.",
|
80 |
+
"Closely related languages show linguistic similarities that allow speakers of one language to understand speakers of another language without having actively learned it. Mutual intelligibility varies in degree and is typically tested in psycholinguistic experiments. To study mutual intelligibility computationally, we propose a computer-assisted method using the Linear Discriminative Learner, a computational model developed to approximate the cognitive processes by which humans learn languages, which we expand with multilingual semantic vectors and multilingual sound classes. We test the model on cognate data from German, Dutch, and English, three closely related Germanic languages. We find that our model{'}s comprehension accuracy depends on 1) the automatic trimming of inflections and 2) the language pair for which comprehension is tested. Our multilingual modelling approach does not only offer new methodological findings for automatic testing of mutual intelligibility across languages but also extends the use of Linear Discriminative Learning to multilingual settings.",
|
81 |
+
"Please find the attached PDF file for the extended abstract of our study.",
|
82 |
+
"State-of-the-art (SotA) Natural Language Processing (NLP) technology faces significant challenges with constructions that contain ellipses. Although theoretically well-documented and understood, there needs to be more sufficient cross-linguistic language resources to document, study, and ultimately engineer NLP solutions that can adequately provide analyses for ellipsis constructions. This article describes the typological data set on ellipsis that we created for currently seventeen languages. We demonstrate how SotA parsers based on a variety of syntactic frameworks fail to parse sentences with ellipsis, and in fact, probabilistic, neural, and Large Language Models (LLM) do so, too. We demonstrate experiments that focus on detecting sentences with ellipsis, predicting the position of elided elements, and predicting elided surface forms in the appropriate positions. We show that cross-linguistic variation of ellipsis-related phenomena has different consequences for the architecture of NLP systems.",
|
83 |
+
"LAJaR (Language Atlas of Japanese and Ryukyuan) is a linguistic typology database focusing on micro-variation of the Japonic (Japanese and Ryukyuan) languages. This paper aims to report the design and progress of this ongoing database project. Finally, we also show a case study utilizing its database on zero copulas among the Japonic languages.",
|
84 |
+
"This paper lays the groundwork for initiating research into Source Language Identification; the task of identifying the original language of a machine-translated text. We contribute a dataset of translations from a typologically diverse spectrum of languages into English and use it to set initial baselines for this novel task.",
|
85 |
+
"Emotion classification is a challenging task in NLP due to the inherent idiosyncratic and subjective nature of linguistic expression,especially with code-mixed data. Pre-trained language models (PLMs) have achieved high performance for many tasks and languages, but it remains to be seen whether these models learn and are robust to the differences in emotional expression across languages. Sociolinguistic studies have shown that Hinglish speakers switch to Hindi when expressing negative emotions and to English when expressing positive emotions. To understand if language models can learn these associations, we study the effect of language on emotion prediction across 3 PLMs on a Hinglish emotion classification dataset. Using LIME and token level language ID, we find that models do learn these associations between language choice and emotional expression. Moreover, having code-mixed data present in the pre-training can augment that learning when task-specific data is scarce. We also conclude from the misclassifications that the models may overgeneralise this heuristic to other infrequent examples where this sociolinguistic phenomenon does not apply.",
|
86 |
+
"In order to draw generalizable conclusions about the performance of multilingual models across languages, it is important to evaluate on a set of languages that captures linguistic diversity.Linguistic typology is increasingly used to justify language selection, inspired by language sampling in linguistics.However, justifications for {`}typological diversity{'} exhibit great variation, as there seems to be no set definition, methodology or consistent link to linguistic typology.In this work, we provide a systematic insight into how previous work in the ACL Anthology uses the term {`}typological diversity{'}.Our two main findings are: 1) what is meant by typologically diverse language selection is not consistent and 2) the actual typological diversity of the language sets in these papers varies greatly.We argue that, when making claims about {`}typological diversity{'}, an operationalization of this should be included.A systematic approach that quantifies this claim, also with respect to the number of languages used, would be even better.",
|
87 |
+
"In traditional studies on language evolution, scholars often emphasize the importance of sound laws and sound correspondences for phylogenetic inference of language family trees. However, to date, computational approaches have typically not taken this potential into account. Most computational studies still rely on lexical cognates as major data source for phylogenetic reconstruction in linguistics, although there do exist a few studies in which authors praise the benefits of comparing words at the level of sound sequences. Building on (a) ten diverse datasets from different language families, and (b) state-of-the-art methods for automated cognate and sound correspondence detection, we test, for the first time, the performance of sound-based versus cognate-based approaches to phylogenetic reconstruction. Our results show that phylogenies reconstructed from lexical cognates are topologically closer, by approximately one third with respect to the generalized quartet distance on average, to the gold standard phylogenies than phylogenies reconstructed from sound correspondences.",
|
88 |
+
"In Universal Dependencies, compounds, which we understand as words containing two or more roots, are represented according to tokenization, which reflects the orthographic conventions of the language. A closed compound (e.g. $\\textit{waterfall}$) corresponds to a single word in Universal Dependencies while a hyphenated compound ($\\textit{father-in-law}$) and an open compound ($\\textit{apple pie}$) to multiple words. The aim of this paper is to open a discussion on how to move towards a more consistent annotation of compounds.The solution we argue for is to represent the internal structure of all compound types analogously to syntactic phrases, which would not only increase the comparability of compounding within and across languages, but also allow comparisons of compounds and syntactic phrases."
|
89 |
],
|
90 |
"queries": null,
|
91 |
"index_name": "index",
|
92 |
"overwrite": false,
|
93 |
+
"root": "\/Users\/dhei\/personal\/4440\/project\/colbert-acl\/src\/experiments",
|
94 |
"experiment": "notebook",
|
95 |
"index_root": null,
|
96 |
+
"name": "2024-08\/11\/14.16.31",
|
97 |
"rank": 0,
|
98 |
"nranks": 1,
|
99 |
"amp": true,
|
100 |
+
"gpus": 0
|
101 |
},
|
102 |
+
"num_chunks": 1,
|
103 |
+
"num_partitions": 1024,
|
104 |
+
"num_embeddings_est": 8412.000274658203,
|
105 |
+
"avg_doclen_est": 168.24000549316406
|
106 |
}
|
index_large/0.codes.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:ae6248edf605d9128d52ee35e162e010a94275ca6ea37081a8e2a97c01b40964
|
3 |
+
size 17653803
|
index_large/0.metadata.json
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"passage_offset": 0,
|
3 |
+
"num_passages": 25000,
|
4 |
+
"num_embeddings": 4413267,
|
5 |
+
"embedding_offset": 0
|
6 |
+
}
|
index_large/0.residuals.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:388885aa33f8315c7ac7114166213019278f088a1589c0095fe29cff939eabb0
|
3 |
+
size 141225271
|
{index → index_large}/1.codes.pt
RENAMED
File without changes
|
{index → index_large}/1.metadata.json
RENAMED
File without changes
|
{index → index_large}/1.residuals.pt
RENAMED
File without changes
|
index_large/avg_residual.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:bc306a2c8195418734c88c2f7b26e15e054ce3c8d82914ad7361b3054f0c4410
|
3 |
+
size 762
|
index_large/buckets.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:42ef6b6af1107346dedd5bc12d11334b85ce5ceae552da9a011a4eb57644bfb7
|
3 |
+
size 999
|
index_large/centroids.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9f5ac6729a1a621a31b10219239ffca14cc2facf754c727d86893664d1604f4d
|
3 |
+
size 8389361
|
index_large/doclens.0.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
[12,35,132,226,189,156,12,114,101,35,52,53,216,15,34,166,51,94,191,123,123,108,159,19,125,137,250,151,178,133,94,142,113,170,185,263,154,122,177,169,90,171,154,172,198,152,131,149,158,66,108,106,174,176,183,128,90,96,167,190,94,136,205,152,135,126,118,81,153,83,121,125,126,217,159,190,248,151,164,87,158,95,109,134,170,243,137,79,138,194,150,243,169,136,194,189,246,254,148,210,199,235,177,211,199,146,265,167,161,147,135,125,218,161,54,60,168,228,186,140,96,135,122,100,130,132,198,221,139,181,268,189,92,72,241,165,182,240,74,153,216,169,188,174,128,167,150,145,111,205,103,154,182,154,163,191,60,171,115,205,171,128,198,132,189,233,222,206,191,196,148,114,257,196,149,171,179,130,136,186,249,185,231,112,170,146,237,185,219,178,141,209,143,184,200,76,174,141,126,107,225,148,236,232,137,189,173,200,110,151,121,124,192,161,151,101,144,182,168,149,212,223,235,127,213,246,164,118,147,79,180,174,81,216,149,142,236,164,142,168,123,248,148,106,151,139,196,150,136,125,141,111,104,113,172,187,145,169,244,106,121,140,118,124,183,169,129,128,126,102,228,225,178,135,228,127,183,115,226,129,134,91,212,137,159,209,110,134,223,174,187,230,183,125,223,194,223,211,162,192,192,115,135,203,117,180,173,186,170,189,141,119,135,107,185,192,88,152,230,218,214,106,214,246,132,232,162,211,178,252,166,256,195,243,156,221,226,208,108,109,117,204,195,205,194,237,216,183,184,165,194,170,233,175,129,201,147,191,194,234,157,169,218,140,201,132,192,253,165,252,225,173,108,130,185,211,154,194,155,209,141,200,172,195,214,189,226,206,177,220,92,144,163,146,169,226,256,212,245,211,166,177,203,202,212,176,166,247,128,137,168,167,219,175,193,161,233,180,127,216,146,157,190,228,132,181,123,168,160,189,140,167,150,194,227,247,173,194,250,128,188,90,146,159,119,172,201,218,175,92,235,172,144,130,126,82,152,181,106,105,270,194,198,127,132,106,73,194,240,248,240,250,155,240,198,118,178,160,112,264,157,254,117,129,143,123,175,163,110,163,127,165,181,93,92,151,113,117,253,236,143,177,186,181,225,156,180,248,217,187,158,174,130,113,145,205,117,153,143,201,110,224,173,187,238,140,213,175,159,141,126,225,155,175,124,206,144,164,137,126,181,136,168,181,157,136,159,134,127,173,207,232,171,123,129,169,134,209,213,161,123,108,203,115,195,98,164,254,152,116,238,203,248,223,167,168,124,66,120,87,144,152,62,160,139,213,211,119,135,169,163,130,144,154,76,119,161,98,213,163,157,81,146,142,161,136,124,115,136,145,146,146,182,227,120,112,87,176,135,157,113,89,59,92,93,112,222,160,125,153,218,195,85,131,205,140,220,120,190,235,149,108,174,105,178,119,177,215,121,203,168,139,139,171,151,192,172,156,165,219,147,102,158,102,148,157,143,126,179,182,141,190,135,163,121,190,124,157,150,261,114,70,103,111,95,183,131,125,243,201,210,121,118,91,148,181,119,247,105,192,146,187,137,124,141,211,209,129,170,90,133,132,129,182,248,105,195,43,223,188,251,194,113,145,154,110,198,88,86,154,149,107,99,146,160,146,127,142,167,226,105,162,111,164,173,176,139,164,232,218,121,133,153,194,84,171,107,208,126,133,196,203,242,133,99,138,183,125,217,97,143,214,104,257,269,225,136,215,34,191,136,143,230,149,189,131,233,166,54,130,132,201,199,128,108,155,71,208,197,110,234,198,180,127,161,66,156,118,134,130,129,161,128,110,143,118,139,119,109,177,239,161,98,164,90,165,129,242,175,162,138,230,241,174,108,223,122,204,86,151,150,195,187,252,120,129,78,165,186,134,76,109,201,184,206,131,177,125,106,124,135,125,207,88,109,138,181,102,149,94,190,143,102,254,136,179,247,183,117,152,269,217,124,166,179,210,257,155,80,185,118,139,116,170,104,152,141,159,138,132,92,219,158,207,188,220,188,169,155,228,137,144,151,217,117,147,179,210,228,250,171,155,187,135,179,124,161,238,268,223,161,207,147,178,175,171,179,241,165,202,236,149,171,252,185,142,206,124,207,174,103,223,241,189,111,89,165,184,211,141,159,185,153,168,221,150,222,139,143,96,150,251,184,152,161,161,262,235,182,272,242,176,108,159,174,135,185,187,157,71,189,156,188,106,132,266,227,137,234,178,158,86,108,96,171,211,170,122,187,170,134,222,183,135,69,149,83,143,197,161,158,211,166,101,123,190,121,175,183,187,195,161,143,91,222,166,168,238,207,90,183,131,239,207,201,173,229,144,101,161,105,165,254,149,225,163,167,175,193,134,196,157,225,197,207,121,193,183,170,85,85,231,111,126,264,169,176,183,252,107,228,243,217,149,179,171,213,198,207,233,158,45,122,155,157,125,121,216,198,169,114,150,144,121,207,136,103,179,123,143,153,108,154,82,132,123,221,165,161,105,152,175,140,157,80,97,132,87,150,132,172,139,165,106,90,172,99,194,142,118,146,131,98,163,160,154,126,179,131,200,240,142,73,113,118,179,129,77,189,157,52,130,144,236,177,148,81,120,104,140,226,149,168,126,113,135,143,160,118,250,190,207,208,222,104,245,259,223,147,149,194,138,232,133,168,164,83,99,158,163,235,242,164,132,128,185,85,112,203,254,257,241,122,125,3,147,80,246,244,225,182,141,72,61,181,157,187,208,104,189,220,199,154,163,228,180,126,198,103,126,80,201,210,61,232,180,102,131,113,158,94,125,232,110,202,146,146,187,163,202,235,163,168,159,139,155,167,265,156,165,255,230,147,215,136,221,91,211,107,177,148,201,136,237,139,177,187,250,225,244,253,205,167,258,245,229,148,159,156,224,121,76,209,201,193,219,131,211,172,145,148,118,131,106,145,244,139,97,131,65,84,203,132,159,128,118,128,250,210,232,250,212,129,223,258,252,167,246,249,198,269,111,253,105,129,207,211,174,187,138,127,207,119,256,84,200,192,224,166,123,208,199,191,163,105,176,152,199,161,243,236,243,153,245,170,236,133,99,179,159,203,160,113,171,107,130,140,263,99,202,184,155,136,75,247,71,120,206,194,179,189,208,169,208,145,230,246,131,168,176,150,134,145,211,114,178,137,140,158,213,153,182,170,108,198,175,172,139,191,148,202,125,155,204,138,210,133,130,119,177,130,165,170,139,175,63,156,190,224,228,162,252,239,244,247,245,147,198,154,213,177,112,200,172,221,147,213,97,159,200,253,80,99,127,71,192,191,140,144,148,98,118,146,164,204,90,135,199,189,185,145,106,132,131,115,120,135,163,180,119,163,145,93,198,174,187,160,186,138,70,183,257,166,76,140,230,109,188,102,158,120,195,151,183,185,179,209,181,146,164,189,195,183,131,187,189,161,188,190,188,186,184,208,201,179,200,189,187,194,203,206,190,138,215,136,170,159,188,192,208,168,192,196,197,214,186,197,197,180,195,200,183,188,196,215,183,191,193,199,195,193,113,164,184,190,108,197,197,188,199,191,205,179,205,184,208,193,201,189,179,211,95,75,190,208,162,206,201,123,149,181,182,180,183,205,193,192,191,196,193,204,212,188,191,108,176,141,199,199,200,177,212,202,86,198,209,181,153,145,201,185,175,178,195,110,102,77,243,215,206,188,158,121,155,185,192,210,185,117,153,139,163,175,213,167,201,161,254,248,197,160,123,126,233,233,141,163,72,174,149,153,129,190,155,123,109,138,214,139,92,228,215,140,212,221,201,234,150,103,147,139,154,142,105,104,244,187,133,140,188,114,217,125,147,148,119,176,125,115,151,142,145,218,215,161,150,181,165,150,73,151,156,75,99,155,211,179,206,165,119,158,92,135,203,148,182,135,108,166,65,265,139,121,110,195,251,185,193,208,197,176,229,205,193,177,146,242,170,194,114,120,260,162,235,233,242,151,96,246,237,142,128,174,122,203,159,170,164,116,165,193,133,140,74,123,113,119,102,203,188,70,165,241,117,68,190,172,173,232,50,172,98,115,211,185,102,135,119,180,182,179,201,155,77,216,126,107,155,87,148,161,254,179,171,133,155,231,146,99,134,166,197,150,104,79,162,99,236,95,79,121,187,154,194,130,153,145,151,240,193,109,110,207,266,139,200,128,111,141,217,200,117,81,134,166,105,152,123,128,146,105,183,222,246,190,125,222,116,208,200,163,111,256,190,212,114,135,191,172,160,250,163,236,170,191,228,201,190,262,135,140,155,167,244,257,172,206,156,179,170,246,162,185,156,178,167,242,154,204,247,259,201,218,185,202,186,248,147,229,124,209,148,199,191,161,253,247,195,212,258,215,159,143,161,196,208,157,215,251,172,157,204,197,219,156,246,196,185,157,242,239,175,240,190,236,195,252,222,184,168,156,248,218,206,179,251,173,177,250,202,161,211,269,137,211,180,170,200,228,180,172,161,228,168,190,254,246,148,150,157,167,247,224,144,191,197,86,234,169,223,203,244,231,240,193,224,201,217,247,160,150,179,260,187,209,171,242,203,211,240,171,239,213,124,230,173,188,192,253,228,215,146,80,195,234,192,254,175,165,188,139,231,253,261,208,109,237,171,103,182,213,171,228,174,202,144,241,214,168,214,228,217,184,146,232,201,177,207,144,224,204,154,249,232,208,146,209,231,115,200,212,190,167,243,159,255,149,192,140,245,233,200,157,254,117,250,161,160,142,143,216,172,203,226,169,253,191,224,229,200,170,149,142,169,145,154,221,255,159,211,265,219,178,237,199,182,239,248,234,140,174,201,212,197,193,175,166,205,183,217,230,228,179,128,163,187,218,247,211,166,213,161,249,181,261,209,116,203,222,212,220,177,172,211,188,185,210,201,228,240,261,220,264,134,191,211,180,111,213,241,148,171,241,122,196,226,259,204,192,226,201,145,138,223,223,157,160,247,195,148,215,133,255,238,235,193,238,137,153,214,149,220,178,222,251,193,148,125,137,128,218,171,190,178,203,242,187,193,177,185,210,178,158,203,200,177,240,240,133,223,180,199,206,170,209,213,127,187,250,242,241,158,214,181,160,234,180,254,203,192,253,248,228,162,160,200,179,148,195,213,163,204,230,174,115,190,168,178,218,121,229,196,193,221,216,213,209,214,236,265,201,235,254,235,193,246,225,133,202,157,215,148,228,161,207,192,203,140,208,175,146,138,232,142,230,178,233,169,199,201,253,178,257,214,176,180,169,158,235,187,197,193,198,229,186,240,249,176,192,197,170,184,227,174,233,137,220,216,209,168,168,249,158,175,262,238,115,191,210,194,213,220,127,251,168,177,182,206,208,165,202,154,199,140,189,215,161,225,214,222,221,202,145,256,184,201,216,214,186,211,147,210,216,172,192,221,151,213,245,225,173,189,221,188,170,242,218,217,165,174,177,210,176,158,158,257,190,186,157,252,195,245,145,263,189,193,222,203,143,236,228,224,218,140,97,245,202,154,197,246,202,244,187,206,238,184,196,214,200,114,153,199,105,194,144,195,262,195,217,181,260,159,207,189,209,154,153,173,158,239,245,224,247,261,239,141,170,184,145,241,228,248,207,201,165,242,175,189,209,200,205,178,161,172,175,210,193,252,189,143,161,163,157,183,130,111,221,209,155,206,178,160,204,178,213,228,236,250,183,227,192,233,243,217,193,246,229,218,192,248,227,156,254,245,189,249,168,137,188,250,163,191,234,239,254,221,226,194,191,201,205,196,162,214,132,175,190,168,241,195,186,190,149,208,196,146,253,189,198,250,174,185,174,180,206,245,157,221,188,202,201,249,191,125,166,227,213,205,169,159,191,193,161,155,138,148,225,167,254,173,183,229,229,257,166,234,167,199,230,139,178,192,257,215,213,155,208,133,175,166,212,206,237,151,162,241,215,188,218,143,197,231,241,159,249,203,167,198,254,194,175,263,187,154,145,240,164,183,153,197,201,195,246,232,125,211,128,186,109,267,178,207,182,189,219,222,140,219,215,215,211,128,267,159,189,168,102,225,169,207,156,213,212,218,234,195,247,188,201,245,134,202,258,215,147,185,173,212,247,191,120,183,161,158,244,214,241,221,134,218,138,155,248,248,215,131,175,131,231,214,170,167,182,230,150,221,180,128,174,214,200,250,208,172,265,161,224,186,199,127,161,184,182,144,170,187,201,246,165,256,187,189,218,263,153,266,199,199,136,213,159,165,162,184,220,204,217,145,217,135,173,210,135,222,234,226,237,164,174,256,174,231,171,197,158,215,215,258,155,191,227,261,258,205,173,181,162,202,187,140,202,180,207,209,185,176,206,193,212,138,239,173,195,203,131,198,197,181,253,106,174,178,172,162,244,204,222,136,176,253,212,256,168,229,139,160,177,94,192,212,155,166,236,189,173,214,177,155,229,245,157,249,204,214,182,180,233,170,236,185,194,211,210,188,191,198,182,216,233,235,222,248,238,218,211,155,174,234,234,226,148,203,226,139,122,155,210,177,235,182,245,217,233,172,216,139,257,184,156,226,234,228,145,150,192,177,161,181,210,170,207,142,168,225,170,260,125,264,250,170,156,163,171,150,193,188,191,209,203,156,266,204,201,182,158,194,181,186,250,206,242,136,188,149,102,155,205,161,117,204,176,193,210,119,173,148,191,163,226,155,174,234,115,233,184,172,195,141,187,175,184,228,163,114,174,218,152,221,218,121,190,151,195,3,161,166,156,182,208,141,196,168,130,197,259,189,228,248,188,158,172,182,235,187,200,176,194,209,200,245,239,157,173,226,158,213,223,257,175,179,231,169,178,134,249,185,185,216,186,232,206,263,183,145,213,198,277,172,167,172,145,165,185,159,246,203,176,219,169,177,187,118,196,215,227,236,106,197,210,193,266,181,194,161,182,160,176,185,215,250,153,180,212,184,119,130,185,199,152,198,211,115,203,132,180,177,257,243,229,145,225,164,179,217,177,166,152,200,163,204,244,149,193,146,178,152,164,174,157,190,222,248,154,264,162,170,248,131,206,154,193,159,264,229,237,200,260,197,215,136,97,127,117,151,174,158,145,129,182,189,256,154,199,234,153,245,222,226,191,260,248,151,171,176,231,172,174,259,182,165,241,266,209,264,243,212,186,251,194,143,250,117,171,182,130,210,230,209,130,190,237,217,149,224,253,138,139,226,231,191,192,228,210,232,138,180,111,226,224,144,207,147,158,187,183,221,86,183,153,214,214,182,207,180,213,191,166,212,150,165,190,195,228,186,118,258,150,213,236,213,148,189,214,224,223,203,231,176,188,206,211,228,166,173,207,207,257,219,159,248,114,119,199,165,247,163,216,221,159,188,255,224,247,132,144,184,177,198,204,197,243,180,250,190,243,239,183,168,167,183,209,228,235,228,138,150,169,210,189,170,174,165,169,181,191,254,184,180,239,239,255,233,227,209,238,109,173,160,248,185,225,151,144,173,169,94,213,175,185,106,156,203,194,261,210,186,220,251,163,220,214,178,223,163,226,204,168,172,197,220,252,181,162,187,135,217,177,153,190,167,239,149,187,148,186,199,185,215,209,179,265,229,176,203,219,265,161,270,259,161,220,165,131,199,161,123,144,185,237,203,253,237,194,210,229,184,190,240,181,207,233,200,182,263,176,176,218,194,180,180,169,241,209,257,109,218,154,228,225,218,129,97,209,131,200,187,214,214,163,187,168,156,170,174,91,199,179,233,191,248,208,199,213,239,143,157,187,224,169,165,182,159,177,255,230,264,195,113,159,114,172,255,224,254,238,192,265,188,191,223,229,225,147,192,259,227,239,199,241,230,172,208,230,222,171,237,251,229,189,179,213,256,256,167,156,186,199,210,197,174,203,228,196,184,179,197,144,139,237,198,106,197,201,167,109,155,158,166,259,244,245,165,122,125,175,200,104,218,239,198,241,151,257,259,210,222,238,177,221,226,176,167,228,229,209,164,161,159,165,230,232,165,130,255,195,182,153,178,198,269,195,190,172,170,168,183,225,193,168,156,172,150,216,221,160,142,218,232,124,225,205,234,153,228,190,257,198,166,166,138,259,178,173,239,169,137,264,243,152,182,120,178,223,188,188,193,167,140,256,259,114,155,156,129,196,191,166,156,247,159,196,194,203,224,234,114,239,196,114,220,193,228,220,198,249,181,214,203,199,179,216,198,208,202,166,167,252,255,173,176,235,258,240,155,182,219,211,216,207,111,244,238,140,182,214,238,152,202,180,226,156,229,185,185,241,189,235,205,190,189,129,175,185,116,151,222,215,146,230,176,183,141,212,213,255,223,249,184,198,175,230,120,238,241,154,205,189,162,223,247,179,145,260,197,247,243,213,141,144,189,249,160,213,231,237,226,208,230,220,217,241,169,166,178,227,178,163,182,230,118,130,139,204,180,207,190,186,173,137,222,220,150,239,196,222,232,163,202,220,197,222,213,128,175,190,250,131,127,261,179,168,235,211,261,137,125,192,244,197,151,149,194,187,181,175,138,219,167,159,162,116,252,148,204,168,133,203,126,174,188,183,156,192,179,250,230,264,179,179,162,172,117,252,181,218,187,199,192,166,238,221,178,241,226,106,234,158,240,255,237,188,118,150,178,178,97,212,195,248,182,184,177,203,262,175,195,150,196,219,265,254,187,164,148,213,139,170,195,175,203,179,217,149,275,188,194,188,212,216,167,165,209,201,211,149,211,185,129,203,198,129,164,176,242,126,255,171,221,229,174,236,193,182,136,163,176,180,197,171,196,252,172,178,207,141,213,200,217,249,182,176,147,166,205,173,179,205,243,144,233,198,249,191,200,202,212,172,250,234,262,230,135,165,160,133,163,209,208,229,195,184,181,152,215,225,177,195,227,139,193,171,189,214,243,242,189,214,141,226,233,193,249,140,177,160,175,223,152,249,106,138,207,190,237,197,235,181,220,226,238,241,218,138,144,158,187,253,173,210,165,194,248,190,180,155,175,200,231,119,126,124,158,226,271,169,257,250,187,216,170,168,209,148,156,197,162,175,248,187,261,139,245,250,149,174,174,240,192,147,248,159,178,170,177,116,162,254,183,175,236,135,140,167,151,167,235,143,149,191,137,117,119,160,241,271,101,225,179,210,145,210,132,217,124,219,261,207,101,162,229,191,228,266,113,123,106,239,213,223,127,139,118,242,89,244,236,187,258,253,161,182,245,140,188,177,205,179,260,226,179,148,202,205,230,199,223,248,202,208,234,192,260,240,217,89,185,186,204,171,209,193,262,199,240,165,216,259,182,211,169,169,249,248,169,219,213,167,174,219,228,170,141,200,217,202,208,194,161,192,240,194,196,147,151,205,250,166,175,203,161,213,224,171,160,231,124,209,144,201,205,232,220,205,205,208,171,153,174,243,202,136,215,169,200,145,159,242,241,143,245,239,194,185,243,266,185,123,190,235,227,155,240,207,234,136,153,196,252,193,160,239,217,191,165,242,96,232,212,181,222,243,203,223,262,229,193,224,175,192,158,209,196,206,186,243,152,144,149,214,240,226,239,237,192,237,227,128,248,170,244,233,199,161,183,198,142,194,180,133,190,201,234,175,201,188,251,230,182,164,206,222,157,200,200,242,241,228,116,238,204,222,184,243,183,220,169,247,244,199,164,181,193,137,200,221,243,213,217,215,169,242,242,225,180,217,236,153,193,210,169,156,134,251,189,207,231,262,266,180,228,154,122,197,198,263,248,208,175,131,261,200,214,251,206,215,195,226,168,189,268,178,161,237,234,246,229,203,220,218,204,259,190,205,246,218,230,219,193,136,142,157,182,247,144,171,162,189,198,211,198,129,195,145,197,209,175,209,199,186,202,179,212,217,225,208,129,212,134,224,161,250,236,174,172,213,181,140,174,178,173,245,173,222,233,219,190,244,148,191,214,258,262,209,192,200,217,233,217,165,175,227,205,229,203,187,204,260,189,252,192,105,178,215,183,184,198,165,195,178,207,254,211,224,179,203,191,174,209,180,172,199,168,198,145,201,125,255,229,189,168,172,166,138,183,213,231,169,163,223,174,248,120,136,209,189,177,259,195,212,193,157,237,190,183,208,211,165,187,196,213,169,163,158,142,169,234,204,250,232,166,193,185,200,127,232,193,126,186,151,205,191,222,176,176,211,131,199,233,237,193,258,193,207,262,220,230,161,190,243,228,170,197,215,183,206,262,171,163,230,160,139,105,229,210,181,166,227,178,238,187,254,169,175,242,228,218,229,168,276,160,160,211,251,248,212,117,241,194,274,243,183,217,232,189,203,248,204,230,233,159,251,216,210,139,195,160,224,193,204,210,182,220,196,145,248,148,231,267,234,195,186,193,229,87,150,163,207,242,244,238,227,245,184,218,208,216,200,247,219,206,246,192,189,206,190,245,270,225,181,148,216,217,213,163,133,242,246,225,255,97,126,190,251,199,255,172,86,215,186,131,173,134,263,200,207,235,211,178,143,120,254,176,235,244,180,159,246,205,157,194,158,204,158,275,202,160,159,264,189,222,184,238,254,258,245,207,189,205,167,197,124,252,181,223,193,211,170,224,187,242,113,205,231,180,246,174,244,190,218,241,228,124,143,194,260,183,171,249,151,187,185,225,256,196,147,142,218,151,97,153,193,216,205,197,165,245,217,229,219,223,155,163,222,195,227,216,189,147,242,161,180,197,210,257,182,207,195,149,189,222,245,255,180,185,241,225,153,205,251,142,163,242,212,180,221,188,179,128,144,151,164,152,155,237,157,196,209,244,220,228,241,140,178,184,202,220,202,194,222,143,173,224,149,165,221,189,258,254,183,247,186,119,160,240,184,196,151,164,182,145,180,169,196,221,167,174,91,238,240,138,150,243,181,183,247,258,220,232,227,240,228,155,219,250,211,185,190,172,139,162,162,200,152,177,199,182,176,201,217,160,148,181,177,201,230,173,219,246,197,223,225,153,233,261,224,237,160,188,249,209,178,162,151,268,227,154,178,196,169,200,221,275,179,151,215,217,208,176,178,178,215,182,149,221,127,201,149,210,197,170,242,212,174,199,196,193,226,182,204,164,248,142,111,203,234,218,164,173,166,229,244,195,259,226,192,161,234,172,207,238,207,119,166,151,190,245,235,155,228,221,250,183,209,171,207,243,155,210,242,132,142,221,221,263,242,238,161,187,165,163,216,174,202,226,154,171,168,127,230,149,172,240,205,203,185,245,203,210,136,190,233,162,167,236,218,190,184,215,201,138,199,209,204,224,223,195,197,211,245,175,237,184,190,150,155,189,257,176,264,221,185,134,247,169,217,138,231,194,175,169,127,152,240,192,203,234,171,207,145,150,207,171,161,147,196,127,226,255,191,115,241,205,175,230,208,209,261,167,241,237,192,140,170,199,215,160,230,191,196,146,120,152,251,178,251,245,179,224,170,137,140,172,217,215,199,229,213,170,187,93,149,164,254,211,207,111,159,142,168,144,190,163,125,231,228,121,143,134,262,125,187,178,141,194,170,158,221,226,220,157,212,155,188,249,189,219,194,208,262,176,172,205,254,186,210,203,183,222,130,168,226,208,171,203,238,261,109,189,210,155,207,242,191,138,166,237,185,194,149,160,205,254,156,178,131,157,240,202,215,179,113,229,116,162,189,186,244,152,216,188,176,223,225,142,184,136,266,196,141,169,191,140,136,152,176,233,244,180,212,147,203,146,208,189,173,149,259,147,228,190,174,207,224,194,238,144,167,168,167,232,171,136,189,162,124,108,182,144,180,95,171,196,255,99,170,188,214,134,209,265,183,255,162,190,133,245,139,197,136,255,138,173,221,162,161,226,164,176,177,205,249,152,237,260,174,154,156,118,181,190,158,180,192,206,179,117,135,159,127,194,156,201,165,191,242,147,157,218,139,177,110,134,191,152,174,185,111,232,131,120,263,164,143,122,182,106,128,94,124,69,61,95,121,45,68,101,111,109,75,77,43,127,64,106,207,133,202,112,141,83,210,173,206,207,145,131,148,172,133,228,150,153,166,225,177,133,207,232,172,257,218,168,174,246,143,213,206,175,266,119,216,177,204,151,252,138,195,198,137,113,199,202,199,217,150,205,219,223,190,223,189,174,182,164,198,126,232,204,183,144,151,206,169,204,231,127,182,176,169,221,200,147,154,127,266,139,173,234,252,228,129,125,167,143,158,178,169,216,167,232,214,180,206,150,184,147,192,164,258,110,192,190,216,177,138,164,202,153,176,235,167,167,172,135,192,237,192,104,239,141,193,196,211,117,71,171,226,223,204,75,157,199,205,136,160,158,248,184,198,215,151,185,259,214,157,214,109,144,175,209,240,152,204,138,193,234,217,252,208,170,192,201,198,220,87,230,207,153,245,196,142,217,230,149,152,193,157,167,207,167,181,224,256,227,177,198,242,236,240,215,220,193,164,192,240,193,166,156,194,171,209,163,145,209,170,138,239,186,165,257,191,257,184,233,192,164,219,121,152,139,192,194,134,175,220,189,209,213,204,194,126,151,238,123,189,97,214,217,150,252,200,223,202,166,185,181,163,165,181,195,158,255,99,260,256,163,177,228,188,208,157,249,138,225,186,242,250,156,263,214,225,206,217,229,202,189,182,256,262,212,115,205,223,135,133,116,254,205,167,125,184,196,241,253,229,166,189,265,186,175,126,143,161,140,147,203,215,187,146,167,161,116,239,212,251,113,185,167,164,116,229,150,224,136,205,155,124,139,44,218,213,151,182,214,145,259,188,160,221,143,163,248,157,201,154,146,145,180,132,124,109,143,221,251,213,164,166,100,168,239,181,183,175,251,126,72,254,179,118,234,153,198,146,152,230,151,152,176,139,210,100,139,95,200,188,172,109,161,225,105,149,189,93,138,157,213,252,173,173,153,156,212,213,121,237,135,212,110,95,161,232,81,115,82,176,155,152,211,203,128,145,242,134,183,180,162,137,209,154,175,147,212,149,167,88,109,117,183,156,181,90,129,140,74,169,174,109,90,138,242,112,117,182,191,196,218,183,93,170,177,122,154,144,138,88,185,113,246,247,207,126,177,95,221,217,145,264,159,105,245,196,213,170,115,205,241,185,232,165,149,124,227,202,203,167,245,189,202,171,171,167,180,134,150,211,171,249,170,196,166,244,186,219,153,151,260,106,90,167,130,109,182,84,156,162,213,160,208,138,145,63,165,98,145,221,234,166,182,187,235,157,128,137,171,184,176,102,152,169,117,132,153,222,251,243,118,239,263,183,185,160,193,172,233,254,227,135,263,148,247,234,163,154,193,160,117,236,177,174,121,175,221,136,113,175,93,140,107,194,216,160,183,237,95,145,80,142,160,205,158,137,170,164,175,135,186,159,209,83,245,172,116,243,250,98,211,193,256,224,184,142,209,277,167,219,216,262,199,103,155,248,283,255,263,271,223,223,249,182,223,284,242,97,163,200,261,230,278,156,156,285,155,141,219,283,277,251,231,110,188,178,161,284,226,142,285,213,289,151,272,259,154,214,205,285,274,286,223,280,283,206,284,204,279,277,253,278,221,277,276,260,257,278,197,198,188,274,282,284,237,282,284,288,208,249,288,287,199,238,221,261,271,272,277,283,245,189,276,171,277,282,274,283,227,237,134,176,254,252,204,181,202,230,186,198,183,189,166,202,195,224,203,179,147,182,259,206,262,231,140,146,256,67,127,224,218,234,186,167,212,232,93,180,133,145,131,119,163,111,169,183,132,77,188,69,202,122,267,235,164,141,231,156,176,183,94,164,158,177,192,247,238,157,147,180,165,123,179,167,173,174,93,173,112,111,124,248,113,140,68,211,65,144,156,135,125,104,241,131,197,209,173,199,100,149,115,149,182,116,187,238,144,196,232,210,200,144,154,226,233,181,140,247,167,149,135,230,131,184,217,181,133,167,195,182,212,140,139,180,230,172,172,147,200,180,207,210,248,148,146,91,227,185,191,188,158,81,129,254,237,164,235,143,128,145,191,261,254,169,131,174,190,172,177,126,204,208,160,162,190,214,202,126,104,200,175,156,117,133,154,68,126,142,167,157,208,218,92,256,96,178,102,219,106,122,210,90,161,165,132,195,148,156,188,219,193,104,226,116,196,136,212,148,161,204,149,126,134,128,236,101,209,193,199,106,130,183,151,123,166,145,247,160,237,163,123,181,232,203,154,122,168,157,147,99,263,138,148,220,176,125,177,138,157,120,247,186,219,198,206,209,113,192,169,252,131,150,148,218,138,133,160,248,228,144,125,255,147,209,231,208,242,140,235,116,200,131,268,243,104,157,160,112,158,149,184,120,205,200,148,231,166,156,211,214,174,117,169,223,223,144,118,146,170,114,215,163,182,164,186,144,110,102,125,153,128,141,170,158,199,199,134,168,175,227,173,117,133,187,145,204,180,118,221,215,70,128,151,150,270,187,208,218,254,192,227,250,167,230,170,186,216,160,162,109,155,167,122,266,174,168,197,171,154,233,138,226,166,250,140,152,168,151,123,161,150,165,249,131,78,127,93,226,187,136,206,146,170,158,141,188,165,156,112,175,186,97,158,180,130,112,226,137,116,65,187,116,122,131,144,191,137,135,146,130,159,136,141,93,192,124,204,138,136,145,105,174,120,167,220,140,198,158,168,177,145,154,225,110,143,178,199,130,125,59,218,122,153,71,99,122,127,115,131,184,61,30,64,91,99,170,142,203,117,206,179,247,160,106,115,259,145,68,178,192,144,197,208,136,247,122,145,142,88,176,167,162,248,164,245,162,257,223,132,166,175,190,151,185,213,153,110,173,188,157,218,192,213,132,109,227,115,163,212,150,148,142,231,197,188,97,140,153,196,156,210,125,261,171,149,162,76,147,123,102,120,180,171,212,184,159,160,157,209,95,190,184,130,163,205,151,202,160,205,135,136,176,199,167,215,147,127,167,193,134,161,203,148,166,254,199,143,145,141,144,248,171,167,194,130,140,226,142,200,192,168,224,118,153,123,135,139,117,175,124,222,175,207,234,133,180,129,122,97,181,165,247,247,158,131,102,139,225,172,244,181,212,172,115,146,181,167,169,117,161,162,128,174,162,148,192,105,166,137,179,169,124,188,103,197,226,139,179,177,154,171,207,165,164,148,179,202,134,150,160,161,175,105,168,252,180,132,176,125,165,177,228,95,174,179,161,197,129,189,212,210,155,233,158,140,163,229,128,170,178,228,202,132,171,182,108,84,175,250,253,220,197,270,205,216,261,208,195,145,167,208,164,176,251,197,235,190,224,102,248,167,186,225,207,151,247,198,184,167,191,140,242,228,190,248,215,261,213,233,247,198,224,188,241,212,249,199,176,213,235,137,236,221,175,175,205,211,239,227,225,272,145,144,247,184,255,247,200,179,121,235,155,251,200,159,168,173,222,242,191,210,234,162,245,192,165,180,142,144,252,192,216,157,155,165,147,237,238,157,209,188,155,218,199,147,189,200,237,146,205,154,182,201,250,188,250,241,244,170,189,183,250,191,262,166,152,176,142,202,250,223,247,205,220,178,223,178,184,134,263,236,169,240,179,238,260,224,214,243,180,173,159,178,193,251,189,194,245,182,253,223,251,225,117,153,182,165,197,181,191,251,204,212,188,180,221,203,221,181,183,205,232,207,136,227,240,190,144,202,198,181,203,123,195,177,128,202,196,260,231,265,227,175,163,206,199,198,252,254,214,230,192,156,181,204,181,152,195,141,175,253,192,189,225,191,253,187,164,229,255,228,162,116,165,213,187,258,207,163,216,195,164,198,174,228,260,238,177,199,182,260,250,183,252,243,200,215,155,192,163,247,143,221,164,220,157,192,225,196,226,202,223,153,152,200,218,219,242,255,228,157,236,238,259,217,174,251,209,230,177,236,101,208,216,216,235,141,225,157,250,252,232,203,143,252,221,250,247,163,253,182,243,243,186,200,221,210,142,255,197,207,256,167,229,221,220,185,183,176,252,235,181,119,205,181,228,147,219,230,130,255,155,239,234,229,223,204,259,250,217,186,210,145,122,191,180,207,148,176,214,239,168,238,192,161,151,161,155,191,155,164,211,173,208,182,261,183,202,196,197,125,167,260,184,190,178,168,276,230,227,151,208,190,135,221,257,171,189,232,206,259,255,188,221,200,190,235,178,209,204,117,185,172,255,177,192,219,260,186,234,256,208,261,256,220,230,188,188,163,214,187,217,240,177,69,208,194,207,180,194,117,186,220,215,222,251,229,209,205,231,166,237,146,240,141,244,263,265,186,151,155,189,168,247,175,137,196,240,169,175,203,164,191,188,229,183,247,209,209,251,245,186,239,194,174,220,186,164,210,166,125,166,208,235,216,251,243,186,185,155,200,268,259,224,167,195,253,247,238,146,258,191,183,198,237,249,209,214,173,211,176,198,170,200,220,238,164,202,213,161,218,171,247,246,132,191,240,236,218,202,107,146,237,181,216,209,241,151,213,194,204,233,232,164,240,242,201,234,211,230,209,220,209,243,172,165,112,258,243,132,237,226,268,182,158,195,179,172,252,202,180,256,193,207,241,203,237,212,186,201,207,214,172,233,208,82,136,183,231,222,254,207,171,194,167,184,165,192,234,120,206,222,232,167,195,221,235,212,205,202,234,223,201,159,180,182,211,202,221,245,160,252,206,211,251,112,199,191,224,206,213,271,122,209,207,222,187,238,224,223,244,195,184,198,240,203,204,251,189,236,200,247,191,113,163,152,197,164,229,206,189,193,239,174,260,254,227,215,161,261,167,207,260,225,220,187,220,234,167,161,253,246,260,183,146,257,253,157,216,149,150,196,184,227,174,256,235,238,178,104,213,187,190,245,159,208,185,202,191,192,189,224,239,230,204,211,210,248,167,197,205,192,176,173,192,163,221,212,222,252,206,224,207,171,172,193,206,204,260,251,195,245,165,161,206,157,181,162,190,253,178,217,173,187,229,238,182,185,216,193,263,250,222,150,213,157,140,240,223,244,247,208,263,265,151,151,129,164,204,199,141,241,227,207,266,273,207,137,214,164,235,183,201,185,240,162,144,213,204,177,220,226,178,125,154,259,170,162,221,215,173,238,200,154,217,142,247,233,171,146,173,151,156,236,193,218,172,198,224,220,207,234,236,241,203,229,205,238,197,195,182,180,242,239,198,235,148,190,243,254,142,154,195,239,226,211,219,256,175,202,188,163,247,207,236,154,215,203,139,142,176,242,151,180,244,175,214,230,268,154,225,139,204,165,186,204,143,169,191,168,170,210,223,244,207,242,220,199,143,249,179,200,195,227,180,183,194,261,248,216,151,211,180,207,213,161,230,237,157,219,196,208,150,191,172,172,243,223,178,157,193,196,159,170,161,169,158,192,113,120,176,187,246,178,169,206,152,232,156,166,211,179,201,188,175,210,222,192,153,185,254,209,218,175,246,145,196,179,151,139,191,151,259,180,124,168,159,133,157,199,180,203,162,259,209,135,240,121,171,97,203,168,128,188,140,186,151,176,191,193,100,203,113,147,189,179,104,223,239,162,146,181,71,155,75,171,160,138,122,202,237,217,133,204,228,124,239,233,176,166,266,205,124,173,180,217,116,121,148,145,178,161,193,146,196,150,96,234,203,154,119,175,98,161,133,202,171,111,192,164,139,157,108,180,136,187,197,214,130,128,241,151,95,185,183,147,106,223,171,224,172,115,148,186,170,152,148,145,105,121,117,60,192,164,89,258,185,113,115,141,204,116,143,212,186,197,118,140,159,135,130,248,135,187,106,148,158,122,118,208,272,84,195,112,118,167,176,164,150,170,231,98,79,121,149,145,161,179,177,185,111,143,164,144,168,195,150,133,188,160,168,125,185,171,233,136,124,113,209,141,246,206,123,231,167,131,151,96,158,154,147,193,155,208,209,122,155,245,91,155,123,169,130,195,144,136,197,160,129,124,131,145,105,104,112,171,153,156,269,232,160,216,114,207,76,184,253,155,168,235,217,160,221,112,146,221,175,166,121,117,126,167,151,257,117,246,243,184,208,237,157,182,236,189,146,254,173,177,171,154,173,140,138,137,146,229,179,123,110,222,127,188,221,132,166,116,60,123,168,242,199,184,78,247,204,135,154,155,165,208,180,203,186,167,245,110,175,106,135,170,223,171,208,183,165,150,130,234,102,121,150,96,190,124,125,121,165,138,141,187,125,84,164,168,183,239,238,194,231,138,201,77,142,127,181,114,174,126,100,149,198,223,135,147,83,247,195,89,195,208,137,144,84,235,172,142,73,177,98,213,184,186,106,230,198,137,137,168,148,177,162,140,139,141,131,143,193,173,240,207,156,138,113,80,62,127,142,135,189,131,115,211,96,192,127,234,124,162,155,173,123,146,134,115,96,203,144,100,116,136,112,256,257,212,164,230,236,173,138,244,121,228,109,156,85,88,146,156,173,124,180,161,227,199,243,107,145,199,168,138,190,147,231,124,182,110,170,152,168,192,89,164,138,253,172,149,143,137,143,171,103,239,95,185,141,131,201,125,179,248,179,143,142,166,111,249,97,114,93,110,148,220,105,177,80,110,166,131,149,162,142,123,148,214,240,134,169,64,236,219,134,215,163,186,207,181,208,255,195,116,151,239,130,197,249,223,177,229,244,147,229,269,229,222,147,248,188,246,161,230,132,203,175,259,183,152,206,136,136,213,203,259,218,143,158,173,197,159,133,141,116,172,189,195,186,120,191,175,202,179,191,154,169,167,202,142,208,144,187,191,178,209,132,186,225,209,120,240,214,154,193,249,248,203,153,189,160,200,167,248,133,209,103,166,153,245,181,220,186,252,188,133,94,156,179,168,117,249,158,142,169,72,194,150,264,164,94,157,128,176,176,179,126,136,140,125,190,211,148,208,180,158,178,152,137,167,115,251,163,109,174,181,189,228,212,233,128,120,166,135,132,74,128,98,131,130,155,162,143,136,104,155,123,127,98,102,90,81,97,89,110,112,145,81,133,143,140,108,71,124,150,165,190,192,90,100,118,127,138,149,128,76,83,148,70,134,263,88,143,110,253,115,144,141,118,179,141,236,263,231,100,139,229,132,144,231,167,221,264,239,158,136,113,122,209,163,219,206,105,90,216,189,116,102,114,210,89,95,99,128,207,219,252,237,231,179,152,213,171,148,253,92,222,165,115,191,164,182,230,186,241,198,130,150,185,131,264,124,147,174,94,118,107,130,121,143,89,162,89,162,166,125,137,78,236,200,168,256,119,194,117,224,169,115,164,182,131,95,259,184,237,225,181,168,178,211,137,209,157,248,202,222,158,185,210,221,259,130,190,107,205,213,224,186,195,92,188,110,87,158,82,219,74,150,207,141,231,108,147,101,134,163,175,198,123,115,78,162,150,163,118,96,163,222,164,174,178,123,210,166,188,160,170,84,182,149,165,181,243,120,236,167,222,140,170,90,157,107,125,91,134,195,228,183,199,200,232,131,182,197,160,156,158,238,122,108,192,170,138,210,133,162,148,203,148,206,131,105,133,124,159,216,172,188,203,222,103,170,151,188,242,117,90,115,74,177,160,171,145,102,168,125,95,113,204,128,124,141,87,148,212,193,146,93,156,187,109,174,171,129,237,152,187,126,142,96,208,192,131,155,138,137,138,118,116,190,197,131,204,142,265,124,237,177,234,155,178,108,212,137,142,114,146,96,207,66,111,123,125,212,148,222,151,135,161,117,177,167,132,152,216,172,166,144,105,131,143,139,135,76,141,218,222,147,115,108,224,172,155,140,190,205,143,136,155,188,138,135,183,197,124,135,132,135,141,149,135,120,91,242,203,143,123,181,148,214,131,133,112,185,174,141,179,76,105,157,249,183,163,194,123,149,177,136,149,111,167,154,258,107,184,168,102,159,105,97,185,106,121,145,175,92,109,142,130,173,153,104,119,114,115,99,136,95,120,129,145,81,132,172,165,221,171,165,125,127,181,102,184,170,141,202,145,160,190,132,115,146,99,144,240,195,187,181,158,108,114,145,125,127,95,162,154,156,121,95,136,79,188,100,165,159,88,174,164,103,170,190,250,235,129,221,129,128,162,230,203,132,154,178,132,167,142,147,138,117,181,124,185,80,134,111,153,227,149,280,110,130,143,215,144,177,165,130,171,262,262,105,159,232,221,154,174,214,187,167,118,168,159,218,148,122,265,265,122,143,140,158,231,192,136,241,187,129,107,114,200,152,117,182,221,122,176,196,280,134,105,193,185,120,114,150,206,166,138,119,82,209,136,159,177,140,163,236,58,158,144,129,245,234,185,160,168,164,145,93,120,173,211,130,191,135,150,166,197,167,141,175,152,217,137,183,172,132,183,266,212,224,223,195,242,187,232,222,148,240,174,168,233,104,271,166,172,162,192,238,161,168,208,169,193,195,152,207,156,132,133,199,122,212,123,111,215,159,108,136,150,271,62,103,216,101,169,124,97,231,237,188,123,160,180,128,193,180,128,107,226,214,155,147,246,217,205,235,245,215,226,146,164,161,174,269,187,141,244,195,234,152,237,163,120,250,114,162,244,259,101,241,193,247,80,199,210,189,219,139,163,149,232,185,210,193,128,208,168,185,107,255,198,244,128,121,164,84,246,117,183,255,209,234,88,113,175,162,152,100,142,180,84,136,195,197,222,162,148,228,184,226,135,104,255,131,193,173,171,114,246,213,143,219,246,264,232,87,121,224,233,127,120,149,182,159,98,119,133,112,214,200,237,106,163,104,198,77,178,105,196,156,198,150,95,138,169,211,218,171,119,122,212,229,104,263,210,120,199,95,176,237,199,185,177,183,219,205,216,157,84,124,211,122,139,123,185,142,175,153,167,132,128,139,181,254,109,150,71,118,149,185,184,195,130,189,66,236,243,153,16,180,172,214,192,125,168,271,220,103,109,187,232,189,158,96,245,126,165,200,191,134,104,142,205,199,119,177,191,100,132,131,120,166,230,159,201,138,93,177,146,116,103,177,123,155,200,118,66,183,207,90,200,141,176,148,188,169,163,159,213,154,199,166,122,192,219,193,194,168,227,165,176,169,209,205,128,264,199,146,230,178,144,147,189,133,239,183,217,220,159,180,192,257,203,141,183,207,170,188,90,175,177,222,92,235,182,182,153,217,157,151,200,217,133,214,240,178,253,194,248,164,170,194,263,144,191,249,148,123,167,197,190,216,237,246,175,241,174,182,145,188,182,196,128,195,210,233,216,153,150,194,159,136,237,218,213,153,205,151,186,170,188,155,200,211,149,264,225,221,219,187,249,177,198,195,171,203,238,162,152,223,106,105,168,135,277,134,217,223,213,246,207,172,114,157,227,141,229,224,182,146,253,219,188,108,226,198,188,128,206,203,91,167,224,178,159,247,259,200,250,180,139,215,177,171,236,131,133,101,162,209,232,142,130,135,183,172,203,187,183,162,232,185,149,228,219,247,216,250,189,197,237,215,156,136,266,224,182,138,187,221,157,103,162,158,243,241,228,176,97,180,195,144,207,201,261,147,146,166,212,175,158,160,266,204,221,234,218,195,129,152,200,215,180,181,139,189,165,179,261,166,90,229,196,176,178,164,155,230,196,255,157,166,139,203,191,106,211,148,261,181,255,172,160,205,253,235,191,237,217,194,150,208,218,267,169,94,179,215,179,224,245,166,173,259,172,195,201,195,264,130,127,170,127,130,191,148,149,135,141,133,207,171,192,212,191,168,210,160,203,187,157,195,165,210,219,150,189,214,172,192,143,176,142,237,195,196,152,127,135,188,169,218,228,162,148,169,229,159,119,200,123,218,77,208,107,144,135,148,163,166,143,133,231,206,187,210,200,183,211,194,239,237,213,189,150,218,151,176,162,185,230,143,153,160,180,168,184,135,178,197,206,129,152,212,124,164,174,195,187,226,157,100,155,148,200,258,202,165,177,243,160,142,176,235,166,209,205,195,125,260,215,158,192,201,146,185,210,111,252,162,181,223,207,202,225,198,141,163,219,254,193,220,192,231,148,123,209,136,131,156,153,136,136,255,211,179,155,198,202,192,259,169,215,208,186,173,155,209,252,111,202,177,181,164,122,106,252,155,249,142,113,116,193,129,137,193,151,188,111,115,157,185,143,230,135,160,222,147,179,156,134,227,116,232,173,173,224,199,110,129,215,185,145,172,217,202,226,121,100,231,101,193,239,181,226,96,187,223,196,139,122,259,145,196,140,10,258,242,224,163,144,160,142,136,181,233,202,235,194,236,158,157,247,203,167,172,170,168,236,154,105,87,199,93,77,105,145,188,103,168,137,174,164,158,180,150,167,150,150,147,209,166,168,131,199,137,150,228,117,155,99,246,209,193,169,259,130,108,184,112,156,81,171,187,136,112,122,148,173,252,164,140,137,246,133,188,193,146,148,138,214,164,127,106,124,125,110,127,121,187,174,208,209,165,115,164,239,265,209,192,216,122,203,99,68,137,189,194,156,163,176,138,195,245,142,180,158,253,119,98,190,262,203,219,249,146,169,93,214,162,88,164,212,229,218,155,225,244,152,226,161,177,158,143,155,217,177,191,224,222,252,236,203,206,211,179,234,157,209,241,245,171,213,135,134,188,157,171,217,252,161,197,173,156,166,165,197,270,141,163,184,172,181,247,108,139,176,140,117,175,221,209,214,177,165,195,248,137,142,151,231,217,192,201,224,219,161,178,246,204,173,119,189,147,142,228,163,199,233,260,170,236,237,217,208,167,137,131,256,254,166,194,132,97,105,248,173,127,117,135,190,166,165,132,180,126,81,200,231,151,114,208,157,181,255,172,67,238,95,255,172,170,235,252,236,242,247,256,153,198,154,178,169,262,199,146,243,228,218,193,166,185,267,172,146,223,192,199,196,82,212,192,252,169,167,183,192,158,265,133,251,201,249,175,83,126,176,150,191,164,250,193,199,201,195,121,115,222,205,154,154,253,162,167,175,165,191,232,217,184,144,136,122,167,188,136,190,143,229,213,80,154,199,221,175,192,198,225,248,234,177,88,270,207,123,203,98,248,163,219,190,147,228,122,179,154,164,146,203,118,156,127,212,69,201,215,194,153,220,241,201,194,201,248,186,146,150,161,122,206,103,209,147,91,202,158,221,209,247,200,193,93,210,231,223,184,261,149,250,213,129,134,133,235,134,208,145,209,162,195,205,133,191,164,240,249,239,224,110,255,185,161,224,187,128,189,171,214,155,237,215,229,206,171,186,231,206,183,97,218,202,251,205,179,226,244,241,196,188,176,164,190,199,204,182,179,184,128,201,139,84,256,154,187,268,106,198,89,191,201,181,99,221,201,163,200,200,102,135,182,221,168,220,229,119,112,226,251,193,188,228,178,75,181,205,225,206,144,131,216,278,204,253,156,197,146,222,171,122,163,131,167,222,221,223,196,150,188,166,138,172,249,208,125,144,200,148,189,239,146,185,134,189,161,113,221,182,247,185,180,209,178,246,252,230,130,230,122,99,175,96,225,202,178,164,216,235,172,228,92,171,200,126,230,148,190,229,220,224,226,233,139,216,231,222,120,268,223,183,182,218,223,230,173,159,102,169,186,95,167,146,150,162,129,181,206,224,216,216,246,229,187,219,127,169,104,155,217,235,139,196,78,162,228,97,210,142,147,155,192,204,139,283,264,243,185,181,181,204,232,207,191,249,232,150,173,118,180,158,126,206,205,150,190,191,194,157,198,189,216,133,94,256,263,158,162,88,203,227,118,145,128,95,175,240,256,249,217,138,190,213,202,141,245,66,78,197,140,256,216,204,232,138,191,150,232,229,181,174,114,161,193,229,164,237,155,178,131,96,173,205,122,126,176,245,193,113,235,184,212,221,223,192,111,74,219,87,163,270,194,167,160,185,170,150,184,107,156,236,107,190,136,129,246,174,123,112,222,171,207,186,87,213,232,241,136,206,250,132,205,240,140,222,156,146,170,207,213,204,185,140,233,183,146,223,151,179,228,214,244,195,177,171,229,241,226,145,95,217,146,192,129,170,177,193,157,193,188,194,179,258,211,171,201,153,267,131,193,179,189,239,226,176,186,126,152,165,185,237,195,127,139,71,242,190,207,106,176,215,176,164,254,179,144,221,98,139,234,231,115,159,202,259,208,140,255,110,185,174,182,165,246,187,180,185,197,165,131,236,230,216,180,214,178,221,194,226,244,256,167,207,193,162,253,198,203,201,132,244,234,236,260,142,250,162,145,239,138,184,164,193,243,188,260,168,226,196,181,125,143,143,222,135,170,223,229,202,274,211,137,201,152,258,153,178,144,161,267,262,140,155,125,141,201,219,155,171,103,240,173,182,229,204,210,189,163,219,184,178,164,134,192,184,118,102,162,178,185,182,59,82,126,113,140,124,143,105,198,200,147,27,214,211,178,198,148,102,205,26,159,60,112,222,75,236,114,210,122,133,199,129,174,192,101,91,91,159,98,132,132,235,123,152,136,82,129,87,198,164,192,157,100,204,165,101,131,271,241,223,245,106,242,196,181,249,129,240,61,211,204,186,125,156,139,133,165,102,112,210,110,144,209,254,146,109,135,194,243,208,227,170,152,99,137,179,200,112,205,179,180,198,187,198,193,187,146,201,173,202,177,186,183,166,207,202,145,190,210,180,51,200,179,196,193,159,191,195,179,206,198,201,186,202,190,169,192,179,192,218,192,175,176,73,208,196,203,200,202,212,189,187,155,196,227,188,152,166,206,194,198,151,189,194,192,203,170,201,178,179,171,184,187,197,162,144,133,95,189,231,182,128,223,167,109,175,176,208,151,154,122,247,169,146,171,252,81,260,126,54,159,247,239,128,109,175,198,206,162,160,195,160,182,200,207,226,271,204,204,191,149,232,148,158,107,99,175,147,167,188,105,181,160,111,189,115,110,156,124,163,231,136,139,202,124,245,141,159,161,107,98,129,193,125,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,272,109,144,236,165,112,135,132,141,139,101,178,116,139,242,125,148,79,94,163,117,155,130,171,135,132,175,218,171,162,169,133,132,239,259,194,212,121,104,108,116,77,217,163,136,194,230,144,138,132,223,247,131,219,198,198,172,164,114,151,157,215,264,154,228,152,154,212,222,253,259,244,162,154,158,171,239,140,164,101,260,193,170,191,80,108,132,154,137,141,126,126,168,162,129,108,167,93,98,132,122,62,89,202,177,87,195,261,108,213,104,152,123,179,169,125,71,127,70,146,114,139,126,190,204,115,179,163,159,249,183,151,159,211,183,147,222,91,178,262,127,173,201,163,182,184,131,196,161,268,142,197,199,155,143,160,107,211,213,218,146,124,108,164,151,92,132,254,192,130,161,136,201,204,203,210,259,161,117,219,203,194,181,166,227,202,126,93,164,171,148,148,230,217,166,148,179,122,204,140,218,130,90,159,220,126,120,193,226,202,156,172,210,157,158,221,181,142,148,192,112,195,157,96,107,77,142,100,196,148,181,137,120,137,152,157,180,132,143,179,159,192,112,207,130,138,117,129,94,165,144,106,152,138,121,148,126,151,191,198,200,136,190,177,206,183,224,190,209,106,261,135,209,177,181,125,165,95,194,160,133,124,258,168,234,236,130,198,203,152,196,145,197,172,207,145,239,256,193,93,173,163,235,242,150,209,244,147,201,107,219,234,210,193,190,232,195,217,229,121,153,184,125,193,224,137,140,187,244,184,215,255,181,105,234,217,192,152,142,210,242,229,225,222,191,159,181,167,175,196,255,169,210,179,201,240,244,206,201,240,182,186,220,172,166,177,192,79,202,241,203,229,220,127,181,232,269,191,118,144,163,195,192,264,215,242,154,242,152,185,176,152,202,139,164,194,277,237,150,188,202,197,211,159,188,255,133,168,168,199,244,248,174,147,197,156,119,129,158,239,193,210,182,190,187,218,157,252,187,181,148,237,197,246,152,236,137,190,176,123,162,169,128,194,129,207,217,209,203,239,204,154,244,154,187,163,148,220,183,155,196,99,132,268,204,148,250,204,159,174,201,191,143,190,162,228,101,147,203,257,217,131,210,169,148,173,207,179,150,195,251,156,195,210,154,166,190,201,215,273,161,165,271,224,199,180,148,193,185,147,227,215,149,241,214,166,136,121,238,166,210,227,223,154,166,242,154,250,192,188,204,241,163,237,174,217,181,266,216,198,199,201,244,185,219,193,201,180,221,177,164,178,192,171,204,229,146,167,215,144,211,179,252,160,183,150,138,154,207,182,154,164,188,134,256,220,217,189,265,159,186,265,200,222,150,200,145,214,205,210,248,208,265,222,170,163,229,155,237,172,145,234,199,214,192,147,237,205,199,134,188,209,249,146,149,201,131,158,218,148,239,219,221,200,207,169,192,130,235,98,167,182,211,150,211,176,228,251,158,240,172,151,171,129,188,227,239,223,249,112,219,217,209,209,136,180,217,250,127,175,205,216,111,250,127,142,123,156,155,212,134,202,158,210,159,221,212,230,176,252,204,197,234,179,222,242,236,250,204,178,198,162,229,218,213,209,192,110,223,135,176,215,175,145,151,217,97,136,187,162,188,133,163,248,213,175,199,226,170,233,119,214,209,179,184,231,170,181,222,216,247,244,199,213,190,169,210,181,120,250,188,208,125,238,185,236,169,235,204,108,195,139,196,241,182,119,185,213,156,192,191,257,157,196,172,240,194,139,201,187,198,247,258,212,220,188,220,164,135,174,180,160,141,210,84,211,188,147,236,206,216,194,195,162,244,165,200,219,144,244,165,235,156,220,202,213,227,242,245,211,185,89,208,131,165,155,182,165,210,247,258,179,206,129,129,174,206,177,164,188,251,204,167,158,216,122,206,186,141,204,150,220,239,250,259,229,172,168,219,109,160,176,255,174,187,230,131,251,175,171,168,219,206,238,171,247,207,242,146,209,260,185,199,194,206,244,191,219,238,239,206,246,216,170,220,260,206,255,212,154,226,165,198,167,209,173,214,201,193,202,227,173,147,169,157,193,110,187,185,167,208,180,194,124,200,172,105,176,249,192,218,172,261,204,220,233,155,158,229,162,139,183,229,220,147,261,171,195,209,175,202,216,159,203,205,263,191,213,205,207,242,180,225,89,173,177,265,146,181,214,143,170,250,179,181,149,198,249,187,122,195,206,205,168,210,161,204,220,202,216,155,245,172,175,196,178,188,153,171,176,209,182,202,175,196,257,229,177,239,211,236,135,147,204,155,102,182,169,177,245,112,218,229,187,260,115,154,205,125,222,185,157,239,171,203,194,144,170,182,181,218,88,244,203,188,149,224,193,246,225,201,192,207,228,228,170,244,203,206,230,187,205,165,201,160,166,120,261,141,141,200,205,149,253,156,245,227,152,148,142,254,217,257,179,177,251,192,158,163,97,164,206,241,190,182,156,238,258,188,169,189,202,165,186,131,249,218,103,198,114,132,202,258,206,176,198,105,169,117,163,223,233,200,105,195,176,268,156,187,242,232,210,180,195,178,116,183,198,160,180,271,162,233,154,168,169,189,138,194,214,142,170,241,219,152,235,227,164,113,198,200,203,245,214,268,104,199,270,171,164,226,168,181,176,199,159,154,186,159,173,219,217,164,188,150,181,128,193,208,171,154,168,181,166,193,228,226,157,211,176,205,211,213,180,205,236,136,176,223,120,102,198,218,143,220,197,187,236,243,106,206,239,152,214,153,245,208,243,186,240,188,98,238,217,188,176,133,233,225,160,177,190,205,153,181,220,210,228,164,210,188,163,132,205,232,102,234,142,209,185,181,111,238,174,148,169,171,156,192,221,159,214,212,120,134,167,215,116,193,214,172,209,86,182,258,239,197,161,122,162,208,258,96,166,207,206,194,156,179,141,183,140,161,188,191,193,252,132,191,224,179,188,200,226,146,206,117,211,197,185,200,193,215,266,192,235,222,172,160,119,142,153,192,127,193,194,179,142,166,187,258,152,126,179,219,162,133,174,154,163,236,169,218,215,152,237,127,85,168,151,192,152,178,269,229,183,154,178,136,162,222,125,191,188,211,252,248,184,133,144,242,192,182,192,166,179,220,214,200,148,249,176,162,205,162,189,138,162,246,149,178,166,207,123,174,200,154,171,199,123,137,193,156,192,213,137,201,248,154,118,195,183,139,117,148,198,166,181,253,197,245,149,218,241,139,164,175,153,225,146,131,199,242,177,187,218,210,152,136,165,113,167,135,135,203,209,95,200,106,119,240,190,161,192,186,144,205,228,159,134,159,140,120,216,207,197,167,158,62,183,273,187,202,208,134,150,150,134,227,140,167,114,133,159,173,192,182,153,249,198,202,212,160,211,209,206,249,159,182,180,193,251,246,206,205,202,240,157,208,215,222,206,189,192,199,166,239,188,175,138,251,187,230,246,178,173,151,160,221,173,213,178,221,188,262,256,256,219,184,186,209,233,280,231,202,205,194,243,186,227,203,165,203,173,156,150,186,221,188,167,173,142,243,197,191,194,204,153,227,232,253,198,179,238,208,217,214,163,185,185,143,217,148,197,119,131,253,154,189,197,187,177,199,219,205,234,235,169,196,184,156,158,116,135,155,125,183,153,218,177,118,208,248,221,222,211,219,149,250,219,200,255,189,191,227,161,227,165,257,179,233,147,230,238,167,158,181,212,157,216,157,242,188,234,172,70,184,163,229,200,206,195,163,186,230,184,191,192,132,210,197,175,261,181,194,213,244,227,210,229,226,224,245,236,175,249,186,204,269,180,260,264,142,180,190,238,257,177,201,142,250,162,198,197,221,211,179,190,165,263,211,166,160,237,218,222,240,229,196,148,241,164,213,226,184,190,183,204,154,218,136,193,198,185,196,217,184,212,175,239,188,184,242,201,166,193,203,221,188,176,197,162,145,184,210,105,248,199,234,181,184,248,119,142,174,205,170,217,197,196,230,193,170,220,215,205,235,228,196,131,268,199,146,186,217,171,180,173,165,179,130,203,214,200,160,220,232,257,158,194,209,187,208,143,184,231,195,239,236,189,249,206,147,172,239,222,171,198,242,159,253,210,236,173,188,197,186,243,137,227,137,221,235,184,196,121,214,223,155,205,233,121,109,219,239,251,225,173,226,200,212,238,123,246,232,237,187,168,206,242,184,274,195,174,254,169,243,207,264,146,235,151,163,220,175,190,241,183,216,232,210,208,142,203,167,170,138,217,243,139,211,183,217,174,159,149,205,238,172,169,217,191,258,162,181,86,185,150,153,200,172,187,193,266,123,155,226,213,168,182,233,217,182,243,145,220,221,219,192,258,241,243,219,233,199,181,183,249,146,145,186,201,216,159,142,214,238,233,210,171,260,213,147,213,242,195,249,203,166,261,191,188,147,160,249,206,134,220,167,240,262,215,222,223,196,188,259,264,249,193,184,264,214,232,229,124,170,156,241,169,208,146,243,173,249,183,195,259,193,226,164,200,247,218,146,164,212,167,264,182,258,209,157,205,182,227,236,205,151,207,231,192,198,210,230,175,203,254,163,241,267,222,189,212,185,156,181,159,183,136,169,206,169,172,213,133,200,237,157,210,132,222,222,229,250,234,195,204,227,249,209,173,187,202,132,223,178,203,174,223,163,184,202,155,196,218,123,233,249,145,231,194,211,226,161,199,126,149,192,248,146,154,214,248,161,127,228,176,180,203,154,192,222,142,132,210,238,231,199,175,172,181,169,152,212,244,233,173,170,210,222,219,207,185,128,250,165,184,232,161,245,158,246,204,220,196,194,178,146,150,250,173,209,171,215,252,244,165,234,251,189,196,129,216,174,242,205,218,229,146,243,198,218,244,200,201,234,205,144,231,183,118,155,210,184,159,161,180,257,206,141,175,176,124,180,156,130,223,125,179,146,189,156,184,85,252,138,199,178,263,173,201,217,124,183,217,171,209,172,229,228,224,159,279,165,206,193,146,233,198,241,252,210,148,200,166,134,242,112,201,221,250,169,204,133,223,195,213,241,195,142,252,210,168,202,205,154,187,141,190,181,219,184,259,221,213,227,177,197,120,228,188,261,159,201,158,204,130,201,70,149,146,216,3,190,181,138,3,225,173,189,207,193,137,161,211,230,172,213,232,170,139,178,203,121,170,195,217,167,208,140,151,188,149,234,218,138,212,228,150,231,184,187,150,153,184,263,248,262,187,223,219,178,92,190,164,236,181,201,172,131,267,167,229,201,228,160,98,139,126,134,175,254,165,201,251,195,231,199,138,255,148,239,158,178,163,94,181,240,226,74,191,228,158,91,157,219,157,97,210,152,203,172,148,229,171,206,132,155,136,205,163,144,212,153,236,230,177,147,162,191,120,121,154,181,200,243,198,174,209,217,127,234,243,157,246,121,94,89,153,167,153,121,207,149,159,106,147,159,228,194,91,224,220,250,137,186,133,214,201,109,174,145,75,85,149,259,162,223,193,255,180,178,207,169,204,195,122,100,188,211,191,125,174,198,174,150,169,268,187,117,204,150,234,171,130,139,170,152,125,168,194,214,100,129,176,179,199,97,266,140,129,117,55,60,103,89,122,36,127,42,44,66,104,53,265,111,97,124,58,80,141,55,169,109,67,56,48,32,121,66,57,65,91,54,69,99,96,73,69,78,60,119,60,167,220,253,149,111,131,155,178,158,248,115,78,160,173,176,195,81,155,101,193,117,174,257,106,154,139,240,164,130,190,152,238,145,201,161,181,195,121,196,91,157,144,157,166,176,138,163,177,122,219,159,213,133,193,149,201,82,179,154,203,67,98,169,179,202,168,231,211,136,241,167,165,144,167,163,170,143,169,133,174,212,174,229,258,135,132,165,144,208,185,188,130,243,186,124,171,199,243,157,222,138,170,250,184,258,227,135,226,200,153,153,159,101,131,206,239,130,201,165,118,178,229,195,138,119,197,139,233,129,233,202,117,174,250,251,153,249,172,198,199,146,145,215,214,115,154,166,233,99,142,222,235,127,162,173,201,151,212,197,134,224,152,124,188,138,223,191,96,217,151,112,188,176,159,82,86,155,118,131,154,120,72,92,254,158,175,212,186,158,179,193,99,138,96,250,221,165,170,152,139,163,183,258,210,143,219,274,167,125,252,142,172,164,205,194,119,207,251,257,161,258,183,207,155,135,242,96,155,226,203,239,250,128,166,74,100,108,230,189,102,122,117,121,202,186,186,150,157,159,152,224,187,184,126,196,227,160,159,256,256,137,204,177,153,180,196,229,204,196,204,221,139,252,211,200,192,184,215,175,181,179,158,262,212,146,205,189,127,96,143,228,160,182,249,201,198,147,166,208,226,219,246,94,245,185,177,165,180,163,144,121,96,146,89,199,148,89,144,153,155,174,172,253,224,255,257,208,218,129,264,149,132,139,234,205,195,148,240,159,144,190,169,228,208,204,244,191,199,193,144,248,227,223,117,158,193,230,170,128,154,113,170,251,195,181,209,210,240,126,171,200,178,197,181,239,124,198,154,187,241,195,181,219,149,141,236,107,159,179,200,237,186,254,271,152,242,162,209,236,209,230,213,148,181,194,164,240,180,243,175,199,176,141,144,157,164,222,176,236,211,163,205,202,154,198,189,234,201,205,229,234,201,179,147,158,154,150,201,168,185,132,189,240,214,207,194,143,179,125,195,163,181,169,169,224,209,199,173,184,155,239,159,164,105,233,148,170,197,202,156,228,210,118,186,134,218,221,180,153,173,162,143,126,229,187,186,190,213,146,163,160,130,111,182,237,188,244,177,181,181,188,166,212,203,176,234,117,230,103,152,245,140,174,139,186,192,214,198,140,179,203,181,172,182,153,138,181,154,199,85,199,187,213,188,202,149,190,134,171,217,229,153,110,228,224,153,208,181,137,121,219,150,212,181,183,266,195,112,238,174,158,95,143,143,190,194,94,139,200,138,170,158,112,216,232,196,204,220,145,206,202,172,163,264,113,216,189,214,268,189,183,197,171,92,204,209,220,160,193,87,150,170,172,263,204,159,246,174,235,176,103,198,151,163,202,224,189,140,159,195,197,117,137,217,200,101,166,201,253,240,260,155,209,101,184,183,175,68,224,244,238,244,155,219,203,189,115,189,231,100,239,170,110,102,205,231,201,146,208,162,218,180,255,165,261,185,214,232,221,201,143,173,203,182,171,201,124,222,145,196,153,246,204,156,152,201,240,185,148,119,202,217,138,126,206,206,235,161,195,172,135,237,139,184,235,136,218,180,184,176,176,86,79,164,229,171,175,211,133,165,164,146,135,143,183,176,200,203,134,225,208,195,183,129,129,194,251,172,231,214,223,207,115,216,174,179,180,173,207,203,233,142,172,179,179,135,263,200,151,181,147,91,151,208,224,138,253,204,201,232,128,155,159,208,265,175,238,199,227,191,204,204,86,216,143,207,66,199,189,162,207,253,202,184,138,221,197,204,206,211,208,218,266,226,233,172,215,177,167,180,212,186,188,107,176,176,162,168,216,110,169,182,205,169,127,230,162,252,197,205,175,236,196,259,178,264,197,214,253,214,173,205,221,163,160,201,118,192,158,148,169,224,216,157,202,205,150,217,154,164,159,207,175,192,135,115,171,143,268,229,261,189,192,143,140,190,207,226,152,134,183,156,159,180,180,136,151,115,179,185,136,249,82,112,150,174,117,107,144,136,216,198,113,139,93,141,210,57,66,151,221,203,167,162,181,171,152,96,198,139,160,165,155,111,144,160,141,126,166,123,228,232,162,194,172,146,194,109,144,142,209,162,163,221,174,173,156,173,123,187,211,175,127,170,146,217,245,119,253,232,174,143,174,182,215,113,155,148,170,204,201,216,235,230,226,249,201,179,166,207,102,122,91,110,244,205,221,131,91,204,183,186,171,101,203,160,79,170,164,211,218,188,107,144,150,5,204,167,181,175,89,53,197,150,201,155,132,267,157,269,204,220,253,176,152,268,273,193,146,277,184,264,127,250,95,142,226,192,250,271,256,267,89,181,254,268,194,211,141,91,150,242,200,240,228,227,267,244,205,262,282,277,287,261,213,284,281,221,199,195,207,208,188,213,186,285,268,260,269,277,258,269,257,198,251,198,286,214,280,187,263,226,211,286,276,228,285,289,284,281,284,176,260,286,290,226,219,235,239,287,289,273,280,287,198,209,269,200,146,155,215,169,213,195,196,166,233,223,181,176,234,169,160,132,145,154,171,164,105,108,212,135,178,197,200,260,118,175,124,187,187,106,174,209,174,174,130,160,112,156,147,203,115,155,217,101,133,115,186,254,88,239,172,244,171,146,130,245,192,174,206,180,102,244,219,200,133,228,174,134,202,194,150,114,101,182,133,195,212,128,208,161,150,204,160,164,227,182,237,237,163,202,190,167,239,109,239,168,193,208,171,177,193,162,243,172,236,151,232,244,185,163,149,221,176,205,171,103,120,223,162,149,194,205,186,132,241,233,204,181,148,184,210,146,163,131,65,197,219,117,250,197,184,163,144,164,205,155,204,197,218,154,133,113,232,99,124,203,119,137,138,227,136,165,136,159,154,103,90,167,254,198,241,254,216,99,262,76,76,208,205,241,109,153,185,124,125,135,222,150,178,126,188,124,120,123,114,187,139,134,158,193,176,174,157,199,197,97,129,122,159,217,94,95,59,150,83,248,254,161,149,181,208,227,179,185,257,144,179,163,152,133,154,179,149,167,149,120,102,162,178,157,154,164,166,181,140,177,160,137,172,79,84,256,199,110,254,254,172,165,145,215,246,170,235,164,250,168,240,178,188,111,154,183,276,119,185,266,145,150,238,181,171,94,106,230,216,167,131,108,157,142,237,132,172,175,89,157,139,132,121,225,196,167,231,226,166,163,174,146,164,142,169,165,165,177,233,181,193,182,148,239,140,183,144,246,171,225,230,109,152,149,151,175,165,131,149,141,146,118,254,231,160,77,138,120,193,175,161,186,97,103,167,181,178,176,143,90,141,170,182,126,188,221,150,227,193,191,261,164,156,160,158,113,254,149,209,181,178,267,171,163,160,266,152,193,158,104,111,149,145,135,140,179,141,53,159,108,93,202,162,168,180,147,127,177,140,129,118,112,120,172,130,113,150,219,139,109,162,143,190,176,173,170,182,121,140,129,212,109,133,171,149,149,141,141,125,144,99,155,226,139,203,180,232,230,204,228,164,243,205,214,128,247,105,180,217,158,171,257,233,180,226,144,155,140,131,223,163,241,187,217,210,207,131,204,248,234,210,184,203,222,138,216,161,173,210,218,220,104,270,158,124,211,243,173,165,103,264,172,196,161,180,224,196,220,189,182,229,202,216,173,180,221,178,230,185,170,222,225,182,162,251,190,154,165,270,147,256,165,159,155,220,132,185,147,179,187,164,129,135,223,172,135,188,214,206,197,254,212,220,162,161,250,212,191,177,251,198,200,165,188,206,125,171,199,256,185,204,226,214,161,220,204,173,211,173,204,206,183,135,190,167,190,203,166,140,160,131,247,212,257,233,202,155,234,121,122,173,211,213,199,169,204,175,157,238,177,237,193,245,204,228,261,248,222,183,164,256,168,206,252,135,190,189,158,229,225,225,183,204,244,190,204,167,157,198,146,243,193,150,202,231,194,196,225,187,248,160,147,190,142,231,243,142,159,202,158,250,254,146,205,143,243,196,215,160,163,153,216,190,123,178,161,185,250,185,200,158,152,124,224,250,171,181,231,154,216,164,231,178,192,122,193,136,245,191,195,162,182,133,165,257,164,210,117,127,181,160,173,162,195,154,236,193,148,105,149,194,119,191,154,177,240,156,140,157,229,223,169,173,225,251,178,142,187,231,150,155,183,212,190,137,201,217,205,210,146,243,258,183,200,203,195,168,198,95,176,187,191,183,257,182,180,162,254,187,106,149,205,246,209,187,232,189,173,197,187,211,201,222,187,226,161,163,138,160,217,252,164,216,104,238,227,214,227,98,149,204,146,259,130,154,180,261,157,174,205,238,225,195,175,254,153,251,143,167,210,141,211,226,181,230,150,140,144,116,205,174,124,179,174,235,152,241,159,165,200,156,165,126,179,221,181,219,221,173,177,189,246,207,162,232,176,155,180,157,152,234,200,150,153,166,240,213,128,245,214,95,197,215,232,173,228,206,158,190,233,186,142,188,185,252,242,165,194,251,124,165,252,228,180,208,188,204,263,152,191,234,143,232,161,176,221,173,193,178,225,233,203,206,143,160,115,169,134,171,194,216,181,188,126,152,108,221,149,158,156,171,173,203,138,156,169,208,135,210,200,173,183,259,110,254,228,131,154,168,201,137,152,231,160,165,214,179,247,252,145,162,172,128,172,139,102,219,118,203,142,194,195,153,114,217,184,204,166,150,214,257,132,98,152,201,176,220,160,158,227,113,189,253,206,225,226,155,202,190,214,184,178,252,215,147,171,227,266,115,124,154,229,130,181,170,130,203,114,134,237,170,180,192,201,138,119,237,154,143,202,189,157,239,131,207,167,240,213,206,211,178,264,168,256,124,166,194,217,202,225,139,219,222,228,169,177,211,171,129,163,102,139,245,156,202,216,149,171,224,186,115,123,104,161,146,164,181,215,229,206,91,105,175,174,235,129,181,116,163,171,189,162,172,129,106,227,87,200,189,125,175,141,125,174,181,150,147,98,159,124,134,150,124,140,162,173,176,166,212,227,151,153,158,138,129,154,231,147,103,191,140,207,198,162,195,149,100,127,125,132,138,127,136,209,207,164,196,145,177,216,248,177,203,230,210,211,189,190,126,216,202,143,193,180,173,263,127,220,166,169,226,157,205,218,236,220,147,255,134,161,161,225,160,128,176,196,139,196,233,260,207,142,186,180,195,237,157,110,170,254,247,100,228,158,216,219,150,172,171,226,158,245,242,106,192,188,161,191,178,222,155,174,150,261,191,112,251,149,256,168,184,209,182,219,278,132,188,108,122,253,132,239,194,212,137,169,146,144,197,112,154,159,143,188,185,120,143,120,183,162,221,161,141,107,172,185,203,236,172,190,85,87,187,142,244,166,107,177,170,169,123,89,78,186,134,173,173,198,227,125,105,87,147,158,175,127,141,167,205,165,155,257,179,205,122,91,122,134,220,136,84,180,186,236,191,226,118,173,143,142,230,147,133,145,252,137,219,159,260,168,104,178,85,72,59,155,78,148,106,59,174,160,108,108,146,57,129,245,195,218,131,137,189,162,113,87,101,158,138,72,130,267,59,228,129,107,127,125,193,210,121,113,132,89,124,63,157,181,149,149,104,148,137,132,149,159,207,71,191,222,223,165,145,222,211,218,212,111,106,93,97,134,225,155,129,134,156,139,108,125,187,136,78,121,123,82,126,110,108,122,39,154,144,116,166,186,139,115,173,161,109,100,160,206,127,151,99,83,263,90,187,119,208,123,201,241,224,184,165,111,189,194,210,60,152,203,69,168,97,115,206,195,157,143,165,219,122,186,125,106,160,160,217,154,190,146,121,108,190,91,216,140,187,127,184,272,157,149,168,118,183,179,156,147,173,142,221,133,180,133,130,191,251,255,115,138,175,164,174,118,146,140,155,121,137,178,167,200,181,152,173,138,205,213,190,168,156,161,122,146,126,206,236,225,148,173,223,108,131,176,166,128,207,190,107,157,160,116,169,141,156,160,177,110,77,198,106,113,139,148,90,222,143,231,140,124,153,127,136,106,150,177,109,160,173,129,75,92,226,149,154,121,206,116,97,185,162,199,72,201,107,105,154,121,196,159,197,195,141,179,114,3,196,184,3,194,194,199,233,201,245,200,90,116,263,197,199,123,115,159,88,134,238,121,105,222,206,127,179,167,128,215,218,181,152,145,176,147,108,148,237,106,198,187,155,128,189,143,167,86,52,118,30,56,133,68,102,57,110,74,82,89,166,106,87,87,125,52,101,145,143,186,221,134,154,256,190,150,129,179,111,181,244,186,186,214,154,176,170,169,171,148,214,146,244,239,216,235,183,182,194,159,142,75,145,133,139,159,155,161,204,139,214,182,88,158,229,151,211,211,204,171,119,130,232,202,161,201,245,151,160,154,167,210,145,86,242,110,191,214,237,210,114,161,171,121,152,234,100,181,150,200,111,146,74,225,222,178,191,207,101,130,158,220,175,151,151,251,170,236,168,135,195,110,142,206,92,267,223,204,261,232,207,213,150,247,203,203,152,179,196,209,272,116,155,234,224,160,235,140,147,157,69,216,114,142,134,193,111,119,119,171,180,249,143,81,255,142,76,153,62,136,162,228,124,169,117,154,127,165,240,101,252,131,152,211,142,160,157,145,143,157,159,191,141,207,149,132,241,189,221,136,255,205,182,161,173,116,105,191,94,83,105,152,97,151,64,101,113,94,110,111,130,125,171,103,47,111,127,152,91,75,132,171,106,155,152,82,125,258,189,123,181,166,101,76,156,109,132,157,128,166,175,136,127,88,253,127,120,124,56,101,72,192,174,160,163,105,155,190,193,222,63,154,179,112,204,77,219,134,173,230,182,210,212,130,160,197,224,204,250,91,173,144,182,165,122,187,231,218,139,259,134,95,119,161,161,190,194,185,241,119,135,131,183,151,212,98,157,163,171,169,196,137,206,211,195,141,158,183,134,127,138,173,138,110,185,133,122,171,100,162,124,146,203,254,153,144,161,228,187,106,165,156,88,154,183,186,110,249,127,109,229,148,151,110,175,170,232,129,225,110,154,55,208,215,153,148,202,89,194,211,120,121,126,241,193,133,172,87,97,129,236,138,249,121,130,104,260,177,95,117,229,245,125,211,182,120,141,96,75,108,125,156,172,84,193,117,204,117,110,160,104,102,90,68,174,151,114,103,123,95,98,154,205,197,112,170,126,87,207,265,94,153,123,93,172,121,146,182,110,137,186,179,72,208,148,133,142,104,152,146,123,160,129,77,108,119,158,164,120,165,151,182,73,180,137,131,95,183,80,189,96,143,169,179,157,137,146,204,143,155,201,135,195,217,176,89,125,114,168,250,133,144,196,147,127,140,93,131,103,162,131,135,88,88,113,114,148,96,196,215,48,93,156,136,185,172,102,175,175,118,231,169,103,128,144,179,128,123,175,106,194,127,153,153,203,91,143,194,208,149,217,141,187,85,199,129,230,215,118,145,145,169,141,165,195,112,237,165,134,168,219,138,187,158,160,154,257,210,119,165,115,191,232,93,204,124,149,226,273,266,146,178,146,101,97,91,90,106,117,175,172,104,131,221,225,137,139,108,151,195,187,202,164,159,131,150,190,185,93,94,212,216,245,162,204,269,219,257,166,155,189,216,130,78,175,201,131,132,136,78,135,196,151,184,44,143,194,177,152,157,152,117,262,54,162,147,198,128,109,196,174,125,175,164,92,136,192,152,209,208,237,165,197,180,166,217,183,177,196,139,80,144,227,168,164,153,131,140,172,182,156,104,128,153,135,224,203,188,231,160,126,166,154,190,208,99,58,179,184,219,229,194,207,186,82,126,176,123,218,116,167,227,170,172,191,147,146,120,164,129,168,125,229,188,146,136,200,149,165,189,229,236,196,260,209,175,194,104,162,193,167,210,201,157,198,144,191,242,173,156,149,157,130,155,194,106,206,248,123,145,234,93,159,165,105,100,197,164,170,146,150,129,248,168,138,165,137,140,160,237,190,154,140,165,121,101,229,183,127,223,122,124,202,148,112,162,241,255,141,208,129,106,145,197,137,115,210,135,119,129,91,103,156,221,103,106,128,136,174,175,127,270,141,169,138,232,152,185,160,131,199,190,145,113,133,78,202,183,176,110,224,215,106,144,109,257,235,212,199,210,98,183,112,126,233,170,145,152,116,154,99,149,94,92,169,98,262,160,151,118,131,177,123,150,94,160,112,237,167,170,84,169,92,156,157,115,155,223,227,160,182,177,110,159,95,87,122,144,141,156,146,90,218,103,122,140,132,191,160,84,110,75,64,142,76,132,132,82,101,125,196,114,160,210,161,139,97,137,162,195,123,192,82,208,167,82,186,167,163,193,181,231,225,172,178,167,183,149,225,141,161,219,245,150,189,126,131,132,101,155,155,103,125,195,151,154,211,187,104,142,104,106,87,163,155,143,107,117,151,159,228,187,106,142,166,179,147,196,137,205,78,120,121,227,117,177,192,211,217,156,123,151,193,192,194,159,209,213,174,176,144,108,115,168,168,136,219,215,190,165,183,199,196,122,99,100,171,158,146,191,123,135,135,107,78,219,121,172,193,254,133,145,201,194,132,263,122,191,129,216,119,161,192,95,125,147,216,201,155,114,212,213,212,140,121,177,127,115,80,199,106,196,78,200,180,253,195,54,141,138,144,163,105,179,117,96,170,203,149,119,134,125,193,103,190,142,124,161,168,166,214,129,207,170,204,177,269,151,209,126,259,200,168,149,229,156,153,162,224,163,157,216,196,152,205,127,99,195,249,255,212,183,179,143,132,189,200,191,162,181,140,195,146,180,177,214,157,121,187,68,141,215,137,185,208,121,263,132,182,250,236,150,230,150,216,252,216,215,205,123,214,244,214,200,216,179,210,221,197,227,135,208,258,181,190,137,219,218,235,162,116,161,86,163,170,238,201,247,237,195,201,105,132,161,215,208,197,241,161,184,175,156,211,219,209,170,149,215,198,208,229,201,217,230,134,152,232,179,163,85,111,138,97,147,174,239,218,136,187,193,123,238,176,187,190,204,237,175,194,231,208,195,219,192,156,212,155,215,217,177,203,173,120,114,185,270,210,221,136,188,212,123,235,174,91,156,213,170,149,182,234,139,156,193,138,175,174,268,149,183,150,123,259,267,211,166,160,183,156,222,178,156,152,147,169,176,157,128,88,241,198,249,129,212,247,153,228,184,214,182,206,145,201,78,114,194,164,192,198,126,214,177,43,137,174,154,255,158,153,138,132,221,195,187,143,207,175,189,112,151,147,206,215,188,193,72,169,235,166,176,128,231,131,194,188,188,189,136,161,165,203,197,177,136,231,152,183,180,125,162,121,220,184,237,203,214,262,155,160,191,173,130,141,229,205,226,131,158,165,176,115,185,189,200,236,180,135,169,192,164,133,109,199,194,232,173,171,164,239,152,134,187,230,166,192,126,142,154,232,172,162,236,246,195,199,197,133,143,230,125,218,233,266,220,201,197,124,133,203,187,113,206,165,140,156,119,178,144,137,152,193,166,254,132,207,188,114,127,171,147,247,103,186,123,102,149,158,146,89,224,260,147,163,176,167,156,217,130,196,150,102,124,232,139,203,134,162,241,180,195,147,132,126,246,166,165,177,124,165,209,180,132,143,149,153,211,213,180,199,179,164,151,175,99,133,173,179,245,232,148,117,120,114,167,187,155,146,108,106,185,215,125,217,119,152,238,155,125,243,143,208,174,202,211,222,218,159,122,122,137,142,139,179,201,212,190,148,134,204,146,182,209,165,130,196,143,167,156,209,144,155,199,171,227,193,162,147,166,177,215,179,128,144,152,150,199,126,136,134,152,132,112,193,158,90,149,236,140,106,161,256,144,219,129,201,191,210,113,178,222,154,135,134,114,250,114,147,146,147,82,265,115,90,160,78,180,196,168,168,111,67,164,146,118,195,96,107,108,99,170,214,79,83,184,75,159,97,209,165,165,134,219,178,251,107,121,130,211,245,211,272,243,149,254,143,193,266,201,245,172,132,254,235,232,207,257,125,145,142,227,195,252,162,213,165,196,237,164,118,204,202,106,90,149,147,107,156,171,219,212,101,56,126,105,201,50,235,115,212,183,86,208,193,157,162,163,176,119,198,89,209,180,138,129,83,172,126,216,155,139,218,113,239,100,191,176,150,165,129,226,180,195,235,136,161,202,237,167,195,96,84,193,88,131,148,100,185,169,215,155,121,223,90,230,202,187,175,65,132,99,207,133,172,189,220,134,139,255,148,167,153,161,191,195,155,230,194,134,104,108,140,184,157,168,170,205,207,121,205,167,85,173,124,112,118,176,151,159,154,133,66,153,112,93,139,111,166,194,208,94,242,79,129,115,242,187,76,247,276,145,189,199,147,149,156,100,142,225,113,88,123,168,213,149,131,135,228,98,174,189,214,175,155,167,205,161,100,130,198,135,177,234,229,214,153,112,155,236,215,165,258,180,166,146,203,174,112,232,186,147,227,206,205,126,147,89,173,196,193,188,182,169,181,210,137,210,218,179,191,189,193,178,185,118,208,176,126,185,205,199,181,54,180,84,64,60,176,187,193,195,192,128,143,178,186,197,188,197,191,71,187,167,177,201,178,177,132,184,186,171,172,168,75,175,50,161,152,133,207,254,130,228,237,160,112,181,143,135,158,86,177,168,141,252,164,114,157,146,107,144,234,165,258,210,80,121,116,154,120,152,182,189,119,219,172,174,112,218,123,69,130,112,48,178,106,165,220,190,168,132,119,195,88,141,183,198,198,112,123,114,135,104,162,114,61,157,163,106,166,123,132,210,118,136,138,113,220,204,186,116,232,87,165,156,116,151,132,145,152,95,180,67,180,200,132,103,129,136,133,144,147,101,113,102,215,94,155,177,244,141,165,106,149,204,180,181,195,120,219,89,107,199,68,106,153,170,110,134,87,182,150,120,104,78,92,200,234,198,120,100,157,116,121,145,260,96,133,178,134,200,144,250,99,165,184,132,124,192,126,231,255,78,160,195,75,97,257,226,105,212,139,129,237,120,165,168,219,191,237,197,175,185,132,202,168,262,192,211,200,193,189,191,223,163,195,123,135,168,246,155,229,122,147,129,106,207,134,120,184,190,143,158,148,113,93,118,207,207,209,190,155,161,149,224,178,170,170,157,163,227,151,249,106,170,130,176,126,140,259,125,134,172,162,263,106,241,188,181,151,76,141,70,128,140,219,140,128,121,124,189,101,180,132,110,192,94,98,121,140,115,140,137,73,168,178,3,68,116,85,99,88,146,202,103,156,162,110,142,132,186,103,168,148,126,154,106,136,133,95,109,176,120,146,99,110,112,99,166,101,123,200,124,140,66,151,207,96,76,114,108,150,91,145,174,93,156,125,127,229,144,86,199,229,85,112,222,118,95,124,175,128,68,227,109,157,196,136,172,146,104,147,176,194,90,94,139,131,155,179,153,154,121,129,168,119,107,181,143,218,214,211,178,163,98,206,99,205,233,195,209,197,238,114,225,210,236,138,209,154,261,146,200,186,148,230,155,234,200,153,158,211,228,177,262,180,159,216,137,197,232,186,152,260,239,148,202,193,186,205,178,250,218,180,150,177,142,228,196,114,145,174,225,243,143,195,161,155,202,234,150,172,165,153,203,129,170,188,213,151,199,225,139,135,136,226,175,240,162,173,136,120,175,217,171,181,144,170,196,232,179,196,174,182,211,170,100,191,232,147,190,184,197,182,140,242,210,233,133,129,218,188,140,133,180,248,180,137,150,239,254,177,191,204,151,157,246,171,213,234,163,240,155,130,167,130,204,225,152,162,233,142,239,227,83,175,130,216,209,270,112,182,263,188,228,159,213,239,234,194,217,171,236,221,225,197,167,165,183,195,206,115,127,179,213,200,201,184,171,185,233,157,230,159,208,123,211,177,174,154,150,206,212,200,209,177,156,169,174,233,196,152,208,166,116,137,176,218,243,183,267,143,141,198,175,133,159,132,255,155,227,136,262,192,200,155,168,139,181,182,178,215,235,162,208,88,138,100,127,181,222,189,152,163,239,235,178,195,156,187,184,147,234,85,215,211,155,173,211,176,158,144,161,96,232,177,148,138,116,179,161,222,142,157,141,182,262,159,253,217,154,152,243,183,124,222,245,200,201,215,229,230,190,261,239,128,196,147,250,152,245,219,143,115,217,193,169,193,194,264,119,147,72,168,147,124,193,195,181,219,216,233,138,152,233,169,162,255,117,162,238,188,134,207,185,187,147,138,211,166,140,148,145,191,194,197,263,187,175,197,171,76,220,109,219,200,135,170,245,147,171,159,179,270,133,120,178,199,193,207,168,130,137,197,136,229,200,141,191,199,177,219,147,223,168,188,182,151,254,174,221,190,100,172,161,220,132,177,128,125,165,221,212,148,182,196,237,237,200,160,111,194,138,212,229,122,141,187,153,139,3,200,136,160,141,128,135,127,196,203,104,148,131,123,179,174,166,126,108,182,170,176,237,126,175,112,149,169,217,140,130,160,215,169,85,157,131,144,205,126,141,142,199,135,206,250,200,170,237,186,215,191,180,222,189,178,151,239,144,209,249,130,222,242,220,159,175,229,171,133,180,211,137,174,182,197,203,187,175,191,113,215,238,174,213,142,145,140,162,213,203,166,201,187,172,198,266,166,240,139,138,197,240,221,164,219,197,144,138,147,194,140,168,154,233,195,172,254,152,138,192,162,195,213,198,136,190,204,145,209,246,254,146,218,145,204,187,205,195,193,200,214,235,128,169,144,73,189,103,228,215,162,234,203,142,231,220,191,234,159,208,234,206,155,168,184,155,261,140,247,174,153,248,170,154,154,238,219,231,130,188,131,160,93,187,203,165,143,189,153,201,221,191,155,174,225,176,94,127,162,167,218,217,205,215,243,191,194,155,168,187,215,170,185,166,160,165,182,198,211,114,224,181,123,264,233,180,143,256,217,173,185,194,224,134,232,124,149,235,129,186,223,242,204,156,195,247,156,158,176,182,243,201,151,174,143,203,172,238,196,199,188,189,191,197,222,247,184,233,155,189,185,185,174,166,236,238,212,188,144,171,203,214,133,162,151,233,196,152,215,153,197,202,185,183,201,187,112,202,154,176,177,144,203,143,183,173,217,229,92,165,202,191,247,141,230,201,200,209,191,166,205,149,186,253,212,139,124,218,186,163,213,229,153,208,213,242,141,151,170,222,209,151,203,208,195,150,220,173,174,200,114,152,199,146,144,174,150,199,166,195,169,202,183,246,228,210,195,162,234,238,134,227,149,134,228,258,201,177,188,142,147,150,268,221,252,199,148,184,133,158,228,221,250,184,135,172,182,152,225,194,192,157,227,123,144,84,173,235,146,145,189,153,191,262,180,147,224,132,187,122,178,204,131,187,143,152,179,133,190,219,195,198,143,162,88,200,206,209,185,254,198,240,198,220,150,206,180,181,141,123,230,195,185,151,128,236,88,240,152,215,230,162,178,145,219,199,248,133,192,122,251,218,130,177,144,138,170,159,172,171,182,205,263,187,183,216,93,177,158,218,230,199,156,189,205,178,182,207,189,204,172,225,238,159,195,261,137,126,237,193,153,200,201,229,175,140,185,191,105,180,71,100,183,222,198,195,160,193,189,190,221,135,172,249,188,224,170,199,189,252,128,224,194,144,190,167,199,242,242,195,153,220,179,224,237,181,161,202,227,212,246,184,222,222,237,228,192,194,158,256,163,149,197,260,179,134,222,205,139,159,154,158,132,144,165,237,128,196,157,166,164,191,135,198,226,144,160,166,214,198,184,204,175,191,159,173,186,169,173,100,186,143,137,242,197,235,207,262,163,183,208,170,203,177,256,190,155,237,211,139,217,205,215,170,182,185,188,226,215,198,209,190,189,202,170,257,217,153,122,223,133,245,215,225,159,181,236,162,194,255,139,150,161,202,191,199,149,214,117,246,177,170,139,110,129,151,209,247,213,145,191,264,208,184,134,182,218,211,208,184,190,135,221,230,104,209,234,235,188,166,152,186,199,195,176,182,206,202,122,176,159,229,195,113,125,218,132,259,212,205,226,186,142,233,138,168,180,258,217,199,139,133,226,201,117,95,148,187,242,221,217,242,228,173,195,120,131,258,123,225,207,210,205,210,221,198,194,167,262,194,189,136,267,152,196,231,177,199,203,201,164,212,154,252,217,242,123,184,123,258,136,215,188,216,138,211,163,140,158,105,188,157,228,165,161,152,214,193,199,126,111,132,234,158,193,179,219,206,225,157,210,200,214,196,180,254,177,178,230,186,180,153,250,97,178,135,188,139,159,225,92,221,174,200,131,205,119,188,135,195,206,251,235,165,172,190,171,204,142,195,236,170,160,158,158,181,146,121,135,179,263,196,186,180,239,135,192,160,127,181,200,162,246,111,115,115,138,198,188,206,204,171,164,166,190,209,229,225,221,190,188,113,110,221,119,218,139,200,155,166,198,136,118,222,98,146,157,190,72,98,154,120,201,177,173,142,175,239,97,194,157,208,111,205,166,149,236,153,126,175,174,107,261,151,130,159,99,93,150,134,166,214,214,259,161,222,221,164,191,240,231,261,196,234,208,223,151,102,147,113,170,178,206,196,248,203,179,180,198,239,147,112,89,123,176,127,150,104,91,174,144,185,158,175,115,143,133,172,137,203,193,181,184,151,143,194,161,118,130,203,234,206,136,162,244,187,146,173,99,201,246,176,128,202,248,195,204,176,147,225,217,175,152,182,244,100,162,123,128,191,160,162,216,165,199,127,190,185,174,95,157,183,117,233,81,199,135,159,119,106,141,224,118,206,147,138,196,149,122,149,191,157,243,214,159,206,129,176,170,142,181,172,119,168,112,206,176,208,164,191,139,174,215,132,228,187,279,197,176,159,157,131,155,161,185,137,274,94,177,133,150,180,214,198,170,228,154,116,207,140,126,142,141,163,82,138,127,180,198,109,107,148,185,135,199,158,171,242,170,183,239,197,130,173,110,141,199,206,169,95,177,136,177,140,187,208,175,154,148,146,154,169,161,196,164,87,170,95,214,145,113,186,244,148,118,167,156,218,196,165,182,167,125,156,130,157,137,184,137,203,122,162,115,181,152,101,212,179,184,155,234,52,213,172,153,247,136,171,160,220,153,138,161,159,121,175,183,183,252,263,258,152,122,266,239,251,216,256,234,97,152,162,189,167,234,227,222,220,174,172,186,109,105,130,158,124,153,112,150,132,167,182,227,184,254,231,130,184,188,192,146,142,185,201,149,204,164,164,213,179,131,130,200,118,186,104,108,105,244,231,192,184,154,171,178,240,180,158,191,131,143,185,190,139,155,138,182,223,220,171,160,150,210,194,149,182,162,173,138,191,165,118,223,237,184,156,188,99,153,211,79,176,146,102,152,207,177,133,246,226,159,204,152,203,159,79,106,103,76,198,95,220,221,190,242,240,162,108,67,184,96,182,179,172,215,50,106,164,194,183,131,167,84,127,85,136,83,156,79,174,135,187,207,146,106,183,220,248,159,207,199,201,123,224,200,112,109,250,164,237,134,129,136,159,114,190,63,147,107,202,189,209,125,107,115,141,189,141,207,105,173,124,90,178,193,136,189,72,218,156,147,114,243,173,181,112,171,142,214,160,92,149,169,155,247,177,237,158,112,113,153,201,204,165,237,174,97,169,145,174,111,212,186,103,128,198,190,181,138,70,209,222,260,191,172,116,125,224,112,89,244,156,206,194,91,167,139,94,95,204,116,251,141,172,150,157,224,125,121,161,164,156,163,147,169,227,209,184,225,196,178,154,132,219,176,195,218,135,181,190,175,181,205,158,109,160,218,231,192,169,185,194,181,194,113,211,219,106,151,213,197,231,166,224,176,155,198,188,190,157,129,162,214,170,147,238,215,132,61,138,244,98,122,65,65,186,139,142,167,128,178,154,178,199,111,156,106,122,229,201,76,183,116,199,190,169,186,150,92,121,89,139,88,130,130,88,92,152,148,154,203,199,127,146,148,122,118,172,209,125,109,174,264,137,164,112,162,166,118,119,119,185,129,67,214,124,160,120,240,205,135,126,227,255,267,251,246,258,172,77,262,257,258,171,259,169,144,200,258,267,182,53,206,140,279,276,155,149,188,133,190,191,163,142,188,248,251,247,288,284,252,262,231,217,222,290,257,200,248,243,280,275,239,286,221,285,244,256,285,209,260,285,289,232,283,273,271,282,269,286,263,274,231,163,225,146,187,293,149,286,186,258,166,180,290,267,279,197,237,216,281,286,213,243,201,260,271,243,214,178,228,286,288,278,277,217,280,234,271,272,292,277,286,180,201,192,239,236,236,220,193,155,211,137,194,256,247,254,158,98,192,221,204,164,261,234,191,234,181,256,281,226,166,220,203,264,254,99,248,118,156,154,109,155,242,111,144,169,231,114,101,145,148,158,75,165,182,166,152,150,250,119,104,229,144,148,240,209,214,152,96,113,121,226,217,141,153,121,178,249,157,211,145,150,144,106,95,216,110,147,103,209,114,82,159,110,138,94,139,171,122,123,160,132,144,131,136,173,215,120,210,185,181,219,132,234,190,97,216,189,201,188,131,167,172,198,105,192,195,176,230,179,125,111,204,215,97,178,185,90,101,166,208,169,41,187,170,226,172,130,227,148,163,202,184,153,157,236,188,128,186,190,159,135,94,169,132,215,202,160,118,83,208,175,163,181,107,233,110,192,197,151,103,170,92,132,255,217,97,191,116,180,210,120,179,198,101,133,90,201,192,180,136,47,92,254,151,215,56,72,232,227,135,139,153,105,22,114,122,113,222,165,205,140,208,216,171,179,193,199,241,160,178,157,131,78,179,162,116,54,143,95,104,79,139,150,169,153,169,108,148,154,86,235,207,111,100,98,162,158,183,133,170,131,103,87,159,109,99,129,133,222,76,160,134,187,124,96,211,224,126,141,243,162,196,145,188,139,144,169,236,208,127,133,116,103,173,132,148,134,97,118,97,114,154,182,172,89,216,189,210,194,145,166,137,166,174,111,210,209,130,203,213,121,159,74,179,204,129,196,258,136,249,114,79,222,101,148,103,147,184,229,223,117,142,140,205,212,172,228,137,140,203,183,190,88,188,137,142,138,189,212,187,248,204,180,103,191,215,103,134,116,166,217,136,127,183,156,115,169,139,187,142,146,218,227,132,151,158,142,154,154,197,168,135,119,160,122,133,148,165,179,143,155,223,125,133,159,157,134,129,147,153,147,167,167,207,224,206,161,200,129,155,182,196,113,153,155,193,154,187,122,164,81,182,167,194,151,97,130,178,143,120,228,202,199,135,142,116,180,146,134,117,209,182,98,104,147,143,157,201,186,151,177,149,138,147,120,118,168,169,184,92,162,185,190,89,172,174,191,170,152,170,238,213,150,183,188,136,193,110,184,161,155,186,212,260,119,174,108,173,152,194,169,132,184,182,150,171,173,181,197,175,192,173,255,191,198,179,253,195,204,256,185,162,161,234,192,175,165,262,193,153,263,213,166,213,177,182,217,251,212,120,220,225,196,159,219,243,143,199,137,211,214,180,201,212,186,199,212,224,213,121,185,179,246,135,184,195,207,155,182,241,206,249,183,147,195,216,195,130,253,231,239,204,216,203,218,191,236,138,157,162,173,155,149,179,235,160,143,240,210,199,169,248,192,225,139,233,176,210,177,182,164,153,254,211,221,151,219,132,192,191,145,239,190,174,173,232,190,174,176,235,162,230,167,157,176,214,256,244,214,167,123,156,257,195,153,242,169,249,187,167,140,144,244,143,168,104,178,211,260,230,225,180,174,176,210,209,191,241,195,191,200,204,169,150,225,209,184,134,223,204,129,195,188,188,211,176,228,198,232,151,212,137,255,186,151,179,166,199,189,190,206,173,248,234,140,191,227,162,244,225,163,253,247,264,192,252,122,147,248,227,142,187,195,203,143,222,218,184,218,178,180,152,161,220,195,253,189,176,175,192,199,188,116,220,248,246,180,151,187,123,235,178,183,175,120,236,209,175,121,151,238,243,117,187,132,204,250,155,225,192,138,127,179,246,162,257,199,128,196,164,237,172,117,192,192,175,163,191,168,172,176,194,206,238,179,166,206,138,203,198,217,136,213,232,186,167,236,133,259,98,210,193,241,141,188,244,202,179,171,188,209,223,232,171,179,195,171,261,120,207,165,126,188,261,116,269,169,178,72,171,158,169,164,192,157,168,122,219,210,119,215,219,200,134,237,251,244,211,191,197,176,215,249,164,216,207,211,165,177,191,167,238,168,161,214,105,185,220,180,178,188,204,155,170,176,186,148,182,184,161,207,196,257,177,178,153,222,205,234,166,195,194,214,195,198,153,160,229,152,182,148,199,177,168,177,148,182,244,150,263,207,169,167,233,158,180,152,229,205,239,195,225,256,164,202,125,110,239,197,226,161,211,218,204,195,159,222,181,183,143,187,228,173,238,181,215,206,184,244,207,177,140,138,255,198,219,230,171,262,247,150,161,147,198,226,189,265,203,193,174,201,197,167,143,163,168,182,167,206,222,177,190,251,213,212,257,243,188,253,204,149,238,168,167,153,147,156,217,166,172,142,207,196,201,252,211,167,221,270,212,165,192,147,203,191,219,222,231,185,172,167,173,252,162,229,217,136,190,172,273,213,201,184,136,240,253,220,173,237,132,107,200,205,161,144,190,207,248,232,255,180,147,234,142,112,227,159,110,119,156,177,208,189,203,159,258,247,176,193,172,183,147,165,124,141,156,146,174,150,192,209,139,164,138,205,147,164,145,124,242,169,107,212,142,160,150,204,141,219,184,163,182,249,124,180,119,119,122,218,187,184,195,209,233,202,234,267,175,199,210,102,115,80,203,86,162,229,204,169,135,195,253,97,83,144,179,231,157,133,172,163,157,139,163,139,171,133,207,153,142,115,88,212,261,117,118,76,157,170,64,23,187,122,135,129,155,155,142,189,103,151,113,76,123,144,150,152,121,229,79,93,110,142,152,79,48,119,160,123,130,162,151,150,87,125,129,103,114,146,137,193,214,164,197,94,86,161,116,142,150,90,242,99,97,122,119,102,84,117,139,105,37,71,77,104,182,120,114,86,139,129,64,87,170,133,106,88,128,134,135,159,169,144,158,163,109,267,108,171,136,61,72,153,109,186,132,131,125,98,172,124,196,119,171,224,263,150,261,106,262,198,168,145,156,185,180,237,134,237,140,162,93,134,197,166,177,203,230,140,108,177,95,120,182,141,83,107,151,88,265,138,153,165,177,151,157,109,150,131,84,122,78,155,169,160,147,144,95,132,162,99,141,81,60,137,109,138,185,169,134,77,228,97,135,124,68,134,140,128,128,137,99,160,185,146,214,182,244,159,167,144,115,126,257,201,108,71,87,113,101,134,146,164,161,82,96,101,76,166,124,205,82,103,124,209,93,86,158,113,100,157,114,188,209,114,151,163,176,215,156,217,219,163,142,173,150,217,125,96,102,231,137,171,192,180,100,142,103,160,119,70,78,107,149,161,75,58,136,123,126,95,184,157,147,98,253,96,114,110,111,134,112,92,204,151,168,155,261,191,235,172,166,246,206,183,142,179,205,160,227,194,190,172,168,131,254,190,195,93,133,99,124,128,151,123,133,134,114,157,121,150,73,119,234,164,220,118,215,246,124,256,128,230,127,234,133,125,260,224,140,108,234,234,200,91,132,131,155,110,88,138,249,157,185,104,131,88,116,128,181,200,172,113,99,110,102,101,148,196,66,124,166,141,197,79,101,175,121,126,163,115,131,172,166,275,112,121,223,199,117,241,92,148,116,102,164,229,152,206,217,240,155,221,155,103,229,217,151,132,151,128,134,99,190,159,227,74,151,138,184,146,120,161,186,192,242,186,230,151,193,187,194,104,163,124,152,174,149,186,213,200,150,168,200,159,229,160,163,197,215,130,203,172,197,198,171,172,162,164,145,237,233,210,176,228,240,171,226,198,264,241,93,132,193,172,191,168,152,128,146,209,152,138,179,187,140,150,214,255,119,151,236,133,80,214,91,107,102,72,230,193,139,235,181,211,150,210,170,139,112,231,162,121,179,166,220,162,129,109,157,258,223,206,131,140,187,200,117,155,149,163,104,239,135,266,129,123,129,167,192,170,180,200,134,146,195,108,255,181,154,180,177,203,159,174,129,83,154,124,197,191,200,82,229,72,144,65,99,72,186,105,59,70,104,204,130,105,162,100,73,144,99,99,212,164,228,163,244,195,211,237,231,217,108,223,188,154,100,131,229,198,165,183,236,235,227,186,217,205,167,145,111,253,169,152,114,138,136,239,228,176,148,182,245,204,222,216,185,218,189,238,196,218,96,180,151,113,128,108,126,200,160,189,222,158,164,217,219,162,177,251,186,100,180,130,149,176,164,220,104,254,272,187,109,100,163,215,229,192,182,152,198,209,213,124,162,234,117,207,167,92,107,81,169,158,97,108,93,142,156,75,134,151,191,181,116,143,135,114,215,105,166,108,114,185,171,139,259,229,73,117,103,87,219,120,168,208,126,150,191,145,92,189,172,182,177,94,160,179,166,146,200,144,161,212,93,136,138,119,142,151,191,102,142,138,175,111,209,141,115,108,94,148,131,108,115,189,111,132,152,112,100,128,139,249,197,103,257,160,177,207,149,117,152,136,161,175,60,94,108,148,132,198,104,211,216,105,135,161,109,202,196,168,180,125,203,106,170,124,104,137,112,151,126,110,149,185,241,117,101,130,137,76,62,96,76,112,137,117,234,196,121,137,161,94,142,151,124,78,187,124,110,134,189,159,172,89,83,98,77,74,182,194,134,220,153,134,151,122,95,176,60,100,134,197,103,122,177,145,122,144,136,199,156,132,190,163,123,112,123,168,90,120,90,99,92,115,88,133,140,158,226,147,124,181,106,229,201,228,227,130,202,158,122,170,197,117,115,133,200,150,137,190,128,188,221,163,166,152,100,144,141,72,167,86,166,192,142,123,127,137,100,141,136,251,208,123,142,208,186,94,145,169,123,138,164,139,123,109,107,206,94,168,135,99,161,147,96,163,180,107,144,138,225,202,143,112,252,152,155,98,99,61,79,126,64,88,191,140,97,136,162,112,106,153,135,106,129,144,141,195,119,146,171,111,96,94,85,94,167,145,91,53,224,108,126,87,127,217,177,192,237,148,109,87,92,203,67,109,114,86,185,97,73,159,85,136,122,98,116,175,101,169,176,114,131,110,191,124,132,246,229,198,111,112,184,150,190,172,135,142,152,87,211,161,127,159,79,168,191,179,122,188,220,89,167,73,254,156,146,223,191,171,237,178,142,246,224,104,104,110,163,115,130,144,183,68,74,165,100,84,174,199,151,239,180,142,220,208,262,250,126,89,215,152,184,156,189,158,106,165,103,99,149,163,162,104,102,136,179,159,187,180,144,116,110,213,140,264,137,83,200,265,199,142,130,177,186,169,161,179,202,244,218,99,117,132,126,239,225,178,152,223,174,114,142,212,185,252,276,215,203,105,205,169,118,186,259,157,218,175,143,197,221,237,158,213,162,99,170,182,194,186,192,110,272,153,261,222,218,78,144,146,85,111,174,154,129,110,79,127,119,136,150,210,113,196,167,178,168,211,156,147,179,125,152,206,142,124,194,119,192,137,222,187,153,164,86,157,150,224,228,247,171,201,249,133,195,130,222,90,213,179,82,118,90,101,134,254,130,116,154,125,184,218,221,104,85,96,176,120,120,186,96,106,197,138,158,188,165,167,91,147,126,166,119,98,84,147,121,151,177,147,97,81,188,124,129,136,194,162,161,123,209,123,158,143,149,124,212,172,167,190,172,118,235,192,185,138,180,146,108,222,158,184,123,223,153,151,85,111,166,198,116,164,164,153,194,93,112,115,144,251,72,114,171,213,127,130,205,147,111,143,164,204,206,79,148,192,179,148,155,165,140,203,172,129,189,186,143,230,150,76,168,84,128,183,82,189,122,101,100,107,162,194,155,175,181,153,95,211,248,127,163,164,82,154,261,181,158,197,130,221,225,237,211,159,208,238,160,152,142,215,146,208,243,218,239,85,204,106,98,129,56,112,76,97,113,145,92,135,235,239,174,153,171,178,158,99,131,152,83,178,202,170,83,126,165,124,129,156,141,92,149,85,136,172,180,186,116,177,137,84,266,71,175,185,117,169,107,128,151,104,100,107,127,134,166,180,85,272,140,155,81,215,234,43,87,225,143,181,166,185,111,196,250,122,118,91,178,171,229,247,191,164,217,163,204,99,169,174,169,201,181,181,97,195,200,202,182,144,239,218,156,179,267,254,172,180,251,122,167,85,160,198,179,118,184,172,102,203,254,129,236,118,253,226,220,223,182,175,208,178,175,187,254,200,209,202,152,158,178,183,92,157,225,133,235,143,211,139,149,169,120,140,193,194,254,175,181,195,170,170,185,187,230,159,180,112,141,190,180,219,156,179,187,108,111,234,213,131,225,189,203,140,222,220,181,202,223,231,172,219,126,216,207,86,160,224,133,228,227,171,183,97,248,166,228,137,189,147,178,152,190,108,195,257,194,239,155,165,181,194,240,176,201,208,225,112,154,82,175,151,130,186,170,124,152,257,147,182,218,166,131,182,207,210,238,208,177,161,233,265,125,131,184,136,162,211,157,233,197,178,137,116,224,163,102,151,248,125,211,251,218,255,267,117,215,191,165,123,221,199,215,135,186,136,181,217,178,228,155,166,249,179,191,178,223,192,219,188,227,187,215,225,236,140,203,135,217,196,139,184,189,158,184,195,184,129,140,177,189,206,222,132,155,188,244,203,226,166,208,192,137,254,147,230,87,195,212,138,192,92,149,242,234,144,196,171,226,167,194,157,229,215,207,212,181,208,146,241,252,195,134,230,192,177,216,168,186,121,156,265,116,178,156,130,126,236,230,211,156,187,148,97,186,230,118,114,178,204,165,152,129,135,191,197,178,139,221,176,136,196,203,213,173,241,165,245,211,136,191,141,228,153,133,162,233,244,137,218,242,146,216,96,214,173,226,215,181,200,213,196,93,203,206,178,155,63,263,86,190,175,162,164,142,131,212,87,192,204,165,230,206,125,207,155,212,172,195,140,208,159,179,180,166,186,239,144,168,163,234,148,197,242,163,103,92,169,239,223,214,204,132,219,220,163,213,260,140,213,158,169,128,164,210,172,172,109,166,143,81,232,126,188,113,176,134,162,151,92,197,238,133,170,129,191,242,104,119,201,173,121,222,139,167,150,102,215,179,161,159,199,81,265,185,179,195,170,227,205,155,199,155,159,152,113,186,239,210,190,168,93,203,215,184,197,218,257,203,185,103,177,85,216,121,131,131,209,148,248,134,176,159,163,164,116,222,193,266,86,208,108,230,101,185,238,197,195,111,167,183,107,110,93,105,207,207,123,175,230,122,187,250,124,136,146,228,230,178,269,135,176,227,150,206,178,225,214,133,166,161,225,152,221,108,158,200,170,201,218,207,183,168,190,216,229,92,231,222,184,189,200,163,133,85,125,132,195,164,101,187,135,161,235,128,206,120,146,103,210,161,162,116,212,168,199,188,233,265,214,202,214,135,212,104,113,195,156,212,191,195,185,232,216,244,142,206,189,173,218,237,225,154,195,245,140,145,206,176,202,183,208,253,207,167,166,172,208,210,183,193,176,215,207,109,129,200,226,175,185,185,120,128,140,248,226,181,222,143,219,217,82,149,197,215,127,202,116,108,208,130,197,184,122,212,74,206,127,177,83,240,124,169,204,209,207,235,137,238,176,194,88,222,227,159,242,253,151,171,202,193,98,191,180,206,180,67,237,111,228,215,168,121,55,127,153,268,109,133,217,277,246,147,111,196,94,183,215,146,105,124,157,125,129,111,149,193,239,192,137,119,135,172,200,216,246,126,227,194,210,193,115,171,174,131,236,180,121,93,97,164,200,230,112,149,183,189,88,169,230,183,180,195,203,190,183,171,167,163,193,199,241,180,198,243,204,232,101,196,244,187,195,177,179,206,190,220,235,218,220,192,134,195,216,219,186,267,154,176,200,223,177,235,191,153,224,190,141,147,228,202,219,159,234,241,183,253,197,195,194,147,188,197,214,153,192,225,175,240,128,222,300,138,220,166,233,131,127,230,231,153,277,171,214,111,115,177,118,197,178,256,146,249,177,193,140,92,223,217,242,242,200,131,147,143,198,190,177,192,204,238,218,245,236,135,212,119,238,207,103,238,198,151,187,132,113,175,246,131,95,196,54,192,136,210,244,182,234,92,209,194,194,166,186,197,88,124,216,243,243,151,195,252,136,199,131,154,180,230,137,156,135,184,82,37,64,137,144,210,200,209,176,175,171,104,106,171,131,193,141,197,235,270,105,226,256,124,133,257,162,151,171,120,129,183,139,112,151,167,210,233,123,163,192,174,141,239,137,195,150,250,145,146,237,242,168,158,269,206,129,181,102,173,208,202,162,242,135,165,170,250,106,76,123,125,140,242,127,138,81,168,152,81,144,124,186,78,221,248,214,210,147,192,85,117,199,103,203,184,210,187,122,213,268,159,215,132,143,202,189,181,177,176,199,195,97,196,205,182,204,195,213,201,192,127,151,3,202,194,211,179,179,179,189,180,207,190,195,192,224,207,166,176,187,201,151,180,198,192,180,196,111,214,143,202,214,209,198,161,192,197,207,202,214,194,183,198,187,198,198,201,210,188,204,185,190,211,197,221,204,200,187,129,211,185,194,210,200,208,208,216,201,218,219,184,192,199,207,191,199,213,218,184,191,216,211,218,200,180,190,187,230,201,178,185,193,209,202,185,183,195,197,213,194,189,198,188,196,184,219,214,191,188,176,158,133,174,212,188,177,63,170,139,142,104,65,119,128,208,180,198,198,174,90,147,196,59,171,194,173,164,183,130,165,173,181,191,180,84,186,173,115,129,79,124,241,128,127,157,135,79,83,104,73,114,111,97,136,101,252,87,97,113,172,180,126,171,166,124,71,155,135,219,202,101,184,137,223,260,140,119,180,171,255,173,121,104,42,127,136,198,86,128,112,122,200,148,157,129,104,200,211,164,126,108,58,217,175,210,108,152,107,89,78,84,95,163,144,187,153,207,71,207,120,227,205,188,146,191,131,230,151,166,183,175,194,239,196,141,121,206,200,133,190,141,157,200,73,178,112,158,136,202,158,125,256,70,99,140,168,139,197,57,186,122,179,121,179,148,177,92,242,93,176,118,92,138,123,117,143,162,235,78,193,168,216,163,255,59,153,137,173,166,133,174,264,127,203,191,206,158,123,182,137,233,165,199,179,182,164,61,165,148,84,78,198,255,144,126,95,179,112,200,219,227,226,107,224,143,242,119,237,173,106,91,184,150,156,156,236,173,205,109,206,154,203,132,123,228,158,255,182,105,176,110,247,84,133,84,181,158,199,271,140,162,192,150,150,191,205,210,172,148,152,128,129,204,146,201,130,191,186,157,107,196,200,225,156,188,204,209,111,180,99,127,270,162,76,231,235,163,275,168,211,159,150,154,277,95,180,108,183,159,239,187,243,166,57,146,92,143,152,184,229,152,59,168,263,114,215,117]
|
{index → index_large}/doclens.1.json
RENAMED
File without changes
|
index_large/ivf.pid.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:4134ef7bbf4c92e81cb9ed6f8d4a243a207c010e8e0b328d6e6782e6396d5ac5
|
3 |
+
size 22293159
|
index_large/metadata.json
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"config": {
|
3 |
+
"query_token_id": "[unused0]",
|
4 |
+
"doc_token_id": "[unused1]",
|
5 |
+
"query_token": "[Q]",
|
6 |
+
"doc_token": "[D]",
|
7 |
+
"ncells": null,
|
8 |
+
"centroid_score_threshold": null,
|
9 |
+
"ndocs": null,
|
10 |
+
"load_index_with_mmap": false,
|
11 |
+
"index_path": null,
|
12 |
+
"nbits": 2,
|
13 |
+
"kmeans_niters": 4,
|
14 |
+
"resume": false,
|
15 |
+
"similarity": "cosine",
|
16 |
+
"bsize": 64,
|
17 |
+
"accumsteps": 1,
|
18 |
+
"lr": 3e-6,
|
19 |
+
"maxsteps": 500000,
|
20 |
+
"save_every": null,
|
21 |
+
"warmup": null,
|
22 |
+
"warmup_bert": null,
|
23 |
+
"relu": false,
|
24 |
+
"nway": 2,
|
25 |
+
"use_ib_negatives": false,
|
26 |
+
"reranker": false,
|
27 |
+
"distillation_alpha": 1.0,
|
28 |
+
"ignore_scores": false,
|
29 |
+
"model_name": null,
|
30 |
+
"query_maxlen": 32,
|
31 |
+
"attend_to_mask_tokens": false,
|
32 |
+
"interaction": "colbert",
|
33 |
+
"dim": 128,
|
34 |
+
"doc_maxlen": 300,
|
35 |
+
"mask_punctuation": true,
|
36 |
+
"checkpoint": "colbert-ir\/colbertv2.0",
|
37 |
+
"triples": null,
|
38 |
+
"collection": [],
|
39 |
+
"queries": null,
|
40 |
+
"index_name": "index",
|
41 |
+
"overwrite": false,
|
42 |
+
"root": "\/coc\/pskynet6\/dheineman3\/4440\/colbert-acl\/experiments",
|
43 |
+
"experiment": "notebook",
|
44 |
+
"index_root": null,
|
45 |
+
"name": "2024-04\/15\/00.56.40",
|
46 |
+
"rank": 0,
|
47 |
+
"nranks": 1,
|
48 |
+
"amp": true,
|
49 |
+
"gpus": 8
|
50 |
+
},
|
51 |
+
"num_chunks": 2,
|
52 |
+
"num_partitions": 32768,
|
53 |
+
"num_embeddings": 7825632,
|
54 |
+
"avg_doclen": 166.92901023890784
|
55 |
+
}
|
index_large/plan.json
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"config": {
|
3 |
+
"query_token_id": "[unused0]",
|
4 |
+
"doc_token_id": "[unused1]",
|
5 |
+
"query_token": "[Q]",
|
6 |
+
"doc_token": "[D]",
|
7 |
+
"ncells": null,
|
8 |
+
"centroid_score_threshold": null,
|
9 |
+
"ndocs": null,
|
10 |
+
"load_index_with_mmap": false,
|
11 |
+
"index_path": null,
|
12 |
+
"nbits": 2,
|
13 |
+
"kmeans_niters": 4,
|
14 |
+
"resume": false,
|
15 |
+
"similarity": "cosine",
|
16 |
+
"bsize": 64,
|
17 |
+
"accumsteps": 1,
|
18 |
+
"lr": 3e-6,
|
19 |
+
"maxsteps": 500000,
|
20 |
+
"save_every": null,
|
21 |
+
"warmup": null,
|
22 |
+
"warmup_bert": null,
|
23 |
+
"relu": false,
|
24 |
+
"nway": 2,
|
25 |
+
"use_ib_negatives": false,
|
26 |
+
"reranker": false,
|
27 |
+
"distillation_alpha": 1.0,
|
28 |
+
"ignore_scores": false,
|
29 |
+
"model_name": null,
|
30 |
+
"query_maxlen": 32,
|
31 |
+
"attend_to_mask_tokens": false,
|
32 |
+
"interaction": "colbert",
|
33 |
+
"dim": 128,
|
34 |
+
"doc_maxlen": 300,
|
35 |
+
"mask_punctuation": true,
|
36 |
+
"checkpoint": "colbert-ir\/colbertv2.0",
|
37 |
+
"triples": null,
|
38 |
+
"collection": [
|
39 |
+
"list with 46880 elements starting with...",
|
40 |
+
[
|
41 |
+
"Position paper for YRRSDS 2023",
|
42 |
+
"In this position paper, I will present the research interests in my PostDoc on safety and robustness specific to conversational AI, including then relevant overlap from my PhD.",
|
43 |
+
"Speech production is nuanced and unique to every individual, but today{'}s Spoken Dialogue Systems (SDSs) are trained to use general speech patterns to successfully improve performance on various evaluation metrics. However, these patterns do not apply to certain user groups - often the very people that can benefit the most from SDSs. For example, people with dementia produce more disfluent speech than the general population. The healthcare domain is now a popular setting for spoken dialogue and human-robot interaction research. This trend is similar when observing company behaviour. Charities promote industry voice assistants, the creators are getting HIPAA compliance, and their features sometimes target vulnerable user groups. It is therefore critical to adapt SDSs to be more accessible."
|
44 |
+
]
|
45 |
+
],
|
46 |
+
"queries": null,
|
47 |
+
"index_name": "index",
|
48 |
+
"overwrite": false,
|
49 |
+
"root": "\/coc\/pskynet6\/dheineman3\/4440\/colbert-acl\/experiments",
|
50 |
+
"experiment": "notebook",
|
51 |
+
"index_root": null,
|
52 |
+
"name": "2024-04\/15\/00.56.40",
|
53 |
+
"rank": 0,
|
54 |
+
"nranks": 1,
|
55 |
+
"amp": true,
|
56 |
+
"gpus": 8
|
57 |
+
},
|
58 |
+
"num_chunks": 2,
|
59 |
+
"num_partitions": 32768,
|
60 |
+
"num_embeddings_est": 7845814.6533203125,
|
61 |
+
"avg_doclen_est": 167.35952758789062
|
62 |
+
}
|
requirements.txt
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
torch==1.13.1
|
2 |
-
colbert-ir[torch] # faiss-gpu
|
3 |
bibtexparser
|
4 |
mysql-connector-python
|
5 |
flask
|
|
|
1 |
torch==1.13.1
|
2 |
+
colbert-ir[torch,faiss-cpu] # faiss-gpu
|
3 |
bibtexparser
|
4 |
mysql-connector-python
|
5 |
flask
|
src/db.py
CHANGED
@@ -8,7 +8,7 @@ SELECT *
|
|
8 |
FROM paper
|
9 |
WHERE pid IN ({query_arg_str})
|
10 |
AND year >= {year}
|
11 |
-
AND venue_type IN ('main', 'short', 'findings');
|
12 |
"""
|
13 |
|
14 |
# 'workshop'
|
@@ -31,21 +31,22 @@ def read_dataset():
|
|
31 |
|
32 |
def create_database():
|
33 |
db = mysql.connector.connect(
|
34 |
-
host = "localhost",
|
35 |
user = "root",
|
36 |
-
password = ""
|
|
|
37 |
)
|
38 |
cursor = db.cursor()
|
39 |
|
40 |
cursor.execute("SHOW DATABASES")
|
41 |
-
|
42 |
for x in cursor:
|
43 |
db_name = x[0]
|
44 |
if db_name == DB_NAME:
|
45 |
-
|
46 |
|
47 |
# Create database
|
48 |
-
if not
|
49 |
print("Creating new database...")
|
50 |
cursor.execute(f'CREATE DATABASE {DB_NAME}')
|
51 |
cursor.execute(f'USE {DB_NAME}')
|
|
|
8 |
FROM paper
|
9 |
WHERE pid IN ({query_arg_str})
|
10 |
AND year >= {year}
|
11 |
+
AND venue_type IN ('main', 'short', 'findings', 'workshop');
|
12 |
"""
|
13 |
|
14 |
# 'workshop'
|
|
|
31 |
|
32 |
def create_database():
|
33 |
db = mysql.connector.connect(
|
34 |
+
host = "mysql_db", # "localhost",
|
35 |
user = "root",
|
36 |
+
password = "",
|
37 |
+
port = 3306 # None
|
38 |
)
|
39 |
cursor = db.cursor()
|
40 |
|
41 |
cursor.execute("SHOW DATABASES")
|
42 |
+
db_exists = False
|
43 |
for x in cursor:
|
44 |
db_name = x[0]
|
45 |
if db_name == DB_NAME:
|
46 |
+
db_exists = True
|
47 |
|
48 |
# Create database
|
49 |
+
if not db_exists:
|
50 |
print("Creating new database...")
|
51 |
cursor.execute(f'CREATE DATABASE {DB_NAME}')
|
52 |
cursor.execute(f'USE {DB_NAME}')
|
src/server.py
CHANGED
@@ -75,8 +75,8 @@ if __name__ == "__main__":
|
|
75 |
"""
|
76 |
Example usage:
|
77 |
python server.py
|
78 |
-
http://localhost:8893/api/colbert?
|
79 |
-
http://localhost:8893/api/search?
|
80 |
"""
|
81 |
create_database()
|
82 |
init_colbert(index_path=INDEX_PATH)
|
|
|
75 |
"""
|
76 |
Example usage:
|
77 |
python server.py
|
78 |
+
http://localhost:8893/api/colbert?query=Information retrevial with BERT
|
79 |
+
http://localhost:8893/api/search?query=Information retrevial with BERT
|
80 |
"""
|
81 |
create_database()
|
82 |
init_colbert(index_path=INDEX_PATH)
|