Full Code of ncullen93/pyBN for AI

master fe5c49d6656d cached
121 files
2.7 MB
713.1k tokens
305 symbols
1 requests
Download .txt
Showing preview only (2,851K chars total). Download the full file or copy to clipboard to get everything.
Repository: ncullen93/pyBN
Branch: master
Commit: fe5c49d6656d
Files: 121
Total size: 2.7 MB

Directory structure:
gitextract_62n8x0uq/

├── .gitignore
├── License.txt
├── Readme.md
├── data/
│   ├── andes.bif
│   ├── asia.bif
│   ├── bde_test.bn
│   ├── cancer.bif
│   ├── cmu.bn
│   ├── earthquake.bn
│   ├── flags/
│   │   ├── README.txt
│   │   ├── flags-test.arff
│   │   ├── flags-train.arff
│   │   ├── flags.arff
│   │   └── flags.xml
│   ├── flags.txt
│   ├── gs_data.txt
│   ├── letter.csv
│   ├── lizards.csv
│   ├── munin.bif
│   ├── mushroom.csv
│   ├── scale.csv
│   ├── simple.bn
│   ├── student.bn
│   ├── test.bn
│   ├── urn.bif
│   └── win95pts.bif
├── examples/
│   ├── Drawing.ipynb
│   ├── FactorOperations.ipynb
│   ├── MAP Inference as Optimization.ipynb
│   ├── Marginal_Inference.ipynb
│   └── ReadWrite.ipynb
├── pyBN/
│   ├── __init__.py
│   ├── classes/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_bayesnet.py
│   │   │   └── test_factor.py
│   │   ├── bayesnet.py
│   │   ├── cliquetree.py
│   │   ├── clustergraph.py
│   │   ├── empiricaldistribution.py
│   │   ├── factor.py
│   │   └── factorization.py
│   ├── classification/
│   │   ├── __init__.py
│   │   ├── classification.py
│   │   └── feature_selection.py
│   ├── inference/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_map_exact.py
│   │   │   ├── test_marginal_approx.py
│   │   │   └── test_marginal_exact.py
│   │   ├── map_exact/
│   │   │   ├── __init__.py
│   │   │   ├── ilp_map.py
│   │   │   └── ve_map.py
│   │   ├── marginal_approx/
│   │   │   ├── __init__.py
│   │   │   ├── forward_sample.py
│   │   │   ├── gibbs_sample.py
│   │   │   ├── loopy_bp.py
│   │   │   └── lw_sample.py
│   │   └── marginal_exact/
│   │       ├── __init__.py
│   │       ├── exact_bp.py
│   │       └── ve_marginal.py
│   ├── io/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_reading.py
│   │   │   └── test_writing.py
│   │   ├── read.py
│   │   └── write.py
│   ├── learning/
│   │   ├── __init__.py
│   │   ├── parameter/
│   │   │   ├── __init__.py
│   │   │   ├── _tests/
│   │   │   │   └── __init__.py
│   │   │   ├── bayes.py
│   │   │   └── mle.py
│   │   └── structure/
│   │       ├── __init__.py
│   │       ├── _tests/
│   │       │   ├── __init__.py
│   │       │   ├── test_chow_liu.py
│   │       │   ├── test_grow_shrink.py
│   │       │   ├── test_orient_edges.py
│   │       │   └── test_pc.py
│   │       ├── constraint/
│   │       │   ├── __init__.py
│   │       │   ├── fast_iamb.py
│   │       │   ├── grow_shrink.py
│   │       │   ├── iamb.py
│   │       │   ├── lambda_iamb.py
│   │       │   └── path_condition.py
│   │       ├── exact/
│   │       │   ├── __init__.py
│   │       │   └── gobnilp.py
│   │       ├── hybrid/
│   │       │   ├── __init__.py
│   │       │   ├── mmhc.py
│   │       │   └── mmpc.py
│   │       ├── mdbn.py
│   │       ├── naive/
│   │       │   ├── TAN.py
│   │       │   ├── __init__.py
│   │       │   └── naive_bayes.py
│   │       ├── score/
│   │       │   ├── __init__.py
│   │       │   ├── bayes_scores.py
│   │       │   ├── hill_climbing.py
│   │       │   ├── info_scores.py
│   │       │   ├── random_restarts.py
│   │       │   └── tabu.py
│   │       └── tree/
│   │           ├── __init__.py
│   │           └── chow_liu.py
│   ├── plotting/
│   │   ├── __init__.py
│   │   └── plot.py
│   └── utils/
│       ├── __init__.py
│       ├── _tests/
│       │   ├── __init__.py
│       │   ├── test_independence_tests.py
│       │   ├── test_markov_blanket.py
│       │   ├── test_orient_edges.py
│       │   └── test_random_sample.py
│       ├── class_equivalence.py
│       ├── data.py
│       ├── discretize.py
│       ├── graph.py
│       ├── hybrid_distance.py
│       ├── independence_tests.py
│       ├── markov_blanket.py
│       ├── orient_edges.py
│       ├── parameter_distance.py
│       ├── random_sample.py
│       └── structure_distance.py
└── setup.py

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
*.DS_Store
*.pyc
.ipynb_checkpoints/
*.ipynb_checkpoints/
*.bkbn
.spyderworkspace
.spyderproject

# setup.py working directory
build
# sphinx build directory
doc/_build
# setup.py dist directory
dist
# Egg metadata
*.egg-info
.eggs
pyBN.egg-info

================================================
FILE: License.txt
================================================
The MIT License (MIT)

Copyright (c) 2016, Nicholas Cullen <ncullen.th@dartmouth.edu>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

================================================
FILE: Readme.md
================================================

NOTE: I wrote this code to go along with Daphne Koller's book and no longer
maintain the repository, although the code should be easily adaptable.

<h1>Bayesian Networks in Python</h1>

<h2>Overview</h2>
This module provides a convenient and intuitive interface for reading, writing, plotting, performing inference, parameter learning, structure learning, and classification over Discrete Bayesian Networks - along with some other utility functions. There seems to be a lack of many high-quality options for BNs in Python, so I hope this project will be a useful addition.

I am a graduate student in the Di2Ag laboratory at Dartmouth College, and would love to collaborate on this project with anyone who has an interest in graphical models - Send me an email at ncullen.th@dartmouth.edu. If you're a researcher or student and want to use this module, I am happy to give an overview of the code/functionality or answer any questions.

For an up-to-date list of issues, go to the "issues" tab in this repository. Below is an updated list of features, along with information on usage/examples:


<h2>Current features</h2>

<h4>Marginal Inference</h4>
- Exact Marginal Inference
	- Sum-Product Variable Elimination 
	- Clique Tree Message Passing
- Approximate Marginal Inference
	- Forward Sampling  
	- Likelihood Weighted Sampling
	- Gibbs (MCMC) Sampling
	- Loopy Belief Propagation

<h4>MAP/MPE Inference</h4>
- Exact MAP Inference
	- Max-Product Variable Elimination
	- Integer Linear Programming
- Approximate MAP Inference
	- LP Relaxation

<h4>Constraint-Based Structure Learning</h4>
- Algorithms
	- PC
	- Grow-Shrink
	- IAMB/Lambda-IAMB/Fast-IAMB
- Independence Tests
	- Marginal Mutual Information
	- Conditional Mutual Information
	- Pearson Chi-Square

<h4>Score-Based Structure Learning</h4>
- Algorithms
	- Greedy Hill Climbing
	- Tabu Search
	- Random Restarts
- Scoring Functions
	- BIC/AIC/MDL
	- BDe/BDeu/K2

<h4>Tree-Based Structure Learning</h4>
- Naive Bayes
- Tree-Augmented Naive Bayes
- Chow-Liu

<h4>Hybrid Structure Leanring</h4>
- MMPC
- MMHC

<h4>Exact Structure Learning</h4>
- GOBNILP Solver

<h4>Parameter Learning</h4>
- Maximum Likelihood Estimation
- Dirichlet-Multinomial Estimation

<h4>Classification</h4>
- Naive Bayes
- Tree-Augmented Naive Bayes
- General DAG

<h4>Multi-Dimensional Classification</h4>
- Empty/Tree/Polytree/Forest
- General DAG

<h4>Comparing Two Bayesian Networks</h4>
- Structure-Based Distance Metrics
	- Missing Edges
	- Extra Edges
	- Incorrect Edge Orientation
	- Hamming Distance
- Parameter-Based Distance Metrics
	- KL-Divergence and JS-Divergence
	- Manhattan and Euclidean
	- Hellinger
	- Minkowski

<h4>Utility Functionality</h4>
- Determine Class Equivalence
- Discretize continuous data 
- Orient a PDAG
- Generate random sample dataset from a BN
- Markov Blanket operations

I previously wrote a Python wrapper for the GOBNILP project - a state-of-the-art integer programming solver for Bayesian network structure learning that can find the EXACT Global Maximum of any score-based objective function. It also links to CPLEX for incredible speed.
The wrappers can be found in the "pyGOBN" project at www.github.com/ncullen93/pyGOBN. For an overview of GOBNILP or to see its
great benchmarks on even the most massive datasets, visit https://www.cs.york.ac.uk/aig/sw/gobnilp/.


<h2>Examples</h2>
This package includes a number of examples to help users get acquainted with the intuitive syntax and functionality of pyBN. For an updated list of examples, check out the collection of ipython notebooks in the "examples" folder located in the master directory.

Here is a list of current examples:
- ReadWrite : an introduction to reading (writing) BayesNet object from (to) files, along with an overview of the attributes and data structures inherit to BayesNet objects.
- Drawing : an introduction to the drawing/plotting capabilities of pyBN with both small and large Bayesian networks.
- FactorOperations : an introduction to the Factor class, an exploration of the numerous attributes belonging to a Factor in
pyBN, an overview of every Factor operation function at the users' hands, and a short discussion of what makes Factor operations
so fast and efficient in pyBN.

<h2>Usage</h2>
Getting up-and-running with this package is simple:

1. Click "Download ZIP" button towards the upper right corner of the page.
2. Unpack the ZIP file wherever you want on your local machine. You should now have a folder called "pyBN-master"
3. In your python terminal, change directories to be IN pyBN-master. Typing "ls" should show you "data", "examples" and "pyBN" folders. Stay in the "pyBN-master" directory for now!
4. In your python terminal, simply type "from pyBN import ". This will load all of the module's functions, classes, etc.
5. You are now free to use the package! Perhaps you want to start by creating a BayesNet object using "bn = BayesNet()" and so on.

<h4>Unit Tests</h4>
If you want to test the functionality to make sure it all works on your local machine, navigate to the pybn-master directory and run the following command from the normal command-line (NOT ipython console):
- python -m unittest discover



================================================
FILE: data/andes.bif
================================================
network unknown {
}
variable GOAL_2 {
  type discrete [ 2 ] { false, true };
}
variable SNode_3 {
  type discrete [ 2 ] { false, true };
}
variable SNode_4 {
  type discrete [ 2 ] { false, true };
}
variable SNode_5 {
  type discrete [ 2 ] { false, true };
}
variable SNode_6 {
  type discrete [ 2 ] { false, true };
}
variable SNode_7 {
  type discrete [ 2 ] { false, true };
}
variable DISPLACEM0 {
  type discrete [ 2 ] { false, true };
}
variable RApp1 {
  type discrete [ 2 ] { false, true };
}
variable GIVEN_1 {
  type discrete [ 2 ] { false, true };
}
variable RApp2 {
  type discrete [ 2 ] { false, true };
}
variable SNode_8 {
  type discrete [ 2 ] { false, true };
}
variable SNode_9 {
  type discrete [ 2 ] { false, true };
}
variable SNode_10 {
  type discrete [ 2 ] { false, true };
}
variable SNode_11 {
  type discrete [ 2 ] { false, true };
}
variable SNode_12 {
  type discrete [ 2 ] { false, true };
}
variable SNode_13 {
  type discrete [ 2 ] { false, true };
}
variable SNode_14 {
  type discrete [ 2 ] { false, true };
}
variable SNode_15 {
  type discrete [ 2 ] { false, true };
}
variable SNode_16 {
  type discrete [ 2 ] { false, true };
}
variable SNode_17 {
  type discrete [ 2 ] { false, true };
}
variable SNode_18 {
  type discrete [ 2 ] { false, true };
}
variable SNode_19 {
  type discrete [ 2 ] { false, true };
}
variable NEED1 {
  type discrete [ 2 ] { false, true };
}
variable SNode_20 {
  type discrete [ 2 ] { false, true };
}
variable GRAV2 {
  type discrete [ 2 ] { false, true };
}
variable SNode_21 {
  type discrete [ 2 ] { false, true };
}
variable VALUE3 {
  type discrete [ 2 ] { false, true };
}
variable SNode_24 {
  type discrete [ 2 ] { false, true };
}
variable SLIDING4 {
  type discrete [ 2 ] { false, true };
}
variable SNode_25 {
  type discrete [ 2 ] { false, true };
}
variable CONSTANT5 {
  type discrete [ 2 ] { false, true };
}
variable SNode_26 {
  type discrete [ 2 ] { false, true };
}
variable KNOWN6 {
  type discrete [ 2 ] { false, true };
}
variable VELOCITY7 {
  type discrete [ 2 ] { false, true };
}
variable SNode_47 {
  type discrete [ 2 ] { false, true };
}
variable RApp3 {
  type discrete [ 2 ] { false, true };
}
variable KNOWN8 {
  type discrete [ 2 ] { false, true };
}
variable RApp4 {
  type discrete [ 2 ] { false, true };
}
variable SNode_27 {
  type discrete [ 2 ] { false, true };
}
variable COMPO16 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_48 {
  type discrete [ 2 ] { false, true };
}
variable TRY12 {
  type discrete [ 2 ] { false, true };
}
variable TRY11 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_49 {
  type discrete [ 2 ] { false, true };
}
variable CHOOSE19 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_50 {
  type discrete [ 2 ] { false, true };
}
variable SYSTEM18 {
  type discrete [ 2 ] { false, true };
}
variable SNode_51 {
  type discrete [ 2 ] { false, true };
}
variable KINEMATI17 {
  type discrete [ 2 ] { false, true };
}
variable SNode_52 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY10 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_53 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY9 {
  type discrete [ 2 ] { false, true };
}
variable SNode_28 {
  type discrete [ 2 ] { false, true };
}
variable TRY13 {
  type discrete [ 2 ] { false, true };
}
variable TRY14 {
  type discrete [ 2 ] { false, true };
}
variable TRY15 {
  type discrete [ 2 ] { false, true };
}
variable VAR20 {
  type discrete [ 2 ] { false, true };
}
variable SNode_29 {
  type discrete [ 2 ] { false, true };
}
variable SNode_31 {
  type discrete [ 2 ] { false, true };
}
variable GIVEN21 {
  type discrete [ 2 ] { false, true };
}
variable SNode_33 {
  type discrete [ 2 ] { false, true };
}
variable SNode_34 {
  type discrete [ 2 ] { false, true };
}
variable VECTOR27 {
  type discrete [ 2 ] { false, true };
}
variable APPLY32 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_56 {
  type discrete [ 2 ] { false, true };
}
variable CHOOSE35 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_57 {
  type discrete [ 2 ] { false, true };
}
variable MAXIMIZE34 {
  type discrete [ 2 ] { false, true };
}
variable SNode_59 {
  type discrete [ 2 ] { false, true };
}
variable AXIS33 {
  type discrete [ 2 ] { false, true };
}
variable SNode_60 {
  type discrete [ 2 ] { false, true };
}
variable WRITE31 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_61 {
  type discrete [ 2 ] { false, true };
}
variable WRITE30 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_62 {
  type discrete [ 2 ] { false, true };
}
variable RESOLVE37 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_63 {
  type discrete [ 2 ] { false, true };
}
variable NEED36 {
  type discrete [ 2 ] { false, true };
}
variable SNode_64 {
  type discrete [ 2 ] { false, true };
}
variable SNode_41 {
  type discrete [ 2 ] { false, true };
}
variable SNode_42 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY39 {
  type discrete [ 2 ] { false, true };
}
variable SNode_43 {
  type discrete [ 2 ] { false, true };
}
variable RESOLVE38 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_66 {
  type discrete [ 2 ] { false, true };
}
variable SNode_67 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY41 {
  type discrete [ 2 ] { false, true };
}
variable SNode_54 {
  type discrete [ 2 ] { false, true };
}
variable RESOLVE40 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_69 {
  type discrete [ 2 ] { false, true };
}
variable SNode_70 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY43 {
  type discrete [ 2 ] { false, true };
}
variable SNode_55 {
  type discrete [ 2 ] { false, true };
}
variable RESOLVE42 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_72 {
  type discrete [ 2 ] { false, true };
}
variable SNode_73 {
  type discrete [ 2 ] { false, true };
}
variable KINE29 {
  type discrete [ 2 ] { false, true };
}
variable SNode_74 {
  type discrete [ 2 ] { false, true };
}
variable VECTOR44 {
  type discrete [ 2 ] { false, true };
}
variable SNode_75 {
  type discrete [ 2 ] { false, true };
}
variable EQUATION28 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_79 {
  type discrete [ 2 ] { false, true };
}
variable RApp5 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_80 {
  type discrete [ 2 ] { false, true };
}
variable RApp6 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_81 {
  type discrete [ 2 ] { false, true };
}
variable TRY25 {
  type discrete [ 2 ] { false, true };
}
variable TRY24 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_83 {
  type discrete [ 2 ] { false, true };
}
variable CHOOSE47 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_84 {
  type discrete [ 2 ] { false, true };
}
variable SYSTEM46 {
  type discrete [ 2 ] { false, true };
}
variable SNode_86 {
  type discrete [ 2 ] { false, true };
}
variable NEWTONS45 {
  type discrete [ 2 ] { false, true };
}
variable SNode_156 {
  type discrete [ 2 ] { false, true };
}
variable DEFINE23 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_98 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY22 {
  type discrete [ 2 ] { false, true };
}
variable SNode_37 {
  type discrete [ 2 ] { false, true };
}
variable TRY26 {
  type discrete [ 2 ] { false, true };
}
variable SNode_38 {
  type discrete [ 2 ] { false, true };
}
variable SNode_40 {
  type discrete [ 2 ] { false, true };
}
variable SNode_44 {
  type discrete [ 2 ] { false, true };
}
variable SNode_46 {
  type discrete [ 2 ] { false, true };
}
variable NULL48 {
  type discrete [ 2 ] { false, true };
}
variable SNode_65 {
  type discrete [ 2 ] { false, true };
}
variable SNode_68 {
  type discrete [ 2 ] { false, true };
}
variable SNode_71 {
  type discrete [ 2 ] { false, true };
}
variable FIND49 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_87 {
  type discrete [ 2 ] { false, true };
}
variable NORMAL50 {
  type discrete [ 2 ] { false, true };
}
variable SNode_88 {
  type discrete [ 2 ] { false, true };
}
variable STRAT_90 {
  type discrete [ 2 ] { SNode_92_1, SNode_91_2 };
}
variable NORMAL52 {
  type discrete [ 2 ] { false, true };
}
variable INCLINE51 {
  type discrete [ 2 ] { false, true };
}
variable SNode_91 {
  type discrete [ 2 ] { false, true };
}
variable HORIZ53 {
  type discrete [ 2 ] { false, true };
}
variable BUGGY54 {
  type discrete [ 2 ] { false, true };
}
variable SNode_92 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY55 {
  type discrete [ 2 ] { false, true };
}
variable SNode_93 {
  type discrete [ 2 ] { false, true };
}
variable WEIGHT56 {
  type discrete [ 2 ] { false, true };
}
variable SNode_94 {
  type discrete [ 2 ] { false, true };
}
variable WEIGHT57 {
  type discrete [ 2 ] { false, true };
}
variable SNode_95 {
  type discrete [ 2 ] { false, true };
}
variable SNode_97 {
  type discrete [ 2 ] { false, true };
}
variable FIND58 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_99 {
  type discrete [ 2 ] { false, true };
}
variable IDENTIFY59 {
  type discrete [ 2 ] { false, true };
}
variable SNode_100 {
  type discrete [ 2 ] { false, true };
}
variable FORCE60 {
  type discrete [ 2 ] { false, true };
}
variable SNode_102 {
  type discrete [ 2 ] { false, true };
}
variable APPLY61 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_103 {
  type discrete [ 2 ] { false, true };
}
variable CHOOSE62 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_104 {
  type discrete [ 2 ] { false, true };
}
variable SNode_106 {
  type discrete [ 2 ] { false, true };
}
variable SNode_152 {
  type discrete [ 2 ] { false, true };
}
variable WRITE63 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_107 {
  type discrete [ 2 ] { false, true };
}
variable WRITE64 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_108 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_109 {
  type discrete [ 2 ] { false, true };
}
variable GOAL65 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_110 {
  type discrete [ 2 ] { false, true };
}
variable GOAL66 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_111 {
  type discrete [ 2 ] { false, true };
}
variable NEED67 {
  type discrete [ 2 ] { false, true };
}
variable RApp7 {
  type discrete [ 2 ] { false, true };
}
variable RApp8 {
  type discrete [ 2 ] { false, true };
}
variable SNode_112 {
  type discrete [ 2 ] { false, true };
}
variable GOAL68 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_113 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_114 {
  type discrete [ 2 ] { false, true };
}
variable SNode_115 {
  type discrete [ 2 ] { false, true };
}
variable VECTOR69 {
  type discrete [ 2 ] { false, true };
}
variable SNode_116 {
  type discrete [ 2 ] { false, true };
}
variable SNode_117 {
  type discrete [ 2 ] { false, true };
}
variable VECTOR70 {
  type discrete [ 2 ] { false, true };
}
variable SNode_118 {
  type discrete [ 2 ] { false, true };
}
variable EQUAL71 {
  type discrete [ 2 ] { false, true };
}
variable SNode_119 {
  type discrete [ 2 ] { false, true };
}
variable SNode_120 {
  type discrete [ 2 ] { false, true };
}
variable GOAL72 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_121 {
  type discrete [ 2 ] { false, true };
}
variable SNode_122 {
  type discrete [ 2 ] { false, true };
}
variable VECTOR73 {
  type discrete [ 2 ] { false, true };
}
variable SNode_123 {
  type discrete [ 2 ] { false, true };
}
variable NEWTONS74 {
  type discrete [ 2 ] { false, true };
}
variable SNode_124 {
  type discrete [ 2 ] { false, true };
}
variable SUM75 {
  type discrete [ 2 ] { false, true };
}
variable SNode_125 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_126 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_127 {
  type discrete [ 2 ] { false, true };
}
variable RApp9 {
  type discrete [ 2 ] { false, true };
}
variable RApp10 {
  type discrete [ 2 ] { false, true };
}
variable SNode_128 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_129 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_130 {
  type discrete [ 2 ] { false, true };
}
variable SNode_131 {
  type discrete [ 2 ] { false, true };
}
variable SNode_132 {
  type discrete [ 2 ] { false, true };
}
variable SNode_133 {
  type discrete [ 2 ] { false, true };
}
variable SNode_134 {
  type discrete [ 2 ] { false, true };
}
variable SNode_135 {
  type discrete [ 2 ] { false, true };
}
variable SNode_154 {
  type discrete [ 2 ] { false, true };
}
variable SNode_136 {
  type discrete [ 2 ] { false, true };
}
variable SNode_137 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_142 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_143 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_146 {
  type discrete [ 2 ] { false, true };
}
variable RApp11 {
  type discrete [ 2 ] { false, true };
}
variable RApp12 {
  type discrete [ 2 ] { false, true };
}
variable RApp13 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_147 {
  type discrete [ 2 ] { false, true };
}
variable TRY76 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_149 {
  type discrete [ 2 ] { false, true };
}
variable APPLY77 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_150 {
  type discrete [ 2 ] { false, true };
}
variable GRAV78 {
  type discrete [ 2 ] { false, true };
}
variable SNode_151 {
  type discrete [ 2 ] { false, true };
}
variable GOAL_153 {
  type discrete [ 2 ] { false, true };
}
variable SNode_155 {
  type discrete [ 2 ] { false, true };
}
probability ( GOAL_2 ) {
  table 0.02, 0.98;
}
probability ( SNode_3 ) {
  table 0.02, 0.98;
}
probability ( SNode_4 ) {
  table 0.02, 0.98;
}
probability ( SNode_5 ) {
  table 0.02, 0.98;
}
probability ( SNode_6 ) {
  table 0.02, 0.98;
}
probability ( SNode_7 ) {
  table 0.02, 0.98;
}
probability ( DISPLACEM0 ) {
  table 0.5, 0.5;
}
probability ( RApp1 | DISPLACEM0, SNode_3 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( GIVEN_1 ) {
  table 0.02, 0.98;
}
probability ( RApp2 | GIVEN_1 ) {
  (false) 1.0, 0.0;
  (true) 0.0001, 0.9999;
}
probability ( SNode_8 | RApp1, RApp2 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.0, 1.0;
  (false, true) 0.0, 1.0;
  (true, true) 0.0, 1.0;
}
probability ( SNode_9 ) {
  table 0.02, 0.98;
}
probability ( SNode_10 ) {
  table 0.02, 0.98;
}
probability ( SNode_11 ) {
  table 0.02, 0.98;
}
probability ( SNode_12 ) {
  table 0.02, 0.98;
}
probability ( SNode_13 ) {
  table 0.02, 0.98;
}
probability ( SNode_14 ) {
  table 0.02, 0.98;
}
probability ( SNode_15 ) {
  table 0.02, 0.98;
}
probability ( SNode_16 ) {
  table 0.02, 0.98;
}
probability ( SNode_17 ) {
  table 0.02, 0.98;
}
probability ( SNode_18 ) {
  table 0.02, 0.98;
}
probability ( SNode_19 ) {
  table 0.02, 0.98;
}
probability ( NEED1 ) {
  table 0.5, 0.5;
}
probability ( SNode_20 | SNode_16, NEED1 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GRAV2 ) {
  table 0.5, 0.5;
}
probability ( SNode_21 | SNode_20, GRAV2 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( VALUE3 ) {
  table 0.5, 0.5;
}
probability ( SNode_24 | SNode_21, VALUE3 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( SLIDING4 ) {
  table 0.1, 0.9;
}
probability ( SNode_25 | SNode_15, SLIDING4 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( CONSTANT5 ) {
  table 0.5, 0.5;
}
probability ( SNode_26 | SNode_11, CONSTANT5 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( KNOWN6 ) {
  table 0.5, 0.5;
}
probability ( VELOCITY7 ) {
  table 0.5, 0.5;
}
probability ( SNode_47 | SNode_3, VELOCITY7 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( RApp3 | KNOWN6, SNode_26, SNode_47 ) {
  (false, false, false) 1.0, 0.0;
  (true, false, false) 1.0, 0.0;
  (false, true, false) 1.0, 0.0;
  (true, true, false) 1.0, 0.0;
  (false, false, true) 1.0, 0.0;
  (true, false, true) 1.0, 0.0;
  (false, true, true) 1.0, 0.0;
  (true, true, true) 0.0001, 0.9999;
}
probability ( KNOWN8 ) {
  table 0.5, 0.5;
}
probability ( RApp4 | KNOWN8, SNode_11 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( SNode_27 | RApp3, RApp4 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.0, 1.0;
  (false, true) 0.0, 1.0;
  (true, true) 0.0, 1.0;
}
probability ( COMPO16 ) {
  table 0.5, 0.5;
}
probability ( GOAL_48 | GOAL_2, COMPO16 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( TRY12 ) {
  table 0.7, 0.3;
}
probability ( TRY11 | TRY12 ) {
  (false) 0.8, 0.2;
  (true) 0.0, 1.0;
}
probability ( GOAL_49 | SNode_5, SNode_6, GOAL_48, TRY11 ) {
  (false, false, false, false) 0.8, 0.2;
  (true, false, false, false) 0.8, 0.2;
  (false, true, false, false) 0.8, 0.2;
  (true, true, false, false) 0.8, 0.2;
  (false, false, true, false) 0.8, 0.2;
  (true, false, true, false) 0.8, 0.2;
  (false, true, true, false) 0.8, 0.2;
  (true, true, true, false) 0.8, 0.2;
  (false, false, false, true) 0.8, 0.2;
  (true, false, false, true) 0.8, 0.2;
  (false, true, false, true) 0.8, 0.2;
  (true, true, false, true) 0.8, 0.2;
  (false, false, true, true) 0.8, 0.2;
  (true, false, true, true) 0.8, 0.2;
  (false, true, true, true) 0.8, 0.2;
  (true, true, true, true) 0.00008, 0.99992;
}
probability ( CHOOSE19 ) {
  table 0.5, 0.5;
}
probability ( GOAL_50 | GOAL_49, CHOOSE19 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SYSTEM18 ) {
  table 0.5, 0.5;
}
probability ( SNode_51 | SNode_17, GOAL_50, SYSTEM18 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( KINEMATI17 ) {
  table 0.5, 0.5;
}
probability ( SNode_52 | SNode_51, KINEMATI17 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY10 ) {
  table 0.5, 0.5;
}
probability ( GOAL_53 | GOAL_49, SNode_52, IDENTIFY10 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY9 ) {
  table 0.5, 0.5;
}
probability ( SNode_28 | SNode_27, GOAL_53, IDENTIFY9 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( TRY13 | TRY12 ) {
  (false) 0.8, 0.2;
  (true) 0.0, 1.0;
}
probability ( TRY14 | TRY12 ) {
  (false) 0.9, 0.1;
  (true) 0.0, 1.0;
}
probability ( TRY15 | TRY12 ) {
  (false) 0.9, 0.1;
  (true) 0.0, 1.0;
}
probability ( VAR20 ) {
  table 0.3, 0.7;
}
probability ( SNode_29 | SNode_28, VAR20 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_31 | SNode_29, VALUE3 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( GIVEN21 ) {
  table 0.1, 0.9;
}
probability ( SNode_33 | SNode_10, GIVEN21 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( SNode_34 | SNode_10, CONSTANT5 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( VECTOR27 ) {
  table 0.5, 0.5;
}
probability ( APPLY32 ) {
  table 0.5, 0.5;
}
probability ( GOAL_56 | GOAL_49, SNode_52, APPLY32 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( CHOOSE35 ) {
  table 0.5, 0.5;
}
probability ( GOAL_57 | GOAL_56, CHOOSE35 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( MAXIMIZE34 ) {
  table 0.5, 0.5;
}
probability ( SNode_59 | SNode_7, GOAL_57, MAXIMIZE34 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( AXIS33 ) {
  table 0.2, 0.8;
}
probability ( SNode_60 | SNode_59, AXIS33 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( WRITE31 ) {
  table 0.5, 0.5;
}
probability ( GOAL_61 | GOAL_56, SNode_60, WRITE31 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( WRITE30 ) {
  table 0.5, 0.5;
}
probability ( GOAL_62 | GOAL_61, WRITE30 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( RESOLVE37 ) {
  table 0.5, 0.5;
}
probability ( GOAL_63 | SNode_28, GOAL_62, RESOLVE37 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( NEED36 ) {
  table 0.5, 0.5;
}
probability ( SNode_64 | GOAL_63, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_41 | SNode_9, CONSTANT5 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_42 | SNode_8, SNode_41, KNOWN6 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY39 ) {
  table 0.5, 0.5;
}
probability ( SNode_43 | SNode_42, GOAL_53, IDENTIFY39 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( RESOLVE38 ) {
  table 0.5, 0.5;
}
probability ( GOAL_66 | SNode_43, GOAL_62, RESOLVE38 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( SNode_67 | GOAL_66, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY41 ) {
  table 0.5, 0.5;
}
probability ( SNode_54 | GOAL_53, IDENTIFY41 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( RESOLVE40 ) {
  table 0.5, 0.5;
}
probability ( GOAL_69 | SNode_54, GOAL_62, RESOLVE40 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( SNode_70 | GOAL_69, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY43 ) {
  table 0.6, 0.4;
}
probability ( SNode_55 | SNode_34, GOAL_53, IDENTIFY43 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( RESOLVE42 ) {
  table 0.5, 0.5;
}
probability ( GOAL_72 | SNode_55, GOAL_62, RESOLVE42 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( SNode_73 | GOAL_72, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( KINE29 ) {
  table 0.5, 0.5;
}
probability ( SNode_74 | GOAL_62, SNode_64, SNode_67, SNode_70, SNode_73, KINE29 ) {
  (false, false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false, false) 0.9, 0.1;
  (true, true, false, false, false, false) 0.9, 0.1;
  (false, false, true, false, false, false) 0.9, 0.1;
  (true, false, true, false, false, false) 0.9, 0.1;
  (false, true, true, false, false, false) 0.9, 0.1;
  (true, true, true, false, false, false) 0.9, 0.1;
  (false, false, false, true, false, false) 0.9, 0.1;
  (true, false, false, true, false, false) 0.9, 0.1;
  (false, true, false, true, false, false) 0.9, 0.1;
  (true, true, false, true, false, false) 0.9, 0.1;
  (false, false, true, true, false, false) 0.9, 0.1;
  (true, false, true, true, false, false) 0.9, 0.1;
  (false, true, true, true, false, false) 0.9, 0.1;
  (true, true, true, true, false, false) 0.9, 0.1;
  (false, false, false, false, true, false) 0.9, 0.1;
  (true, false, false, false, true, false) 0.9, 0.1;
  (false, true, false, false, true, false) 0.9, 0.1;
  (true, true, false, false, true, false) 0.9, 0.1;
  (false, false, true, false, true, false) 0.9, 0.1;
  (true, false, true, false, true, false) 0.9, 0.1;
  (false, true, true, false, true, false) 0.9, 0.1;
  (true, true, true, false, true, false) 0.9, 0.1;
  (false, false, false, true, true, false) 0.9, 0.1;
  (true, false, false, true, true, false) 0.9, 0.1;
  (false, true, false, true, true, false) 0.9, 0.1;
  (true, true, false, true, true, false) 0.9, 0.1;
  (false, false, true, true, true, false) 0.9, 0.1;
  (true, false, true, true, true, false) 0.9, 0.1;
  (false, true, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, false, true) 0.9, 0.1;
  (true, true, false, false, false, true) 0.9, 0.1;
  (false, false, true, false, false, true) 0.9, 0.1;
  (true, false, true, false, false, true) 0.9, 0.1;
  (false, true, true, false, false, true) 0.9, 0.1;
  (true, true, true, false, false, true) 0.9, 0.1;
  (false, false, false, true, false, true) 0.9, 0.1;
  (true, false, false, true, false, true) 0.9, 0.1;
  (false, true, false, true, false, true) 0.9, 0.1;
  (true, true, false, true, false, true) 0.9, 0.1;
  (false, false, true, true, false, true) 0.9, 0.1;
  (true, false, true, true, false, true) 0.9, 0.1;
  (false, true, true, true, false, true) 0.9, 0.1;
  (true, true, true, true, false, true) 0.9, 0.1;
  (false, false, false, false, true, true) 0.9, 0.1;
  (true, false, false, false, true, true) 0.9, 0.1;
  (false, true, false, false, true, true) 0.9, 0.1;
  (true, true, false, false, true, true) 0.9, 0.1;
  (false, false, true, false, true, true) 0.9, 0.1;
  (true, false, true, false, true, true) 0.9, 0.1;
  (false, true, true, false, true, true) 0.9, 0.1;
  (true, true, true, false, true, true) 0.9, 0.1;
  (false, false, false, true, true, true) 0.9, 0.1;
  (true, false, false, true, true, true) 0.9, 0.1;
  (false, true, false, true, true, true) 0.9, 0.1;
  (true, true, false, true, true, true) 0.9, 0.1;
  (false, false, true, true, true, true) 0.9, 0.1;
  (true, false, true, true, true, true) 0.9, 0.1;
  (false, true, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true, true) 0.00009, 0.99991;
}
probability ( VECTOR44 ) {
  table 0.5, 0.5;
}
probability ( SNode_75 | SNode_4, GOAL_72, SNode_73, VECTOR44 ) {
  (false, false, false, false) 0.9, 0.1;
  (true, false, false, false) 0.9, 0.1;
  (false, true, false, false) 0.9, 0.1;
  (true, true, false, false) 0.9, 0.1;
  (false, false, true, false) 0.9, 0.1;
  (true, false, true, false) 0.9, 0.1;
  (false, true, true, false) 0.9, 0.1;
  (true, true, true, false) 0.9, 0.1;
  (false, false, false, true) 0.9, 0.1;
  (true, false, false, true) 0.9, 0.1;
  (false, true, false, true) 0.9, 0.1;
  (true, true, false, true) 0.9, 0.1;
  (false, false, true, true) 0.9, 0.1;
  (true, false, true, true) 0.9, 0.1;
  (false, true, true, true) 0.9, 0.1;
  (true, true, true, true) 0.00009, 0.99991;
}
probability ( EQUATION28 ) {
  table 0.6, 0.4;
}
probability ( GOAL_79 | SNode_74, SNode_75, EQUATION28 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( RApp5 | VECTOR27, GOAL_79 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( GOAL_80 | SNode_75, EQUATION28 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( RApp6 | COMPO16, GOAL_80 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( GOAL_81 | RApp5, RApp6 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.0, 1.0;
  (false, true) 0.0, 1.0;
  (true, true) 0.0, 1.0;
}
probability ( TRY25 ) {
  table 0.1, 0.9;
}
probability ( TRY24 | TRY25 ) {
  (false) 0.95, 0.05;
  (true) 0.0, 1.0;
}
probability ( GOAL_83 | GOAL_81, TRY24 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( CHOOSE47 ) {
  table 0.5, 0.5;
}
probability ( GOAL_84 | GOAL_83, CHOOSE47 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SYSTEM46 ) {
  table 0.5, 0.5;
}
probability ( SNode_86 | GOAL_84, SYSTEM46 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( NEWTONS45 ) {
  table 0.5, 0.5;
}
probability ( SNode_156 | SNode_86, NEWTONS45 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( DEFINE23 ) {
  table 0.5, 0.5;
}
probability ( GOAL_98 | GOAL_83, SNode_156, DEFINE23 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY22 ) {
  table 0.5, 0.5;
}
probability ( SNode_37 | GOAL_98, IDENTIFY22 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( TRY26 | TRY25 ) {
  (false) 0.9, 0.1;
  (true) 0.0, 1.0;
}
probability ( SNode_38 | SNode_37, VAR20 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_40 | SNode_38, VALUE3 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( SNode_44 | SNode_43, VAR20 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_46 | SNode_44, VALUE3 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( NULL48 ) {
  table 0.5, 0.5;
}
probability ( SNode_65 | SNode_29, GOAL_63, SNode_64, NULL48 ) {
  (false, false, false, false) 0.9, 0.1;
  (true, false, false, false) 0.9, 0.1;
  (false, true, false, false) 0.9, 0.1;
  (true, true, false, false) 0.9, 0.1;
  (false, false, true, false) 0.9, 0.1;
  (true, false, true, false) 0.9, 0.1;
  (false, true, true, false) 0.9, 0.1;
  (true, true, true, false) 0.9, 0.1;
  (false, false, false, true) 0.9, 0.1;
  (true, false, false, true) 0.9, 0.1;
  (false, true, false, true) 0.9, 0.1;
  (true, true, false, true) 0.9, 0.1;
  (false, false, true, true) 0.9, 0.1;
  (true, false, true, true) 0.9, 0.1;
  (false, true, true, true) 0.9, 0.1;
  (true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_68 | GOAL_66, SNode_67, VECTOR44 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( SNode_71 | GOAL_69, SNode_70, VECTOR44 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( FIND49 ) {
  table 0.5, 0.5;
}
probability ( GOAL_87 | GOAL_83, SNode_156, FIND49 ) {
  (false, false, false) 0.7, 0.3;
  (true, false, false) 0.7, 0.3;
  (false, true, false) 0.7, 0.3;
  (true, true, false) 0.7, 0.3;
  (false, false, true) 0.7, 0.3;
  (true, false, true) 0.7, 0.3;
  (false, true, true) 0.7, 0.3;
  (true, true, true) 0.00007, 0.99993;
}
probability ( NORMAL50 ) {
  table 0.5, 0.5;
}
probability ( SNode_88 | SNode_25, GOAL_87, NORMAL50 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( STRAT_90 ) {
  table 0.5, 0.5;
}
probability ( NORMAL52 ) {
  table 0.646, 0.354;
}
probability ( INCLINE51 | NORMAL52 ) {
  (false) 1.0, 0.0;
  (true) 0.0, 1.0;
}
probability ( SNode_91 | SNode_88, SNode_12, SNode_13, STRAT_90, INCLINE51 ) {
  (false, false, false, SNode_92_1, false) 0.8, 0.2;
  (true, false, false, SNode_92_1, false) 0.8, 0.2;
  (false, true, false, SNode_92_1, false) 0.8, 0.2;
  (true, true, false, SNode_92_1, false) 0.8, 0.2;
  (false, false, true, SNode_92_1, false) 0.8, 0.2;
  (true, false, true, SNode_92_1, false) 0.8, 0.2;
  (false, true, true, SNode_92_1, false) 0.8, 0.2;
  (true, true, true, SNode_92_1, false) 0.8, 0.2;
  (false, false, false, SNode_91_2, false) 0.8, 0.2;
  (true, false, false, SNode_91_2, false) 0.8, 0.2;
  (false, true, false, SNode_91_2, false) 0.8, 0.2;
  (true, true, false, SNode_91_2, false) 0.8, 0.2;
  (false, false, true, SNode_91_2, false) 0.8, 0.2;
  (true, false, true, SNode_91_2, false) 0.8, 0.2;
  (false, true, true, SNode_91_2, false) 0.8, 0.2;
  (true, true, true, SNode_91_2, false) 0.8, 0.2;
  (false, false, false, SNode_92_1, true) 0.8, 0.2;
  (true, false, false, SNode_92_1, true) 0.8, 0.2;
  (false, true, false, SNode_92_1, true) 0.8, 0.2;
  (true, true, false, SNode_92_1, true) 0.8, 0.2;
  (false, false, true, SNode_92_1, true) 0.8, 0.2;
  (true, false, true, SNode_92_1, true) 0.8, 0.2;
  (false, true, true, SNode_92_1, true) 0.8, 0.2;
  (true, true, true, SNode_92_1, true) 0.8, 0.2;
  (false, false, false, SNode_91_2, true) 0.8, 0.2;
  (true, false, false, SNode_91_2, true) 0.8, 0.2;
  (false, true, false, SNode_91_2, true) 0.8, 0.2;
  (true, true, false, SNode_91_2, true) 0.8, 0.2;
  (false, false, true, SNode_91_2, true) 0.8, 0.2;
  (true, false, true, SNode_91_2, true) 0.8, 0.2;
  (false, true, true, SNode_91_2, true) 0.8, 0.2;
  (true, true, true, SNode_91_2, true) 0.00008, 0.99992;
}
probability ( HORIZ53 | NORMAL52 ) {
  (false) 0.8, 0.2;
  (true) 0.0, 1.0;
}
probability ( BUGGY54 | NORMAL52 ) {
  (false) 0.2, 0.8;
  (true) 1.0, 0.0;
}
probability ( SNode_92 | SNode_12, STRAT_90, BUGGY54 ) {
  (false, SNode_92_1, false) 0.8, 0.2;
  (true, SNode_92_1, false) 0.8, 0.2;
  (false, SNode_91_2, false) 0.8, 0.2;
  (true, SNode_91_2, false) 0.8, 0.2;
  (false, SNode_92_1, true) 0.8, 0.2;
  (true, SNode_92_1, true) 0.00008, 0.99992;
  (false, SNode_91_2, true) 0.8, 0.2;
  (true, SNode_91_2, true) 0.8, 0.2;
}
probability ( IDENTIFY55 ) {
  table 0.5, 0.5;
}
probability ( SNode_93 | GOAL_87, SNode_88, IDENTIFY55 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( WEIGHT56 ) {
  table 0.3, 0.7;
}
probability ( SNode_94 | SNode_16, SNode_33, GOAL_87, WEIGHT56 ) {
  (false, false, false, false) 0.9, 0.1;
  (true, false, false, false) 0.9, 0.1;
  (false, true, false, false) 0.9, 0.1;
  (true, true, false, false) 0.9, 0.1;
  (false, false, true, false) 0.9, 0.1;
  (true, false, true, false) 0.9, 0.1;
  (false, true, true, false) 0.9, 0.1;
  (true, true, true, false) 0.9, 0.1;
  (false, false, false, true) 0.9, 0.1;
  (true, false, false, true) 0.9, 0.1;
  (false, true, false, true) 0.9, 0.1;
  (true, true, false, true) 0.9, 0.1;
  (false, false, true, true) 0.9, 0.1;
  (true, false, true, true) 0.9, 0.1;
  (false, true, true, true) 0.9, 0.1;
  (true, true, true, true) 0.00009, 0.99991;
}
probability ( WEIGHT57 ) {
  table 0.3, 0.7;
}
probability ( SNode_95 | SNode_94, WEIGHT57 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_97 | GOAL_87, SNode_94, IDENTIFY55 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( FIND58 ) {
  table 0.7, 0.3;
}
probability ( GOAL_99 | GOAL_98, FIND58 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( IDENTIFY59 ) {
  table 0.5, 0.5;
}
probability ( SNode_100 | GOAL_98, IDENTIFY59 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( FORCE60 ) {
  table 0.2, 0.8;
}
probability ( SNode_102 | GOAL_87, SNode_88, SNode_94, FORCE60 ) {
  (false, false, false, false) 0.9, 0.1;
  (true, false, false, false) 0.9, 0.1;
  (false, true, false, false) 0.9, 0.1;
  (true, true, false, false) 0.9, 0.1;
  (false, false, true, false) 0.9, 0.1;
  (true, false, true, false) 0.9, 0.1;
  (false, true, true, false) 0.9, 0.1;
  (true, true, true, false) 0.9, 0.1;
  (false, false, false, true) 0.9, 0.1;
  (true, false, false, true) 0.9, 0.1;
  (false, true, false, true) 0.9, 0.1;
  (true, true, false, true) 0.9, 0.1;
  (false, false, true, true) 0.9, 0.1;
  (true, false, true, true) 0.9, 0.1;
  (false, true, true, true) 0.9, 0.1;
  (true, true, true, true) 0.00009, 0.99991;
}
probability ( APPLY61 ) {
  table 0.5, 0.5;
}
probability ( GOAL_103 | GOAL_83, SNode_102, APPLY61 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( CHOOSE62 ) {
  table 0.5, 0.5;
}
probability ( GOAL_104 | GOAL_103, CHOOSE62 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_106 | GOAL_104, MAXIMIZE34 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_152 | SNode_106, AXIS33 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( WRITE63 ) {
  table 0.5, 0.5;
}
probability ( GOAL_107 | GOAL_103, SNode_152, WRITE63 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( WRITE64 ) {
  table 0.5, 0.5;
}
probability ( GOAL_108 | GOAL_107, WRITE64 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL_109 | GOAL_107, WRITE64 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL65 ) {
  table 0.5, 0.5;
}
probability ( GOAL_110 | GOAL_109, GOAL65 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL66 ) {
  table 0.6, 0.4;
}
probability ( GOAL_111 | GOAL_109, GOAL66 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( NEED67 ) {
  table 0.5, 0.5;
}
probability ( RApp7 | NEED67, GOAL_109 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( RApp8 | NEED36, GOAL_111 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( SNode_112 | RApp7, RApp8 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.0, 1.0;
  (false, true) 0.0, 1.0;
  (true, true) 0.0, 1.0;
}
probability ( GOAL68 ) {
  table 0.5, 0.5;
}
probability ( GOAL_113 | GOAL_110, GOAL68 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL_114 | GOAL_110, GOAL68 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_115 | GOAL_114, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( VECTOR69 ) {
  table 0.7, 0.3;
}
probability ( SNode_116 | SNode_95, SNode_97, GOAL_114, SNode_115, VECTOR69 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_117 | GOAL_113, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( VECTOR70 ) {
  table 0.1, 0.9;
}
probability ( SNode_118 | SNode_91, GOAL_113, VECTOR70 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( EQUAL71 ) {
  table 0.4, 0.6;
}
probability ( SNode_119 | SNode_93, SNode_117, SNode_118, EQUAL71 ) {
  (false, false, false, false) 0.9, 0.1;
  (true, false, false, false) 0.9, 0.1;
  (false, true, false, false) 0.9, 0.1;
  (true, true, false, false) 0.9, 0.1;
  (false, false, true, false) 0.9, 0.1;
  (true, false, true, false) 0.9, 0.1;
  (false, true, true, false) 0.9, 0.1;
  (true, true, true, false) 0.9, 0.1;
  (false, false, false, true) 0.9, 0.1;
  (true, false, false, true) 0.9, 0.1;
  (false, true, false, true) 0.9, 0.1;
  (true, true, false, true) 0.9, 0.1;
  (false, false, true, true) 0.9, 0.1;
  (true, false, true, true) 0.9, 0.1;
  (false, true, true, true) 0.9, 0.1;
  (true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_120 | SNode_92, SNode_93, GOAL_113, SNode_117, VECTOR69 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( GOAL72 ) {
  table 0.5, 0.5;
}
probability ( GOAL_121 | GOAL_109, GOAL72 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_122 | GOAL_121, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( VECTOR73 ) {
  table 0.5, 0.5;
}
probability ( SNode_123 | SNode_4, SNode_100, GOAL_121, SNode_122, VECTOR73 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( NEWTONS74 ) {
  table 0.5, 0.5;
}
probability ( SNode_124 | SNode_37, GOAL_109, SNode_112, SNode_122, NEWTONS74 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SUM75 ) {
  table 0.5, 0.5;
}
probability ( SNode_125 | GOAL_109, SNode_112, SUM75 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( GOAL_126 | GOAL_108, GOAL65 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL_127 | GOAL_108, GOAL66 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( RApp9 | NEED67, GOAL_108 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( RApp10 | NEED36, GOAL_127 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( SNode_128 | RApp9, RApp10 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.0, 1.0;
  (false, true) 0.0, 1.0;
  (true, true) 0.0, 1.0;
}
probability ( GOAL_129 | GOAL_126, GOAL68 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( GOAL_130 | GOAL_126, GOAL68 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_131 | GOAL_130, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_132 | SNode_95, SNode_97, GOAL_130, SNode_131, VECTOR69 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_133 | GOAL_129, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_134 | SNode_91, SNode_93, GOAL_129, SNode_133, VECTOR73 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_135 | SNode_92, SNode_93, GOAL_129, SNode_133, VECTOR69 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_154 | GOAL_121, NEED36 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_136 | SNode_37, GOAL_108, SNode_128, SNode_154, NEWTONS74 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}
probability ( SNode_137 | GOAL_108, SNode_128, SUM75 ) {
  (false, false, false) 0.9, 0.1;
  (true, false, false) 0.9, 0.1;
  (false, true, false) 0.9, 0.1;
  (true, true, false) 0.9, 0.1;
  (false, false, true) 0.9, 0.1;
  (true, false, true) 0.9, 0.1;
  (false, true, true) 0.9, 0.1;
  (true, true, true) 0.00009, 0.99991;
}
probability ( GOAL_142 | SNode_116, SNode_125, EQUATION28 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( GOAL_143 | SNode_116, SNode_132, EQUATION28 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( GOAL_146 | SNode_132, SNode_137, EQUATION28 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.8, 0.2;
  (false, true, false) 0.8, 0.2;
  (true, true, false) 0.8, 0.2;
  (false, false, true) 0.8, 0.2;
  (true, false, true) 0.8, 0.2;
  (false, true, true) 0.8, 0.2;
  (true, true, true) 0.00008, 0.99992;
}
probability ( RApp11 | VECTOR27, GOAL_142 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( RApp12 | COMPO16, GOAL_143 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( RApp13 | VECTOR27, GOAL_146 ) {
  (false, false) 1.0, 0.0;
  (true, false) 1.0, 0.0;
  (false, true) 1.0, 0.0;
  (true, true) 0.0001, 0.9999;
}
probability ( GOAL_147 | RApp11, RApp12, RApp13 ) {
  (false, false, false) 0.8, 0.2;
  (true, false, false) 0.0, 1.0;
  (false, true, false) 0.0, 1.0;
  (true, true, false) 0.0, 1.0;
  (false, false, true) 0.0, 1.0;
  (true, false, true) 0.0, 1.0;
  (false, true, true) 0.0, 1.0;
  (true, true, true) 0.0, 1.0;
}
probability ( TRY76 ) {
  table 0.5, 0.5;
}
probability ( GOAL_149 | GOAL_147, TRY76 ) {
  (false, false) 0.7, 0.3;
  (true, false) 0.7, 0.3;
  (false, true) 0.7, 0.3;
  (true, true) 0.00007, 0.99993;
}
probability ( APPLY77 ) {
  table 0.5, 0.5;
}
probability ( GOAL_150 | SNode_20, SNode_37, GOAL_149, APPLY77 ) {
  (false, false, false, false) 0.8, 0.2;
  (true, false, false, false) 0.8, 0.2;
  (false, true, false, false) 0.8, 0.2;
  (true, true, false, false) 0.8, 0.2;
  (false, false, true, false) 0.8, 0.2;
  (true, false, true, false) 0.8, 0.2;
  (false, true, true, false) 0.8, 0.2;
  (true, true, true, false) 0.8, 0.2;
  (false, false, false, true) 0.8, 0.2;
  (true, false, false, true) 0.8, 0.2;
  (false, true, false, true) 0.8, 0.2;
  (true, true, false, true) 0.8, 0.2;
  (false, false, true, true) 0.8, 0.2;
  (true, false, true, true) 0.8, 0.2;
  (false, true, true, true) 0.8, 0.2;
  (true, true, true, true) 0.00008, 0.99992;
}
probability ( GRAV78 ) {
  table 0.5, 0.5;
}
probability ( SNode_151 | GOAL_150, GRAV78 ) {
  (false, false) 0.9, 0.1;
  (true, false) 0.9, 0.1;
  (false, true) 0.9, 0.1;
  (true, true) 0.00009, 0.99991;
}
probability ( GOAL_153 | GOAL_108, GOAL72 ) {
  (false, false) 0.8, 0.2;
  (true, false) 0.8, 0.2;
  (false, true) 0.8, 0.2;
  (true, true) 0.00008, 0.99992;
}
probability ( SNode_155 | SNode_4, SNode_100, GOAL_153, SNode_154, VECTOR44 ) {
  (false, false, false, false, false) 0.9, 0.1;
  (true, false, false, false, false) 0.9, 0.1;
  (false, true, false, false, false) 0.9, 0.1;
  (true, true, false, false, false) 0.9, 0.1;
  (false, false, true, false, false) 0.9, 0.1;
  (true, false, true, false, false) 0.9, 0.1;
  (false, true, true, false, false) 0.9, 0.1;
  (true, true, true, false, false) 0.9, 0.1;
  (false, false, false, true, false) 0.9, 0.1;
  (true, false, false, true, false) 0.9, 0.1;
  (false, true, false, true, false) 0.9, 0.1;
  (true, true, false, true, false) 0.9, 0.1;
  (false, false, true, true, false) 0.9, 0.1;
  (true, false, true, true, false) 0.9, 0.1;
  (false, true, true, true, false) 0.9, 0.1;
  (true, true, true, true, false) 0.9, 0.1;
  (false, false, false, false, true) 0.9, 0.1;
  (true, false, false, false, true) 0.9, 0.1;
  (false, true, false, false, true) 0.9, 0.1;
  (true, true, false, false, true) 0.9, 0.1;
  (false, false, true, false, true) 0.9, 0.1;
  (true, false, true, false, true) 0.9, 0.1;
  (false, true, true, false, true) 0.9, 0.1;
  (true, true, true, false, true) 0.9, 0.1;
  (false, false, false, true, true) 0.9, 0.1;
  (true, false, false, true, true) 0.9, 0.1;
  (false, true, false, true, true) 0.9, 0.1;
  (true, true, false, true, true) 0.9, 0.1;
  (false, false, true, true, true) 0.9, 0.1;
  (true, false, true, true, true) 0.9, 0.1;
  (false, true, true, true, true) 0.9, 0.1;
  (true, true, true, true, true) 0.00009, 0.99991;
}


================================================
FILE: data/asia.bif
================================================
network unknown {
}
variable asia {
  type discrete [ 2 ] { yes, no };
}
variable tub {
  type discrete [ 2 ] { yes, no };
}
variable smoke {
  type discrete [ 2 ] { yes, no };
}
variable lung {
  type discrete [ 2 ] { yes, no };
}
variable bronc {
  type discrete [ 2 ] { yes, no };
}
variable either {
  type discrete [ 2 ] { yes, no };
}
variable xray {
  type discrete [ 2 ] { yes, no };
}
variable dysp {
  type discrete [ 2 ] { yes, no };
}
probability ( asia ) {
  table 0.01, 0.99;
}
probability ( tub | asia ) {
  (yes) 0.05, 0.95;
  (no) 0.01, 0.99;
}
probability ( smoke ) {
  table 0.5, 0.5;
}
probability ( lung | smoke ) {
  (yes) 0.1, 0.9;
  (no) 0.01, 0.99;
}
probability ( bronc | smoke ) {
  (yes) 0.6, 0.4;
  (no) 0.3, 0.7;
}
probability ( either | lung, tub ) {
  (yes, yes) 1.0, 0.0;
  (no, yes) 1.0, 0.0;
  (yes, no) 1.0, 0.0;
  (no, no) 0.0, 1.0;
}
probability ( xray | either ) {
  (yes) 0.98, 0.02;
  (no) 0.05, 0.95;
}
probability ( dysp | bronc, either ) {
  (yes, yes) 0.9, 0.1;
  (no, yes) 0.7, 0.3;
  (yes, no) 0.8, 0.2;
  (no, no) 0.1, 0.9;
}


================================================
FILE: data/bde_test.bn
================================================
{
    "V": ["V1", "V2", "V3", "V4", "V5"],
    "E": {
        "V1" : [],
        "V2" : [],
        "V3" : ["V2","V4","V5"],
        "V4" : [],
        "V5" : []
    },
    "F": {
        "V1": {
            "values": ["No", "Yes"],
            "parents": [],
            "cpt": [0.296, 0.704]
        },

        "V2": {
            "values": ["No", "Yes"],
            "parents": ["V3"],
            "cpt": [0.667, 0.333,0.897,0.103]
        },

        "V3": {
            "values": ["No","Yes"],
            "parents": [],
            "cpt": [0.012, 0.988]
        },

        "V4": {
            "values": ["No","Yes"],
            "parents": ["V3"],
            "cpt": [0.75,0.25,0.182,0.818]
        },

        "V5": {
            "values": ["No", "Yes"],
            "parents": ["V3"],
            "cpt":  [0.75,0.25,0.31,0.689]
        }
    }
}

================================================
FILE: data/cancer.bif
================================================
network unknown {
}
variable Pollution {
  type discrete [ 2 ] { low, high };
}
variable Smoker {
  type discrete [ 2 ] { True, False };
}
variable Cancer {
  type discrete [ 2 ] { True, False };
}
variable Xray {
  type discrete [ 2 ] { positive, negative };
}
variable Dyspnoea {
  type discrete [ 2 ] { True, False };
}
probability ( Pollution ) {
  table 0.9, 0.1;
}
probability ( Smoker ) {
  table 0.3, 0.7;
}
probability ( Cancer | Pollution, Smoker ) {
  (low, True) 0.03, 0.97;
  (high, True) 0.05, 0.95;
  (low, False) 0.001, 0.999;
  (high, False) 0.02, 0.98;
}
probability ( Xray | Cancer ) {
  (True) 0.9, 0.1;
  (False) 0.2, 0.8;
}
probability ( Dyspnoea | Cancer ) {
  (True) 0.65, 0.35;
  (False) 0.3, 0.7;
}


================================================
FILE: data/cmu.bn
================================================
{
    "V": ["Burglary", "Earthquake", "Alarm", "JohnCalls", "MaryCalls"],
    "E": {
        "Burglary" : ["Alarm"],
        "Earthquake" : ["Alarm"],
        "Alarm" : [ "JohnCalls","MaryCalls"],
        "JohnCalls" : [],
        "MaryCalls" : []
    },
    "F": {
        "Burglary": {
            "values": ["No", "Yes"],
            "parents": [],
            "cpt": [0.999,0.001]
        },

        "Earthquake": {
            "values": ["No", "Yes"],
            "parents": [],
            "cpt": [0.998,0.002]
        },

        "Alarm": {
            "values": ["No","Yes"],
            "parents": ["Earthquake","Burglary"],
            "cpt": [0.999,0.001,0.71,0.29,0.06,0.94,0.05,0.95]
        },

        "JohnCalls": {
            "values": ["No","Yes"],
            "parents": ["Alarm"],
            "cpt": [0.95,0.05,0.1,0.9]
        },

        "MaryCalls": {
            "values": ["No", "Yes"],
            "parents": ["Alarm"],
            "cpt":  [0.99,0.01,0.3,0.7]
        }
    }
}

================================================
FILE: data/earthquake.bn
================================================
{
    "V": ["Burglary", "Earthquake", "Alarm", "JohnCalls", "MaryCalls"],
    "E": {
        "Burglary" : ["Alarm"],
        "Earthquake" : ["Alarm"],
        "Alarm" : [ "JohnCalls","MaryCalls"],
        "JohnCalls" : [],
        "MaryCalls" : []
    },
    "F": {
        "Burglary": {
            "values": ["No", "Yes"],
            "parents": [],
            "cpt": [0.99,0.01]
        },

        "Earthquake": {
            "values": ["No", "Yes"],
            "parents": [],
            "cpt": [0.98,0.02]
        },

        "Alarm": {
            "values": ["No","Yes"],
            "parents": ["Earthquake","Burglary"],
            "cpt": [0.999,0.001,0.71,0.29,0.06,0.94,0.05,0.95]
        },

        "JohnCalls": {
            "values": ["No","Yes"],
            "parents": ["Alarm"],
            "cpt": [0.95,0.05,0.1,0.9]
        },

        "MaryCalls": {
            "values": ["No", "Yes"],
            "parents": ["Alarm"],
            "cpt":  [0.99,0.01,0.3,0.7]
        }
    }
}

================================================
FILE: data/flags/README.txt
================================================
Flags Dataset
=============

This dataset contains data about nations and their national flags. The multi-label 
classification task is to predict the colors that appear on the flags.

Dataset characteristics:
------------------------

instances = 194 

attributes = 19 (9 nominal and 10 numeric)

labels = 7  (L = {red, green, blue, yellow, white, black, orange})

label cardinality = 3.39 

domain = images


Citation Request:
-----------------

Please cite the following: 

@inproceedings{gpf13,
 author = {Eduardo Corr\^{e}a Gon\c{c}alves and Alexandre Plastino and Alex A. Freitas},
 title = {A Genetic Algorithm for Optimizing the Label Ordering in Multi-Label Classifier Chains},
 booktitle = {Proceedings of the 25th IEEE International Conference on Tools with Artificial Intelligence},
 series = {ICTAI'13},
 address = {Washington, D.C., USA},
 month = {November},
 pages = {469--476},
 year = {2013}
}


The original data can be found at the UCI repository 
(http://archive.ics.uci.edu/ml/machine-learning-databases/flags/). 




================================================
FILE: data/flags/flags-test.arff
================================================
@relation flags_ml

@attribute landmass {1,2,3,4,5,6}
@attribute zone {1,2,3,4}
@attribute area numeric
@attribute population numeric
@attribute language {1,2,3,4,5,6,7,8,9,10}
@attribute religion {0,1,2,3,4,5,6,7}
@attribute bars numeric
@attribute stripes numeric
@attribute colours numeric
@attribute circles numeric
@attribute crosses numeric
@attribute saltires numeric
@attribute quarters numeric
@attribute sunstars numeric
@attribute crescent {0,1}
@attribute triangle {0,1}
@attribute icon {0,1}
@attribute animate {0,1}
@attribute text {0,1}
@attribute red {0,1}
@attribute green {0,1}
@attribute blue {0,1}
@attribute yellow {0,1}
@attribute white {0,1}
@attribute black {0,1}
@attribute orange {0,1}

@data
4,1,1001,47,8,2,0,3,4,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0
2,3,178,3,2,0,0,9,3,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0
2,4,76,2,2,0,0,0,3,0,0,0,4,2,0,0,0,0,0,1,0,1,0,1,0,0
6,2,0,0,1,1,0,0,5,0,1,1,1,9,0,0,0,0,0,1,0,1,1,1,0,0
5,1,47,1,10,3,0,0,4,4,0,0,0,0,0,0,0,1,0,1,0,0,0,1,1,1
1,4,0,0,1,1,3,0,3,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,1,0
5,1,121,18,10,6,0,5,3,1,0,0,0,1,0,0,0,0,0,1,0,1,0,1,0,0
3,1,301,57,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
5,1,0,0,10,2,0,0,3,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0
4,1,2388,20,8,2,2,0,3,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1,0,0
4,1,1267,5,3,2,0,3,3,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1
5,1,435,14,8,2,0,3,4,0,0,0,0,3,0,0,0,0,0,1,1,0,0,1,1,0
3,4,92,10,6,0,0,0,5,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0
4,1,583,17,10,5,0,5,4,1,0,0,0,0,0,0,1,0,0,1,1,0,0,1,1,0
4,2,783,12,10,5,0,5,5,0,0,0,0,1,0,1,1,0,0,1,1,0,1,1,1,0
5,1,2150,9,8,2,0,0,2,0,0,0,0,0,0,0,1,0,1,0,1,0,0,1,0,0
6,2,30,0,1,1,0,0,4,0,0,0,0,5,0,1,0,0,0,0,1,1,1,1,0,0
2,4,1139,28,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
5,1,6,0,10,2,0,0,4,0,0,0,0,0,0,1,1,1,1,1,0,0,1,1,1,0
4,2,28,4,10,5,0,0,3,1,0,1,0,3,0,0,0,0,0,1,1,0,0,1,0,0
4,2,2,1,1,4,0,4,4,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0
3,1,337,5,9,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,2,1221,29,6,1,0,3,5,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,1
6,1,0,0,10,1,0,0,3,0,0,0,0,1,0,0,1,0,0,0,0,1,0,1,0,0
1,4,0,0,1,1,0,0,4,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0
1,4,0,0,1,1,0,0,6,1,0,0,0,10,0,0,0,1,0,1,1,1,1,1,1,0
3,1,237,22,6,6,3,0,7,0,0,0,0,2,0,0,1,1,1,1,1,1,1,1,0,1
6,3,4,0,3,0,0,3,5,1,0,0,0,1,0,0,1,0,0,1,0,1,1,1,1,0
4,1,113,3,3,5,0,0,2,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0
6,1,1,0,10,1,0,0,2,0,0,0,0,4,0,0,0,0,0,0,0,1,0,1,0,0
3,1,0,0,4,0,0,2,3,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0
2,4,215,1,1,4,0,0,5,0,0,0,0,0,0,1,0,0,0,1,1,0,1,1,1,0
1,4,0,0,1,1,0,1,5,0,0,0,0,1,0,1,0,0,0,1,0,1,1,1,1,0
4,4,239,14,1,5,0,3,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,1,0
3,1,41,6,4,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,2,600,1,10,5,0,5,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0
6,3,0,0,1,1,0,0,4,1,1,1,1,15,0,0,0,0,0,1,0,1,0,1,0,0
5,1,11,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1
6,2,15,0,6,1,0,0,4,0,0,0,0,0,0,1,0,1,0,1,1,0,1,0,1,0
5,1,1,3,7,3,0,2,2,0,0,0,0,5,1,0,0,0,0,1,0,0,0,1,0,0
3,1,313,36,5,6,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
1,4,9976,24,1,1,2,0,2,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0
5,1,66,15,10,3,2,0,4,0,0,0,0,0,0,0,1,1,0,0,1,0,1,0,0,1
3,1,0,0,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
3,1,0,0,6,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
1,4,0,0,1,1,0,0,7,0,2,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0
4,1,22,0,3,2,0,0,4,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,0
4,2,1247,7,10,5,0,2,3,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,1,0
5,1,781,45,9,2,0,0,2,0,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0
3,1,43,5,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
3,1,450,8,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0
4,1,623,2,10,5,1,0,5,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0
1,4,9,3,2,0,0,5,3,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0
4,2,2,0,3,2,0,0,2,0,0,0,0,4,1,0,0,0,0,0,1,0,0,1,0,0
4,2,26,5,10,5,3,0,4,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,1,0
1,4,0,0,6,1,0,1,3,0,0,0,0,6,0,0,0,0,0,1,0,1,0,1,0,0
3,1,84,8,4,0,0,3,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,2,30,1,10,5,2,0,4,0,0,0,0,0,0,0,1,0,0,1,1,1,0,1,0,0
5,1,333,13,10,2,0,14,4,0,0,0,1,1,1,0,0,0,0,1,0,1,1,1,0,0
3,1,324,4,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,4,1240,7,3,2,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
6,2,463,3,1,5,0,0,4,0,0,0,0,5,0,1,0,1,0,1,0,0,1,1,1,0
3,1,31,10,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0
1,4,128,3,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
2,4,5,1,1,1,0,0,3,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,1,0


================================================
FILE: data/flags/flags-train.arff
================================================
@relation flags_ml

@attribute landmass {1,2,3,4,5,6}
@attribute zone {1,2,3,4}
@attribute area numeric
@attribute population numeric
@attribute language {1,2,3,4,5,6,7,8,9,10}
@attribute religion {0,1,2,3,4,5,6,7}
@attribute bars numeric
@attribute stripes numeric
@attribute colours numeric
@attribute circles numeric
@attribute crosses numeric
@attribute saltires numeric
@attribute quarters numeric
@attribute sunstars numeric
@attribute crescent {0,1}
@attribute triangle {0,1}
@attribute icon {0,1}
@attribute animate {0,1}
@attribute text {0,1}
@attribute red {0,1}
@attribute green {0,1}
@attribute blue {0,1}
@attribute yellow {0,1}
@attribute white {0,1}
@attribute black {0,1}
@attribute orange {0,1}

@data
4,1,164,7,8,2,0,0,2,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0
4,4,111,1,10,5,0,11,3,0,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
1,4,0,0,1,1,0,0,3,1,0,0,0,7,0,1,0,1,0,1,1,0,1,0,0,0
1,4,109,8,2,0,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,4,10,1,1,5,0,5,4,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0
1,4,2176,0,6,1,0,0,2,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
2,3,12,0,1,1,0,0,6,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,0
5,1,3268,684,6,4,0,3,4,1,0,0,0,0,0,0,1,0,0,0,1,1,0,1,0,1
4,4,1031,2,8,2,0,0,2,0,0,0,0,1,1,0,0,0,0,0,1,0,1,0,0,0
2,3,8512,119,6,0,0,0,4,1,0,0,0,22,0,0,0,0,1,0,1,1,1,1,0,0
6,2,1,0,10,1,0,0,2,0,1,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0
3,4,70,3,1,0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1
4,4,196,6,3,2,3,0,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
1,4,0,0,1,1,0,1,3,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,1
6,1,0,0,1,1,0,0,4,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,0,0
5,1,333,60,10,6,0,0,2,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0
4,1,1760,3,8,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0
6,3,3,0,1,1,0,0,3,0,0,0,1,5,0,0,0,0,0,1,0,1,0,1,0,0
1,4,0,0,1,1,0,0,5,0,0,0,0,2,0,1,0,0,0,1,1,0,1,1,1,0
5,1,195,9,8,2,0,3,4,0,0,0,0,1,0,0,0,0,0,1,1,0,0,1,1,0
1,4,28,6,3,0,2,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0
3,1,249,61,4,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0
4,2,945,18,10,5,0,0,4,0,0,0,0,0,0,1,0,0,0,0,1,1,1,0,1,0
4,1,57,2,3,7,0,5,4,0,0,0,1,1,0,0,0,0,0,1,1,0,1,1,0,0
3,1,128,15,5,6,0,0,3,0,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,0
3,4,505,38,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0
4,2,342,2,10,5,0,0,3,0,0,0,0,1,0,0,1,1,0,1,1,0,1,0,0,0
3,1,132,10,6,1,0,9,2,0,1,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0
5,1,185,10,8,2,0,3,4,0,0,0,0,2,0,0,0,0,0,1,1,0,0,1,1,0
6,2,268,2,1,1,0,0,3,0,1,1,1,4,0,0,0,0,0,1,0,1,0,1,0,0
4,2,905,28,10,5,0,0,4,1,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,1
5,1,804,84,6,2,1,0,2,0,0,0,0,1,1,0,0,0,0,0,1,0,0,1,0,0
4,2,753,6,10,5,3,0,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,1,1
2,4,91,0,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
3,1,547,54,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,4,4,0,6,0,1,2,5,0,0,0,0,1,0,0,0,1,0,1,1,0,1,0,1,1
1,4,9363,231,1,1,0,13,3,0,0,0,1,50,0,0,0,0,0,1,0,1,0,1,0,0
4,1,474,8,3,1,3,0,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
5,1,514,49,10,3,0,5,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
1,4,0,0,1,1,0,0,6,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0
5,1,181,6,10,3,0,0,2,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0
4,4,246,6,3,2,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
5,1,98,2,8,2,0,3,4,0,0,0,0,1,0,1,0,0,0,1,1,0,0,1,1,0
3,1,256,22,6,6,0,3,4,0,0,0,0,1,0,0,0,0,0,1,0,1,1,1,0,0
5,1,212,1,8,2,0,2,3,0,0,0,0,0,0,0,1,0,0,1,1,0,0,1,0,0
3,4,103,0,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,1,637,5,10,2,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0
3,1,108,17,4,6,0,3,3,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,1,0
4,2,268,1,10,5,0,3,3,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0
5,1,1566,2,10,6,3,0,3,2,0,0,0,1,1,1,1,0,0,1,0,1,1,0,0,0
1,4,0,0,1,1,0,0,6,0,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,1
4,4,323,7,3,5,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
5,1,372,118,9,7,0,0,2,1,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0
3,1,0,0,3,0,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,1,1284,4,3,5,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
4,1,925,56,10,2,3,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0
3,4,245,56,1,1,0,0,3,0,1,1,0,0,0,0,0,0,0,1,0,1,0,1,0,0
3,4,1,0,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,3,757,11,2,0,0,2,3,0,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
6,1,300,48,10,0,0,0,4,0,0,0,0,4,0,1,0,0,0,1,0,1,1,1,0,0
3,1,93,11,9,6,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
4,1,2506,20,8,2,0,3,4,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,1,0
5,1,36,18,7,3,0,0,3,1,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
5,1,99,39,10,7,0,0,4,1,0,0,0,0,0,0,1,0,0,1,0,1,0,1,1,0
4,4,72,3,1,5,0,3,3,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0
5,1,288,2,8,2,0,3,4,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,1,0
1,4,21,5,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,1,28,0,10,5,0,3,4,0,0,0,0,0,0,1,0,0,0,1,1,1,0,1,0,0
2,3,2777,28,2,0,0,3,3,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0
1,4,0,0,1,1,5,0,4,0,0,0,0,0,0,0,1,1,1,0,1,1,1,1,0,0
4,4,274,7,3,5,0,2,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
3,1,41,14,6,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,3,2777,28,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
1,4,112,4,2,0,0,3,2,0,0,0,0,5,0,0,0,0,0,0,0,1,0,1,0,0
6,3,0,0,1,1,0,0,4,1,1,1,1,5,0,0,0,0,0,1,0,1,1,1,0,0
5,1,84,1,8,2,1,3,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0
4,3,0,0,1,1,0,0,7,0,1,1,1,0,0,0,1,0,0,1,1,1,1,1,0,1
6,2,1904,157,10,2,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,4,447,20,8,2,0,0,2,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0
4,4,36,1,6,5,1,2,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,1,0
1,4,0,0,1,1,0,0,6,1,1,1,1,4,0,0,1,1,1,1,1,1,1,1,0,1
5,1,1,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,2,118,6,10,5,0,3,3,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,1,0
6,2,0,0,10,1,0,3,3,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0
6,2,7690,15,1,1,0,0,3,0,1,1,1,6,0,0,0,0,0,1,0,1,0,1,0,0
1,4,19,0,1,1,0,3,3,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0
2,3,1099,6,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
1,4,115,10,2,6,0,5,3,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0
3,1,9,1,6,1,0,0,3,0,0,0,0,0,0,0,1,1,0,0,1,0,1,1,0,0
3,1,0,0,10,0,2,0,3,0,1,0,0,0,0,0,1,0,0,1,0,0,0,1,1,0
1,4,23,0,1,1,0,2,8,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1
4,2,391,8,10,5,0,7,5,0,0,0,0,1,0,1,1,1,0,1,1,0,1,1,1,0
6,3,0,0,1,1,0,0,5,0,0,0,0,0,0,1,1,1,0,1,0,1,1,1,0,1
5,1,1648,39,6,2,0,3,3,0,0,0,0,0,0,0,1,0,1,1,1,0,0,1,0,0
6,2,18,1,1,1,0,0,7,0,2,1,1,0,0,0,1,1,0,1,1,1,1,1,0,1
2,3,407,3,2,0,0,3,6,1,0,0,0,1,0,0,1,1,1,1,1,1,1,1,1,0
4,2,587,9,10,1,1,2,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
5,1,140,16,10,4,0,0,3,0,0,0,0,2,1,0,0,0,0,0,0,1,0,1,0,1
1,4,1973,77,2,0,3,0,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1
1,4,49,6,2,0,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
5,1,10,3,8,2,0,2,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1
3,1,0,0,6,0,2,0,4,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,1,0
5,1,236,3,10,6,0,3,3,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
1,4,0,0,1,1,0,0,6,0,1,1,1,0,0,0,1,1,0,1,1,1,1,1,0,1
4,2,17,1,10,1,0,5,7,0,0,0,0,0,0,0,1,0,0,1,0,1,1,1,1,1
2,3,1285,14,2,0,3,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,1,0,0,6,0,0,3,4,0,0,0,0,2,0,1,0,0,0,1,1,0,1,0,1,0
1,4,0,0,1,1,0,0,6,1,1,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0
5,1,143,90,6,2,0,0,2,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0
5,1,9561,1008,7,6,0,0,2,0,0,0,0,5,0,0,0,0,0,1,0,0,1,0,0,0
2,3,284,8,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
1,4,11,2,1,1,0,0,3,0,0,1,0,0,0,1,0,0,0,0,1,0,1,0,1,0
5,1,22402,274,5,6,0,0,2,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0
2,4,912,15,2,0,0,3,7,0,0,0,0,7,0,0,1,1,0,1,1,1,1,1,1,1
5,1,678,35,10,3,0,0,3,0,0,0,1,14,0,0,1,1,0,1,0,1,0,1,0,0
6,1,0,0,1,1,0,0,7,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,1
3,4,0,0,1,1,0,1,3,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0
1,4,51,2,2,0,0,5,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
3,1,29,3,6,6,0,0,3,0,0,0,0,1,0,0,0,1,0,1,0,0,1,0,1,0
3,1,3,0,4,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
5,1,1,5,7,3,0,0,6,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,1
5,1,18,2,8,2,0,3,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0
5,1,21,4,10,7,0,2,2,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0
2,4,63,0,6,1,0,5,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,0,0
4,1,236,13,10,5,0,6,5,1,0,0,0,0,0,0,0,1,0,1,0,0,1,1,1,0
3,1,111,9,5,6,0,3,5,0,0,0,0,1,0,0,1,1,0,1,1,1,1,1,0,0
4,2,0,0,1,1,0,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
5,1,648,16,10,2,0,3,5,0,0,0,0,1,0,0,1,0,0,1,1,0,1,1,1,0
4,1,1222,31,10,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0


================================================
FILE: data/flags/flags.arff
================================================
@relation flags_ml

@attribute landmass	{1, 2, 3, 4, 5, 6}
@attribute zone	{1, 2, 3, 4}
@attribute area	numeric
@attribute population numeric
@attribute language {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} 
@attribute religion {0, 1, 2, 3, 4, 5, 6, 7}
@attribute bars     numeric
@attribute stripes  numeric
@attribute colours  numeric
@attribute circles  numeric
@attribute crosses  numeric
@attribute saltires numeric
@attribute quarters numeric
@attribute sunstars numeric
@attribute crescent {0, 1}
@attribute triangle {0, 1}
@attribute icon     {0, 1}
@attribute animate  {0, 1}
@attribute text     {0, 1}
@attribute red      {0, 1}
@attribute green    {0, 1}
@attribute blue     {0, 1}
@attribute yellow   {0, 1}
@attribute white    {0, 1}
@attribute black    {0, 1}
@attribute orange   {0, 1}

@data
5,1,648,16,10,2,0,3,5,0,0,0,0,1,0,0,1,0,0,1,1,0,1,1,1,0
3,1,29,3,6,6,0,0,3,0,0,0,0,1,0,0,0,1,0,1,0,0,1,0,1,0
4,1,2388,20,8,2,2,0,3,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1,0,0
6,3,0,0,1,1,0,0,5,0,0,0,0,0,0,1,1,1,0,1,0,1,1,1,0,1
3,1,0,0,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
4,2,1247,7,10,5,0,2,3,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,1,0
1,4,0,0,1,1,0,1,3,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,1
1,4,0,0,1,1,0,1,5,0,0,0,0,1,0,1,0,0,0,1,0,1,1,1,1,0
2,3,2777,28,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
2,3,2777,28,2,0,0,3,3,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0
6,2,7690,15,1,1,0,0,3,0,1,1,1,6,0,0,0,0,0,1,0,1,0,1,0,0
3,1,84,8,4,0,0,3,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
1,4,19,0,1,1,0,3,3,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0
5,1,1,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
5,1,143,90,6,2,0,0,2,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0
1,4,0,0,1,1,3,0,3,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,1,0
3,1,31,10,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0
1,4,23,0,1,1,0,2,8,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1
4,1,113,3,3,5,0,0,2,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0
1,4,0,0,1,1,0,0,6,1,1,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0
5,1,47,1,10,3,0,0,4,4,0,0,0,0,0,0,0,1,0,1,0,0,0,1,1,1
2,3,1099,6,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
4,2,600,1,10,5,0,5,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0
2,3,8512,119,6,0,0,0,4,1,0,0,0,22,0,0,0,0,1,0,1,1,1,1,0,0
1,4,0,0,1,1,0,0,6,0,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,1
5,1,6,0,10,2,0,0,4,0,0,0,0,0,0,1,1,1,1,1,0,0,1,1,1,0
3,1,111,9,5,6,0,3,5,0,0,0,0,1,0,0,1,1,0,1,1,1,1,1,0,0
4,4,274,7,3,5,0,2,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
5,1,678,35,10,3,0,0,3,0,0,0,1,14,0,0,1,1,0,1,0,1,0,1,0,0
4,2,28,4,10,5,0,0,3,1,0,1,0,3,0,0,0,0,0,1,1,0,0,1,0,0
4,1,474,8,3,1,3,0,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
1,4,9976,24,1,1,2,0,2,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0
4,4,4,0,6,0,1,2,5,0,0,0,0,1,0,0,0,1,0,1,1,0,1,0,1,1
1,4,0,0,1,1,0,0,6,1,1,1,1,4,0,0,1,1,1,1,1,1,1,1,0,1
4,1,623,2,10,5,1,0,5,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0
4,1,1284,4,3,5,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
2,3,757,11,2,0,0,2,3,0,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
5,1,9561,1008,7,6,0,0,2,0,0,0,0,5,0,0,0,0,0,1,0,0,1,0,0,0
2,4,1139,28,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
4,2,2,0,3,2,0,0,2,0,0,0,0,4,1,0,0,0,0,0,1,0,0,1,0,0
4,2,342,2,10,5,0,0,3,0,0,0,0,1,0,0,1,1,0,1,1,0,1,0,0,0
6,3,0,0,1,1,0,0,4,1,1,1,1,15,0,0,0,0,0,1,0,1,0,1,0,0
1,4,51,2,2,0,0,5,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
1,4,115,10,2,6,0,5,3,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0
3,1,9,1,6,1,0,0,3,0,0,0,0,0,0,0,1,1,0,0,1,0,1,1,0,0
3,1,128,15,5,6,0,0,3,0,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,0
3,1,43,5,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,1,22,0,3,2,0,0,4,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,0
1,4,0,0,1,1,0,0,6,1,0,0,0,10,0,0,0,1,0,1,1,1,1,1,1,0
1,4,49,6,2,0,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,3,284,8,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
4,1,1001,47,8,2,0,3,4,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0
1,4,21,5,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,1,28,0,10,5,0,3,4,0,0,0,0,0,0,1,0,0,0,1,1,1,0,1,0,0
4,1,1222,31,10,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
3,4,1,0,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,3,12,0,1,1,0,0,6,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,0
6,2,18,1,1,1,0,0,7,0,2,1,1,0,0,0,1,1,0,1,1,1,1,1,0,1
3,1,337,5,9,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
3,1,547,54,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,4,91,0,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
6,3,4,0,3,0,0,3,5,1,0,0,0,1,0,0,1,0,0,1,0,1,1,1,1,0
4,2,268,1,10,5,0,3,3,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0
4,4,10,1,1,5,0,5,4,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0
3,1,108,17,4,6,0,3,3,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,1,0
3,1,249,61,4,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0
4,4,239,14,1,5,0,3,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,1,0
3,4,0,0,1,1,0,1,3,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0
3,1,132,10,6,1,0,9,2,0,1,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0
1,4,2176,0,6,1,0,0,2,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
1,4,0,0,1,1,0,0,3,1,0,0,0,7,0,1,0,1,0,1,1,0,1,0,0,0
6,1,0,0,1,1,0,0,7,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,1
1,4,109,8,2,0,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,4,246,6,3,2,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
4,4,36,1,6,5,1,2,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,1,0
2,4,215,1,1,4,0,0,5,0,0,0,0,0,0,1,0,0,0,1,1,0,1,1,1,0
1,4,28,6,3,0,2,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0
1,4,112,4,2,0,0,3,2,0,0,0,0,5,0,0,0,0,0,0,0,1,0,1,0,0
5,1,1,5,7,3,0,0,6,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,1
3,1,93,11,9,6,0,3,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
3,4,103,0,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
5,1,3268,684,6,4,0,3,4,1,0,0,0,0,0,0,1,0,0,0,1,1,0,1,0,1
6,2,1904,157,10,2,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
5,1,1648,39,6,2,0,3,3,0,0,0,0,0,0,0,1,0,1,1,1,0,0,1,0,0
5,1,435,14,8,2,0,3,4,0,0,0,0,3,0,0,0,0,0,1,1,0,0,1,1,0
3,4,70,3,1,0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1
5,1,21,4,10,7,0,2,2,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0
3,1,301,57,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
4,4,323,7,3,5,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
1,4,11,2,1,1,0,0,3,0,0,1,0,0,0,1,0,0,0,0,1,0,1,0,1,0
5,1,372,118,9,7,0,0,2,1,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0
5,1,98,2,8,2,0,3,4,0,0,0,0,1,0,1,0,0,0,1,1,0,0,1,1,0
5,1,181,6,10,3,0,0,2,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0
4,1,583,17,10,5,0,5,4,1,0,0,0,0,0,0,1,0,0,1,1,0,0,1,1,0
6,1,0,0,1,1,0,0,4,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,0,0
5,1,18,2,8,2,0,3,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0
5,1,236,3,10,6,0,3,3,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
5,1,10,3,8,2,0,2,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1
4,2,30,1,10,5,2,0,4,0,0,0,0,0,0,0,1,0,0,1,1,1,0,1,0,0
4,4,111,1,10,5,0,11,3,0,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
4,1,1760,3,8,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0
3,1,0,0,4,0,0,2,3,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0
3,1,3,0,4,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,2,587,9,10,1,1,2,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
4,2,118,6,10,5,0,3,3,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,1,0
5,1,333,13,10,2,0,14,4,0,0,0,1,1,1,0,0,0,0,1,0,1,1,1,0,0
5,1,0,0,10,2,0,0,3,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0
4,4,1240,7,3,2,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
3,1,0,0,10,0,2,0,3,0,1,0,0,0,0,0,1,0,0,1,0,0,0,1,1,0
6,1,0,0,10,1,0,0,3,0,0,0,0,1,0,0,1,0,0,0,0,1,0,1,0,0
4,4,1031,2,8,2,0,0,2,0,0,0,0,1,1,0,0,0,0,0,1,0,1,0,0,0
4,2,2,1,1,4,0,4,4,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0
1,4,1973,77,2,0,3,0,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1
6,1,1,0,10,1,0,0,2,0,0,0,0,4,0,0,0,0,0,0,0,1,0,1,0,0
3,1,0,0,3,0,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
5,1,1566,2,10,6,3,0,3,2,0,0,0,1,1,1,1,0,0,1,0,1,1,0,0,0
1,4,0,0,1,1,0,0,7,0,2,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0
4,4,447,20,8,2,0,0,2,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0
4,2,783,12,10,5,0,5,5,0,0,0,0,1,0,1,1,0,0,1,1,0,1,1,1,0
6,2,0,0,10,1,0,3,3,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0
5,1,140,16,10,4,0,0,3,0,0,0,0,2,1,0,0,0,0,0,0,1,0,1,0,1
3,1,41,14,6,1,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
1,4,0,0,6,1,0,1,3,0,0,0,0,6,0,0,0,0,0,1,0,1,0,1,0,0
6,2,268,2,1,1,0,0,3,0,1,1,1,4,0,0,0,0,0,1,0,1,0,1,0,0
1,4,128,3,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,1,1267,5,3,2,0,3,3,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1
4,1,925,56,10,2,3,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0
6,3,0,0,1,1,0,0,4,1,1,1,1,5,0,0,0,0,0,1,0,1,1,1,0,0
5,1,121,18,10,6,0,5,3,1,0,0,0,1,0,0,0,0,0,1,0,1,0,1,0,0
5,1,195,9,8,2,0,3,4,0,0,0,0,1,0,0,0,0,0,1,1,0,0,1,1,0
3,1,324,4,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
5,1,212,1,8,2,0,2,3,0,0,0,0,0,0,0,1,0,0,1,1,0,0,1,0,0
5,1,804,84,6,2,1,0,2,0,0,0,0,1,1,0,0,0,0,0,1,0,0,1,0,0
2,4,76,2,2,0,0,0,3,0,0,0,4,2,0,0,0,0,0,1,0,1,0,1,0,0
6,2,463,3,1,5,0,0,4,0,0,0,0,5,0,1,0,1,0,1,0,0,1,1,1,0
2,3,407,3,2,0,0,3,6,1,0,0,0,1,0,0,1,1,1,1,1,1,1,1,1,0
2,3,1285,14,2,0,3,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
6,1,300,48,10,0,0,0,4,0,0,0,0,4,0,1,0,0,0,1,0,1,1,1,0,0
3,1,313,36,5,6,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
3,4,92,10,6,0,0,0,5,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0
1,4,9,3,2,0,0,5,3,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0
5,1,11,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1
3,1,237,22,6,6,3,0,7,0,0,0,0,2,0,0,1,1,1,1,1,1,1,1,0,1
4,2,26,5,10,5,3,0,4,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,1,0
3,1,0,0,6,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,1,0,0,6,0,0,3,4,0,0,0,0,2,0,1,0,0,0,1,1,0,1,0,1,0
5,1,2150,9,8,2,0,0,2,0,0,0,0,0,0,0,1,0,1,0,1,0,0,1,0,0
4,4,196,6,3,2,3,0,3,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,0,0
4,2,0,0,1,1,0,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
4,4,72,3,1,5,0,3,3,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0
5,1,1,3,7,3,0,2,2,0,0,0,0,5,1,0,0,0,0,1,0,0,0,1,0,0
6,2,30,0,1,1,0,0,4,0,0,0,0,5,0,1,0,0,0,0,1,1,1,1,0,0
4,1,637,5,10,2,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0
4,2,1221,29,6,1,0,3,5,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,1
5,1,99,39,10,7,0,0,4,1,0,0,0,0,0,0,1,0,0,1,0,1,0,1,1,0
5,1,288,2,8,2,0,3,4,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,1,0
3,4,505,38,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0
5,1,66,15,10,3,2,0,4,0,0,0,0,0,0,0,1,1,0,0,1,0,1,0,0,1
4,3,0,0,1,1,0,0,7,0,1,1,1,0,0,0,1,0,0,1,1,1,1,1,0,1
1,4,0,0,1,1,0,0,5,0,0,0,0,2,0,1,0,0,0,1,1,0,1,1,1,0
1,4,0,0,1,1,0,0,4,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0
1,4,0,0,1,1,5,0,4,0,0,0,0,0,0,0,1,1,1,0,1,1,1,1,0,0
4,1,2506,20,8,2,0,3,4,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,1,0
2,4,63,0,6,1,0,5,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,0,0
4,2,17,1,10,1,0,5,7,0,0,0,0,0,0,0,1,0,0,1,0,1,1,1,1,1
3,1,450,8,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0
3,1,41,6,4,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
5,1,185,10,8,2,0,3,4,0,0,0,0,2,0,0,0,0,0,1,1,0,0,1,1,0
5,1,36,18,7,3,0,0,3,1,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0
4,2,945,18,10,5,0,0,4,0,0,0,0,0,0,1,0,0,0,0,1,1,1,0,1,0
5,1,514,49,10,3,0,5,3,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,1,57,2,3,7,0,5,4,0,0,0,1,1,0,0,0,0,0,1,1,0,1,1,0,0
6,2,1,0,10,1,0,0,2,0,1,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0
2,4,5,1,1,1,0,0,3,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,1,0
4,1,164,7,8,2,0,0,2,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0
5,1,781,45,9,2,0,0,2,0,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0
1,4,0,0,1,1,0,0,6,0,1,1,1,0,0,0,1,1,0,1,1,1,1,1,0,1
6,2,0,0,1,1,0,0,5,0,1,1,1,9,0,0,0,0,0,1,0,1,1,1,0,0
5,1,84,1,8,2,1,3,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0
4,1,236,13,10,5,0,6,5,1,0,0,0,0,0,0,0,1,0,1,0,0,1,1,1,0
3,4,245,56,1,1,0,0,3,0,1,1,0,0,0,0,0,0,0,1,0,1,0,1,0,0
2,3,178,3,2,0,0,9,3,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0
1,4,0,0,1,1,0,0,6,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0
1,4,9363,231,1,1,0,13,3,0,0,0,1,50,0,0,0,0,0,1,0,1,0,1,0,0
5,1,22402,274,5,6,0,0,2,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0
6,2,15,0,6,1,0,0,4,0,0,0,0,0,0,1,0,1,0,1,1,0,1,0,1,0
3,1,0,0,6,0,2,0,4,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,1,0
2,4,912,15,2,0,0,3,7,0,0,0,0,7,0,0,1,1,0,1,1,1,1,1,1,1
5,1,333,60,10,6,0,0,2,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0
6,3,3,0,1,1,0,0,3,0,0,0,1,5,0,0,0,0,0,1,0,1,0,1,0,0
3,1,256,22,6,6,0,3,4,0,0,0,0,1,0,0,0,0,0,1,0,1,1,1,0,0
4,2,905,28,10,5,0,0,4,1,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,1
4,2,753,6,10,5,3,0,4,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,1,1
4,2,391,8,10,5,0,7,5,0,0,0,0,1,0,1,1,1,0,1,1,0,1,1,1,0

================================================
FILE: data/flags/flags.xml
================================================
<?xml version="1.0" encoding="utf-8"?>
<labels xmlns="http://mulan.sourceforge.net/labels">
<label name="red"></label>
<label name="green"></label>
<label name="blue"></label>
<label name="yellow"></label>
<label name="white"></label>
<label name="black"></label>
<label name="orange"></label>
</labels>


================================================
FILE: data/flags.txt
================================================
4,1,1001,47,8,2,0,3,4,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0
2,3,178,3,2,0,0,9,3,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0
2,4,76,2,2,0,0,0,3,0,0,0,4,2,0,0,0,0,0,1,0,1,0,1,0,0
6,2,0,0,1,1,0,0,5,0,1,1,1,9,0,0,0,0,0,1,0,1,1,1,0,0
5,1,47,1,10,3,0,0,4,4,0,0,0,0,0,0,0,1,0,1,0,0,0,1,1,1
1,4,0,0,1,1,3,0,3,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,1,0
5,1,121,18,10,6,0,5,3,1,0,0,0,1,0,0,0,0,0,1,0,1,0,1,0,0
3,1,301,57,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0
5,1,0,0,10,2,0,0,3,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0
4,1,2388,20,8,2,2,0,3,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1,0,0
4,1,1267,5,3,2,0,3,3,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1
5,1,435,14,8,2,0,3,4,0,0,0,0,3,0,0,0,0,0,1,1,0,0,1,1,0
3,4,92,10,6,0,0,0,5,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0
4,1,583,17,10,5,0,5,4,1,0,0,0,0,0,0,1,0,0,1,1,0,0,1,1,0
4,2,783,12,10,5,0,5,5,0,0,0,0,1,0,1,1,0,0,1,1,0,1,1,1,0
5,1,2150,9,8,2,0,0,2,0,0,0,0,0,0,0,1,0,1,0,1,0,0,1,0,0
6,2,30,0,1,1,0,0,4,0,0,0,0,5,0,1,0,0,0,0,1,1,1,1,0,0
2,4,1139,28,2,0,0,3,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
5,1,6,0,10,2,0,0,4,0,0,0,0,0,0,1,1,1,1,1,0,0,1,1,1,0
4,2,28,4,10,5,0,0,3,1,0,1,0,3,0,0,0,0,0,1,1,0,0,1,0,0
4,2,2,1,1,4,0,4,4,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0
3,1,337,5,9,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
4,2,1221,29,6,1,0,3,5,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,1
6,1,0,0,10,1,0,0,3,0,0,0,0,1,0,0,1,0,0,0,0,1,0,1,0,0
1,4,0,0,1,1,0,0,4,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0
1,4,0,0,1,1,0,0,6,1,0,0,0,10,0,0,0,1,0,1,1,1,1,1,1,0
3,1,237,22,6,6,3,0,7,0,0,0,0,2,0,0,1,1,1,1,1,1,1,1,0,1
6,3,4,0,3,0,0,3,5,1,0,0,0,1,0,0,1,0,0,1,0,1,1,1,1,0
4,1,113,3,3,5,0,0,2,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0
6,1,1,0,10,1,0,0,2,0,0,0,0,4,0,0,0,0,0,0,0,1,0,1,0,0
3,1,0,0,4,0,0,2,3,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0
2,4,215,1,1,4,0,0,5,0,0,0,0,0,0,1,0,0,0,1,1,0,1,1,1,0
1,4,0,0,1,1,0,1,5,0,0,0,0,1,0,1,0,0,0,1,0,1,1,1,1,0
4,4,239,14,1,5,0,3,4,0,0,0,0,1,0,0,0,0,0,1,1,0,1,0,1,0
3,1,41,6,4,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,2,600,1,10,5,0,5,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0
6,3,0,0,1,1,0,0,4,1,1,1,1,15,0,0,0,0,0,1,0,1,0,1,0,0
5,1,11,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1
6,2,15,0,6,1,0,0,4,0,0,0,0,0,0,1,0,1,0,1,1,0,1,0,1,0
5,1,1,3,7,3,0,2,2,0,0,0,0,5,1,0,0,0,0,1,0,0,0,1,0,0
3,1,313,36,5,6,0,2,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
1,4,9976,24,1,1,2,0,2,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0
5,1,66,15,10,3,2,0,4,0,0,0,0,0,0,0,1,1,0,0,1,0,1,0,0,1
3,1,0,0,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0
3,1,0,0,6,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
1,4,0,0,1,1,0,0,7,0,2,1,1,0,0,0,1,1,0,1,1,1,1,1,1,0
4,1,22,0,3,2,0,0,4,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,0
4,2,1247,7,10,5,0,2,3,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,1,0
5,1,781,45,9,2,0,0,2,0,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0
3,1,43,5,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
3,1,450,8,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0
4,1,623,2,10,5,1,0,5,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0
1,4,9,3,2,0,0,5,3,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0
4,2,2,0,3,2,0,0,2,0,0,0,0,4,1,0,0,0,0,0,1,0,0,1,0,0
4,2,26,5,10,5,3,0,4,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,1,0
1,4,0,0,6,1,0,1,3,0,0,0,0,6,0,0,0,0,0,1,0,1,0,1,0,0
3,1,84,8,4,0,0,3,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
4,2,30,1,10,5,2,0,4,0,0,0,0,0,0,0,1,0,0,1,1,1,0,1,0,0
5,1,333,13,10,2,0,14,4,0,0,0,1,1,1,0,0,0,0,1,0,1,1,1,0,0
3,1,324,4,6,1,0,0,3,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0
4,4,1240,7,3,2,3,0,3,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0
6,2,463,3,1,5,0,0,4,0,0,0,0,5,0,1,0,1,0,1,0,0,1,1,1,0
3,1,31,10,6,0,3,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0
1,4,128,3,2,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0
2,4,5,1,1,1,0,0,3,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,1,0

================================================
FILE: data/gs_data.txt
================================================
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
1 2 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 1 2
1 1 2 1 2
2 1 2 2 2
2 2 2 2 1
2 1 2 2 1
1 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
1 1 2 1 2
2 1 2 2 2
2 2 2 1 2
2 1 2 2 2
2 2 2 2 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
1 1 2 1 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
2 2 1 1 1
2 1 2 1 2
2 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 2 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
1 1 2 2 1
2 1 2 2 1
1 2 2 2 1
1 1 2 2 2
2 1 2 2 1
1 1 2 2 1
1 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
2 1 2 2 1
2 1 2 2 1
1 1 2 1 2
2 1 2 1 1
1 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 2 2 2 1
1 1 2 2 2
2 2 2 2 2
2 1 2 1 1
1 2 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 1 1
2 2 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 1
1 1 2 2 2
1 1 2 2 2
2 2 2 1 1
2 1 2 2 2
2 1 2 1 1
2 1 2 2 2
2 1 2 2 1
2 1 2 1 1
2 1 2 1 2
2 2 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 2 2 1 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 1 2
2 2 2 2 1
1 1 2 2 2
1 2 2 1 2
1 1 2 1 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 1
2 1 2 2 2
1 2 2 1 2
1 1 2 2 2
2 1 2 2 1
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 1
1 1 2 2 2
1 1 2 2 2
2 2 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
1 2 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 2
1 2 2 2 1
2 1 2 2 2
2 2 2 2 2
1 1 2 1 1
2 1 2 2 1
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
1 1 2 1 2
1 1 2 2 2
2 1 2 2 1
2 2 2 2 2
2 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 2 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 1 1
1 1 2 1 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 2
1 1 2 2 2
2 2 2 1 2
1 1 2 2 2
2 1 2 1 2
2 1 2 2 2
1 2 2 2 2
1 1 2 2 2
2 1 2 1 1
2 2 2 2 1
2 1 2 2 1
1 1 2 2 2
2 2 2 1 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 2 2 1 2
2 1 2 2 1
1 1 2 2 1
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 1
1 1 2 1 1
2 1 2 2 1
1 1 2 1 2
1 1 2 1 2
1 1 2 1 2
2 2 2 1 2
2 1 2 2 2
2 1 2 2 1
1 1 2 1 2
2 1 2 2 1
2 1 2 1 2
2 1 2 2 1
2 1 2 1 2
1 1 2 2 1
1 1 2 2 1
1 1 2 2 2
2 2 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 2 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 2 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 1 2
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
1 2 2 1 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 1
1 1 2 2 2
2 2 2 2 2
2 1 2 1 1
2 1 2 1 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
1 1 2 2 1
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 1 2 1 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 2 2 2 1
1 1 2 2 1
1 1 2 1 2
1 1 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 1 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 2 2 2 1
1 2 2 2 1
2 1 1 1 1
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 1
2 2 1 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 2 2 2 2
1 1 2 2 1
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
1 2 2 2 1
2 1 2 2 2
2 1 2 1 2
1 1 2 2 2
2 1 2 1 1
1 1 2 2 1
2 1 2 2 1
1 1 2 2 2
1 1 2 2 1
2 2 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 2 2 2 1
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
1 2 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 2 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 1
1 1 2 2 2
2 1 2 1 2
1 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
2 2 2 2 2
2 1 2 2 1
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 1 2
1 1 2 2 2
2 1 2 1 1
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 2 2 2 1
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 1
2 1 2 2 2
2 2 2 2 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 1 1 1
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 1 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 2 2 2 2
2 2 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 1
2 1 2 1 2
2 1 2 1 2
1 2 2 2 1
2 1 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 1 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 2 2 2 1
1 1 2 2 1
2 1 2 1 2
2 1 2 1 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
1 1 2 1 2
2 1 2 1 2
2 2 2 2 1
2 1 2 2 2
2 1 2 1 2
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 1 1
2 1 2 1 1
1 1 2 2 2
2 1 2 2 2
1 1 2 1 1
2 2 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 1 2 1
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
1 1 2 2 1
2 1 2 1 1
2 1 2 2 1
2 1 2 2 1
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 1 1
2 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
2 2 2 1 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 1
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
1 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
1 1 2 2 1
2 1 2 1 2
2 1 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 1
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 2 2 2 2
2 1 2 2 1
2 1 2 2 2
1 2 1 1 2
2 1 2 2 1
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 1 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
1 2 2 2 1
1 1 2 2 2
1 1 1 1 1
1 2 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
2 1 2 2 2
1 1 2 1 1
1 1 2 2 2
2 1 2 2 1
2 2 2 2 1
2 1 2 2 2
1 1 2 1 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
2 2 2 1 2
1 1 2 1 2
1 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
1 1 2 1 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
1 1 2 1 1
1 1 2 1 2
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 2
1 1 2 1 1
2 1 2 1 2
1 1 2 2 1
2 1 2 2 1
2 1 2 2 1
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 1 2
2 1 2 2 2
1 2 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 1 2
2 1 2 2 1
1 1 2 1 2
2 2 2 2 2
2 1 2 1 2
2 1 2 1 1
2 2 2 2 2
1 1 1 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 2
1 1 2 1 2
1 1 2 2 1
2 1 2 2 1
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
1 1 2 2 1
2 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 1 2
1 1 2 2 1
1 2 2 2 2
1 2 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
1 2 2 2 2
2 2 2 1 1
2 1 2 2 2
1 1 2 1 1
1 1 2 1 2
1 2 2 2 1
2 1 2 2 2
2 1 2 1 2
1 2 2 2 2
1 2 2 2 2
2 1 2 2 2
1 2 2 2 2
2 1 2 2 2
2 2 2 2 2
2 2 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 1 1
2 1 2 2 1
2 1 2 2 2
2 1 2 1 1
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
1 1 2 2 1
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 1 2
1 1 2 2 2
2 1 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 2 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 1
2 1 2 1 2
2 1 2 1 1
2 1 2 2 2
2 2 2 1 2
2 1 2 1 1
1 1 2 2 2
2 1 2 1 2
2 1 2 1 2
2 1 2 2 1
2 1 2 1 2
2 1 2 1 1
2 1 2 1 2
2 1 2 2 2
1 1 2 1 2
1 2 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 1
2 1 2 1 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 1 2
2 1 2 2 2
1 1 1 2 1
1 1 2 2 2
2 1 2 2 2
1 1 2 1 1
1 1 2 2 1
2 1 2 2 1
1 1 1 1 1
2 1 2 1 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 2 2 2 2
2 1 2 2 1
1 1 1 1 1
1 1 2 2 1
1 1 2 2 2
1 1 2 2 2
1 1 2 2 1
1 1 2 2 2
2 2 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 2
1 1 2 1 1
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 1 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 1 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 1 1
1 1 2 2 1
1 1 2 2 1
2 1 2 2 2
2 1 2 2 1
2 1 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 1 1
2 1 2 2 2
2 2 2 1 2
2 1 2 1 2
1 1 2 1 1
2 1 2 2 2
2 1 2 1 2
2 2 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 2
1 1 2 2 1
2 1 2 2 2
2 1 2 2 2
2 1 2 2 1
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 1
2 1 2 2 1
2 1 2 2 1
2 1 2 1 2
2 1 2 2 1
2 1 2 2 2
2 1 2 1 1
1 1 2 1 2
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 2 2 2 1
2 2 2 2 2
1 2 2 1 2
2 1 2 1 2
2 1 2 1 2
1 2 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
2 1 2 1 1
1 2 2 2 1
2 1 2 1 2
2 1 2 2 1
2 1 2 2 1
2 1 2 2 2
1 1 2 2 1
2 1 2 2 2
2 1 2 1 1
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
2 1 2 2 2
2 1 2 2 2
1 1 2 2 2
1 2 1 1 1
1 1 2 2 1
1 1 2 2 2
2 1 2 2 1
2 1 2 1 1
2 1 2 2 2
2 1 2 2 2
1 1 2 1 2
2 1 2 1 2
2 1 2 2 1
1 1 2 2 1


================================================
FILE: data/letter.csv
================================================
T,2,8,3,5,1,8,13,0,6,6,10,8,0,8,0,8
I,5,12,3,7,2,10,5,5,4,13,3,9,2,8,4,10
D,4,11,6,8,6,10,6,2,6,10,3,7,3,7,3,9
N,7,11,6,6,3,5,9,4,6,4,4,10,6,10,2,8
G,2,1,3,1,1,8,6,6,6,6,5,9,1,7,5,10
S,4,11,5,8,3,8,8,6,9,5,6,6,0,8,9,7
B,4,2,5,4,4,8,7,6,6,7,6,6,2,8,7,10
A,1,1,3,2,1,8,2,2,2,8,2,8,1,6,2,7
J,2,2,4,4,2,10,6,2,6,12,4,8,1,6,1,7
M,11,15,13,9,7,13,2,6,2,12,1,9,8,1,1,8
X,3,9,5,7,4,8,7,3,8,5,6,8,2,8,6,7
O,6,13,4,7,4,6,7,6,3,10,7,9,5,9,5,8
G,4,9,6,7,6,7,8,6,2,6,5,11,4,8,7,8
M,6,9,8,6,9,7,8,6,5,7,5,8,8,9,8,6
R,5,9,5,7,6,6,11,7,3,7,3,9,2,7,5,11
F,6,9,5,4,3,10,6,3,5,10,5,7,3,9,6,9
O,3,4,4,3,2,8,7,7,5,7,6,8,2,8,3,8
C,7,10,5,5,2,6,8,6,8,11,7,11,2,8,5,9
T,6,11,6,8,5,6,11,5,6,11,9,4,3,12,2,4
J,2,2,3,3,1,10,6,3,6,12,4,9,0,7,1,7
J,1,3,2,2,1,8,8,2,5,14,5,8,0,7,0,7
H,4,5,5,4,4,7,7,6,6,7,6,8,3,8,3,8
S,3,2,3,3,2,8,8,7,5,7,5,7,2,8,9,8
O,6,11,7,8,5,7,6,9,6,7,5,9,4,8,5,5
J,3,6,4,4,2,6,6,4,4,14,8,12,1,6,1,6
C,6,11,7,8,3,7,8,7,11,4,7,14,1,7,4,8
M,7,11,11,8,9,3,8,4,5,10,11,10,10,9,5,7
W,12,14,12,8,5,9,10,4,3,5,10,7,10,12,2,6
H,6,9,8,7,6,8,6,6,7,7,7,9,6,8,4,8
G,3,6,4,4,2,6,6,5,5,6,6,9,2,8,4,8
L,2,3,3,4,1,0,1,5,6,0,0,6,0,8,0,8
L,1,3,3,1,1,6,4,1,7,8,3,10,0,7,2,9
X,8,12,8,6,4,3,10,4,7,12,11,9,3,7,3,4
B,5,9,7,7,10,9,8,4,4,6,8,6,6,11,8,7
M,6,9,9,7,6,5,6,3,5,10,9,9,8,5,2,7
G,4,7,6,5,3,6,6,6,8,6,5,9,3,10,4,8
O,4,7,5,5,3,7,7,8,6,7,6,8,3,8,3,8
P,3,6,4,4,2,4,14,8,1,11,6,3,0,10,4,8
G,4,9,5,6,6,8,5,4,3,7,5,11,6,8,5,11
E,3,4,3,6,2,3,8,6,10,7,6,15,0,8,7,8
X,5,11,8,8,4,8,8,1,8,10,5,7,3,8,4,8
E,3,7,4,5,4,7,7,5,8,8,8,9,3,9,6,9
X,4,6,7,4,3,9,7,2,8,11,3,7,3,8,4,9
G,4,5,5,8,3,7,6,8,8,6,6,10,1,8,6,11
V,7,9,6,5,2,8,10,4,5,8,10,5,4,12,3,8
X,4,10,5,7,5,8,7,3,8,5,6,6,3,8,6,8
W,5,9,6,7,8,7,9,5,3,7,9,8,6,8,3,8
G,1,3,2,1,1,7,7,5,6,7,5,10,1,9,3,9
R,8,10,8,6,6,7,7,3,5,8,4,8,6,6,7,7
S,3,9,4,7,2,7,5,6,10,5,6,10,0,9,9,8
Y,7,11,9,8,8,9,5,6,4,7,8,8,3,9,8,3
L,3,6,3,4,1,1,0,6,6,0,1,5,0,8,0,8
Y,2,4,4,3,2,6,10,1,7,8,11,8,1,11,2,7
J,4,5,6,6,5,8,10,4,4,7,7,9,3,7,7,5
S,4,9,5,6,4,7,8,7,7,8,4,7,2,7,9,8
Q,6,9,7,11,7,8,5,7,5,9,6,9,3,8,6,8
Q,3,5,5,4,4,9,3,4,3,8,4,9,3,6,4,8
D,2,6,3,4,2,6,7,10,8,6,6,6,3,8,3,8
C,6,10,4,5,2,6,9,6,6,11,7,7,2,9,5,9
L,5,10,6,8,5,9,3,2,6,9,2,9,2,5,3,9
N,3,3,3,5,2,7,7,13,2,5,6,8,5,8,0,8
C,2,3,3,1,1,5,9,4,6,11,9,11,1,9,2,8
E,6,9,4,4,2,7,7,4,7,10,6,10,1,9,7,9
X,4,9,5,6,5,7,6,3,5,6,6,9,2,8,8,8
H,3,3,4,1,2,8,7,5,6,7,6,8,5,8,3,7
L,2,3,2,4,1,0,1,5,6,0,0,6,0,8,0,8
H,3,5,5,4,3,7,8,3,6,10,6,8,3,8,3,8
E,2,3,3,2,2,7,7,5,7,7,6,8,2,8,5,10
Y,5,10,6,7,6,9,6,6,4,7,8,7,6,9,8,3
H,8,12,8,6,4,9,8,4,5,8,4,5,6,9,5,9
Q,5,10,5,5,4,9,6,5,6,10,6,7,4,8,9,9
Q,3,8,5,7,3,8,7,9,6,6,6,9,3,8,5,9
Q,4,6,6,4,5,8,5,6,4,6,7,10,4,7,5,9
J,2,8,3,6,1,13,3,8,4,13,3,11,1,6,0,8
J,4,7,5,5,2,8,9,1,7,14,5,6,0,8,1,8
D,4,5,5,4,3,7,7,7,7,7,6,5,2,8,3,7
R,2,6,4,4,3,6,7,5,5,6,5,7,3,7,5,8
M,4,5,7,4,4,6,6,3,4,9,9,10,7,5,2,8
A,3,7,5,5,3,12,2,3,2,10,2,9,2,6,3,8
N,3,5,4,4,2,7,8,5,4,7,7,7,6,9,2,5
M,6,10,9,7,8,3,7,4,5,10,11,10,7,9,3,7
P,8,14,7,8,4,5,10,6,3,12,5,4,4,10,4,8
C,6,12,5,7,4,8,5,4,3,9,9,11,4,9,8,10
P,6,10,8,8,7,8,5,7,5,7,6,6,3,9,8,9
N,2,3,3,1,1,5,9,3,3,10,8,8,4,8,0,8
W,3,4,4,3,2,9,10,3,2,5,9,7,6,11,0,8
V,3,8,5,6,6,8,7,4,1,8,7,8,5,10,4,7
V,6,9,9,8,10,8,7,5,5,7,6,8,8,9,9,3
M,6,7,9,5,7,4,7,3,5,10,10,11,8,6,3,7
E,4,8,5,6,4,7,7,4,8,11,8,9,2,9,5,7
N,6,11,8,8,9,5,8,3,4,8,8,9,7,9,5,4
Y,8,10,8,7,4,3,10,3,7,11,12,6,1,11,3,5
W,4,8,5,6,3,6,8,4,1,7,8,8,8,9,0,8
O,6,7,8,6,6,6,6,5,6,8,5,8,3,6,5,6
N,4,4,4,6,2,7,7,14,2,5,6,8,6,8,0,8
H,4,8,5,6,5,7,10,8,5,8,5,6,3,6,7,11
O,4,7,5,5,3,8,7,8,5,10,6,8,3,8,3,8
N,4,8,5,6,4,7,7,9,4,6,4,6,3,7,3,8
H,4,9,5,6,2,7,6,15,1,7,7,8,3,8,0,8
U,7,11,8,9,4,3,9,6,7,11,11,10,3,9,2,6
Y,2,7,3,5,1,6,10,0,3,7,11,8,1,11,0,8
S,6,8,7,6,4,6,9,4,8,11,7,6,2,8,5,5
S,5,9,6,7,5,7,7,7,5,7,6,7,2,8,9,8
T,2,3,2,2,1,7,11,2,6,7,10,8,1,11,1,7
C,2,3,3,2,1,4,7,4,6,10,9,13,1,9,2,7
V,4,10,7,7,2,9,8,5,3,5,14,8,3,9,0,8
T,5,8,5,6,3,6,12,4,7,12,9,4,2,12,2,4
K,7,12,6,6,3,7,8,2,7,9,7,8,5,8,3,7
D,3,8,4,6,4,7,8,7,6,7,7,5,3,8,3,7
W,2,1,3,1,1,7,8,4,0,7,8,8,6,10,0,8
I,2,9,3,7,2,8,7,0,7,13,6,9,0,8,1,8
E,3,8,3,6,2,3,7,6,10,7,6,14,0,8,7,8
F,6,9,8,7,4,6,12,6,6,13,7,3,2,9,2,5
I,3,9,4,7,3,7,7,0,7,13,6,8,0,8,1,8
H,5,10,7,8,8,7,7,6,6,7,6,9,3,8,4,8
U,4,7,4,5,2,7,5,13,5,7,14,7,3,9,0,8
C,2,3,3,2,1,6,8,7,7,9,7,12,1,10,3,9
F,5,9,6,7,7,7,6,6,4,7,7,8,5,10,9,12
A,3,8,5,6,3,9,2,2,3,8,2,8,2,6,3,7
Z,3,7,5,5,3,7,8,2,9,11,7,7,1,8,6,7
X,3,7,5,5,2,10,5,2,8,10,1,7,3,7,3,10
N,3,3,5,2,2,5,10,3,4,10,8,7,5,8,1,8
R,6,9,5,4,3,10,6,5,5,10,2,8,6,6,4,9
B,3,3,3,4,3,7,7,5,5,7,6,6,5,8,5,10
B,5,9,7,7,7,8,8,3,6,10,5,6,3,7,6,8
U,5,6,5,4,2,5,8,6,8,9,8,8,3,9,2,5
J,4,4,6,5,4,8,9,4,5,7,6,9,3,7,8,8
F,3,7,4,5,2,1,11,4,4,11,11,8,0,8,2,7
M,6,8,9,6,6,11,6,2,5,9,3,6,9,7,2,9
H,1,1,2,1,1,7,7,12,1,7,6,8,3,8,0,8
A,2,1,4,2,1,8,1,2,2,7,2,8,2,5,2,7
O,5,10,4,5,3,6,6,6,2,9,6,9,5,9,4,8
E,1,0,1,1,1,4,7,5,8,7,6,13,0,8,6,10
U,3,3,3,1,1,5,8,5,7,10,9,8,3,10,2,6
A,3,7,5,5,3,10,4,1,2,8,3,9,2,4,2,7
X,4,8,5,6,3,5,8,1,8,10,9,9,2,9,3,6
S,5,8,7,6,4,8,8,4,9,11,3,8,2,6,4,9
J,1,3,2,2,1,10,7,1,5,11,4,8,0,7,0,7
K,5,11,8,8,5,6,7,2,7,10,7,10,4,8,4,8
I,2,6,2,4,1,9,5,0,6,13,5,9,0,8,1,8
P,7,11,10,8,6,6,11,3,6,13,6,3,0,10,3,8
T,2,1,2,1,0,8,15,1,4,6,10,8,0,8,0,8
C,1,1,2,2,1,6,8,6,6,9,7,12,1,9,3,10
H,4,9,4,7,4,7,8,13,1,7,5,8,3,8,0,8
A,2,4,4,3,2,10,2,2,2,9,2,9,2,7,3,9
L,6,11,9,8,11,7,7,3,6,6,7,11,6,11,9,7
T,3,6,4,4,3,7,12,4,6,7,11,8,2,12,1,7
A,2,8,4,6,2,12,2,4,3,11,2,10,3,6,3,9
V,3,9,5,7,3,8,9,4,1,6,12,8,2,10,0,8
U,5,7,6,5,5,8,8,8,5,6,7,9,4,8,4,5
I,2,9,2,6,3,7,7,0,7,7,6,8,0,8,2,8
Z,8,14,8,8,5,8,5,2,9,12,6,9,3,7,6,7
V,4,7,6,5,6,8,8,4,2,8,7,8,7,11,5,8
M,5,9,7,6,7,9,7,5,5,6,7,6,10,7,4,6
L,4,8,6,6,4,6,5,2,8,7,2,8,1,6,3,7
O,3,3,5,5,2,9,6,9,7,7,5,10,3,8,4,8
B,4,2,5,4,4,7,7,5,6,7,6,6,2,8,7,10
A,8,15,7,8,4,8,2,3,2,8,5,12,5,4,5,5
K,6,9,9,6,7,9,6,1,7,10,3,8,3,7,3,9
H,3,7,4,5,4,7,7,5,6,7,6,8,3,8,3,8
T,7,9,7,7,5,6,10,1,8,11,9,5,2,9,3,4
W,6,5,7,4,4,4,11,2,2,9,9,8,7,11,1,7
F,3,8,3,5,1,1,12,4,5,12,11,8,0,8,2,6
A,3,3,5,4,1,7,6,3,0,7,0,8,2,7,1,8
E,3,8,3,6,3,3,6,5,9,5,4,13,0,8,6,9
M,4,9,5,7,4,7,7,12,1,7,9,8,8,6,0,8
B,4,9,5,7,6,7,8,9,6,7,6,6,2,8,8,10
M,3,7,5,5,6,7,8,6,4,6,6,8,5,8,7,9
Y,6,9,6,7,4,5,8,0,8,8,9,5,2,11,4,4
V,4,9,6,7,3,6,12,3,4,7,12,9,3,10,1,8
S,2,8,3,6,3,8,8,7,6,7,4,6,2,7,8,8
C,2,1,2,2,1,6,8,7,7,8,7,12,1,9,4,10
H,4,9,6,6,8,7,7,6,3,7,6,7,8,7,9,9
U,5,8,5,6,4,8,6,11,4,8,13,7,3,9,0,8
P,6,10,6,6,4,7,10,5,2,11,5,4,4,11,5,7
Z,3,8,4,6,2,7,7,4,13,10,6,8,0,8,8,8
E,3,4,5,2,2,7,7,2,8,11,7,9,2,8,4,8
N,5,9,7,6,4,4,10,3,4,9,10,9,5,8,1,8
P,6,10,5,6,3,5,9,6,3,10,5,6,5,9,4,7
H,4,5,5,4,4,7,7,6,6,7,6,7,3,8,3,6
T,6,11,6,8,5,6,11,3,7,11,9,5,2,12,2,4
B,5,5,5,8,4,7,9,10,8,7,5,7,2,8,9,10
U,5,10,6,7,2,7,4,14,6,7,15,8,3,9,0,8
S,3,4,4,6,2,8,8,6,9,5,5,5,0,8,9,7
F,5,6,5,8,2,1,14,5,3,12,9,5,0,8,3,6
J,3,9,4,7,4,9,6,1,6,11,4,7,0,6,1,6
R,3,6,4,4,4,6,7,5,5,7,6,7,3,7,4,9
E,3,2,3,4,3,7,8,5,7,7,5,9,2,8,5,10
P,6,9,6,4,4,8,9,5,3,10,5,5,5,10,5,6
I,2,2,1,4,1,7,7,1,7,7,6,8,0,8,3,8
K,7,10,9,8,9,7,7,5,5,7,6,7,7,6,9,13
D,4,10,6,7,4,8,6,8,7,4,5,3,3,8,4,8
B,4,7,6,5,7,9,6,4,4,6,6,7,7,8,6,7
H,5,10,7,8,6,7,9,8,5,8,5,6,3,7,7,10
M,7,10,10,7,7,9,6,2,5,9,5,7,8,6,2,8
P,6,11,7,8,3,4,13,9,2,10,6,4,1,10,4,8
O,4,8,6,6,4,8,5,8,4,7,5,8,3,8,3,8
S,2,8,3,6,3,8,7,7,5,7,6,7,2,9,8,8
K,4,7,6,5,4,3,8,3,7,11,11,12,3,8,3,5
V,7,10,7,8,3,3,11,4,4,10,12,8,3,10,1,8
F,7,11,10,8,5,6,11,2,7,14,7,4,1,10,2,7
Y,3,4,5,6,1,6,10,3,2,9,13,8,1,11,0,8
D,4,6,6,4,3,11,6,3,8,11,3,6,3,8,3,9
Z,1,0,1,1,0,7,7,2,10,8,6,8,0,8,6,8
Q,3,5,3,6,3,7,8,6,3,8,8,9,3,8,5,7
S,8,14,8,8,4,9,4,4,4,13,5,8,3,10,3,8
B,5,7,7,5,6,8,6,5,6,9,6,7,3,9,6,10
K,8,13,9,7,5,6,7,3,6,10,8,10,6,10,4,7
V,3,10,5,7,2,5,8,5,3,9,14,8,3,10,0,8
B,4,7,4,5,3,6,7,9,7,7,6,7,2,8,9,10
Y,2,2,4,4,2,6,10,1,7,7,11,9,1,11,1,8
O,3,4,4,3,2,7,7,7,5,7,6,8,2,8,3,8
Z,6,10,8,7,5,8,6,3,10,12,4,9,1,7,6,9
L,2,3,3,2,1,6,4,1,8,7,2,10,0,7,2,8
J,1,3,2,2,1,10,6,2,6,12,4,9,0,7,1,7
Z,1,3,3,2,1,7,8,1,9,11,7,7,1,8,5,7
A,3,5,5,7,2,7,7,3,1,6,0,8,3,7,1,8
L,3,5,4,5,3,8,7,4,5,7,6,8,3,8,7,10
J,2,5,3,3,1,10,7,1,7,12,3,7,0,7,1,7
Q,5,6,6,8,5,8,7,6,3,7,7,12,3,8,6,8
N,1,3,2,1,1,7,8,5,3,7,7,7,4,8,1,6
Z,2,6,3,4,1,7,7,3,13,9,6,8,0,8,8,8
E,4,9,5,7,3,3,7,6,11,7,6,15,0,8,7,7
J,4,7,3,10,3,9,7,3,3,11,4,5,3,8,6,9
D,4,8,5,6,3,5,7,10,10,6,5,6,3,8,4,8
O,5,10,6,8,5,7,8,9,6,8,8,6,4,8,5,10
L,3,6,4,4,2,5,4,3,8,3,2,6,1,6,2,5
V,4,5,5,4,2,4,12,4,4,11,11,6,2,10,1,8
X,6,10,9,8,6,7,7,0,8,9,6,8,3,8,4,7
J,5,8,6,6,3,6,6,4,5,14,8,12,1,6,1,7
N,7,10,10,8,5,7,8,3,5,10,6,7,7,8,1,8
H,3,5,5,7,4,10,11,3,2,7,8,8,3,10,7,9
A,2,7,4,5,3,13,3,3,2,10,1,8,2,6,2,8
P,4,6,5,9,9,8,7,5,0,7,6,7,6,10,6,9
A,4,9,6,6,2,10,5,3,1,8,1,9,2,7,2,8
F,4,8,5,6,3,5,10,4,6,11,10,5,2,10,3,5
X,3,4,6,3,2,7,7,1,9,10,6,8,2,8,3,7
D,5,11,6,9,4,5,8,11,9,8,7,5,3,8,4,8
V,3,7,5,5,3,9,11,2,2,4,10,8,2,12,1,8
P,7,10,6,5,4,10,7,4,4,12,4,5,4,11,5,9
F,5,9,6,7,6,6,9,4,6,9,9,6,5,9,3,6
P,6,11,9,8,5,8,10,7,5,10,4,3,3,10,4,8
Y,4,10,6,8,2,9,11,0,4,6,11,8,0,10,0,8
W,3,3,4,4,2,5,8,4,1,7,9,8,7,10,0,8
P,6,9,8,7,5,6,11,7,3,11,5,3,2,10,4,8
J,5,6,7,7,6,7,8,4,5,7,7,8,4,6,8,6
E,4,2,4,4,3,8,7,6,10,6,5,9,2,8,6,8
S,4,8,5,6,3,7,5,6,9,5,6,10,0,9,9,8
E,3,7,3,5,2,3,8,6,11,7,5,14,0,8,7,8
B,5,9,7,7,6,7,9,5,6,10,6,6,3,8,7,8
I,1,9,1,7,1,7,7,0,9,7,6,8,0,8,3,8
S,6,8,7,6,4,9,6,4,6,10,3,8,2,8,5,10
S,3,8,4,6,3,8,6,8,6,7,8,9,2,10,9,8
C,3,7,4,5,2,5,8,6,7,6,8,13,1,8,4,10
M,8,10,11,8,9,9,6,2,5,9,4,7,11,9,3,8
P,9,10,7,5,3,6,11,6,2,11,5,5,4,10,4,8
R,2,4,4,3,3,7,8,4,4,9,5,8,2,6,3,10
U,3,8,5,6,6,8,7,4,4,6,7,8,7,9,5,6
U,6,6,6,4,3,4,8,5,8,11,11,9,3,9,2,6
D,3,8,4,6,2,5,7,10,8,7,7,5,3,8,4,8
U,2,1,3,1,1,7,5,11,5,7,14,8,3,10,0,8
J,2,5,3,4,2,10,7,2,6,11,3,7,1,6,2,7
Z,7,13,7,7,5,6,7,2,9,11,6,8,4,5,8,6
F,5,11,7,8,6,7,9,3,6,12,7,6,3,9,2,7
V,1,0,2,1,0,8,9,4,2,7,12,8,2,10,0,8
M,6,5,8,4,7,6,9,5,3,6,4,8,13,8,5,7
U,3,6,4,4,1,7,5,13,5,7,13,8,3,9,0,8
B,3,7,4,5,5,7,7,4,6,6,6,6,2,8,5,10
L,4,8,6,6,4,6,5,1,9,7,2,10,0,6,3,8
T,4,10,5,8,3,8,13,0,5,7,10,8,0,8,0,8
D,8,12,8,6,4,9,4,4,6,12,3,8,5,6,5,10
T,6,11,6,8,4,6,10,1,10,11,9,5,2,8,4,4
O,5,8,7,6,4,7,5,8,4,6,4,7,3,9,4,9
T,1,0,2,1,0,7,14,1,4,7,10,8,0,8,0,8
U,4,3,5,2,2,5,8,5,7,10,10,9,3,9,2,6
D,2,4,4,2,2,9,6,4,6,11,4,6,2,8,3,8
R,4,8,5,5,3,5,11,8,3,7,4,8,3,7,6,11
G,7,10,7,7,5,5,7,7,6,9,8,10,2,9,5,9
D,2,1,2,2,1,6,7,8,7,6,6,6,2,8,3,8
S,3,8,4,6,4,7,7,7,5,7,6,8,2,8,8,8
S,7,10,9,8,10,9,5,5,4,9,6,9,6,9,12,11
M,6,10,9,8,8,7,7,2,4,9,7,8,8,6,2,8
M,4,8,6,6,8,9,6,2,2,8,4,8,7,7,2,5
D,6,7,8,6,6,5,7,6,7,7,4,7,3,6,5,6
Z,4,9,6,7,4,8,6,2,9,12,5,9,3,6,8,8
W,4,9,7,7,5,9,8,4,1,6,9,8,7,11,0,8
C,2,1,3,2,1,6,8,6,7,7,8,12,1,9,4,10
K,3,6,4,4,4,6,7,3,7,6,6,9,3,8,6,10
J,6,9,9,7,5,8,5,7,7,8,6,7,2,6,4,6
A,6,9,8,8,8,8,7,3,5,7,8,8,6,8,4,5
D,5,12,5,6,4,8,7,3,6,10,5,7,5,8,7,6
C,4,8,6,6,4,8,8,8,6,7,6,8,4,7,4,8
V,3,4,4,3,1,4,12,3,3,10,11,7,2,11,1,8
S,4,7,4,5,2,9,10,6,9,5,6,6,0,7,8,9
F,4,9,6,6,4,9,8,1,6,13,5,5,1,10,2,9
A,5,10,7,8,5,8,3,3,1,7,1,8,5,9,5,8
B,3,2,4,3,3,8,7,5,6,7,6,6,2,8,6,9
N,2,3,3,2,2,7,9,5,4,7,6,7,5,9,2,7
U,6,10,5,6,3,6,6,4,4,6,7,8,5,5,2,8
S,4,10,5,8,5,7,7,5,8,5,6,8,0,8,9,8
Q,2,5,3,6,3,8,8,7,2,5,7,10,3,9,5,9
F,4,8,4,5,1,1,13,5,5,12,11,7,0,8,2,6
F,4,9,6,6,5,5,10,4,6,10,10,6,2,10,3,6
X,5,10,8,8,4,8,7,4,10,6,6,8,4,6,8,9
A,3,7,5,5,3,11,3,2,2,8,2,9,3,4,2,8
B,4,9,4,6,3,6,7,9,7,7,6,7,2,8,9,10
O,5,9,6,7,5,7,7,8,7,7,6,7,2,8,3,8
J,2,6,3,4,1,14,1,6,5,14,2,11,0,7,0,8
H,4,8,5,5,2,7,5,15,1,7,9,8,3,8,0,8
M,6,9,7,4,3,6,9,5,5,4,4,10,8,7,2,8
I,3,7,4,5,2,7,7,0,7,13,6,8,0,8,1,7
W,6,10,6,8,6,2,10,2,3,10,9,8,7,11,2,6
N,3,6,4,4,3,6,7,8,5,7,5,7,3,7,3,8
A,1,3,2,2,1,10,3,2,1,9,2,9,1,6,1,8
S,2,3,4,1,1,7,8,2,6,10,5,7,1,8,4,8
P,1,0,1,0,0,5,10,6,1,9,6,5,0,9,2,8
D,6,9,8,8,8,7,6,5,7,7,5,9,6,5,9,4
M,7,9,10,7,6,5,6,4,5,11,10,11,11,5,4,8
T,4,8,5,6,5,8,11,3,6,6,11,8,3,12,1,7
L,3,6,4,4,2,5,5,1,9,6,2,11,0,8,3,7
X,3,6,4,4,1,7,7,4,4,7,6,8,3,8,4,8
G,2,4,3,6,2,7,7,8,6,5,7,9,2,7,5,11
D,6,10,8,8,5,10,5,4,8,11,3,7,4,6,4,9
E,3,4,4,6,2,3,8,6,10,7,6,14,0,8,7,7
N,2,3,2,1,1,6,9,6,3,8,7,8,4,9,1,7
G,2,4,3,3,2,6,6,6,5,6,6,9,2,8,4,8
V,7,10,6,8,3,2,11,5,5,12,12,8,2,10,1,8
A,2,7,4,4,2,7,3,3,2,7,2,8,3,7,2,8
E,5,9,4,4,2,8,7,4,4,10,5,10,3,8,7,10
K,4,5,5,8,2,3,6,7,3,7,8,12,3,8,3,10
M,6,9,9,6,6,5,7,3,5,10,10,9,8,6,3,8
L,5,11,5,6,3,7,5,3,5,12,7,11,3,8,6,9
T,5,6,5,4,2,5,12,3,8,12,9,4,1,11,2,4
G,2,4,4,3,2,7,6,6,6,6,6,10,2,9,4,9
J,2,4,4,3,1,8,8,2,7,15,5,8,0,7,1,8
F,5,10,5,7,2,1,14,5,4,12,10,6,0,8,2,5
W,7,8,7,6,6,6,11,5,2,9,6,6,8,13,4,4
A,3,6,5,4,3,12,3,2,2,9,2,9,2,6,2,8
K,6,11,8,8,5,9,5,1,7,10,3,9,5,9,5,11
P,1,1,2,2,1,5,10,4,4,10,8,4,1,9,3,7
M,7,6,9,5,9,7,7,5,4,6,5,8,10,8,5,5
O,2,6,3,4,2,8,7,7,5,7,6,9,2,8,3,8
S,4,11,5,8,3,6,6,6,9,4,6,9,0,9,9,8
C,4,6,6,5,5,4,7,3,6,6,6,10,4,10,7,7
O,1,0,2,1,0,8,7,6,4,7,6,8,2,8,3,8
Z,2,1,3,2,1,7,7,5,9,6,6,9,1,8,7,8
X,4,9,6,7,6,9,7,3,6,7,4,5,6,6,9,8
W,4,4,5,3,3,6,11,5,2,8,7,6,6,11,2,6
B,4,9,4,6,5,6,6,8,6,6,6,7,2,8,7,9
C,6,11,6,8,4,4,8,5,6,12,10,11,2,10,3,7
F,2,4,3,3,2,5,10,3,5,10,9,5,1,10,3,6
I,1,4,0,6,0,7,7,4,4,7,6,8,0,8,0,8
B,1,3,2,2,1,8,7,3,5,10,5,7,2,8,3,9
P,3,4,5,2,2,8,9,3,5,13,4,3,1,10,3,8
K,11,14,10,8,4,6,8,3,7,9,8,10,6,8,4,6
U,4,5,5,4,2,5,8,5,8,10,8,8,3,9,3,5
N,3,8,4,6,2,7,7,14,2,5,6,8,5,8,0,8
Y,4,11,6,8,1,7,11,2,3,8,12,8,1,11,0,8
I,3,5,5,6,4,8,8,4,4,7,6,8,3,7,8,8
Q,8,15,7,8,4,8,5,4,9,11,4,10,3,6,9,9
Q,4,5,4,7,4,9,7,6,2,8,6,11,3,9,6,8
Z,1,0,1,0,0,8,7,2,9,8,6,8,0,8,5,8
F,4,5,5,6,5,7,9,5,4,8,6,7,4,9,8,7
M,8,10,11,8,8,9,6,2,5,9,6,7,8,6,2,8
D,4,7,5,5,2,5,7,10,9,7,6,5,3,8,4,8
N,2,3,3,1,1,8,9,3,4,10,4,6,4,9,1,7
W,5,10,8,8,5,3,10,3,3,9,10,9,8,11,1,8
U,4,9,4,6,4,7,5,13,5,7,10,8,3,9,0,8
G,6,11,8,9,6,6,6,7,5,5,6,12,5,7,5,6
G,7,11,9,8,11,8,5,4,3,6,5,10,8,7,9,13
O,5,10,4,5,3,7,7,5,4,7,4,7,5,8,5,8
U,2,6,3,4,1,8,6,13,5,7,13,8,3,9,0,8
K,6,10,8,8,8,6,7,5,3,7,5,8,5,7,10,8
W,4,8,6,6,3,4,8,5,1,7,9,8,8,10,0,8
K,5,7,7,5,5,5,7,2,6,10,8,11,3,8,3,8
E,5,11,4,6,2,9,6,4,6,10,5,9,1,10,7,9
V,3,6,5,4,1,9,8,4,2,5,14,8,3,10,0,8
R,8,12,8,7,6,9,6,3,5,9,4,8,6,8,6,8
Z,4,11,5,8,5,9,6,6,10,7,5,6,2,7,8,8
S,4,10,6,7,4,7,8,3,7,10,5,7,2,6,5,8
N,3,6,5,4,5,7,8,3,3,8,7,8,5,9,5,4
X,5,11,8,8,4,5,8,2,8,10,11,9,3,9,4,6
I,3,6,4,4,2,5,7,3,7,7,6,12,0,8,4,9
Q,1,2,2,3,1,8,7,4,1,7,8,10,2,9,3,9
N,10,15,9,8,4,7,9,4,5,3,5,10,6,10,2,7
C,5,7,5,5,3,6,7,6,8,12,8,12,2,10,4,7
Q,6,9,5,4,3,10,4,4,7,11,3,10,3,7,7,11
N,7,10,9,8,7,7,7,8,6,7,5,6,4,8,4,8
K,6,9,8,8,8,7,7,2,4,7,3,9,7,4,9,10
S,8,12,8,7,4,5,10,4,5,14,8,6,2,9,3,7
E,2,3,3,2,1,6,8,2,8,11,8,8,1,8,4,7
D,4,8,6,6,8,9,7,5,6,7,5,6,5,6,8,7
X,4,4,5,5,1,7,7,4,4,7,6,8,3,8,4,8
C,1,0,2,1,0,7,7,6,7,7,6,13,0,8,4,10
J,5,9,7,7,3,9,5,4,6,15,4,10,1,6,0,7
B,5,7,7,5,5,7,6,6,7,8,7,6,3,9,8,7
D,5,9,5,7,5,5,7,9,7,6,5,5,2,8,3,8
R,7,10,7,5,5,7,6,3,5,8,4,9,6,8,6,7
Z,2,1,2,1,1,7,7,3,11,8,6,8,0,8,6,8
T,2,3,4,4,1,8,14,1,6,6,11,8,0,8,0,8
K,5,9,5,7,2,4,7,9,2,7,6,12,3,8,3,11
G,5,11,7,8,5,7,6,7,8,7,4,12,2,9,6,8
B,11,15,10,8,9,9,8,3,6,10,4,6,8,3,9,7
X,8,11,11,9,7,6,8,1,8,10,8,9,3,8,4,6
D,6,9,8,7,6,10,6,3,7,11,4,7,4,7,4,9
V,2,5,4,4,1,6,11,3,4,8,11,8,2,10,1,8
I,2,11,0,8,1,7,7,5,3,7,6,8,0,8,0,8
Z,2,5,4,4,2,7,8,2,10,11,6,8,1,8,6,7
G,2,3,3,2,1,7,6,5,4,6,6,9,2,9,4,9
J,3,5,4,8,1,13,2,9,5,14,3,12,0,6,0,8
V,2,5,4,4,2,7,12,2,3,7,11,8,2,10,1,8
V,8,15,8,8,5,5,8,5,4,8,7,6,6,12,3,8
J,6,12,5,9,4,10,7,2,4,12,4,6,2,9,7,9
C,3,6,4,4,1,6,7,6,10,7,6,13,1,8,4,9
U,2,3,3,1,1,4,8,5,6,11,10,8,3,10,1,6
A,2,6,4,4,2,12,2,4,3,12,2,10,2,6,3,9
Y,3,10,5,7,1,10,10,3,2,5,13,8,2,11,0,8
T,3,7,5,5,3,7,11,1,8,7,11,8,1,10,1,8
M,5,8,7,6,6,8,7,2,4,9,5,7,7,6,2,8
V,5,8,5,6,3,4,11,2,3,8,10,7,3,12,1,7
S,4,8,5,6,3,6,8,4,6,10,9,8,2,9,5,4
M,5,6,6,8,4,7,7,12,2,7,9,8,9,6,0,8
Y,3,8,6,5,1,10,10,3,2,5,13,8,2,11,0,8
Z,9,9,6,12,6,6,9,4,2,12,7,7,3,8,13,6
M,3,8,4,6,3,8,6,12,1,5,9,8,7,6,0,8
M,3,7,4,5,4,7,5,10,0,7,8,8,6,5,0,8
J,3,8,3,6,2,13,3,5,4,13,2,10,0,7,0,8
K,7,13,7,7,4,8,7,2,6,10,7,9,6,11,4,8
B,3,3,4,4,3,7,7,6,5,7,6,6,2,8,6,10
K,4,10,6,8,7,7,7,5,4,7,5,7,4,6,9,14
Z,5,8,7,6,4,5,10,3,10,11,9,6,1,9,6,5
F,4,8,4,6,3,1,13,4,4,12,10,6,0,8,1,6
N,1,1,2,1,1,7,8,5,3,7,7,7,4,8,1,6
P,7,10,10,8,5,7,14,5,3,13,4,0,0,10,4,7
C,4,3,5,5,2,6,7,6,10,7,6,13,1,8,4,9
Z,4,8,6,6,3,9,5,3,10,11,4,9,1,7,6,9
S,2,3,4,2,1,8,7,2,6,10,6,8,1,9,5,8
W,4,6,7,4,4,9,11,2,3,5,9,8,7,11,1,8
P,2,3,4,2,2,7,9,4,4,11,4,4,1,9,3,8
L,4,8,4,6,1,0,0,6,6,0,1,4,0,8,0,8
U,3,4,4,6,2,8,5,14,5,7,13,8,3,9,0,8
J,3,10,4,7,1,13,2,9,4,14,4,12,1,6,0,8
J,2,4,3,6,1,12,2,9,4,13,6,13,1,6,0,8
Z,3,5,3,3,2,8,7,5,10,6,6,7,2,8,7,8
M,4,2,5,4,4,8,6,6,4,7,7,8,8,6,3,6
U,7,13,6,7,4,8,4,5,5,7,9,8,4,8,3,8
J,1,3,2,2,1,9,7,2,6,14,5,8,0,7,0,8
B,5,9,5,7,7,6,7,8,5,7,6,7,2,8,7,9
B,7,11,9,8,7,10,6,4,7,10,3,7,2,8,6,12
Q,8,14,8,8,4,9,4,4,7,11,4,10,3,7,8,11
N,3,4,5,3,2,7,9,2,5,10,6,6,5,9,1,7
D,3,7,4,5,3,9,7,5,7,10,4,5,3,8,3,8
B,1,0,1,0,0,7,7,6,4,7,6,7,1,8,5,9
E,4,6,6,4,4,7,8,2,7,11,7,9,3,8,4,9
E,3,3,5,2,2,6,8,3,8,11,8,9,2,9,4,7
N,6,11,8,8,5,7,9,2,5,9,6,7,5,9,1,8
T,2,4,4,6,1,7,14,0,6,8,11,8,0,8,0,8
Y,3,3,5,4,1,9,9,3,1,5,13,8,2,10,0,8
Q,7,9,7,10,8,8,8,6,2,7,7,11,4,10,8,6
U,9,15,8,8,5,5,5,4,4,7,8,10,7,5,3,9
H,3,3,4,4,2,7,10,14,2,7,3,8,3,8,0,8
J,2,10,3,8,1,14,3,7,5,14,1,10,0,7,0,8
D,1,4,3,3,2,10,6,3,5,10,3,6,2,8,2,9
G,2,4,2,2,1,6,7,5,5,9,7,10,2,8,4,9
V,5,9,7,8,9,7,7,5,4,7,6,8,7,9,7,8
U,2,2,3,3,2,7,9,5,7,7,9,9,3,9,1,8
U,7,11,9,8,7,5,9,5,7,6,9,10,3,9,1,8
Z,3,3,4,4,2,7,7,3,14,9,6,8,0,8,8,8
G,2,3,3,1,1,7,7,5,5,9,6,10,2,9,4,10
L,4,11,5,8,4,7,4,1,7,8,2,10,1,6,3,8
D,4,6,5,4,4,9,7,3,6,10,4,6,3,8,2,8
J,3,10,5,7,5,9,8,3,3,8,4,6,4,8,6,5
K,3,6,5,4,5,7,6,3,4,6,6,8,7,7,6,9
A,3,9,5,7,3,12,3,4,3,11,1,9,2,6,3,9
L,3,4,4,7,1,0,1,6,6,0,0,6,0,8,0,8
X,4,9,6,7,5,8,5,3,5,6,7,8,3,9,9,9
Q,5,9,5,5,3,11,5,3,6,9,4,7,3,9,6,11
F,3,8,3,6,2,2,12,4,3,12,10,6,0,8,2,7
W,2,3,4,2,2,7,10,2,2,6,9,8,5,11,0,7
K,6,9,9,6,6,5,7,1,7,10,8,10,3,8,4,7
P,4,9,4,6,4,4,12,7,1,10,6,4,1,10,3,8
V,6,9,5,5,2,8,11,4,5,7,10,5,4,10,2,6
L,7,15,6,8,3,10,2,3,5,13,4,12,2,8,5,10
A,3,8,5,5,1,6,6,3,1,6,0,8,2,6,1,7
B,3,3,3,4,3,6,7,9,6,7,6,7,2,8,8,10
S,6,9,5,5,2,8,4,4,5,9,2,8,3,6,5,8
I,6,11,4,6,2,10,6,5,5,12,3,6,3,8,5,10
B,1,0,1,0,1,7,8,6,4,7,6,7,1,8,6,9
F,4,8,6,6,5,4,10,1,2,10,8,7,5,10,2,4
I,3,4,4,5,3,7,8,4,5,7,8,7,2,9,8,9
M,5,8,7,6,7,7,6,5,5,7,7,10,11,6,2,8
K,2,1,3,2,2,5,7,4,7,7,6,11,3,8,4,9
C,2,3,2,2,1,6,8,6,7,8,7,12,1,9,3,10
H,4,7,6,5,4,9,8,3,7,10,4,7,3,8,3,9
S,3,2,4,4,3,8,7,7,5,7,6,7,2,8,9,8
B,4,5,5,7,4,7,7,10,7,7,6,8,2,8,9,9
O,2,3,2,1,1,8,7,6,4,9,6,8,2,8,3,8
M,9,11,12,8,8,4,6,4,5,10,11,11,11,6,4,8
I,1,9,0,6,0,7,7,4,4,7,6,8,0,8,0,8
W,7,9,10,8,11,6,6,6,5,5,5,8,11,11,9,12
U,4,6,4,4,1,8,5,12,5,7,15,8,3,9,0,8
Y,4,5,5,4,2,4,11,2,7,11,10,6,1,11,2,5
A,3,9,6,7,3,11,2,3,3,10,2,9,2,6,3,8
P,2,3,4,2,2,7,10,3,4,12,4,3,1,10,2,8
B,4,7,6,5,5,7,8,5,5,9,6,6,3,7,6,7
O,4,7,5,5,3,8,6,8,5,10,6,9,3,8,3,8
Y,5,7,5,5,2,3,10,3,7,11,12,7,2,11,3,5
I,4,5,6,5,4,8,9,4,5,7,6,9,3,8,8,7
R,3,9,4,6,3,5,10,9,3,7,4,8,3,7,6,11
N,6,8,9,6,5,10,8,3,6,10,2,4,5,9,1,7
B,3,7,3,5,4,6,7,7,5,7,6,7,2,8,7,10
Q,9,15,8,8,4,9,3,4,7,11,4,10,3,8,8,11
H,6,11,8,8,6,9,7,6,7,7,6,8,6,8,4,7
J,2,4,3,3,1,11,6,2,7,11,3,7,0,7,1,8
W,4,4,5,6,3,7,8,4,1,7,8,8,8,10,0,8
Y,5,11,6,8,2,3,11,3,8,13,11,5,0,10,2,4
F,4,9,5,7,3,4,11,3,7,11,10,6,1,10,3,5
A,4,9,6,6,2,7,4,3,2,7,1,8,3,7,3,8
X,1,0,2,0,0,7,7,4,4,7,6,8,2,8,3,8
Z,5,10,7,8,5,7,8,2,9,12,7,8,1,9,6,7
H,3,7,4,4,2,7,9,14,2,7,3,8,3,8,0,8
K,6,11,9,8,8,7,6,1,6,10,5,9,7,7,6,9
J,4,7,5,8,5,8,8,4,5,7,6,8,3,8,9,8
N,2,4,4,3,2,6,9,2,4,10,7,7,5,8,1,8
W,5,9,7,7,7,7,5,6,2,7,7,8,7,7,6,12
U,4,6,5,4,2,6,8,7,9,9,10,8,3,9,1,8
Y,2,6,4,4,1,9,10,3,2,5,13,8,2,11,0,8
Q,4,7,4,9,4,7,7,6,3,8,9,10,3,8,6,8
V,3,3,4,2,1,4,12,4,3,11,11,6,2,11,1,8
D,6,13,6,7,5,11,5,4,6,10,4,7,5,9,6,10
V,3,8,4,6,2,7,9,4,2,8,12,8,2,10,0,8
R,4,8,5,6,3,5,12,8,4,8,3,9,3,7,6,11
L,1,0,1,1,0,2,2,5,5,1,1,6,0,8,0,8
V,4,10,7,8,3,8,12,3,4,5,11,8,3,10,1,8
F,5,10,7,8,5,6,10,2,6,13,7,5,1,10,2,7
B,5,8,7,7,8,7,8,5,5,8,6,8,7,8,9,6
R,3,4,4,5,2,6,10,9,4,7,4,8,3,7,5,10
J,3,6,4,4,3,9,6,6,5,8,6,7,2,8,4,6
V,3,7,5,5,1,7,8,4,2,7,14,8,3,10,0,8
Y,9,9,8,13,5,9,10,2,4,5,11,5,4,10,7,8
M,8,9,11,7,8,10,6,2,5,9,4,7,8,7,2,8
X,3,2,4,3,2,7,7,3,9,6,6,8,2,8,6,8
S,3,9,4,7,2,7,7,6,8,5,6,7,0,8,9,7
K,2,3,4,2,2,8,7,1,6,10,5,8,3,8,2,8
T,3,7,5,5,3,6,11,1,7,8,11,9,1,11,1,8
H,3,4,6,3,3,7,8,3,6,10,6,8,3,8,3,7
L,4,9,4,7,2,0,2,4,6,1,0,8,0,8,0,8
J,3,8,4,6,2,10,6,2,8,12,3,7,0,6,2,6
D,2,1,2,1,1,5,7,8,7,6,6,6,2,8,3,8
B,2,1,3,2,2,8,7,5,5,7,6,6,2,8,5,9
N,6,9,9,7,5,10,8,3,6,10,2,4,5,9,1,7
R,6,10,9,8,11,6,7,4,4,6,6,9,8,9,9,7
M,13,15,13,8,7,3,8,6,6,4,2,13,9,11,2,8
Z,3,6,4,4,2,7,7,4,14,9,6,8,0,8,8,8
R,6,9,8,7,9,6,7,4,5,7,6,8,6,9,7,5
K,5,11,6,8,2,3,7,8,2,7,6,11,4,8,2,11
W,5,9,8,7,7,7,12,2,2,6,8,8,7,12,1,8
P,3,6,4,4,2,7,10,4,4,12,5,3,1,10,3,8
E,3,8,4,6,4,6,7,5,8,7,5,10,3,8,5,9
E,7,12,5,6,4,8,7,4,4,11,5,9,3,9,8,11
Y,3,3,4,4,1,10,13,3,3,3,11,9,0,10,0,8
J,3,10,4,7,3,11,5,2,6,11,2,7,0,7,1,7
L,3,7,4,5,2,4,5,2,10,3,1,8,0,7,2,5
I,2,5,1,3,1,7,7,1,7,7,6,8,0,8,3,8
I,1,4,2,3,1,7,7,0,7,13,6,8,0,8,1,8
M,6,10,7,6,4,13,2,4,3,12,1,9,5,5,1,9
V,2,5,4,3,2,7,12,2,2,7,11,9,2,10,1,8
P,7,10,9,8,6,7,10,4,4,12,5,3,1,10,3,8
H,5,10,7,8,7,7,7,6,7,7,6,8,6,8,4,8
R,9,13,7,8,5,8,6,5,5,9,5,9,6,6,7,11
X,4,9,6,7,5,8,7,3,5,6,7,6,4,11,10,8
P,2,5,3,7,6,8,7,4,1,7,6,7,5,8,4,8
V,4,10,5,7,3,7,9,4,2,7,13,8,2,10,0,8
N,3,6,3,4,3,8,7,11,1,6,6,8,5,9,0,6
O,3,1,4,3,2,8,7,7,5,7,6,8,2,8,3,8
G,6,11,7,8,5,5,7,6,6,9,8,10,2,8,5,9
T,4,5,5,4,2,5,12,3,7,11,10,4,1,11,1,5
R,8,12,7,6,6,6,7,3,5,7,5,9,6,9,6,6
W,4,3,5,5,3,8,8,4,1,6,8,8,8,9,0,8
U,6,9,6,5,3,7,5,5,5,7,8,8,5,7,2,8
L,6,12,6,6,4,8,3,3,4,12,8,12,3,10,5,11
S,7,12,7,6,3,10,4,5,4,13,5,8,2,9,2,7
Q,4,9,5,11,7,9,8,8,2,5,7,10,3,8,6,10
M,3,1,4,3,3,7,6,6,4,6,7,7,8,6,2,7
F,2,2,3,3,2,5,10,4,5,10,9,5,1,10,3,6
V,5,8,5,6,2,2,11,5,4,12,12,8,2,10,1,8
V,5,7,5,5,2,3,11,4,3,10,12,8,2,10,1,8
F,4,8,4,6,3,1,13,4,3,12,10,7,0,8,1,6
M,4,11,6,8,6,6,6,6,5,7,7,10,8,5,2,9
I,3,8,4,6,2,7,7,0,6,13,6,8,0,8,1,8
P,3,7,3,4,2,4,12,8,2,10,6,4,1,10,4,8
U,4,2,5,3,2,6,8,5,8,7,10,9,3,9,1,8
B,3,4,3,3,3,7,7,5,5,7,6,6,2,8,6,9
Q,4,10,6,9,6,8,7,8,5,6,4,8,3,8,4,7
H,5,8,5,6,4,7,8,13,1,7,5,8,3,8,0,8
X,3,8,4,5,1,7,7,4,4,7,6,8,3,8,4,8
M,4,7,6,5,6,9,7,5,5,6,7,5,8,6,2,6
J,3,7,4,5,1,7,7,3,7,15,6,10,0,7,1,7
V,6,12,5,7,3,7,10,6,4,9,9,5,5,12,3,8
B,2,3,2,2,2,7,7,5,5,6,6,5,2,8,6,8
T,5,8,5,6,3,4,13,4,6,12,10,4,1,11,1,5
U,8,10,9,8,5,4,7,6,8,10,10,9,3,9,2,5
D,4,7,6,5,4,7,8,5,6,10,6,4,3,8,4,8
Y,4,9,6,7,2,7,12,1,3,7,11,8,0,10,0,8
O,2,1,2,2,1,8,7,7,4,7,6,8,2,8,3,8
O,2,0,2,1,1,7,6,7,5,7,6,8,2,8,3,8
K,4,4,4,6,2,4,7,8,1,7,6,11,3,8,2,11
W,8,11,8,6,5,9,8,4,5,6,9,6,11,8,3,6
A,5,11,7,8,4,8,3,2,3,7,1,8,2,7,3,7
O,8,12,6,6,4,5,9,6,4,9,8,9,5,10,5,8
S,5,9,6,8,7,9,7,5,6,7,6,7,6,8,10,12
T,5,7,5,5,3,6,11,3,7,11,9,5,2,12,3,4
S,2,7,3,5,3,8,8,7,5,7,5,6,2,8,8,8
X,3,4,5,3,2,7,7,1,8,10,6,8,2,8,3,7
T,2,9,4,6,1,5,14,1,6,9,11,7,0,8,0,8
U,5,9,6,7,5,6,6,8,5,7,6,10,5,8,7,3
Y,5,6,5,4,3,5,9,1,7,9,10,6,2,11,3,5
V,3,3,4,2,1,4,12,3,3,10,11,7,2,11,1,7
D,2,4,4,3,2,9,7,4,6,10,4,6,2,8,3,8
H,5,10,8,8,7,7,8,7,7,7,5,9,3,8,3,8
B,4,8,6,6,8,9,7,4,4,6,7,7,7,10,7,6
S,5,11,6,8,3,7,8,4,8,11,7,7,2,8,5,6
O,2,2,3,3,2,8,7,7,4,7,6,8,2,8,3,8
O,6,11,7,9,3,7,8,9,8,7,7,6,3,8,4,8
J,2,6,2,4,1,12,2,9,3,13,5,13,1,6,0,8
P,3,4,4,6,6,8,9,4,0,8,7,7,5,9,5,7
O,3,7,5,5,5,8,6,5,1,7,6,8,7,8,3,8
I,3,7,4,5,2,7,7,0,7,13,6,8,0,8,1,7
Z,4,9,6,6,6,7,7,3,8,8,6,9,1,8,11,7
W,3,6,5,4,7,9,7,4,2,7,6,8,8,11,1,6
F,2,4,3,5,1,1,13,4,4,12,11,7,0,8,2,6
H,5,7,8,5,6,8,7,3,6,10,6,8,3,8,3,8
D,2,4,3,3,2,9,6,3,5,10,4,6,2,8,2,8
B,2,1,2,2,1,7,7,8,5,6,6,7,2,8,7,10
K,0,0,1,0,0,4,7,5,3,7,6,10,3,8,2,11
T,4,10,6,8,3,5,11,1,9,9,12,8,0,10,1,7
N,3,8,3,6,2,7,7,13,2,5,6,8,5,8,0,8
F,2,6,2,4,1,1,11,3,6,11,11,9,0,8,1,6
A,3,8,5,5,2,7,4,3,1,7,1,8,3,7,2,8
V,8,11,7,8,5,4,11,1,3,8,10,8,5,12,1,7
F,9,13,7,7,3,4,13,3,5,13,7,3,2,7,5,4
Y,2,1,3,1,0,7,10,3,1,7,13,8,1,11,0,8
R,4,7,6,5,4,9,8,3,6,10,3,6,3,6,4,10
Q,5,9,5,11,7,8,7,6,2,8,7,10,3,8,5,8
M,6,9,9,7,6,10,5,3,5,9,3,6,8,6,2,9
P,3,5,3,3,2,4,10,3,5,10,8,4,0,10,3,7
K,3,7,4,5,3,6,7,4,7,6,6,9,3,8,5,9
Y,6,6,8,9,8,10,12,6,4,6,7,6,5,10,7,4
D,4,6,6,6,5,6,7,4,7,6,4,7,3,7,5,6
R,4,3,5,5,3,6,9,10,5,7,5,8,2,8,5,10
B,4,7,6,5,5,10,7,3,6,10,4,6,2,8,4,10
T,4,8,6,6,4,6,7,7,7,8,9,8,3,10,5,9
W,6,10,8,8,4,7,7,4,2,7,8,8,9,9,0,8
K,5,9,7,7,8,7,9,5,5,8,5,7,7,6,8,12
G,10,15,9,8,5,8,4,5,4,9,4,5,4,7,5,8
P,3,7,3,5,2,4,12,8,2,10,6,4,1,10,3,8
C,1,0,1,1,0,6,7,6,8,7,6,14,0,8,4,10
S,5,11,7,8,4,10,6,4,8,11,3,8,2,8,5,11
J,5,9,6,7,4,7,4,5,4,14,8,14,1,6,1,6
P,5,11,8,8,6,7,11,7,3,10,5,3,3,11,4,8
X,3,2,4,4,2,7,7,3,9,6,6,8,2,8,6,8
L,8,13,8,8,5,9,3,3,3,11,6,11,4,8,7,9
B,4,5,4,8,4,6,8,10,7,7,5,7,2,8,9,10
E,3,5,6,4,3,8,7,2,8,11,5,8,2,8,5,10
H,3,4,4,6,2,7,9,15,2,7,4,8,3,8,0,8
T,3,4,4,3,2,6,11,3,7,11,9,4,2,11,3,4
P,2,1,2,1,1,5,11,8,2,9,6,4,1,9,3,8
S,2,3,4,2,2,6,8,2,6,10,8,8,1,8,5,6
N,1,0,2,1,1,7,7,11,1,5,6,8,4,8,0,8
P,5,4,5,6,3,4,12,9,3,10,6,4,1,10,4,8
D,3,5,5,4,3,9,7,5,7,9,4,5,3,8,3,8
T,2,7,3,4,1,6,14,0,6,8,11,8,0,8,0,8
B,2,4,4,2,2,9,7,3,5,11,5,7,2,7,4,9
Y,3,7,5,5,2,7,10,2,2,7,12,8,1,11,0,8
J,3,11,4,8,2,15,3,4,5,13,0,8,0,7,0,8
A,3,9,6,7,4,11,3,2,2,9,2,9,3,4,3,8
J,3,7,5,5,2,11,6,2,7,14,3,8,0,8,0,8
S,2,3,3,4,1,9,10,5,9,5,6,5,0,7,8,7
E,4,8,4,6,2,3,7,6,11,7,6,15,0,8,7,7
I,0,1,0,1,0,7,7,4,4,7,6,8,0,8,0,8
H,5,9,7,6,7,8,8,6,7,7,6,9,6,8,4,7
G,4,5,5,8,2,7,6,8,8,6,5,10,2,8,6,11
Z,2,2,3,3,2,7,8,5,9,6,6,9,1,9,7,8
Y,4,6,6,4,3,9,10,1,7,3,11,8,1,11,1,9
H,3,7,4,5,5,7,5,4,4,6,5,8,4,8,5,7
B,4,8,6,6,7,8,8,7,6,7,5,6,2,7,7,10
A,4,9,6,7,4,10,3,2,2,8,2,10,4,4,3,8
B,6,10,6,6,5,10,6,3,5,9,5,8,6,8,7,9
M,6,10,8,8,7,9,6,6,5,6,7,6,8,6,2,6
P,4,9,4,6,2,5,10,9,4,9,6,5,2,10,4,8
W,5,11,8,8,6,4,11,2,3,8,9,9,9,11,2,7
S,2,4,4,2,1,6,8,2,7,11,7,8,1,8,4,6
J,3,10,4,8,1,13,2,9,4,14,5,13,1,6,0,8
N,8,14,9,8,5,7,7,2,4,12,4,8,6,8,0,7
I,0,0,0,0,0,7,7,4,4,7,6,8,0,8,0,8
P,5,8,7,11,11,8,9,4,1,8,7,6,8,10,6,8
G,2,3,3,2,1,6,7,5,5,9,7,10,2,8,4,10
E,6,8,8,6,5,4,9,4,9,11,10,9,2,9,4,5
Q,6,8,7,10,6,8,7,7,4,8,7,10,3,8,6,8
R,3,8,4,6,2,5,11,8,4,7,4,9,3,7,6,11
K,2,3,2,2,2,5,7,4,7,6,6,10,3,8,4,10
Y,4,5,6,6,6,9,9,6,4,7,7,7,5,11,6,4
P,4,5,6,6,6,6,9,4,2,8,7,6,6,10,4,6
G,6,9,6,4,3,7,3,5,2,6,5,4,4,8,5,7
G,4,7,6,5,6,7,7,6,2,7,6,11,4,9,7,9
P,7,9,8,7,7,6,7,5,5,7,6,9,5,9,7,10
L,7,15,7,8,5,9,3,3,4,12,6,11,3,8,6,9
J,1,2,2,3,1,10,6,2,6,12,4,9,0,7,1,7
Y,3,10,5,8,2,8,10,1,3,6,12,8,1,11,0,8
D,6,11,8,8,8,8,8,6,6,9,5,4,6,9,5,10
M,6,10,9,8,8,8,7,2,4,9,7,8,8,6,2,8
G,2,1,2,2,1,8,6,6,6,6,5,10,1,7,5,10
U,4,9,5,6,4,6,9,8,5,3,7,12,4,8,5,6
I,0,6,0,4,0,7,7,4,4,7,6,8,0,8,0,8
I,4,11,5,8,3,8,6,0,7,13,6,9,1,7,3,8
B,6,11,6,8,5,6,6,9,7,6,6,7,2,8,10,10
Q,1,2,2,3,2,7,7,5,2,8,8,9,2,9,4,9
J,2,7,3,5,1,13,2,9,4,14,4,12,1,6,0,8
B,4,11,5,8,4,6,7,9,7,7,6,7,2,8,9,10
A,3,5,5,5,4,9,8,3,4,6,8,7,4,10,4,5
S,3,4,5,2,2,8,8,2,7,10,6,7,1,8,5,7
U,4,4,4,6,2,8,5,14,5,6,13,8,3,9,0,8
E,2,3,4,2,2,7,7,2,7,11,7,9,2,8,4,8
R,3,8,3,6,3,6,10,7,4,6,3,10,2,6,5,11
L,3,6,3,4,1,1,0,6,6,0,1,5,0,8,0,8
N,3,7,4,5,2,7,7,14,2,5,6,8,5,8,0,8
B,6,9,9,8,10,7,8,5,5,7,7,8,7,9,9,6
K,6,9,8,6,9,7,6,3,5,6,6,9,8,6,7,7
X,5,8,6,7,7,6,8,2,5,7,6,9,4,7,8,7
P,6,9,5,4,2,5,11,5,3,13,5,4,4,9,3,8
I,1,9,0,6,0,7,7,4,4,7,6,8,0,8,0,8
G,8,14,7,8,5,8,6,4,3,9,6,8,4,9,8,8
A,3,10,6,8,4,12,2,3,3,10,2,9,2,6,4,8
K,4,4,6,3,3,8,6,1,7,10,4,9,4,7,4,9
B,5,10,7,8,7,8,6,7,7,6,7,6,2,8,8,11
Y,3,8,5,6,3,5,9,1,6,8,12,10,1,11,2,8
N,2,4,4,3,2,5,10,3,3,10,8,8,5,8,1,7
Y,2,4,4,6,1,5,10,3,2,8,13,8,2,11,0,8
O,9,12,6,7,3,8,7,6,5,9,4,7,5,9,5,9
E,6,11,9,9,7,6,8,2,8,10,7,9,3,8,5,7
U,6,10,6,8,4,3,9,5,6,11,11,9,3,9,1,7
U,7,8,8,6,3,4,8,5,8,10,10,9,3,9,2,6
X,3,5,6,4,3,9,7,1,9,10,4,7,2,8,3,8
D,1,0,1,0,0,6,7,7,5,7,6,6,2,8,3,8
D,2,1,3,2,2,8,7,7,7,7,7,4,2,8,3,6
S,4,5,6,4,3,7,7,2,8,11,5,7,1,8,5,8
K,4,5,7,4,4,5,7,2,8,10,9,10,3,8,4,6
I,2,10,0,7,0,7,7,4,4,7,6,8,0,8,0,8
F,4,5,5,5,5,7,8,4,5,7,5,7,4,9,8,7
A,1,1,3,2,1,6,2,2,1,6,2,7,1,6,2,6
R,3,6,5,4,5,6,7,3,3,7,6,9,5,9,7,5
P,3,2,4,3,3,6,9,4,4,9,7,4,1,10,4,7
Y,2,7,4,5,2,8,10,1,6,5,11,8,1,11,1,8
V,4,9,6,7,3,9,11,2,4,4,11,8,2,10,1,8
M,5,11,6,8,4,7,7,12,2,7,9,8,9,6,0,8
K,4,9,6,6,5,6,6,3,7,6,6,9,3,8,5,10
F,4,8,7,6,7,10,6,1,5,9,6,6,5,10,4,6
X,7,10,7,6,4,9,6,2,7,11,4,7,4,9,4,9
H,4,9,6,6,7,7,7,6,6,7,6,9,3,8,3,8
L,4,9,5,7,1,0,0,6,6,0,1,5,0,8,0,8
H,6,9,8,6,7,11,6,3,6,10,3,7,3,7,3,10
J,5,11,7,8,8,10,7,4,4,8,4,5,4,7,6,5
R,2,3,3,2,2,6,7,5,5,7,6,7,2,7,4,9
G,1,1,2,1,1,7,7,5,5,6,6,10,2,9,3,9
F,5,9,8,6,7,4,10,1,4,10,7,6,7,10,3,4
D,6,9,6,4,3,12,2,4,5,12,2,9,4,7,2,10
K,9,13,9,7,4,4,9,3,7,10,9,11,5,7,3,6
L,3,9,5,6,3,5,4,2,8,6,1,10,0,6,3,7
P,5,4,5,6,3,5,9,10,5,8,5,5,2,10,4,8
A,2,3,3,2,1,8,2,2,1,6,2,8,2,7,2,7
I,6,10,8,7,5,7,6,2,8,7,6,8,0,9,4,8
X,3,7,5,5,2,9,7,1,8,10,4,7,3,8,3,8
M,3,6,5,4,5,12,5,3,2,9,4,8,5,6,2,6
R,4,2,4,3,3,7,8,5,5,6,5,6,3,7,4,8
Y,1,0,1,0,0,7,10,3,1,7,12,8,1,11,0,8
I,1,3,2,1,0,7,7,1,7,13,6,8,0,8,0,7
T,5,11,6,8,8,7,8,4,5,6,7,9,7,7,8,7
F,3,9,4,6,2,1,12,5,4,11,10,7,0,8,3,6
R,5,10,8,8,5,11,7,3,6,11,1,6,4,5,4,10
Z,9,11,6,15,6,5,11,3,3,12,8,6,3,9,11,5
K,4,8,6,6,3,7,7,1,7,10,6,9,3,8,4,8
R,6,9,6,5,4,9,8,4,6,9,2,6,5,5,5,7
E,4,8,5,6,3,3,9,6,12,7,5,14,0,8,7,7
Y,10,12,8,7,5,6,8,4,5,10,7,4,3,9,5,4
M,6,10,7,8,4,7,7,13,2,8,9,8,9,6,0,8
G,8,15,7,8,6,8,5,4,3,8,6,8,4,9,8,8
X,4,6,6,4,2,7,7,2,8,11,6,8,3,8,3,7
Z,3,10,4,7,3,7,8,3,11,9,6,8,0,8,7,8
T,3,8,4,5,1,8,15,1,6,6,11,9,0,8,0,8
A,3,3,5,4,1,9,3,3,2,8,2,9,3,6,2,8
A,2,4,4,5,1,8,6,3,1,7,0,8,2,6,1,8
P,3,5,5,4,3,8,9,3,4,12,4,4,2,8,3,8
H,4,8,4,5,2,7,8,15,1,7,5,8,3,8,0,8
T,5,10,7,8,7,7,6,7,7,6,8,9,4,9,8,6
M,7,10,9,8,8,9,6,2,5,9,5,7,9,8,2,8
K,4,9,6,7,7,6,6,3,4,6,5,9,8,6,8,8
T,1,1,2,1,0,7,14,1,4,7,11,8,0,8,0,8
J,2,7,3,5,2,8,7,2,5,11,5,8,3,8,2,6
I,2,8,3,6,2,9,6,0,7,13,5,9,0,8,1,8
J,1,5,2,3,1,10,6,2,6,11,3,8,0,7,1,7
C,4,8,5,6,2,5,9,8,8,13,9,6,2,10,2,6
Y,3,3,4,2,1,4,11,2,7,11,10,5,1,11,2,5
L,7,15,7,8,5,9,3,4,4,12,7,11,4,8,7,9
B,2,4,3,2,2,8,7,3,5,9,6,6,2,8,4,8
P,6,10,8,8,6,8,10,5,4,11,4,3,1,10,3,8
Q,4,10,5,9,6,8,7,8,5,6,3,8,3,9,4,8
D,3,6,4,4,5,9,7,5,4,7,5,7,4,7,6,5
E,5,11,4,6,3,9,6,3,5,11,4,8,3,9,7,11
D,5,7,6,6,5,6,7,6,7,7,5,7,4,7,5,5
P,6,11,8,8,8,7,5,6,5,7,6,9,6,9,8,9
O,4,7,6,5,4,7,7,8,4,7,6,8,3,8,3,8
H,4,7,6,5,5,8,6,6,7,7,7,6,3,9,3,7
N,7,11,10,8,6,12,7,3,5,10,0,3,7,11,2,9
A,3,6,5,4,2,9,2,2,2,7,1,8,2,7,3,7
T,4,8,6,6,5,7,7,7,7,5,9,10,4,8,7,6
C,1,1,2,1,1,6,8,6,6,8,7,12,1,9,3,10
L,1,3,2,2,1,7,4,2,7,7,2,9,0,7,2,8
P,2,7,4,5,2,6,11,5,4,10,8,3,1,10,4,6
P,4,9,5,7,4,5,10,4,5,10,9,4,4,10,4,7
J,3,5,4,7,1,12,2,9,4,14,5,13,1,6,0,8
D,3,1,4,2,2,7,7,6,7,6,5,5,2,8,3,7
I,0,3,0,1,0,7,7,1,7,7,6,8,0,8,2,8
H,2,3,4,2,2,8,7,3,5,10,6,8,3,8,2,8
T,9,11,9,8,7,7,10,2,9,11,9,5,4,11,5,5
Y,7,9,7,7,4,3,10,2,7,11,11,7,1,11,2,5
C,3,6,4,4,2,6,7,5,6,11,8,12,1,9,3,9
S,4,5,6,4,6,8,8,4,5,7,7,8,4,9,9,10
L,5,11,5,8,2,0,0,6,6,0,1,5,0,8,0,8
N,3,2,4,4,3,7,9,5,5,7,6,6,5,9,2,6
G,5,7,6,5,4,5,7,6,5,9,7,10,2,9,4,10
Q,7,9,8,11,9,8,7,6,2,7,7,12,6,9,9,6
I,1,8,0,5,0,7,7,4,4,7,6,8,0,8,0,8
V,4,8,6,6,3,7,11,2,3,5,11,9,2,10,1,8
R,4,9,5,7,4,9,8,4,6,9,3,7,3,7,4,11
N,1,3,3,1,1,9,8,3,4,10,3,5,4,8,1,8
C,6,14,5,8,4,7,8,4,3,9,8,10,4,9,9,11
T,4,7,5,5,4,7,8,7,7,7,8,9,3,10,5,8
R,4,9,5,7,5,9,7,3,5,9,3,8,3,6,3,11
Z,3,8,4,6,2,7,7,4,14,9,6,8,0,8,8,8
B,2,2,3,3,2,7,7,5,5,6,6,6,2,8,5,9
T,2,2,3,3,2,7,11,2,7,7,11,8,1,11,1,8
R,1,0,1,0,0,6,8,6,3,7,5,7,2,7,4,11
J,2,3,4,2,1,9,6,3,5,14,6,10,0,7,0,8
M,5,10,5,8,4,7,7,12,2,7,9,8,8,6,0,8
X,9,13,9,7,5,4,9,3,8,12,10,9,4,9,4,5
S,5,10,6,8,4,9,6,5,8,11,2,8,2,7,5,11
S,3,6,4,4,2,8,7,5,8,5,6,8,0,8,9,8
G,2,1,2,1,1,8,6,6,6,6,5,9,1,7,5,10
B,9,14,7,8,4,9,6,6,6,11,4,9,6,7,7,10
M,2,0,2,1,1,7,6,10,0,7,8,8,6,6,0,8
S,3,6,4,4,2,6,5,5,9,5,6,10,0,9,9,8
M,3,7,4,5,3,7,6,11,1,8,9,8,7,6,0,8
L,2,6,4,4,1,5,4,1,9,7,1,9,0,7,2,7
G,3,6,4,4,3,7,6,6,6,6,6,10,2,9,4,8
C,7,10,5,5,2,6,10,6,7,12,8,8,2,9,5,8
S,5,8,7,6,4,5,8,4,6,10,9,8,2,8,5,4
C,4,10,5,8,2,5,7,7,10,7,5,14,1,9,4,9
R,2,4,3,3,2,7,7,5,5,6,5,6,2,7,4,8
G,6,11,8,8,9,8,7,6,2,7,6,11,5,8,9,7
C,2,4,3,3,2,6,8,7,8,8,7,13,1,9,4,10
I,3,8,4,6,2,7,8,0,8,14,6,6,0,8,1,7
Y,8,11,8,8,4,2,11,3,6,12,12,7,1,11,2,5
C,3,6,4,4,4,8,6,5,2,7,7,10,6,9,4,7
Y,4,11,6,8,3,10,10,1,3,6,12,8,1,11,0,8
K,4,2,5,3,3,5,7,4,8,7,6,11,3,8,5,9
I,7,8,8,9,8,7,8,4,6,6,8,7,4,9,10,9
E,5,9,7,7,6,8,7,6,3,7,6,10,5,9,9,8
O,2,5,3,4,2,7,7,8,5,7,5,8,2,8,3,8
M,5,7,7,5,6,4,7,3,4,10,10,10,6,6,2,6
Q,4,8,5,9,5,8,7,7,2,8,7,12,3,9,6,8
Z,3,9,4,6,3,7,7,6,11,6,6,8,1,8,8,8
H,3,8,5,6,6,8,6,4,5,6,6,8,6,7,6,7
Z,8,8,6,12,5,8,5,5,4,11,6,8,3,9,11,7
H,4,9,6,7,7,7,7,5,6,7,6,8,3,8,3,8
O,5,9,6,7,4,7,8,8,6,7,8,8,3,7,4,9
U,5,9,5,6,4,7,5,14,5,7,11,8,3,9,0,8
W,6,9,6,7,7,4,9,2,3,9,8,8,7,11,2,7
L,3,8,3,6,1,0,1,5,6,0,0,6,0,8,0,8
J,0,0,1,1,0,12,4,5,3,12,4,11,0,7,0,8
L,5,10,7,8,5,5,5,1,9,6,2,10,3,7,4,5
O,5,8,7,7,6,7,5,5,5,9,5,10,5,5,7,5
K,6,11,8,8,7,6,6,4,7,6,6,11,5,7,8,10
J,4,6,6,7,5,8,9,5,5,7,7,9,3,7,8,6
K,3,6,4,4,4,7,9,4,4,7,5,8,4,7,6,9
T,3,7,4,5,2,7,11,3,7,10,9,4,2,11,3,5
G,4,10,6,8,7,7,9,6,3,5,5,11,5,7,8,7
M,5,5,6,7,4,7,7,12,2,7,9,8,9,6,0,8
J,2,10,3,7,1,15,2,6,6,14,0,9,0,7,0,8
V,3,4,5,2,1,3,13,4,2,11,11,7,2,10,1,7
T,6,8,6,6,3,6,11,2,9,12,9,4,1,11,3,4
Y,2,1,4,2,1,6,10,2,7,8,11,8,1,11,2,7
C,3,3,4,5,1,5,7,6,9,6,6,12,1,8,4,8
A,3,4,5,6,2,8,5,3,1,7,1,8,2,7,2,8
R,8,12,6,6,4,10,6,6,5,11,2,8,7,6,5,10
M,5,9,8,7,7,12,6,2,4,9,2,6,8,6,2,8
U,9,10,9,8,3,4,9,6,9,13,12,9,3,9,1,7
Q,6,8,6,9,8,8,7,6,3,8,8,10,3,8,6,8
X,3,6,5,4,3,8,7,4,9,6,6,8,3,8,6,8
C,4,7,5,5,5,6,7,4,4,7,7,10,6,9,3,8
Y,4,10,6,7,1,6,10,3,2,8,13,8,1,11,0,8
L,3,6,4,4,2,4,4,4,9,2,1,7,0,7,1,6
M,4,8,7,6,9,9,5,2,2,8,4,8,10,6,2,6
S,1,0,1,0,0,8,7,3,5,5,6,7,0,8,6,8
I,2,7,2,5,2,7,7,0,7,7,6,8,0,8,3,8
J,6,7,4,11,3,6,9,3,4,13,5,5,3,8,6,9
E,10,15,7,8,5,7,7,4,5,10,6,8,3,9,8,9
M,5,9,8,7,10,7,6,4,2,7,4,8,13,6,3,7
L,3,4,3,6,1,0,1,5,6,0,0,7,0,8,0,8
T,3,8,5,6,3,7,12,4,6,8,11,7,2,12,1,7
X,5,11,6,8,2,7,7,5,4,7,6,8,3,8,4,8
X,5,11,6,8,2,7,7,5,4,7,6,8,3,8,4,8
V,8,11,8,8,3,2,11,6,5,13,12,8,3,10,1,8
D,2,4,4,2,2,9,6,4,6,10,4,6,2,8,2,9
X,8,15,8,9,4,8,8,2,8,9,7,8,4,12,4,7
S,3,2,4,4,3,8,7,7,5,7,7,8,2,9,9,8
B,1,3,2,1,1,8,7,2,5,10,5,7,1,8,3,9
E,1,3,3,2,2,6,8,2,7,11,7,9,2,8,4,9
S,5,11,6,8,3,9,10,6,10,5,6,5,0,7,9,8
K,5,8,8,6,5,3,8,2,6,10,11,11,3,7,3,5
P,4,8,6,12,10,8,9,5,0,8,6,7,5,11,6,6
Z,2,2,3,4,2,7,7,5,9,6,6,8,2,8,7,8
R,3,5,6,3,4,8,8,3,5,9,4,7,3,6,3,11
S,2,3,3,2,1,9,7,2,6,10,5,7,1,9,5,9
F,2,1,3,2,1,5,11,4,5,10,9,5,1,9,3,6
L,4,8,5,6,3,4,3,5,9,1,1,5,1,6,1,5
N,5,9,6,7,4,8,6,9,6,4,4,4,5,7,3,7
N,6,7,8,5,4,10,7,3,6,10,1,4,6,10,2,8
N,1,0,1,1,0,7,7,10,0,6,6,8,4,8,0,8
D,4,8,6,6,4,8,7,6,7,10,5,5,3,8,3,8
M,6,10,7,8,4,8,7,13,2,6,9,8,9,6,0,8
Y,5,10,7,8,6,8,6,7,5,5,8,8,3,8,10,6
R,9,13,7,8,5,7,7,5,5,9,5,9,7,5,7,11
D,6,9,8,8,8,6,8,5,7,5,3,6,5,9,8,5
E,3,6,3,4,2,3,8,6,10,7,6,15,0,8,7,7
R,2,0,2,1,1,7,11,8,2,7,5,8,2,7,4,10
M,4,7,6,5,5,6,6,2,4,9,8,9,7,5,2,7
I,6,10,8,8,5,9,5,2,6,6,7,6,0,10,4,7
F,4,9,5,6,3,2,11,5,6,11,10,9,0,8,2,6
P,5,10,7,8,7,6,9,3,7,9,8,5,4,10,4,7
S,6,10,7,8,4,6,8,4,8,11,8,7,2,8,5,5
X,3,5,4,4,4,5,8,2,4,8,7,9,2,7,7,8
T,2,7,3,4,1,7,14,0,6,7,11,8,0,8,0,8
R,5,10,5,8,7,6,8,8,4,7,5,7,3,8,6,12
O,2,3,2,1,1,8,7,6,4,9,6,8,2,8,3,8
A,4,9,6,7,3,11,2,4,3,10,2,9,3,7,3,8
P,5,8,8,6,3,7,11,3,7,14,5,2,0,9,3,8
X,5,8,6,7,6,7,7,2,5,7,6,8,3,10,8,7
M,3,1,4,2,1,8,7,11,1,7,9,8,7,6,0,8
U,3,5,5,4,4,8,6,4,4,6,6,8,4,10,1,7
B,2,6,3,4,3,6,7,7,5,7,6,7,2,8,6,9
Z,3,8,4,6,3,7,7,6,10,6,6,8,1,8,8,8
G,5,8,6,6,4,6,7,5,4,9,8,9,2,7,5,9
P,4,9,5,7,5,5,8,6,4,8,7,9,3,8,7,10
S,6,10,9,8,11,6,7,3,2,7,5,6,3,8,11,4
M,7,8,9,7,10,5,8,5,4,6,5,8,13,7,6,9
E,5,5,5,8,3,3,8,6,12,7,5,15,0,8,7,6
K,5,11,7,8,7,9,6,1,6,10,3,8,7,7,6,11
T,3,4,5,6,1,7,15,1,5,7,11,8,0,8,0,8
A,7,15,5,8,4,10,3,3,2,8,4,11,5,5,4,8
S,2,6,3,4,3,7,6,7,5,7,7,8,2,9,8,7
R,4,8,4,6,4,6,8,9,4,7,5,8,2,7,5,11
D,3,8,4,6,6,10,7,4,5,7,6,6,4,6,9,6
H,6,10,9,8,8,7,7,3,6,10,6,8,3,8,3,7
G,5,9,4,4,3,9,3,5,2,9,7,10,4,9,6,8
E,6,10,8,8,7,9,6,2,7,11,4,9,5,7,6,11
O,5,10,5,8,5,8,6,8,4,9,5,8,3,8,3,8
J,6,10,8,8,4,5,9,3,6,15,7,9,2,7,2,7
C,5,8,7,7,6,5,7,3,4,7,6,11,4,10,7,10
I,1,3,2,2,0,7,7,1,7,13,6,9,0,8,1,8
D,4,6,5,5,4,6,6,6,7,7,6,8,4,6,5,5
F,1,0,1,1,0,3,11,4,3,11,9,7,0,8,2,8
U,2,3,3,2,1,4,8,4,6,11,10,9,3,9,1,7
Q,2,3,2,3,2,8,8,5,2,8,7,10,2,9,3,8
Q,3,7,5,5,4,8,4,7,4,6,5,7,3,8,3,9
W,6,10,9,7,7,4,11,2,2,8,9,9,7,12,1,8
R,4,6,5,4,4,6,7,4,6,7,6,6,6,7,4,8
J,1,3,3,2,1,8,6,3,5,14,6,11,1,7,0,7
Z,6,10,8,8,5,7,8,3,10,12,8,7,2,8,7,6
C,4,9,5,8,6,5,7,3,4,7,6,11,4,10,7,10
Q,2,3,3,3,2,8,7,6,3,6,6,9,2,8,5,9
Q,2,2,2,2,1,7,8,4,2,8,7,9,2,9,3,9
T,2,7,4,4,1,8,15,1,5,6,11,8,0,8,0,8
E,3,5,3,4,3,7,7,5,7,7,6,9,2,8,5,10
E,3,5,3,3,3,7,7,5,7,7,6,9,2,8,5,10
P,4,7,5,5,2,6,14,5,3,12,5,1,0,10,3,7
F,2,3,4,2,1,6,11,2,5,13,6,4,1,10,1,8
C,4,4,5,6,2,6,6,7,11,8,5,12,1,9,4,9
S,1,3,3,2,1,7,9,3,7,10,7,6,1,8,4,6
S,3,6,4,4,3,7,6,7,5,7,7,9,2,9,8,7
N,3,2,4,4,3,7,8,5,5,7,7,6,5,10,2,5
T,6,8,6,6,3,7,11,3,8,11,9,4,2,12,3,4
A,1,3,2,2,1,9,3,2,1,8,2,9,1,6,1,7
X,3,2,4,3,2,8,7,3,9,6,6,8,2,8,6,8
W,5,7,7,5,3,4,8,5,1,7,9,8,8,10,0,8
V,3,6,5,4,5,8,5,5,2,7,7,7,4,9,4,6
F,3,6,4,4,2,6,11,2,6,14,6,4,1,10,2,8
D,2,2,3,3,3,7,7,6,6,7,6,5,2,8,3,7
Q,4,9,5,8,3,9,8,8,6,5,8,9,3,8,5,9
H,1,1,2,1,1,7,7,12,1,7,6,8,3,8,0,8
O,4,6,6,5,4,6,6,5,5,8,4,8,3,7,5,6
V,4,6,4,4,2,5,11,3,4,9,11,7,2,10,1,8
T,3,8,5,6,1,7,15,1,5,7,11,8,0,8,0,8
U,3,6,4,4,1,7,4,14,5,7,13,8,3,9,0,8
Y,2,7,3,5,2,5,10,2,2,8,12,8,1,11,0,8
G,1,0,2,0,1,8,7,5,5,6,6,9,1,7,5,10
H,4,7,6,10,7,8,9,5,1,8,6,6,5,11,10,6
U,2,1,2,1,1,8,5,11,4,6,13,8,3,10,0,8
I,3,10,4,8,2,7,7,0,8,13,6,8,0,8,1,8
L,4,10,5,8,3,0,2,4,6,1,0,8,0,8,0,8
P,4,7,5,5,4,8,9,4,4,11,5,5,3,10,3,7
L,4,10,6,7,8,7,7,3,5,6,7,10,6,10,7,4
N,3,7,4,5,2,7,7,14,2,5,6,8,5,8,0,8
W,7,10,7,8,8,5,10,3,3,9,7,7,8,11,3,6
F,5,10,5,7,3,0,13,3,3,11,9,6,0,8,2,6
A,6,14,6,8,4,12,2,3,2,12,4,11,4,4,4,11
G,5,10,6,8,5,7,7,7,6,6,5,9,2,8,6,11
Y,4,7,6,5,2,9,11,1,7,3,11,8,1,11,2,9
L,5,10,7,7,3,6,4,1,10,8,2,11,0,7,3,7
M,4,1,5,3,3,8,6,6,5,6,7,8,8,5,2,7
O,2,4,3,2,1,8,7,7,5,7,6,8,2,8,3,8
G,4,7,5,5,4,6,7,6,4,5,7,9,2,7,4,9
Y,3,5,4,4,2,4,10,1,8,10,10,6,1,10,3,4
M,3,3,5,2,3,9,6,3,4,9,5,7,6,5,1,8
A,3,6,5,4,3,11,2,2,2,9,2,9,2,6,3,8
P,4,8,4,5,2,3,14,8,1,11,7,3,1,10,4,8
U,4,8,4,6,3,7,6,12,4,7,12,8,3,9,0,8
F,2,3,4,2,1,6,10,3,5,13,6,5,1,9,2,7
A,3,6,5,4,1,7,5,3,1,6,1,8,2,7,2,7
P,1,3,2,1,1,5,10,3,4,10,8,5,0,9,3,7
H,3,4,4,5,2,7,9,15,2,7,3,8,3,8,0,8
A,4,10,7,7,5,7,5,2,3,5,2,6,3,7,4,4
F,4,9,5,6,2,1,15,5,3,12,9,4,0,8,2,6
G,2,1,2,1,1,8,6,6,6,6,5,9,1,7,5,10
X,11,14,10,8,4,8,7,2,10,9,6,8,4,8,4,8
S,9,15,8,9,4,11,2,2,5,10,2,9,3,7,4,12
K,5,8,7,6,5,5,7,1,7,10,8,10,3,8,4,7
D,4,4,5,6,3,5,6,10,9,5,5,5,3,8,4,8
J,4,5,5,6,4,9,8,5,4,6,5,8,3,8,9,8
T,7,9,7,7,5,6,12,5,6,11,9,4,3,13,3,4
P,3,3,5,2,2,7,10,3,4,12,4,3,1,9,3,8
K,4,8,6,6,5,5,8,1,6,9,7,9,3,8,3,8
A,2,7,4,5,2,12,2,4,3,11,2,9,2,6,3,9
A,3,4,6,6,2,9,3,3,3,8,2,9,3,6,3,9
C,4,7,5,5,3,6,7,6,9,8,4,10,1,10,4,10
M,2,3,4,2,2,6,6,3,3,9,8,9,5,5,1,8
V,3,4,4,3,1,4,12,4,3,10,11,7,2,10,1,8
M,5,8,7,6,8,7,7,7,5,7,5,8,7,9,8,6
J,2,6,2,4,1,15,3,3,5,12,1,8,0,8,0,8
O,3,7,4,5,2,7,8,8,7,7,7,8,3,8,4,8
S,5,10,7,8,5,10,6,4,6,10,3,7,2,8,5,10
N,3,5,4,7,3,7,7,14,2,5,6,8,6,8,0,8
L,5,11,6,9,4,4,4,1,9,6,1,10,0,6,3,6
V,2,5,4,4,2,6,12,2,3,8,11,8,2,10,1,8
H,3,3,3,4,2,7,8,14,1,7,5,8,3,8,0,8
Z,3,5,4,7,2,7,7,4,14,10,6,8,0,8,8,8
J,2,7,3,5,1,13,2,8,4,13,4,12,1,6,0,8
K,11,15,10,8,4,7,8,3,8,9,7,8,6,8,4,7
X,6,8,9,6,4,6,8,2,9,10,9,8,3,8,4,7
C,7,10,7,7,4,6,7,6,8,13,8,12,3,11,5,5
D,3,6,3,4,3,5,7,8,6,7,7,6,2,8,3,8
E,4,10,4,8,5,2,8,5,9,7,7,14,0,8,6,9
M,5,9,8,7,6,5,7,3,4,10,9,9,8,6,3,8
A,7,13,7,7,4,12,3,6,2,12,2,10,5,3,4,10
M,6,9,8,6,8,7,7,6,5,6,7,9,8,6,2,8
C,3,7,4,5,2,5,8,6,7,7,6,12,1,9,4,10
J,3,10,4,8,1,12,2,10,4,14,4,13,1,6,0,8
J,2,5,4,3,2,9,5,4,5,14,6,11,1,6,0,7
L,4,10,4,8,1,0,1,6,6,0,0,6,0,8,0,8
Q,3,4,4,5,4,8,8,7,2,5,7,9,3,8,5,9
M,4,3,4,4,3,7,7,12,1,7,9,8,8,6,0,8
Z,2,3,4,2,2,7,8,2,9,12,6,8,1,9,5,8
Q,6,7,8,6,6,7,4,4,5,7,4,9,5,5,6,7
N,5,6,6,6,6,7,7,4,3,7,5,7,6,9,5,5
V,2,3,3,1,1,4,12,3,2,10,11,7,2,11,1,7
B,3,6,4,4,3,8,6,6,7,6,6,6,2,8,7,10
K,5,7,8,5,5,9,5,1,6,9,3,8,4,7,4,10
Q,6,12,6,6,4,11,4,4,6,12,3,9,3,9,7,12
A,3,7,5,5,3,11,2,2,2,9,2,9,3,6,3,9
R,4,8,6,6,4,7,8,6,6,6,5,8,4,6,7,9
I,1,1,1,2,1,7,7,1,7,7,6,8,0,8,2,8
M,6,8,9,6,9,10,6,3,3,9,4,7,9,8,3,6
H,6,11,6,8,3,7,6,15,0,7,7,8,3,8,0,8
D,4,6,6,4,4,7,7,6,5,7,6,6,4,8,3,7
D,2,4,4,3,2,8,7,5,6,9,5,5,2,8,3,7
H,3,4,4,3,3,7,8,5,7,7,6,8,6,8,4,8
R,3,3,4,5,2,5,11,8,4,7,3,9,3,7,6,11
Z,4,7,5,5,3,7,8,2,9,11,7,8,1,8,6,7
Q,4,7,5,6,3,7,6,8,6,6,7,7,3,8,5,9
B,4,9,5,6,4,6,7,8,7,7,6,7,2,8,9,10
G,2,4,3,3,2,6,7,5,5,9,7,10,2,8,4,9
B,1,0,2,1,1,7,8,7,5,7,6,7,1,8,6,8
C,4,5,5,7,2,5,7,7,10,7,6,13,1,8,4,8
K,8,15,8,8,5,3,8,4,6,10,11,11,5,11,4,7
C,8,13,5,8,2,8,6,7,7,12,5,9,2,10,5,9
W,4,7,5,5,5,7,7,6,2,7,8,8,5,8,3,9
Q,3,7,4,6,2,8,6,8,6,6,4,8,3,8,4,8
U,6,10,6,5,3,7,6,5,4,6,7,7,5,6,3,6
X,5,8,8,6,5,10,6,1,8,10,2,7,4,9,4,10
D,4,2,5,3,3,7,7,6,7,6,6,5,5,8,3,7
F,6,7,8,8,8,7,9,4,5,7,7,6,5,9,9,9
Z,5,9,7,6,5,7,8,2,9,12,6,8,1,9,6,8
K,7,9,10,7,7,2,9,2,7,10,11,11,5,7,4,4
S,2,3,3,2,2,8,7,6,4,7,6,8,2,8,9,8
O,6,11,7,9,5,8,7,9,6,7,5,10,4,8,5,5
X,10,12,9,7,4,8,7,2,9,9,6,8,4,11,4,8
N,3,7,4,5,3,7,7,12,1,6,6,8,5,8,0,8
Q,3,4,4,5,3,7,8,5,2,8,9,10,2,9,5,9
J,6,11,7,8,3,9,5,3,7,15,4,10,0,6,1,7
J,3,9,4,6,2,9,5,3,6,14,4,9,0,7,1,7
H,6,9,8,7,7,7,7,7,5,6,5,7,3,7,7,10
O,4,6,5,4,2,7,7,8,8,7,6,8,3,8,4,8
B,4,6,6,4,5,9,8,3,6,7,6,8,6,8,6,9
P,1,0,2,0,0,5,10,7,2,9,6,5,1,9,3,8
N,6,10,9,8,6,11,8,3,5,10,1,4,7,11,2,8
E,2,4,2,3,2,7,7,5,7,7,6,8,2,8,5,10
I,7,13,6,7,3,12,5,2,6,12,3,6,2,10,4,12
L,1,3,3,2,1,6,4,1,7,7,2,10,0,7,2,8
H,4,8,4,5,2,7,7,15,1,7,6,8,3,8,0,8
H,3,5,5,3,3,8,6,3,5,10,6,9,3,7,3,8
M,1,0,2,0,1,7,6,9,0,7,8,8,5,6,0,8
H,6,11,6,6,3,8,8,3,4,9,6,7,6,9,5,9
X,1,0,1,0,0,8,7,3,5,7,6,8,2,8,3,7
U,9,10,7,5,3,5,3,5,5,3,7,7,5,8,2,7
I,5,11,6,8,4,9,6,0,8,13,5,9,0,8,1,9
X,6,10,9,7,5,7,7,0,8,10,6,8,3,8,3,8
C,2,6,3,4,2,7,8,8,7,10,6,11,2,11,4,9
B,2,3,2,2,2,7,7,5,5,7,6,6,2,8,5,9
D,2,3,3,2,2,7,7,6,7,7,6,4,2,8,3,7
V,3,2,6,4,2,7,12,2,3,6,11,9,4,12,2,7
K,4,9,5,6,5,6,5,4,4,6,6,9,3,6,8,10
K,4,8,6,6,7,7,7,3,4,6,6,8,7,7,7,7
B,4,11,6,8,8,8,8,6,6,7,6,5,2,8,6,9
Q,4,9,4,4,2,11,4,4,5,12,3,8,2,7,6,12
T,6,9,6,7,3,5,11,2,10,12,9,4,0,10,3,4
H,3,4,6,3,3,8,7,3,6,10,5,8,3,8,3,7
L,5,11,7,8,5,5,3,6,8,2,2,4,1,6,1,5
W,4,11,7,8,8,10,11,2,2,5,8,7,9,12,2,8
R,5,9,7,7,6,7,8,5,7,7,5,6,3,7,5,8
Y,2,7,4,5,2,5,9,1,6,9,12,9,1,11,2,7
A,3,3,5,4,1,8,6,3,1,7,1,8,2,7,1,8
U,8,10,9,8,6,3,9,5,8,10,10,10,3,9,2,6
Z,3,8,4,6,4,7,8,5,9,7,6,9,1,9,7,7
D,5,8,7,6,6,8,8,6,6,9,6,4,6,10,5,7
J,6,11,8,9,3,8,7,3,7,15,5,10,1,6,1,7
X,4,9,6,7,6,7,8,2,6,7,7,9,4,10,6,7
S,4,5,6,4,5,8,7,5,5,7,6,8,5,8,9,11
O,8,15,5,8,3,7,9,6,6,9,6,6,4,10,5,9
V,3,5,6,4,2,6,13,3,3,8,11,8,3,10,1,8
C,5,8,7,6,6,6,5,4,4,9,6,12,6,8,4,9
H,3,5,5,7,4,8,12,3,2,8,8,7,3,10,7,6
R,2,3,4,2,2,8,7,3,4,9,4,6,2,7,3,9
M,6,8,9,7,10,6,8,5,3,6,5,8,13,9,5,8
T,3,10,5,8,5,7,11,4,5,7,11,8,3,12,1,8
Y,1,1,2,1,0,7,10,2,2,7,12,8,1,11,0,8
Y,2,4,3,3,1,3,12,3,6,12,10,5,1,11,2,5
J,2,6,3,4,1,13,2,8,4,14,4,12,0,7,0,8
F,2,7,3,5,1,1,12,4,4,12,10,7,0,8,2,6
J,5,9,6,7,3,9,5,4,6,15,5,11,1,6,0,7
C,5,11,6,9,3,4,9,7,8,13,11,12,2,9,3,7
G,1,0,2,0,1,8,6,5,5,6,5,9,1,8,5,10
Q,6,7,8,6,6,7,4,5,6,7,4,8,5,4,6,7
P,3,8,4,6,2,3,14,8,1,11,7,3,1,10,4,8
Q,2,2,3,2,2,8,7,6,4,6,5,9,2,9,3,9
D,4,9,6,7,9,8,8,5,4,7,6,5,6,8,8,5
V,7,12,6,6,3,9,10,5,4,6,10,6,5,12,3,7
G,5,9,4,4,3,7,6,3,3,8,6,8,4,9,8,6
Y,2,1,2,1,0,7,10,2,2,7,12,8,1,11,0,8
L,3,6,3,4,1,0,1,6,6,0,1,5,0,8,0,8
N,5,11,5,9,6,7,7,13,1,6,6,8,5,9,0,7
V,4,6,5,4,3,9,11,3,1,4,10,9,3,11,4,9
C,2,1,2,2,0,6,7,6,9,7,6,15,0,8,4,10
I,1,4,2,3,1,7,7,1,8,13,6,8,0,8,1,8
Y,2,6,3,4,0,6,10,2,2,8,12,8,1,10,0,8
O,4,7,5,5,3,7,7,8,5,8,7,10,3,8,3,7
M,6,7,9,6,9,5,9,5,3,6,4,8,13,6,5,8
E,4,10,5,8,3,3,7,6,11,7,6,15,0,8,7,6
I,1,5,2,3,1,7,7,0,7,13,6,8,0,8,1,8
C,5,7,5,5,3,3,8,5,7,11,10,13,2,9,3,7
E,4,7,6,5,4,5,8,5,8,12,10,9,3,8,5,5
I,7,12,5,6,2,10,5,6,4,13,3,8,3,8,5,10
E,2,4,4,3,2,7,7,2,7,11,6,8,2,8,4,9
X,1,0,1,0,0,8,7,3,4,7,6,8,2,8,4,8
X,4,2,6,4,3,7,7,3,10,6,6,8,2,8,6,8
G,3,5,4,4,2,6,7,5,5,9,7,10,2,8,4,9
E,3,6,4,4,3,7,7,6,9,7,7,9,3,8,6,8
J,3,7,4,5,2,9,4,5,4,14,6,12,0,6,1,7
D,3,5,4,4,2,8,7,7,7,6,6,3,2,8,3,7
S,4,10,5,7,3,6,8,5,8,11,8,7,2,9,5,5
Z,4,9,6,6,4,8,7,2,9,11,5,9,1,8,6,8
W,7,10,10,8,14,9,7,5,2,7,7,8,13,10,4,6
M,4,3,4,5,3,7,7,12,1,7,9,8,8,6,0,8
L,4,8,5,6,3,3,4,2,8,2,1,8,0,7,1,6
R,3,9,3,6,4,5,9,8,3,7,5,8,2,7,5,11
H,4,7,6,5,4,7,8,3,6,10,7,8,3,8,3,8
D,3,7,3,5,3,6,7,9,7,6,5,6,2,8,3,7
S,2,4,4,3,2,7,7,2,7,10,6,8,1,9,5,8
Y,3,10,5,7,1,8,11,1,3,6,12,8,1,11,0,8
N,3,3,4,4,2,7,7,14,2,5,6,8,6,8,0,8
Y,4,4,5,6,7,8,8,3,2,7,8,9,4,11,7,7
R,3,9,4,6,4,6,8,8,4,7,5,8,2,7,5,11
D,2,4,4,3,2,8,7,4,6,10,5,6,2,8,3,8
O,3,4,4,6,2,7,6,9,6,6,5,6,3,8,4,8
G,3,7,4,5,2,7,6,8,7,6,6,8,2,8,6,11
H,9,15,10,8,7,8,7,3,5,10,4,7,7,6,6,7
Y,6,10,8,8,7,9,7,7,4,6,9,7,3,9,9,4
M,7,10,9,8,8,8,6,6,5,6,8,8,9,6,2,7
P,9,10,7,5,3,6,12,6,4,13,5,3,4,10,4,8
H,3,4,5,6,4,9,12,3,2,8,8,7,3,10,6,7
V,6,9,5,4,2,7,10,7,3,9,9,5,5,12,3,9
B,5,10,7,7,6,8,8,6,8,7,6,6,6,8,6,10
X,3,8,4,5,1,7,7,4,4,7,6,8,3,8,4,8
O,3,3,4,2,2,7,8,7,5,7,7,8,2,8,3,8
K,4,11,5,8,2,3,7,8,2,7,5,11,3,8,2,11
G,1,0,2,1,1,8,6,6,5,6,5,9,1,8,5,10
T,3,7,5,5,3,7,11,1,8,7,11,8,1,10,1,8
K,2,4,3,2,2,5,7,4,6,7,6,11,3,8,4,9
H,3,7,4,4,2,7,8,14,1,7,6,8,3,8,0,8
G,3,7,5,5,5,7,9,6,3,6,6,10,3,7,7,8
B,4,4,5,6,4,6,6,9,7,6,6,7,2,8,9,9
V,4,9,6,7,2,7,8,4,3,7,14,8,3,9,0,8
T,4,9,6,8,6,6,8,4,8,8,7,8,3,9,8,7
N,5,5,6,7,3,7,7,15,2,4,6,8,6,8,0,8
U,3,3,3,2,1,5,8,5,7,9,8,8,3,9,2,5
Z,4,6,6,4,3,6,9,3,9,11,8,6,1,9,6,6
K,1,0,1,0,0,5,8,7,0,7,6,10,3,8,2,11
H,8,13,8,7,4,10,8,4,6,9,2,5,6,7,4,9
I,1,3,1,2,1,7,7,1,7,7,6,8,0,8,2,8
A,2,1,3,2,1,8,2,2,1,7,2,8,2,7,2,7
H,4,8,6,6,8,7,6,5,3,6,6,8,7,7,9,9
G,4,8,5,6,2,8,6,8,8,7,5,12,2,8,5,10
O,8,13,6,8,3,7,7,5,5,8,4,7,5,9,5,8
E,1,1,2,2,1,4,7,5,8,7,6,13,0,8,6,9
X,4,8,7,6,4,4,8,2,8,10,12,10,3,8,4,5
J,4,10,5,7,3,8,6,3,6,14,4,9,0,6,1,7
O,2,4,3,3,2,7,7,6,4,9,7,7,2,8,3,8
X,1,1,2,2,1,7,7,3,8,6,6,8,2,8,5,8
V,4,4,6,7,1,8,8,4,3,7,14,8,3,9,0,8
C,5,10,5,8,3,6,8,7,7,13,7,9,2,11,3,7
M,5,5,6,4,4,8,6,6,5,6,7,7,10,6,4,6
Q,4,6,5,8,5,7,9,5,3,8,9,9,4,10,6,7
K,3,1,4,2,2,6,7,4,7,7,6,10,3,8,4,9
W,2,0,2,1,1,7,8,3,0,7,8,8,6,9,0,8
R,2,3,3,2,2,9,6,3,4,10,4,7,2,7,3,10
G,3,9,5,6,3,6,7,7,6,5,7,9,2,7,4,9
S,7,10,8,8,5,7,7,4,6,9,8,9,2,11,5,6
O,4,6,6,4,3,7,6,8,5,8,5,11,4,8,4,7
Y,3,10,5,7,3,7,10,2,6,6,12,9,2,11,2,8
P,5,4,5,6,3,4,13,8,2,10,6,3,1,10,4,8
T,3,4,3,3,1,5,12,3,6,11,9,5,1,11,1,5
R,4,6,6,4,4,9,7,4,5,9,3,7,3,7,4,11
H,6,10,6,6,4,5,8,3,4,10,9,9,6,10,5,8
E,6,9,8,7,7,8,6,6,2,7,6,9,4,8,8,10
B,3,7,5,5,3,9,7,4,6,10,5,6,2,8,6,9
F,3,4,3,3,2,5,11,3,6,11,9,5,1,10,3,6
N,5,10,5,7,3,7,7,15,2,4,6,8,6,8,0,8
H,3,4,3,5,2,7,7,14,1,7,6,8,3,8,0,8
H,5,9,8,7,5,6,8,3,6,10,8,9,3,8,3,7
L,3,7,4,5,2,6,4,2,8,7,2,10,0,7,2,8
Q,5,7,7,11,10,9,10,5,0,5,7,10,6,13,6,12
I,1,3,2,2,0,7,8,1,6,13,6,7,0,8,0,7
F,3,9,4,6,2,1,13,5,4,12,10,7,0,8,2,6
D,3,6,5,4,3,9,7,4,5,10,4,5,3,8,2,8
B,5,9,4,5,3,7,7,5,5,10,6,9,5,7,7,9
D,2,4,4,3,2,8,7,4,6,9,5,5,2,8,3,7
A,1,3,2,2,1,10,2,2,1,9,2,9,1,6,2,8
W,4,8,7,6,5,7,10,2,3,7,9,8,8,11,1,8
D,7,11,9,8,8,7,8,7,6,8,7,6,7,7,3,7
D,3,5,4,4,3,7,7,7,6,7,6,5,2,8,3,7
T,3,6,4,5,4,6,7,3,8,8,7,10,3,7,7,6
W,5,6,5,4,4,4,10,2,3,9,9,7,7,11,2,6
E,3,2,3,3,3,7,7,5,7,7,5,9,2,8,5,10
Z,3,9,5,7,5,8,6,3,7,7,6,8,1,7,11,9
Y,3,8,5,6,2,5,10,3,2,8,12,8,1,11,0,8
U,6,9,8,7,10,9,8,4,5,5,8,8,10,7,8,6
J,6,8,8,9,7,8,9,5,5,7,7,9,4,6,9,6
E,8,15,6,8,5,8,6,5,5,11,5,10,3,8,7,11
W,6,5,7,4,3,3,10,3,3,10,10,8,7,10,1,7
Y,6,8,8,10,10,10,10,6,3,6,7,7,6,11,8,3
I,1,7,0,5,1,7,7,5,3,7,6,8,0,8,0,8
J,3,9,4,7,3,10,6,0,8,11,3,6,0,7,1,7
I,1,4,2,3,0,7,8,0,7,13,6,8,0,8,0,8
P,8,15,7,8,4,6,9,6,4,13,5,5,4,10,4,8
N,4,9,6,6,4,8,9,9,6,8,5,5,3,7,3,7
H,3,9,4,6,2,7,8,15,1,7,4,8,3,8,0,8
P,11,13,8,7,4,6,12,6,5,14,6,2,4,10,4,8
Y,6,9,6,7,4,5,9,0,8,8,9,5,1,11,4,5
E,3,7,3,5,2,3,7,6,11,7,7,15,0,8,6,7
S,4,6,5,6,6,8,8,5,4,7,7,8,5,11,9,10
T,4,9,5,7,5,7,11,4,6,7,11,8,2,12,1,7
M,6,11,7,8,7,8,6,11,1,7,8,8,9,4,1,8
L,2,6,2,4,0,0,2,5,6,0,0,7,0,8,0,8
V,2,0,3,1,0,7,9,4,2,7,13,8,2,10,0,8
B,4,11,6,8,8,7,7,6,5,7,6,6,3,8,6,10
V,2,3,2,1,1,5,11,2,2,9,10,7,1,11,1,7
S,4,9,5,7,3,8,6,6,9,5,6,8,0,9,9,8
Q,6,13,5,7,3,8,4,4,7,10,4,9,3,8,8,10
S,3,4,5,3,2,8,7,2,7,10,5,8,1,9,5,8
O,5,9,6,7,5,7,8,8,4,6,7,9,3,7,4,7
E,1,0,1,1,1,5,7,5,8,7,6,12,0,8,6,9
A,2,6,4,4,1,8,5,3,1,7,1,8,2,7,2,8
T,3,3,4,2,1,5,11,3,7,11,9,4,1,10,2,5
G,2,1,3,2,2,6,7,6,6,6,6,10,2,9,3,9
R,4,11,6,8,6,6,7,6,6,6,5,8,3,6,6,9
H,4,7,4,4,2,7,10,14,2,7,3,8,3,8,0,8
M,8,9,11,7,9,6,8,3,4,9,9,9,9,8,3,8
D,4,7,6,5,3,9,6,4,8,11,4,6,3,8,3,9
X,3,7,5,5,4,7,7,3,8,5,6,8,2,8,6,8
C,6,11,6,8,3,4,8,6,8,12,10,13,1,9,3,7
S,3,7,4,5,3,8,8,5,7,5,6,8,0,8,8,8
P,5,10,7,8,6,7,10,5,4,12,5,3,1,10,3,8
P,4,8,6,6,4,6,9,7,6,9,7,4,2,10,4,6
J,0,0,1,0,0,11,4,5,3,12,4,10,0,7,0,8
R,5,11,7,8,6,6,8,5,6,6,5,7,3,6,6,9
E,7,11,4,6,2,8,7,5,8,10,6,9,2,10,7,9
J,2,10,3,7,3,8,6,2,4,11,5,10,1,6,2,6
Q,2,3,3,5,3,8,8,6,1,5,7,10,3,9,5,10
V,7,12,5,6,3,8,10,5,5,7,10,5,5,12,3,7
O,2,6,3,4,2,7,7,6,3,7,6,8,3,8,2,8
G,2,4,3,3,2,6,7,5,4,9,7,10,2,9,4,10
P,5,7,6,5,5,6,9,6,4,8,7,9,2,9,7,10
I,0,3,0,2,0,9,7,2,6,7,6,7,0,8,1,7
G,3,2,5,3,3,7,7,6,6,6,7,9,2,8,4,8
D,3,4,4,3,2,7,7,7,7,7,6,5,2,8,3,7
U,6,9,8,6,6,7,8,8,6,5,7,11,4,8,5,6
D,5,8,7,7,6,6,7,5,7,7,5,7,4,7,6,5
A,1,0,2,0,0,8,4,2,0,7,2,8,1,6,1,8
U,1,0,1,0,0,7,7,10,4,7,12,8,3,10,0,8
V,3,4,5,3,2,8,12,2,3,6,11,9,2,10,1,8
D,5,9,6,7,3,6,8,11,10,8,7,6,3,8,4,8
A,3,6,5,4,2,11,2,4,2,10,2,10,2,7,3,8
U,7,11,6,6,4,6,6,5,5,7,8,9,5,8,3,9
M,4,7,4,5,3,7,7,12,1,7,9,8,8,6,0,8
X,7,10,7,5,4,6,9,3,7,11,10,8,4,14,4,6
P,5,11,7,8,5,8,8,1,6,13,6,5,1,9,3,9
Z,4,5,6,8,5,11,4,2,5,8,3,6,1,8,6,9
J,6,8,7,9,7,8,7,4,6,6,6,7,4,9,10,9
X,7,15,8,8,5,10,5,3,8,11,2,8,4,5,4,9
G,4,8,5,6,3,7,7,7,7,11,6,11,2,9,4,9
C,2,2,3,4,2,6,8,7,7,8,8,13,1,9,4,10
R,4,5,7,4,6,7,7,3,4,7,5,8,6,9,5,7
B,3,7,5,5,5,7,8,7,6,7,5,7,2,7,6,10
T,3,5,4,4,3,7,11,3,7,7,11,8,2,11,1,8
O,3,7,4,5,2,7,6,8,8,7,4,8,3,8,4,8
G,5,8,7,7,7,7,8,6,3,7,7,9,7,10,8,8
N,6,12,7,6,3,7,7,2,3,12,5,8,5,8,0,7
K,3,4,5,3,3,6,8,1,7,10,7,10,3,8,2,7
N,5,9,7,6,4,7,9,6,5,7,6,7,7,9,3,7
S,3,4,3,3,2,8,7,7,5,7,6,8,2,9,9,8
K,4,2,5,3,3,5,7,4,8,7,6,11,3,8,5,9
A,4,12,7,8,3,7,4,3,2,6,1,8,3,7,3,7
I,3,10,5,7,2,7,7,0,9,14,6,8,0,8,1,8
I,1,6,0,4,0,7,7,4,4,7,6,8,0,8,0,8
J,5,6,6,7,5,8,9,4,5,7,6,8,3,8,8,8
O,3,4,4,3,2,8,6,7,4,9,5,8,2,8,3,8
C,3,4,4,6,1,5,6,7,9,6,5,13,1,8,4,9
L,2,5,4,4,2,7,4,1,8,8,2,10,0,7,2,8
T,3,7,4,5,2,6,12,2,7,8,11,8,1,11,1,7
K,5,10,7,7,6,6,7,4,7,6,6,9,7,8,5,9
P,6,9,8,7,6,5,14,6,2,12,6,2,1,10,3,7
U,6,7,7,5,4,4,8,5,7,9,8,9,3,9,3,5
P,4,10,6,7,6,7,6,7,4,7,6,8,3,8,7,10
T,6,13,5,7,2,6,9,3,7,13,6,6,2,8,4,4
C,3,2,4,4,2,5,8,7,7,9,8,13,1,9,4,10
N,2,3,3,2,2,7,9,6,4,8,6,7,4,8,1,7
H,4,2,5,3,4,7,7,6,6,7,6,8,3,8,3,9
K,5,11,6,8,2,4,5,9,2,7,7,12,4,7,3,11
F,4,8,6,9,8,7,9,4,4,8,6,7,4,9,8,8
C,4,7,5,5,2,7,7,6,7,12,7,11,2,10,3,8
F,5,11,6,8,6,6,9,4,7,10,9,6,2,9,4,6
L,4,9,5,4,3,9,4,3,4,12,7,11,3,10,4,10
Y,4,7,4,5,2,4,9,2,6,10,11,6,1,11,2,5
S,7,11,9,8,11,8,6,5,3,8,6,8,5,7,11,8
U,3,8,5,6,3,6,8,8,9,9,9,8,3,9,1,8
N,1,1,2,2,1,7,7,11,1,5,6,8,4,8,0,8
Z,4,8,5,6,3,8,6,2,10,11,4,9,2,8,6,9
O,2,1,3,2,2,8,7,7,4,7,6,8,2,8,3,8
P,6,9,5,5,2,7,9,5,3,12,4,5,4,9,4,8
J,3,10,4,8,2,14,3,5,5,13,1,9,0,7,0,8
O,4,9,6,7,3,8,7,9,8,7,5,8,3,8,4,8
Z,2,4,4,2,2,7,7,2,9,12,6,8,1,8,5,8
X,4,4,6,3,3,7,6,1,9,11,7,9,3,7,3,7
H,5,10,7,8,8,7,7,6,7,7,6,9,3,8,4,8
X,5,9,6,6,1,7,7,5,4,7,6,8,3,8,4,8
H,5,6,7,4,5,5,9,3,6,10,9,9,3,9,3,6
K,3,7,3,5,2,5,7,7,2,6,5,11,3,8,2,11
D,5,11,6,8,7,10,6,3,6,10,3,6,3,8,3,9
T,4,9,5,7,4,9,11,3,7,5,11,8,2,12,1,8
A,4,11,6,8,4,8,3,2,3,6,1,8,2,7,3,7
H,4,5,5,3,3,7,7,6,6,7,6,8,3,8,3,8
Q,2,3,3,3,2,8,9,5,2,5,8,10,2,9,5,9
I,0,1,0,1,0,7,7,4,4,7,6,8,0,8,0,8
P,8,11,7,6,4,8,9,4,4,12,4,4,4,10,5,7
F,6,10,8,8,9,7,6,6,4,8,7,8,4,10,8,11
K,1,0,1,0,0,4,6,5,1,7,6,10,2,7,1,10
H,1,0,2,0,0,7,8,11,1,7,6,8,2,8,0,8
E,3,6,3,4,2,3,8,6,10,7,5,14,0,8,7,7
A,2,4,4,3,2,9,2,2,1,8,2,9,2,7,2,8
C,7,11,8,8,5,4,8,6,7,12,9,11,2,11,3,7
H,7,12,8,6,5,11,6,3,5,10,4,6,5,9,4,8
I,1,10,0,8,1,7,7,5,3,7,6,8,0,8,0,8
J,1,7,2,5,1,9,6,2,7,11,4,8,0,7,1,6
Y,9,9,7,13,5,7,11,2,3,9,10,5,4,10,6,8
G,3,5,4,3,2,6,7,5,5,9,7,10,2,8,4,9
X,5,10,6,7,2,7,7,5,4,7,6,8,3,8,4,8
T,2,6,4,4,1,8,15,1,5,6,11,8,0,8,0,8
D,3,7,5,5,4,9,7,3,5,10,4,6,3,8,2,8
Q,5,8,5,9,5,8,6,7,2,8,7,12,3,8,6,7
Y,3,8,5,6,1,6,9,3,1,8,13,8,2,11,0,8
O,4,7,4,5,4,7,8,7,4,9,7,8,3,8,3,8
B,5,9,7,7,5,8,8,4,7,10,5,5,2,8,6,10
E,3,5,5,3,2,6,7,1,8,11,6,9,2,8,4,8
Z,3,3,4,5,2,7,7,4,14,9,6,8,0,8,8,8
X,7,15,8,8,5,11,7,2,8,11,4,6,3,11,4,9
G,2,2,4,3,2,6,7,6,6,7,6,10,2,8,4,9
M,6,10,8,8,10,7,6,7,4,6,5,8,8,8,8,9
U,4,7,5,5,2,7,4,14,5,7,14,8,3,9,0,8
X,4,9,7,6,4,7,7,0,8,9,6,8,2,8,3,7
W,3,2,4,3,3,8,11,2,2,6,8,8,6,11,0,8
M,2,3,4,2,2,8,6,3,4,9,6,8,6,5,1,7
T,3,4,4,3,2,5,12,3,7,11,9,4,1,11,2,5
B,2,3,4,1,2,8,7,2,5,10,5,6,1,8,4,9
J,1,6,2,4,1,14,2,6,5,13,1,9,0,7,0,8
I,1,3,2,2,1,7,8,1,7,13,6,7,0,8,1,7
L,2,6,3,4,2,3,4,3,8,2,1,8,0,7,1,6
F,3,9,5,6,3,4,11,2,6,11,10,6,1,10,3,5
L,3,7,4,5,3,5,5,2,8,7,2,9,1,7,3,7
N,4,9,4,6,4,8,7,12,1,6,6,8,5,9,0,8
J,3,7,4,5,2,9,6,1,6,11,4,7,0,7,1,7
E,4,6,6,4,4,6,8,3,7,11,8,9,3,9,4,7
B,3,5,5,3,3,9,7,3,6,10,5,6,2,8,5,10
G,1,0,2,0,0,8,6,5,4,6,5,9,1,8,5,10
Y,3,9,6,6,1,5,11,3,2,10,12,7,1,11,0,8
H,2,3,4,2,2,6,8,2,5,10,7,8,3,8,2,7
B,6,11,8,8,7,9,7,4,7,10,4,6,3,8,6,10
Y,7,9,5,13,4,5,11,2,4,11,10,6,4,11,6,7
A,3,9,5,6,3,9,3,2,3,7,1,8,2,6,2,7
R,1,0,2,1,1,6,10,7,2,7,5,8,2,7,4,10
R,3,4,3,5,2,5,11,7,4,7,3,9,3,7,6,11
H,7,9,7,4,3,8,8,4,5,8,5,7,6,7,4,8
A,5,8,8,7,7,8,7,2,5,7,8,8,5,10,3,6
D,2,6,3,4,3,8,7,5,6,6,5,4,3,8,3,7
P,4,7,6,5,5,6,7,7,4,7,6,8,3,10,7,9
A,2,4,3,2,1,8,2,2,2,8,2,8,2,6,2,7
E,5,9,7,6,5,7,8,1,8,11,6,9,3,8,4,9
Y,2,3,4,4,0,7,10,2,2,8,12,8,1,11,0,8
V,6,8,6,6,2,4,12,4,4,10,12,7,3,9,1,8
Q,6,7,8,11,8,10,12,6,0,4,7,11,6,15,5,8
F,2,1,2,1,1,5,10,4,4,10,9,5,1,10,2,7
G,5,8,6,6,6,7,7,6,2,6,6,10,4,8,7,7
N,3,5,5,3,2,6,9,2,4,10,7,7,5,8,1,8
Q,3,4,4,5,3,8,8,5,2,8,7,10,2,9,4,8
X,2,5,4,3,2,7,7,3,9,6,6,8,2,8,6,8
K,4,5,7,4,4,6,7,2,7,10,7,10,3,8,3,8
I,1,3,2,1,0,7,7,1,6,13,6,8,0,8,0,8
V,4,7,5,5,3,9,12,2,3,4,10,9,3,12,2,8
K,5,9,7,8,8,8,8,2,5,8,3,8,5,4,4,10
V,7,12,7,7,4,7,8,4,4,7,7,6,6,12,2,9
L,3,6,5,4,5,8,8,3,5,5,7,9,6,11,6,5
W,7,10,7,8,7,4,11,2,2,9,8,7,7,12,2,6
D,5,8,8,6,6,8,8,5,6,10,6,5,5,9,4,10
U,2,6,4,4,3,6,9,4,5,6,9,9,3,9,0,8
S,6,11,8,8,5,8,7,3,6,10,5,7,2,8,5,8
D,1,0,1,0,0,6,7,7,5,7,6,6,2,8,3,8
V,9,14,7,8,3,7,11,5,6,10,10,5,4,11,3,8
Z,3,8,5,6,3,6,9,2,9,11,8,7,2,9,6,7
E,4,7,6,5,3,7,8,3,9,11,7,8,2,8,5,7
Y,4,10,6,8,2,5,11,1,4,9,11,8,0,10,0,8
T,2,8,3,6,2,7,13,0,5,7,10,8,0,8,0,8
M,4,6,6,4,4,10,6,7,5,6,7,4,8,5,2,5
L,2,1,2,3,1,4,4,5,7,2,2,5,1,7,1,6
S,2,1,2,2,1,8,7,6,4,8,5,8,2,8,8,8
J,1,3,3,2,1,8,6,3,6,14,5,10,0,7,0,7
B,2,2,3,3,2,8,7,5,5,6,6,5,2,8,7,9
Z,7,10,5,14,5,5,11,3,3,12,8,6,3,8,12,5
S,4,8,5,6,3,10,7,4,8,11,5,7,2,9,5,9
A,7,12,6,6,3,9,0,3,2,9,4,12,3,5,4,6
R,3,6,3,4,3,6,9,7,3,7,5,8,2,7,5,11
Y,1,1,2,1,0,7,10,2,2,7,12,8,1,11,0,8
U,5,6,5,4,3,4,8,5,7,9,8,9,3,9,3,5
Y,5,8,5,6,2,3,13,4,6,13,11,4,1,11,2,5
Z,5,11,7,8,8,6,7,3,9,7,6,10,1,8,11,5
X,1,0,1,0,0,7,7,3,4,7,6,8,2,8,3,8
R,7,12,7,6,5,11,5,3,5,10,3,8,6,8,6,10
S,4,8,5,6,3,7,7,4,8,11,4,8,2,7,5,8
Q,4,7,5,6,3,8,5,8,7,7,4,9,3,8,4,8
D,2,5,4,4,3,8,7,5,6,9,5,5,3,8,4,8
C,1,3,2,1,1,5,9,4,6,11,8,10,1,9,2,8
P,6,9,5,4,2,7,9,6,3,13,5,4,4,9,4,7
G,7,15,6,8,5,8,7,4,4,8,6,7,4,9,9,8
Z,3,4,5,6,4,9,7,5,6,8,3,7,3,6,6,8
N,4,8,6,6,4,5,9,2,3,9,8,8,5,8,1,7
M,5,9,6,7,4,8,7,13,2,6,9,8,8,6,0,8
A,3,6,4,4,2,8,2,2,2,7,2,8,2,6,3,7
N,4,7,6,5,4,8,8,5,6,7,6,4,7,9,4,6
Z,2,4,4,6,3,11,5,3,4,9,3,7,2,7,6,8
T,4,8,6,6,5,6,8,7,7,8,7,8,3,10,6,9
I,3,6,4,4,2,7,7,0,7,13,6,8,0,8,1,7
N,3,3,5,2,2,7,9,3,4,10,6,6,5,9,1,7
D,4,6,5,5,5,7,7,5,6,7,5,9,4,6,6,5
X,4,11,6,8,6,6,7,2,7,7,7,10,6,5,8,7
Z,1,1,2,2,1,7,8,5,8,6,6,9,1,8,7,7
N,4,8,6,6,5,8,8,5,5,6,6,5,6,10,2,5
Q,3,4,4,5,3,8,7,6,3,8,8,10,3,8,5,8
Q,5,7,5,9,5,7,9,4,3,7,9,11,3,9,6,8
A,1,0,2,1,0,8,4,2,0,7,2,8,2,7,1,8
G,3,5,4,4,2,5,7,5,5,9,7,10,2,8,4,9
W,2,4,4,2,2,8,10,2,2,6,9,8,6,11,0,8
B,5,8,7,6,6,8,6,6,6,9,7,7,3,8,7,8
Q,3,4,4,5,3,8,8,6,2,5,7,10,3,9,5,10
O,2,2,3,3,2,7,7,8,4,7,6,8,2,8,3,8
N,3,7,4,5,3,8,8,6,4,7,6,6,5,9,1,6
I,2,8,2,6,2,7,7,0,7,7,6,8,0,8,3,8
N,4,5,5,4,3,7,8,6,5,7,6,6,6,9,2,5
U,4,5,5,3,2,3,8,4,6,11,11,9,3,9,1,6
Z,4,7,6,5,5,8,8,5,3,6,4,6,4,8,8,3
K,4,10,5,8,4,3,6,7,4,7,7,12,3,8,3,11
C,4,6,4,4,2,3,9,5,8,10,10,12,1,8,3,7
N,4,5,7,4,3,6,10,3,5,10,8,7,5,8,1,7
K,3,5,5,4,3,6,7,1,7,10,7,10,3,8,3,8
C,4,7,5,5,2,4,9,6,8,12,10,12,1,9,3,7
R,4,6,5,4,3,10,7,3,6,10,3,6,3,7,4,10
O,6,9,6,7,4,8,6,8,5,10,6,10,3,8,4,6
Q,1,0,2,1,1,8,7,6,4,6,6,8,2,8,3,8
I,1,4,2,3,1,7,8,0,6,13,6,8,0,8,0,8
W,4,10,6,7,4,11,8,5,2,7,9,8,8,10,0,8
X,2,1,3,2,2,8,7,3,8,6,6,8,2,8,5,8
T,1,0,2,1,0,7,14,1,4,7,10,8,0,8,0,8
R,4,6,4,4,2,6,12,8,3,7,3,9,2,7,5,11
J,3,6,5,4,4,8,8,4,3,8,4,7,4,9,5,4
K,5,9,8,7,5,8,6,1,7,10,3,9,5,6,6,10
J,3,9,4,7,1,12,2,9,4,13,7,13,1,6,0,8
E,3,5,5,4,3,7,7,2,7,11,6,8,2,9,5,8
A,1,0,2,0,0,7,4,2,0,7,2,8,1,6,1,8
C,5,7,5,5,3,5,8,6,8,12,9,13,1,9,3,7
X,3,6,4,4,2,7,7,4,4,7,6,8,2,8,4,8
L,2,7,3,5,2,5,5,3,8,3,2,7,0,6,2,6
S,3,5,5,3,2,7,7,3,7,11,5,8,1,8,5,8
N,2,1,2,2,1,7,7,12,1,5,6,8,5,8,0,8
F,3,6,4,4,3,5,10,2,6,10,9,6,1,10,3,6
S,6,9,8,7,5,6,7,4,7,10,10,9,2,9,5,5
K,3,6,4,4,3,6,7,5,7,7,6,10,3,8,5,9
O,5,9,6,6,8,7,8,5,1,7,7,8,8,9,6,10
J,5,10,7,8,5,9,4,5,6,8,5,6,2,8,4,6
T,3,4,4,2,1,5,11,2,7,11,9,5,1,10,2,5
H,5,8,7,6,6,4,9,3,5,10,9,9,3,8,3,5
Z,2,0,2,1,1,7,7,3,11,8,6,8,0,8,7,8
X,7,15,8,8,5,6,8,2,8,11,7,8,4,9,4,6
F,3,5,4,7,2,0,14,4,4,12,11,6,0,8,2,6
D,6,11,8,8,8,10,7,4,6,9,3,6,3,8,3,8
C,3,10,5,8,4,5,8,7,6,9,8,14,2,9,4,10
B,3,7,3,5,3,6,8,9,6,6,5,7,2,8,8,9
C,4,9,6,6,7,7,7,4,3,6,7,10,8,10,6,6
H,5,10,5,8,5,8,7,13,1,7,7,8,3,8,0,8
T,3,3,3,2,1,5,12,3,5,11,9,4,2,11,1,5
J,2,7,3,5,2,9,6,1,6,11,4,8,0,7,1,7
S,2,3,2,1,1,8,8,6,5,7,5,7,2,8,8,8
M,3,2,4,3,3,8,6,5,3,7,7,9,9,5,1,8
H,2,3,4,1,2,8,7,3,6,10,5,7,3,8,2,7
N,4,7,4,5,3,8,8,12,1,6,6,7,5,8,0,9
K,3,6,5,4,5,6,7,3,6,6,5,8,3,8,4,9
A,2,5,4,3,2,10,2,3,2,10,2,9,2,6,2,8
D,1,1,2,2,1,6,7,8,6,6,6,6,2,8,3,8
P,4,6,6,4,3,8,10,3,5,13,4,3,1,10,3,9
I,1,4,3,3,1,7,7,1,7,14,6,8,0,8,1,8
J,6,11,5,8,4,9,8,2,3,12,5,6,2,9,7,9
J,2,10,3,8,2,12,3,7,3,12,5,11,1,6,0,8
F,3,8,3,6,1,1,13,5,3,12,10,6,0,8,2,6
K,6,7,8,5,5,7,8,2,7,10,5,9,4,7,3,7
W,4,9,6,6,3,4,8,5,1,7,9,8,8,10,0,8
V,4,5,7,8,2,7,8,4,3,7,14,8,3,9,0,8
I,1,1,1,1,0,7,7,2,8,7,6,8,0,8,3,8
O,2,3,3,2,2,7,7,7,5,7,6,8,2,8,3,8
P,4,7,6,5,3,7,11,5,4,12,4,1,1,10,3,8
W,4,4,6,6,3,8,8,4,1,7,8,8,8,9,0,8
U,4,8,5,6,5,7,6,9,5,7,6,9,4,9,6,4
O,3,8,4,6,3,7,7,8,4,10,6,8,3,8,3,7
U,5,9,7,6,4,4,8,7,9,9,10,11,3,9,1,7
I,3,9,4,6,2,7,8,0,8,14,6,6,0,8,1,7
X,2,3,3,2,1,7,7,1,8,10,6,8,2,8,2,7
J,2,8,3,6,2,9,6,3,6,11,4,9,1,6,2,6
B,4,2,5,4,4,8,7,5,6,6,5,5,2,8,7,10
Q,2,3,3,4,2,7,9,4,1,7,8,10,2,9,4,8
G,4,7,4,5,3,7,6,6,6,10,6,12,2,10,4,9
Q,7,8,7,9,7,8,7,6,2,7,7,11,5,9,7,7
J,7,11,9,8,6,9,4,5,6,8,5,6,2,7,5,6
D,8,12,8,6,4,11,3,3,6,10,2,8,4,7,3,12
U,4,10,6,7,9,10,8,4,4,5,8,8,9,8,8,6
P,4,10,5,8,4,6,10,6,5,9,7,3,2,10,4,7
X,4,8,5,6,1,7,7,4,4,7,6,8,3,8,4,8
B,3,6,4,4,4,8,7,5,6,7,6,6,2,8,6,9
G,4,8,5,6,3,7,7,8,6,7,6,12,3,8,4,9
W,3,4,5,6,3,6,8,4,1,7,8,8,8,10,0,8
G,2,4,3,3,2,6,7,5,5,9,7,10,2,9,4,9
A,4,9,5,6,4,7,5,3,0,6,1,8,2,7,1,7
R,4,8,6,6,6,6,7,5,6,7,6,7,3,7,5,9
B,2,4,3,2,2,10,7,2,6,10,4,6,2,8,4,10
X,8,11,7,6,3,7,7,2,9,9,7,9,4,11,4,7
N,3,4,5,3,2,6,9,3,4,11,8,8,5,7,1,8
K,7,10,10,7,8,8,6,1,7,9,5,9,5,7,5,8
B,4,8,6,6,6,7,8,6,4,7,5,6,4,7,6,6
E,3,7,4,5,3,4,9,2,8,10,8,10,2,8,4,5
E,4,8,4,6,2,3,6,6,11,7,7,15,0,8,7,7
W,4,6,6,4,5,7,11,2,2,7,8,8,6,11,1,8
A,3,9,5,7,3,13,3,3,2,11,1,8,2,6,3,9
U,3,5,4,4,2,6,8,6,7,7,9,9,3,9,1,8
M,3,4,5,2,3,8,6,6,4,7,7,9,9,5,2,8
J,5,9,7,7,3,9,6,3,7,15,5,10,1,6,1,7
C,5,4,6,6,2,6,7,7,11,7,6,14,1,8,4,9
M,3,6,4,4,4,7,6,6,4,6,7,8,7,5,2,7
P,4,7,6,5,3,8,9,3,5,13,5,4,1,10,2,8
I,1,5,1,3,1,7,7,1,7,7,6,8,0,8,3,8
D,5,10,7,7,6,11,6,2,6,11,3,7,3,8,3,9
E,5,11,7,8,5,5,9,4,9,11,9,8,3,8,5,5
S,4,7,5,5,3,10,6,4,8,11,3,8,2,8,5,10
I,3,8,6,6,5,8,8,4,5,9,6,4,5,10,4,6
W,8,13,8,7,5,4,8,1,3,8,9,8,9,11,2,5
C,3,7,4,5,2,3,8,5,8,9,9,13,1,8,3,7
F,4,9,4,6,2,1,13,5,3,12,10,6,0,8,2,6
C,3,7,4,5,2,3,9,6,7,11,11,11,1,8,2,6
Z,4,8,5,6,3,7,7,3,12,9,6,8,0,8,8,8
F,5,10,7,8,5,8,9,2,6,13,6,5,2,10,2,8
R,7,11,10,8,11,5,8,3,5,6,5,10,8,9,9,6
A,5,10,8,8,5,11,3,1,2,8,2,9,4,6,3,8
V,5,9,5,7,4,3,11,2,3,9,11,8,2,11,1,8
Z,4,5,5,8,2,7,7,4,14,9,6,8,0,8,8,8
I,1,3,2,2,1,7,8,0,6,13,6,7,0,8,0,7
O,10,13,7,8,4,7,7,5,5,8,4,7,5,9,6,8
D,1,0,1,0,0,6,7,6,4,7,6,6,2,8,2,8
M,3,4,4,2,3,7,6,6,4,6,7,8,6,6,2,8
S,6,12,6,6,3,7,8,3,6,13,6,7,2,8,3,7
E,6,10,9,8,6,4,9,4,9,12,10,9,3,8,5,5
D,6,11,9,8,8,7,8,6,6,10,7,5,7,9,6,11
I,2,5,4,4,1,7,7,0,7,13,6,8,0,8,1,8
Q,5,5,7,8,4,8,9,7,6,6,8,9,3,7,6,10
M,5,5,6,8,4,7,7,12,2,7,9,8,9,6,0,8
P,4,7,5,5,3,6,10,7,3,10,5,4,2,10,3,8
N,6,10,9,8,5,8,8,3,5,10,5,6,6,8,2,7
F,5,5,5,7,2,1,14,5,4,12,10,6,0,8,2,5
P,6,10,8,8,5,6,12,5,3,12,5,2,1,11,3,8
T,5,10,6,8,4,7,9,0,8,11,9,6,1,10,3,4
U,2,6,3,4,1,8,5,13,5,6,13,8,3,9,0,8
O,4,10,6,8,3,8,8,9,8,6,7,10,3,8,4,8
O,5,9,6,6,5,7,7,7,4,9,6,10,4,8,4,7
S,5,10,7,7,4,9,6,3,7,10,6,9,2,10,5,9
X,3,9,4,6,1,7,7,4,4,7,6,8,3,8,4,8
B,4,10,5,8,6,8,7,7,6,7,6,6,2,8,7,10
N,3,2,3,3,2,7,8,5,4,7,6,7,4,8,1,7
X,3,7,5,5,3,8,7,4,9,6,6,8,3,8,7,9
Q,3,6,4,6,2,8,6,8,6,6,6,8,3,8,4,8
P,2,1,2,2,1,5,10,4,4,9,7,4,1,10,3,7
L,5,10,7,8,4,7,3,2,9,7,1,9,1,6,3,7
W,3,5,5,4,4,9,11,3,2,5,9,7,7,11,1,8
N,3,7,5,5,3,6,9,6,5,8,7,8,5,8,1,7
O,4,9,5,6,4,8,7,8,5,7,7,7,3,8,3,8
V,7,11,9,8,6,5,12,3,2,9,10,7,5,10,6,8
G,4,8,6,6,3,6,6,6,7,7,5,9,3,10,4,8
F,3,4,3,5,1,1,14,5,3,12,9,5,0,8,2,6
L,2,4,4,3,2,6,4,1,8,8,2,11,0,7,2,8
B,4,5,5,8,4,6,7,10,7,7,6,7,2,8,9,9
I,1,7,0,4,0,7,7,4,4,7,6,8,0,8,0,8
X,4,4,5,6,1,7,7,5,4,7,6,8,3,8,4,8
D,4,8,5,6,8,9,7,5,5,7,6,6,4,7,7,6
I,1,8,2,6,2,7,7,0,8,7,6,8,0,8,3,8
D,2,7,4,5,4,7,7,4,6,7,6,6,3,8,2,7
C,6,11,7,8,4,5,8,8,9,9,9,13,2,9,4,9
G,4,6,5,4,3,6,7,6,6,9,8,9,2,8,4,9
V,1,1,2,1,0,7,9,4,2,7,13,8,2,10,0,8
T,5,5,5,4,2,5,12,3,7,12,9,4,1,11,1,5
K,5,7,7,5,4,4,8,2,7,10,10,11,3,8,4,6
C,7,11,7,8,4,5,7,6,8,12,9,14,2,10,4,7
Z,4,5,5,7,2,7,7,4,15,9,6,8,0,8,8,8
W,6,10,6,8,7,4,10,3,2,9,7,8,8,12,3,5
E,4,9,4,7,3,3,8,6,12,7,5,15,0,8,7,7
B,7,12,6,6,4,8,6,4,5,10,5,8,6,7,7,10
B,4,7,6,5,4,10,6,3,7,10,4,7,3,8,5,11
K,2,1,3,3,2,6,7,4,7,7,6,10,3,8,5,9
M,2,3,4,1,2,8,6,3,4,9,6,7,6,5,1,7
H,4,4,6,6,5,9,9,3,1,7,7,8,4,9,8,8
C,6,8,8,7,7,5,7,4,5,7,6,11,4,9,8,9
V,7,12,7,6,4,9,8,4,5,8,8,5,6,10,3,6
F,4,10,6,8,3,4,13,6,5,12,10,3,2,10,2,4
T,3,8,4,6,2,9,13,0,5,6,10,8,0,8,0,8
Y,5,10,7,8,3,7,10,1,3,7,12,8,1,11,0,8
F,3,7,3,4,1,2,14,5,2,12,9,4,0,8,3,6
X,2,3,3,2,2,8,7,3,8,6,6,6,2,8,6,8
D,5,8,7,6,6,8,7,5,6,9,4,5,3,8,4,9
R,2,0,2,1,1,6,10,7,2,7,5,7,2,7,4,9
Y,1,3,2,2,1,6,11,1,7,8,11,9,1,11,2,8
X,4,8,6,6,4,7,7,3,9,5,6,8,3,8,7,8
O,4,6,4,4,4,6,9,7,4,9,8,8,3,8,3,7
C,8,12,5,7,3,5,10,6,8,11,8,8,1,8,6,8
H,3,3,4,4,2,7,7,14,1,7,6,8,3,8,0,8
A,3,9,5,7,3,9,3,2,2,8,1,8,2,6,3,7
X,6,10,9,8,4,5,8,2,9,11,12,10,4,7,4,5
R,5,8,8,7,8,8,8,3,3,7,5,8,7,8,6,4
T,5,7,6,6,6,5,8,4,8,9,7,10,3,7,7,5
C,5,4,6,7,2,7,6,7,11,9,5,13,1,9,4,8
D,8,14,8,8,4,11,4,3,6,10,2,7,5,7,4,12
N,1,3,3,2,1,5,9,3,3,10,8,8,4,8,0,7
A,4,6,6,5,5,8,8,3,5,7,8,7,5,10,4,6
A,3,8,5,6,3,7,5,3,0,7,1,8,2,7,1,8
A,3,11,6,8,4,12,2,2,2,9,2,9,2,6,3,8
B,4,9,6,7,5,8,7,6,6,9,6,6,3,8,7,8
V,1,0,2,0,0,8,9,3,2,6,12,8,2,10,0,8
D,5,5,6,7,3,5,7,10,10,6,6,6,3,8,4,8
X,2,3,3,2,2,7,7,3,9,6,6,8,2,8,5,8
D,6,11,6,6,3,10,4,3,6,9,3,7,4,7,4,11
J,2,5,4,4,1,9,6,2,7,14,5,10,1,6,1,7
H,5,11,5,8,3,7,9,15,2,7,3,8,3,8,0,8
E,2,3,4,2,2,7,7,2,7,11,7,9,2,8,4,8
I,3,9,4,6,3,8,7,0,7,13,6,8,0,8,1,8
U,7,9,6,5,3,4,4,5,5,4,7,8,5,7,2,7
C,7,10,9,8,6,7,7,8,7,6,7,8,5,6,5,9
I,7,14,5,8,2,9,7,6,4,13,3,7,3,7,6,11
T,4,6,5,6,5,5,8,4,7,8,8,9,3,8,7,6
A,2,4,3,3,1,10,2,3,2,10,2,9,2,6,2,8
K,8,13,8,8,4,8,7,3,6,9,7,8,6,11,4,7
W,5,8,8,6,3,7,7,5,2,7,8,8,9,9,0,8
Q,4,7,5,9,6,8,6,8,2,5,6,9,3,8,5,10
T,5,10,6,8,4,5,11,1,9,8,11,9,1,10,1,7
Z,1,0,2,1,0,7,7,2,11,8,6,8,0,8,6,8
B,5,4,5,6,4,7,9,9,8,7,5,7,2,8,9,9
P,4,6,6,4,3,7,10,3,4,13,6,3,1,10,3,9
V,6,11,6,6,3,5,9,4,3,10,8,5,5,12,2,7
P,2,1,2,1,1,5,11,7,2,9,6,4,1,9,3,8
H,3,6,4,4,2,7,8,14,1,7,5,8,3,8,0,8
X,7,10,10,8,6,9,6,1,8,10,3,7,3,8,3,9
P,4,9,6,6,4,5,10,6,5,10,8,3,1,10,4,6
C,0,0,1,0,0,6,7,5,7,7,6,14,0,8,3,10
G,3,4,4,3,2,7,6,6,6,6,6,10,2,9,4,9
G,3,5,4,4,3,6,7,5,5,9,7,10,2,8,4,10
X,9,11,8,6,3,7,7,2,9,9,6,8,4,9,4,8
Z,5,8,6,6,4,7,8,2,10,12,7,6,1,7,6,6
W,6,11,9,8,7,5,9,5,1,7,9,8,8,11,0,7
I,2,8,3,6,1,9,7,0,8,14,5,8,0,8,1,8
Z,2,4,4,3,2,8,7,2,9,12,6,7,1,8,5,8
C,2,6,3,4,2,6,8,8,8,9,8,13,1,9,4,10
W,3,7,6,5,4,5,10,2,3,8,9,9,7,11,1,8
G,4,7,5,5,3,6,7,7,7,10,7,9,2,10,4,9
X,3,3,4,4,1,7,7,4,4,7,6,8,3,8,4,8
R,3,7,3,5,2,6,9,9,5,7,5,8,3,8,5,10
I,0,1,0,1,0,7,7,4,4,7,6,8,0,8,0,8
N,5,9,8,7,5,10,7,3,5,10,2,5,6,9,1,7
W,8,10,8,5,4,1,9,3,3,11,12,9,8,10,1,6
K,7,10,10,8,6,4,9,2,7,10,9,10,5,6,4,5
U,4,7,4,5,3,7,6,12,4,7,12,8,3,9,0,8
B,8,12,6,6,4,7,7,5,6,10,5,8,6,6,7,10
H,4,5,6,4,4,7,7,3,6,10,6,8,3,8,3,8
E,4,7,5,5,4,10,6,2,7,11,4,8,4,9,5,12
C,3,7,5,5,5,5,7,3,4,7,6,10,5,10,3,8
Q,3,6,4,8,4,8,11,4,3,5,9,11,2,10,5,8
P,6,11,8,8,5,5,11,7,4,11,7,2,1,10,4,6
L,3,7,3,5,1,0,1,5,6,0,0,6,0,8,0,8
E,0,0,1,0,0,5,7,5,6,7,6,12,0,8,6,10
K,1,1,2,1,1,6,7,4,7,7,6,11,3,8,4,9
R,4,4,4,6,3,5,11,8,4,7,2,9,3,7,6,11
O,1,0,1,0,0,7,6,6,3,7,6,7,2,8,3,8
K,4,9,6,7,4,5,7,5,7,6,6,10,4,8,5,9
V,5,6,5,4,2,3,12,4,4,10,12,7,2,10,1,7
F,5,8,7,6,4,7,9,3,6,13,6,5,2,9,3,7
T,2,4,3,3,1,7,11,2,7,6,11,8,1,10,1,8
S,2,6,3,4,2,7,6,5,8,4,6,8,0,9,8,8
Q,3,7,4,6,3,8,7,7,4,6,6,9,2,8,4,9
V,2,0,3,1,0,7,9,4,2,7,13,8,2,10,0,8
U,3,6,4,4,2,7,4,14,5,7,12,8,3,9,0,8
P,1,0,2,0,0,5,11,6,1,9,6,5,1,9,3,8
J,1,1,2,3,1,11,6,2,6,12,3,7,0,7,1,8
S,6,9,7,6,4,8,8,4,10,11,4,7,2,6,5,9
M,10,15,12,9,6,10,2,3,2,10,3,9,8,1,1,8
T,3,9,4,7,4,7,11,3,6,7,11,9,2,12,1,8
U,5,6,6,4,3,3,9,5,7,11,11,9,3,9,2,6
F,3,7,3,4,1,1,13,5,4,12,10,7,0,8,2,6
X,3,5,6,3,3,7,7,1,8,10,6,8,2,8,3,8
L,7,11,6,6,3,10,2,4,4,12,5,13,2,7,5,9
X,4,6,5,5,5,8,8,2,4,7,6,8,3,8,7,7
F,7,12,6,6,3,8,8,3,7,12,4,5,2,8,7,7
J,7,8,4,12,4,7,9,3,4,13,4,5,3,8,7,10
T,5,9,5,6,3,5,12,3,8,12,9,4,1,11,2,4
Y,3,9,5,6,2,9,11,1,3,5,11,8,1,10,0,8
A,3,8,5,5,2,7,5,3,1,6,1,8,2,7,2,7
F,4,7,6,5,3,5,11,3,5,13,8,5,1,10,2,7
I,2,9,2,7,3,7,7,0,7,7,6,8,0,8,3,8
U,3,2,4,4,2,6,8,6,7,6,9,9,3,9,1,7
I,0,6,0,4,0,7,7,4,4,7,6,8,0,8,0,8
E,4,5,6,4,5,6,8,4,4,8,7,9,4,11,8,10
H,8,10,11,8,6,7,8,3,7,10,8,8,6,8,5,7
M,4,2,6,3,4,8,6,6,5,6,7,8,8,7,3,6
N,3,6,4,4,2,7,7,14,2,5,6,8,6,8,0,8
S,3,8,4,6,2,7,6,6,10,5,7,10,0,9,9,8
L,10,15,8,8,4,9,2,4,5,12,4,13,2,7,6,8
F,3,5,5,6,4,6,9,3,4,8,7,7,4,10,8,9
H,5,9,8,7,7,8,8,5,7,7,6,7,6,8,4,7
W,5,6,7,5,8,6,7,6,5,6,5,8,8,10,8,10
N,4,7,6,5,3,11,6,4,5,10,1,5,5,9,1,7
H,7,9,10,7,6,5,8,4,7,10,9,10,3,8,3,6
I,2,8,4,6,4,10,6,1,4,8,5,5,3,8,5,7
D,3,5,5,4,3,9,6,4,7,10,4,6,2,8,3,9
D,4,11,5,8,5,5,7,10,7,6,5,6,3,8,3,8
Q,4,7,5,7,4,8,7,7,5,6,4,9,2,8,3,8
J,6,7,8,9,7,8,8,4,6,7,6,7,4,8,8,8
V,3,8,5,6,3,6,11,2,3,7,11,9,2,10,1,8
J,2,7,3,5,1,9,6,3,7,12,4,9,0,7,2,6
C,2,4,3,3,2,6,8,7,7,8,7,13,1,9,4,10
O,7,11,7,8,5,8,7,8,5,10,6,8,3,8,3,8
J,7,10,5,8,4,8,10,3,3,13,4,5,2,9,7,9
F,5,6,6,7,6,7,9,6,6,7,6,9,5,8,8,6
T,6,10,6,7,5,5,11,3,7,11,10,5,2,12,2,4
X,3,6,4,4,3,8,7,3,8,6,6,8,2,8,6,8
G,6,10,7,8,4,6,7,7,8,10,7,10,2,10,5,9
S,3,9,4,6,3,8,7,8,7,7,7,9,2,10,9,8
O,2,4,2,3,2,8,7,6,3,9,6,8,2,8,2,8
E,5,8,7,6,4,7,7,3,8,12,7,9,3,8,5,8
R,4,4,4,5,2,5,10,8,4,7,4,8,3,7,6,11
Y,4,7,6,5,3,9,10,1,7,3,11,8,1,11,2,9
B,3,6,5,4,4,7,8,5,5,9,6,6,3,8,7,8
T,3,11,4,8,1,5,14,1,6,9,11,7,0,8,0,8
F,4,8,5,6,4,4,11,6,5,11,10,5,2,9,2,5
Q,6,9,7,11,8,7,9,5,3,8,10,10,5,8,8,10
R,5,7,8,6,8,9,7,4,4,8,5,7,8,10,7,5
E,3,9,4,6,2,3,7,6,11,7,6,15,0,8,7,7
V,3,5,5,4,2,4,12,3,3,9,11,8,2,11,0,8
O,4,8,5,6,2,8,6,8,7,7,5,8,3,8,4,8
W,12,14,12,8,5,2,9,3,2,10,12,8,9,10,1,6
K,4,2,5,3,3,6,7,4,8,7,6,10,6,8,5,9
A,3,9,6,6,3,11,3,2,2,9,2,9,3,5,3,8
U,5,7,6,5,3,4,8,6,8,10,10,9,3,9,2,5
X,4,10,6,7,6,7,7,2,6,7,6,7,4,7,6,7
W,6,9,9,7,7,4,10,2,3,8,9,9,10,9,1,8
M,7,10,10,8,9,11,6,2,5,9,4,6,10,7,2,8
L,3,8,4,6,1,0,0,6,6,0,1,5,0,8,0,8
Q,4,9,6,8,3,9,8,8,6,5,8,9,3,8,5,9
H,6,9,6,4,3,9,6,4,4,9,7,8,6,12,4,9
N,1,0,1,0,0,7,7,9,0,6,6,8,3,8,0,8
N,4,8,6,6,3,5,9,3,4,10,9,9,5,8,1,7
Q,2,2,3,3,2,8,8,6,1,5,6,9,2,9,4,10
E,5,8,7,6,6,6,8,3,7,11,9,9,3,8,5,6
K,2,6,3,4,2,3,7,6,2,7,6,10,3,8,2,11
G,3,6,4,4,4,7,8,5,3,6,6,10,3,8,6,8
I,2,8,3,6,1,7,7,0,8,14,6,9,0,8,1,8
C,4,9,6,7,4,5,8,6,6,8,8,15,3,10,4,9
E,2,4,2,3,2,7,7,5,6,7,6,8,2,8,5,11
G,2,1,3,2,1,6,7,5,5,6,6,9,2,9,4,8
B,3,5,5,4,4,9,6,3,6,10,5,7,2,8,5,10
T,4,10,6,8,4,6,12,3,7,7,12,8,2,12,1,7
P,2,3,4,2,2,8,8,3,3,12,4,5,1,9,2,8
J,4,9,6,7,3,6,7,3,5,15,6,10,1,6,1,7
M,2,3,3,1,2,6,6,6,4,7,7,10,6,5,1,9
U,4,3,4,2,2,5,8,5,7,10,9,9,3,9,2,6
L,7,10,9,8,7,6,7,7,7,6,6,8,6,8,5,10
N,5,7,7,5,3,5,9,3,5,10,9,9,6,7,1,7
W,5,10,8,8,13,9,7,5,2,7,7,8,10,10,3,5
I,7,12,5,6,2,10,5,6,4,13,3,9,3,8,4,9
V,10,15,10,8,5,6,8,4,4,8,8,5,6,12,4,6
Z,6,9,8,7,4,9,6,3,10,11,4,9,1,7,6,8
M,5,5,6,8,4,8,7,12,2,6,9,8,9,6,0,8
E,5,5,5,7,3,3,8,6,12,7,5,15,0,8,7,7
A,2,2,4,3,2,8,2,2,2,8,2,8,2,6,3,7
M,4,7,8,5,8,10,6,3,3,9,4,7,10,5,3,6
D,1,0,2,0,0,6,7,7,6,7,6,6,2,8,3,8
Z,5,5,6,8,3,7,7,4,15,9,6,8,0,8,8,8
N,8,11,11,8,6,12,7,3,6,10,0,3,7,11,2,8
J,2,5,5,3,1,8,6,3,7,15,6,10,1,6,1,7
Y,6,11,9,8,8,8,4,6,5,8,7,8,6,8,8,3
X,4,9,6,7,4,8,7,4,9,6,6,6,3,8,7,7
B,2,3,4,2,2,8,7,3,5,10,5,6,2,8,4,9
A,3,11,5,8,4,12,3,3,3,10,1,9,2,6,3,8
T,5,7,6,5,6,6,8,4,6,7,6,10,5,8,5,7
H,3,2,4,4,3,7,7,5,6,7,6,8,6,8,4,8
H,4,9,5,6,2,7,6,15,1,7,8,8,3,8,0,8
H,3,7,3,4,2,7,6,14,1,7,7,8,3,8,0,8
Y,4,5,5,7,5,10,11,5,4,5,8,8,5,10,9,5
V,4,6,4,4,2,3,11,4,3,10,12,7,2,10,1,8
K,5,11,6,8,2,4,6,9,2,7,7,12,4,8,3,11
X,3,7,5,5,2,9,7,1,8,10,4,7,3,8,3,8
Q,5,8,6,7,3,9,8,8,6,5,8,9,3,7,5,9
S,5,8,6,6,4,8,8,4,8,10,4,6,2,7,5,8
C,4,9,5,6,3,4,8,5,6,12,10,12,2,9,2,7
B,1,0,2,1,1,7,7,7,5,6,6,7,1,8,7,9
B,5,11,7,8,7,8,7,7,7,6,6,5,2,8,8,10
H,5,9,7,6,4,7,6,3,7,10,8,9,3,8,3,7
X,3,5,5,4,3,7,7,3,9,6,6,8,3,8,6,8
H,3,7,4,4,2,7,7,14,1,7,6,8,3,8,0,8
Z,3,8,5,6,3,8,7,2,9,11,5,9,1,8,6,8
S,7,11,7,6,3,7,6,3,4,13,8,8,3,8,4,7
M,5,2,6,4,4,9,6,7,4,6,7,5,10,5,3,5
V,1,0,1,0,0,8,10,3,1,7,12,8,2,11,0,8
W,4,7,6,5,3,9,8,5,1,7,8,8,8,9,0,8
F,4,8,6,6,4,7,9,2,6,13,6,5,2,10,2,8
O,5,9,5,7,4,7,7,8,5,9,7,10,3,8,4,6
T,4,9,5,7,3,6,11,2,8,8,12,8,1,11,1,7
O,4,10,5,8,3,9,7,9,7,7,6,10,3,8,4,8
B,5,7,7,5,5,8,6,6,7,9,7,6,3,8,8,7
T,4,8,5,6,4,6,7,7,6,8,10,8,3,9,5,9
X,3,7,4,5,2,7,7,4,4,7,6,7,2,8,4,8
C,9,12,7,7,5,7,9,4,5,9,8,9,4,9,8,11
N,6,5,6,8,3,7,7,15,2,4,6,8,6,8,0,8
X,6,10,9,8,5,7,8,1,8,10,6,8,3,8,4,8
Q,5,7,6,5,5,8,6,7,4,4,8,10,6,6,7,10
V,2,1,4,1,1,7,12,3,2,6,11,9,2,11,0,7
D,2,3,4,2,2,9,6,4,6,10,4,6,2,8,3,8
K,5,9,8,7,4,4,9,2,7,10,10,11,3,8,3,6
A,3,11,6,8,2,8,6,3,1,7,0,8,3,7,2,8
V,3,6,4,4,2,2,11,4,3,11,12,8,2,10,1,8
H,4,8,5,6,5,8,7,5,6,7,6,8,6,8,3,7
D,1,0,1,0,0,6,7,7,5,7,6,6,2,8,2,8
G,3,8,4,6,2,7,6,8,7,6,5,11,1,8,5,11
J,2,5,3,8,1,12,3,10,4,13,5,13,1,6,0,8
C,2,5,3,4,2,6,8,7,7,8,8,13,1,9,4,10
G,5,10,6,8,3,7,6,8,8,6,6,8,2,8,6,11
K,5,5,5,8,2,3,6,8,3,7,7,11,4,8,3,11
V,3,9,5,6,1,7,8,4,2,7,14,8,3,9,0,8
C,3,4,4,3,2,4,8,4,6,11,10,12,1,9,2,7
M,5,10,6,8,4,8,7,12,2,6,9,8,8,6,0,8
F,5,8,7,6,7,7,8,1,4,10,6,6,5,10,3,5
Y,2,3,3,4,0,8,11,1,3,5,11,8,0,10,0,8
C,3,5,4,3,2,4,8,5,8,11,9,13,1,9,3,7
Q,6,8,9,12,14,8,5,6,1,6,6,9,10,10,8,14
H,9,15,8,8,5,6,7,5,4,8,10,9,7,11,5,9
U,9,11,8,6,4,9,6,6,7,3,9,7,5,9,3,5
D,5,10,6,8,6,7,7,7,7,7,6,5,3,8,3,7
H,5,10,7,8,10,8,9,5,3,6,7,7,7,9,9,8
O,6,10,8,8,10,8,9,6,1,7,7,8,9,8,5,9
W,3,7,5,5,7,9,5,5,2,7,6,8,5,10,2,5
S,4,7,6,5,6,8,9,4,4,9,5,7,4,9,10,9
U,2,3,3,2,1,5,8,4,7,10,8,8,3,9,2,6
Y,6,11,6,8,3,4,10,2,7,10,11,6,1,11,3,4
N,3,8,4,6,2,7,7,14,2,5,6,8,6,8,0,8
N,7,12,6,6,3,5,9,4,5,4,4,11,5,9,2,7
M,4,2,5,4,4,8,6,6,4,7,7,8,7,5,2,7
E,2,7,4,5,4,7,8,3,5,5,7,10,3,11,7,8
I,1,3,2,2,1,7,8,1,7,13,6,8,0,8,1,7
Z,2,3,2,2,2,7,7,5,9,6,6,8,1,8,6,8
B,2,4,2,3,2,7,7,5,5,6,6,6,2,8,5,9
B,7,11,9,8,7,9,6,4,7,10,5,6,3,8,6,10
G,6,10,8,8,8,6,6,6,3,6,6,10,5,8,8,7
P,4,9,5,6,2,3,14,7,1,11,6,3,0,10,4,8
P,3,4,5,6,7,8,5,5,2,7,6,7,6,9,6,9
U,3,5,5,3,2,7,9,6,7,7,10,9,3,9,1,8
K,8,10,11,8,5,4,8,4,9,12,12,11,3,8,4,5
V,6,10,5,5,2,8,10,6,3,7,9,5,6,13,3,7
C,9,14,7,8,5,7,6,4,4,9,8,11,4,9,9,11
W,3,8,5,6,5,6,11,2,2,7,8,8,6,11,1,8
V,4,7,6,5,4,8,11,2,2,6,10,8,4,10,4,9
C,5,5,6,8,2,6,7,7,10,8,6,15,1,9,4,9
E,2,3,3,2,1,7,7,2,7,11,7,9,1,8,3,8
O,4,9,5,7,2,7,7,9,8,7,5,8,3,8,4,8
O,1,1,2,1,1,7,7,6,4,7,6,8,2,8,2,8
E,4,7,6,5,4,6,8,3,7,11,8,8,3,8,4,6
C,2,1,2,1,1,6,7,6,9,7,6,13,0,8,4,9
O,3,5,4,4,2,8,6,7,4,9,5,8,2,8,3,8
A,3,8,6,6,4,8,5,2,4,6,2,6,2,6,2,6
N,4,10,4,7,3,7,7,14,2,4,6,8,6,8,0,8
Z,3,9,4,7,3,7,8,3,11,8,6,8,0,8,7,7
A,6,9,6,5,3,13,0,5,1,12,3,11,2,3,2,10
S,4,5,5,5,6,7,7,5,4,7,7,7,5,8,10,10
I,3,10,6,8,7,10,6,2,5,8,4,5,3,8,5,7
F,6,10,8,7,6,6,10,2,6,13,7,6,2,10,2,7
L,3,7,4,5,2,4,5,1,9,7,2,11,0,8,2,7
V,7,8,9,7,10,8,7,4,5,7,6,8,8,10,9,4
G,5,11,6,8,8,8,4,4,3,7,5,11,6,8,6,13
G,5,9,4,5,2,7,4,4,2,7,4,5,4,7,5,8
L,5,10,7,8,4,7,3,2,9,7,1,9,1,6,3,7
P,3,6,4,4,2,5,12,7,3,12,6,3,1,10,4,7
A,3,8,5,6,3,11,2,3,3,10,2,9,2,6,3,8
P,3,7,5,10,8,7,12,4,1,9,8,5,4,11,4,8
C,5,8,6,6,2,6,7,7,10,6,6,15,1,8,4,9
M,4,2,5,4,4,8,6,6,4,7,7,8,7,5,2,8
U,2,1,2,2,1,7,9,5,5,6,9,9,3,9,1,8
Y,5,6,5,4,3,5,9,1,7,9,10,6,1,11,3,5
D,7,10,9,8,7,7,7,5,6,7,6,7,7,8,3,8
Y,9,9,7,13,5,7,8,4,3,6,11,5,5,10,6,6
Y,4,5,5,4,2,4,11,2,7,11,10,6,1,11,2,5
T,4,9,4,4,2,5,10,2,6,11,8,6,2,9,4,3
W,4,9,5,6,6,7,6,6,2,7,7,8,6,8,4,8
B,5,11,8,8,11,9,7,4,4,6,7,7,8,8,8,7
E,3,5,6,4,3,6,8,2,9,11,8,8,2,8,4,6
X,3,9,5,7,4,8,7,3,8,5,6,8,3,8,6,8
S,2,7,3,5,3,8,7,7,5,7,7,8,2,9,8,8
U,5,5,6,4,3,4,8,5,8,10,8,9,3,9,2,6
T,4,6,5,4,4,7,7,7,7,7,6,8,3,10,6,8
U,3,4,4,3,2,5,8,5,7,9,8,8,3,9,2,5
V,3,8,5,6,2,5,11,3,4,9,12,9,3,10,1,9
J,4,6,5,4,2,9,7,0,7,13,5,7,0,8,0,8
B,5,10,5,5,5,7,8,3,5,9,6,7,6,5,7,8
H,1,0,1,0,0,7,8,10,1,7,6,8,2,8,0,8
D,6,11,8,8,7,7,7,6,6,7,7,7,7,7,3,7
S,3,3,4,4,2,7,7,5,8,5,6,8,0,8,8,8
L,1,4,2,3,1,7,4,1,7,7,2,10,0,7,2,8
Q,6,8,7,10,6,8,6,7,4,8,7,11,4,9,7,7
H,3,3,5,2,2,9,6,3,6,10,4,8,3,8,3,9
M,4,3,5,5,3,7,7,12,1,7,9,8,8,6,0,8
C,1,0,1,1,0,7,7,5,7,7,6,14,0,8,4,10
R,3,2,4,4,3,7,8,5,5,6,5,6,3,7,4,8
G,1,0,2,1,0,8,6,6,4,6,5,9,1,8,5,10
A,2,6,5,4,3,6,5,1,3,5,2,7,2,6,3,4
O,4,7,4,5,3,9,6,7,5,10,4,10,3,8,3,8
I,1,6,3,4,3,9,6,3,4,7,6,5,3,8,5,5
V,4,8,4,6,2,3,11,4,4,11,12,8,2,10,1,8
V,1,0,2,1,0,7,9,3,2,7,12,8,2,10,0,8
A,5,12,5,6,3,14,0,4,2,12,3,11,2,4,2,10
K,3,2,4,4,3,5,7,3,7,6,6,10,6,8,4,9
V,3,5,4,3,1,4,12,4,4,11,11,7,2,11,1,8
C,7,10,7,7,4,4,10,7,8,12,10,9,2,10,3,6
L,4,6,5,4,3,6,6,7,6,6,6,8,2,8,4,10
H,2,1,2,1,2,8,8,6,6,7,6,8,3,8,3,8
U,5,6,6,4,3,4,9,5,7,11,11,9,3,9,2,7
N,3,5,4,3,3,7,9,5,5,7,6,6,5,9,2,6
D,4,10,6,8,4,8,7,7,7,10,5,4,3,7,5,9
Q,3,3,4,4,3,8,7,6,2,8,7,9,2,9,4,8
X,3,5,5,3,2,8,7,3,9,6,6,9,3,7,7,9
N,4,11,5,8,5,7,7,13,1,6,6,8,6,9,1,6
N,1,0,1,0,0,7,7,10,0,5,6,8,4,8,0,8
L,3,9,5,7,7,7,8,3,5,6,6,10,6,11,7,5
F,4,11,5,8,4,4,11,4,6,11,10,6,2,10,3,5
N,5,9,5,5,2,5,8,4,6,4,4,9,4,7,2,8
I,1,11,0,8,0,7,7,4,4,7,6,8,0,8,0,8
Y,5,8,5,6,3,5,9,1,8,9,9,5,1,11,3,4
Z,2,4,4,3,2,7,8,2,9,12,7,7,1,8,5,6
N,5,11,7,8,6,7,7,8,5,7,5,6,3,7,3,8
N,4,7,5,5,4,6,7,8,5,7,5,7,3,7,3,8
P,4,10,4,7,2,4,10,10,3,9,6,4,2,10,4,8
K,12,15,11,9,5,6,8,3,7,9,9,10,6,10,4,6
A,1,0,2,1,0,7,4,2,0,7,2,8,2,7,1,8
K,5,10,6,7,2,4,7,9,2,7,6,12,3,8,3,11
G,7,11,8,8,5,6,6,7,8,10,7,11,2,10,5,9
K,4,5,7,4,4,6,7,1,7,10,7,10,3,8,3,8
A,3,10,6,7,4,11,3,2,2,9,2,9,3,7,3,9
T,2,1,3,2,1,6,12,2,7,8,11,8,1,10,1,7
Q,4,9,5,8,3,8,6,9,7,6,5,9,3,8,4,8
Y,3,4,5,6,1,7,12,2,3,8,12,8,1,10,0,8
N,3,7,5,5,3,7,9,6,5,7,6,7,5,9,2,6
L,2,6,2,4,1,0,1,5,6,0,0,7,0,8,0,8
E,7,13,5,7,3,6,8,6,8,10,6,10,1,8,8,8
J,1,3,2,5,1,12,3,9,3,13,5,13,1,6,0,8
Z,2,1,2,2,1,7,7,3,11,9,6,8,0,8,7,8
G,1,0,1,0,0,8,7,5,4,6,5,9,1,8,4,10
U,5,9,6,7,6,8,8,8,5,5,7,9,3,8,4,6
C,3,2,4,4,2,6,8,7,8,9,8,13,1,9,4,10
G,8,12,6,6,5,8,8,4,3,9,5,6,4,9,9,8
W,6,10,6,8,6,2,11,2,2,10,9,7,6,11,2,6
J,4,9,6,6,4,7,6,4,5,8,6,7,5,6,4,6
L,4,11,6,8,8,7,8,3,5,6,6,10,6,11,7,5
R,5,10,7,8,6,6,8,5,6,6,5,8,3,6,6,9
F,2,4,4,3,2,7,9,1,7,13,5,5,1,9,2,8
Y,6,12,5,6,3,4,9,4,2,10,9,6,3,9,3,4
Y,3,5,5,4,2,7,10,1,7,7,11,8,1,11,2,8
H,2,1,3,3,2,6,7,5,6,7,6,8,3,8,3,8
X,3,6,4,4,3,7,8,3,8,6,6,8,2,8,6,8
R,5,11,7,8,10,6,7,3,4,6,6,9,7,10,8,6
P,3,6,5,4,3,5,12,6,3,10,7,2,1,10,3,6
U,3,3,3,5,1,7,5,13,5,7,14,8,3,9,0,8
C,2,0,2,1,1,6,7,6,10,7,6,14,0,8,4,9
R,1,0,2,1,1,6,9,7,3,7,5,8,2,7,4,11
T,8,15,7,9,3,6,10,3,8,13,6,6,2,8,5,4
Y,6,8,8,11,12,8,8,4,2,7,8,9,4,12,9,8
O,4,7,4,5,3,7,7,8,6,9,7,10,3,8,3,7
J,0,0,1,0,0,12,4,6,3,12,4,11,0,7,0,8
R,3,4,5,3,3,9,7,3,5,11,3,6,2,7,3,9
Z,1,3,3,2,1,8,7,2,9,11,6,8,1,8,5,7
X,3,11,4,8,4,7,7,4,4,7,6,8,3,8,4,8
U,2,3,3,2,1,5,8,5,6,10,9,9,3,9,2,6
C,5,11,6,8,5,5,8,8,7,10,8,13,2,11,4,10
V,5,11,7,8,8,8,5,5,3,8,7,9,9,9,6,11
C,4,7,5,5,2,6,7,6,10,6,6,12,1,7,4,8
M,8,10,11,7,7,5,6,4,5,11,10,11,11,5,4,7
I,1,1,1,1,1,7,7,2,7,7,6,8,0,8,2,8
U,1,0,2,1,0,8,6,11,4,7,12,8,3,10,0,8
L,5,11,7,8,9,8,7,3,5,6,7,9,7,10,7,6
J,1,3,1,2,0,10,6,2,5,11,4,9,0,7,1,7
F,5,8,7,6,3,4,12,3,6,14,8,4,1,10,1,7
G,2,4,3,3,2,6,7,5,5,9,7,10,2,9,4,9
G,4,10,6,8,7,8,6,5,2,6,6,10,7,8,5,10
A,2,1,3,1,1,7,4,2,0,7,2,8,2,6,2,8
Q,2,0,2,1,1,8,7,6,4,6,6,9,2,8,3,8
B,4,8,6,6,6,8,7,6,5,9,7,6,3,8,7,8
P,1,0,1,0,0,5,10,7,1,9,6,5,1,9,2,8
C,3,8,4,6,3,5,8,6,6,9,8,14,1,9,3,10
E,2,4,4,3,2,6,8,2,8,11,7,9,2,8,4,8
M,10,13,12,7,6,10,2,3,2,10,2,9,8,1,2,8
L,2,6,2,4,1,0,2,5,6,0,0,7,0,8,0,8
D,4,11,6,8,7,8,7,5,7,7,6,6,6,8,3,7
B,2,6,3,4,3,6,7,7,5,7,6,7,2,8,6,9
E,4,9,6,7,5,5,9,3,7,11,9,9,3,9,4,6
Q,6,15,6,8,4,7,5,5,8,9,5,8,3,7,9,9
M,7,6,9,5,9,7,8,5,4,6,5,8,13,7,5,8
G,4,6,6,6,6,7,7,5,4,7,7,8,7,10,6,8
U,3,6,5,4,4,8,8,8,5,6,7,9,3,8,4,6
X,3,7,4,4,1,7,7,4,4,7,6,8,3,8,4,8
N,8,10,10,9,11,7,7,5,4,7,6,7,8,9,6,5
W,5,6,5,4,4,3,10,2,3,10,9,8,6,11,2,6
I,0,1,1,2,1,7,7,1,6,7,6,8,0,8,2,8
F,5,5,5,7,2,1,15,5,3,12,9,4,0,8,3,6
E,5,10,5,8,5,2,7,5,9,7,6,14,0,8,6,8
Y,4,10,6,7,1,8,10,2,2,6,13,8,1,11,0,8
B,4,8,6,6,5,10,6,3,6,10,4,7,3,8,5,11
D,4,8,5,6,4,6,7,8,7,6,5,4,3,8,4,8
O,2,1,2,2,1,8,7,7,5,7,6,8,2,8,3,8
H,3,3,5,2,2,7,8,3,5,10,7,8,3,8,3,7
Q,4,5,5,5,2,8,5,8,8,6,4,8,3,8,4,8
Y,4,8,4,6,2,3,12,4,5,12,12,6,1,11,2,6
B,3,8,4,6,5,8,7,8,5,7,6,6,3,8,7,10
O,4,9,5,7,3,6,9,7,5,10,8,7,3,8,3,8
P,3,4,5,3,3,7,10,6,3,11,4,3,1,10,3,8
E,1,0,1,0,0,5,8,5,7,7,6,12,0,8,6,10
O,3,7,4,5,2,8,8,8,6,6,7,9,3,8,4,8
V,3,8,5,6,1,9,8,4,3,6,14,8,3,9,0,8
Q,6,9,6,10,8,8,5,7,4,9,5,8,4,8,5,7
K,4,8,5,6,7,8,7,3,4,6,6,8,6,8,7,5
T,6,10,6,7,4,6,12,4,7,11,9,4,2,13,4,4
C,5,9,6,7,3,4,8,6,9,12,9,12,1,9,3,7
U,4,5,5,3,2,6,8,6,7,7,10,10,3,9,1,8
N,1,0,2,1,0,7,7,11,0,5,6,8,4,8,0,8
C,3,2,4,3,2,6,8,7,7,9,8,12,2,10,3,9
K,7,10,9,8,5,4,8,3,8,11,11,11,4,6,5,5
H,6,11,8,8,8,6,6,8,4,6,4,8,4,6,8,11
P,6,10,5,5,3,4,12,6,1,12,6,4,3,10,4,8
P,1,0,2,0,0,5,11,6,1,9,6,5,1,9,3,8
U,3,3,4,2,1,5,8,5,7,11,10,8,3,9,2,6
C,5,9,5,7,4,4,8,5,6,11,9,14,2,9,3,7
U,5,4,6,3,2,4,8,5,8,10,9,9,3,9,2,6
E,2,3,2,1,1,7,7,5,7,7,6,8,2,8,5,10
V,10,15,9,8,5,6,9,4,4,9,8,5,5,12,3,8
J,2,6,4,4,3,10,5,2,4,7,5,5,3,8,4,6
Y,5,9,5,6,3,3,10,2,7,11,11,6,1,11,2,5
B,4,6,5,4,4,8,9,3,5,10,5,5,3,8,5,8
F,4,9,5,6,2,1,12,5,5,12,10,8,0,8,2,6
L,8,12,8,6,4,8,4,4,5,12,8,11,3,9,6,9
S,4,9,6,7,3,9,7,4,8,12,4,7,2,8,5,9
O,2,6,3,4,3,7,8,7,5,7,9,8,2,9,3,7
U,6,7,7,5,3,4,10,6,7,12,11,8,3,9,2,7
R,3,7,4,5,2,5,10,8,3,7,5,8,2,8,6,11
T,3,6,4,4,3,7,8,7,6,7,7,8,3,10,5,9
Z,1,3,2,1,1,7,7,5,8,6,6,8,1,8,6,8
O,5,6,6,9,3,8,7,9,8,7,6,9,3,8,4,8
G,7,11,9,9,12,8,7,4,3,6,5,9,8,7,9,14
K,6,9,9,8,9,6,7,2,4,7,4,9,7,5,10,10
Y,8,10,6,15,5,4,9,3,1,9,10,5,4,10,7,5
G,6,9,5,4,3,8,3,4,3,7,3,5,4,7,4,9
H,4,5,7,4,4,7,8,3,6,10,6,8,3,8,3,8
J,3,9,4,7,1,12,2,10,4,14,5,13,1,6,0,8
T,3,5,4,4,2,6,10,1,8,11,9,5,1,9,3,4
W,5,9,7,7,3,8,8,4,2,7,8,8,8,9,0,8
B,2,4,4,3,3,8,7,2,5,10,5,6,2,8,4,9
U,3,8,4,6,2,7,5,14,5,7,13,8,3,9,0,8
F,1,3,3,2,1,5,11,3,4,13,7,5,1,9,1,7
R,4,10,6,8,6,7,7,4,6,6,5,7,3,7,5,9
U,3,9,4,7,2,7,5,15,5,7,12,8,3,9,0,8
M,8,9,12,8,12,7,7,4,4,6,5,8,14,9,6,9
P,3,4,5,2,2,7,11,4,3,12,4,2,1,9,2,9
I,2,11,2,8,4,7,7,0,6,7,6,8,0,9,3,8
J,3,5,5,6,4,8,9,4,5,7,6,8,3,8,8,9
P,6,9,8,7,7,6,6,8,4,7,6,8,4,9,8,11
U,4,8,6,6,6,10,6,4,5,6,7,6,5,8,4,6
I,1,6,0,4,0,7,7,5,3,7,6,8,0,8,0,8
P,4,7,6,5,3,7,12,4,5,14,5,1,0,10,3,8
H,3,3,5,2,3,7,7,2,6,10,6,8,3,8,3,7
V,4,2,6,4,2,7,13,3,4,8,12,8,3,10,2,8
N,6,9,9,7,5,7,9,2,5,10,6,6,6,9,1,8
G,6,11,7,8,4,7,6,7,7,11,6,13,3,9,5,8
W,4,2,6,4,4,9,11,2,2,5,9,7,9,11,2,7
S,5,11,6,8,6,8,8,5,8,5,5,8,0,8,9,8
J,1,3,3,2,1,9,4,4,4,13,7,12,1,7,0,7
B,3,7,4,5,3,6,6,9,7,6,6,7,2,8,9,9
V,3,10,5,8,2,8,8,4,3,6,14,8,3,9,0,8
E,4,9,4,6,4,3,6,5,9,6,7,13,0,8,7,9
Q,5,6,5,8,5,8,4,6,5,10,5,10,4,7,6,7
G,6,10,8,7,5,7,7,7,6,5,7,9,3,8,4,8
X,3,6,5,5,5,9,6,2,6,8,6,7,3,10,8,6
D,3,4,4,3,3,7,7,6,7,7,6,5,2,8,3,7
G,5,9,6,6,7,9,6,5,2,6,6,10,6,7,5,11
X,3,5,6,3,2,5,8,2,9,11,10,9,2,9,3,6
F,6,10,9,7,5,5,12,4,5,13,8,4,2,10,2,6
W,3,7,5,5,3,11,8,5,1,6,9,8,7,10,0,8
Q,4,9,5,8,5,8,8,7,4,5,9,9,2,9,4,9
Z,4,8,5,6,5,7,7,5,10,7,6,8,1,8,7,7
W,6,9,8,6,7,7,7,6,3,8,8,7,7,9,5,10
F,2,5,3,4,2,6,9,4,5,10,9,6,2,10,3,6
Y,6,9,6,4,3,7,7,4,4,9,8,6,4,10,4,4
I,1,9,0,7,1,7,7,5,3,7,6,8,0,8,0,8
U,2,3,3,2,1,5,8,4,5,10,8,9,3,10,1,7
A,4,11,7,8,6,7,5,1,4,5,2,6,5,6,6,6
U,3,8,4,6,2,7,5,14,5,7,13,8,3,9,0,8
D,1,3,2,2,1,9,6,4,4,10,3,5,2,8,2,8
S,6,12,6,6,3,10,4,4,3,12,6,9,3,10,2,8
U,1,3,2,1,1,9,8,6,5,5,9,7,3,10,0,8
D,3,9,5,6,4,6,7,9,6,6,6,5,3,8,3,8
I,2,6,3,4,1,7,7,1,8,14,6,8,0,8,1,8
O,5,9,4,4,3,6,8,6,4,9,8,9,4,9,4,8
V,3,7,5,5,1,8,8,4,2,6,14,8,3,10,0,8
P,5,9,7,7,6,9,8,4,5,11,4,4,2,9,4,8
T,2,10,4,7,1,7,14,0,6,7,11,8,0,8,0,8
S,3,7,4,5,3,8,8,7,6,7,6,8,2,8,9,8
G,3,6,4,4,2,8,6,7,7,6,6,9,1,7,6,11
O,4,11,5,8,3,7,7,9,7,7,6,8,3,8,4,8
X,5,9,8,6,4,10,6,2,8,10,2,7,3,8,3,9
G,5,9,7,7,7,7,9,6,3,5,5,10,4,8,7,8
U,6,9,6,7,4,5,7,7,8,8,6,9,3,9,3,4
F,4,9,5,6,2,1,11,5,7,12,11,9,0,8,2,6
Q,5,8,6,10,6,9,5,7,4,9,5,11,4,8,6,7
M,1,0,2,0,1,7,6,9,0,7,8,8,6,6,0,8
B,7,13,7,7,6,10,6,4,5,9,5,8,6,8,8,9
C,5,8,6,6,2,3,10,5,8,12,11,10,1,8,2,6
K,7,9,10,8,10,9,7,3,4,9,2,8,8,4,8,12
R,1,1,2,1,1,6,9,8,4,7,5,8,2,7,4,11
A,6,11,8,9,8,7,7,8,4,8,5,8,4,8,10,1
Q,6,7,6,9,7,8,5,7,4,8,6,7,6,8,6,9
K,4,10,5,7,2,3,8,8,2,7,5,11,3,8,3,10
I,1,6,1,4,1,7,7,0,7,7,6,9,0,8,3,8
V,5,6,5,4,3,4,12,1,2,8,10,7,3,11,1,7
F,2,1,3,2,1,5,11,3,5,11,9,5,1,10,3,6
O,4,8,5,6,4,7,8,8,5,10,7,8,3,8,3,8
A,2,7,4,5,3,12,3,2,2,9,2,9,3,7,3,9
N,6,10,6,8,3,7,7,15,2,4,6,8,6,8,0,8
C,2,1,2,2,1,6,8,7,7,9,7,12,1,10,4,10
W,1,0,1,0,0,7,8,3,0,7,8,8,3,9,0,8
M,5,7,6,5,7,8,8,6,5,7,6,8,7,9,7,6
Q,5,9,6,11,7,7,9,4,3,8,10,10,4,10,8,8
C,3,8,4,6,3,5,7,6,7,7,5,11,1,8,4,10
A,7,9,10,8,8,6,8,2,4,7,7,9,8,6,4,8
Y,3,5,5,8,1,6,10,2,2,7,13,8,2,11,0,8
I,1,11,0,8,1,7,7,5,3,7,6,8,0,8,0,8
B,5,9,7,8,9,7,7,5,4,7,6,8,6,9,8,7
G,4,7,4,5,2,6,7,6,6,10,8,9,2,9,4,9
L,4,9,4,5,2,9,3,4,5,12,4,13,2,6,5,9
I,2,8,3,6,2,8,7,0,7,13,6,8,0,8,1,8
Y,8,10,7,5,4,8,6,4,6,9,6,5,4,10,4,6
K,3,6,5,4,5,8,6,4,4,7,6,8,6,7,6,8
X,5,11,9,9,7,6,8,2,6,7,6,9,6,5,8,7
V,8,10,7,8,5,3,12,2,3,9,11,8,7,11,2,6
S,8,11,9,8,6,7,8,3,6,10,5,7,4,6,6,8
K,3,7,5,5,5,5,6,3,4,6,5,9,5,7,8,7
A,3,8,5,5,2,7,5,3,1,7,1,8,2,7,2,7
S,9,13,8,7,4,9,4,4,3,13,8,10,4,9,3,9
D,2,4,4,3,2,8,7,5,6,9,5,5,2,8,3,7
Q,6,9,8,7,6,8,4,9,5,7,4,8,3,8,4,8
N,10,13,9,7,4,4,9,4,7,3,3,11,5,8,2,7
Z,5,7,7,9,6,10,5,4,4,8,2,6,2,7,7,8
A,4,9,7,7,4,8,2,2,3,6,1,7,2,7,3,7
B,4,6,5,4,4,8,7,5,6,9,6,6,2,8,6,9
U,5,8,5,6,2,7,4,14,5,7,14,8,3,9,0,8
S,3,5,6,3,2,6,8,2,7,10,7,8,1,9,5,6
P,3,1,4,2,2,5,10,4,4,10,8,4,1,9,4,7
C,3,2,4,4,2,6,8,7,7,8,7,13,1,9,4,10
Q,1,0,2,1,1,8,7,6,4,6,6,9,2,8,3,8
Q,5,6,7,9,8,8,11,4,3,5,8,11,5,13,7,11
E,3,8,5,6,4,4,8,5,8,11,10,9,2,9,4,5
D,2,4,4,3,2,9,6,4,6,10,4,5,2,8,3,8
G,4,2,5,4,3,7,6,6,6,6,6,9,2,8,4,8
V,2,1,4,2,1,6,13,3,2,8,11,8,2,10,1,8
A,4,10,7,7,2,7,5,3,1,7,1,8,3,7,2,8
A,2,8,4,6,2,12,3,3,2,10,1,9,2,6,2,8
R,3,2,4,4,3,7,7,5,5,6,5,7,3,6,6,9
S,3,5,4,4,2,8,7,3,7,10,6,8,1,9,5,8
Q,5,9,5,4,3,8,5,4,8,10,4,9,3,7,8,10
Z,6,9,9,7,6,8,6,2,9,11,5,9,3,5,7,8
C,7,10,8,8,5,3,7,5,7,11,10,14,2,9,3,7
F,6,12,5,6,3,4,12,3,5,12,7,4,2,7,5,5
B,4,10,5,8,7,7,8,9,6,7,6,7,2,7,8,10
R,3,7,3,5,3,5,9,7,3,7,5,8,2,7,4,11
W,8,10,9,8,6,1,10,3,3,11,11,9,7,10,1,7
K,6,10,8,7,6,6,6,1,7,10,6,10,4,8,4,8
P,2,4,4,3,2,8,8,3,5,12,4,4,1,10,2,8
O,3,6,4,4,3,7,8,7,4,9,7,8,3,8,2,8
J,5,8,4,6,3,8,7,2,4,11,6,8,2,10,6,11
A,6,9,5,4,2,11,3,3,1,9,4,11,4,5,4,9
P,3,7,5,5,3,9,8,2,5,12,4,5,1,10,2,9
N,10,13,12,8,5,4,9,3,4,13,10,9,6,8,0,7
M,3,2,5,3,3,9,6,6,4,6,7,6,7,5,2,6
P,3,7,5,11,8,8,9,5,0,8,6,6,5,11,6,9
Z,3,7,5,5,3,6,8,2,9,11,7,7,1,9,6,7
S,4,6,5,4,3,9,8,3,7,10,4,7,2,7,4,9
X,1,0,1,0,0,8,7,3,4,7,6,8,2,8,4,8
P,4,8,4,5,2,5,10,9,5,9,6,5,2,10,4,8
C,6,11,6,8,4,5,8,7,8,12,9,12,2,10,4,6
P,5,8,7,6,5,9,8,2,6,13,5,5,2,9,3,9
D,3,7,3,5,2,5,6,10,7,5,4,5,3,8,3,8
Z,2,4,5,3,2,7,8,2,9,12,7,7,1,8,5,6
Y,7,6,6,9,4,6,8,4,2,7,10,5,4,10,5,6
L,1,3,3,1,1,6,4,1,7,7,2,9,0,7,2,8
K,4,5,5,4,3,5,7,4,8,7,6,10,6,8,5,9
T,6,9,6,6,4,7,11,3,9,12,9,4,2,12,3,4
R,2,1,2,1,1,6,10,7,2,7,5,8,2,7,4,10
T,4,11,5,8,2,5,15,1,6,9,11,7,0,8,0,8
A,8,14,8,8,6,9,4,5,4,10,6,12,9,2,7,11
H,5,10,5,7,3,7,5,15,1,7,8,8,3,8,0,8
Z,5,7,6,5,4,8,5,2,9,11,4,10,2,8,6,10
G,4,4,6,6,2,8,5,8,9,6,5,10,2,8,5,10
U,3,1,4,1,1,7,9,5,6,7,10,9,3,10,1,8
B,4,8,6,6,4,11,6,3,7,11,3,7,2,8,5,11
L,7,13,6,7,3,7,4,3,6,11,4,13,2,7,6,8
V,7,9,9,8,10,7,6,5,4,7,6,7,7,10,8,11
B,2,5,4,3,3,8,7,3,6,9,5,7,2,8,5,10
Q,1,1,2,2,2,8,7,5,2,5,6,9,2,9,4,10
G,6,11,7,8,5,6,7,7,7,10,8,10,2,8,5,9
D,4,8,6,6,5,7,8,8,6,9,7,4,4,9,3,7
K,7,10,7,5,3,7,6,3,6,9,8,9,6,11,3,7
Y,4,5,5,7,7,9,6,6,3,7,7,8,7,8,6,4
W,4,8,6,6,3,6,8,4,1,7,8,8,8,9,0,8
Y,4,4,5,6,5,9,9,5,3,7,7,7,5,10,6,4
H,4,4,4,5,2,7,6,15,1,7,8,8,3,8,0,8
S,7,10,5,5,2,9,2,3,4,9,2,9,3,6,5,10
Q,8,15,8,8,5,11,4,5,7,12,3,10,3,7,8,12
D,6,5,6,8,3,5,7,10,10,7,6,5,3,8,4,8
G,3,8,5,6,4,6,6,6,6,7,5,11,2,10,4,9
F,4,11,4,8,3,1,11,4,5,11,11,9,0,8,2,6
U,2,3,3,2,1,5,8,5,6,10,9,8,3,9,2,6
S,2,5,2,4,2,8,8,7,5,8,5,7,2,8,8,8
A,3,9,5,7,3,11,3,2,2,9,2,9,3,5,3,8
C,2,2,3,3,2,6,8,7,8,8,7,13,1,9,4,10
I,3,9,5,7,3,7,7,0,7,13,6,8,0,8,1,8
I,1,1,1,2,1,7,7,1,6,7,6,8,0,8,2,8
H,3,3,5,2,2,7,8,3,6,10,7,7,3,8,3,8
Y,3,5,5,8,6,7,10,3,3,7,8,9,4,10,9,5
W,4,8,7,6,9,9,8,5,2,7,7,7,12,10,4,6
P,3,7,5,11,9,9,8,4,1,8,6,7,7,9,5,6
F,6,11,6,8,2,1,12,5,6,12,11,8,0,8,2,5
J,0,0,1,1,0,12,4,6,3,12,5,11,0,7,0,8
U,2,4,3,3,2,5,8,5,6,10,9,9,3,9,2,6
H,8,11,12,9,10,6,7,3,7,10,8,9,5,8,5,7
R,3,5,4,4,3,7,7,4,5,6,5,6,3,7,4,8
C,3,8,4,6,3,5,7,6,8,5,6,12,1,7,4,10
R,4,9,6,7,6,6,7,5,6,7,6,6,3,7,5,9
B,4,8,6,6,8,8,8,4,3,6,7,7,6,11,8,9
M,6,9,10,7,11,10,5,3,2,9,4,8,11,6,4,7
O,4,8,5,6,4,7,7,7,6,7,5,8,2,8,3,8
C,6,11,7,8,5,5,8,7,6,8,8,15,4,9,6,6
E,3,4,5,3,2,6,8,2,8,11,8,9,2,8,4,7
Z,1,4,2,3,1,8,7,5,8,6,6,8,1,8,7,7
M,6,11,8,8,8,8,6,5,5,6,7,8,8,6,2,7
E,3,7,3,5,2,3,7,6,11,7,7,15,0,8,7,7
U,4,10,5,8,4,8,6,12,4,7,13,7,3,8,0,9
R,3,8,3,6,4,5,9,7,3,7,5,8,2,7,5,11
D,4,11,4,8,3,5,7,11,8,7,6,5,3,8,4,8
F,5,7,6,5,6,7,8,6,4,8,6,8,3,10,8,11
C,7,11,8,8,5,5,7,5,7,12,9,13,4,11,5,5
L,5,10,6,8,4,7,4,2,8,7,1,8,1,6,3,7
F,5,11,6,8,7,6,9,6,4,8,6,8,3,10,8,11
S,2,4,4,3,2,9,6,3,7,10,4,8,1,9,5,9
C,6,9,8,8,8,5,7,3,5,7,6,11,4,11,8,8
U,4,6,4,4,3,7,5,12,4,7,12,8,3,9,0,8
P,6,13,6,7,4,8,9,4,3,12,4,4,4,11,5,6
H,3,6,4,4,2,7,7,14,0
Download .txt
gitextract_62n8x0uq/

├── .gitignore
├── License.txt
├── Readme.md
├── data/
│   ├── andes.bif
│   ├── asia.bif
│   ├── bde_test.bn
│   ├── cancer.bif
│   ├── cmu.bn
│   ├── earthquake.bn
│   ├── flags/
│   │   ├── README.txt
│   │   ├── flags-test.arff
│   │   ├── flags-train.arff
│   │   ├── flags.arff
│   │   └── flags.xml
│   ├── flags.txt
│   ├── gs_data.txt
│   ├── letter.csv
│   ├── lizards.csv
│   ├── munin.bif
│   ├── mushroom.csv
│   ├── scale.csv
│   ├── simple.bn
│   ├── student.bn
│   ├── test.bn
│   ├── urn.bif
│   └── win95pts.bif
├── examples/
│   ├── Drawing.ipynb
│   ├── FactorOperations.ipynb
│   ├── MAP Inference as Optimization.ipynb
│   ├── Marginal_Inference.ipynb
│   └── ReadWrite.ipynb
├── pyBN/
│   ├── __init__.py
│   ├── classes/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_bayesnet.py
│   │   │   └── test_factor.py
│   │   ├── bayesnet.py
│   │   ├── cliquetree.py
│   │   ├── clustergraph.py
│   │   ├── empiricaldistribution.py
│   │   ├── factor.py
│   │   └── factorization.py
│   ├── classification/
│   │   ├── __init__.py
│   │   ├── classification.py
│   │   └── feature_selection.py
│   ├── inference/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_map_exact.py
│   │   │   ├── test_marginal_approx.py
│   │   │   └── test_marginal_exact.py
│   │   ├── map_exact/
│   │   │   ├── __init__.py
│   │   │   ├── ilp_map.py
│   │   │   └── ve_map.py
│   │   ├── marginal_approx/
│   │   │   ├── __init__.py
│   │   │   ├── forward_sample.py
│   │   │   ├── gibbs_sample.py
│   │   │   ├── loopy_bp.py
│   │   │   └── lw_sample.py
│   │   └── marginal_exact/
│   │       ├── __init__.py
│   │       ├── exact_bp.py
│   │       └── ve_marginal.py
│   ├── io/
│   │   ├── __init__.py
│   │   ├── _tests/
│   │   │   ├── __init__.py
│   │   │   ├── test_reading.py
│   │   │   └── test_writing.py
│   │   ├── read.py
│   │   └── write.py
│   ├── learning/
│   │   ├── __init__.py
│   │   ├── parameter/
│   │   │   ├── __init__.py
│   │   │   ├── _tests/
│   │   │   │   └── __init__.py
│   │   │   ├── bayes.py
│   │   │   └── mle.py
│   │   └── structure/
│   │       ├── __init__.py
│   │       ├── _tests/
│   │       │   ├── __init__.py
│   │       │   ├── test_chow_liu.py
│   │       │   ├── test_grow_shrink.py
│   │       │   ├── test_orient_edges.py
│   │       │   └── test_pc.py
│   │       ├── constraint/
│   │       │   ├── __init__.py
│   │       │   ├── fast_iamb.py
│   │       │   ├── grow_shrink.py
│   │       │   ├── iamb.py
│   │       │   ├── lambda_iamb.py
│   │       │   └── path_condition.py
│   │       ├── exact/
│   │       │   ├── __init__.py
│   │       │   └── gobnilp.py
│   │       ├── hybrid/
│   │       │   ├── __init__.py
│   │       │   ├── mmhc.py
│   │       │   └── mmpc.py
│   │       ├── mdbn.py
│   │       ├── naive/
│   │       │   ├── TAN.py
│   │       │   ├── __init__.py
│   │       │   └── naive_bayes.py
│   │       ├── score/
│   │       │   ├── __init__.py
│   │       │   ├── bayes_scores.py
│   │       │   ├── hill_climbing.py
│   │       │   ├── info_scores.py
│   │       │   ├── random_restarts.py
│   │       │   └── tabu.py
│   │       └── tree/
│   │           ├── __init__.py
│   │           └── chow_liu.py
│   ├── plotting/
│   │   ├── __init__.py
│   │   └── plot.py
│   └── utils/
│       ├── __init__.py
│       ├── _tests/
│       │   ├── __init__.py
│       │   ├── test_independence_tests.py
│       │   ├── test_markov_blanket.py
│       │   ├── test_orient_edges.py
│       │   └── test_random_sample.py
│       ├── class_equivalence.py
│       ├── data.py
│       ├── discretize.py
│       ├── graph.py
│       ├── hybrid_distance.py
│       ├── independence_tests.py
│       ├── markov_blanket.py
│       ├── orient_edges.py
│       ├── parameter_distance.py
│       ├── random_sample.py
│       └── structure_distance.py
└── setup.py
Download .txt
SYMBOL INDEX (305 symbols across 64 files)

FILE: pyBN/classes/_tests/test_bayesnet.py
  class BayesNetTestCase (line 44) | class BayesNetTestCase(unittest.TestCase):
    method setUp (line 46) | def setUp(self):
    method tearDown (line 52) | def tearDown(self):
    method test_isinstance (line 55) | def test_isinstance(self):
    method test_V_bif (line 58) | def test_V_bif(self):
    method test_E_bif (line 62) | def test_E_bif(self):
    method test_F_bif (line 70) | def test_F_bif(self):
    method test_V_bn (line 84) | def test_V_bn(self):
    method test_E_bn (line 88) | def test_E_bn(self):
    method test_F_bn (line 96) | def test_F_bn(self):
    method test_nodes (line 110) | def test_nodes(self):
    method test_cpt (line 115) | def test_cpt(self):
    method test_card (line 120) | def test_card(self):
    method test_scope (line 123) | def test_scope(self):
    method test_parents (line 127) | def test_parents(self):
    method test_values (line 131) | def test_values(self):
    method test_values_idx (line 134) | def test_values_idx(self):

FILE: pyBN/classes/_tests/test_factor.py
  class FactorTestCase (line 45) | class FactorTestCase(unittest.TestCase):
    method setUp (line 47) | def setUp(self):
    method tearDown (line 51) | def tearDown(self):
    method test_factor_init (line 55) | def test_factor_init(self):
    method test_factor_bn (line 58) | def test_factor_bn(self):
    method test_factor_var (line 62) | def test_factor_var(self):
    method test_factor_scope (line 65) | def test_factor_scope(self):
    method test_factor_card (line 68) | def test_factor_card(self):
    method test_factor_stride (line 72) | def test_factor_stride(self):
    method test_factor_cpt (line 76) | def test_factor_cpt(self):
    method test_multiply_factor (line 81) | def test_multiply_factor(self):
    method test_sumover_var (line 92) | def test_sumover_var(self):
    method test_sumout_var_list (line 96) | def test_sumout_var_list(self):
    method test_sumout_var (line 103) | def test_sumout_var(self):
    method test_maxout_var (line 112) | def test_maxout_var(self):
    method test_reduce_factor_by_list (line 124) | def test_reduce_factor_by_list(self):
    method test_reduce_factor (line 131) | def test_reduce_factor(self):
    method test_to_log (line 137) | def test_to_log(self):
    method test_from_log (line 142) | def test_from_log(self):
    method test_normalize (line 148) | def test_normalize(self):

FILE: pyBN/classes/bayesnet.py
  class BayesNet (line 45) | class BayesNet(object):
    method __init__ (line 51) | def __init__(self, E=None, value_dict=None, file=None):
    method __eq__ (line 88) | def __eq__(self, y):
    method __hash__ (line 97) | def __hash__(self):
    method copy (line 104) | def copy(self):
    method add_node (line 120) | def add_node(self, rv, cpt=[], parents=[], values=[]):
    method add_edge (line 124) | def add_edge(self, u, v):
    method remove_edge (line 138) | def remove_edge(self, u, v):
    method reverse_arc (line 142) | def reverse_arc(self, u, v):
    method set_data (line 147) | def set_data(self, rv, data):
    method set_cpt (line 151) | def set_cpt(self, rv, cpt):
    method set_parents (line 154) | def set_parents(self, rv, parents):
    method set_values (line 157) | def set_values(self, rv, values):
    method nodes (line 160) | def nodes(self):
    method node_idx (line 164) | def node_idx(self, rv):
    method has_node (line 170) | def has_node(self, rv):
    method has_edge (line 173) | def has_edge(self, u, v):
    method edges (line 176) | def edges(self):
    method num_edges (line 180) | def num_edges(self):
    method num_params (line 186) | def num_params(self):
    method scope_size (line 192) | def scope_size(self, rv):
    method num_nodes (line 195) | def num_nodes(self):
    method cpt (line 198) | def cpt(self, rv):
    method card (line 201) | def card(self, rv):
    method scope (line 204) | def scope(self, rv):
    method parents (line 209) | def parents(self, rv):
    method children (line 212) | def children(self, rv):
    method degree (line 215) | def degree(self, rv):
    method values (line 218) | def values(self, rv):
    method value_idx (line 221) | def value_idx(self, rv, val):
    method stride (line 228) | def stride(self, rv, n):
    method flat_cpt (line 237) | def flat_cpt(self, by_var=False, by_parents=False):
    method cpt_indices (line 250) | def cpt_indices(self, target, val_dict):
    method cpt_str_idx (line 288) | def cpt_str_idx(self, rv, idx):
    method set_structure (line 307) | def set_structure(self, edge_dict, value_dict=None):
    method adj_list (line 353) | def adj_list(self):
    method moralized_edges (line 365) | def moralized_edges(self):

FILE: pyBN/classes/cliquetree.py
  class CliqueTree (line 50) | class CliqueTree(object):
    method __init__ (line 75) | def __init__(self, bn):
    method __iter__ (line 105) | def __iter__(self):
    method __getitem__ (line 109) | def __getitem__(self, rv):
    method parents (line 115) | def parents(self, v):
    method children (line 122) | def children(self, n):
    method dfs_postorder (line 125) | def dfs_postorder(self, root):
    method initialize_tree (line 131) | def initialize_tree(self):
  class Clique (line 183) | class Clique(object):
    method __init__ (line 211) | def __init__(self, scope):
    method __repr__ (line 232) | def __repr__(self):
    method __rshift__ (line 235) | def __rshift__(self, other_clique):
    method __lshift__ (line 241) | def __lshift__(self, other_clique):
    method send_message (line 247) | def send_message(self, parent):
    method initialize_psi (line 290) | def initialize_psi(self):
    method send_initial_message (line 307) | def send_initial_message(self, other_clique):
    method collect_beliefs (line 332) | def collect_beliefs(self):
    method sepset (line 358) | def sepset(self, other_clique):
    method marginalize_over (line 371) | def marginalize_over(self, target):

FILE: pyBN/classes/clustergraph.py
  class ClusterGraph (line 30) | class ClusterGraph(object):
    method __init__ (line 36) | def __init__(self, bn):
    method initialize_graph (line 48) | def initialize_graph(self):
    method bethe (line 61) | def bethe(self):
    method initialize_messages (line 101) | def initialize_messages(self):
    method collect_beliefs (line 114) | def collect_beliefs(self):
    method loopy_belief_propagation (line 122) | def loopy_belief_propagation(self, target, evidence, max_iter=100):

FILE: pyBN/classes/empiricaldistribution.py
  class EmpiricalDistribution (line 32) | class EmpiricalDistribution(object):
    method __init__ (line 35) | def __init__(self, data, names=None):
    method bayes_counts (line 63) | def bayes_counts(self, bn):
    method idx_map (line 66) | def idx_map(self, rvs):
    method idx (line 71) | def idx(self, rv):
    method axis_tuple (line 74) | def axis_tuple(self, rv):
    method mpd (line 77) | def mpd(self, rv):
    method jpd (line 92) | def jpd(self, rvs):
    method cpd (line 102) | def cpd(self, lhs, rhs):
    method mi (line 121) | def mi(self, lhs, rhs, cond=None):

FILE: pyBN/classes/factor.py
  class Factor (line 33) | class Factor(object):
    method __init__ (line 109) | def __init__(self, bn, var):
    method __repr__ (line 151) | def __repr__(self):
    method __str__ (line 161) | def __str__(self):
    method __mul__ (line 170) | def __mul__(self, other_factor):
    method __sub__ (line 178) | def __sub__(self, rv_val):
    method __div__ (line 186) | def __div__(self, rv):
    method __floordiv__ (line 194) | def __floordiv__(self, rv):
    method parents (line 203) | def parents(self):
    method values (line 212) | def values(self, rv):
    method value_indices (line 215) | def value_indices(self, val_dict):
    method sepset (line 229) | def sepset(self, other_factor):
    method multiply_factor (line 245) | def multiply_factor(self, other_factor):
    method sumover_var (line 323) | def sumover_var(self, rv):
    method sumout_var_list (line 373) | def sumout_var_list(self, var_list):
    method sumout_var (line 399) | def sumout_var(self, rv):
    method maxout_var (line 453) | def maxout_var(self, rv):
    method reduce_factor_by_list (line 511) | def reduce_factor_by_list(self, evidence):
    method reduce_factor (line 545) | def reduce_factor(self, rv, val):
    method to_log (line 612) | def to_log(self):
    method from_log (line 620) | def from_log(self):
    method perturb (line 628) | def perturb(self):
    method normalize (line 636) | def normalize(self):

FILE: pyBN/classes/factorization.py
  class Factorization (line 13) | class Factorization(object):
    method __init__ (line 15) | def __init__(self, bn, nodes=None):
    method refresh (line 37) | def refresh(self):
    method __getitem__ (line 46) | def __getitem__(self, idx):
    method __iter__ (line 49) | def __iter__(self):
    method __len__ (line 53) | def __len__(self):
    method __div__ (line 56) | def __div__(self, rv):
    method __floordiv__ (line 65) | def __floordiv__(self, rv):
    method __sub__ (line 74) | def __sub__(self, rv_val):
    method sum_product_eliminate_var (line 86) | def sum_product_eliminate_var(self, rv):
    method max_product_eliminate_var (line 101) | def max_product_eliminate_var(self, rv):
    method traceback_map (line 117) | def traceback_map(self):
    method consolidate (line 131) | def consolidate(self):
    method relevant_factors (line 138) | def relevant_factors(self, rv):
    method irrelevant_factors (line 141) | def irrelevant_factors(self, rv):

FILE: pyBN/classification/classification.py
  function mbc_predict (line 18) | def mbc_predict(data, targets, classifier=None, c_struct='DAG',f_struct=...
  function predict (line 21) | def predict(data, target, classifier=None, method='nb'):

FILE: pyBN/classification/feature_selection.py
  function fs_gambit (line 34) | def fs_gambit(data, target):
  function feature_selection (line 85) | def feature_selection(data, target, method='iamb'):

FILE: pyBN/inference/_tests/test_map_exact.py
  class MapExactTestCase (line 18) | class MapExactTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 24) | def tearDown(self):

FILE: pyBN/inference/_tests/test_marginal_approx.py
  class MarginalApproxTestCase (line 18) | class MarginalApproxTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 24) | def tearDown(self):
    method test_forward_sample (line 27) | def test_forward_sample(self):
    method test_likelihood_weighted_sample (line 37) | def test_likelihood_weighted_sample(self):
    method test_lws_allevidence (line 49) | def test_lws_allevidence(self):
    method test_gibbs (line 58) | def test_gibbs(self):

FILE: pyBN/inference/_tests/test_marginal_exact.py
  class MarginalExactTestCase (line 20) | class MarginalExactTestCase(unittest.TestCase):
    method setUp (line 22) | def setUp(self):
    method tearDown (line 26) | def tearDown(self):
    method test_marginal_ve_e_prior1 (line 29) | def test_marginal_ve_e_prior1(self):
    method test_marginal_ve_e_prior2 (line 33) | def test_marginal_ve_e_prior2(self):
    method test_marginal_ve_e_prior_middle_ev (line 53) | def test_marginal_ve_e_prior_middle_ev(self):
    method test_marginal_ve_e_prior_leaf_ev (line 57) | def test_marginal_ve_e_prior_leaf_ev(self):
    method test_marginal_ve_e_middle_prior_ev (line 61) | def test_marginal_ve_e_middle_prior_ev(self):

FILE: pyBN/inference/map_exact/ilp_map.py
  function ilp_map (line 12) | def ilp_map(bn, evidence={}):

FILE: pyBN/inference/map_exact/ve_map.py
  function ve_map (line 12) | def ve_map(bn,

FILE: pyBN/inference/marginal_approx/forward_sample.py
  function forward_sample (line 8) | def forward_sample(bn, n=1000):

FILE: pyBN/inference/marginal_approx/gibbs_sample.py
  function gibbs_sample (line 12) | def gibbs_sample(bn, n=1000, burn=200):

FILE: pyBN/inference/marginal_approx/loopy_bp.py
  function loopy_bp (line 11) | def loopy_bp(target=None, evidence=None, max_iter=100):

FILE: pyBN/inference/marginal_approx/lw_sample.py
  function lw_sample (line 10) | def lw_sample(bn, evidence={}, target=None, n=1000):

FILE: pyBN/inference/marginal_exact/exact_bp.py
  function exact_bp (line 13) | def exact_bp(bn, target=None, evidence=None, downward_pass=False):

FILE: pyBN/inference/marginal_exact/ve_marginal.py
  function marginal_ve_e (line 12) | def marginal_ve_e(bn, target, evidence={}):

FILE: pyBN/io/_tests/test_reading.py
  class ReadingTestCase (line 16) | class ReadingTestCase(unittest.TestCase):
    method setUp (line 18) | def setUp(self):
    method tearDown (line 23) | def tearDown(self):
    method test_read_bn_vertices (line 26) | def test_read_bn_vertices(self):
    method test_read_bif_vertices (line 29) | def test_read_bif_vertices(self):

FILE: pyBN/io/_tests/test_writing.py
  function suite (line 13) | def suite():
  class WritingTestCase (line 18) | class WritingTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 22) | def tearDown(self):

FILE: pyBN/io/read.py
  function read_bn (line 24) | def read_bn(path):
  function read_bif (line 57) | def read_bif(path):
  function read_json (line 145) | def read_json(path):
  function read_mat (line 218) | def read_mat(path, delim=' '):

FILE: pyBN/io/write.py
  function write_bn (line 20) | def write_bn(bn, path):
  function write_json (line 51) | def write_json(bn, path):

FILE: pyBN/learning/parameter/bayes.py
  function bayes_estimator (line 15) | def bayes_estimator(bn, data, equiv_sample=None, prior_dict=None, nodes=...

FILE: pyBN/learning/parameter/mle.py
  function mle_fast (line 14) | def mle_fast(bn, data, nodes=None, counts=False, np=False):
  function mle_estimator (line 71) | def mle_estimator(bn, data, nodes=None, counts=False):

FILE: pyBN/learning/structure/_tests/test_chow_liu.py
  class ChowLiuTestCase (line 18) | class ChowLiuTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 25) | def tearDown(self):
    method test_chow_liu1_V (line 28) | def test_chow_liu1_V(self):
    method test_chow_liu1_E (line 33) | def test_chow_liu1_E(self):
    method test_chow_liu1_F (line 38) | def test_chow_liu1_F(self):

FILE: pyBN/learning/structure/_tests/test_grow_shrink.py
  class GrowShrinkTestCase (line 19) | class GrowShrinkTestCase(unittest.TestCase):
    method setUp (line 21) | def setUp(self):
    method tearDown (line 26) | def tearDown(self):
    method test_gs1_V (line 29) | def test_gs1_V(self):
    method test_gs1_E (line 34) | def test_gs1_E(self):
    method test_gs1_F (line 39) | def test_gs1_F(self):
    method test_gs_data (line 46) | def test_gs_data(self):

FILE: pyBN/learning/structure/_tests/test_orient_edges.py
  class OrientEdgesTestCase (line 18) | class OrientEdgesTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 22) | def tearDown(self):
    method test_orient_edges_pc (line 25) | def test_orient_edges_pc(self):
    method test_orient_edges_gs (line 31) | def test_orient_edges_gs(self):

FILE: pyBN/learning/structure/_tests/test_pc.py
  class PCTestCase (line 18) | class PCTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 25) | def tearDown(self):
    method test_pc1_V (line 28) | def test_pc1_V(self):
    method test_pc1_E (line 33) | def test_pc1_E(self):
    method test_pc1_F (line 38) | def test_pc1_F(self):

FILE: pyBN/learning/structure/constraint/fast_iamb.py
  function fast_iamb (line 42) | def fast_iamb(data, k=5, alpha=0.05, feature_selection=None, debug=False):

FILE: pyBN/learning/structure/constraint/grow_shrink.py
  function gs (line 48) | def gs(data, alpha=0.05, feature_selection=None, debug=False):

FILE: pyBN/learning/structure/constraint/iamb.py
  function iamb (line 55) | def iamb(data, alpha=0.05, feature_selection=None, debug=False):

FILE: pyBN/learning/structure/constraint/lambda_iamb.py
  function lambda_iamb (line 13) | def lambda_iamb(data, L=1.5, alpha=0.05, feature_selection=None):

FILE: pyBN/learning/structure/constraint/path_condition.py
  function pc (line 55) | def pc(data, alpha=0.05):

FILE: pyBN/learning/structure/exact/gobnilp.py
  function ilp (line 28) | def ilp(data, settings=None, edge_reqs=None, nonedge_reqs=None, ind_reqs...

FILE: pyBN/learning/structure/hybrid/mmhc.py
  function mmhc (line 12) | def mmhc(data, alpha=0.05, metric='AIC', max_iter=100, method='hc'):

FILE: pyBN/learning/structure/hybrid/mmpc.py
  function mmpc (line 23) | def mmpc(data, alpha=0.05):

FILE: pyBN/learning/structure/mdbn.py
  function bridge (line 56) | def bridge(c_bn, f_bn, data):
  function mdbn (line 93) | def mdbn(data, f_cols, c_cols, f_struct='DAG', c_struct='DAG', wrapper=F...

FILE: pyBN/learning/structure/naive/TAN.py
  function TAN (line 13) | def TAN(data, target):

FILE: pyBN/learning/structure/naive/naive_bayes.py
  function naive_bayes (line 18) | def naive_bayes(data, target, estimator='mle'):

FILE: pyBN/learning/structure/score/bayes_scores.py
  function BDe (line 26) | def BDe(bn, data, ess=1, ed=None):
  function BDeu (line 74) | def BDeu(bn, data, ess=1, ed=None):
  function K2 (line 123) | def K2(bn, data, ed=None):

FILE: pyBN/learning/structure/score/hill_climbing.py
  function hc (line 42) | def hc(data, metric='AIC', max_iter=100, debug=False, restriction=None):

FILE: pyBN/learning/structure/score/info_scores.py
  function info_score (line 38) | def info_score(bn, nrow, metric='BIC'):
  function log_likelihood (line 53) | def log_likelihood(bn, nrow):
  function MDL (line 118) | def MDL(bn, nrow):
  function BIC (line 125) | def BIC(bn, nrow):
  function AIC (line 136) | def AIC(bn, nrow):

FILE: pyBN/learning/structure/score/random_restarts.py
  function hc_rr (line 38) | def hc_rr(data, M=5, R=3, metric='AIC', max_iter=100, debug=False, restr...

FILE: pyBN/learning/structure/score/tabu.py
  function tabu (line 29) | def tabu(data, k=5, metric='AIC', max_iter=100, debug=False, restriction...

FILE: pyBN/learning/structure/tree/chow_liu.py
  function chow_liu (line 21) | def chow_liu(data,edges_only=False):

FILE: pyBN/plotting/plot.py
  function plot (line 21) | def plot(bn, save=False):
  function plot_nx (line 24) | def plot_nx(bn,**kwargs):
  function iplot (line 35) | def iplot(bn, h=350, w=450):
  function plot_gv (line 73) | def plot_gv(bn, save=False):

FILE: pyBN/utils/_tests/test_independence_tests.py
  class ConstraintTestsTestCase (line 17) | class ConstraintTestsTestCase(unittest.TestCase):
    method setUp (line 19) | def setUp(self):
    method tearDown (line 26) | def tearDown(self):
    method test_mi_two_vars_value_a (line 29) | def test_mi_two_vars_value_a(self):
    method test_mi_two_vars_value_b (line 32) | def test_mi_two_vars_value_b(self):
    method test_mi_two_vars_symmetry (line 35) | def test_mi_two_vars_symmetry(self):
    method test_mi_three_vars_value_a (line 38) | def test_mi_three_vars_value_a(self):
    method test_mi_three_vars_symmetry (line 41) | def test_mi_three_vars_symmetry(self):
    method test_mi_random_three (line 44) | def test_mi_random_three(self):
    method test_mi_random_four (line 49) | def test_mi_random_four(self):

FILE: pyBN/utils/_tests/test_markov_blanket.py
  class ConstraintTestsTestCase (line 19) | class ConstraintTestsTestCase(unittest.TestCase):
    method setUp (line 21) | def setUp(self):
    method tearDown (line 25) | def tearDown(self):
    method test_markov_blanket (line 28) | def test_markov_blanket(self):

FILE: pyBN/utils/_tests/test_orient_edges.py
  class OrientEdgesTestCase (line 18) | class OrientEdgesTestCase(unittest.TestCase):
    method setUp (line 20) | def setUp(self):
    method tearDown (line 22) | def tearDown(self):
    method test_orient_edges_pc (line 25) | def test_orient_edges_pc(self):
    method test_orient_edges_gs (line 31) | def test_orient_edges_gs(self):

FILE: pyBN/utils/_tests/test_random_sample.py
  class RandomSampleTestCase (line 19) | class RandomSampleTestCase(unittest.TestCase):
    method setUp (line 21) | def setUp(self):
    method tearDown (line 25) | def tearDown(self):
    method test_random_sample (line 28) | def test_random_sample(self):

FILE: pyBN/utils/class_equivalence.py
  function are_class_equivalent (line 16) | def are_class_equivalent(x,y):

FILE: pyBN/utils/data.py
  function replace_strings (line 15) | def replace_strings(data, return_values=False):
  function unique_bins (line 38) | def unique_bins(data):

FILE: pyBN/utils/discretize.py
  function discretize (line 19) | def discretize(data, cols=None, bins=None):

FILE: pyBN/utils/graph.py
  function would_cause_cycle (line 14) | def would_cause_cycle(e, u, v, reverse=False):
  function topsort (line 31) | def topsort(edge_dict, root=None):
  function dfs_postorder (line 58) | def dfs_postorder(edge_dict, root=None):
  function mst (line 61) | def mst(edge_dict):
  function make_chordal (line 132) | def make_chordal(bn, v=None,e=None):
  function is_chordal (line 210) | def is_chordal(edge_list):

FILE: pyBN/utils/hybrid_distance.py
  function hybrid_distance (line 22) | def hybrid_distance(x,y, alpha, s='hamming', p='euclidean'):

FILE: pyBN/utils/independence_tests.py
  function are_independent (line 24) | def are_independent(data, alpha=0.05, method='mi_test'):
  function mutual_information (line 31) | def mutual_information(data, conditional=False):
  function mi_test (line 105) | def mi_test(data, test=True):
  function entropy (line 228) | def entropy(data):
  function mi_from_en (line 307) | def mi_from_en(data):
  function chi2_test (line 349) | def chi2_test(data):

FILE: pyBN/utils/markov_blanket.py
  function markov_blanket (line 23) | def markov_blanket(bn):
  function resolve_markov_blanket (line 51) | def resolve_markov_blanket(Mb, data,alpha=0.05):
  function mb_fitness (line 116) | def mb_fitness(data, Mb, target=None):

FILE: pyBN/utils/orient_edges.py
  function orient_edges_MB (line 21) | def orient_edges_MB(edge_dict, Mb, data, alpha):
  function orient_edges_gs2 (line 98) | def orient_edges_gs2(edge_dict, Mb, data, alpha):
  function orient_edges_CS (line 121) | def orient_edges_CS(edge_dict, block_dict):

FILE: pyBN/utils/parameter_distance.py
  function euclidean (line 35) | def euclidean(x,y):
  function manhattan (line 48) | def manhattan(x,y):
  function minkowski (line 61) | def minkowski(x,y,p=1.5):
  function kl_divergence (line 80) | def kl_divergence(x,y):
  function js_divergence (line 95) | def js_divergence(x,y):
  function hellinger (line 112) | def hellinger(x,y):

FILE: pyBN/utils/random_sample.py
  function random_sample (line 17) | def random_sample(bn, n=1000):

FILE: pyBN/utils/structure_distance.py
  function missing_edges (line 52) | def missing_edges(x,y):
  function extra_edges (line 67) | def extra_edges(x,y):
  function incorrect_direction_edges (line 82) | def incorrect_direction_edges(x,y):
  function hamming (line 95) | def hamming(x,y):
Condensed preview — 121 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,921K chars).
[
  {
    "path": ".gitignore",
    "chars": 245,
    "preview": "*.DS_Store\n*.pyc\n.ipynb_checkpoints/\n*.ipynb_checkpoints/\n*.bkbn\n.spyderworkspace\n.spyderproject\n\n# setup.py working dir"
  },
  {
    "path": "License.txt",
    "chars": 1109,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2016, Nicholas Cullen <ncullen.th@dartmouth.edu>\n\nPermission is hereby granted, fre"
  },
  {
    "path": "Readme.md",
    "chars": 5194,
    "preview": "\nNOTE: I wrote this code to go along with Daphne Koller's book and no longer\nmaintain the repository, although the code "
  },
  {
    "path": "data/andes.bif",
    "chars": 64737,
    "preview": "network unknown {\n}\nvariable GOAL_2 {\n  type discrete [ 2 ] { false, true };\n}\nvariable SNode_3 {\n  type discrete [ 2 ] "
  },
  {
    "path": "data/asia.bif",
    "chars": 1074,
    "preview": "network unknown {\n}\nvariable asia {\n  type discrete [ 2 ] { yes, no };\n}\nvariable tub {\n  type discrete [ 2 ] { yes, no "
  },
  {
    "path": "data/bde_test.bn",
    "chars": 855,
    "preview": "{\n    \"V\": [\"V1\", \"V2\", \"V3\", \"V4\", \"V5\"],\n    \"E\": {\n        \"V1\" : [],\n        \"V2\" : [],\n        \"V3\" : [\"V2\",\"V4\",\"V"
  },
  {
    "path": "data/cancer.bif",
    "chars": 725,
    "preview": "network unknown {\n}\nvariable Pollution {\n  type discrete [ 2 ] { low, high };\n}\nvariable Smoker {\n  type discrete [ 2 ] "
  },
  {
    "path": "data/cmu.bn",
    "chars": 1045,
    "preview": "{\r\n    \"V\": [\"Burglary\", \"Earthquake\", \"Alarm\", \"JohnCalls\", \"MaryCalls\"],\r\n    \"E\": {\r\n        \"Burglary\" : [\"Alarm\"],\r"
  },
  {
    "path": "data/earthquake.bn",
    "chars": 1001,
    "preview": "{\n    \"V\": [\"Burglary\", \"Earthquake\", \"Alarm\", \"JohnCalls\", \"MaryCalls\"],\n    \"E\": {\n        \"Burglary\" : [\"Alarm\"],\n   "
  },
  {
    "path": "data/flags/README.txt",
    "chars": 1079,
    "preview": "Flags Dataset\r\n=============\r\n\r\nThis dataset contains data about nations and their national flags. The multi-label \r\ncla"
  },
  {
    "path": "data/flags/flags-test.arff",
    "chars": 4283,
    "preview": "@relation flags_ml\n\n@attribute landmass {1,2,3,4,5,6}\n@attribute zone {1,2,3,4}\n@attribute area numeric\n@attribute popul"
  },
  {
    "path": "data/flags/flags-train.arff",
    "chars": 7836,
    "preview": "@relation flags_ml\n\n@attribute landmass {1,2,3,4,5,6}\n@attribute zone {1,2,3,4}\n@attribute area numeric\n@attribute popul"
  },
  {
    "path": "data/flags/flags.arff",
    "chars": 11504,
    "preview": "@relation flags_ml\r\n\r\n@attribute landmass\t{1, 2, 3, 4, 5, 6}\r\n@attribute zone\t{1, 2, 3, 4}\r\n@attribute area\tnumeric\r\n@at"
  },
  {
    "path": "data/flags/flags.xml",
    "chars": 314,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<labels xmlns=\"http://mulan.sourceforge.net/labels\">\r\n<label name=\"red\"></label>"
  },
  {
    "path": "data/flags.txt",
    "chars": 3498,
    "preview": "4,1,1001,47,8,2,0,3,4,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0\n2,3,178,3,2,0,0,9,3,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0\n2,4,76,2,2"
  },
  {
    "path": "data/gs_data.txt",
    "chars": 10000,
    "preview": "1 1 2 2 1\n2 1 2 2 2\n1 1 2 2 2\n1 1 2 2 2\n1 2 2 1 2\n2 1 2 2 2\n2 1 2 2 2\n2 1 2 2 2\n1 1 2 2 1\n2 1 2 1 2\n1 1 2 1 2\n2 1 2 2 2\n"
  },
  {
    "path": "data/letter.csv",
    "chars": 712564,
    "preview": "T,2,8,3,5,1,8,13,0,6,6,10,8,0,8,0,8\nI,5,12,3,7,2,10,5,5,4,13,3,9,2,8,4,10\nD,4,11,6,8,6,10,6,2,6,10,3,7,3,7,3,9\nN,7,11,6,"
  },
  {
    "path": "data/lizards.csv",
    "chars": 2484,
    "preview": "\"Species\",\"Diameter\",\"Height\"\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n1,1,2\n"
  },
  {
    "path": "data/munin.bif",
    "chars": 1165598,
    "preview": "network unknown {\n}\nvariable R_LNLW_MED_SEV {\n  type discrete [ 5 ] { NO, MILD, MOD, SEV, TOTAL };\n}\nvariable R_LNLW_MED"
  },
  {
    "path": "data/mushroom.csv",
    "chars": 373703,
    "preview": "p,x,s,n,t,p,f,c,n,k,e,e,s,s,w,w,p,w,o,p,k,s,u\ne,x,s,y,t,a,f,c,b,k,e,c,s,s,w,w,p,w,o,p,n,n,g\ne,b,s,w,t,l,f,c,b,n,e,c,s,s,"
  },
  {
    "path": "data/scale.csv",
    "chars": 6249,
    "preview": "B,1,1,1,1\nR,1,1,1,2\nR,1,1,1,3\nR,1,1,1,4\nR,1,1,1,5\nR,1,1,2,1\nR,1,1,2,2\nR,1,1,2,3\nR,1,1,2,4\nR,1,1,2,5\nR,1,1,3,1\nR,1,1,3,2\n"
  },
  {
    "path": "data/simple.bn",
    "chars": 501,
    "preview": "{\n    \"V\": [\"A\", \"B\", \"C\"],\n    \"E\": {\n        \"A\" : [\"B\"],\n        \"B\" : [\"C\"],\n        \"C\" : []\n    },\n    \"F\": {\n    "
  },
  {
    "path": "data/student.bn",
    "chars": 1518,
    "preview": "{\r\n    \"V\": [Intelligence\", \"Difficulty\", \"SAT\", \"Grade\", \"Letter\"],\r\n    \"E\": [[\"Intelligence\", \"Grade\"],\r\n        [\"Di"
  },
  {
    "path": "data/test.bn",
    "chars": 1327,
    "preview": "{\n  \"V\": [\n    \"Smoker\", \n    \"Pollution\", \n    \"Cancer\", \n    \"Xray\", \n    \"Dyspnoea\"\n  ], \n  \"E\": {\n    \"Xray\": [], \n "
  },
  {
    "path": "data/urn.bif",
    "chars": 907,
    "preview": "network unknown {\r\n}\r\nvariable draw {\r\n\ttype discrete [ 2 ] { red, blue };\r\n}\r\nvariable lie {\r\n\ttype discrete [ 2 ] { ye"
  },
  {
    "path": "data/win95pts.bif",
    "chars": 42125,
    "preview": "network unknown {\n}\nvariable AppOK {\n  type discrete [ 2 ] { Correct, Incorrect_Corrupt };\n}\nvariable DataFile {\n  type "
  },
  {
    "path": "examples/Drawing.ipynb",
    "chars": 155399,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# Drawing (Plotting) Bayesian Netwo"
  },
  {
    "path": "examples/FactorOperations.ipynb",
    "chars": 14030,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# Factor Operations with pyBN\"\n   ]"
  },
  {
    "path": "examples/MAP Inference as Optimization.ipynb",
    "chars": 7080,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# MAP Inference as Linear Integer P"
  },
  {
    "path": "examples/Marginal_Inference.ipynb",
    "chars": 2559,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# Marginal Inference in Bayesian Ne"
  },
  {
    "path": "examples/ReadWrite.ipynb",
    "chars": 5836,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# Reading and Writing Bayesian Netw"
  },
  {
    "path": "pyBN/__init__.py",
    "chars": 198,
    "preview": "from pyBN.classes import *\r\nfrom pyBN.classification import *\r\nfrom pyBN.inference import *\r\nfrom pyBN.io import *\r\nfrom"
  },
  {
    "path": "pyBN/classes/__init__.py",
    "chars": 314,
    "preview": "from pyBN.classes.bayesnet import BayesNet\r\nfrom pyBN.classes.cliquetree import CliqueTree, Clique\r\nfrom pyBN.classes.cl"
  },
  {
    "path": "pyBN/classes/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/classes/_tests/test_bayesnet.py",
    "chars": 4002,
    "preview": "\"\"\"\n********\nUnitTest\nBayesNet\n********\n\nMethod\tChecks that\nassertEqual(a, b)\ta == b\t \nassertNotEqual(a, b)\ta != b\t \nass"
  },
  {
    "path": "pyBN/classes/_tests/test_factor.py",
    "chars": 4266,
    "preview": "\"\"\"\n********\nUnitTest\nFactor\n********\n\nMethod\tChecks that\nassertEqual(a, b)\ta == b\t \nassertNotEqual(a, b)\ta != b\t \nasser"
  },
  {
    "path": "pyBN/classes/bayesnet.py",
    "chars": 10904,
    "preview": "\"\"\"\r\n**************\r\nBayesNet Class\r\n**************\r\n\r\nOverarching class for Discrete Bayesian Networks.\r\n\r\n\r\nDesign Spe"
  },
  {
    "path": "pyBN/classes/cliquetree.py",
    "chars": 11917,
    "preview": "\"\"\"\r\n******************\r\nCliqueTree Class \r\n&\r\nClique Class\r\n******************\r\n\r\nThis is a class for creating/manipula"
  },
  {
    "path": "pyBN/classes/clustergraph.py",
    "chars": 5833,
    "preview": "\"\"\"\r\n******************\r\nClusterGraph Class\r\n******************\r\n\r\nThis is a class for creating/manipulating Cluster Gra"
  },
  {
    "path": "pyBN/classes/empiricaldistribution.py",
    "chars": 5134,
    "preview": "\"\"\"\n************\nEmpirical\nDistribution\nClass\n************\n\nCreate, maintain, and perform operations\nover an empirical p"
  },
  {
    "path": "pyBN/classes/factor.py",
    "chars": 18529,
    "preview": "\"\"\"\r\n************\r\nFactor Class\r\n************\r\n\r\nThis class holds a Conditional Probability Table structure\r\n-- i.e. a f"
  },
  {
    "path": "pyBN/classes/factorization.py",
    "chars": 3581,
    "preview": "\"\"\"\n*************\nFactorization \nClass\n*************\n\"\"\"\nfrom pyBN.classes.factor import Factor\n\nfrom collections import"
  },
  {
    "path": "pyBN/classification/__init__.py",
    "chars": 100,
    "preview": "from pyBN.classification.classification import *\nfrom pyBN.classification.feature_selection import *"
  },
  {
    "path": "pyBN/classification/classification.py",
    "chars": 3083,
    "preview": "\"\"\"\n****************\nBayesian Network\nClassifiers\n****************\n\nImplementation of various Bayesian network\nclassifie"
  },
  {
    "path": "pyBN/classification/feature_selection.py",
    "chars": 3187,
    "preview": "\"\"\"\n******************\nFeature Selection\nfor Classification\n******************\n\nMany constraint-based Bayesian network s"
  },
  {
    "path": "pyBN/inference/__init__.py",
    "chars": 129,
    "preview": "from pyBN.inference.map_exact import *\r\nfrom pyBN.inference.marginal_approx import *\r\nfrom pyBN.inference.marginal_exact"
  },
  {
    "path": "pyBN/inference/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/inference/_tests/test_map_exact.py",
    "chars": 859,
    "preview": "\"\"\"\n********\nUnitTest\nMap Exact\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unit"
  },
  {
    "path": "pyBN/inference/_tests/test_marginal_approx.py",
    "chars": 2067,
    "preview": "\"\"\"\n***************\nUnitTest\nMarginal Approx\n***************\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth."
  },
  {
    "path": "pyBN/inference/_tests/test_marginal_exact.py",
    "chars": 2235,
    "preview": "\"\"\"\n**************\nUnitTest\nMarginal Exact\n**************\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu"
  },
  {
    "path": "pyBN/inference/map_exact/__init__.py",
    "chars": 92,
    "preview": "from pyBN.inference.map_exact.ilp_map import *\nfrom pyBN.inference.map_exact.ve_map import *"
  },
  {
    "path": "pyBN/inference/map_exact/ilp_map.py",
    "chars": 3210,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom copy import copy\nimport numpy as np\n\nfrom pyBN.classes.fa"
  },
  {
    "path": "pyBN/inference/map_exact/ve_map.py",
    "chars": 1263,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom copy import copy\nimport numpy as np\n\nfrom pyBN.classes.fa"
  },
  {
    "path": "pyBN/inference/marginal_approx/__init__.py",
    "chars": 226,
    "preview": "from pyBN.inference.marginal_approx.forward_sample import *\nfrom pyBN.inference.marginal_approx.gibbs_sample import *\nfr"
  },
  {
    "path": "pyBN/inference/marginal_approx/forward_sample.py",
    "chars": 1896,
    "preview": "from pyBN.classes.bayesnet import BayesNet\nfrom pyBN.classes.factor import Factor \nfrom pyBN.utils.graph import topsort\n"
  },
  {
    "path": "pyBN/inference/marginal_approx/gibbs_sample.py",
    "chars": 1954,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom pyBN.classes.bayesnet import BayesNet\nfrom pyBN.classes.f"
  },
  {
    "path": "pyBN/inference/marginal_approx/loopy_bp.py",
    "chars": 1912,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom pyBN.classes.bayesnet import BayesNet\nfrom pyBN.classes.f"
  },
  {
    "path": "pyBN/inference/marginal_approx/lw_sample.py",
    "chars": 2200,
    "preview": "__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom pyBN.classes.bayesnet import BayesNet\nfrom pyBN.classes.fa"
  },
  {
    "path": "pyBN/inference/marginal_exact/__init__.py",
    "chars": 108,
    "preview": "from pyBN.inference.marginal_exact.exact_bp import *\nfrom pyBN.inference.marginal_exact.ve_marginal import *"
  },
  {
    "path": "pyBN/inference/marginal_exact/exact_bp.py",
    "chars": 2676,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom pyBN.classes.factor import Factor\nfrom pyBN.classes.facto"
  },
  {
    "path": "pyBN/inference/marginal_exact/ve_marginal.py",
    "chars": 1211,
    "preview": "\n__author__ = \"\"\"N. Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nfrom pyBN.classes.factor import Factor\nfrom pyBN.classes.facto"
  },
  {
    "path": "pyBN/io/__init__.py",
    "chars": 54,
    "preview": "from pyBN.io.read import *\nfrom pyBN.io.write import *"
  },
  {
    "path": "pyBN/io/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/io/_tests/test_reading.py",
    "chars": 755,
    "preview": "\"\"\"\n********\nUnitTest\nReading\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unitte"
  },
  {
    "path": "pyBN/io/_tests/test_writing.py",
    "chars": 319,
    "preview": "\"\"\"\n********\nUnitTest\nWriting\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unitte"
  },
  {
    "path": "pyBN/io/read.py",
    "chars": 6169,
    "preview": "\"\"\"\n*************\nRead BayesNet\nfrom File\n*************\n\nRead a BayesNet object from a file. These\nfunctions all current"
  },
  {
    "path": "pyBN/io/write.py",
    "chars": 1442,
    "preview": "\"\"\"\r\n**************\r\nWrite BayesNet\r\nto File\r\n**************\r\n\r\nWrite a BayesNet object to a file. These\r\nfunctions all "
  },
  {
    "path": "pyBN/learning/__init__.py",
    "chars": 75,
    "preview": "from pyBN.learning.parameter import *\nfrom pyBN.learning.structure import *"
  },
  {
    "path": "pyBN/learning/parameter/__init__.py",
    "chars": 85,
    "preview": "from pyBN.learning.parameter.bayes import *\nfrom pyBN.learning.parameter.mle import *"
  },
  {
    "path": "pyBN/learning/parameter/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/learning/parameter/bayes.py",
    "chars": 3392,
    "preview": "\"\"\"\n*******************\nBayesian Estimation\nParameter Learning\n*******************\n\n\"\"\"\nfrom __future__ import division\n"
  },
  {
    "path": "pyBN/learning/parameter/mle.py",
    "chars": 5389,
    "preview": "\"\"\"\n*****************************\nMaximum Likelihood Estimation\nParameter Learning\n*****************************\n\n\"\"\"\nfr"
  },
  {
    "path": "pyBN/learning/structure/__init__.py",
    "chars": 319,
    "preview": "from pyBN.learning.structure.constraint import *\r\nfrom pyBN.learning.structure.exact import *\r\nfrom pyBN.learning.struct"
  },
  {
    "path": "pyBN/learning/structure/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/learning/structure/_tests/test_chow_liu.py",
    "chars": 980,
    "preview": "\"\"\"\n********\nUnitTest\nChowLiu\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unitte"
  },
  {
    "path": "pyBN/learning/structure/_tests/test_grow_shrink.py",
    "chars": 1143,
    "preview": "\"\"\"\n********\nUnitTest\nGrowShrink\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport uni"
  },
  {
    "path": "pyBN/learning/structure/_tests/test_orient_edges.py",
    "chars": 919,
    "preview": "\"\"\"\n********\nUnitTest\nOrientEdges\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport un"
  },
  {
    "path": "pyBN/learning/structure/_tests/test_pc.py",
    "chars": 936,
    "preview": "\"\"\"\n********\nUnitTest\nPC\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unittest\nim"
  },
  {
    "path": "pyBN/learning/structure/constraint/__init__.py",
    "chars": 298,
    "preview": "from pyBN.learning.structure.constraint.fast_iamb import *\nfrom pyBN.learning.structure.constraint.grow_shrink import *\n"
  },
  {
    "path": "pyBN/learning/structure/constraint/fast_iamb.py",
    "chars": 4322,
    "preview": "\"\"\"\n*********\nFast-IAMB\nAlgorithm\n*********\n\n\nFor Feature Selection (from [1]):\n\t\"A principled solution to the feature s"
  },
  {
    "path": "pyBN/learning/structure/constraint/grow_shrink.py",
    "chars": 4442,
    "preview": "\"\"\"\n********************\nGrowShrink Algorithm\n********************\n\n\"Our approach constructs Bayesian networks by first "
  },
  {
    "path": "pyBN/learning/structure/constraint/iamb.py",
    "chars": 4520,
    "preview": "\"\"\"\n******************\nIAMB STRUCTURE\nLEARNING ALGORITHM\n******************\n\nThe IAMB algorithm - Incremental Associatio"
  },
  {
    "path": "pyBN/learning/structure/constraint/lambda_iamb.py",
    "chars": 3030,
    "preview": "\"\"\"\nLambda IAMB Code\n\nReferences\n----------\n[1] Zhang et al, \"An Improved IAMB Algorithm for Markov\nBlanket Discovery\"\n\""
  },
  {
    "path": "pyBN/learning/structure/constraint/path_condition.py",
    "chars": 3372,
    "preview": "\"\"\"\n*************\nPathCondition \nAlgorithm\n*************\n\nPseudo-Code\n-----------\nStart with a complete, undirected grap"
  },
  {
    "path": "pyBN/learning/structure/exact/__init__.py",
    "chars": 51,
    "preview": "from pyBN.learning.structure.exact.gobnilp import *"
  },
  {
    "path": "pyBN/learning/structure/exact/gobnilp.py",
    "chars": 1492,
    "preview": "\"\"\"\nGOBNILP Solver for Exact Bayesian network\nStructure Learning with Integer Linear\nOptimization.\n\nThis code relies on "
  },
  {
    "path": "pyBN/learning/structure/hybrid/__init__.py",
    "chars": 49,
    "preview": "from pyBN.learning.structure.hybrid.mmpc import *"
  },
  {
    "path": "pyBN/learning/structure/hybrid/mmhc.py",
    "chars": 1427,
    "preview": "\"\"\"\nMax-Min Hill Climbing Algorithm\n\nReferences\n----------\n[1] Tsamardinos, et al. \"The max-min hill-climbing Bayesian\nn"
  },
  {
    "path": "pyBN/learning/structure/hybrid/mmpc.py",
    "chars": 2253,
    "preview": "\"\"\"\nMax-Min Parents and Children Algorithm\nfor determining the Parent-Children set\nfor all nodes. This returns an unorie"
  },
  {
    "path": "pyBN/learning/structure/mdbn.py",
    "chars": 3566,
    "preview": "\"\"\"\nLearn a Multi-Dimensional Bayesian Network Classifier\nfrom data, and use it to predict a vector of class\nlabels from"
  },
  {
    "path": "pyBN/learning/structure/naive/TAN.py",
    "chars": 606,
    "preview": "\"\"\"\n**************\nTree Augmented \nNaive Bayes\n**************\n\nTAN is considered to be quite useful\nas a Bayesian networ"
  },
  {
    "path": "pyBN/learning/structure/naive/__init__.py",
    "chars": 103,
    "preview": "from pyBN.learning.structure.naive.naive_bayes import *\nfrom pyBN.learning.structure.naive.TAN import *"
  },
  {
    "path": "pyBN/learning/structure/naive/naive_bayes.py",
    "chars": 1707,
    "preview": "\"\"\"\n***********\nNaive Bayes\n***********\n\nLearn both the structure AND parameters\nof a Naive Bayes Model from data\n\n\"\"\"\n\n"
  },
  {
    "path": "pyBN/learning/structure/score/__init__.py",
    "chars": 279,
    "preview": "from pyBN.learning.structure.score.bayes_scores import *\nfrom pyBN.learning.structure.score.hill_climbing import *\nfrom "
  },
  {
    "path": "pyBN/learning/structure/score/bayes_scores.py",
    "chars": 3635,
    "preview": "\"\"\"\nVarious Bayesian scoring metrics for evaluating\nthe fitness of a BN structure during score-based\nstructure learning."
  },
  {
    "path": "pyBN/learning/structure/score/hill_climbing.py",
    "chars": 7060,
    "preview": "\"\"\"\n**********************\nGreedy Hill-Climbing\nfor Structure Learning\n**********************\n\nCode for Searching throug"
  },
  {
    "path": "pyBN/learning/structure/score/info_scores.py",
    "chars": 4250,
    "preview": "\"\"\"\nVarious metrics for evaluating\nscore-based search for Bayesian\nNetworks structure learning.\n\nGenerally, score-based "
  },
  {
    "path": "pyBN/learning/structure/score/random_restarts.py",
    "chars": 7365,
    "preview": "\"\"\"\n*******************\nHill Climbing with\nRandom Restarts for\nStructure Learning\n*******************\n\nHill Climbing wit"
  },
  {
    "path": "pyBN/learning/structure/score/tabu.py",
    "chars": 6455,
    "preview": "\"\"\"\n******************\nTabu Search for\nScore-based \nStructure Learning\n******************\n\nTabu search in this case proc"
  },
  {
    "path": "pyBN/learning/structure/tree/__init__.py",
    "chars": 51,
    "preview": "from pyBN.learning.structure.tree.chow_liu import *"
  },
  {
    "path": "pyBN/learning/structure/tree/chow_liu.py",
    "chars": 1526,
    "preview": "\"\"\"\n*************\nChow-Liu Tree\n*************\n\nCalculate the KL divergence (i.e. run\nmi_test) between every pair of node"
  },
  {
    "path": "pyBN/plotting/__init__.py",
    "chars": 32,
    "preview": "from pyBN.plotting.plot import *"
  },
  {
    "path": "pyBN/plotting/plot.py",
    "chars": 2423,
    "preview": "\"\"\"\n********\nPlotting \n********\n\nCode for plotting BayesNet objects, built on\nthe graphviz framework.\n\"\"\"\n\n__author__ = "
  },
  {
    "path": "pyBN/utils/__init__.py",
    "chars": 429,
    "preview": "from pyBN.utils.class_equivalence import *\nfrom pyBN.utils.data import *\nfrom pyBN.utils.discretize import *\nfrom pyBN.u"
  },
  {
    "path": "pyBN/utils/_tests/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "pyBN/utils/_tests/test_independence_tests.py",
    "chars": 1392,
    "preview": "\"\"\"\n****************\nUnitTest\nConstraint Tests\n****************\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmou"
  },
  {
    "path": "pyBN/utils/_tests/test_markov_blanket.py",
    "chars": 843,
    "preview": "\"\"\"\n**************\nMarkov Blanket\nUnit Test\n**************\n\"\"\"\n\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.ed"
  },
  {
    "path": "pyBN/utils/_tests/test_orient_edges.py",
    "chars": 919,
    "preview": "\"\"\"\n********\nUnitTest\nOrientEdges\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport un"
  },
  {
    "path": "pyBN/utils/_tests/test_random_sample.py",
    "chars": 726,
    "preview": "\"\"\"\n********\nUnitTest\nMisc\n********\n\n\"\"\"\n__author__ = \"\"\"Nicholas Cullen <ncullen.th@dartmouth.edu>\"\"\"\n\nimport unittest\n"
  },
  {
    "path": "pyBN/utils/class_equivalence.py",
    "chars": 785,
    "preview": "\"\"\"\n****************\nEquivalence Code\n****************\n\nThis code is for testing whether or not\ntwo Bayesian networks be"
  },
  {
    "path": "pyBN/utils/data.py",
    "chars": 1153,
    "preview": "\"\"\"\nThese are functions for dealing with datasets\nthat have strings as values - as those values\nmust be converted to int"
  },
  {
    "path": "pyBN/utils/discretize.py",
    "chars": 1970,
    "preview": "\"\"\"\n**************************\nDiscretize Continuous Data\n**************************\n\nSince pyBN only handles Discrete B"
  },
  {
    "path": "pyBN/utils/graph.py",
    "chars": 4997,
    "preview": "\"\"\"\nCollection of Graph Algorithms.\n\nAny networkx dependencies should exist here only, but\nthere are currently a few exc"
  },
  {
    "path": "pyBN/utils/hybrid_distance.py",
    "chars": 751,
    "preview": "\"\"\"\n****************\nBN Hybrid\nDistance Metrics\n****************\n\nCode for computing the distance between \n2+ Bayesian n"
  },
  {
    "path": "pyBN/utils/independence_tests.py",
    "chars": 12030,
    "preview": "\"\"\"\n******************************\nConditional Independence Tests \nfor Constraint-based Learning\n***********************"
  },
  {
    "path": "pyBN/utils/markov_blanket.py",
    "chars": 4359,
    "preview": "\"\"\"\n**************\nMarkov Blanket\n**************\n\nReferences\n----------\n[1] Koller and Sahami, \"Toward Optimal Feature S"
  },
  {
    "path": "pyBN/utils/orient_edges.py",
    "chars": 4620,
    "preview": "\"\"\"\n******************\nOrient Edges from\nStructure Learning\n******************\n\n[1] Chickering. \"Learning Equivalence Cl"
  },
  {
    "path": "pyBN/utils/parameter_distance.py",
    "chars": 3580,
    "preview": "\"\"\"\n****************\nBN Parameter \nDistance Metrics\n****************\n\nCode for computing the Parametric distance \nbetwee"
  },
  {
    "path": "pyBN/utils/random_sample.py",
    "chars": 1582,
    "preview": "\"\"\"\n******************\nRandom Sample Code\n******************\n\nGenerate a random sample dataset from a known Bayesian Net"
  },
  {
    "path": "pyBN/utils/structure_distance.py",
    "chars": 2640,
    "preview": "\"\"\"\n****************\nBN Structure \nDistance Metrics\n****************\n\nCode for computing the structural Distance\nbetween"
  },
  {
    "path": "setup.py",
    "chars": 340,
    "preview": "#!/usr/bin/env python\n\nfrom distutils.core import setup\nfrom setuptools import find_packages\n\nsetup(name='pyBN',\n      v"
  }
]

About this extraction

This page contains the full source code of the ncullen93/pyBN GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 121 files (2.7 MB), approximately 713.1k tokens, and a symbol index with 305 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!