commit da1a89450a07854658ca4853f56439324d3d79fc Author: ulaniuk Date: Thu May 5 19:32:53 2022 +0200 s478855 diff --git a/README.md b/README.md new file mode 100644 index 0000000..1d76574 --- /dev/null +++ b/README.md @@ -0,0 +1,25 @@ + +Sport Texts Classification Challenge - Ball +====================== + +Guess whether the sport is connected to the ball for a Polish article. Evaluation metrics: Accuracy, Likelihood. + +Classes +------- + +* `1` — ball +* `0` — no-ball + +Directory structure +------------------- + +* `README.md` — this file +* `config.txt` — configuration file +* `train/` — directory with training data +* `train/train.tsv` — sample train set +* `dev-0/` — directory with dev (test) data +* `dev-0/in.tsv` — input data for the dev set +* `dev-0/expected.tsv` — expected (reference) data for the dev set +* `test-A` — directory with test data +* `test-A/in.tsv` — input data for the test set +* `test-A/expected.tsv` — expected (reference) data for the test set diff --git a/config.txt b/config.txt new file mode 100644 index 0000000..6973e2f --- /dev/null +++ b/config.txt @@ -0,0 +1 @@ +--metric Likelihood --metric Accuracy --precision 5 diff --git a/dev-0/out.tsv b/dev-0/out.tsv new file mode 100644 index 0000000..296544f --- /dev/null +++ b/dev-0/out.tsv @@ -0,0 +1,5452 @@ +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +0 +0 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +1 +0 +0 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 diff --git a/run.ipynb b/run.ipynb new file mode 100644 index 0000000..6df939a --- /dev/null +++ b/run.ipynb @@ -0,0 +1,182 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "stworzyć klasyfikator bazujący na naiwnym bayessie (może być gotowa biblioteka), może też korzystać z gotowych implementacji tfidf\n", + "\n", + "stworzyć predykcje w plikach dev-0/out.tsv oraz test-A/out.tsv\n", + "\n", + "wynik accuracy sprawdzony za pomocą narzędzia geval (patrz poprzednie zadanie) powinien wynosić conajmniej 0.67\n", + "\n", + "proszę umieścić predykcję oraz skrypty generujące (w postaci tekstowej a nie jupyter) w repo, zadanie oddajemy w gonito, termin 10.05, 40 punktów\n", + "\n", + "Output label is the probability of a paranormal subreddit." + ] + }, + { + "cell_type": "code", + "execution_count": 135, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "from sklearn.feature_extraction.text import TfidfVectorizer\n", + "from sklearn.naive_bayes import MultinomialNB\n", + "from sklearn.pipeline import make_pipeline" + ] + }, + { + "cell_type": "code", + "execution_count": 136, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_1208\\74507919.py:1: FutureWarning: The error_bad_lines argument has been deprecated and will be removed in a future version. Use on_bad_lines in the future.\n", + "\n", + "\n", + " data = pd.read_csv('train/train.tsv', sep='\\t', header=None, error_bad_lines=False)\n", + "b'Skipping line 25706: expected 2 fields, saw 3\\nSkipping line 58881: expected 2 fields, saw 3\\nSkipping line 73761: expected 2 fields, saw 3\\n'\n" + ] + } + ], + "source": [ + "data = pd.read_csv('train/train.tsv', sep='\\t', header=None, error_bad_lines=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 137, + "metadata": {}, + "outputs": [], + "source": [ + "X = data[1]\n", + "\n", + "with open('dev-0/in.tsv', 'r', encoding='utf8') as f:\n", + " Xdev = f.readlines()\n", + "Xdev = pd.Series(Xdev)\n", + "\n", + "with open('test-A/in.tsv', 'r', encoding='utf8') as f:\n", + " Xtest = f.readlines()\n", + "Xtest = pd.Series(Xtest)" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [], + "source": [ + "y = data[0].astype('string')\n", + "\n", + "ydev = pd.read_csv('dev-0/expected.tsv', sep='\\t', header=None)\n", + "ydev = ydev.squeeze()" + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "metadata": {}, + "outputs": [], + "source": [ + "model = make_pipeline(TfidfVectorizer(), MultinomialNB())" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Pipeline(steps=[('tfidfvectorizer', TfidfVectorizer()),\n", + " ('multinomialnb', MultinomialNB())])" + ] + }, + "execution_count": 140, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model.fit(X, y)" + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "metadata": {}, + "outputs": [], + "source": [ + "predictions_dev0 = model.predict(Xdev)\n", + "predictions_dev0 = pd.Series(predictions_dev0)\n", + "predictions_dev0 = predictions_dev0.astype('int')" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "metadata": {}, + "outputs": [], + "source": [ + "with open('dev-0/out.tsv', 'wt') as f:\n", + " for pred in predictions_dev0:\n", + " f.write(str(pred)+'\\n')" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "metadata": {}, + "outputs": [], + "source": [ + "predictions_testA = model.predict(Xtest)\n", + "predictions_testA = pd.Series(predictions_testA)\n", + "predictions_testA = predictions_testA.astype('int')" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "metadata": {}, + "outputs": [], + "source": [ + "with open('test-A/out.tsv', 'wt') as f:\n", + " for pred in predictions_testA:\n", + " f.write(str(pred)+'\\n')" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "df93b008b708122b991044997d8941ca5d5845b048d54848454a010a3b0bd41a" + }, + "kernelspec": { + "display_name": "Python 3.8.13 ('eks')", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.13" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/run.py b/run.py new file mode 100644 index 0000000..9d8b414 --- /dev/null +++ b/run.py @@ -0,0 +1,59 @@ +import pandas as pd +import numpy as np + +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.naive_bayes import MultinomialNB +from sklearn.pipeline import make_pipeline + + +data = pd.read_csv('train/train.tsv', sep='\t', header=None, error_bad_lines=False) + + +X = data[1] + +with open('dev-0/in.tsv', 'r', encoding='utf8') as f: + Xdev = f.readlines() +Xdev = pd.Series(Xdev) + +with open('test-A/in.tsv', 'r', encoding='utf8') as f: + Xtest = f.readlines() +Xtest = pd.Series(Xtest) + + + +y = data[0].astype('string') + +ydev = pd.read_csv('dev-0/expected.tsv', sep='\t', header=None) +ydev = ydev.squeeze() + + +model = make_pipeline(TfidfVectorizer(), MultinomialNB()) + +model.fit(X, y) + + +predictions_dev0 = model.predict(Xdev) +predictions_dev0 = pd.Series(predictions_dev0) +predictions_dev0 = predictions_dev0.astype('int') + + +with open('dev-0/out.tsv', 'wt') as f: + for pred in predictions_dev0: + f.write(str(pred)+'\n') + + +predictions_testA = model.predict(Xtest) +predictions_testA = pd.Series(predictions_testA) +predictions_testA = predictions_testA.astype('int') + + + +with open('test-A/out.tsv', 'wt') as f: + for pred in predictions_testA: + f.write(str(pred)+'\n') + + + + + + diff --git a/test-A/out.tsv b/test-A/out.tsv new file mode 100644 index 0000000..e4e74be --- /dev/null +++ b/test-A/out.tsv @@ -0,0 +1,5447 @@ +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +0 +0 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +0 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +1 +0 +1 +0 +0 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +1 +0 +0 +0 +0 +1 +0 +1 +1 +0 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +0 +0 +1 +1 +1 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +0 +1 +1 +0 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +1 +1 +0 +1 +1 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +1 +1 +1 +0 +0 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +0 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +1 +0 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +0 +0 +0 +0 +1 +1 +1 +0 +1 +1 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +0 +1 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +0 +1 +0 +0 +0 +1 +1 +0 +0 +0 +1 +1 +0 +1 +0 +1 +1 +0 +1 +0 +1 +1 +1 +1 +1 +1 +0 +0 +1 +0 +1 +0 +1 +1 +0 +0 +1 +1 +1 +0 +1 +0 +1 +1 +0 +1 +1 +1 +1 +0 +1 +1 +0 +1 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +1 +1 +1 +1 +1 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +1 +0 +1 +0 +1 +0 +1 +1 +1 +1 +1 +0 +1 +1 +0 +0 +0 +1 +1 +1 +1 +1 +0 +0 +1 +1 +1 +0 +0 +0 +0 +1 +0 +0 +0 +1 +1 +1 +0 +1 +0 +0 +1 +0 +1 +1 +0 +1