未验证 提交 e4d8a5ee 编写于 作者: weixin_46662084's avatar weixin_46662084 提交者: GitHub

Merge pull request #65 from primihub/develop

1.1.5 release PR 
...@@ -33,6 +33,7 @@ jobs: ...@@ -33,6 +33,7 @@ jobs:
with: with:
python-version: '3.9' # Version range or exact version of a Python version to use, using SemVer's version range syntax python-version: '3.9' # Version range or exact version of a Python version to use, using SemVer's version range syntax
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
- run: sudo apt update
- name: Install gcc-8 - name: Install gcc-8
run: | run: |
sudo apt install -y gcc-8 g++-8 \ sudo apt install -y gcc-8 g++-8 \
...@@ -47,12 +48,10 @@ jobs: ...@@ -47,12 +48,10 @@ jobs:
with: with:
path: "~/.cache/bazel" path: "~/.cache/bazel"
key: bazel key: bazel
- name: set PYTHON LINK_OPTS
run: ./pre_build.sh
shell: bash
- name: bazel test - name: bazel test
run: | run: |
./pre_build.sh
bazel build --config=linux logistic_test maxpool_test falcon_lenet_test common_test network_test bazel build --config=linux logistic_test maxpool_test falcon_lenet_test common_test network_test
./bazel-bin/logistic_test ./bazel-bin/logistic_test
./bazel-bin/maxpool_test ./bazel-bin/maxpool_test
...@@ -79,13 +78,12 @@ jobs: ...@@ -79,13 +78,12 @@ jobs:
with: with:
path: "~/.cache/bazel" path: "~/.cache/bazel"
key: bazel key: bazel
- name: get python ldflags - name: get python ldflags
run: python3.9-config --ldflags run: python3.9-config --ldflags
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: bazel build - name: bazel build
run: | run: |
./pre_build.sh
bazel build --config=darwin_x86_64 --config=macos common_test network_test logistic_test bazel build --config=darwin_x86_64 --config=macos common_test network_test logistic_test
./bazel-bin/common_test ./bazel-bin/common_test
./bazel-bin/network_test ./bazel-bin/network_test
...@@ -94,6 +92,7 @@ jobs: ...@@ -94,6 +92,7 @@ jobs:
# bazel test --config=darwin_x86_64 --config=macos protocol_aby3_test # bazel test --config=darwin_x86_64 --config=macos protocol_aby3_test
# bazel test --config=darwin_x86_64 --config=macos prng_test # bazel test --config=darwin_x86_64 --config=macos prng_test
# bazel test --config=darwin_x86_64 --config=macos share_test # bazel test --config=darwin_x86_64 --config=macos share_test
shell: bash
build-on-ubuntu: build-on-ubuntu:
...@@ -108,6 +107,7 @@ jobs: ...@@ -108,6 +107,7 @@ jobs:
with: with:
python-version: '3.9' # Version range or exact version of a Python version to use, using SemVer's version range syntax python-version: '3.9' # Version range or exact version of a Python version to use, using SemVer's version range syntax
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
- run: sudo apt update
- name: Install gcc-8 - name: Install gcc-8
run: | run: |
sudo apt install -y gcc-8 g++-8 \ sudo apt install -y gcc-8 g++-8 \
...@@ -129,6 +129,7 @@ jobs: ...@@ -129,6 +129,7 @@ jobs:
run: | run: |
# cc_binary # cc_binary
bazel build --config=linux :node :cli :opt_paillier_c2py_test bazel build --config=linux :node :cli :opt_paillier_c2py_test
build-on-mac_x86_64: build-on-mac_x86_64:
needs: unit-test-on-macos_x86_64 needs: unit-test-on-macos_x86_64
...@@ -147,7 +148,9 @@ jobs: ...@@ -147,7 +148,9 @@ jobs:
- name: bazel build - name: bazel build
run: | run: |
# cc_binary # cc_binary
./pre_build.sh
bazel build --config=darwin_x86_64 --config=macos :node :cli :opt_paillier_c2py_test --sandbox_debug bazel build --config=darwin_x86_64 --config=macos :node :cli :opt_paillier_c2py_test --sandbox_debug
shell: bash
- name: Release copy - name: Release copy
run : | run : |
cp ./bazel-bin/node ./bazel-bin/primihub-node cp ./bazel-bin/node ./bazel-bin/primihub-node
......
...@@ -105,5 +105,10 @@ output ...@@ -105,5 +105,10 @@ output
*.egg-info/ *.egg-info/
*.pyc *.pyc
# sphinx .rst
*.rst
primihub.code-workspace
# leveldb storage # leveldb storage
localdb/ localdb/
...@@ -519,12 +519,12 @@ cc_library( ...@@ -519,12 +519,12 @@ cc_library(
]), ]),
hdrs = glob([ hdrs = glob([
"src/primihub/task/**/*.h", "src/primihub/task/**/*.h",
"src/primihub/util/util.h"
]), ]),
copts = C_OPT, copts = C_OPT,
# PLACEHOLDER-PYTHON3.X-CONFIG (pre_build.sh use it to # pre_build.sh use it to help locate line content of which need replace,
# help locate line content of which need replace, don't # don't remove it.
# remove it.) linkopts = LINK_OPTS + PLACEHOLDER-PYTHON3.X-CONFIG,
linkopts = LINK_OPTS + ["-L/usr/local/opt/python@3.9/Frameworks/Python.framework/Versions/3.9/lib/python3.9/config-3.9-darwin -ldl -lpython3.9 -framework CoreFoundation"],
linkstatic = False, linkstatic = False,
deps = TASK_LIB_DEPS, deps = TASK_LIB_DEPS,
) )
...@@ -1341,7 +1341,7 @@ cc_test( ...@@ -1341,7 +1341,7 @@ cc_test(
":logistic_test", ":logistic_test",
":prng_test", ":prng_test",
":share_test", ":share_test",
":paillier_test", ":opt_paillier_test",
], ],
) )
......
...@@ -50,7 +50,7 @@ WORKDIR /src ...@@ -50,7 +50,7 @@ WORKDIR /src
ADD . /src ADD . /src
# Bazel build primihub-node & primihub-cli & paillier shared library # Bazel build primihub-node & primihub-cli & paillier shared library
RUN bash pre_docker_build.sh \ RUN bash pre_build.sh \
&& bazel build --config=linux :node :cli :opt_paillier_c2py_test && bazel build --config=linux :node :cli :opt_paillier_c2py_test
FROM ubuntu:18.04 as runner FROM ubuntu:18.04 as runner
...@@ -83,17 +83,17 @@ WORKDIR /app ...@@ -83,17 +83,17 @@ WORKDIR /app
COPY --from=builder /src/config ./ COPY --from=builder /src/config ./
# Copy primihub python sources to /app and setup to system python3 # Copy primihub python sources to /app and setup to system python3
RUN mkdir primihub_python RUN mkdir -p src/primihub/protos
COPY --from=builder /src/python/ ./primihub_python/ COPY --from=builder /src/python ./python
COPY --from=builder /src/src/primihub/protos/ ./src/primihub/protos/
COPY --from=builder src/python/primihub/tests/data/ /tmp/ COPY --from=builder src/python/primihub/tests/data/ /tmp/
WORKDIR /app/primihub_python WORKDIR /app/python
RUN python3.9 -m pip install --upgrade pip setuptools RUN python3.9 -m pip install --upgrade pip setuptools
RUN python3.9 -m pip install -r requirements.txt RUN python3.9 -m pip install -r requirements.txt
RUN python3.9 setup.py install RUN python3.9 setup.py install
ENV PYTHONPATH=/usr/lib/python3.9/site-packages/:$TARGET_PATH ENV PYTHONPATH=/usr/lib/python3.9/site-packages/:$TARGET_PATH
WORKDIR /app WORKDIR /app
# gRPC server port # gRPC server port
EXPOSE 50050 EXPOSE 50050
# Cryptool port # Cryptool port
......
FROM ubuntu:20.04 as runner FROM ubuntu:20.04 as runner
ENV LANG C.UTF-8 ENV LANG=en_US.UTF-8
ENV LANGUAGE=en_US.UTF-8
ENV LC_ALL=en_US.UTF-8
ENV DEBIAN_FRONTEND=noninteractive ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \ RUN apt-get update \
&& apt-get install -y python3.9 python3.9-dev libgmp-dev python3-pip git \ && apt-get install -y python3.9 python3.9-dev libgmp-dev python3-pip git \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
ARG TARGET_PATH=/root/.cache/bazel/_bazel_root/17a1cd4fb136f9bc7469e0db6305b35a/execroot/__main__/bazel-out/k8-fastbuild/bin ARG TARGET_PATH=/root/.cache/bazel/_bazel_root/17a1cd4fb136f9bc7469e0db6305b35a/execroot/__main__/bazel-out/k8-fastbuild/bin
WORKDIR $TARGET_PATH WORKDIR $TARGET_PATH
# Copy binaries to TARGET_PATH # Copy binaries to TARGET_PATH
COPY . ./ COPY . ./
# Copy test data files to /tmp/ # Copy test data files to /tmp/
COPY ./data/ /tmp/ COPY ./data/ /tmp/
# Make symlink to primihub-node & primihub-cli
RUN mkdir -p /app/config /app/primihub_python && ln -s $TARGET_PATH/node /app/primihub-node && ln -s $TARGET_PATH/cli /app/primihub-cli
# Change WorkDir to /app # Change WorkDir to /app
WORKDIR /app WORKDIR /app
# Make symlink to primihub-node & primihub-cli
RUN ln -s $TARGET_PATH/node /app/primihub-node && ln -s $TARGET_PATH/cli /app/primihub-cli
# Copy all test config files to /app # Copy all test config files to /app
COPY ./config/ ./config/ COPY ./config ./config
# Copy primihub python sources to /app and setup to system python3 # Copy primihub python sources to /app and setup to system python3
COPY ./python/ ./primihub_python/ COPY ./python ./python
COPY ./src ./src
RUN cd primihub_python \ WORKDIR /app/python
&& python3.9 -m pip install --upgrade pip \ RUN python3.9 -m pip install --upgrade pip \
&& pip3 install -r requirements.txt \ && python3.9 -m pip install --no-cache-dir -r requirements.txt
&& python3.9 setup.py install
RUN python3.9 -m pip install cloudpickle
RUN python3.9 -m pip uninstall primihub \
RUN python3.9 setup.py install
RUN python3.9 setup.py develop
WORKDIR /app
RUN ln -s /app/python /app/primihub_python
ENV PYTHONPATH=/usr/lib/python3.9/site-packages/:$TARGET_PATH ENV PYTHONPATH=/usr/lib/python3.9/site-packages/:$TARGET_PATH
# gRPC server port # gRPC server port
EXPOSE 50050 8888 EXPOSE 50050 8888
# Cryptool port # Cryptool port
EXPOSE 12120 EXPOSE 12120
EXPOSE 12121 EXPOSE 12121
\ No newline at end of file
...@@ -142,7 +142,7 @@ http_archive( ...@@ -142,7 +142,7 @@ http_archive(
name = "bazel_common", name = "bazel_common",
url = "https://github.com/google/bazel-common/archive/refs/heads/master.zip", url = "https://github.com/google/bazel-common/archive/refs/heads/master.zip",
strip_prefix = "bazel-common-master", strip_prefix = "bazel-common-master",
sha256 = "b7a8e1a4ad843df69c9714377f023276cd15c3b706a46b6e5a1dc7e101fec419", sha256 = "7034b3fb6b3051d70f33853fff48b0e931b57e35c6a32bba0280c6f2b6d6ee0c",
) )
http_archive( http_archive(
......
...@@ -34,18 +34,18 @@ IMAGE_NAME="primihub/primihub_node" ...@@ -34,18 +34,18 @@ IMAGE_NAME="primihub/primihub_node"
sed -i "10c ARG TARGET_PATH=$BASE_DIR" Dockerfile.local sed -i "10c ARG TARGET_PATH=$BASE_DIR" Dockerfile.local
rm -rf $BASE_DIR/python $BASE_DIR/config #rm -rf $BASE_DIR/python $BASE_DIR/config
rm -f $BASE_DIR/Dockerfile.local rm -f $BASE_DIR/Dockerfile.local
rm -f $BASE_DIR/.dockerignore rm -f $BASE_DIR/.dockerignore
rm -rf $BASE_DIR/data #rm -rf $BASE_DIR/data
cp -r ./data $BASE_DIR/ cp -r ./data $BASE_DIR/
cp -r ./python $BASE_DIR/ cp -r ./python $BASE_DIR/
cp -r ./config $BASE_DIR/ cp -r ./config $BASE_DIR/
cp ./Dockerfile.local $BASE_DIR/ cp ./Dockerfile.local $BASE_DIR/
cp -r ./src $BASE_DIR/
cd $BASE_DIR cd $BASE_DIR
find ./ -name "_objs" > .dockerignore find ./ -name "_objs" > .dockerignore
docker build -t $IMAGE_NAME:$1 . -f Dockerfile.local docker build --no-cache -t $IMAGE_NAME:$1 . -f Dockerfile.local
\ No newline at end of file
...@@ -33,15 +33,18 @@ datasets: ...@@ -33,15 +33,18 @@ datasets:
- description: "test_party_1" - description: "test_party_1"
model: "csv" model: "csv"
source: "data/test_party_1.csv" source: "data/test_party_1.csv"
- description: "guest_dataset"
model: "csv"
source: "data/breast-cancer-wisconsin.data"
- description: "pir_server_data" - description: "pir_server_data"
model: "csv" model: "csv"
source: "data/pir_server.csv" source: "data/pir_server.csv"
- description: "psi_server_data" - description: "psi_server_data"
model: "csv" model: "csv"
source: "data/server_e.csv" source: "data/server_e.csv"
- description: "label_dataset"
model: "csv"
source: "data/FL/wisconsin_host.data"
- description: "test_dataset"
model: "csv"
source: "data/FL/wisconsin_test.data"
localkv: localkv:
model: "leveldb" model: "leveldb"
...@@ -54,5 +57,3 @@ p2p: ...@@ -54,5 +57,3 @@ p2p:
- "/ip4/127.0.0.1/tcp/4001/ipfs/QmdSyhb8eR9dDSR5jjnRoTDBwpBCSAjT7WueKJ9cQArYoA" - "/ip4/127.0.0.1/tcp/4001/ipfs/QmdSyhb8eR9dDSR5jjnRoTDBwpBCSAjT7WueKJ9cQArYoA"
multi_addr: "/ip4/127.0.0.1/tcp/8888" multi_addr: "/ip4/127.0.0.1/tcp/8888"
dht_get_value_timeout: 60 dht_get_value_timeout: 60
...@@ -27,12 +27,30 @@ datasets: ...@@ -27,12 +27,30 @@ datasets:
- description: "test_party_2_next" - description: "test_party_2_next"
model: "csv" model: "csv"
source: "data/falcon/dataset/MNIST/input_0" source: "data/falcon/dataset/MNIST/input_0"
- description: "train_party_2"
model: "csv"
source: "/tmp/train_party_2.csv"
- description: "test_party_2"
model: "csv"
source: "/tmp/test_party_2.csv"
- description: "label_dataset" - description: "label_dataset"
model: "csv" model: "csv"
source: "data/breast-cancer-wisconsin-label.data" source: "data/FL/wisconsin_host.data"
- description: "xgb_predict_test_data"
model: "csv"
source: "data/FL/wisconsin_test.data"
- description: "psi_client_data" - description: "psi_client_data"
model: "csv" model: "csv"
source: "data/client_e.csv" source: "data/client_e.csv"
- description: "guest_dataset"
model: "csv"
source: "data/FL/wisconsin_guest.data"
- description: "train_party_2"
model: "csv"
source: "data/train_party_2.csv"
- description: "test_party_2"
model: "csv"
source: "data/test_party_2.csv"
localkv: localkv:
model: "leveldb" model: "leveldb"
...@@ -45,4 +63,3 @@ p2p: ...@@ -45,4 +63,3 @@ p2p:
- "/ip4/127.0.0.1/tcp/4001/ipfs/QmdSyhb8eR9dDSR5jjnRoTDBwpBCSAjT7WueKJ9cQArYoA" - "/ip4/127.0.0.1/tcp/4001/ipfs/QmdSyhb8eR9dDSR5jjnRoTDBwpBCSAjT7WueKJ9cQArYoA"
multi_addr: "/ip4/127.0.0.1/tcp/8889" multi_addr: "/ip4/127.0.0.1/tcp/8889"
dht_get_value_timeout: 60 dht_get_value_timeout: 60
...@@ -17,15 +17,18 @@ datasets: ...@@ -17,15 +17,18 @@ datasets:
- description: "test_party_1" - description: "test_party_1"
model: "csv" model: "csv"
source: "/tmp/test_party_1.csv" source: "/tmp/test_party_1.csv"
- description: "guest_dataset"
model: "csv"
source: "/tmp/breast-cancer-wisconsin.data"
- description: "pir_server_data" - description: "pir_server_data"
model: "csv" model: "csv"
source: "/tmp/pir_server.csv" source: "/tmp/pir_server.csv"
- description: "psi_server_data" - description: "psi_server_data"
model: "csv" model: "csv"
source: "/tmp/server_e.csv" source: "/tmp/server_e.csv"
- description: "label_dataset"
model: "csv"
source: "/tmp/FL/wisconsin_host.data"
- description: "test_dataset"
model: "csv"
source: "/tmp/FL/wisconsin_test.data"
localkv: localkv:
model: "leveldb" model: "leveldb"
......
...@@ -17,12 +17,13 @@ datasets: ...@@ -17,12 +17,13 @@ datasets:
- description: "test_party_2" - description: "test_party_2"
model: "csv" model: "csv"
source: "/tmp/test_party_2.csv" source: "/tmp/test_party_2.csv"
- description: "label_dataset"
model: "csv"
source: "/tmp/breast-cancer-wisconsin-label.data"
- description: "psi_client_data" - description: "psi_client_data"
model: "csv" model: "csv"
source: "/tmp/client_e.csv" source: "/tmp/client_e.csv"
- description: "guest_dataset"
model: "csv"
source: "/tmp/FL/wisconsin_guest.data"
localkv: localkv:
model: "leveldb" model: "leveldb"
......
x6,x7,x8,x9,x10,x11,x12
4,3,4,1,1,3,6
5,3,3,1,1,3,4
4,3,2,2,3,3,10
3,2,2,1,1,5,2
4,3,2,1,2,5,4
5,4,2,1,2,5,10
4,4,4,1,1,3,0
4,1,4,1,1,1,6
4,2,2,1,1,1,0
5,5,1,1,1,5,0
3,3,3,1,2,2,0
5,2,2,1,1,4,4
4,3,3,1,3,5,2
5,4,3,1,2,3,2
4,5,2,1,1,3,0
4,4,4,1,2,2,4
3,2,3,1,2,2,6
5,3,2,1,1,4,4
5,5,5,2,4,5,16
3,1,3,1,3,5,4
4,4,1,1,1,1,0
5,4,2,1,1,5,0
4,5,1,1,3,5,2
5,4,4,2,4,5,0
4,3,2,1,1,5,2
1,2,2,1,3,5,14
4,2,2,1,2,5,2
2,2,4,2,4,1,4
5,3,3,1,1,5,4
4,4,5,5,5,5,16
5,4,2,3,4,5,0
4,3,1,1,1,5,0
4,5,2,1,1,5,0
5,3,2,1,1,2,0
5,4,3,1,1,5,0
3,5,1,1,1,5,0
5,4,3,1,1,4,2
2,4,3,1,1,5,7
4,3,2,1,1,5,2
4,3,1,1,1,2,8
3,3,3,1,2,3,25
5,4,3,2,4,5,8
4,3,3,1,1,5,2
5,4,1,1,1,1,0
4,3,3,2,2,5,14
5,2,2,1,1,5,8
2,3,5,1,4,3,12
4,2,2,1,1,2,4
4,3,3,2,2,5,2
4,4,4,1,1,3,2
4,3,3,2,3,4,2
4,3,3,1,1,5,2
5,5,5,3,4,5,6
3,3,4,2,3,5,0
5,3,4,4,4,1,6
5,3,4,1,1,2,8
4,3,2,1,1,1,0
3,2,2,1,1,5,4
4,3,2,1,1,5,2
4,2,3,1,1,5,2
2,4,4,2,3,4,6
5,5,5,5,5,5,6
4,4,3,1,1,1,4
3,4,4,2,4,4,2
4,4,4,2,4,2,0
5,4,3,1,2,1,2
1,3,3,5,5,3,4
4,3,3,1,2,5,4
4,1,3,1,3,4,2
4,4,2,2,3,3,12
4,3,2,1,1,5,0
3,3,3,1,1,3,0
3,3,4,2,4,5,2
5,3,2,2,2,5,2
4,3,3,2,4,5,54
4,3,3,2,3,5,6
3,4,3,1,1,1,8
5,2,3,1,3,3,0
4,5,1,1,1,3,2
2,4,3,1,2,3,12
3,2,2,1,3,3,2
5,3,2,1,2,5,4
4,4,4,1,1,5,10
5,3,3,1,3,4,4
4,3,2,2,3,4,2
4,4,4,2,3,5,6
4,3,4,1,2,2,4
5,3,3,1,3,1,4
4,4,2,1,1,3,12
4,1,3,3,5,5,18
4,3,3,1,3,4,0
4,5,5,1,3,1,4
3,3,3,2,3,2,4
5,3,3,1,1,1,0
4,3,4,1,1,4,6
3,1,2,1,1,1,2
3,3,3,1,1,4,2
4,3,5,1,1,5,2
5,3,4,1,2,1,6
5,3,5,1,1,3,0
4,5,5,5,5,4,14
4,4,3,1,1,4,0
5,3,3,1,1,5,4
4,3,5,1,1,2,26
5,4,4,1,1,1,0
4,3,3,1,1,4,10
5,1,2,1,1,3,8
5,3,3,1,1,5,2
1,3,5,3,5,1,6
5,4,5,1,1,4,4
5,5,3,1,1,4,6
4,1,2,1,1,2,0
3,1,2,1,1,5,6
3,5,2,1,1,3,10
5,4,2,1,1,5,8
5,4,4,1,2,5,2
4,4,3,1,1,2,2
5,4,2,1,1,5,0
5,2,4,1,4,5,20
3,4,3,1,2,4,6
3,2,3,1,2,1,2
5,5,4,1,2,5,6
4,2,2,1,2,5,2
3,4,4,1,4,5,18
5,4,4,1,1,5,0
5,5,5,3,2,5,0
5,3,2,1,1,1,0
3,4,2,1,1,5,2
3,3,3,1,2,4,0
3,5,5,2,5,4,8
4,2,2,2,2,5,0
4,3,3,1,2,4,0
3,4,4,1,3,5,12
3,2,1,1,4,5,16
5,3,3,1,1,5,0
4,3,3,1,1,5,0
5,4,5,2,4,5,0
4,3,2,1,1,5,0
4,4,4,1,3,5,0
4,3,2,1,1,5,0
2,2,2,1,1,3,0
2,3,3,2,2,2,8
4,2,2,1,1,5,2
3,4,4,3,3,1,2
5,4,5,1,2,5,0
4,4,2,1,2,5,0
3,3,2,1,1,3,0
4,3,2,1,1,5,2
3,3,2,2,1,5,0
4,5,5,2,5,5,0
2,3,5,2,5,4,0
4,4,4,3,5,5,6
4,2,1,2,3,3,8
4,5,4,1,1,4,0
4,2,1,1,1,4,0
4,4,4,1,1,1,2
2,2,2,3,3,5,8
5,2,5,1,5,4,6
4,2,2,1,2,3,2
4,5,5,4,4,5,4
3,3,2,2,2,5,0
4,4,4,1,4,3,6
4,4,4,2,4,5,0
5,3,3,1,4,2,2
5,3,5,1,5,5,0
4,5,2,1,1,2,16
4,3,5,2,4,4,4
4,2,3,1,1,3,0
5,1,5,1,1,4,0
4,4,2,1,1,3,0
3,4,5,2,4,2,0
4,3,2,1,1,3,2
4,4,4,1,3,5,0
4,3,5,1,1,3,0
4,4,5,1,1,4,4
4,4,4,4,4,4,4
3,4,4,1,4,5,2
4,3,4,1,4,4,4
4,3,3,3,4,3,10
5,2,3,1,1,2,4
3,4,3,2,3,3,10
4,2,3,1,2,3,2
5,4,2,2,3,5,0
5,3,3,2,3,1,56
1,2,2,1,2,1,14
4,3,4,2,3,4,12
3,3,3,1,2,3,2
4,2,3,1,2,5,0
3,3,3,1,3,3,6
3,1,3,1,5,3,4
4,3,3,1,1,2,10
5,3,3,1,1,3,0
4,4,4,4,5,5,12
4,3,2,3,4,5,8
5,3,3,1,1,3,0
4,3,2,1,1,5,0
5,2,3,1,2,5,4
3,3,4,3,5,3,8
4,2,4,2,3,2,24
4,5,2,1,2,3,0
4,3,5,1,5,2,2
4,4,3,1,3,4,6
4,4,4,1,3,1,4
5,3,2,1,2,3,18
5,3,5,1,1,5,6
4,4,3,3,4,5,28
2,3,3,2,2,4,5
1,3,2,1,1,1,10
4,3,2,1,4,5,6
4,4,2,1,1,4,6
4,3,3,1,2,3,10
5,3,5,4,5,3,13
3,3,4,1,1,4,0
4,4,4,2,4,5,15
5,2,1,1,2,3,12
4,4,4,1,3,1,2
3,4,5,2,4,1,22
3,2,4,2,4,4,13
3,3,3,1,4,3,3
4,3,3,1,1,4,4
4,2,5,1,2,5,2
4,3,4,1,1,5,0
2,3,1,1,1,3,2
3,3,3,5,5,4,0
5,3,2,1,1,5,0
5,3,3,1,1,4,16
5,3,4,1,3,3,10
5,3,3,1,3,3,2
4,3,2,4,5,3,14
3,2,3,1,2,3,10
3,2,3,1,2,3,14
4,5,2,1,1,1,4
4,5,5,1,3,2,14
4,2,4,2,4,1,2
3,4,2,1,1,5,18
5,3,3,1,3,2,10
4,4,2,5,5,4,4
4,5,2,1,1,5,20
2,1,1,1,1,3,2
5,5,4,3,5,2,0
2,5,5,1,4,5,14
3,3,3,2,3,4,2
5,4,5,1,1,3,0
5,3,2,1,2,5,0
4,4,4,1,1,3,0
4,3,3,1,1,4,6
5,2,2,1,1,2,4
5,4,5,5,5,1,16
4,3,3,1,3,5,8
4,3,2,2,4,5,0
4,4,5,2,4,5,0
5,3,3,1,3,2,6
3,2,5,2,5,5,4
3,3,2,1,3,3,0
4,4,2,2,4,5,0
4,4,4,1,2,5,2
4,2,3,1,1,4,6
4,3,1,1,1,1,12
5,2,4,1,2,4,8
3,4,1,1,1,2,0
3,1,2,1,3,2,21
4,3,2,1,1,3,2
5,3,2,1,1,3,1
3,2,3,1,1,4,4
4,3,3,1,1,3,0
4,2,5,3,4,1,13
5,4,4,3,4,5,2
4,3,4,2,2,4,8
5,4,5,1,3,5,10
4,3,5,1,2,3,0
4,3,5,3,3,5,15
4,5,5,1,3,2,4
4,4,3,1,1,3,2
3,5,2,2,2,1,2
4,3,3,1,1,1,2
4,4,4,2,3,5,6
4,1,1,1,1,5,75
3,2,4,1,4,3,22
2,4,4,1,1,4,15
Class,x0,x1,x2,x3,x4,x5
6,18,4,4,2,2,0
6,17,1,1,1,2,0
10,15,1,1,1,2,3
15,15,4,2,1,3,0
10,16,3,3,1,2,0
15,16,4,3,1,2,0
11,16,2,2,1,2,0
6,17,4,4,2,2,0
19,15,3,2,1,2,0
15,15,3,4,1,2,0
9,15,4,4,1,2,0
12,15,2,1,3,3,0
14,15,4,4,1,1,0
11,15,4,3,2,2,0
16,15,2,2,1,3,0
14,16,4,4,1,1,0
14,16,4,4,1,3,0
10,16,3,3,3,2,0
5,17,3,2,1,1,3
10,16,4,3,1,1,0
15,15,4,3,1,2,0
15,15,4,4,1,1,0
16,16,4,2,1,2,0
12,16,2,2,2,2,0
8,15,2,4,1,3,0
8,16,2,2,1,1,2
11,15,2,2,1,1,0
15,15,4,2,1,1,0
11,16,3,4,1,2,0
11,16,4,4,1,2,0
12,15,4,4,1,2,0
17,15,4,4,2,2,0
16,15,4,3,1,2,0
12,15,3,3,1,2,0
15,16,3,2,1,1,0
6,15,2,3,2,1,0
18,15,4,3,1,3,0
15,16,4,4,2,3,0
11,15,3,4,1,3,0
13,15,2,2,1,1,0
11,16,2,2,2,2,1
12,15,4,4,1,1,0
18,15,4,4,1,2,0
11,15,2,2,1,1,0
9,16,2,2,2,2,1
6,15,4,3,1,2,0
11,16,3,3,1,2,0
20,16,4,3,1,4,0
14,15,4,2,1,2,0
7,15,4,4,1,2,1
13,16,2,2,3,2,0
13,15,4,2,1,2,0
10,15,4,2,2,1,1
11,15,4,4,1,1,0
13,15,3,3,1,1,0
10,16,2,1,1,2,0
15,15,4,3,1,2,0
15,15,4,4,1,2,0
9,15,1,2,1,2,0
16,16,4,2,1,2,0
11,16,4,4,1,2,0
11,16,1,1,4,1,0
9,16,1,2,1,2,0
9,16,4,3,1,3,0
10,15,4,3,1,2,0
15,16,4,3,3,2,0
12,15,4,4,1,4,0
6,16,3,1,1,4,0
8,15,2,2,2,2,0
16,15,3,1,2,4,0
15,16,3,1,2,4,0
10,15,4,2,1,4,0
5,15,1,1,1,2,2
14,16,3,1,1,1,0
11,16,3,3,1,2,0
10,15,4,3,1,2,0
10,15,4,0,2,4,0
11,16,2,2,1,4,0
10,17,2,1,2,1,3
5,16,3,4,1,2,0
12,15,2,3,1,1,0
11,15,2,3,1,3,0
6,15,3,2,1,2,0
15,15,2,2,2,2,0
10,15,1,1,1,2,0
8,15,4,4,2,2,2
6,16,2,2,1,2,0
14,15,4,2,1,3,0
10,16,2,2,2,2,1
7,16,4,4,1,2,0
8,16,3,3,1,3,0
18,15,4,3,1,1,0
6,16,3,1,1,2,0
10,16,4,2,2,2,0
14,15,2,2,1,4,0
10,15,1,1,2,4,1
15,16,4,3,2,1,0
10,16,2,1,1,2,0
14,16,4,4,1,1,0
8,16,4,3,1,3,0
5,16,4,4,1,1,0
17,16,4,4,1,3,0
14,15,4,4,1,1,0
6,15,3,2,2,2,0
18,15,3,4,1,2,0
11,15,3,3,1,4,0
8,15,2,2,1,4,0
18,16,3,3,1,3,0
13,15,4,4,4,4,0
16,16,4,4,1,3,0
19,15,4,4,1,1,0
10,16,3,3,1,3,1
13,16,2,2,1,2,1
19,15,4,2,1,1,0
9,15,2,1,1,2,0
16,16,4,4,1,2,0
14,15,4,4,2,2,0
13,16,3,3,2,1,0
8,17,1,3,3,2,1
13,15,3,4,1,1,0
15,15,1,2,1,2,0
15,15,2,2,1,4,0
13,16,2,4,2,2,0
13,16,4,4,1,1,0
8,16,2,2,1,2,0
12,15,3,4,1,1,0
11,15,3,4,1,2,0
9,19,0,1,1,2,3
0,18,2,2,1,1,2
18,16,4,4,1,1,0
0,15,3,4,2,3,2
0,15,1,1,3,1,0
12,17,2,2,1,1,0
11,16,3,4,1,1,0
0,15,3,4,4,2,0
0,15,4,4,1,3,0
0,17,3,4,3,2,0
0,16,3,3,2,1,2
12,16,1,1,1,2,1
15,15,4,4,2,1,0
0,15,4,3,2,4,0
9,16,2,2,2,1,2
11,15,4,4,1,3,0
13,16,1,1,1,1,0
0,17,2,1,1,1,3
11,15,1,1,1,2,0
0,15,3,2,1,2,3
11,15,1,2,1,2,0
0,16,4,4,1,1,0
10,15,2,1,4,1,3
0,18,1,1,1,1,3
14,16,2,1,1,1,1
10,15,3,3,2,3,2
0,19,3,2,1,1,3
12,17,4,4,1,1,0
8,15,2,3,1,2,0
13,17,1,2,1,1,0
10,18,1,1,3,1,3
15,16,2,2,3,1,0
12,16,3,3,1,2,1
0,17,2,1,2,1,2
7,15,3,2,2,2,2
0,16,1,2,2,1,1
10,17,1,3,1,1,0
7,17,1,1,4,2,3
12,16,3,2,2,1,1
10,16,2,2,1,2,0
16,16,4,2,1,2,0
0,16,2,2,1,2,0
14,16,4,4,1,2,0
0,16,3,4,3,1,2
16,16,1,0,2,2,0
10,17,4,4,1,2,0
0,16,1,3,1,2,3
9,16,3,3,2,2,0
9,17,4,3,2,2,0
11,16,2,2,2,2,0
6,17,3,3,1,2,0
9,16,4,2,1,1,0
11,17,4,3,1,2,0
8,16,4,3,1,2,0
12,16,3,3,1,2,0
17,17,2,4,1,2,0
8,17,3,3,1,2,0
12,16,3,2,1,2,0
11,17,3,3,1,2,0
11,16,1,2,1,1,0
15,16,2,1,1,2,0
9,17,3,3,1,2,0
10,17,1,2,1,2,0
13,16,2,3,1,2,0
9,17,1,1,1,2,0
8,17,1,2,2,2,0
10,16,3,3,1,1,0
14,16,2,3,2,1,0
15,17,2,4,1,2,0
16,17,4,4,1,1,0
10,16,3,3,3,1,0
18,17,4,4,2,1,1
10,16,4,4,1,2,0
16,16,4,3,1,2,0
10,16,2,3,1,2,0
10,17,1,1,1,2,0
6,17,2,2,1,1,0
11,16,2,2,2,4,0
9,17,3,4,1,3,1
7,16,3,1,1,2,3
13,16,4,3,1,2,0
10,16,1,1,2,1,0
7,17,4,3,2,3,0
8,19,3,3,1,4,0
13,17,4,4,1,2,0
14,16,2,2,1,2,0
8,18,2,2,1,2,1
10,17,4,4,1,1,0
15,17,3,2,2,2,0
4,17,4,3,1,2,2
8,18,3,3,1,2,1
8,17,2,3,2,1,0
10,17,2,2,1,3,0
6,17,2,1,2,2,0
0,17,1,1,1,3,1
17,16,2,3,1,2,0
13,18,2,2,2,2,0
14,16,4,4,1,3,0
7,18,3,1,1,2,1
15,17,3,2,1,2,0
12,17,2,3,1,2,0
9,18,2,1,4,2,0
12,17,2,1,2,3,0
14,17,4,3,1,2,0
11,17,2,2,2,2,0
9,17,4,4,1,2,0
13,16,4,4,1,2,0
6,16,1,1,2,2,0
10,16,3,2,2,3,0
13,17,2,2,1,2,0
12,16,2,1,1,1,0
11,17,2,1,3,2,0
0,18,2,2,1,2,1
12,17,4,3,2,2,0
12,17,4,4,2,2,0
0,16,4,3,1,1,0
12,16,4,4,1,1,0
0,18,2,1,2,3,0
18,16,2,1,3,1,0
13,17,2,3,2,1,0
8,22,3,1,1,1,3
5,18,3,3,1,2,1
15,16,0,2,1,1,0
8,18,3,2,2,1,1
10,16,3,3,3,2,0
8,18,2,1,1,1,1
8,16,2,1,2,1,0
12,17,2,1,1,1,0
8,17,1,1,2,1,1
13,17,4,2,1,4,0
11,19,4,3,1,2,0
14,18,2,1,1,2,0
0,17,2,2,1,4,0
18,18,4,3,1,2,0
8,18,4,3,1,2,0
12,18,3,2,1,3,0
9,17,3,3,1,3,0
0,18,2,2,1,3,0
17,18,3,4,2,2,0
10,17,3,1,1,2,0
11,18,4,4,2,2,0
10,18,4,2,1,2,0
0,18,2,1,2,2,0
9,19,3,3,1,2,2
14,18,2,3,1,4,0
11,18,1,1,2,2,0
14,17,1,2,1,2,0
10,17,2,4,2,2,0
12,17,2,2,2,2,0
9,18,3,2,2,2,0
9,18,4,4,2,1,0
8,18,4,4,1,2,1
Class,x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12
6,18,4,4,2,2,0,4,3,4,1,1,3,6
6,17,1,1,1,2,0,5,3,3,1,1,3,4
10,15,1,1,1,2,3,4,3,2,2,3,3,10
15,15,4,2,1,3,0,3,2,2,1,1,5,2
10,16,3,3,1,2,0,4,3,2,1,2,5,4
15,16,4,3,1,2,0,5,4,2,1,2,5,10
11,16,2,2,1,2,0,4,4,4,1,1,3,0
6,17,4,4,2,2,0,4,1,4,1,1,1,6
19,15,3,2,1,2,0,4,2,2,1,1,1,0
15,15,3,4,1,2,0,5,5,1,1,1,5,0
9,15,4,4,1,2,0,3,3,3,1,2,2,0
12,15,2,1,3,3,0,5,2,2,1,1,4,4
14,15,4,4,1,1,0,4,3,3,1,3,5,2
11,15,4,3,2,2,0,5,4,3,1,2,3,2
16,15,2,2,1,3,0,4,5,2,1,1,3,0
14,16,4,4,1,1,0,4,4,4,1,2,2,4
14,16,4,4,1,3,0,3,2,3,1,2,2,6
10,16,3,3,3,2,0,5,3,2,1,1,4,4
5,17,3,2,1,1,3,5,5,5,2,4,5,16
10,16,4,3,1,1,0,3,1,3,1,3,5,4
15,15,4,3,1,2,0,4,4,1,1,1,1,0
15,15,4,4,1,1,0,5,4,2,1,1,5,0
16,16,4,2,1,2,0,4,5,1,1,3,5,2
12,16,2,2,2,2,0,5,4,4,2,4,5,0
8,15,2,4,1,3,0,4,3,2,1,1,5,2
8,16,2,2,1,1,2,1,2,2,1,3,5,14
11,15,2,2,1,1,0,4,2,2,1,2,5,2
15,15,4,2,1,1,0,2,2,4,2,4,1,4
11,16,3,4,1,2,0,5,3,3,1,1,5,4
11,16,4,4,1,2,0,4,4,5,5,5,5,16
12,15,4,4,1,2,0,5,4,2,3,4,5,0
17,15,4,4,2,2,0,4,3,1,1,1,5,0
16,15,4,3,1,2,0,4,5,2,1,1,5,0
12,15,3,3,1,2,0,5,3,2,1,1,2,0
15,16,3,2,1,1,0,5,4,3,1,1,5,0
6,15,2,3,2,1,0,3,5,1,1,1,5,0
18,15,4,3,1,3,0,5,4,3,1,1,4,2
15,16,4,4,2,3,0,2,4,3,1,1,5,7
11,15,3,4,1,3,0,4,3,2,1,1,5,2
13,15,2,2,1,1,0,4,3,1,1,1,2,8
11,16,2,2,2,2,1,3,3,3,1,2,3,25
12,15,4,4,1,1,0,5,4,3,2,4,5,8
18,15,4,4,1,2,0,4,3,3,1,1,5,2
11,15,2,2,1,1,0,5,4,1,1,1,1,0
9,16,2,2,2,2,1,4,3,3,2,2,5,14
6,15,4,3,1,2,0,5,2,2,1,1,5,8
11,16,3,3,1,2,0,2,3,5,1,4,3,12
20,16,4,3,1,4,0,4,2,2,1,1,2,4
14,15,4,2,1,2,0,4,3,3,2,2,5,2
7,15,4,4,1,2,1,4,4,4,1,1,3,2
13,16,2,2,3,2,0,4,3,3,2,3,4,2
13,15,4,2,1,2,0,4,3,3,1,1,5,2
10,15,4,2,2,1,1,5,5,5,3,4,5,6
11,15,4,4,1,1,0,3,3,4,2,3,5,0
13,15,3,3,1,1,0,5,3,4,4,4,1,6
10,16,2,1,1,2,0,5,3,4,1,1,2,8
15,15,4,3,1,2,0,4,3,2,1,1,1,0
15,15,4,4,1,2,0,3,2,2,1,1,5,4
9,15,1,2,1,2,0,4,3,2,1,1,5,2
16,16,4,2,1,2,0,4,2,3,1,1,5,2
11,16,4,4,1,2,0,2,4,4,2,3,4,6
11,16,1,1,4,1,0,5,5,5,5,5,5,6
9,16,1,2,1,2,0,4,4,3,1,1,1,4
9,16,4,3,1,3,0,3,4,4,2,4,4,2
10,15,4,3,1,2,0,4,4,4,2,4,2,0
15,16,4,3,3,2,0,5,4,3,1,2,1,2
12,15,4,4,1,4,0,1,3,3,5,5,3,4
6,16,3,1,1,4,0,4,3,3,1,2,5,4
8,15,2,2,2,2,0,4,1,3,1,3,4,2
16,15,3,1,2,4,0,4,4,2,2,3,3,12
15,16,3,1,2,4,0,4,3,2,1,1,5,0
10,15,4,2,1,4,0,3,3,3,1,1,3,0
5,15,1,1,1,2,2,3,3,4,2,4,5,2
14,16,3,1,1,1,0,5,3,2,2,2,5,2
11,16,3,3,1,2,0,4,3,3,2,4,5,54
10,15,4,3,1,2,0,4,3,3,2,3,5,6
10,15,4,0,2,4,0,3,4,3,1,1,1,8
11,16,2,2,1,4,0,5,2,3,1,3,3,0
10,17,2,1,2,1,3,4,5,1,1,1,3,2
5,16,3,4,1,2,0,2,4,3,1,2,3,12
12,15,2,3,1,1,0,3,2,2,1,3,3,2
11,15,2,3,1,3,0,5,3,2,1,2,5,4
6,15,3,2,1,2,0,4,4,4,1,1,5,10
15,15,2,2,2,2,0,5,3,3,1,3,4,4
10,15,1,1,1,2,0,4,3,2,2,3,4,2
8,15,4,4,2,2,2,4,4,4,2,3,5,6
6,16,2,2,1,2,0,4,3,4,1,2,2,4
14,15,4,2,1,3,0,5,3,3,1,3,1,4
10,16,2,2,2,2,1,4,4,2,1,1,3,12
7,16,4,4,1,2,0,4,1,3,3,5,5,18
8,16,3,3,1,3,0,4,3,3,1,3,4,0
18,15,4,3,1,1,0,4,5,5,1,3,1,4
6,16,3,1,1,2,0,3,3,3,2,3,2,4
10,16,4,2,2,2,0,5,3,3,1,1,1,0
14,15,2,2,1,4,0,4,3,4,1,1,4,6
10,15,1,1,2,4,1,3,1,2,1,1,1,2
15,16,4,3,2,1,0,3,3,3,1,1,4,2
10,16,2,1,1,2,0,4,3,5,1,1,5,2
14,16,4,4,1,1,0,5,3,4,1,2,1,6
8,16,4,3,1,3,0,5,3,5,1,1,3,0
5,16,4,4,1,1,0,4,5,5,5,5,4,14
17,16,4,4,1,3,0,4,4,3,1,1,4,0
14,15,4,4,1,1,0,5,3,3,1,1,5,4
6,15,3,2,2,2,0,4,3,5,1,1,2,26
18,15,3,4,1,2,0,5,4,4,1,1,1,0
11,15,3,3,1,4,0,4,3,3,1,1,4,10
8,15,2,2,1,4,0,5,1,2,1,1,3,8
18,16,3,3,1,3,0,5,3,3,1,1,5,2
13,15,4,4,4,4,0,1,3,5,3,5,1,6
16,16,4,4,1,3,0,5,4,5,1,1,4,4
19,15,4,4,1,1,0,5,5,3,1,1,4,6
10,16,3,3,1,3,1,4,1,2,1,1,2,0
13,16,2,2,1,2,1,3,1,2,1,1,5,6
19,15,4,2,1,1,0,3,5,2,1,1,3,10
9,15,2,1,1,2,0,5,4,2,1,1,5,8
16,16,4,4,1,2,0,5,4,4,1,2,5,2
14,15,4,4,2,2,0,4,4,3,1,1,2,2
13,16,3,3,2,1,0,5,4,2,1,1,5,0
8,17,1,3,3,2,1,5,2,4,1,4,5,20
13,15,3,4,1,1,0,3,4,3,1,2,4,6
15,15,1,2,1,2,0,3,2,3,1,2,1,2
15,15,2,2,1,4,0,5,5,4,1,2,5,6
13,16,2,4,2,2,0,4,2,2,1,2,5,2
13,16,4,4,1,1,0,3,4,4,1,4,5,18
8,16,2,2,1,2,0,5,4,4,1,1,5,0
12,15,3,4,1,1,0,5,5,5,3,2,5,0
11,15,3,4,1,2,0,5,3,2,1,1,1,0
9,19,0,1,1,2,3,3,4,2,1,1,5,2
0,18,2,2,1,1,2,3,3,3,1,2,4,0
18,16,4,4,1,1,0,3,5,5,2,5,4,8
0,15,3,4,2,3,2,4,2,2,2,2,5,0
0,15,1,1,3,1,0,4,3,3,1,2,4,0
12,17,2,2,1,1,0,3,4,4,1,3,5,12
11,16,3,4,1,1,0,3,2,1,1,4,5,16
0,15,3,4,4,2,0,5,3,3,1,1,5,0
0,15,4,4,1,3,0,4,3,3,1,1,5,0
0,17,3,4,3,2,0,5,4,5,2,4,5,0
0,16,3,3,2,1,2,4,3,2,1,1,5,0
12,16,1,1,1,2,1,4,4,4,1,3,5,0
15,15,4,4,2,1,0,4,3,2,1,1,5,0
0,15,4,3,2,4,0,2,2,2,1,1,3,0
9,16,2,2,2,1,2,2,3,3,2,2,2,8
11,15,4,4,1,3,0,4,2,2,1,1,5,2
13,16,1,1,1,1,0,3,4,4,3,3,1,2
0,17,2,1,1,1,3,5,4,5,1,2,5,0
11,15,1,1,1,2,0,4,4,2,1,2,5,0
0,15,3,2,1,2,3,3,3,2,1,1,3,0
11,15,1,2,1,2,0,4,3,2,1,1,5,2
0,16,4,4,1,1,0,3,3,2,2,1,5,0
10,15,2,1,4,1,3,4,5,5,2,5,5,0
0,18,1,1,1,1,3,2,3,5,2,5,4,0
14,16,2,1,1,1,1,4,4,4,3,5,5,6
10,15,3,3,2,3,2,4,2,1,2,3,3,8
0,19,3,2,1,1,3,4,5,4,1,1,4,0
12,17,4,4,1,1,0,4,2,1,1,1,4,0
8,15,2,3,1,2,0,4,4,4,1,1,1,2
13,17,1,2,1,1,0,2,2,2,3,3,5,8
10,18,1,1,3,1,3,5,2,5,1,5,4,6
15,16,2,2,3,1,0,4,2,2,1,2,3,2
12,16,3,3,1,2,1,4,5,5,4,4,5,4
0,17,2,1,2,1,2,3,3,2,2,2,5,0
7,15,3,2,2,2,2,4,4,4,1,4,3,6
0,16,1,2,2,1,1,4,4,4,2,4,5,0
10,17,1,3,1,1,0,5,3,3,1,4,2,2
7,17,1,1,4,2,3,5,3,5,1,5,5,0
12,16,3,2,2,1,1,4,5,2,1,1,2,16
10,16,2,2,1,2,0,4,3,5,2,4,4,4
16,16,4,2,1,2,0,4,2,3,1,1,3,0
0,16,2,2,1,2,0,5,1,5,1,1,4,0
14,16,4,4,1,2,0,4,4,2,1,1,3,0
0,16,3,4,3,1,2,3,4,5,2,4,2,0
16,16,1,0,2,2,0,4,3,2,1,1,3,2
10,17,4,4,1,2,0,4,4,4,1,3,5,0
0,16,1,3,1,2,3,4,3,5,1,1,3,0
9,16,3,3,2,2,0,4,4,5,1,1,4,4
9,17,4,3,2,2,0,4,4,4,4,4,4,4
11,16,2,2,2,2,0,3,4,4,1,4,5,2
6,17,3,3,1,2,0,4,3,4,1,4,4,4
9,16,4,2,1,1,0,4,3,3,3,4,3,10
11,17,4,3,1,2,0,5,2,3,1,1,2,4
8,16,4,3,1,2,0,3,4,3,2,3,3,10
12,16,3,3,1,2,0,4,2,3,1,2,3,2
17,17,2,4,1,2,0,5,4,2,2,3,5,0
8,17,3,3,1,2,0,5,3,3,2,3,1,56
12,16,3,2,1,2,0,1,2,2,1,2,1,14
11,17,3,3,1,2,0,4,3,4,2,3,4,12
11,16,1,2,1,1,0,3,3,3,1,2,3,2
15,16,2,1,1,2,0,4,2,3,1,2,5,0
9,17,3,3,1,2,0,3,3,3,1,3,3,6
10,17,1,2,1,2,0,3,1,3,1,5,3,4
13,16,2,3,1,2,0,4,3,3,1,1,2,10
9,17,1,1,1,2,0,5,3,3,1,1,3,0
8,17,1,2,2,2,0,4,4,4,4,5,5,12
10,16,3,3,1,1,0,4,3,2,3,4,5,8
14,16,2,3,2,1,0,5,3,3,1,1,3,0
15,17,2,4,1,2,0,4,3,2,1,1,5,0
16,17,4,4,1,1,0,5,2,3,1,2,5,4
10,16,3,3,3,1,0,3,3,4,3,5,3,8
18,17,4,4,2,1,1,4,2,4,2,3,2,24
10,16,4,4,1,2,0,4,5,2,1,2,3,0
16,16,4,3,1,2,0,4,3,5,1,5,2,2
10,16,2,3,1,2,0,4,4,3,1,3,4,6
10,17,1,1,1,2,0,4,4,4,1,3,1,4
6,17,2,2,1,1,0,5,3,2,1,2,3,18
11,16,2,2,2,4,0,5,3,5,1,1,5,6
9,17,3,4,1,3,1,4,4,3,3,4,5,28
7,16,3,1,1,2,3,2,3,3,2,2,4,5
13,16,4,3,1,2,0,1,3,2,1,1,1,10
10,16,1,1,2,1,0,4,3,2,1,4,5,6
7,17,4,3,2,3,0,4,4,2,1,1,4,6
8,19,3,3,1,4,0,4,3,3,1,2,3,10
13,17,4,4,1,2,0,5,3,5,4,5,3,13
14,16,2,2,1,2,0,3,3,4,1,1,4,0
8,18,2,2,1,2,1,4,4,4,2,4,5,15
10,17,4,4,1,1,0,5,2,1,1,2,3,12
15,17,3,2,2,2,0,4,4,4,1,3,1,2
4,17,4,3,1,2,2,3,4,5,2,4,1,22
8,18,3,3,1,2,1,3,2,4,2,4,4,13
8,17,2,3,2,1,0,3,3,3,1,4,3,3
10,17,2,2,1,3,0,4,3,3,1,1,4,4
6,17,2,1,2,2,0,4,2,5,1,2,5,2
0,17,1,1,1,3,1,4,3,4,1,1,5,0
17,16,2,3,1,2,0,2,3,1,1,1,3,2
13,18,2,2,2,2,0,3,3,3,5,5,4,0
14,16,4,4,1,3,0,5,3,2,1,1,5,0
7,18,3,1,1,2,1,5,3,3,1,1,4,16
15,17,3,2,1,2,0,5,3,4,1,3,3,10
12,17,2,3,1,2,0,5,3,3,1,3,3,2
9,18,2,1,4,2,0,4,3,2,4,5,3,14
12,17,2,1,2,3,0,3,2,3,1,2,3,10
14,17,4,3,1,2,0,3,2,3,1,2,3,14
11,17,2,2,2,2,0,4,5,2,1,1,1,4
9,17,4,4,1,2,0,4,5,5,1,3,2,14
13,16,4,4,1,2,0,4,2,4,2,4,1,2
6,16,1,1,2,2,0,3,4,2,1,1,5,18
10,16,3,2,2,3,0,5,3,3,1,3,2,10
13,17,2,2,1,2,0,4,4,2,5,5,4,4
12,16,2,1,1,1,0,4,5,2,1,1,5,20
11,17,2,1,3,2,0,2,1,1,1,1,3,2
0,18,2,2,1,2,1,5,5,4,3,5,2,0
12,17,4,3,2,2,0,2,5,5,1,4,5,14
12,17,4,4,2,2,0,3,3,3,2,3,4,2
0,16,4,3,1,1,0,5,4,5,1,1,3,0
12,16,4,4,1,1,0,5,3,2,1,2,5,0
0,18,2,1,2,3,0,4,4,4,1,1,3,0
18,16,2,1,3,1,0,4,3,3,1,1,4,6
13,17,2,3,2,1,0,5,2,2,1,1,2,4
8,22,3,1,1,1,3,5,4,5,5,5,1,16
5,18,3,3,1,2,1,4,3,3,1,3,5,8
15,16,0,2,1,1,0,4,3,2,2,4,5,0
8,18,3,2,2,1,1,4,4,5,2,4,5,0
10,16,3,3,3,2,0,5,3,3,1,3,2,6
8,18,2,1,1,1,1,3,2,5,2,5,5,4
8,16,2,1,2,1,0,3,3,2,1,3,3,0
12,17,2,1,1,1,0,4,4,2,2,4,5,0
8,17,1,1,2,1,1,4,4,4,1,2,5,2
13,17,4,2,1,4,0,4,2,3,1,1,4,6
11,19,4,3,1,2,0,4,3,1,1,1,1,12
14,18,2,1,1,2,0,5,2,4,1,2,4,8
0,17,2,2,1,4,0,3,4,1,1,1,2,0
18,18,4,3,1,2,0,3,1,2,1,3,2,21
8,18,4,3,1,2,0,4,3,2,1,1,3,2
12,18,3,2,1,3,0,5,3,2,1,1,3,1
9,17,3,3,1,3,0,3,2,3,1,1,4,4
0,18,2,2,1,3,0,4,3,3,1,1,3,0
17,18,3,4,2,2,0,4,2,5,3,4,1,13
10,17,3,1,1,2,0,5,4,4,3,4,5,2
11,18,4,4,2,2,0,4,3,4,2,2,4,8
10,18,4,2,1,2,0,5,4,5,1,3,5,10
0,18,2,1,2,2,0,4,3,5,1,2,3,0
9,19,3,3,1,2,2,4,3,5,3,3,5,15
14,18,2,3,1,4,0,4,5,5,1,3,2,4
11,18,1,1,2,2,0,4,4,3,1,1,3,2
14,17,1,2,1,2,0,3,5,2,2,2,1,2
10,17,2,4,2,2,0,4,3,3,1,1,1,2
12,17,2,2,2,2,0,4,4,4,2,3,5,6
9,18,3,2,2,2,0,4,1,1,1,1,5,75
9,18,4,4,2,1,0,3,2,4,1,4,3,22
8,18,4,4,1,2,1,2,4,4,1,1,4,15
y,x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12
6,18,4,4,2,2,0,4,3,4,1,1,3,6
6,17,1,1,1,2,0,5,3,3,1,1,3,4
10,15,1,1,1,2,3,4,3,2,2,3,3,10
15,15,4,2,1,3,0,3,2,2,1,1,5,2
10,16,3,3,1,2,0,4,3,2,1,2,5,4
15,16,4,3,1,2,0,5,4,2,1,2,5,10
11,16,2,2,1,2,0,4,4,4,1,1,3,0
6,17,4,4,2,2,0,4,1,4,1,1,1,6
19,15,3,2,1,2,0,4,2,2,1,1,1,0
15,15,3,4,1,2,0,5,5,1,1,1,5,0
9,15,4,4,1,2,0,3,3,3,1,2,2,0
12,15,2,1,3,3,0,5,2,2,1,1,4,4
14,15,4,4,1,1,0,4,3,3,1,3,5,2
11,15,4,3,2,2,0,5,4,3,1,2,3,2
16,15,2,2,1,3,0,4,5,2,1,1,3,0
14,16,4,4,1,1,0,4,4,4,1,2,2,4
14,16,4,4,1,3,0,3,2,3,1,2,2,6
10,16,3,3,3,2,0,5,3,2,1,1,4,4
5,17,3,2,1,1,3,5,5,5,2,4,5,16
10,16,4,3,1,1,0,3,1,3,1,3,5,4
15,15,4,3,1,2,0,4,4,1,1,1,1,0
15,15,4,4,1,1,0,5,4,2,1,1,5,0
16,16,4,2,1,2,0,4,5,1,1,3,5,2
12,16,2,2,2,2,0,5,4,4,2,4,5,0
8,15,2,4,1,3,0,4,3,2,1,1,5,2
8,16,2,2,1,1,2,1,2,2,1,3,5,14
11,15,2,2,1,1,0,4,2,2,1,2,5,2
15,15,4,2,1,1,0,2,2,4,2,4,1,4
11,16,3,4,1,2,0,5,3,3,1,1,5,4
11,16,4,4,1,2,0,4,4,5,5,5,5,16
12,15,4,4,1,2,0,5,4,2,3,4,5,0
17,15,4,4,2,2,0,4,3,1,1,1,5,0
16,15,4,3,1,2,0,4,5,2,1,1,5,0
12,15,3,3,1,2,0,5,3,2,1,1,2,0
15,16,3,2,1,1,0,5,4,3,1,1,5,0
6,15,2,3,2,1,0,3,5,1,1,1,5,0
18,15,4,3,1,3,0,5,4,3,1,1,4,2
15,16,4,4,2,3,0,2,4,3,1,1,5,7
11,15,3,4,1,3,0,4,3,2,1,1,5,2
13,15,2,2,1,1,0,4,3,1,1,1,2,8
11,16,2,2,2,2,1,3,3,3,1,2,3,25
12,15,4,4,1,1,0,5,4,3,2,4,5,8
18,15,4,4,1,2,0,4,3,3,1,1,5,2
11,15,2,2,1,1,0,5,4,1,1,1,1,0
9,16,2,2,2,2,1,4,3,3,2,2,5,14
6,15,4,3,1,2,0,5,2,2,1,1,5,8
11,16,3,3,1,2,0,2,3,5,1,4,3,12
20,16,4,3,1,4,0,4,2,2,1,1,2,4
14,15,4,2,1,2,0,4,3,3,2,2,5,2
7,15,4,4,1,2,1,4,4,4,1,1,3,2
13,16,2,2,3,2,0,4,3,3,2,3,4,2
13,15,4,2,1,2,0,4,3,3,1,1,5,2
10,15,4,2,2,1,1,5,5,5,3,4,5,6
11,15,4,4,1,1,0,3,3,4,2,3,5,0
13,15,3,3,1,1,0,5,3,4,4,4,1,6
10,16,2,1,1,2,0,5,3,4,1,1,2,8
15,15,4,3,1,2,0,4,3,2,1,1,1,0
15,15,4,4,1,2,0,3,2,2,1,1,5,4
9,15,1,2,1,2,0,4,3,2,1,1,5,2
16,16,4,2,1,2,0,4,2,3,1,1,5,2
11,16,4,4,1,2,0,2,4,4,2,3,4,6
11,16,1,1,4,1,0,5,5,5,5,5,5,6
9,16,1,2,1,2,0,4,4,3,1,1,1,4
9,16,4,3,1,3,0,3,4,4,2,4,4,2
10,15,4,3,1,2,0,4,4,4,2,4,2,0
15,16,4,3,3,2,0,5,4,3,1,2,1,2
12,15,4,4,1,4,0,1,3,3,5,5,3,4
6,16,3,1,1,4,0,4,3,3,1,2,5,4
8,15,2,2,2,2,0,4,1,3,1,3,4,2
16,15,3,1,2,4,0,4,4,2,2,3,3,12
15,16,3,1,2,4,0,4,3,2,1,1,5,0
10,15,4,2,1,4,0,3,3,3,1,1,3,0
5,15,1,1,1,2,2,3,3,4,2,4,5,2
14,16,3,1,1,1,0,5,3,2,2,2,5,2
11,16,3,3,1,2,0,4,3,3,2,4,5,54
10,15,4,3,1,2,0,4,3,3,2,3,5,6
10,15,4,0,2,4,0,3,4,3,1,1,1,8
11,16,2,2,1,4,0,5,2,3,1,3,3,0
10,17,2,1,2,1,3,4,5,1,1,1,3,2
5,16,3,4,1,2,0,2,4,3,1,2,3,12
12,15,2,3,1,1,0,3,2,2,1,3,3,2
11,15,2,3,1,3,0,5,3,2,1,2,5,4
6,15,3,2,1,2,0,4,4,4,1,1,5,10
15,15,2,2,2,2,0,5,3,3,1,3,4,4
10,15,1,1,1,2,0,4,3,2,2,3,4,2
8,15,4,4,2,2,2,4,4,4,2,3,5,6
6,16,2,2,1,2,0,4,3,4,1,2,2,4
14,15,4,2,1,3,0,5,3,3,1,3,1,4
10,16,2,2,2,2,1,4,4,2,1,1,3,12
7,16,4,4,1,2,0,4,1,3,3,5,5,18
8,16,3,3,1,3,0,4,3,3,1,3,4,0
18,15,4,3,1,1,0,4,5,5,1,3,1,4
6,16,3,1,1,2,0,3,3,3,2,3,2,4
10,16,4,2,2,2,0,5,3,3,1,1,1,0
14,15,2,2,1,4,0,4,3,4,1,1,4,6
10,15,1,1,2,4,1,3,1,2,1,1,1,2
15,16,4,3,2,1,0,3,3,3,1,1,4,2
10,16,2,1,1,2,0,4,3,5,1,1,5,2
14,16,4,4,1,1,0,5,3,4,1,2,1,6
8,16,4,3,1,3,0,5,3,5,1,1,3,0
5,16,4,4,1,1,0,4,5,5,5,5,4,14
17,16,4,4,1,3,0,4,4,3,1,1,4,0
14,15,4,4,1,1,0,5,3,3,1,1,5,4
6,15,3,2,2,2,0,4,3,5,1,1,2,26
18,15,3,4,1,2,0,5,4,4,1,1,1,0
11,15,3,3,1,4,0,4,3,3,1,1,4,10
8,15,2,2,1,4,0,5,1,2,1,1,3,8
18,16,3,3,1,3,0,5,3,3,1,1,5,2
13,15,4,4,4,4,0,1,3,5,3,5,1,6
16,16,4,4,1,3,0,5,4,5,1,1,4,4
19,15,4,4,1,1,0,5,5,3,1,1,4,6
10,16,3,3,1,3,1,4,1,2,1,1,2,0
13,16,2,2,1,2,1,3,1,2,1,1,5,6
19,15,4,2,1,1,0,3,5,2,1,1,3,10
9,15,2,1,1,2,0,5,4,2,1,1,5,8
16,16,4,4,1,2,0,5,4,4,1,2,5,2
14,15,4,4,2,2,0,4,4,3,1,1,2,2
13,16,3,3,2,1,0,5,4,2,1,1,5,0
8,17,1,3,3,2,1,5,2,4,1,4,5,20
13,15,3,4,1,1,0,3,4,3,1,2,4,6
15,15,1,2,1,2,0,3,2,3,1,2,1,2
15,15,2,2,1,4,0,5,5,4,1,2,5,6
13,16,2,4,2,2,0,4,2,2,1,2,5,2
13,16,4,4,1,1,0,3,4,4,1,4,5,18
8,16,2,2,1,2,0,5,4,4,1,1,5,0
12,15,3,4,1,1,0,5,5,5,3,2,5,0
11,15,3,4,1,2,0,5,3,2,1,1,1,0
9,19,0,1,1,2,3,3,4,2,1,1,5,2
0,18,2,2,1,1,2,3,3,3,1,2,4,0
18,16,4,4,1,1,0,3,5,5,2,5,4,8
0,15,3,4,2,3,2,4,2,2,2,2,5,0
0,15,1,1,3,1,0,4,3,3,1,2,4,0
12,17,2,2,1,1,0,3,4,4,1,3,5,12
11,16,3,4,1,1,0,3,2,1,1,4,5,16
0,15,3,4,4,2,0,5,3,3,1,1,5,0
0,15,4,4,1,3,0,4,3,3,1,1,5,0
0,17,3,4,3,2,0,5,4,5,2,4,5,0
0,16,3,3,2,1,2,4,3,2,1,1,5,0
12,16,1,1,1,2,1,4,4,4,1,3,5,0
15,15,4,4,2,1,0,4,3,2,1,1,5,0
0,15,4,3,2,4,0,2,2,2,1,1,3,0
9,16,2,2,2,1,2,2,3,3,2,2,2,8
11,15,4,4,1,3,0,4,2,2,1,1,5,2
13,16,1,1,1,1,0,3,4,4,3,3,1,2
0,17,2,1,1,1,3,5,4,5,1,2,5,0
11,15,1,1,1,2,0,4,4,2,1,2,5,0
0,15,3,2,1,2,3,3,3,2,1,1,3,0
11,15,1,2,1,2,0,4,3,2,1,1,5,2
0,16,4,4,1,1,0,3,3,2,2,1,5,0
10,15,2,1,4,1,3,4,5,5,2,5,5,0
0,18,1,1,1,1,3,2,3,5,2,5,4,0
14,16,2,1,1,1,1,4,4,4,3,5,5,6
10,15,3,3,2,3,2,4,2,1,2,3,3,8
0,19,3,2,1,1,3,4,5,4,1,1,4,0
12,17,4,4,1,1,0,4,2,1,1,1,4,0
8,15,2,3,1,2,0,4,4,4,1,1,1,2
13,17,1,2,1,1,0,2,2,2,3,3,5,8
10,18,1,1,3,1,3,5,2,5,1,5,4,6
15,16,2,2,3,1,0,4,2,2,1,2,3,2
12,16,3,3,1,2,1,4,5,5,4,4,5,4
0,17,2,1,2,1,2,3,3,2,2,2,5,0
7,15,3,2,2,2,2,4,4,4,1,4,3,6
0,16,1,2,2,1,1,4,4,4,2,4,5,0
10,17,1,3,1,1,0,5,3,3,1,4,2,2
7,17,1,1,4,2,3,5,3,5,1,5,5,0
12,16,3,2,2,1,1,4,5,2,1,1,2,16
10,16,2,2,1,2,0,4,3,5,2,4,4,4
16,16,4,2,1,2,0,4,2,3,1,1,3,0
0,16,2,2,1,2,0,5,1,5,1,1,4,0
14,16,4,4,1,2,0,4,4,2,1,1,3,0
0,16,3,4,3,1,2,3,4,5,2,4,2,0
16,16,1,0,2,2,0,4,3,2,1,1,3,2
10,17,4,4,1,2,0,4,4,4,1,3,5,0
0,16,1,3,1,2,3,4,3,5,1,1,3,0
9,16,3,3,2,2,0,4,4,5,1,1,4,4
9,17,4,3,2,2,0,4,4,4,4,4,4,4
11,16,2,2,2,2,0,3,4,4,1,4,5,2
6,17,3,3,1,2,0,4,3,4,1,4,4,4
9,16,4,2,1,1,0,4,3,3,3,4,3,10
11,17,4,3,1,2,0,5,2,3,1,1,2,4
8,16,4,3,1,2,0,3,4,3,2,3,3,10
12,16,3,3,1,2,0,4,2,3,1,2,3,2
17,17,2,4,1,2,0,5,4,2,2,3,5,0
8,17,3,3,1,2,0,5,3,3,2,3,1,56
12,16,3,2,1,2,0,1,2,2,1,2,1,14
11,17,3,3,1,2,0,4,3,4,2,3,4,12
11,16,1,2,1,1,0,3,3,3,1,2,3,2
15,16,2,1,1,2,0,4,2,3,1,2,5,0
9,17,3,3,1,2,0,3,3,3,1,3,3,6
10,17,1,2,1,2,0,3,1,3,1,5,3,4
13,16,2,3,1,2,0,4,3,3,1,1,2,10
9,17,1,1,1,2,0,5,3,3,1,1,3,0
8,17,1,2,2,2,0,4,4,4,4,5,5,12
10,16,3,3,1,1,0,4,3,2,3,4,5,8
14,16,2,3,2,1,0,5,3,3,1,1,3,0
15,17,2,4,1,2,0,4,3,2,1,1,5,0
16,17,4,4,1,1,0,5,2,3,1,2,5,4
10,16,3,3,3,1,0,3,3,4,3,5,3,8
18,17,4,4,2,1,1,4,2,4,2,3,2,24
10,16,4,4,1,2,0,4,5,2,1,2,3,0
16,16,4,3,1,2,0,4,3,5,1,5,2,2
10,16,2,3,1,2,0,4,4,3,1,3,4,6
10,17,1,1,1,2,0,4,4,4,1,3,1,4
6,17,2,2,1,1,0,5,3,2,1,2,3,18
11,16,2,2,2,4,0,5,3,5,1,1,5,6
9,17,3,4,1,3,1,4,4,3,3,4,5,28
7,16,3,1,1,2,3,2,3,3,2,2,4,5
13,16,4,3,1,2,0,1,3,2,1,1,1,10
10,16,1,1,2,1,0,4,3,2,1,4,5,6
7,17,4,3,2,3,0,4,4,2,1,1,4,6
8,19,3,3,1,4,0,4,3,3,1,2,3,10
13,17,4,4,1,2,0,5,3,5,4,5,3,13
14,16,2,2,1,2,0,3,3,4,1,1,4,0
8,18,2,2,1,2,1,4,4,4,2,4,5,15
10,17,4,4,1,1,0,5,2,1,1,2,3,12
15,17,3,2,2,2,0,4,4,4,1,3,1,2
4,17,4,3,1,2,2,3,4,5,2,4,1,22
8,18,3,3,1,2,1,3,2,4,2,4,4,13
8,17,2,3,2,1,0,3,3,3,1,4,3,3
10,17,2,2,1,3,0,4,3,3,1,1,4,4
6,17,2,1,2,2,0,4,2,5,1,2,5,2
0,17,1,1,1,3,1,4,3,4,1,1,5,0
17,16,2,3,1,2,0,2,3,1,1,1,3,2
13,18,2,2,2,2,0,3,3,3,5,5,4,0
14,16,4,4,1,3,0,5,3,2,1,1,5,0
7,18,3,1,1,2,1,5,3,3,1,1,4,16
15,17,3,2,1,2,0,5,3,4,1,3,3,10
12,17,2,3,1,2,0,5,3,3,1,3,3,2
9,18,2,1,4,2,0,4,3,2,4,5,3,14
12,17,2,1,2,3,0,3,2,3,1,2,3,10
14,17,4,3,1,2,0,3,2,3,1,2,3,14
11,17,2,2,2,2,0,4,5,2,1,1,1,4
9,17,4,4,1,2,0,4,5,5,1,3,2,14
13,16,4,4,1,2,0,4,2,4,2,4,1,2
6,16,1,1,2,2,0,3,4,2,1,1,5,18
10,16,3,2,2,3,0,5,3,3,1,3,2,10
13,17,2,2,1,2,0,4,4,2,5,5,4,4
12,16,2,1,1,1,0,4,5,2,1,1,5,20
11,17,2,1,3,2,0,2,1,1,1,1,3,2
0,18,2,2,1,2,1,5,5,4,3,5,2,0
12,17,4,3,2,2,0,2,5,5,1,4,5,14
12,17,4,4,2,2,0,3,3,3,2,3,4,2
0,16,4,3,1,1,0,5,4,5,1,1,3,0
12,16,4,4,1,1,0,5,3,2,1,2,5,0
0,18,2,1,2,3,0,4,4,4,1,1,3,0
18,16,2,1,3,1,0,4,3,3,1,1,4,6
13,17,2,3,2,1,0,5,2,2,1,1,2,4
8,22,3,1,1,1,3,5,4,5,5,5,1,16
5,18,3,3,1,2,1,4,3,3,1,3,5,8
15,16,0,2,1,1,0,4,3,2,2,4,5,0
8,18,3,2,2,1,1,4,4,5,2,4,5,0
10,16,3,3,3,2,0,5,3,3,1,3,2,6
8,18,2,1,1,1,1,3,2,5,2,5,5,4
8,16,2,1,2,1,0,3,3,2,1,3,3,0
12,17,2,1,1,1,0,4,4,2,2,4,5,0
8,17,1,1,2,1,1,4,4,4,1,2,5,2
13,17,4,2,1,4,0,4,2,3,1,1,4,6
11,19,4,3,1,2,0,4,3,1,1,1,1,12
14,18,2,1,1,2,0,5,2,4,1,2,4,8
0,17,2,2,1,4,0,3,4,1,1,1,2,0
18,18,4,3,1,2,0,3,1,2,1,3,2,21
8,18,4,3,1,2,0,4,3,2,1,1,3,2
12,18,3,2,1,3,0,5,3,2,1,1,3,1
9,17,3,3,1,3,0,3,2,3,1,1,4,4
0,18,2,2,1,3,0,4,3,3,1,1,3,0
17,18,3,4,2,2,0,4,2,5,3,4,1,13
10,17,3,1,1,2,0,5,4,4,3,4,5,2
11,18,4,4,2,2,0,4,3,4,2,2,4,8
10,18,4,2,1,2,0,5,4,5,1,3,5,10
0,18,2,1,2,2,0,4,3,5,1,2,3,0
9,19,3,3,1,2,2,4,3,5,3,3,5,15
14,18,2,3,1,4,0,4,5,5,1,3,2,4
11,18,1,1,2,2,0,4,4,3,1,1,3,2
14,17,1,2,1,2,0,3,5,2,2,2,1,2
10,17,2,4,2,2,0,4,3,3,1,1,1,2
12,17,2,2,2,2,0,4,4,4,2,3,5,6
9,18,3,2,2,2,0,4,1,1,1,1,5,75
9,18,4,4,2,1,0,3,2,4,1,4,3,22
8,18,4,4,1,2,1,2,4,4,1,1,4,15
10,18,4,3,2,1,0,4,2,3,1,2,1,8
8,17,4,1,2,1,0,4,5,4,2,4,5,30
10,17,3,2,1,1,1,4,4,4,3,4,3,19
12,18,1,1,2,4,0,5,2,2,1,1,3,1
10,18,1,1,2,2,0,5,4,4,1,1,4,4
11,17,2,2,1,2,0,5,4,5,1,2,5,4
11,17,1,1,1,2,0,4,3,3,1,2,4,2
19,18,2,2,1,3,0,4,3,3,1,2,2,5
12,17,1,1,1,3,0,4,3,3,1,1,3,6
14,18,2,1,1,3,0,4,2,4,1,3,2,6
15,18,4,4,1,2,0,5,4,3,1,1,2,9
11,18,4,2,1,2,0,4,3,2,1,4,5,11
15,17,4,3,1,3,0,4,2,2,1,2,3,0
13,18,2,1,1,2,1,5,4,3,1,1,5,12
18,17,3,1,2,4,0,3,1,2,1,1,3,6
14,18,3,2,2,3,0,5,4,2,1,1,4,8
11,17,3,3,1,1,0,4,4,3,1,3,5,4
0,19,4,4,2,2,0,2,3,4,2,3,2,0
8,18,4,3,2,2,0,4,4,5,1,2,2,10
14,18,4,3,1,4,0,4,3,3,1,1,3,0
16,18,4,4,1,1,0,1,4,2,2,2,1,5
11,18,4,4,1,2,0,4,2,4,1,1,4,14
10,17,4,4,2,1,0,4,1,1,2,2,5,0
14,17,4,2,2,3,0,4,3,3,1,1,3,0
18,17,3,2,1,4,0,5,2,2,1,2,5,0
13,19,3,3,1,2,1,4,4,4,1,1,3,20
12,18,2,4,1,2,1,4,4,3,1,1,3,8
18,20,3,2,1,1,0,5,5,3,1,1,5,0
8,19,4,4,2,1,1,4,3,4,1,1,4,38
12,19,3,3,1,2,1,4,5,3,1,2,5,0
10,19,1,1,1,2,1,4,4,3,1,3,3,18
0,19,1,2,1,2,1,4,2,4,2,2,3,0
13,19,2,1,3,2,0,3,4,1,1,1,2,20
11,19,1,2,1,2,1,4,5,2,2,2,4,3
11,19,3,2,2,2,1,4,2,2,1,2,1,22
13,19,1,1,1,3,2,4,1,2,1,1,3,14
11,19,2,3,1,3,1,4,1,2,1,1,3,40
0,18,2,1,2,2,0,5,3,3,1,2,1,0
9,18,4,3,1,3,0,4,3,4,1,1,5,9
10,17,3,4,1,3,0,4,3,4,2,5,5,0
11,18,4,4,1,2,0,4,4,4,3,3,5,2
13,17,4,3,1,2,0,5,2,2,1,2,5,23
9,17,2,2,1,2,0,4,2,2,1,1,3,12
11,17,2,2,1,3,0,3,3,2,2,2,3,3
15,17,3,1,1,3,0,3,4,3,2,3,5,1
15,17,0,2,2,3,0,3,3,3,2,3,2,0
11,18,4,4,1,3,0,4,3,3,2,2,3,3
16,17,3,3,1,1,0,4,3,5,3,5,5,3
10,17,2,2,4,1,0,4,4,5,5,5,4,8
9,17,4,4,1,3,0,5,4,4,1,3,4,7
14,17,4,4,2,3,0,4,3,3,1,2,4,4
8,18,2,2,1,4,0,4,5,5,2,4,5,2
14,17,2,4,1,3,0,4,4,3,1,1,5,7
0,18,3,3,1,2,0,5,3,4,1,1,4,0
0,18,2,2,1,2,0,4,3,3,1,1,2,0
0,18,2,2,2,4,0,4,4,4,1,1,4,0
15,17,3,4,1,3,0,4,4,5,1,3,5,16
13,19,3,1,1,3,1,5,4,3,1,2,5,12
0,17,3,2,1,2,0,4,3,2,2,3,2,0
17,18,3,3,1,4,0,5,3,3,1,1,1,7
10,17,3,2,1,2,0,4,3,3,2,3,2,4
11,19,2,1,1,3,1,4,3,4,1,3,3,4
0,18,4,4,1,2,1,4,3,3,2,2,2,0
15,18,3,4,1,2,0,4,3,3,1,3,5,11
0,17,2,2,1,2,1,3,3,1,1,2,4,0
10,18,2,3,1,3,0,4,3,3,1,2,3,4
14,18,3,2,1,3,0,5,4,3,2,3,1,7
16,18,4,3,1,3,0,5,3,2,1,2,4,9
9,18,4,3,1,3,0,5,4,5,2,3,5,0
15,17,4,3,1,3,0,4,4,3,1,3,4,0
13,18,3,2,2,1,1,2,5,5,5,5,5,10
8,19,1,1,3,2,3,5,4,4,3,3,2,8
13,17,3,3,2,2,0,4,5,4,2,3,3,2
8,18,1,3,1,1,1,4,3,3,2,3,3,7
8,19,1,1,3,1,1,4,4,4,3,3,5,4
11,17,4,3,2,2,0,4,5,5,1,3,2,4
9,18,3,3,1,2,0,5,3,4,1,1,5,0
13,17,4,4,2,2,0,4,3,3,1,2,5,4
11,17,3,2,2,2,0,1,2,3,1,2,5,2
10,18,1,1,2,1,0,3,3,2,1,2,3,4
16,18,1,1,2,3,0,5,3,2,1,1,4,0
13,18,1,4,3,2,0,4,3,4,1,4,5,0
12,18,1,1,2,2,1,4,4,3,2,3,5,2
10,18,3,3,2,2,0,4,3,2,1,3,3,0
15,17,4,4,1,2,0,2,3,4,1,1,1,0
12,17,1,2,2,2,0,3,2,2,1,2,3,0
10,18,1,3,2,2,0,3,3,4,2,4,3,4
13,18,4,4,2,3,0,4,2,2,2,2,5,0
0,17,1,1,3,1,1,5,2,1,1,2,1,0
10,18,2,3,2,1,0,5,2,3,1,2,4,0
11,18,4,4,3,2,0,3,2,2,4,2,5,10
9,19,3,2,2,2,2,3,2,2,1,1,3,4
12,18,1,2,3,1,0,4,3,3,2,3,3,3
11,17,2,2,1,3,0,3,4,3,1,1,3,8
5,17,1,2,1,1,0,3,5,5,1,3,1,14
19,18,4,4,2,3,0,5,4,4,1,1,1,0
10,18,1,1,4,3,0,4,3,2,1,2,4,2
15,20,4,2,2,3,2,5,4,3,1,1,3,4
10,18,4,4,1,2,0,5,4,3,3,4,2,4
15,18,3,3,1,2,0,4,1,3,1,2,1,0
10,17,3,1,1,2,0,4,5,4,2,3,1,17
14,18,4,4,1,2,0,3,2,4,1,4,2,4
7,18,2,1,2,1,0,4,4,3,1,3,5,5
10,17,2,3,2,2,0,4,4,3,1,1,3,2
0,19,1,1,2,1,1,4,3,2,1,3,5,0
5,18,4,2,2,1,1,5,4,3,4,3,3,14
10,18,2,2,2,3,0,5,3,3,1,3,4,2
6,18,4,4,3,1,0,4,4,3,2,2,5,7
0,19,2,3,1,3,1,5,4,2,1,2,5,0
8,18,3,1,1,2,0,4,3,4,1,1,1,0
0,18,1,1,2,2,1,1,1,1,1,1,5,0
9,20,2,2,1,2,2,5,5,4,4,5,4,11
16,17,3,1,2,1,0,2,4,5,3,4,2,3
7,21,1,1,1,1,3,5,5,3,3,3,3,3
10,18,3,2,3,1,0,4,4,1,3,4,5,0
9,19,1,1,1,1,0,3,2,3,3,3,5,5
Clump Thickness,Uniformity of Cell Size
5,1
5,4
3,1
6,8
4,1
8,10
1,1
2,1
2,1
4,2
1,1
2,1
5,3
1,1
8,7
7,4
4,1
4,1
10,7
6,1
7,3
10,5
3,1
8,4
1,1
5,2
3,2
5,1
2,1
1,1
3,1
2,1
10,7
2,1
3,1
2,1
10,10
6,2
5,4
2,5
6,6
10,4
6,10
5,6
10,10
1,1
3,7
1,1
4,1
7,8
9,5
5,3
10,3
5,5
10,5
10,6
8,10
8,2
5,2
9,5
5,3
1,1
9,10
6,3
1,1
10,4
4,1
5,3
8,3
1,1
5,1
6,10
1,3
9,4
10,6
1,1
1,1
5,3
3,1
2,1
2,2
4,1
5,2
3,1
3,5
5,10
3,3
3,6
4,1
2,1
1,1
3,1
4,1
1,1
2,1
1,1
2,1
5,1
9,6
7,5
10,3
2,3
4,1
8,2
10,10
7,3
10,10
1,6
1,1
6,5
1,3
8,6
10,3
10,10
3,3
1,1
8,3
4,5
1,1
3,2
1,1
4,2
10,10
5,3
5,4
1,1
7,5
3,1
8,3
1,1
5,1
2,1
5,10
3,1
3,1
5,1
4,1
3,1
4,1
1,1
3,1
2,1
9,5
1,1
2,1
1,1
3,4
1,1
3,1
8,8
1,1
7,2
10,10
4,1
1,1
5,5
1,2
2,1
1,1
9,9
10,7
4,1
3,1
1,1
5,1
4,1
5,6
10,8
3,1
1,1
3,1
1,1
1,1
6,10
8,6
5,8
2,1
5,10
4,1
5,3
1,1
1,1
6,1
5,8
8,7
2,1
1,5
10,5
5,8
1,2
10,10
7,5
5,1
1,1
3,1
4,1
8,4
5,1
1,1
3,1
9,7
10,8
1,1
5,1
1,1
5,10
10,10
1,1
1,1
5,1
8,10
8,10
1,1
10,10
10,10
8,7
1,1
1,1
6,10
6,1
1,1
10,6
4,1
7,5
10,5
1,1
10,5
8,9
1,1
10,10
7,4
6,8
8,4
10,4
3,3
3,1
10,8
9,8
8,10
10,4
5,1
3,1
2,1
1,1
1,1
5,1
8,10
8,4
4,1
3,1
1,2
10,4
6,3
6,10
9,10
5,6
3,1
3,1
3,1
5,7
10,5
5,10
8,8
10,4
7,9
5,1
10,10
3,3
10,8
1,1
8,4
5,1
3,3
7,2
3,1
3,1
3,1
1,1
1,1
10,5
3,1
2,1
1,4
10,4
7,4
8,10
10,10
3,1
6,1
5,6
1,1
1,1
8,8
10,4
1,1
5,5
5,3
5,4
8,2
9,1
8,4
1,1
10,10
1,1
8,3
10,8
1,1
1,1
7,8
3,1
2,1
1,1
8,6
1,1
1,1
4,6
5,5
6,8
1,1
4,4
7,6
3,1
3,1
5,4
1,1
3,2
10,1
1,1
8,10
10,4
10,4
5,1
5,2
5,4
8,6
1,1
6,5
1,1
1,1
8,5
10,3
1,1
2,1
1,1
7,6
1,1
5,2
1,1
3,4
4,2
5,1
2,1
3,4
2,7
1,1
4,1
5,3
8,10
8,10
10,3
6,10
3,10
3,2
4,4
2,1
2,1
6,10
5,8
1,1
1,1
4,3
1,1
4,1
5,1
3,1
1,1
1,1
1,1
3,1
5,3
1,1
10,6
3,2
2,1
2,1
3,3
7,6
5,3
2,1
5,1
1,1
10,8
3,1
1,1
1,2
3,1
3,1
4,1
3,2
1,2
3,10
3,1
5,3
3,1
1,2
1,1
4,2
1,1
2,3
3,1
1,1
1,1
10,10
5,1
8,5
3,3
8,7
1,1
5,2
2,3
3,2
10,10
4,3
5,1
3,1
9,10
5,3
8,7
1,1
2,1
1,3
5,1
5,1
3,2
6,9
10,8
10,10
4,1
4,1
5,1
10,4
5,2
1,1
1,1
5,1
2,1
1,1
5,1
1,1
5,7
4,1
5,1
3,1
4,5
2,3
10,2
10,6
8,8
5,1
5,1
5,1
3,1
6,1
4,1
4,1
10,9
10,6
6,6
4,1
1,1
3,1
6,1
6,1
4,1
5,1
3,1
4,1
4,1
5,2
4,8
5,1
5,3
9,10
8,7
5,1
1,1
3,1
10,10
3,6
6,3
1,1
5,8
4,1
5,10
5,1
3,1
1,1
4,2
4,1
4,1
6,1
4,1
4,1
4,1
1,1
3,3
8,10
1,1
5,1
2,1
1,1
5,1
5,1
3,1
6,6
4,10
1,1
1,1
3,1
4,7
1,1
4,1
10,4
7,5
3,1
3,1
4,1
4,1
6,1
4,1
7,4
4,2
1,1
3,1
2,1
1,1
5,1
5,1
4,1
6,1
5,1
3,1
5,3
4,1
2,1
5,1
6,10
2,1
3,1
7,8
3,1
1,1
3,2
4,4
3,1
4,3
5,2
5,1
2,1
5,1
5,1
5,1
1,1
3,1
4,1
5,7
3,1
4,1
8,4
10,10
8,10
7,6
3,1
1,1
10,9
5,1
5,1
1,1
1,1
1,1
5,1
5,7
6,10
3,1
5,1
1,1
8,10
5,1
9,8
5,1
4,10
2,5
10,3
5,1
4,8
5,1
4,1
5,1
3,1
5,2
3,1
1,1
4,1
5,4
5,3
10,5
4,1
1,1
5,10
5,1
10,4
5,10
8,10
2,3
2,1
4,1
3,1
1,1
4,1
5,1
3,1
6,3
7,1
1,1
5,1
3,1
4,6
2,1
2,1
4,1
6,2
5,1
1,1
8,7
3,1
3,1
10,10
4,2
4,1
5,1
4,1
3,1
3,1
1,1
2,1
3,1
1,2
1,1
Sample code number,Uniformity of Cell Shape,Marginal Adhesion,Single Epithelial Cell Size,Bare Nuclei,Bland Chromatin,Normal Nucleoli,Mitoses,Class
1000025,1,1,2,1,3,1,1,2
1002945,4,5,7,10,3,2,1,2
1015425,1,1,2,2,3,1,1,2
1016277,8,1,3,4,3,7,1,2
1017023,1,3,2,1,3,1,1,2
1017122,10,8,7,10,9,7,1,4
1018099,1,1,2,10,3,1,1,2
1018561,2,1,2,1,3,1,1,2
1033078,1,1,2,1,1,1,5,2
1033078,1,1,2,1,2,1,1,2
1035283,1,1,1,1,3,1,1,2
1036172,1,1,2,1,2,1,1,2
1041801,3,3,2,3,4,4,1,4
1043999,1,1,2,3,3,1,1,2
1044572,5,10,7,9,5,5,4,4
1047630,6,4,6,1,4,3,1,4
1048672,1,1,2,1,2,1,1,2
1049815,1,1,2,1,3,1,1,2
1050670,7,6,4,10,4,1,2,4
1050718,1,1,2,1,3,1,1,2
1054590,2,10,5,10,5,4,4,4
1054593,5,3,6,7,7,10,1,4
1056784,1,1,2,1,2,1,1,2
1057013,5,1,2,1,7,3,1,4
1059552,1,1,2,1,3,1,1,2
1065726,3,4,2,7,3,6,1,4
1066373,1,1,1,1,2,1,1,2
1066979,1,1,2,1,2,1,1,2
1067444,1,1,2,1,2,1,1,2
1070935,3,1,2,1,1,1,1,2
1070935,1,1,1,1,2,1,1,2
1071760,1,1,2,1,3,1,1,2
1072179,7,3,8,5,7,4,3,4
1074610,1,2,2,1,3,1,1,2
1075123,2,1,2,1,2,1,1,2
1079304,1,1,2,1,2,1,1,2
1080185,10,8,6,1,8,9,1,4
1081791,1,1,1,1,7,1,1,2
1084584,4,9,2,10,5,6,1,4
1091262,3,3,6,7,7,5,1,4
1096800,6,9,6,1,7,8,1,2
1099510,3,1,3,3,6,5,2,4
1100524,10,2,8,10,7,3,3,4
1102573,5,6,10,1,3,1,1,4
1103608,10,4,8,1,8,10,1,4
1103722,1,1,2,1,2,1,2,2
1105257,7,4,4,9,4,8,1,4
1105524,1,1,2,1,2,1,1,2
1106095,1,3,2,1,3,1,1,2
1106829,7,2,4,8,3,8,2,4
1108370,8,1,2,3,2,1,5,4
1108449,3,4,2,4,3,4,1,4
1110102,6,2,3,5,4,10,2,4
1110503,5,8,10,8,7,3,7,4
1110524,5,6,8,8,7,1,1,4
1111249,6,3,4,5,3,6,1,4
1112209,10,1,3,6,3,9,1,4
1113038,4,1,5,1,5,4,4,4
1113483,3,1,6,10,5,1,1,4
1113906,5,2,2,2,5,1,1,4
1115282,5,5,3,3,4,10,1,4
1115293,1,1,2,2,2,1,1,2
1116116,10,1,10,8,3,3,1,4
1116132,4,1,5,2,3,9,1,4
1116192,1,1,2,1,2,1,1,2
1116998,2,1,3,2,4,3,10,4
1117152,1,1,2,1,3,1,1,2
1118039,4,1,8,10,4,9,1,4
1120559,8,3,4,9,8,9,8,4
1121732,1,1,2,1,3,2,1,2
1121919,3,1,2,1,2,1,1,2
1123061,2,8,10,2,7,8,10,4
1124651,3,2,2,1,7,2,1,2
1125035,5,10,6,10,4,8,1,4
1126417,4,1,3,4,3,2,3,4
1131294,2,1,2,2,4,2,1,2
1132347,4,1,2,1,2,1,1,2
1133041,1,2,2,1,2,1,1,2
1133136,1,1,2,3,3,1,1,2
1136142,1,1,3,1,2,1,1,2
1137156,2,1,1,1,7,1,1,2
1143978,1,2,2,1,2,1,1,2
1143978,1,1,2,1,3,1,1,2
1147044,1,1,2,2,7,1,1,2
1147699,7,8,8,9,7,10,7,4
1147748,6,1,10,4,4,10,10,4
1148278,6,4,5,8,4,4,1,4
1148873,6,6,5,10,6,8,3,4
1152331,1,1,2,1,3,1,1,2
1155546,1,2,3,1,2,1,1,2
1156272,1,1,2,1,3,1,1,2
1156948,1,2,2,1,1,1,1,2
1157734,1,1,2,1,3,1,1,2
1158247,1,1,2,1,2,1,1,2
1160476,1,1,2,1,3,1,1,2
1164066,1,1,2,1,3,1,1,2
1165297,1,2,2,1,1,1,1,2
1165790,1,1,2,1,3,1,1,2
1165926,9,2,10,6,2,9,10,4
1166630,6,10,5,10,7,9,4,4
1166654,5,1,10,5,3,10,2,4
1167439,4,4,2,5,2,5,1,4
1167471,2,1,2,1,3,1,1,2
1168359,3,1,6,3,7,1,1,4
1168736,10,10,10,1,8,8,8,4
1169049,4,4,3,3,3,2,7,4
1170419,10,8,2,10,4,1,1,4
1170420,8,10,8,10,5,7,1,4
1171710,1,1,2,1,2,3,1,2
1171710,4,4,3,9,7,8,3,4
1171795,1,2,2,2,5,3,2,2
1171845,4,3,5,9,3,1,1,4
1172152,3,10,2,10,7,3,3,4
1173216,10,3,10,8,8,1,1,4
1173235,2,1,2,3,3,1,1,2
1173347,1,1,2,5,1,1,1,2
1173347,3,1,2,2,3,2,1,2
1173509,5,10,4,10,7,5,8,4
1173514,1,1,4,3,1,1,1,2
1173681,1,1,2,2,3,1,1,2
1174057,2,2,2,1,3,1,1,2
1174057,1,1,2,2,3,1,1,2
1174131,10,2,10,10,5,3,3,4
1174428,5,1,8,10,5,3,1,4
1175937,6,7,9,7,8,10,1,4
1176406,1,1,2,1,2,1,1,2
1176881,3,7,4,10,7,5,5,4
1177027,1,1,2,1,3,1,1,2
1177399,5,4,5,10,1,6,2,4
1177512,1,1,10,1,1,1,1,2
1178580,3,1,2,1,2,1,1,2
1179818,1,1,2,1,3,1,1,2
1180194,8,10,8,10,3,6,3,4
1180523,1,1,2,1,2,2,1,2
1180831,1,1,3,1,2,1,1,2
1181356,1,1,2,2,3,3,1,2
1182404,1,1,2,1,2,1,1,2
1182410,1,1,2,1,1,1,1,2
1183240,2,1,2,1,2,1,1,2
1183246,1,1,1,0,2,1,1,2
1183516,1,1,2,1,1,1,1,2
1183911,1,1,2,1,1,1,1,2
1183983,5,4,4,5,4,3,3,4
1184184,1,1,2,5,1,1,1,2
1184241,1,1,2,1,2,1,1,2
1184840,3,1,2,1,2,1,1,2
1185609,5,2,6,8,4,1,1,4
1185610,1,1,3,2,2,1,1,2
1187457,1,3,8,1,5,8,1,2
1187805,7,4,10,10,7,8,7,4
1188472,1,1,1,1,3,1,1,2
1189266,4,1,6,10,5,4,3,4
1189286,8,6,4,5,8,10,1,4
1190394,1,1,2,3,1,1,1,2
1190485,1,1,2,1,1,1,1,2
1192325,5,6,3,10,3,1,1,4
1193091,2,1,2,1,2,1,1,2
1193210,1,1,2,1,3,1,1,2
1193683,2,1,3,2,1,1,1,2
1196295,10,3,6,10,7,10,6,4
1196915,7,4,5,10,5,7,2,4
1197080,1,1,2,1,3,2,1,2
1197270,1,1,2,1,3,1,1,2
1197440,1,2,1,3,1,1,7,2
1197510,1,1,2,1,3,1,1,2
1197979,1,1,2,2,3,2,1,2
1197993,7,8,8,10,3,10,3,4
1198128,10,10,6,1,3,1,10,4
1198641,1,1,2,1,3,1,1,2
1199219,1,2,1,1,1,1,1,2
1199731,1,1,2,1,1,1,1,2
1199983,1,1,2,1,3,1,1,2
1200772,1,1,2,1,2,1,1,2
1200847,10,10,8,10,10,10,7,4
1200892,5,4,3,10,6,1,1,4
1200952,7,7,10,10,5,7,1,4
1201834,1,1,2,1,3,1,1,2
1201936,10,3,8,1,5,10,3,4
1202125,1,1,2,1,3,1,1,2
1202812,3,3,6,10,3,1,1,4
1203096,1,1,1,1,3,1,1,2
1204242,1,1,2,1,1,1,1,2
1204898,1,1,2,1,3,1,1,2
1205138,8,8,5,10,7,8,1,4
1205579,6,4,4,10,5,1,1,4
1206089,1,1,1,1,3,1,1,2
1206695,8,6,5,8,7,10,1,4
1206841,6,10,6,10,7,7,10,4
1207986,4,10,5,8,9,10,1,4
1208301,3,1,2,1,3,1,1,2
1210963,10,8,6,8,7,10,1,4
1211202,10,10,10,10,4,10,3,4
1212232,1,1,2,1,2,1,1,2
1212251,1,1,2,1,3,1,1,2
1212422,1,1,2,1,3,1,1,2
1212422,1,1,2,1,3,1,1,2
1213375,4,5,4,7,7,8,2,2
1213383,1,4,2,1,3,1,1,2
1214092,1,1,2,1,1,1,1,2
1214556,1,1,2,1,2,1,1,2
1214966,7,5,5,10,7,8,3,4
1216694,8,4,10,10,8,1,1,4
1216947,1,1,2,1,3,1,1,2
1217051,1,1,2,1,3,1,1,2
1217264,1,1,2,1,3,1,1,2
1218105,10,9,6,10,7,10,5,4
1218741,9,3,7,5,3,5,1,4
1218860,1,1,1,1,3,1,1,2
1218860,1,1,1,1,3,1,1,2
1219406,1,1,1,1,3,1,1,2
1219525,10,10,5,10,8,10,6,4
1219859,8,8,4,8,7,7,1,4
1220330,1,1,2,1,3,1,1,2
1221863,10,10,7,10,7,10,4,4
1222047,10,10,3,10,10,6,1,4
1222936,8,7,5,5,5,10,2,4
1223282,1,1,2,1,2,1,1,2
1223426,1,1,2,1,3,1,1,2
1223793,7,7,6,4,8,10,2,4
1223967,3,1,2,1,3,1,1,2
1224329,1,2,2,1,3,1,1,2
1225799,4,3,10,10,9,10,1,4
1226012,1,3,1,5,2,1,1,4
1226612,6,3,3,8,7,4,1,4
1227210,5,6,3,10,7,9,2,4
1227244,1,1,2,1,2,1,1,2
1227481,7,4,4,10,8,9,1,4
1228152,9,5,3,5,7,7,1,4
1228311,1,1,1,1,3,1,1,2
1230175,10,3,10,10,9,10,1,4
1230688,7,4,3,7,7,6,1,4
1231387,7,5,6,8,8,9,2,4
1231706,6,3,3,1,4,3,1,2
1232225,5,5,5,10,4,1,1,4
1236043,2,1,3,1,3,6,1,2
1241232,4,1,2,1,3,1,1,2
1241559,8,2,8,10,4,8,10,4
1241679,8,5,6,2,4,10,4,4
1242364,10,8,6,9,3,10,10,4
1243256,3,2,3,10,5,3,2,4
1270479,3,3,2,2,2,3,1,2
1276091,1,3,1,1,3,1,1,2
1277018,1,1,2,1,3,1,1,2
128059,1,1,2,5,5,1,1,2
1285531,1,1,2,1,3,1,1,2
1287775,1,2,2,2,3,1,1,2
144888,10,8,5,10,7,8,1,4
145447,4,1,2,9,3,3,1,4
167528,1,1,2,1,3,6,1,2
169356,1,1,2,1,3,1,1,2
183913,2,1,2,1,1,1,1,2
191250,4,10,2,10,5,3,3,4
1017023,3,5,3,10,3,5,3,2
1100524,10,2,8,10,7,3,3,4
1116116,10,1,10,8,3,3,1,4
1168736,6,2,4,10,3,6,1,4
1182404,1,1,2,1,1,1,1,2
1182404,1,1,2,1,2,1,1,2
1198641,1,1,2,1,3,1,1,2
242970,7,1,5,8,3,4,1,2
255644,8,10,3,10,5,1,3,4
263538,10,6,10,10,10,6,5,4
274137,9,4,5,10,7,8,1,4
303213,4,10,6,10,5,5,1,4
314428,4,10,10,3,5,3,3,4
1182404,4,1,2,1,3,2,1,2
1198641,6,3,3,10,4,3,2,4
320675,5,2,3,10,7,1,1,4
324427,8,2,3,4,8,7,8,4
385103,1,1,2,1,3,1,1,2
390840,7,1,3,10,3,9,2,4
411453,1,1,2,1,3,1,1,2
320675,5,2,3,10,7,1,1,4
428903,4,1,3,4,3,3,1,4
431495,1,1,2,1,3,2,1,2
432809,3,1,2,2,2,1,1,2
434518,1,1,2,1,2,1,1,2
452264,1,1,2,1,2,1,1,2
456282,1,1,2,1,3,1,1,2
476903,7,3,3,7,3,3,8,4
486283,1,1,2,1,3,1,1,2
486662,1,2,2,1,3,1,1,2
488173,3,10,4,10,5,6,1,4
492268,6,1,2,10,5,3,1,4
508234,5,10,2,10,3,8,2,4
527363,10,10,8,10,10,7,3,4
529329,10,10,10,10,4,10,10,4
535331,1,1,3,1,2,1,1,2
543558,3,1,4,5,5,10,1,4
555977,6,8,6,10,4,10,4,4
560680,1,1,2,1,1,1,1,2
561477,1,1,2,1,3,1,1,2
563649,8,1,2,2,6,10,1,4
601265,4,6,2,10,2,3,1,4
606140,1,1,2,2,2,1,1,2
606722,7,8,6,10,7,4,1,4
616240,4,3,4,5,4,7,1,2
61634,3,1,2,1,2,3,1,2
625201,1,1,5,1,1,1,1,2
63375,2,6,4,10,7,7,2,4
635844,10,5,4,4,7,10,1,4
636130,1,1,2,1,3,1,1,2
640744,10,7,9,10,7,10,10,4
646904,1,1,2,1,3,1,1,2
653777,4,9,3,10,3,3,1,4
659642,4,4,4,10,3,10,4,4
666090,1,1,2,1,3,1,1,2
666942,1,1,2,1,3,1,1,2
667204,7,6,4,3,8,8,4,4
673637,1,1,2,5,5,1,1,2
684955,1,1,3,1,2,1,1,2
688033,1,1,2,1,1,1,1,2
691628,4,10,10,1,3,5,1,4
693702,1,1,2,1,1,1,1,2
704097,1,1,1,1,2,1,1,2
704168,5,6,7,0,4,9,1,2
706426,5,2,5,10,4,3,1,4
709287,7,8,6,8,8,9,1,4
718641,1,1,5,1,3,1,1,2
721482,4,4,6,5,7,3,1,2
730881,3,2,5,10,7,4,6,4
733639,1,1,2,3,3,1,1,2
733639,1,1,2,1,3,1,1,2
733823,6,10,2,10,4,1,1,4
740492,1,1,2,1,3,1,1,2
743348,2,1,2,1,2,3,1,2
752904,1,1,2,10,5,4,1,4
756136,1,1,2,1,2,1,1,2
760001,3,2,6,4,3,10,1,4
760239,6,4,5,10,7,1,1,4
76389,7,2,2,8,6,1,1,4
764974,1,1,2,1,3,1,2,2
770066,2,2,2,1,2,2,1,2
785208,6,6,4,10,4,3,1,4
785615,7,3,3,10,3,4,2,4
792744,1,1,2,1,1,1,1,2
797327,5,8,4,10,3,4,1,4
798429,1,1,2,1,3,1,1,2
704097,1,1,1,1,2,1,1,2
806423,5,5,2,10,4,3,1,4
809912,3,1,2,10,7,6,1,4
810104,1,1,2,1,3,1,1,2
814265,1,1,2,1,1,1,1,2
814911,1,1,2,1,1,1,1,2
822829,4,8,10,10,9,5,3,4
826923,1,1,2,1,1,1,1,2
830690,2,2,3,1,1,3,1,2
831268,1,1,1,1,1,3,1,2
832226,4,10,5,1,3,3,1,4
832567,3,5,3,8,7,6,1,4
836433,1,3,2,1,1,1,1,2
837082,1,1,2,1,3,1,1,2
846832,5,3,7,3,4,6,1,2
850831,10,10,7,10,4,9,4,4
855524,1,1,2,1,2,1,1,2
857774,1,1,3,1,2,2,1,2
859164,3,1,3,3,3,3,3,4
859350,10,7,10,10,7,3,8,4
866325,5,3,8,4,4,10,3,4
873549,5,4,3,7,3,5,3,4
877291,10,10,10,10,8,10,10,4
877943,3,10,6,10,5,1,4,4
888169,2,1,4,3,2,1,1,2
888523,4,2,2,3,2,1,1,2
896404,1,1,2,1,3,1,1,2
897172,1,1,2,1,2,1,1,2
95719,10,10,8,10,7,10,7,4
160296,8,10,5,10,8,10,3,4
342245,3,1,2,1,1,1,1,2
428598,3,1,1,1,2,1,1,2
492561,2,1,3,1,2,1,1,2
493452,3,1,2,1,1,1,1,2
493452,2,1,2,1,2,1,1,2
521441,1,2,2,1,2,1,1,2
560680,2,1,2,1,2,1,1,2
636437,1,1,2,1,1,1,1,2
640712,1,1,2,1,2,1,1,2
654244,1,1,1,1,2,1,1,2
657753,1,4,3,1,2,2,1,2
685977,4,1,4,1,3,1,1,2
805448,1,1,2,1,1,1,1,2
846423,3,6,4,10,7,8,4,4
1002504,2,2,2,1,3,2,1,2
1022257,1,1,2,1,1,1,1,2
1026122,1,1,2,1,1,1,1,2
1071084,2,2,3,1,1,2,3,2
1080233,6,3,2,10,7,1,1,4
1114570,3,2,3,1,3,1,1,2
1114570,1,1,2,1,2,2,1,2
1116715,1,1,3,2,2,2,1,2
1131411,1,2,2,1,2,1,1,2
1151734,7,4,3,10,7,9,1,4
1156017,1,1,2,1,2,1,1,2
1158247,1,1,1,1,1,1,1,2
1158405,3,1,2,1,2,1,1,2
1168278,1,1,2,1,2,1,1,2
1176187,1,1,2,1,3,1,1,2
1196263,1,1,2,1,1,1,1,2
1196475,1,1,2,1,2,2,1,2
1206314,3,1,2,1,1,1,1,2
1211265,8,7,6,9,9,3,8,4
1213784,1,1,2,1,1,1,1,2
1223003,3,1,2,1,2,1,1,2
1223306,1,1,2,4,1,1,1,2
1223543,1,3,2,1,1,2,1,2
1229929,1,1,2,1,2,1,1,2
1231853,2,1,2,1,2,1,1,2
1234554,1,1,2,1,2,1,1,2
1236837,2,2,2,2,3,1,1,2
1237674,2,1,2,1,2,1,1,2
1238021,1,1,2,1,2,1,1,2
1238464,1,1,1,2,2,1,1,2
1238633,10,6,8,4,8,5,1,4
1238915,2,1,2,1,3,1,1,2
1238948,6,2,3,10,6,6,1,4
1239232,2,6,3,3,3,5,1,2
1239347,8,5,10,10,7,2,1,4
1239967,1,1,2,1,2,1,1,2
1240337,2,2,2,2,3,2,2,2
1253505,1,1,5,1,1,1,1,2
1255384,2,3,2,3,3,1,1,2
1257200,10,7,10,10,8,2,1,4
1257648,3,1,2,1,3,3,1,2
1257815,3,1,2,1,2,1,1,2
1257938,1,1,2,1,1,1,1,2
1258549,10,10,10,10,10,10,1,4
1258556,6,1,2,1,1,1,1,2
1266154,8,2,4,2,5,10,1,4
1272039,1,1,2,1,2,1,1,2
1276091,1,1,2,1,2,1,1,2
1276091,1,1,2,1,2,2,1,2
1276091,1,3,4,1,3,2,1,2
1277629,1,1,2,1,2,2,1,2
1293439,2,3,2,1,1,1,1,2
1293439,7,5,5,8,4,2,1,2
1294562,10,1,3,10,5,1,1,4
1295186,10,1,6,1,2,8,1,4
527337,1,1,2,1,1,1,1,2
558538,3,3,2,1,1,1,1,2
566509,1,1,2,1,1,1,1,2
608157,3,10,4,10,10,1,1,4
677910,2,4,2,4,1,1,1,2
734111,1,3,2,3,1,1,1,2
734111,1,1,2,2,1,1,1,2
780555,1,6,3,1,2,1,1,2
827627,1,1,2,1,1,1,1,2
1049837,1,1,2,1,1,1,1,2
1058849,1,1,2,1,1,1,1,2
1182404,1,1,1,1,1,1,1,2
1193544,9,8,6,10,8,10,1,4
1201870,1,3,1,1,2,1,1,2
1202253,1,1,2,1,1,1,1,2
1227081,1,3,2,1,1,1,1,2
1230994,5,8,6,10,10,7,1,4
1238410,1,1,3,1,1,1,1,2
1246562,2,1,2,6,1,1,2,4
1257470,5,8,5,10,8,6,1,4
1259008,9,6,6,3,10,10,1,4
1266124,2,1,2,1,1,1,1,2
1267898,3,1,2,1,1,1,1,2
1268313,1,3,2,1,1,1,1,2
1268804,1,1,2,5,1,1,1,2
1276091,1,3,2,1,1,1,1,2
1280258,1,1,2,1,1,2,1,2
1293966,1,1,2,1,1,1,1,2
1296572,8,7,6,4,7,10,3,4
1298416,6,2,4,10,9,7,1,4
1299596,6,5,4,10,7,6,2,4
1105524,1,1,2,1,1,1,1,2
1181685,2,1,2,1,2,1,1,2
1211594,1,1,1,1,2,1,1,2
1238777,1,3,2,1,1,1,1,2
1257608,1,1,1,1,1,1,1,2
1269574,1,1,2,1,1,1,1,2
1277145,1,1,2,1,1,1,1,2
1287282,1,1,2,1,1,1,1,2
1296025,2,1,2,1,1,1,1,2
1296263,1,1,2,1,1,1,1,2
1296593,1,1,2,1,1,1,1,2
1299161,7,10,4,10,7,5,1,4
1301945,1,1,1,1,1,1,1,2
1302428,2,4,2,1,1,1,1,2
1318169,10,10,10,5,10,10,10,4
474162,8,5,5,10,9,10,1,4
787451,2,1,2,1,1,1,1,2
1002025,1,3,1,3,1,1,1,2
1070522,1,1,1,1,2,1,1,2
1073960,10,10,6,10,8,1,5,4
1076352,4,10,3,3,3,4,1,4
1084139,2,1,3,4,4,1,1,4
1115293,1,1,2,1,1,1,1,2
1119189,9,4,3,10,7,1,1,4
1133991,1,1,1,1,2,1,1,2
1142706,10,10,6,10,6,5,2,4
1155967,2,10,4,5,2,1,1,2
1170945,1,1,1,1,2,1,1,2
1181567,1,1,1,1,1,1,1,2
1182404,1,1,2,1,1,1,1,2
1204558,1,1,2,1,2,1,1,2
1217952,1,1,2,1,2,1,1,2
1224565,1,1,2,1,3,1,1,2
1238186,1,1,2,1,2,1,1,2
1253917,1,2,2,1,2,1,1,2
1265899,1,1,2,1,3,1,1,2
1268766,1,1,2,1,1,1,1,2
1277268,1,1,2,1,1,1,1,2
1286943,10,10,7,5,4,8,7,4
1295508,1,1,2,4,1,1,1,2
1297327,1,1,2,1,1,1,1,2
1297522,1,1,2,1,1,1,1,2
1298360,1,1,2,1,1,1,1,2
1299924,1,1,2,1,2,1,1,2
1299994,1,1,2,1,1,1,1,2
1304595,1,1,1,1,2,1,1,2
1306282,7,10,3,10,8,10,2,4
1313325,4,7,3,10,9,10,1,4
1320077,1,1,1,1,1,1,1,2
1320077,1,1,1,1,2,1,1,2
1320304,2,2,2,1,1,1,1,2
1330439,8,3,4,10,9,1,1,4
333093,1,1,3,1,1,1,1,2
369565,1,1,3,1,1,1,1,2
412300,5,4,3,5,7,3,1,4
672113,6,10,4,10,5,3,1,4
749653,1,1,2,1,2,1,1,2
769612,1,2,2,1,1,1,1,2
769612,1,1,2,1,1,1,1,2
798429,1,1,2,1,3,1,1,2
807657,3,2,2,1,1,1,1,2
8233704,1,1,1,1,2,1,1,2
837480,4,3,4,10,6,9,1,4
867392,2,1,2,1,2,1,1,2
869828,1,1,1,1,3,1,1,2
1043068,1,1,2,1,2,1,1,2
1056171,1,1,2,1,2,1,1,2
1061990,3,2,2,1,3,1,1,2
1113061,1,1,2,1,3,1,1,2
1116192,2,1,2,1,3,1,1,2
1135090,1,1,2,1,2,1,1,2
1145420,1,1,2,1,2,1,1,2
1158157,1,1,2,2,2,1,1,2
1171578,1,1,2,1,1,1,1,2
1174841,1,1,2,1,1,1,1,2
1184586,1,1,2,1,2,1,1,2
1186936,3,2,2,1,2,1,1,2
1197527,1,1,2,1,2,1,1,2
1222464,10,10,4,10,7,10,1,4
1240603,1,1,1,1,1,1,1,2
1240603,1,1,1,1,1,1,1,2
1241035,3,7,4,5,7,8,2,4
1287971,1,1,2,1,2,1,1,2
1289391,1,1,2,1,3,1,1,2
1299924,2,2,2,1,4,2,1,2
1306339,2,1,2,5,2,1,2,2
1313658,1,1,2,1,1,1,1,2
1313982,1,1,2,1,4,8,1,2
1321264,2,2,1,1,2,1,1,2
1321321,1,3,2,1,1,1,1,2
1321348,1,1,2,1,2,1,1,2
1321931,1,1,2,1,2,1,1,2
1321942,1,1,2,1,3,1,1,2
1321942,1,1,2,1,3,1,1,2
1328331,1,1,2,1,3,1,1,2
1328755,1,1,2,1,2,1,1,2
1331405,1,1,2,1,3,2,1,2
1331412,10,10,5,10,10,10,1,4
1333104,2,1,2,1,3,1,1,2
1334071,1,1,2,3,2,1,1,2
1343068,4,1,6,10,2,5,2,4
1343374,8,10,6,5,10,3,1,4
1344121,4,4,8,10,8,2,1,4
142932,10,5,3,10,9,10,2,4
183936,1,1,2,1,2,1,1,2
324382,1,1,2,1,2,1,1,2
378275,7,3,4,2,7,7,1,4
385103,2,1,2,1,3,1,1,2
690557,1,1,2,1,2,1,1,2
695091,1,1,2,1,2,1,1,2
695219,1,1,2,1,2,1,1,2
824249,1,1,2,1,3,1,1,2
871549,2,1,2,1,2,1,1,2
878358,10,6,5,10,7,5,1,4
1107684,5,5,4,10,6,10,1,4
1115762,1,1,2,1,1,1,1,2
1217717,1,6,3,1,1,1,1,2
1239420,1,1,2,1,1,1,1,2
1254538,10,10,6,10,10,10,1,4
1261751,1,1,2,1,2,2,1,2
1268275,8,9,6,3,4,1,1,4
1272166,1,1,2,1,1,1,1,2
1294261,8,5,4,1,10,1,1,4
1295529,7,6,4,10,7,6,1,4
1298484,4,5,3,10,4,1,1,4
1311875,2,1,2,1,1,1,1,2
1315506,6,3,4,10,7,1,1,4
1320141,1,1,2,1,2,1,1,2
1325309,2,1,2,1,2,1,1,2
1333063,3,1,2,1,3,1,1,2
1333495,1,1,2,1,2,1,1,2
1334659,4,1,1,1,1,1,1,2
1336798,1,1,2,1,2,1,1,2
1344449,1,1,1,1,2,1,1,2
1350568,1,1,2,1,2,1,1,2
1352663,6,8,4,1,8,10,1,4
188336,2,8,5,10,8,1,2,4
352431,10,3,5,8,7,8,3,4
353098,1,2,2,1,1,1,1,2
411453,1,1,2,1,1,1,1,2
557583,10,10,10,10,10,1,1,4
636375,1,1,2,1,1,1,1,2
736150,3,10,3,10,7,1,2,4
803531,10,10,5,2,8,5,1,4
822829,10,10,6,10,10,10,10,4
1016634,1,1,2,1,2,1,1,2
1031608,1,1,1,1,2,1,1,2
1041043,3,1,2,1,2,1,1,2
1042252,1,1,2,1,2,1,1,2
1057067,1,1,1,1,1,1,1,2
1061990,1,1,2,1,2,1,1,2
1073836,1,1,2,1,2,1,1,2
1083817,1,1,2,1,2,1,1,2
1096352,3,3,3,2,6,1,1,2
1140597,2,3,2,1,2,1,1,2
1149548,1,1,2,1,1,1,1,2
1174009,1,2,1,1,2,1,1,2
1183596,3,1,3,4,1,1,1,2
1190386,6,5,7,6,7,7,3,4
1190546,1,1,2,5,1,1,1,2
1213273,1,1,2,1,1,1,1,2
1218982,1,1,2,1,1,1,1,2
1225382,3,1,2,1,1,1,1,2
1235807,1,1,2,1,2,1,1,2
1238777,1,1,2,1,1,1,1,2
1253955,4,4,5,3,5,10,1,4
1257366,1,1,2,1,1,1,1,2
1260659,4,1,2,1,1,1,1,2
1268952,7,8,7,1,10,10,3,4
1275807,4,3,2,2,2,1,1,2
1277792,1,1,2,1,1,1,1,2
1277792,1,3,2,1,1,1,1,2
1285722,1,3,2,1,1,1,1,2
1288608,1,1,2,1,2,1,1,2
1290203,1,1,2,1,2,1,1,2
1294413,1,1,2,1,1,1,1,2
1299596,1,1,2,1,1,1,1,2
1303489,1,1,2,1,2,1,1,2
1311033,2,1,2,1,1,1,1,2
1311108,1,3,2,1,1,1,1,2
Sample code number,Clump Thickness,Uniformity of Cell Size,Uniformity of Cell Shape,Marginal Adhesion,Single Epithelial Cell Size,Bare Nuclei,Bland Chromatin,Normal Nucleoli,Mitoses,Class
1315807,5,10,10,10,10,2,10,10,10,4
1318671,3,1,1,1,2,1,2,1,1,2
1319609,3,1,1,2,3,4,1,1,1,2
1323477,1,2,1,3,2,1,2,1,1,2
1324572,5,1,1,1,2,1,2,2,1,2
1324681,4,1,1,1,2,1,2,1,1,2
1325159,3,1,1,1,2,1,3,1,1,2
1326892,3,1,1,1,2,1,2,1,1,2
1330361,5,1,1,1,2,1,2,1,1,2
1333877,5,4,5,1,8,1,3,6,1,2
1334015,7,8,8,7,3,10,7,2,3,4
1334667,1,1,1,1,2,1,1,1,1,2
1339781,1,1,1,1,2,1,2,1,1,2
1339781,4,1,1,1,2,1,3,1,1,2
13454352,1,1,3,1,2,1,2,1,1,2
1345452,1,1,3,1,2,1,2,1,1,2
1345593,3,1,1,3,2,1,2,1,1,2
1347749,1,1,1,1,2,1,1,1,1,2
1347943,5,2,2,2,2,1,1,1,2,2
1348851,3,1,1,1,2,1,3,1,1,2
1350319,5,7,4,1,6,1,7,10,3,4
1350423,5,10,10,8,5,5,7,10,1,4
1352848,3,10,7,8,5,8,7,4,1,4
1353092,3,2,1,2,2,1,3,1,1,2
1354840,2,1,1,1,2,1,3,1,1,2
1354840,5,3,2,1,3,1,1,1,1,2
1355260,1,1,1,1,2,1,2,1,1,2
1365075,4,1,4,1,2,1,1,1,1,2
1365328,1,1,2,1,2,1,2,1,1,2
1368267,5,1,1,1,2,1,1,1,1,2
1368273,1,1,1,1,2,1,1,1,1,2
1368882,2,1,1,1,2,1,1,1,1,2
1369821,10,10,10,10,5,10,10,10,7,4
1371026,5,10,10,10,4,10,5,6,3,4
1371920,5,1,1,1,2,1,3,2,1,2
466906,1,1,1,1,2,1,1,1,1,2
466906,1,1,1,1,2,1,1,1,1,2
534555,1,1,1,1,2,1,1,1,1,2
536708,1,1,1,1,2,1,1,1,1,2
566346,3,1,1,1,2,1,2,3,1,2
603148,4,1,1,1,2,1,1,1,1,2
654546,1,1,1,1,2,1,1,1,8,2
654546,1,1,1,3,2,1,1,1,1,2
695091,5,10,10,5,4,5,4,4,1,4
714039,3,1,1,1,2,1,1,1,1,2
763235,3,1,1,1,2,1,2,1,2,2
776715,3,1,1,1,3,2,1,1,1,2
841769,2,1,1,1,2,1,1,1,1,2
888820,5,10,10,3,7,3,8,10,2,4
897471,4,8,6,4,3,4,10,6,1,4
897471,4,8,8,5,4,5,10,4,1,4
x_0,x_1,x_2,x_3,x_4,x_5,x_6,x_7,x_8,x_9,x_10,y 5.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
6.8,0.915,0.29,4.8,0.07,15.0,39.0,0.99577,3.53,0.54,11.1,0 5.0,4.0,4.0,5.0,7.0,10.0,3.0,2.0,1.0,0
7.1,0.67,0.0,2.3,0.083,18.0,27.0,0.9976799999999999,3.44,0.54,9.4,0 3.0,1.0,1.0,1.0,2.0,2.0,3.0,1.0,1.0,0
8.2,0.34,0.38,2.5,0.08,12.0,57.0,0.9978,3.3,0.47,9.0,1 6.0,8.0,8.0,1.0,3.0,4.0,3.0,7.0,1.0,0
7.4,0.35,0.33,2.4,0.068,9.0,26.0,0.9947,3.36,0.6,11.9,1 4.0,1.0,1.0,3.0,2.0,1.0,3.0,1.0,1.0,0
12.2,0.45,0.49,1.4,0.075,3.0,6.0,0.9969,3.13,0.63,10.4,0 8.0,10.0,10.0,8.0,7.0,10.0,9.0,7.0,1.0,1
10.7,0.43,0.39,2.2,0.106,8.0,32.0,0.9986,2.89,0.5,9.6,0 1.0,1.0,1.0,1.0,2.0,10.0,3.0,1.0,1.0,0
9.0,0.66,0.17,3.0,0.077,5.0,13.0,0.9976,3.29,0.55,10.4,0 2.0,1.0,2.0,1.0,2.0,1.0,3.0,1.0,1.0,0
7.6,0.715,0.0,2.1,0.068,30.0,35.0,0.9953299999999999,3.48,0.65,11.4,1 2.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,5.0,0
7.1,0.43,0.17,1.8,0.08199999999999999,27.0,51.0,0.99634,3.49,0.64,10.4,0 4.0,2.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
8.8,0.59,0.18,2.9,0.08900000000000001,12.0,74.0,0.9973799999999999,3.14,0.54,9.4,0 1.0,1.0,1.0,1.0,1.0,1.0,3.0,1.0,1.0,0
9.9,0.57,0.25,2.0,0.10400000000000001,12.0,89.0,0.9963,3.04,0.9,10.1,0 2.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.6,0.5,0.01,1.5,0.06,17.0,26.0,0.9952,3.4,0.58,9.8,1 5.0,3.0,3.0,3.0,2.0,3.0,4.0,4.0,1.0,1
8.4,0.36,0.32,2.2,0.081,32.0,79.0,0.9964,3.3,0.72,11.0,1 1.0,1.0,1.0,1.0,2.0,3.0,3.0,1.0,1.0,0
8.6,0.8,0.11,2.3,0.084,12.0,31.0,0.9979,3.4,0.48,9.9,0 8.0,7.0,5.0,10.0,7.0,9.0,5.0,5.0,4.0,1
7.8,0.56,0.19,2.0,0.081,17.0,108.0,0.9962,3.32,0.54,9.5,0 7.0,4.0,6.0,4.0,6.0,1.0,4.0,3.0,1.0,1
7.6,0.43,0.29,2.1,0.075,19.0,66.0,0.99718,3.4,0.64,9.5,0 4.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.8,0.81,0.05,2.0,0.07,6.0,14.0,0.9956200000000001,3.51,0.66,10.8,1 4.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
11.1,0.35,0.48,3.1,0.09,5.0,21.0,0.9986,3.17,0.53,10.5,0 10.0,7.0,7.0,6.0,4.0,10.0,4.0,1.0,2.0,1
7.9,0.54,0.34,2.5,0.076,8.0,17.0,0.99235,3.2,0.72,13.1,1 6.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
12.6,0.31,0.72,2.2,0.07200000000000001,6.0,29.0,0.9987,2.88,0.82,9.8,1 7.0,3.0,2.0,10.0,5.0,10.0,5.0,4.0,4.0,1
8.9,0.4,0.32,5.6,0.087,10.0,47.0,0.9991,3.38,0.77,10.5,1 10.0,5.0,5.0,3.0,6.0,7.0,7.0,10.0,1.0,1
7.6,0.51,0.24,2.4,0.091,8.0,38.0,0.998,3.47,0.66,9.6,1 3.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
8.3,0.58,0.13,2.9,0.096,14.0,63.0,0.9984,3.17,0.62,9.1,1 8.0,4.0,5.0,1.0,2.0,1.0,7.0,3.0,1.0,1
7.7,0.58,0.1,1.8,0.102,28.0,109.0,0.99565,3.08,0.49,9.8,1 1.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
7.7,0.965,0.1,2.1,0.11199999999999999,11.0,22.0,0.9963,3.26,0.5,9.5,0 5.0,2.0,3.0,4.0,2.0,7.0,3.0,6.0,1.0,1
7.9,0.72,0.01,1.9,0.076,7.0,32.0,0.9966799999999999,3.39,0.54,9.6,0 3.0,2.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,0
8.1,0.825,0.24,2.1,0.084,5.0,13.0,0.9972,3.37,0.77,10.7,1 5.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
5.6,0.54,0.04,1.7,0.049,5.0,13.0,0.9942,3.72,0.58,11.4,0 2.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.9,0.54,0.04,3.0,0.077,7.0,27.0,0.9987,3.69,0.91,9.4,1 1.0,1.0,3.0,1.0,2.0,1.0,1.0,1.0,1.0,0
10.0,0.49,0.2,11.0,0.071,13.0,50.0,1.0015,3.16,0.69,9.2,1 3.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,0
9.8,0.5,0.49,2.6,0.25,5.0,20.0,0.9990000000000001,3.31,0.79,10.7,1 2.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
8.1,0.56,0.28,1.7,0.368,16.0,56.0,0.9968,3.11,1.28,9.3,0 10.0,7.0,7.0,3.0,8.0,5.0,7.0,4.0,3.0,1
6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,1 2.0,1.0,1.0,2.0,2.0,1.0,3.0,1.0,1.0,0
6.6,0.895,0.04,2.3,0.068,7.0,13.0,0.99582,3.53,0.58,10.8,1 3.0,1.0,2.0,1.0,2.0,1.0,2.0,1.0,1.0,0
9.9,0.32,0.56,2.0,0.073,3.0,8.0,0.99534,3.15,0.73,11.4,1 2.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.8,0.65,0.02,2.1,0.078,8.0,15.0,0.99498,3.35,0.62,10.4,1 10.0,10.0,10.0,8.0,6.0,1.0,8.0,9.0,1.0,1
8.8,0.61,0.14,2.4,0.067,10.0,42.0,0.9969,3.19,0.59,9.5,0 6.0,2.0,1.0,1.0,1.0,1.0,7.0,1.0,1.0,0
6.7,0.54,0.13,2.0,0.076,15.0,36.0,0.9973,3.61,0.64,9.8,0 5.0,4.0,4.0,9.0,2.0,10.0,5.0,6.0,1.0,1
6.9,0.45,0.11,2.4,0.043,6.0,12.0,0.99354,3.3,0.65,11.4,1 2.0,5.0,3.0,3.0,6.0,7.0,7.0,5.0,1.0,1
8.5,0.47,0.27,1.9,0.057999999999999996,18.0,38.0,0.99518,3.16,0.85,11.1,1 5.0,3.0,5.0,5.0,3.0,3.0,4.0,10.0,1.0,1
8.6,0.635,0.68,1.8,0.40299999999999997,19.0,56.0,0.9963200000000001,3.02,1.15,9.3,0 \ No newline at end of file
7.1,0.755,0.15,1.8,0.107,20.0,84.0,0.99593,3.19,0.5,9.5,0
9.1,0.25,0.34,2.0,0.071,45.0,67.0,0.99769,3.44,0.86,10.2,1
8.2,0.57,0.26,2.2,0.06,28.0,65.0,0.9959,3.3,0.43,10.1,0
7.7,0.67,0.23,2.1,0.08800000000000001,17.0,96.0,0.9962,3.32,0.48,9.5,0
7.2,0.38,0.31,2.0,0.055999999999999994,15.0,29.0,0.99472,3.23,0.76,11.3,1
10.0,0.58,0.22,1.9,0.08,9.0,32.0,0.9974,3.13,0.55,9.5,0
6.5,0.615,0.0,1.9,0.065,9.0,18.0,0.9972,3.46,0.65,9.2,0
10.4,0.28,0.54,2.7,0.105,5.0,19.0,0.9988,3.25,0.63,9.5,0
8.3,0.31,0.39,2.4,0.078,17.0,43.0,0.99444,3.31,0.77,12.5,1
6.5,0.52,0.11,1.8,0.073,13.0,38.0,0.9955,3.34,0.52,9.3,0
7.2,0.65,0.02,2.3,0.094,5.0,31.0,0.9993,3.67,0.8,9.7,0
10.8,0.32,0.44,1.6,0.063,16.0,37.0,0.9985,3.22,0.78,10.0,1
8.9,0.43,0.45,1.9,0.052000000000000005,6.0,16.0,0.9948,3.35,0.7,12.5,1
6.6,0.52,0.08,2.4,0.07,13.0,26.0,0.9935799999999999,3.4,0.72,12.5,1
9.4,0.685,0.26,2.4,0.08199999999999999,23.0,143.0,0.9978,3.28,0.55,9.4,0
6.8,0.41,0.31,8.8,0.084,26.0,45.0,0.99824,3.38,0.64,10.1,1
6.7,0.76,0.02,1.8,0.078,6.0,12.0,0.996,3.55,0.63,9.95,0
5.3,0.57,0.01,1.7,0.054000000000000006,5.0,27.0,0.9934,3.57,0.84,12.5,1
11.9,0.37,0.69,2.3,0.078,12.0,24.0,0.9958,3.0,0.65,12.8,1
8.6,0.33,0.4,2.6,0.083,16.0,68.0,0.99782,3.3,0.48,9.4,0
8.0,0.28,0.44,1.8,0.081,28.0,68.0,0.9950100000000001,3.36,0.66,11.2,0
7.2,0.34,0.32,2.5,0.09,43.0,113.0,0.9966,3.32,0.79,11.1,0
7.4,0.66,0.0,1.8,0.075,13.0,40.0,0.9978,3.51,0.56,9.4,0
9.1,0.34,0.42,1.8,0.057999999999999996,9.0,18.0,0.99392,3.18,0.55,11.4,0
6.1,0.64,0.02,2.4,0.069,26.0,46.0,0.9935799999999999,3.47,0.45,11.0,0
8.1,1.33,0.0,1.8,0.08199999999999999,3.0,12.0,0.9964,3.54,0.48,10.9,0
12.7,0.59,0.45,2.3,0.08199999999999999,11.0,22.0,1.0,3.0,0.7,9.3,1
11.2,0.66,0.24,2.5,0.085,16.0,53.0,0.9993,3.06,0.72,11.0,1
8.7,0.63,0.28,2.7,0.096,17.0,69.0,0.99734,3.26,0.63,10.2,1
7.8,0.34,0.37,2.0,0.08199999999999999,24.0,58.0,0.9964,3.34,0.59,9.4,1
7.0,0.69,0.07,2.5,0.091,15.0,21.0,0.99572,3.38,0.6,11.3,1
11.5,0.45,0.5,3.0,0.078,19.0,47.0,1.0003,3.26,1.11,11.0,1
9.2,0.755,0.18,2.2,0.14800000000000002,10.0,103.0,0.9969,2.87,1.36,10.2,1
7.6,0.31,0.34,2.5,0.08199999999999999,26.0,35.0,0.99356,3.22,0.59,12.5,1
8.5,0.34,0.4,4.7,0.055,3.0,9.0,0.9973799999999999,3.38,0.66,11.6,1
8.6,0.55,0.09,3.3,0.068,8.0,17.0,0.99735,3.23,0.44,10.0,0
6.0,0.5,0.04,2.2,0.092,13.0,26.0,0.9964700000000001,3.46,0.47,10.0,0
7.8,0.58,0.13,2.1,0.102,17.0,36.0,0.9944,3.24,0.53,11.2,1
8.8,0.955,0.05,1.8,0.075,5.0,19.0,0.99616,3.3,0.44,9.6,0
7.2,0.58,0.54,2.1,0.114,3.0,9.0,0.9971899999999999,3.33,0.57,10.3,0
8.0,0.67,0.3,2.0,0.06,38.0,62.0,0.9958,3.26,0.56,10.2,1
7.2,1.0,0.0,3.0,0.102,7.0,16.0,0.9958600000000001,3.43,0.46,10.0,0
7.3,0.67,0.02,2.2,0.07200000000000001,31.0,92.0,0.99566,3.32,0.68,11.1,1
7.1,0.43,0.42,5.5,0.071,28.0,128.0,0.9973,3.42,0.71,10.5,0
12.5,0.37,0.55,2.6,0.083,25.0,68.0,0.9995,3.15,0.82,10.4,1
6.9,0.54,0.04,3.0,0.077,7.0,27.0,0.9987,3.69,0.91,9.4,1
6.2,0.63,0.31,1.7,0.08800000000000001,15.0,64.0,0.9969,3.46,0.79,9.3,0
6.7,0.56,0.09,2.9,0.079,7.0,22.0,0.99669,3.46,0.61,10.2,0
11.7,0.45,0.63,2.2,0.073,7.0,23.0,0.99974,3.21,0.69,10.9,1
7.0,0.43,0.3,2.0,0.085,6.0,39.0,0.99346,3.33,0.46,11.9,1
7.6,0.39,0.31,2.3,0.08199999999999999,23.0,71.0,0.9982,3.52,0.65,9.7,0
7.6,0.68,0.02,1.3,0.07200000000000001,9.0,20.0,0.9965,3.17,1.08,9.2,0
7.2,0.53,0.13,2.0,0.057999999999999996,18.0,22.0,0.9957299999999999,3.21,0.68,9.9,1
12.8,0.3,0.74,2.6,0.095,9.0,28.0,0.9994,3.2,0.77,10.8,1
11.3,0.34,0.45,2.0,0.08199999999999999,6.0,15.0,0.9988,2.94,0.66,9.2,1
9.1,0.22,0.24,2.1,0.078,1.0,28.0,0.9990000000000001,3.41,0.87,10.3,1
6.8,0.64,0.0,2.7,0.12300000000000001,15.0,33.0,0.9953799999999999,3.44,0.63,11.3,1
13.0,0.32,0.65,2.6,0.09300000000000001,15.0,47.0,0.9996,3.05,0.61,10.6,0
9.9,0.5,0.24,2.3,0.10300000000000001,6.0,14.0,0.9978,3.34,0.52,10.0,0
9.3,0.655,0.26,2.0,0.096,5.0,35.0,0.9973799999999999,3.25,0.42,9.6,0
8.9,0.635,0.37,1.7,0.263,5.0,62.0,0.9971,3.0,1.09,9.3,0
6.7,0.32,0.44,2.4,0.061,24.0,34.0,0.99484,3.29,0.8,11.6,1
8.2,0.2,0.43,2.5,0.076,31.0,51.0,0.99672,3.53,0.81,10.4,1
8.9,0.29,0.35,1.9,0.067,25.0,57.0,0.997,3.18,1.36,10.3,1
10.4,0.38,0.46,2.1,0.10400000000000001,6.0,10.0,0.99664,3.12,0.65,11.8,1
x_0,x_1,x_2,x_3,x_4,x_5,x_6,x_7,x_8,x_9,x_10,y 9.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,1.0,1
12.7,0.6,0.65,2.3,0.063,6.0,25.0,0.9997,3.03,0.57,9.9,0 5.0,3.0,6.0,1.0,2.0,1.0,1.0,1.0,1.0,0
6.5,0.67,0.0,4.3,0.057,11.0,20.0,0.9948799999999999,3.45,0.56,11.8,0 8.0,7.0,8.0,2.0,4.0,2.0,5.0,10.0,1.0,1
9.2,0.63,0.21,2.7,0.09699999999999999,29.0,65.0,0.9988,3.28,0.58,9.6,0 1.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.1,0.32,0.25,2.3,0.071,23.0,58.0,0.9963299999999999,3.42,0.97,10.6,0 2.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.1,0.38,0.15,1.8,0.07200000000000001,6.0,19.0,0.9955,3.42,0.57,9.4,0 1.0,3.0,1.0,1.0,2.0,1.0,2.0,2.0,1.0,0
8.2,0.4,0.44,2.8,0.08900000000000001,11.0,43.0,0.9975,3.53,0.61,10.5,1 5.0,1.0,1.0,3.0,4.0,1.0,3.0,2.0,1.0,0
9.9,0.72,0.55,1.7,0.136,24.0,52.0,0.9975200000000001,3.35,0.94,10.0,0 5.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.0,0
7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,0 3.0,2.0,2.0,3.0,2.0,1.0,1.0,1.0,1.0,0
8.8,0.66,0.26,1.7,0.07400000000000001,4.0,23.0,0.9971,3.15,0.74,9.2,0 6.0,9.0,7.0,5.0,5.0,8.0,4.0,2.0,1.0,0
10.1,0.31,0.35,1.6,0.075,9.0,28.0,0.99672,3.24,0.83,11.2,1 10.0,8.0,10.0,1.0,3.0,10.0,5.0,1.0,1.0,1
9.9,0.59,0.07,3.4,0.102,32.0,71.0,1.00015,3.31,0.71,9.8,0 10.0,10.0,10.0,1.0,6.0,1.0,2.0,8.0,1.0,1
7.6,0.79,0.21,2.3,0.087,21.0,68.0,0.9955,3.12,0.44,9.2,0 4.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.0,0.69,0.08,1.8,0.09699999999999999,22.0,89.0,0.9959,3.34,0.54,9.2,1 4.0,1.0,3.0,3.0,2.0,1.0,1.0,1.0,1.0,0
12.7,0.6,0.49,2.8,0.075,5.0,19.0,0.9994,3.14,0.57,11.4,0 5.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
5.9,0.29,0.25,13.4,0.067,72.0,160.0,0.99721,3.33,0.54,10.3,1 10.0,4.0,3.0,10.0,4.0,10.0,10.0,1.0,1.0,1
8.2,0.28,0.6,3.0,0.10400000000000001,10.0,22.0,0.99828,3.39,0.68,10.6,0 5.0,2.0,2.0,4.0,2.0,4.0,1.0,1.0,1.0,0
12.4,0.49,0.58,3.0,0.10300000000000001,28.0,99.0,1.0008,3.16,1.0,11.5,1 1.0,1.0,1.0,3.0,2.0,3.0,1.0,1.0,1.0,0
8.1,0.53,0.22,2.2,0.078,33.0,89.0,0.9967799999999999,3.26,0.46,9.6,1 1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,0
7.0,0.55,0.13,2.2,0.075,15.0,35.0,0.9959,3.36,0.59,9.7,1 5.0,1.0,1.0,6.0,3.0,1.0,2.0,1.0,1.0,0
6.4,0.57,0.02,1.8,0.067,4.0,11.0,0.997,3.46,0.68,9.5,0 2.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.5,0.42,0.32,2.7,0.067,7.0,25.0,0.9962799999999999,3.24,0.44,10.4,0 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
9.6,0.33,0.52,2.2,0.07400000000000001,13.0,25.0,0.9950899999999999,3.36,0.76,12.4,1 5.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
6.7,0.46,0.24,1.7,0.077,18.0,34.0,0.9948,3.39,0.6,10.6,1 1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0
10.5,0.36,0.47,2.2,0.07400000000000001,9.0,23.0,0.9963799999999999,3.23,0.76,12.0,1 5.0,7.0,9.0,8.0,6.0,10.0,8.0,10.0,1.0,1
6.6,0.61,0.0,1.6,0.069,4.0,8.0,0.9939600000000001,3.33,0.37,10.4,0 4.0,1.0,1.0,3.0,1.0,1.0,2.0,1.0,1.0,0
7.0,0.59,0.0,1.7,0.052000000000000005,3.0,8.0,0.996,3.41,0.47,10.3,0 5.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
8.7,0.7,0.24,2.5,0.226,5.0,15.0,0.9991,3.32,0.6,9.0,1 3.0,1.0,1.0,3.0,2.0,1.0,1.0,1.0,1.0,0
9.9,0.5,0.5,13.8,0.205,48.0,82.0,1.00242,3.16,0.75,8.8,0 4.0,5.0,5.0,8.0,6.0,10.0,10.0,7.0,1.0,1
7.6,0.735,0.02,2.5,0.071,10.0,14.0,0.9953799999999999,3.51,0.71,11.7,1 2.0,3.0,1.0,1.0,3.0,1.0,1.0,1.0,1.0,0
7.7,0.965,0.1,2.1,0.11199999999999999,11.0,22.0,0.9963,3.26,0.5,9.5,0 10.0,2.0,2.0,1.0,2.0,6.0,1.0,1.0,2.0,1
6.7,0.86,0.07,2.0,0.1,20.0,57.0,0.99598,3.6,0.74,11.7,1 10.0,6.0,5.0,8.0,5.0,10.0,8.0,6.0,1.0,1
7.5,0.27,0.34,2.3,0.05,4.0,8.0,0.9951,3.4,0.64,11.0,1 8.0,8.0,9.0,6.0,6.0,3.0,10.0,10.0,1.0,1
10.0,0.32,0.59,2.2,0.077,3.0,15.0,0.9994,3.2,0.78,9.6,0 5.0,1.0,2.0,1.0,2.0,1.0,1.0,1.0,1.0,0
10.3,0.53,0.48,2.5,0.063,6.0,25.0,0.9998,3.12,0.59,9.3,1 5.0,1.0,3.0,1.0,2.0,1.0,1.0,1.0,1.0,0
10.3,0.5,0.42,2.0,0.069,21.0,51.0,0.9982,3.16,0.72,11.5,1 5.0,1.0,1.0,3.0,2.0,1.0,1.0,1.0,1.0,0
7.6,0.685,0.23,2.3,0.111,20.0,84.0,0.9964,3.21,0.61,9.3,0 3.0,1.0,1.0,1.0,2.0,5.0,1.0,1.0,1.0,0
10.8,0.5,0.46,2.5,0.073,5.0,27.0,1.0001,3.05,0.64,9.5,0 6.0,1.0,1.0,3.0,2.0,1.0,1.0,1.0,1.0,0
9.6,0.5,0.36,2.8,0.11599999999999999,26.0,55.0,0.9972200000000001,3.18,0.68,10.9,0 4.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0
6.9,0.55,0.15,2.2,0.076,19.0,40.0,0.9961,3.41,0.59,10.1,0 4.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.1,0.65,0.18,1.8,0.07,13.0,40.0,0.997,3.44,0.6,9.1,0 10.0,9.0,8.0,7.0,6.0,4.0,7.0,10.0,3.0,1
8.3,0.6,0.13,2.6,0.085,6.0,24.0,0.9984,3.31,0.59,9.2,1 \ No newline at end of file
8.0,0.42,0.17,2.0,0.073,6.0,18.0,0.9972,3.29,0.61,9.2,1
6.7,0.54,0.13,2.0,0.076,15.0,36.0,0.9973,3.61,0.64,9.8,0
7.6,0.43,0.31,2.1,0.069,13.0,74.0,0.9958,3.26,0.54,9.9,1
8.7,0.84,0.0,1.4,0.065,24.0,33.0,0.9954,3.27,0.55,9.7,0
7.6,0.35,0.6,2.6,0.073,23.0,44.0,0.99656,3.38,0.79,11.1,1
9.6,0.54,0.42,2.4,0.081,25.0,52.0,0.997,3.2,0.71,11.4,1
6.9,0.74,0.03,2.3,0.054000000000000006,7.0,16.0,0.99508,3.45,0.63,11.5,1
9.7,0.55,0.17,2.9,0.087,20.0,53.0,1.0004,3.14,0.61,9.4,0
7.0,0.69,0.0,1.9,0.114,3.0,10.0,0.99636,3.35,0.6,9.7,1
6.9,0.41,0.33,2.2,0.081,22.0,36.0,0.9949,3.41,0.75,11.1,1
9.0,0.58,0.25,2.8,0.075,9.0,104.0,0.99779,3.23,0.57,9.7,0
5.6,0.31,0.37,1.4,0.07400000000000001,12.0,96.0,0.9954,3.32,0.58,9.2,0
9.4,0.41,0.48,4.6,0.07200000000000001,10.0,20.0,0.9973,3.34,0.79,12.2,1
10.7,0.46,0.39,2.0,0.061,7.0,15.0,0.9981,3.18,0.62,9.5,0
7.2,0.36,0.46,2.1,0.07400000000000001,24.0,44.0,0.99534,3.4,0.85,11.0,1
10.4,0.24,0.46,1.8,0.075,6.0,21.0,0.9976,3.25,1.02,10.8,1
10.6,0.36,0.59,2.2,0.152,6.0,18.0,0.9986,3.04,1.05,9.4,0
7.8,0.56,0.12,2.0,0.08199999999999999,7.0,28.0,0.997,3.37,0.5,9.4,1
7.8,0.62,0.05,2.3,0.079,6.0,18.0,0.99735,3.29,0.63,9.3,0
7.3,0.69,0.32,2.2,0.069,35.0,104.0,0.9963200000000001,3.33,0.51,9.5,0
6.0,0.42,0.19,2.0,0.075,22.0,47.0,0.9952200000000001,3.39,0.78,10.0,1
8.0,0.71,0.0,2.6,0.08,11.0,34.0,0.9976,3.44,0.53,9.5,0
9.1,0.29,0.33,2.05,0.063,13.0,27.0,0.99516,3.26,0.84,11.7,1
7.1,0.43,0.42,5.5,0.07,29.0,129.0,0.9973,3.42,0.72,10.5,0
7.3,0.32,0.23,2.3,0.066,35.0,70.0,0.9958799999999999,3.43,0.62,10.1,0
10.4,0.26,0.48,1.9,0.066,6.0,10.0,0.99724,3.33,0.87,10.9,1
4.9,0.42,0.0,2.1,0.048,16.0,42.0,0.99154,3.71,0.74,14.0,1
7.2,0.63,0.0,1.9,0.09699999999999999,14.0,38.0,0.99675,3.37,0.58,9.0,1
7.5,0.58,0.56,3.1,0.153,5.0,14.0,0.9947600000000001,3.21,1.03,11.6,1
7.3,0.34,0.33,2.5,0.064,21.0,37.0,0.9952,3.35,0.77,12.1,1
7.7,0.26,0.26,2.0,0.052000000000000005,19.0,77.0,0.9951,3.15,0.79,10.9,1
13.5,0.53,0.79,4.8,0.12,23.0,77.0,1.0018,3.18,0.77,13.0,0
10.0,0.26,0.54,1.9,0.083,42.0,74.0,0.99451,2.98,0.63,11.8,1
7.6,0.78,0.0,1.7,0.076,33.0,45.0,0.9961200000000001,3.31,0.62,10.7,1
9.1,0.4,0.5,1.8,0.071,7.0,16.0,0.9946200000000001,3.21,0.69,12.5,1
7.7,0.51,0.28,2.1,0.087,23.0,54.0,0.998,3.42,0.74,9.2,0
6.9,0.765,0.18,2.4,0.243,5.5,48.0,0.9961200000000001,3.4,0.6,10.3,1
7.4,0.61,0.01,2.0,0.07400000000000001,13.0,38.0,0.9974799999999999,3.48,0.65,9.8,0
8.9,0.595,0.41,7.9,0.086,30.0,109.0,0.9998,3.27,0.57,9.3,0
6.6,0.84,0.03,2.3,0.059000000000000004,32.0,48.0,0.9952,3.52,0.56,12.3,1
7.6,0.42,0.08,2.7,0.084,15.0,48.0,0.9968,3.21,0.59,10.0,0
7.1,0.62,0.06,1.3,0.07,5.0,12.0,0.9942,3.17,0.48,9.8,0
7.0,0.36,0.21,2.3,0.086,20.0,65.0,0.9955799999999999,3.4,0.54,10.1,1
7.0,0.5,0.25,2.0,0.07,3.0,22.0,0.9963,3.25,0.63,9.2,0
6.1,0.48,0.09,1.7,0.078,18.0,30.0,0.9940200000000001,3.45,0.54,11.2,1
10.4,0.26,0.48,1.9,0.066,6.0,10.0,0.99724,3.33,0.87,10.9,1
8.0,0.5,0.39,2.6,0.08199999999999999,12.0,46.0,0.9985,3.43,0.62,10.7,1
7.9,0.52,0.26,1.9,0.079,42.0,140.0,0.9964,3.23,0.54,9.5,0
9.1,0.66,0.15,3.2,0.09699999999999999,9.0,59.0,0.99976,3.28,0.54,9.6,0
9.0,0.38,0.41,2.4,0.10300000000000001,6.0,10.0,0.9960399999999999,3.13,0.58,11.9,1
9.2,0.46,0.23,2.6,0.091,18.0,77.0,0.9992200000000001,3.15,0.51,9.4,0
9.3,0.43,0.44,1.9,0.085,9.0,22.0,0.99708,3.28,0.55,9.5,0
7.7,0.915,0.12,2.2,0.14300000000000002,7.0,23.0,0.9964,3.35,0.65,10.2,1
7.6,0.49,0.26,1.6,0.23600000000000002,10.0,88.0,0.9968,3.11,0.8,9.3,0
7.5,0.52,0.4,2.2,0.06,12.0,20.0,0.99474,3.26,0.64,11.8,1
7.4,0.59,0.08,4.4,0.086,6.0,29.0,0.9974,3.38,0.5,9.0,0
7.8,0.87,0.26,3.8,0.107,31.0,67.0,0.9966799999999999,3.26,0.46,9.2,0
7.8,0.52,0.25,1.9,0.081,14.0,38.0,0.9984,3.43,0.65,9.0,1
7.2,0.41,0.3,2.1,0.083,35.0,72.0,0.997,3.44,0.52,9.4,0
7.0,0.22,0.3,1.8,0.065,16.0,20.0,0.99672,3.61,0.82,10.0,1
5.2,0.645,0.0,2.15,0.08,15.0,28.0,0.99444,3.78,0.61,12.5,1
8.8,0.61,0.3,2.8,0.08800000000000001,17.0,46.0,0.9976,3.26,0.51,9.3,0
7.7,1.005,0.15,2.1,0.102,11.0,32.0,0.9960399999999999,3.23,0.48,10.0,0
6.8,0.62,0.08,1.9,0.068,28.0,38.0,0.99651,3.42,0.82,9.5,1
7.3,0.98,0.05,2.1,0.061,20.0,49.0,0.99705,3.31,0.55,9.7,0
x_0,x_1,x_2,x_3,x_4,x_5,x_6,x_7,x_8,x_9,x_10,y 7.0,8.0,8.0,7.0,3.0,10.0,7.0,2.0,3.0,1
6.8,0.56,0.22,1.8,0.07400000000000001,15.0,24.0,0.9943799999999999,3.4,0.82,11.2,1 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
12.5,0.6,0.49,4.3,0.1,5.0,14.0,1.001,3.25,0.74,11.9,1 1.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
8.0,0.62,0.33,2.7,0.08800000000000001,16.0,37.0,0.9972,3.31,0.58,10.7,1 4.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
7.5,0.57,0.02,2.6,0.077,11.0,35.0,0.9955700000000001,3.36,0.62,10.8,1 1.0,1.0,3.0,1.0,2.0,1.0,2.0,1.0,1.0,0
10.4,0.41,0.55,3.2,0.076,22.0,54.0,0.9996,3.15,0.89,9.9,1 1.0,1.0,3.0,1.0,2.0,1.0,2.0,1.0,1.0,0
5.1,0.585,0.0,1.7,0.044000000000000004,14.0,86.0,0.99264,3.56,0.94,12.9,1 3.0,1.0,1.0,3.0,2.0,1.0,2.0,1.0,1.0,0
7.9,0.51,0.25,2.9,0.077,21.0,45.0,0.9974,3.49,0.96,12.1,1 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.1,0.59,0.0,2.2,0.078,26.0,44.0,0.9952200000000001,3.42,0.68,10.8,1 5.0,2.0,2.0,2.0,2.0,1.0,1.0,1.0,2.0,0
8.6,0.45,0.31,2.6,0.086,21.0,50.0,0.9982,3.37,0.91,9.9,1 3.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
9.9,0.5,0.5,13.8,0.205,48.0,82.0,1.00242,3.16,0.75,8.8,0 5.0,7.0,4.0,1.0,6.0,1.0,7.0,10.0,3.0,1
7.9,0.5,0.33,2.0,0.084,15.0,143.0,0.9968,3.2,0.55,9.5,0 5.0,10.0,10.0,8.0,5.0,5.0,7.0,10.0,1.0,1
10.3,0.44,0.5,4.5,0.107,5.0,13.0,0.998,3.28,0.83,11.5,0 3.0,10.0,7.0,8.0,5.0,8.0,7.0,4.0,1.0,1
8.1,0.87,0.0,3.3,0.096,26.0,61.0,1.00025,3.6,0.72,9.8,0 3.0,2.0,1.0,2.0,2.0,1.0,3.0,1.0,1.0,0
10.9,0.37,0.58,4.0,0.071,17.0,65.0,0.99935,3.22,0.78,10.1,0 2.0,1.0,1.0,1.0,2.0,1.0,3.0,1.0,1.0,0
8.0,0.25,0.43,1.7,0.067,22.0,50.0,0.9946,3.38,0.6,11.9,1 5.0,3.0,2.0,1.0,3.0,1.0,1.0,1.0,1.0,0
8.2,0.31,0.4,2.2,0.057999999999999996,6.0,10.0,0.99536,3.31,0.68,11.2,1 1.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,1.0,0
7.2,0.49,0.24,2.2,0.07,5.0,36.0,0.996,3.33,0.48,9.4,0 4.0,1.0,4.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.3,0.59,0.26,7.2,0.07,35.0,121.0,0.9981,3.37,0.49,9.4,0 1.0,1.0,2.0,1.0,2.0,1.0,2.0,1.0,1.0,0
6.6,0.58,0.02,2.4,0.069,19.0,40.0,0.99387,3.38,0.66,12.6,1 5.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
10.1,0.935,0.22,3.4,0.105,11.0,86.0,1.001,3.43,0.64,11.3,0 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
13.7,0.415,0.68,2.9,0.085,17.0,43.0,1.0014,3.06,0.8,10.0,1 2.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
8.1,0.66,0.7,2.2,0.098,25.0,129.0,0.9972,3.08,0.53,9.0,0 10.0,10.0,10.0,10.0,5.0,10.0,10.0,10.0,7.0,1
9.3,0.27,0.41,2.0,0.091,6.0,16.0,0.998,3.28,0.7,9.7,0 5.0,10.0,10.0,10.0,4.0,10.0,5.0,6.0,3.0,1
8.3,0.61,0.3,2.1,0.084,11.0,50.0,0.9972,3.4,0.61,10.2,1 5.0,1.0,1.0,1.0,2.0,1.0,3.0,2.0,1.0,0
7.4,0.55,0.19,1.8,0.08199999999999999,15.0,34.0,0.99655,3.49,0.68,10.5,0 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
11.6,0.32,0.55,2.8,0.081,35.0,67.0,1.0002,3.32,0.92,10.8,1 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
8.9,0.4,0.32,5.6,0.087,10.0,47.0,0.9991,3.38,0.77,10.5,1 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
8.8,0.42,0.21,2.5,0.092,33.0,88.0,0.99823,3.19,0.52,9.2,0 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
7.9,0.49,0.32,1.9,0.08199999999999999,17.0,144.0,0.9968,3.2,0.55,9.5,0 3.0,1.0,1.0,1.0,2.0,1.0,2.0,3.0,1.0,0
8.2,0.38,0.32,2.5,0.08,24.0,71.0,0.99624,3.27,0.85,11.0,1 4.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
5.0,0.38,0.01,1.6,0.048,26.0,60.0,0.9908399999999999,3.7,0.75,14.0,1 1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,8.0,0
7.3,0.38,0.21,2.0,0.08,7.0,35.0,0.9961,3.33,0.47,9.5,0 1.0,1.0,1.0,3.0,2.0,1.0,1.0,1.0,1.0,0
9.0,0.8,0.12,2.4,0.083,8.0,28.0,0.99836,3.33,0.65,10.4,1 5.0,10.0,10.0,5.0,4.0,5.0,4.0,4.0,1.0,1
7.0,0.43,0.02,1.9,0.08,15.0,28.0,0.99492,3.35,0.81,10.6,1 3.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
8.3,0.42,0.38,2.5,0.094,24.0,60.0,0.9979,3.31,0.7,10.8,1 3.0,1.0,1.0,1.0,2.0,1.0,2.0,1.0,2.0,0
7.6,0.95,0.03,2.0,0.09,7.0,20.0,0.9959,3.2,0.56,9.6,0 3.0,1.0,1.0,1.0,3.0,2.0,1.0,1.0,1.0,0
8.8,0.7,0.0,1.7,0.069,8.0,19.0,0.9970100000000001,3.31,0.53,10.0,1 2.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,0
9.0,0.82,0.05,2.4,0.081,26.0,96.0,0.9981399999999999,3.36,0.53,10.0,0 5.0,10.0,10.0,3.0,7.0,3.0,8.0,10.0,2.0,1
7.8,0.52,0.25,1.9,0.081,14.0,38.0,0.9984,3.43,0.65,9.0,1 4.0,8.0,6.0,4.0,3.0,4.0,10.0,6.0,1.0,1
10.0,0.48,0.24,2.7,0.102,13.0,32.0,1.0,3.28,0.56,10.0,1 4.0,8.0,8.0,5.0,4.0,5.0,10.0,4.0,1.0,1
10.3,0.41,0.42,2.4,0.213,6.0,14.0,0.9994,3.19,0.62,9.5,1 \ No newline at end of file
7.5,0.53,0.06,2.6,0.086,20.0,44.0,0.9965,3.38,0.59,10.7,1
9.3,0.41,0.39,2.2,0.064,12.0,31.0,0.9984,3.26,0.65,10.2,0
6.0,0.64,0.05,1.9,0.066,9.0,17.0,0.9949600000000001,3.52,0.78,10.6,0
8.7,0.82,0.02,1.2,0.07,36.0,48.0,0.9952,3.2,0.58,9.8,0
7.7,0.57,0.21,1.5,0.069,4.0,9.0,0.9945799999999999,3.16,0.54,9.8,1
7.8,0.56,0.19,1.8,0.10400000000000001,12.0,47.0,0.9964,3.19,0.93,9.5,0
12.5,0.46,0.49,4.5,0.07,26.0,49.0,0.9981,3.05,0.57,9.6,0
13.3,0.34,0.52,3.2,0.094,17.0,53.0,1.0014,3.05,0.81,9.5,1
7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,1
8.2,1.33,0.0,1.7,0.081,3.0,12.0,0.9964,3.53,0.49,10.9,0
6.2,0.43,0.22,1.8,0.078,21.0,56.0,0.9963299999999999,3.52,0.6,9.5,1
8.4,0.715,0.2,2.4,0.076,10.0,38.0,0.99735,3.31,0.64,9.4,0
6.6,0.705,0.07,1.6,0.076,6.0,15.0,0.9962,3.44,0.58,10.7,0
6.3,0.76,0.0,2.9,0.07200000000000001,26.0,52.0,0.99379,3.51,0.6,11.5,1
8.1,0.78,0.23,2.6,0.059000000000000004,5.0,15.0,0.997,3.37,0.56,11.3,0
8.0,0.38,0.44,1.9,0.098,6.0,15.0,0.9956,3.3,0.64,11.4,1
8.0,0.52,0.03,1.7,0.07,10.0,35.0,0.99575,3.34,0.57,10.0,0
8.2,0.28,0.6,3.0,0.10400000000000001,10.0,22.0,0.99828,3.39,0.68,10.6,0
10.8,0.89,0.3,2.6,0.132,7.0,60.0,0.9978600000000001,2.99,1.18,10.2,0
9.3,0.655,0.26,2.0,0.096,5.0,35.0,0.9973799999999999,3.25,0.42,9.6,0
10.0,0.69,0.11,1.4,0.084,8.0,24.0,0.9957799999999999,2.88,0.47,9.7,0
6.8,0.83,0.09,1.8,0.07400000000000001,4.0,25.0,0.99534,3.38,0.45,9.6,0
9.4,0.33,0.59,2.8,0.079,9.0,30.0,0.9976,3.12,0.54,12.0,1
7.5,0.51,0.02,1.7,0.084,13.0,31.0,0.9953799999999999,3.36,0.54,10.5,1
8.3,0.715,0.15,1.8,0.08900000000000001,10.0,52.0,0.9968,3.23,0.77,9.5,0
7.5,0.725,0.04,1.5,0.076,8.0,15.0,0.99508,3.26,0.53,9.6,0
8.2,0.5,0.35,2.9,0.077,21.0,127.0,0.9976,3.23,0.62,9.4,0
9.4,0.3,0.56,2.8,0.08,6.0,17.0,0.9964,3.15,0.92,11.7,1
7.2,0.53,0.14,2.1,0.064,15.0,29.0,0.99323,3.35,0.61,12.1,1
6.5,0.58,0.0,2.2,0.096,3.0,13.0,0.9955700000000001,3.62,0.62,11.5,0
7.2,0.62,0.01,2.3,0.065,8.0,46.0,0.9933200000000001,3.32,0.51,11.8,1
9.6,0.68,0.24,2.2,0.087,5.0,28.0,0.9988,3.14,0.6,10.2,0
6.3,0.55,0.15,1.8,0.077,26.0,35.0,0.9931399999999999,3.32,0.82,11.6,1
7.8,0.7,0.06,1.9,0.079,20.0,35.0,0.9962799999999999,3.4,0.69,10.9,0
7.0,0.57,0.02,2.0,0.07200000000000001,17.0,26.0,0.99575,3.36,0.61,10.2,0
8.9,0.22,0.48,1.8,0.077,29.0,60.0,0.9968,3.39,0.53,9.4,1
7.8,0.58,0.02,2.0,0.073,9.0,18.0,0.9968,3.36,0.57,9.5,1
6.6,0.84,0.03,2.3,0.059000000000000004,32.0,48.0,0.9952,3.52,0.56,12.3,1
7.7,0.49,0.26,1.9,0.062,9.0,31.0,0.9966,3.39,0.64,9.6,0
7.2,0.39,0.44,2.6,0.066,22.0,48.0,0.9949399999999999,3.3,0.84,11.5,1
12.6,0.41,0.54,2.8,0.10300000000000001,19.0,41.0,0.99939,3.21,0.76,11.3,1
10.7,0.4,0.48,2.1,0.125,15.0,49.0,0.998,3.03,0.81,9.7,1
9.0,0.785,0.24,1.7,0.078,10.0,21.0,0.99692,3.29,0.67,10.0,0
8.4,0.52,0.22,2.7,0.084,4.0,18.0,0.99682,3.26,0.57,9.9,1
7.0,0.54,0.09,2.0,0.081,10.0,16.0,0.99479,3.43,0.59,11.5,1
7.8,0.55,0.0,1.7,0.07,7.0,17.0,0.99659,3.26,0.64,9.4,1
7.7,0.28,0.3,2.0,0.062,18.0,34.0,0.9952,3.28,0.9,11.3,1
6.9,0.63,0.02,1.9,0.078,18.0,30.0,0.9971200000000001,3.4,0.75,9.8,0
7.3,0.73,0.24,1.9,0.10800000000000001,18.0,102.0,0.9967,3.26,0.59,9.3,0
8.1,0.73,0.0,2.5,0.081,12.0,24.0,0.99798,3.38,0.46,9.6,0
11.6,0.41,0.54,1.5,0.095,22.0,41.0,0.99735,3.02,0.76,9.9,1
7.2,0.62,0.06,2.7,0.077,15.0,85.0,0.99746,3.51,0.54,9.5,0
8.3,0.66,0.15,1.9,0.079,17.0,42.0,0.9972,3.31,0.54,9.6,1
6.9,0.48,0.2,1.9,0.08199999999999999,9.0,23.0,0.99585,3.39,0.43,9.05,0
7.2,0.695,0.13,2.0,0.076,12.0,20.0,0.99546,3.29,0.54,10.1,0
7.5,0.57,0.08,2.6,0.08900000000000001,14.0,27.0,0.99592,3.3,0.59,10.4,1
9.1,0.28,0.46,9.0,0.114,3.0,9.0,0.9990100000000001,3.18,0.6,10.9,1
10.2,0.44,0.42,2.0,0.071,7.0,20.0,0.99566,3.14,0.79,11.1,1
5.6,0.31,0.78,13.9,0.07400000000000001,23.0,92.0,0.99677,3.39,0.48,10.5,1
7.8,0.82,0.29,4.3,0.083,21.0,64.0,0.9964200000000001,3.16,0.53,9.4,0
5.4,0.74,0.0,1.2,0.040999999999999995,16.0,46.0,0.9925799999999999,4.01,0.59,12.5,1
7.5,0.52,0.11,1.5,0.079,11.0,39.0,0.9968,3.42,0.58,9.6,0
6.3,0.68,0.01,3.7,0.10300000000000001,32.0,54.0,0.9958600000000001,3.51,0.66,11.3,1
8.6,0.645,0.25,2.0,0.083,8.0,28.0,0.99815,3.28,0.6,10.0,1
8.0,0.58,0.16,2.0,0.12,3.0,7.0,0.99454,3.22,0.58,11.2,1
此差异已折叠。
此差异已折叠。
此差异已折叠。
services: services:
node0: node0:
image: primihub/primihub-node:1.0.5 image: primihub/primihub-node:latest
restart: "no" restart: "no"
hostname: node0_primihub hostname: node0_primihub
container_name: node0_primihub container_name: node0_primihub
...@@ -18,7 +18,7 @@ services: ...@@ -18,7 +18,7 @@ services:
entrypoint: entrypoint:
- "/bin/bash" - "/bin/bash"
- "-c" - "-c"
- "./primihub-node --service_port=50050 --node_id=node0 --config=/app/primihub_node0.yaml" - "./primihub-node --service_port=50050 --node_id=node0 --config=/app/config/primihub_node0.yaml"
networks: networks:
testing_net: testing_net:
ipv4_address: 172.28.1.10 ipv4_address: 172.28.1.10
...@@ -26,7 +26,7 @@ services: ...@@ -26,7 +26,7 @@ services:
- simple_bootstrap_node - simple_bootstrap_node
node1: node1:
image: primihub/primihub-node:1.0.5 image: primihub/primihub-node:latest
restart: "no" restart: "no"
hostname: node1_primihub hostname: node1_primihub
container_name: node1_primihub container_name: node1_primihub
...@@ -44,7 +44,7 @@ services: ...@@ -44,7 +44,7 @@ services:
entrypoint: entrypoint:
- "/bin/bash" - "/bin/bash"
- "-c" - "-c"
- "./primihub-node --service_port=50050 --node_id=node1 --config=/app/primihub_node1.yaml" - "./primihub-node --service_port=50050 --node_id=node1 --config=/app/config/primihub_node1.yaml"
networks: networks:
testing_net: testing_net:
ipv4_address: 172.28.1.11 ipv4_address: 172.28.1.11
...@@ -52,7 +52,7 @@ services: ...@@ -52,7 +52,7 @@ services:
- simple_bootstrap_node - simple_bootstrap_node
node2: node2:
image: primihub/primihub-node:1.0.5 image: primihub/primihub-node:latest
restart: "no" restart: "no"
hostname: node2_primihub hostname: node2_primihub
container_name: node2_primihub container_name: node2_primihub
...@@ -70,7 +70,7 @@ services: ...@@ -70,7 +70,7 @@ services:
entrypoint: entrypoint:
- "/bin/bash" - "/bin/bash"
- "-c" - "-c"
- "./primihub-node --service_port=50050 --node_id=node2 --config=/app/primihub_node2.yaml" - "./primihub-node --service_port=50050 --node_id=node2 --config=/app/config/primihub_node2.yaml"
networks: networks:
testing_net: testing_net:
ipv4_address: 172.28.1.12 ipv4_address: 172.28.1.12
......
# E2E端到端测试
## 目录结构
```
e2etest |--------- local|---- pre_test.py 启动节点
| |---- test_mpc.py
| |---- test_fl.py
| |---- test_psi.py
| |---- test_pir.py
| |---- config.py 配置路径,请首先修改!!!
| |---- test_dir.py 测试路径
```
## 测试环境
1. 环境: wsl2 + ubuntu, 本地编译, 依赖项配置参考如下:
```
- name: Install go
run: |
sudo apt install golang
sudo rm -rf /usr/bin/go
sudo rm -rf /usr/local/go
wget https://dl.google.com/go/go1.18.3.linux-amd64.tar.gz
sudo tar -xzf go1.18.3.linux-amd64.tar.gz -C /usr/local
sudo ln -s /usr/local/go/bin/go /usr/bin/go
- name: Install startNode
run: |
git clone https://github.com/primihub/simple-bootstrap-node.git && cd simple-bootstrap-node
go mod tidy
```
> 启动节点已经安装的请忽略上述安装go和startNode
```
- name: Install pytest
run: sudo apt-get install python3-pip && pip3 install pytest
- name: Install gnome-terminal
run: |
sudo apt-get install libgirepository1.0-dev
sudo apt-get install python-cairo
sudo apt-get install libcairo2
sudo python3 -m pip install -U pycairo
sudo python3 -m pip install --ignore-installed PyGObject
sudo apt-get install gnome-terminal
```
>或者参考 [这里]( https://blog.csdn.net/qq_44026881/article/details/125317821?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-3-125317821-blog-122414615.pc_relevant_multi_platform_whitelistv2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-3-125317821-blog-122414615.pc_relevant_multi_platform_whitelistv2&utm_relevant_index=5)
2. 运行方式
```bash
cd e2etest
cd local
# 1. 检测全部功能
pytest
# 2. 检测单个功能
pytest -s test_mpc.py
```
3. 注意问题
* 注意配置/e2etest/local/config中的bootstrap node的路径
* 如果test_mpc.py失败,请注意node2节点的配置。
* 如果test_fl.py失败,请注意是否在primihub/python目录下执行了 python3.9 setup.py install.
>pytest的常见参数
>-s :显示标准输出,例如print()的语句;
>-v :显示详细报告;
>-q :显示简洁报告;
""""
Copyright 2022 Primihub
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
import os
simple_bootstrap_node_path = '/home/xt/Documents/simple-bootstrap-node'
primihub_path = os.path.abspath(os.path.join(os.getcwd(), "../.."))
""""
Copyright 2022 Primihub
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
import os
import time
import config
def pre_start_node():
'''开启一个命令行窗口,运行启动节点
:time.sleep() : 节点首次启动需要时间较长,之后可以修改。
'''
path = config.simple_bootstrap_node_path
os.chdir(path)
os.system("sudo gnome-terminal -e 'go run main.go'")
time.sleep(60)
def pre_node():
'''开启三个命令行窗口,运行节点'''
path = config.primihub_path
os.chdir(path)
os.system("sudo gnome-terminal -e './bazel-bin/node --node_id=node0 --service_port=50050 --config=./config/node0.yaml'")
os.system("sudo gnome-terminal -e './bazel-bin/node --node_id=node1 --service_port=50051 --config=./config/node1.yaml'")
os.system("sudo gnome-terminal -e './bazel-bin/node --node_id=node2 --service_port=50052 --config=./config/node2.yaml'")
time.sleep(30)
import pre_test
'''
运行启动节点和node节点。
如果已经运行了可以注释掉,也可以选择关闭命令行窗口重新运行。
'''
pre_test.pre_start_node()
pre_test.pre_node()
\ No newline at end of file
import os
import config
def test_change_dir():
'''测试修改当前工作目录'''
path = config.simple_bootstrap_node_path
os.chdir(path)
workDir = os.getcwd()
print(workDir)
assert(workDir) == path
def test_change_workdir():
path = config.primihub_path
os.chdir(path)
workDir = os.getcwd()
print(workDir)
assert(workDir) == path
\ No newline at end of file
import pytest
import os
import pre_test
import config
'''
运行启动节点和node节点。
如果已经运行了可以注释掉,也可以选择关闭命令行窗口重新运行。
'''
# pre_test.pre_start_node()
# pre_test.pre_node()
def test_fl_local():
path = config.primihub_path
os.chdir(path)
command = "./bazel-bin/cli --task_lang=python --server=127.0.0.1:50050 --task_code='./python/primihub/examples/disxgb_en.py' --params='predictFileName:STRING:0:/data/result/prediction.csv,indicatorFileName:STRING:0:/data/result/indicator.csv'"
assert(os.system(command)) == 0
'''测试生成文件'''
assert(os.path.isfile('/data/result/prediction.csv')) == 1
assert(os.path.isfile('/data/result/indicator.csv')) == 1
\ No newline at end of file
import pytest
import os
import pre_test
import config
'''
运行启动节点和node节点。
如果已经运行了可以注释掉,也可以选择关闭命令行窗口重新运行。
'''
pre_test.pre_start_node()
pre_test.pre_node()
def test_mpc_local():
'''
: 多方安全计算任务
: --task_lang: language is proto
: --task_type: 0-actor task
: --task_code: logistic_regression
: --params: batchsize 数据大小,
: numlters 迭代次数,
: trainData 训练数据集
: testData 测试数据集
'''
path = config.primihub_path
os.chdir(path)
command = "./bazel-bin/cli --task_lang=proto --task_type=0 --task_code='logistic_regression' --params='BatchSize:INT32:0:128,NumIters:INT32:0:100,TrainData:STRING:0:train_party_0;train_party_1;train_party_2,TestData:STRING:0:test_party_0;test_party_1;test_party_2'"
assert(os.system(command)) == 0
'''测试生成文件'''
assert(os.path.isfile('/tmp/100_200_party_0_lr.csv')) == 1
assert(os.path.isfile('/tmp/100_200_party_1_lr.csv')) == 1
assert(os.path.isfile('/tmp/100_200_party_2_lr.csv')) == 1
import pytest
import os
import pre_test
import config
'''
运行启动节点和node节点。
如果已经运行了可以注释掉,也可以选择关闭命令行窗口重新运行。
'''
# pre_test.pre_start_node()
# pre_test.pre_node()
def test_pir_local():
path = config.primihub_path
os.chdir(path)
command = "./bazel-bin/cli --task_type=2 --params='queryIndeies:STRING:0:5,serverData:STRING:0:pir_server_data,outputFullFilename:STRING:0:data/result/pir_result.csv' --input_datasets='serverData'"
assert(os.system(command)) == 0
'''测试生成文件'''
assert(os.path.isfile('data/result/pir_result.csv')) == 1
\ No newline at end of file
import pytest
import os
import pre_test
import config
'''
运行启动节点和node节点。
如果已经运行了可以注释掉,也可以选择关闭命令行窗口重新运行。
'''
# pre_test.pre_start_node()
# pre_test.pre_node()
def test_psi_local():
path = config.primihub_path
os.chdir(path)
command = "./bazel-bin/cli --task_type=3 --params='clientData:STRING:0:psi_client_data,serverData:STRING:0:psi_server_data, clientIndex:INT32:0:0,serverIndex:INT32:0:1,psiType:INT32:0:0,outputFullFilename:STRING:0:data/result/psi_result.csv' --input_datasets='clientData,serverData'"
assert(os.system(command)) == 0
'''测试生成文件'''
assert(os.path.isfile('data/result/psi_result.csv')) == 1
def test_psi_difference():
''' 测试psi任务,求差集 '''
path = config.primihub_path
os.chdir(path)
command = "./bazel-bin/cli --task_type=3 --params='clientData:STRING:0:psi_client_data,serverData:STRING:0:psi_server_data, clientIndex:INT32:0:0,serverIndex:INT32:0:1,psiType:INT32:0:1,outputFullFilename:STRING:0:data/result/psi_result_difference.csv' --input_datasets='clientData,serverData'"
assert(os.system(command)) == 0
'''测试生成文件'''
assert(os.path.isfile('data/result/psi_result_difference.csv')) == 1
\ No newline at end of file
此差异已折叠。
#!/bin/bash
PrevLineNum=`cat BUILD.bazel | grep -n "PLACEHOLDER-PYTHON3.X-CONFIG" | awk -F ":" '{print $1}'`
if [ -z ${PrevLineNum} ]; then
echo "Can't find line including 'PLACEHOLDER-PYTHON3.X-CONFIG' in BUILD.bazel."
exit
fi
TargetLine=`expr $PrevLineNum + 3`
CONFIG=`python3.9-config --ldflags` \
&& NEWLINE="\ \ \ \ linkopts = LINK_OPTS + [\"${CONFIG} -lpython3.9\"]," \
&& sed -i "${TargetLine}c ${NEWLINE}" BUILD.bazel
echo "done"
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
primihub
========
.. toctree::
:maxdepth: 4
primihub
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册