Skip to content

Instantly share code, notes, and snippets.

@endafarrell
Last active April 8, 2017 16:48
Show Gist options
  • Save endafarrell/515709d16e932bbe08a81d4fba278963 to your computer and use it in GitHub Desktop.
Save endafarrell/515709d16e932bbe08a81d4fba278963 to your computer and use it in GitHub Desktop.
A simple walk-though of building sliced concentric arcs using d3.v4.
license: cc-by-4.0
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
.arc path {
stroke: #fff;
}
#arcsChart {
height: 500px;
width: 500px;
position: relative;
}
#arcsInfo {
position: absolute;
top:50%;
left:50%;
transform: translate(-50%, -50%);
color: #666;
font-size: 20px;
z-index: 2;
text-align: center;
}
</style>
<script src="//d3js.org/d3.v4.min.js"></script>
</head>
<body>
<div id="arcsChart">
<div id="arcsInfo"><span style="font-size: 12px">move mouse over coloured arcs!</span></div>
</div>
<script>
var numberWithCommas = function (d) {
if (d === undefined) return "undefined";
else return d.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
};
var scoreColor = function (score) {
var color = 'silver';
switch (score) {
case "1.0":
color = "green";
break;
case "0.8":
color = "orange";
break;
case "0.6":
color = "gold";
break;
case "0.0":
color = "grey";
break;
default:
color = "silver";
}
return color;
};
d3.csv("./test-data.csv", function (error, data) {
if (error) throw error;
/* The first column, "score", looks like a number, but in this use-case it's treated as an
* ordinal (ordered categorical) and so it's not converted.
* The second column, "tests", is a pipe-separated string where different tests (known as
* 'Ha', 'Ch', 'Li', 'Ca', 'Pr' have binary pass/fail values.
* The third column, "count", is intended to be the count of samples with this combination
* of scores and tests results.
*
* First get the count to be a number. */
data.forEach(function(el, idx) {
data[idx].count = +data[idx].count;
});
/* Oddly, there are entries in this data with the same score and tests but with different
* count values. Normally one would fix that problem at the point where the test-data.csv
* is created. For this example, we'll re-combine/re-group/re-nest the data using d3.nest.*/
var nested = d3.nest()
.key(function(d) {return [d.score, d.tests]})
.entries(data);
/* The `nested` data is an array of objects. Each object has a "key" which is a string
* coercion of the `d.score` and `d.tests` from the `.key()` of the `d3.nest()` above.
* Each object also has a "values" array where each entry is the object from the original
* `data` - the parameter to the `.entries` of the `d3.nest()` above.
*
* What is wanted is the original `.score`, the original `.tests` and a new `.count` being
* the sum of the `.count` from the "values" array. */
var data2 = nested.map(function(el) {
// Instead of re-parsing the "key" (undoing the coercion into a string) it's easier to
// pick up the values from the zero-th element of the "values" - there will always be at
// least one entry, and - given the `nest().key()` function - always the same.
return {score: el.values[0].score,
tests: el.values[0].tests,
count: d3.sum(el.values, function(d) { return d.count; })};
});
/* The goal is to draw something which starts off like a pie chart - where each slice is one
* of the ordinal "score" values. Within each slice, concentric arcs are to represent the
* proportion of that score where the different "tests" were passed.
*
* A data structure like this seems to suit the problem:
* var arcsData = [ // Will be the list of slices
* {score: "score",
* total: <total-for-score>,
* tests: [ // Will be the list of arcs
* {test: "test",
* total: <total-for-test-within-this-score>},
* ...
* ]
* },
* ...
* ];
*
*/
var arcsData = [];
data2.forEach(function(el) {
// Is this score already in the slices?
var scoreIdx = arcsData
.map(function(slice) { return slice.score})
.indexOf(el.score);
if (scoreIdx === -1) {
// Not there? Add a zero value
scoreIdx = arcsData.push({score: el.score,
total: 0,
tests: []}) - 1;
}
// Update the slice/score total
arcsData[scoreIdx].total += el.count;
// Add the tests. We'll want the slices to have entries for every test - even those
// where none passed.
['Pr', 'Ca', 'Ha', 'Li', 'Ch'].forEach(function(test) {
var testIdx = arcsData[scoreIdx].tests
.map(function(t) {return t.test; })
.indexOf(test);
if (testIdx === -1) {
testIdx = arcsData[scoreIdx].tests.push({test: test,
total: 0}) - 1;
}
if (el.tests.indexOf(test + '1') != -1) {
// For this element `el` in the data2, did it pass the test `test`? In this
// case yes it did, so we can update the test's total.
arcsData[scoreIdx].tests[testIdx].total += el.count;
}
})
});
/* Start up some d3 */
var width = parseInt(getComputedStyle(
document.querySelector('#arcsChart')).getPropertyValue('width'));
var radius = width / 2;
var svg = d3.select("#arcsChart").append("svg")
.attr("width", width)
.attr("height", width)// it being circular in shape ..
.append("g")
.attr("transform", "translate(" + width / 2 + "," + width / 2 + ")");
var info = d3.select('#arcsInfo');
/* Expects to be given a slice of the data. It will give us the startAngle for each slice */
var slice = d3.pie()
.sort(null)
.value(function (d) {
return d.total;
});
var testInnerRadii = {
'Pr': radius - 100,
'Ca': radius - 80,
'Ha': radius - 60,
'Li': radius - 40,
'Ch': radius - 20
};
// Build our concentric arcs.
var concentricArcs = d3.merge(
// First run our data through `slice` (the `d3.pie()`) to get the startAngle and
// endAngle values
slice(arcsData).map(function (slice) {
// Each slice has a number of arcs (which is why we have to flatten them later
// using the `d3.merge`.
// A scale to give an endAngle for the arc which is ranged over the slice's
// angles. By this time, the `arcsData` has been through the `slice` function so
// the underlying data is within the `.data` object (see slice.data.total)
var sliceArcScale = d3.scaleLinear()
.range([slice.startAngle, slice.endAngle])
.domain([0, slice.data.total]);
// When the data for the `d3.arc()` generator has attributes for startAngle,
// endAngle, innerRadius, outerRadius you can use `d3.arc()` without needing to
// define accessors for them. These will also be reused for the background arcs.
return slice.data.tests.map(function (test) {
var innerRadius = testInnerRadii[test.test];
var endAngle = sliceArcScale(test.total);
return {
startAngle: slice.startAngle,
endAngle: endAngle,
padAngle: 0,
innerRadius: innerRadius,
outerRadius: innerRadius + 16,
arcName: test.test,
sliceName: slice.data.score,
sliceTotal: slice.data.total,
sliceEndAngle: slice.endAngle,
total: test.total,
fill: scoreColor(slice.data.score)};
})
})
);
// The difference for the background arcs is that they all share the slice's endAngle.
var concentricBackgrounds = concentricArcs.map(function(arc) {
var shallowCopy = Object.assign({}, arc);
shallowCopy.endAngle = shallowCopy.sliceEndAngle;
return shallowCopy;
});
// A rough-n-ready way of showing what arc is what.
function mouseOver(d) {
info.html('<p>score: ' + d.sliceName + '<br/>'
+ numberWithCommas(d.sliceTotal)
+ ' (' + (100. * d.sliceTotal / d3.sum(arcsData, function(s) {
return s.total;})).toFixed(2) + '%)'
+ '<br/>' + numberWithCommas(d.total)
+ ' (' + (100. * d.total / d.sliceTotal).toFixed(2)
+ '% of ' + d.sliceName + ')<br>test: ' + d.arcName + '</p>');
}
function mouseOut(d) { info.html(''); }
// This works as our concentricArcs and concentricBackgrounds (above) generated objects with
// the required attributes of startAngle, endAngle, innerRadius, outerRadius.
var arc = d3.arc();
// Build background arcs using the concentricBackgrounds data.
var background = svg.selectAll('.arc-backgrounds')
.data(concentricBackgrounds)
.enter()
.append("path")
.style("fill", "#f3f3f3") // pale grey
.on("mouseover", mouseOver)
.on("mouseout", mouseOut)
.attr("d", arc);
// Build the tests arcs using the conentricArcs data.
var testArcs = svg.selectAll(".arc")
.data(concentricArcs)
.enter().append("g")
.attr("class", "arc")
.on("mouseover", mouseOver)
.on("mouseout", mouseOut)
.append("path")
.attr("d", arc)
.style("fill", function (d) { return d.fill; });
});
</script>
</body>
</html>
score tests count
0.0 Ha0|Ch0|Li0|Ca0|Pr0 6644709
0.0 Ha0|Ch0|Li0|Ca0|Pr0 81587
0.0 Ha0|Ch0|Li0|Ca0|Pr0 2499355
0.0 Ha0|Ch0|Li0|Ca0|Pr0 398095
0.0 Ha0|Ch0|Li0|Ca0|Pr0 415
0.0 Ha0|Ch0|Li0|Ca0|Pr0 95109
0.0 Ha0|Ch0|Li0|Ca0|Pr0 5718
0.0 Ha0|Ch0|Li0|Ca0|Pr0 434
0.0 Ha0|Ch0|Li0|Ca0|Pr0 378242
0.0 Ha0|Ch0|Li0|Ca0|Pr1 18806997
0.0 Ha0|Ch0|Li0|Ca0|Pr1 99345
0.0 Ha0|Ch0|Li0|Ca0|Pr1 14058205
0.0 Ha0|Ch0|Li0|Ca0|Pr1 1170521
0.0 Ha0|Ch0|Li0|Ca0|Pr1 389
0.0 Ha0|Ch0|Li0|Ca0|Pr1 182139
0.0 Ha0|Ch0|Li0|Ca0|Pr1 15370
0.0 Ha0|Ch0|Li0|Ca0|Pr1 1148
0.0 Ha0|Ch0|Li0|Ca0|Pr1 357671
0.0 Ha0|Ch0|Li0|Ca1|Pr0 4966621
0.0 Ha0|Ch0|Li0|Ca1|Pr0 25620
0.0 Ha0|Ch0|Li0|Ca1|Pr0 1191102
0.0 Ha0|Ch0|Li0|Ca1|Pr0 1443392
0.0 Ha0|Ch0|Li0|Ca1|Pr0 191
0.0 Ha0|Ch0|Li0|Ca1|Pr0 225164
0.0 Ha0|Ch0|Li0|Ca1|Pr0 26610
0.0 Ha0|Ch0|Li0|Ca1|Pr0 1
0.0 Ha0|Ch0|Li0|Ca1|Pr0 1947
0.0 Ha0|Ch0|Li0|Ca1|Pr0 253045
0.0 Ha0|Ch0|Li0|Ca1|Pr1 11758797
0.0 Ha0|Ch0|Li0|Ca1|Pr1 81606
0.0 Ha0|Ch0|Li0|Ca1|Pr1 8603768
0.0 Ha0|Ch0|Li0|Ca1|Pr1 5140041
0.0 Ha0|Ch0|Li0|Ca1|Pr1 164
0.0 Ha0|Ch0|Li0|Ca1|Pr1 360682
0.0 Ha0|Ch0|Li0|Ca1|Pr1 30008
0.0 Ha0|Ch0|Li0|Ca1|Pr1 3633
0.0 Ha0|Ch0|Li0|Ca1|Pr1 334154
0.0 Ha0|Ch0|Li1|Ca0|Pr0 25948
0.0 Ha0|Ch0|Li1|Ca0|Pr0 111
0.0 Ha0|Ch0|Li1|Ca0|Pr0 3235
0.0 Ha0|Ch0|Li1|Ca0|Pr0 4552
0.0 Ha0|Ch0|Li1|Ca0|Pr0 17
0.0 Ha0|Ch0|Li1|Ca0|Pr0 2987
0.0 Ha0|Ch0|Li1|Ca0|Pr0 629
0.0 Ha0|Ch0|Li1|Ca0|Pr0 87
0.0 Ha0|Ch0|Li1|Ca0|Pr0 1340
0.0 Ha0|Ch0|Li1|Ca0|Pr1 789564
0.0 Ha0|Ch0|Li1|Ca0|Pr1 3909
0.0 Ha0|Ch0|Li1|Ca0|Pr1 116596
0.0 Ha0|Ch0|Li1|Ca0|Pr1 251717
0.0 Ha0|Ch0|Li1|Ca0|Pr1 730
0.0 Ha0|Ch0|Li1|Ca0|Pr1 73211
0.0 Ha0|Ch0|Li1|Ca0|Pr1 11092
0.0 Ha0|Ch0|Li1|Ca0|Pr1 1057
0.0 Ha0|Ch0|Li1|Ca0|Pr1 52662
0.0 Ha0|Ch0|Li1|Ca1|Pr0 19319
0.0 Ha0|Ch0|Li1|Ca1|Pr0 60
0.0 Ha0|Ch0|Li1|Ca1|Pr0 1563
0.0 Ha0|Ch0|Li1|Ca1|Pr0 2080
0.0 Ha0|Ch0|Li1|Ca1|Pr0 7
0.0 Ha0|Ch0|Li1|Ca1|Pr0 2361
0.0 Ha0|Ch0|Li1|Ca1|Pr0 955
0.0 Ha0|Ch0|Li1|Ca1|Pr0 379
0.0 Ha0|Ch0|Li1|Ca1|Pr0 735
0.0 Ha0|Ch0|Li1|Ca1|Pr1 463083
0.0 Ha0|Ch0|Li1|Ca1|Pr1 1032
0.0 Ha0|Ch0|Li1|Ca1|Pr1 49740
0.0 Ha0|Ch0|Li1|Ca1|Pr1 87737
0.0 Ha0|Ch0|Li1|Ca1|Pr1 238
0.0 Ha0|Ch0|Li1|Ca1|Pr1 42076
0.0 Ha0|Ch0|Li1|Ca1|Pr1 16269
0.0 Ha0|Ch0|Li1|Ca1|Pr1 4326
0.0 Ha0|Ch0|Li1|Ca1|Pr1 22864
0.0 Ha0|Ch1|Li0|Ca0|Pr0 505677
0.0 Ha0|Ch1|Li0|Ca0|Pr0 676
0.0 Ha0|Ch1|Li0|Ca0|Pr0 15457
0.0 Ha0|Ch1|Li0|Ca0|Pr0 34272
0.0 Ha0|Ch1|Li0|Ca0|Pr0 4
0.0 Ha0|Ch1|Li0|Ca0|Pr0 17756
0.0 Ha0|Ch1|Li0|Ca0|Pr0 1354
0.0 Ha0|Ch1|Li0|Ca0|Pr0 148
0.0 Ha0|Ch1|Li0|Ca0|Pr0 8106
0.0 Ha0|Ch1|Li0|Ca0|Pr1 3473801
0.0 Ha0|Ch1|Li0|Ca0|Pr1 2523
0.0 Ha0|Ch1|Li0|Ca0|Pr1 183501
0.0 Ha0|Ch1|Li0|Ca0|Pr1 258960
0.0 Ha0|Ch1|Li0|Ca0|Pr1 32
0.0 Ha0|Ch1|Li0|Ca0|Pr1 120738
0.0 Ha0|Ch1|Li0|Ca0|Pr1 8453
0.0 Ha0|Ch1|Li0|Ca0|Pr1 742
0.0 Ha0|Ch1|Li0|Ca0|Pr1 21303
0.0 Ha0|Ch1|Li0|Ca1|Pr0 304983
0.0 Ha0|Ch1|Li0|Ca1|Pr0 392
0.0 Ha0|Ch1|Li0|Ca1|Pr0 8492
0.0 Ha0|Ch1|Li0|Ca1|Pr0 16097
0.0 Ha0|Ch1|Li0|Ca1|Pr0 18061
0.0 Ha0|Ch1|Li0|Ca1|Pr0 3523
0.0 Ha0|Ch1|Li0|Ca1|Pr0 773
0.0 Ha0|Ch1|Li0|Ca1|Pr0 4993
0.0 Ha0|Ch1|Li0|Ca1|Pr1 1816123
0.0 Ha0|Ch1|Li0|Ca1|Pr1 1962
0.0 Ha0|Ch1|Li0|Ca1|Pr1 103619
0.0 Ha0|Ch1|Li0|Ca1|Pr1 100740
0.0 Ha0|Ch1|Li0|Ca1|Pr1 8
0.0 Ha0|Ch1|Li0|Ca1|Pr1 89379
0.0 Ha0|Ch1|Li0|Ca1|Pr1 18724
0.0 Ha0|Ch1|Li0|Ca1|Pr1 4679
0.0 Ha0|Ch1|Li0|Ca1|Pr1 15916
0.0 Ha0|Ch1|Li1|Ca0|Pr0 74276
0.0 Ha0|Ch1|Li1|Ca0|Pr0 32
0.0 Ha0|Ch1|Li1|Ca0|Pr0 758
0.0 Ha0|Ch1|Li1|Ca0|Pr0 3338
0.0 Ha0|Ch1|Li1|Ca0|Pr0 1
0.0 Ha0|Ch1|Li1|Ca0|Pr0 8262
0.0 Ha0|Ch1|Li1|Ca0|Pr0 2012
0.0 Ha0|Ch1|Li1|Ca0|Pr0 354
0.0 Ha0|Ch1|Li1|Ca0|Pr0 271
0.0 Ha0|Ch1|Li1|Ca0|Pr1 914934
0.0 Ha0|Ch1|Li1|Ca0|Pr1 257
0.0 Ha0|Ch1|Li1|Ca0|Pr1 11545
0.0 Ha0|Ch1|Li1|Ca0|Pr1 45282
0.0 Ha0|Ch1|Li1|Ca0|Pr1 122
0.0 Ha0|Ch1|Li1|Ca0|Pr1 141390
0.0 Ha0|Ch1|Li1|Ca0|Pr1 25154
0.0 Ha0|Ch1|Li1|Ca0|Pr1 1
0.0 Ha0|Ch1|Li1|Ca0|Pr1 4008
0.0 Ha0|Ch1|Li1|Ca0|Pr1 2087
0.0 Ha0|Ch1|Li1|Ca1|Pr0 59183
0.0 Ha0|Ch1|Li1|Ca1|Pr0 17
0.0 Ha0|Ch1|Li1|Ca1|Pr0 554
0.0 Ha0|Ch1|Li1|Ca1|Pr0 1274
0.0 Ha0|Ch1|Li1|Ca1|Pr0 5500
0.0 Ha0|Ch1|Li1|Ca1|Pr0 2180
0.0 Ha0|Ch1|Li1|Ca1|Pr0 1568
0.0 Ha0|Ch1|Li1|Ca1|Pr0 382
0.0 Ha0|Ch1|Li1|Ca1|Pr1 593486
0.0 Ha0|Ch1|Li1|Ca1|Pr1 136
0.0 Ha0|Ch1|Li1|Ca1|Pr1 7639
0.0 Ha0|Ch1|Li1|Ca1|Pr1 17563
0.0 Ha0|Ch1|Li1|Ca1|Pr1 30
0.0 Ha0|Ch1|Li1|Ca1|Pr1 50137
0.0 Ha0|Ch1|Li1|Ca1|Pr1 20462
0.0 Ha0|Ch1|Li1|Ca1|Pr1 20692
0.0 Ha0|Ch1|Li1|Ca1|Pr1 2513
0.0 Ha1|Ch0|Li0|Ca0|Pr0 350584
0.0 Ha1|Ch0|Li0|Ca0|Pr0 36332
0.0 Ha1|Ch0|Li0|Ca0|Pr0 1154790
0.0 Ha1|Ch0|Li0|Ca0|Pr0 29971
0.0 Ha1|Ch0|Li0|Ca0|Pr0 80
0.0 Ha1|Ch0|Li0|Ca0|Pr0 14230
0.0 Ha1|Ch0|Li0|Ca0|Pr0 5458
0.0 Ha1|Ch0|Li0|Ca0|Pr0 780
0.0 Ha1|Ch0|Li0|Ca0|Pr0 96885
0.0 Ha1|Ch0|Li0|Ca0|Pr1 362775
0.0 Ha1|Ch0|Li0|Ca0|Pr1 14996
0.0 Ha1|Ch0|Li0|Ca0|Pr1 223502
0.0 Ha1|Ch0|Li0|Ca0|Pr1 81629
0.0 Ha1|Ch0|Li0|Ca0|Pr1 63
0.0 Ha1|Ch0|Li0|Ca0|Pr1 18560
0.0 Ha1|Ch0|Li0|Ca0|Pr1 4239
0.0 Ha1|Ch0|Li0|Ca0|Pr1 982
0.0 Ha1|Ch0|Li0|Ca0|Pr1 28760
0.0 Ha1|Ch0|Li1|Ca0|Pr0 4403
0.0 Ha1|Ch0|Li1|Ca0|Pr0 105
0.0 Ha1|Ch0|Li1|Ca0|Pr0 2877
0.0 Ha1|Ch0|Li1|Ca0|Pr0 1784
0.0 Ha1|Ch0|Li1|Ca0|Pr0 5
0.0 Ha1|Ch0|Li1|Ca0|Pr0 2467
0.0 Ha1|Ch0|Li1|Ca0|Pr0 1271
0.0 Ha1|Ch0|Li1|Ca0|Pr0 306
0.0 Ha1|Ch0|Li1|Ca0|Pr0 359
0.0 Ha1|Ch0|Li1|Ca0|Pr1 63747
0.0 Ha1|Ch0|Li1|Ca0|Pr1 891
0.0 Ha1|Ch0|Li1|Ca0|Pr1 6749
0.0 Ha1|Ch0|Li1|Ca0|Pr1 11167
0.0 Ha1|Ch0|Li1|Ca0|Pr1 13
0.0 Ha1|Ch0|Li1|Ca0|Pr1 4743
0.0 Ha1|Ch0|Li1|Ca0|Pr1 1410
0.0 Ha1|Ch0|Li1|Ca0|Pr1 242
0.0 Ha1|Ch0|Li1|Ca0|Pr1 11013
0.0 Ha1|Ch1|Li0|Ca0|Pr0 26924
0.0 Ha1|Ch1|Li0|Ca0|Pr0 332
0.0 Ha1|Ch1|Li0|Ca0|Pr0 1535
0.0 Ha1|Ch1|Li0|Ca0|Pr0 3467
0.0 Ha1|Ch1|Li0|Ca0|Pr0 1
0.0 Ha1|Ch1|Li0|Ca0|Pr0 2137
0.0 Ha1|Ch1|Li0|Ca0|Pr0 846
0.0 Ha1|Ch1|Li0|Ca0|Pr0 164
0.0 Ha1|Ch1|Li0|Ca0|Pr0 1392
0.0 Ha1|Ch1|Li0|Ca0|Pr1 91744
0.0 Ha1|Ch1|Li0|Ca0|Pr1 182
0.0 Ha1|Ch1|Li0|Ca0|Pr1 9338
0.0 Ha1|Ch1|Li0|Ca0|Pr1 12720
0.0 Ha1|Ch1|Li0|Ca0|Pr1 16
0.0 Ha1|Ch1|Li0|Ca0|Pr1 11757
0.0 Ha1|Ch1|Li0|Ca0|Pr1 2089
0.0 Ha1|Ch1|Li0|Ca0|Pr1 285
0.0 Ha1|Ch1|Li0|Ca0|Pr1 662
0.0 Ha1|Ch1|Li1|Ca0|Pr0 8695
0.0 Ha1|Ch1|Li1|Ca0|Pr0 23
0.0 Ha1|Ch1|Li1|Ca0|Pr0 182
0.0 Ha1|Ch1|Li1|Ca0|Pr0 1106
0.0 Ha1|Ch1|Li1|Ca0|Pr0 2
0.0 Ha1|Ch1|Li1|Ca0|Pr0 1163
0.0 Ha1|Ch1|Li1|Ca0|Pr0 1450
0.0 Ha1|Ch1|Li1|Ca0|Pr0 772
0.0 Ha1|Ch1|Li1|Ca0|Pr0 97
0.0 Ha1|Ch1|Li1|Ca0|Pr1 61595
0.0 Ha1|Ch1|Li1|Ca0|Pr1 77
0.0 Ha1|Ch1|Li1|Ca0|Pr1 923
0.0 Ha1|Ch1|Li1|Ca0|Pr1 5727
0.0 Ha1|Ch1|Li1|Ca0|Pr1 8
0.0 Ha1|Ch1|Li1|Ca0|Pr1 7154
0.0 Ha1|Ch1|Li1|Ca0|Pr1 3393
0.0 Ha1|Ch1|Li1|Ca0|Pr1 2088
0.0 Ha1|Ch1|Li1|Ca0|Pr1 291
0.2 Ha0|Ch0|Li0|Ca0|Pr1 185326
0.2 Ha0|Ch0|Li0|Ca0|Pr1 32819
0.2 Ha0|Ch0|Li0|Ca0|Pr1 1729272
0.2 Ha0|Ch0|Li0|Ca0|Pr1 212680
0.2 Ha0|Ch0|Li0|Ca0|Pr1 276
0.2 Ha0|Ch0|Li0|Ca0|Pr1 23751
0.2 Ha0|Ch0|Li0|Ca0|Pr1 1513
0.2 Ha0|Ch0|Li0|Ca0|Pr1 26
0.2 Ha0|Ch0|Li0|Ca0|Pr1 70481
0.2 Ha0|Ch0|Li0|Ca1|Pr0 15943
0.2 Ha0|Ch0|Li0|Ca1|Pr0 232081
0.2 Ha0|Ch0|Li0|Ca1|Pr0 14806855
0.2 Ha0|Ch0|Li0|Ca1|Pr0 4634429
0.2 Ha0|Ch0|Li0|Ca1|Pr0 208
0.2 Ha0|Ch0|Li0|Ca1|Pr0 252500
0.2 Ha0|Ch0|Li0|Ca1|Pr0 42411
0.2 Ha0|Ch0|Li0|Ca1|Pr0 1035
0.2 Ha0|Ch0|Li0|Ca1|Pr0 617673
0.2 Ha0|Ch0|Li0|Ca1|Pr1 3340
0.2 Ha0|Ch0|Li0|Ca1|Pr1 163383
0.2 Ha0|Ch0|Li0|Ca1|Pr1 9326620
0.2 Ha0|Ch0|Li0|Ca1|Pr1 361270
0.2 Ha0|Ch0|Li0|Ca1|Pr1 9654
0.2 Ha0|Ch0|Li0|Ca1|Pr1 7
0.2 Ha0|Ch0|Li0|Ca1|Pr1 421156
0.2 Ha0|Ch0|Li1|Ca0|Pr0 200
0.2 Ha0|Ch0|Li1|Ca0|Pr0 117
0.2 Ha0|Ch0|Li1|Ca0|Pr0 17046
0.2 Ha0|Ch0|Li1|Ca0|Pr0 3806
0.2 Ha0|Ch0|Li1|Ca0|Pr0 7
0.2 Ha0|Ch0|Li1|Ca0|Pr0 1146
0.2 Ha0|Ch0|Li1|Ca0|Pr0 97
0.2 Ha0|Ch0|Li1|Ca0|Pr0 5
0.2 Ha0|Ch0|Li1|Ca0|Pr0 617
0.2 Ha0|Ch0|Li1|Ca0|Pr1 5346
0.2 Ha0|Ch0|Li1|Ca0|Pr1 5539
0.2 Ha0|Ch0|Li1|Ca0|Pr1 497016
0.2 Ha0|Ch0|Li1|Ca0|Pr1 62906
0.2 Ha0|Ch0|Li1|Ca0|Pr1 641
0.2 Ha0|Ch0|Li1|Ca0|Pr1 2
0.2 Ha0|Ch0|Li1|Ca0|Pr1 27202
0.2 Ha0|Ch0|Li1|Ca1|Pr0 19
0.2 Ha0|Ch0|Li1|Ca1|Pr0 361
0.2 Ha0|Ch0|Li1|Ca1|Pr0 26666
0.2 Ha0|Ch0|Li1|Ca1|Pr0 1443
0.2 Ha0|Ch0|Li1|Ca1|Pr0 144
0.2 Ha0|Ch0|Li1|Ca1|Pr0 2
0.2 Ha0|Ch0|Li1|Ca1|Pr0 2543
0.2 Ha0|Ch0|Li1|Ca1|Pr1 1257
0.2 Ha0|Ch0|Li1|Ca1|Pr1 16021
0.2 Ha0|Ch0|Li1|Ca1|Pr1 1224507
0.2 Ha0|Ch0|Li1|Ca1|Pr1 111142
0.2 Ha0|Ch0|Li1|Ca1|Pr1 9529
0.2 Ha0|Ch0|Li1|Ca1|Pr1 15
0.2 Ha0|Ch0|Li1|Ca1|Pr1 2
0.2 Ha0|Ch0|Li1|Ca1|Pr1 98730
0.2 Ha0|Ch1|Li0|Ca0|Pr0 1090
0.2 Ha0|Ch1|Li0|Ca0|Pr0 81
0.2 Ha0|Ch1|Li0|Ca0|Pr0 14791
0.2 Ha0|Ch1|Li0|Ca0|Pr0 1587
0.2 Ha0|Ch1|Li0|Ca0|Pr0 3
0.2 Ha0|Ch1|Li0|Ca0|Pr0 1084
0.2 Ha0|Ch1|Li0|Ca0|Pr0 81
0.2 Ha0|Ch1|Li0|Ca0|Pr0 6
0.2 Ha0|Ch1|Li0|Ca0|Pr0 210
0.2 Ha1|Ch0|Li0|Ca0|Pr0 10091
0.2 Ha1|Ch0|Li0|Ca0|Pr0 246534
0.2 Ha1|Ch0|Li0|Ca0|Pr0 8823635
0.2 Ha1|Ch0|Li0|Ca0|Pr0 387544
0.2 Ha1|Ch0|Li0|Ca0|Pr0 5036
0.2 Ha1|Ch0|Li0|Ca0|Pr0 192240
0.2 Ha1|Ch0|Li0|Ca0|Pr0 42614
0.2 Ha1|Ch0|Li0|Ca0|Pr0 1
0.2 Ha1|Ch0|Li0|Ca0|Pr0 1233
0.2 Ha1|Ch0|Li0|Ca0|Pr0 409104
0.2 Ha1|Ch0|Li0|Ca0|Pr1 10510
0.2 Ha1|Ch0|Li0|Ca0|Pr1 293041
0.2 Ha1|Ch0|Li0|Ca0|Pr1 12660602
0.2 Ha1|Ch0|Li0|Ca0|Pr1 509789
0.2 Ha1|Ch0|Li0|Ca0|Pr1 2
0.2 Ha1|Ch0|Li0|Ca0|Pr1 6229
0.2 Ha1|Ch0|Li0|Ca0|Pr1 21
0.2 Ha1|Ch0|Li0|Ca0|Pr1 1
0.2 Ha1|Ch0|Li0|Ca0|Pr1 657487
0.2 Ha1|Ch0|Li0|Ca1|Pr0 56
0.2 Ha1|Ch0|Li0|Ca1|Pr0 1329
0.2 Ha1|Ch0|Li0|Ca1|Pr0 133957
0.2 Ha1|Ch0|Li0|Ca1|Pr0 18732
0.2 Ha1|Ch0|Li0|Ca1|Pr0 4386
0.2 Ha1|Ch0|Li0|Ca1|Pr0 42
0.2 Ha1|Ch0|Li0|Ca1|Pr0 1
0.2 Ha1|Ch0|Li0|Ca1|Pr0 1235
0.2 Ha1|Ch0|Li0|Ca1|Pr1 228
0.2 Ha1|Ch0|Li0|Ca1|Pr1 3919
0.2 Ha1|Ch0|Li0|Ca1|Pr1 406612
0.2 Ha1|Ch0|Li0|Ca1|Pr1 59883
0.2 Ha1|Ch0|Li0|Ca1|Pr1 1
0.2 Ha1|Ch0|Li0|Ca1|Pr1 10036
0.2 Ha1|Ch0|Li0|Ca1|Pr1 113
0.2 Ha1|Ch0|Li0|Ca1|Pr1 1
0.2 Ha1|Ch0|Li0|Ca1|Pr1 10486
0.2 Ha1|Ch0|Li1|Ca0|Pr0 70
0.2 Ha1|Ch0|Li1|Ca0|Pr0 485
0.2 Ha1|Ch0|Li1|Ca0|Pr0 32417
0.2 Ha1|Ch0|Li1|Ca0|Pr0 3097
0.2 Ha1|Ch0|Li1|Ca0|Pr0 128
0.2 Ha1|Ch0|Li1|Ca0|Pr0 3
0.2 Ha1|Ch0|Li1|Ca0|Pr0 3210
0.2 Ha1|Ch0|Li1|Ca0|Pr1 5143
0.2 Ha1|Ch0|Li1|Ca0|Pr1 41912
0.2 Ha1|Ch0|Li1|Ca0|Pr1 2247347
0.2 Ha1|Ch0|Li1|Ca0|Pr1 415320
0.2 Ha1|Ch0|Li1|Ca0|Pr1 10598
0.2 Ha1|Ch0|Li1|Ca0|Pr1 56
0.2 Ha1|Ch0|Li1|Ca0|Pr1 1
0.2 Ha1|Ch0|Li1|Ca0|Pr1 216934
0.2 Ha1|Ch0|Li1|Ca1|Pr0 8
0.2 Ha1|Ch0|Li1|Ca1|Pr0 74
0.2 Ha1|Ch0|Li1|Ca1|Pr0 9497
0.2 Ha1|Ch0|Li1|Ca1|Pr0 1107
0.2 Ha1|Ch0|Li1|Ca1|Pr0 233
0.2 Ha1|Ch0|Li1|Ca1|Pr0 5
0.2 Ha1|Ch0|Li1|Ca1|Pr0 1
0.2 Ha1|Ch0|Li1|Ca1|Pr0 464
0.2 Ha1|Ch0|Li1|Ca1|Pr1 510
0.2 Ha1|Ch0|Li1|Ca1|Pr1 4510
0.2 Ha1|Ch0|Li1|Ca1|Pr1 517884
0.2 Ha1|Ch0|Li1|Ca1|Pr1 98376
0.2 Ha1|Ch0|Li1|Ca1|Pr1 1
0.2 Ha1|Ch0|Li1|Ca1|Pr1 19003
0.2 Ha1|Ch0|Li1|Ca1|Pr1 397
0.2 Ha1|Ch0|Li1|Ca1|Pr1 3
0.2 Ha1|Ch0|Li1|Ca1|Pr1 21055
0.4 Ha0|Ch0|Li0|Ca1|Pr1 11020
0.4 Ha0|Ch0|Li0|Ca1|Pr1 48415
0.4 Ha0|Ch0|Li0|Ca1|Pr1 2012437
0.4 Ha0|Ch0|Li0|Ca1|Pr1 3233959
0.4 Ha0|Ch0|Li0|Ca1|Pr1 315
0.4 Ha0|Ch0|Li0|Ca1|Pr1 523353
0.4 Ha0|Ch0|Li0|Ca1|Pr1 46307
0.4 Ha0|Ch0|Li0|Ca1|Pr1 1104
0.4 Ha0|Ch0|Li0|Ca1|Pr1 103459
0.4 Ha0|Ch0|Li1|Ca0|Pr1 2184
0.4 Ha0|Ch0|Li1|Ca0|Pr1 2068
0.4 Ha0|Ch0|Li1|Ca0|Pr1 72817
0.4 Ha0|Ch0|Li1|Ca0|Pr1 743653
0.4 Ha0|Ch0|Li1|Ca0|Pr1 639
0.4 Ha0|Ch0|Li1|Ca0|Pr1 77305
0.4 Ha0|Ch0|Li1|Ca0|Pr1 4782
0.4 Ha0|Ch0|Li1|Ca0|Pr1 153
0.4 Ha0|Ch0|Li1|Ca0|Pr1 8335
0.4 Ha0|Ch0|Li1|Ca1|Pr0 62
0.4 Ha0|Ch0|Li1|Ca1|Pr0 261
0.4 Ha0|Ch0|Li1|Ca1|Pr0 1629
0.4 Ha0|Ch0|Li1|Ca1|Pr0 33176
0.4 Ha0|Ch0|Li1|Ca1|Pr0 5
0.4 Ha0|Ch0|Li1|Ca1|Pr0 10971
0.4 Ha0|Ch0|Li1|Ca1|Pr0 2016
0.4 Ha0|Ch0|Li1|Ca1|Pr0 153
0.4 Ha0|Ch0|Li1|Ca1|Pr0 2316
0.4 Ha0|Ch0|Li1|Ca1|Pr1 178
0.4 Ha0|Ch0|Li1|Ca1|Pr1 487
0.4 Ha0|Ch0|Li1|Ca1|Pr1 6785
0.4 Ha0|Ch0|Li1|Ca1|Pr1 136409
0.4 Ha0|Ch0|Li1|Ca1|Pr1 87
0.4 Ha0|Ch0|Li1|Ca1|Pr1 94595
0.4 Ha0|Ch0|Li1|Ca1|Pr1 6234
0.4 Ha0|Ch0|Li1|Ca1|Pr1 1003
0.4 Ha0|Ch0|Li1|Ca1|Pr1 2853
0.4 Ha0|Ch1|Li0|Ca0|Pr1 4545
0.4 Ha0|Ch1|Li0|Ca0|Pr1 514
0.4 Ha0|Ch1|Li0|Ca0|Pr1 25966
0.4 Ha0|Ch1|Li0|Ca0|Pr1 75391
0.4 Ha0|Ch1|Li0|Ca0|Pr1 49
0.4 Ha0|Ch1|Li0|Ca0|Pr1 11830
0.4 Ha0|Ch1|Li0|Ca0|Pr1 871
0.4 Ha0|Ch1|Li0|Ca0|Pr1 32
0.4 Ha0|Ch1|Li0|Ca0|Pr1 728
0.4 Ha0|Ch1|Li0|Ca1|Pr0 1817
0.4 Ha0|Ch1|Li0|Ca1|Pr0 978
0.4 Ha0|Ch1|Li0|Ca1|Pr0 15146
0.4 Ha0|Ch1|Li0|Ca1|Pr0 116864
0.4 Ha0|Ch1|Li0|Ca1|Pr0 1
0.4 Ha0|Ch1|Li0|Ca1|Pr0 27534
0.4 Ha0|Ch1|Li0|Ca1|Pr0 4319
0.4 Ha0|Ch1|Li0|Ca1|Pr0 133
0.4 Ha0|Ch1|Li0|Ca1|Pr0 4830
0.4 Ha0|Ch1|Li0|Ca1|Pr1 951
0.4 Ha0|Ch1|Li0|Ca1|Pr1 287
0.4 Ha0|Ch1|Li0|Ca1|Pr1 6692
0.4 Ha0|Ch1|Li0|Ca1|Pr1 33447
0.4 Ha0|Ch1|Li0|Ca1|Pr1 18
0.4 Ha0|Ch1|Li0|Ca1|Pr1 12993
0.4 Ha0|Ch1|Li0|Ca1|Pr1 1781
0.4 Ha0|Ch1|Li0|Ca1|Pr1 367
0.4 Ha0|Ch1|Li0|Ca1|Pr1 753
0.4 Ha0|Ch1|Li1|Ca0|Pr0 51
0.4 Ha0|Ch1|Li1|Ca0|Pr0 19
0.4 Ha0|Ch1|Li1|Ca0|Pr0 323
0.4 Ha0|Ch1|Li1|Ca0|Pr0 11546
0.4 Ha0|Ch1|Li1|Ca0|Pr0 1
0.4 Ha0|Ch1|Li1|Ca0|Pr0 1683
0.4 Ha0|Ch1|Li1|Ca0|Pr0 306
0.4 Ha0|Ch1|Li1|Ca0|Pr0 24
0.4 Ha0|Ch1|Li1|Ca0|Pr0 54
0.4 Ha0|Ch1|Li1|Ca0|Pr1 345
0.4 Ha0|Ch1|Li1|Ca0|Pr1 391
0.4 Ha0|Ch1|Li1|Ca0|Pr1 3657
0.4 Ha0|Ch1|Li1|Ca0|Pr1 102447
0.4 Ha0|Ch1|Li1|Ca0|Pr1 41
0.4 Ha0|Ch1|Li1|Ca0|Pr1 29084
0.4 Ha0|Ch1|Li1|Ca0|Pr1 4837
0.4 Ha0|Ch1|Li1|Ca0|Pr1 659
0.4 Ha0|Ch1|Li1|Ca0|Pr1 615
0.4 Ha0|Ch1|Li1|Ca1|Pr0 32
0.4 Ha0|Ch1|Li1|Ca1|Pr0 24
0.4 Ha0|Ch1|Li1|Ca1|Pr0 48
0.4 Ha0|Ch1|Li1|Ca1|Pr0 6639
0.4 Ha0|Ch1|Li1|Ca1|Pr0 1
0.4 Ha0|Ch1|Li1|Ca1|Pr0 1265
0.4 Ha0|Ch1|Li1|Ca1|Pr0 733
0.4 Ha0|Ch1|Li1|Ca1|Pr0 399
0.4 Ha0|Ch1|Li1|Ca1|Pr0 79
0.4 Ha0|Ch1|Li1|Ca1|Pr1 349
0.4 Ha0|Ch1|Li1|Ca1|Pr1 379
0.4 Ha0|Ch1|Li1|Ca1|Pr1 2029
0.4 Ha0|Ch1|Li1|Ca1|Pr1 108773
0.4 Ha0|Ch1|Li1|Ca1|Pr1 26
0.4 Ha0|Ch1|Li1|Ca1|Pr1 40416
0.4 Ha0|Ch1|Li1|Ca1|Pr1 8408
0.4 Ha0|Ch1|Li1|Ca1|Pr1 9400
0.4 Ha0|Ch1|Li1|Ca1|Pr1 1374
0.4 Ha1|Ch0|Li0|Ca0|Pr1 7014
0.4 Ha1|Ch0|Li0|Ca0|Pr1 46573
0.4 Ha1|Ch0|Li0|Ca0|Pr1 1954739
0.4 Ha1|Ch0|Li0|Ca0|Pr1 2435578
0.4 Ha1|Ch0|Li0|Ca0|Pr1 543
0.4 Ha1|Ch0|Li0|Ca0|Pr1 361936
0.4 Ha1|Ch0|Li0|Ca0|Pr1 21401
0.4 Ha1|Ch0|Li0|Ca0|Pr1 2041
0.4 Ha1|Ch0|Li0|Ca0|Pr1 66934
0.4 Ha1|Ch0|Li0|Ca0|Pr1 5947
0.4 Ha1|Ch0|Li0|Ca0|Pr1 7715
0.4 Ha1|Ch0|Li0|Ca0|Pr1 590567
0.4 Ha1|Ch0|Li0|Ca0|Pr1 1179866
0.4 Ha1|Ch0|Li0|Ca0|Pr1 4089
0.4 Ha1|Ch0|Li0|Ca0|Pr1 504735
0.4 Ha1|Ch0|Li0|Ca0|Pr1 68714
0.4 Ha1|Ch0|Li0|Ca0|Pr1 1397
0.4 Ha1|Ch0|Li0|Ca0|Pr1 17010
0.4 Ha1|Ch0|Li0|Ca1|Pr0 3075
0.4 Ha1|Ch0|Li0|Ca1|Pr0 3300
0.4 Ha1|Ch0|Li0|Ca1|Pr0 158487
0.4 Ha1|Ch0|Li0|Ca1|Pr0 533040
0.4 Ha1|Ch0|Li0|Ca1|Pr0 10493
0.4 Ha1|Ch0|Li0|Ca1|Pr0 394077
0.4 Ha1|Ch0|Li0|Ca1|Pr0 229524
0.4 Ha1|Ch0|Li0|Ca1|Pr0 11
0.4 Ha1|Ch0|Li0|Ca1|Pr0 79450
0.4 Ha1|Ch0|Li0|Ca1|Pr0 7351
0.4 Ha1|Ch0|Li0|Ca1|Pr1 2
0.4 Ha1|Ch0|Li0|Ca1|Pr1 3
0.4 Ha1|Ch0|Li0|Ca1|Pr1 50
0.4 Ha1|Ch0|Li0|Ca1|Pr1 209
0.4 Ha1|Ch0|Li0|Ca1|Pr1 7731
0.4 Ha1|Ch0|Li0|Ca1|Pr1 91
0.4 Ha1|Ch0|Li0|Ca1|Pr1 1
0.4 Ha1|Ch0|Li0|Ca1|Pr1 116
0.4 Ha1|Ch0|Li0|Ca1|Pr1 164
0.4 Ha1|Ch0|Li0|Ca1|Pr1 67
0.4 Ha1|Ch0|Li0|Ca1|Pr1 3618
0.4 Ha1|Ch0|Li0|Ca1|Pr1 8153
0.4 Ha1|Ch0|Li0|Ca1|Pr1 332
0.4 Ha1|Ch0|Li0|Ca1|Pr1 307830
0.4 Ha1|Ch0|Li0|Ca1|Pr1 38177
0.4 Ha1|Ch0|Li0|Ca1|Pr1 1616
0.4 Ha1|Ch0|Li0|Ca1|Pr1 2386
0.4 Ha1|Ch0|Li1|Ca0|Pr0 106
0.4 Ha1|Ch0|Li1|Ca0|Pr0 187
0.4 Ha1|Ch0|Li1|Ca0|Pr0 1750
0.4 Ha1|Ch0|Li1|Ca0|Pr0 38745
0.4 Ha1|Ch0|Li1|Ca0|Pr0 28
0.4 Ha1|Ch0|Li1|Ca0|Pr0 20438
0.4 Ha1|Ch0|Li1|Ca0|Pr0 5397
0.4 Ha1|Ch0|Li1|Ca0|Pr0 342
0.4 Ha1|Ch0|Li1|Ca0|Pr0 1598
0.4 Ha1|Ch0|Li1|Ca0|Pr1 605
0.4 Ha1|Ch0|Li1|Ca0|Pr1 1334
0.4 Ha1|Ch0|Li1|Ca0|Pr1 6374
0.4 Ha1|Ch0|Li1|Ca0|Pr1 147711
0.4 Ha1|Ch0|Li1|Ca0|Pr1 138
0.4 Ha1|Ch0|Li1|Ca0|Pr1 115856
0.4 Ha1|Ch0|Li1|Ca0|Pr1 14837
0.4 Ha1|Ch0|Li1|Ca0|Pr1 1375
0.4 Ha1|Ch0|Li1|Ca0|Pr1 2635
0.4 Ha1|Ch0|Li1|Ca0|Pr1 161
0.4 Ha1|Ch0|Li1|Ca0|Pr1 112
0.4 Ha1|Ch0|Li1|Ca0|Pr1 4209
0.4 Ha1|Ch0|Li1|Ca0|Pr1 20458
0.4 Ha1|Ch0|Li1|Ca0|Pr1 126
0.4 Ha1|Ch0|Li1|Ca0|Pr1 231868
0.4 Ha1|Ch0|Li1|Ca0|Pr1 4184
0.4 Ha1|Ch0|Li1|Ca0|Pr1 51
0.4 Ha1|Ch0|Li1|Ca0|Pr1 1731
0.4 Ha1|Ch0|Li1|Ca1|Pr0 6
0.4 Ha1|Ch0|Li1|Ca1|Pr0 50
0.4 Ha1|Ch0|Li1|Ca1|Pr0 2
0.4 Ha1|Ch0|Li1|Ca1|Pr0 2615
0.4 Ha1|Ch0|Li1|Ca1|Pr0 1275
0.4 Ha1|Ch0|Li1|Ca1|Pr0 104
0.4 Ha1|Ch0|Li1|Ca1|Pr0 18
0.4 Ha1|Ch0|Li1|Ca1|Pr1 3
0.4 Ha1|Ch0|Li1|Ca1|Pr1 19
0.4 Ha1|Ch0|Li1|Ca1|Pr1 594
0.4 Ha1|Ch0|Li1|Ca1|Pr1 328
0.4 Ha1|Ch0|Li1|Ca1|Pr1 3
0.4 Ha1|Ch0|Li1|Ca1|Pr1 25
0.4 Ha1|Ch0|Li1|Ca1|Pr1 27
0.4 Ha1|Ch0|Li1|Ca1|Pr1 400
0.4 Ha1|Ch0|Li1|Ca1|Pr1 2287
0.4 Ha1|Ch0|Li1|Ca1|Pr1 38
0.4 Ha1|Ch0|Li1|Ca1|Pr1 14970
0.4 Ha1|Ch0|Li1|Ca1|Pr1 170532
0.4 Ha1|Ch0|Li1|Ca1|Pr1 7295
0.4 Ha1|Ch0|Li1|Ca1|Pr1 488
0.4 Ha1|Ch1|Li0|Ca0|Pr0 1859
0.4 Ha1|Ch1|Li0|Ca0|Pr0 458
0.4 Ha1|Ch1|Li0|Ca0|Pr0 10419
0.4 Ha1|Ch1|Li0|Ca0|Pr0 91390
0.4 Ha1|Ch1|Li0|Ca0|Pr0 6
0.4 Ha1|Ch1|Li0|Ca0|Pr0 20222
0.4 Ha1|Ch1|Li0|Ca0|Pr0 5756
0.4 Ha1|Ch1|Li0|Ca0|Pr0 627
0.4 Ha1|Ch1|Li0|Ca0|Pr0 1596
0.4 Ha1|Ch1|Li0|Ca0|Pr1 259
0.4 Ha1|Ch1|Li0|Ca0|Pr1 219
0.4 Ha1|Ch1|Li0|Ca0|Pr1 2964
0.4 Ha1|Ch1|Li0|Ca0|Pr1 35961
0.4 Ha1|Ch1|Li0|Ca0|Pr1 87
0.4 Ha1|Ch1|Li0|Ca0|Pr1 10328
0.4 Ha1|Ch1|Li0|Ca0|Pr1 3403
0.4 Ha1|Ch1|Li0|Ca0|Pr1 174
0.4 Ha1|Ch1|Li0|Ca0|Pr1 310
0.4 Ha1|Ch1|Li1|Ca0|Pr0 2
0.4 Ha1|Ch1|Li1|Ca0|Pr0 10
0.4 Ha1|Ch1|Li1|Ca0|Pr0 33
0.4 Ha1|Ch1|Li1|Ca0|Pr0 3714
0.4 Ha1|Ch1|Li1|Ca0|Pr0 408
0.4 Ha1|Ch1|Li1|Ca0|Pr0 270
0.4 Ha1|Ch1|Li1|Ca0|Pr0 78
0.4 Ha1|Ch1|Li1|Ca0|Pr0 20
0.4 Ha1|Ch1|Li1|Ca0|Pr1 258
0.4 Ha1|Ch1|Li1|Ca0|Pr1 673
0.4 Ha1|Ch1|Li1|Ca0|Pr1 1687
0.4 Ha1|Ch1|Li1|Ca0|Pr1 107721
0.4 Ha1|Ch1|Li1|Ca0|Pr1 136
0.4 Ha1|Ch1|Li1|Ca0|Pr1 37892
0.4 Ha1|Ch1|Li1|Ca0|Pr1 29136
0.4 Ha1|Ch1|Li1|Ca0|Pr1 5188
0.4 Ha1|Ch1|Li1|Ca0|Pr1 1048
0.6 Ha0|Ch0|Li1|Ca1|Pr1 405
0.6 Ha0|Ch0|Li1|Ca1|Pr1 2787
0.6 Ha0|Ch0|Li1|Ca1|Pr1 24870
0.6 Ha0|Ch0|Li1|Ca1|Pr1 139077
0.6 Ha0|Ch0|Li1|Ca1|Pr1 189
0.6 Ha0|Ch0|Li1|Ca1|Pr1 1271046
0.6 Ha0|Ch0|Li1|Ca1|Pr1 57446
0.6 Ha0|Ch0|Li1|Ca1|Pr1 1
0.6 Ha0|Ch0|Li1|Ca1|Pr1 1558
0.6 Ha0|Ch0|Li1|Ca1|Pr1 41758
0.6 Ha0|Ch1|Li0|Ca1|Pr1 7941
0.6 Ha0|Ch1|Li0|Ca1|Pr1 4419
0.6 Ha0|Ch1|Li0|Ca1|Pr1 115031
0.6 Ha0|Ch1|Li0|Ca1|Pr1 180051
0.6 Ha0|Ch1|Li0|Ca1|Pr1 85
0.6 Ha0|Ch1|Li0|Ca1|Pr1 668735
0.6 Ha0|Ch1|Li0|Ca1|Pr1 45436
0.6 Ha0|Ch1|Li0|Ca1|Pr1 388
0.6 Ha0|Ch1|Li0|Ca1|Pr1 16296
0.6 Ha0|Ch1|Li1|Ca0|Pr1 249
0.6 Ha0|Ch1|Li1|Ca0|Pr1 255
0.6 Ha0|Ch1|Li1|Ca0|Pr1 5878
0.6 Ha0|Ch1|Li1|Ca0|Pr1 38448
0.6 Ha0|Ch1|Li1|Ca0|Pr1 153
0.6 Ha0|Ch1|Li1|Ca0|Pr1 257526
0.6 Ha0|Ch1|Li1|Ca0|Pr1 9936
0.6 Ha0|Ch1|Li1|Ca0|Pr1 315
0.6 Ha0|Ch1|Li1|Ca0|Pr1 1039
0.6 Ha0|Ch1|Li1|Ca1|Pr0 57
0.6 Ha0|Ch1|Li1|Ca1|Pr0 78
0.6 Ha0|Ch1|Li1|Ca1|Pr0 341
0.6 Ha0|Ch1|Li1|Ca1|Pr0 1379
0.6 Ha0|Ch1|Li1|Ca1|Pr0 37899
0.6 Ha0|Ch1|Li1|Ca1|Pr0 3131
0.6 Ha0|Ch1|Li1|Ca1|Pr0 161
0.6 Ha0|Ch1|Li1|Ca1|Pr0 490
0.6 Ha1|Ch0|Li0|Ca1|Pr1 200
0.6 Ha1|Ch0|Li0|Ca1|Pr1 149
0.6 Ha1|Ch0|Li0|Ca1|Pr1 7580
0.6 Ha1|Ch0|Li0|Ca1|Pr1 14860
0.6 Ha1|Ch0|Li0|Ca1|Pr1 6
0.6 Ha1|Ch0|Li0|Ca1|Pr1 312121
0.6 Ha1|Ch0|Li0|Ca1|Pr1 1766
0.6 Ha1|Ch0|Li0|Ca1|Pr1 1
0.6 Ha1|Ch0|Li0|Ca1|Pr1 2765
0.6 Ha1|Ch0|Li0|Ca1|Pr1 2287
0.6 Ha1|Ch0|Li0|Ca1|Pr1 294
0.6 Ha1|Ch0|Li0|Ca1|Pr1 9522
0.6 Ha1|Ch0|Li0|Ca1|Pr1 26363
0.6 Ha1|Ch0|Li0|Ca1|Pr1 2289
0.6 Ha1|Ch0|Li0|Ca1|Pr1 953570
0.6 Ha1|Ch0|Li0|Ca1|Pr1 241309
0.6 Ha1|Ch0|Li0|Ca1|Pr1 57383
0.6 Ha1|Ch0|Li0|Ca1|Pr1 9636
0.6 Ha1|Ch0|Li1|Ca0|Pr1 665
0.6 Ha1|Ch0|Li1|Ca0|Pr1 2320
0.6 Ha1|Ch0|Li1|Ca0|Pr1 27470
0.6 Ha1|Ch0|Li1|Ca0|Pr1 146652
0.6 Ha1|Ch0|Li1|Ca0|Pr1 78
0.6 Ha1|Ch0|Li1|Ca0|Pr1 1268740
0.6 Ha1|Ch0|Li1|Ca0|Pr1 39802
0.6 Ha1|Ch0|Li1|Ca0|Pr1 9267
0.6 Ha1|Ch0|Li1|Ca0|Pr1 37040
0.6 Ha1|Ch0|Li1|Ca0|Pr1 1656
0.6 Ha1|Ch0|Li1|Ca0|Pr1 2440
0.6 Ha1|Ch0|Li1|Ca0|Pr1 23766
0.6 Ha1|Ch0|Li1|Ca0|Pr1 127770
0.6 Ha1|Ch0|Li1|Ca0|Pr1 1762
0.6 Ha1|Ch0|Li1|Ca0|Pr1 2007666
0.6 Ha1|Ch0|Li1|Ca0|Pr1 239352
0.6 Ha1|Ch0|Li1|Ca0|Pr1 4830
0.6 Ha1|Ch0|Li1|Ca0|Pr1 27242
0.6 Ha1|Ch0|Li1|Ca1|Pr0 16
0.6 Ha1|Ch0|Li1|Ca1|Pr0 31
0.6 Ha1|Ch0|Li1|Ca1|Pr0 156
0.6 Ha1|Ch0|Li1|Ca1|Pr0 457
0.6 Ha1|Ch0|Li1|Ca1|Pr0 18
0.6 Ha1|Ch0|Li1|Ca1|Pr0 41535
0.6 Ha1|Ch0|Li1|Ca1|Pr0 14037
0.6 Ha1|Ch0|Li1|Ca1|Pr0 8562
0.6 Ha1|Ch0|Li1|Ca1|Pr0 344
0.6 Ha1|Ch0|Li1|Ca1|Pr1 65
0.6 Ha1|Ch0|Li1|Ca1|Pr1 387
0.6 Ha1|Ch0|Li1|Ca1|Pr1 4450
0.6 Ha1|Ch0|Li1|Ca1|Pr1 22434
0.6 Ha1|Ch0|Li1|Ca1|Pr1 471065
0.6 Ha1|Ch0|Li1|Ca1|Pr1 2618
0.6 Ha1|Ch0|Li1|Ca1|Pr1 19
0.6 Ha1|Ch0|Li1|Ca1|Pr1 3966
0.6 Ha1|Ch0|Li1|Ca1|Pr1 89
0.6 Ha1|Ch0|Li1|Ca1|Pr1 237
0.6 Ha1|Ch0|Li1|Ca1|Pr1 1055
0.6 Ha1|Ch0|Li1|Ca1|Pr1 3599
0.6 Ha1|Ch0|Li1|Ca1|Pr1 155
0.6 Ha1|Ch0|Li1|Ca1|Pr1 102007
0.6 Ha1|Ch0|Li1|Ca1|Pr1 864349
0.6 Ha1|Ch0|Li1|Ca1|Pr1 1
0.6 Ha1|Ch0|Li1|Ca1|Pr1 50138
0.6 Ha1|Ch0|Li1|Ca1|Pr1 9671
0.6 Ha1|Ch1|Li0|Ca0|Pr1 2241
0.6 Ha1|Ch1|Li0|Ca0|Pr1 2132
0.6 Ha1|Ch1|Li0|Ca0|Pr1 46180
0.6 Ha1|Ch1|Li0|Ca0|Pr1 54231
0.6 Ha1|Ch1|Li0|Ca0|Pr1 170
0.6 Ha1|Ch1|Li0|Ca0|Pr1 181813
0.6 Ha1|Ch1|Li0|Ca0|Pr1 7177
0.6 Ha1|Ch1|Li0|Ca0|Pr1 2677
0.6 Ha1|Ch1|Li0|Ca0|Pr1 4534
0.6 Ha1|Ch1|Li0|Ca0|Pr1 7637
0.6 Ha1|Ch1|Li0|Ca0|Pr1 1397
0.6 Ha1|Ch1|Li0|Ca0|Pr1 45703
0.6 Ha1|Ch1|Li0|Ca0|Pr1 74649
0.6 Ha1|Ch1|Li0|Ca0|Pr1 749
0.6 Ha1|Ch1|Li0|Ca0|Pr1 434768
0.6 Ha1|Ch1|Li0|Ca0|Pr1 65180
0.6 Ha1|Ch1|Li0|Ca0|Pr1 2887
0.6 Ha1|Ch1|Li0|Ca0|Pr1 3808
0.6 Ha1|Ch1|Li0|Ca1|Pr0 627
0.6 Ha1|Ch1|Li0|Ca1|Pr0 36
0.6 Ha1|Ch1|Li0|Ca1|Pr0 474
0.6 Ha1|Ch1|Li0|Ca1|Pr0 2067
0.6 Ha1|Ch1|Li0|Ca1|Pr0 14
0.6 Ha1|Ch1|Li0|Ca1|Pr0 81227
0.6 Ha1|Ch1|Li0|Ca1|Pr0 15953
0.6 Ha1|Ch1|Li0|Ca1|Pr0 15073
0.6 Ha1|Ch1|Li0|Ca1|Pr0 319
0.6 Ha1|Ch1|Li1|Ca0|Pr0 104
0.6 Ha1|Ch1|Li1|Ca0|Pr0 55
0.6 Ha1|Ch1|Li1|Ca0|Pr0 312
0.6 Ha1|Ch1|Li1|Ca0|Pr0 1193
0.6 Ha1|Ch1|Li1|Ca0|Pr0 8
0.6 Ha1|Ch1|Li1|Ca0|Pr0 50285
0.6 Ha1|Ch1|Li1|Ca0|Pr0 7741
0.6 Ha1|Ch1|Li1|Ca0|Pr0 1316
0.6 Ha1|Ch1|Li1|Ca0|Pr0 274
0.8 Ha0|Ch1|Li1|Ca1|Pr1 732
0.8 Ha0|Ch1|Li1|Ca1|Pr1 736
0.8 Ha0|Ch1|Li1|Ca1|Pr1 5606
0.8 Ha0|Ch1|Li1|Ca1|Pr1 18895
0.8 Ha0|Ch1|Li1|Ca1|Pr1 103
0.8 Ha0|Ch1|Li1|Ca1|Pr1 187679
0.8 Ha0|Ch1|Li1|Ca1|Pr1 759744
0.8 Ha0|Ch1|Li1|Ca1|Pr1 11064
0.8 Ha0|Ch1|Li1|Ca1|Pr1 6821
0.8 Ha1|Ch0|Li1|Ca1|Pr1 173
0.8 Ha1|Ch0|Li1|Ca1|Pr1 106
0.8 Ha1|Ch0|Li1|Ca1|Pr1 1016
0.8 Ha1|Ch0|Li1|Ca1|Pr1 3576
0.8 Ha1|Ch0|Li1|Ca1|Pr1 435
0.8 Ha1|Ch0|Li1|Ca1|Pr1 80096
0.8 Ha1|Ch0|Li1|Ca1|Pr1 848895
0.8 Ha1|Ch0|Li1|Ca1|Pr1 184757
0.8 Ha1|Ch0|Li1|Ca1|Pr1 974
0.8 Ha1|Ch1|Li0|Ca1|Pr1 489
0.8 Ha1|Ch1|Li0|Ca1|Pr1 8
0.8 Ha1|Ch1|Li0|Ca1|Pr1 1255
0.8 Ha1|Ch1|Li0|Ca1|Pr1 304
0.8 Ha1|Ch1|Li0|Ca1|Pr1 1
0.8 Ha1|Ch1|Li0|Ca1|Pr1 2817
0.8 Ha1|Ch1|Li0|Ca1|Pr1 4142
0.8 Ha1|Ch1|Li0|Ca1|Pr1 7
0.8 Ha1|Ch1|Li0|Ca1|Pr1 190
0.8 Ha1|Ch1|Li0|Ca1|Pr1 4437
0.8 Ha1|Ch1|Li0|Ca1|Pr1 106
0.8 Ha1|Ch1|Li0|Ca1|Pr1 4569
0.8 Ha1|Ch1|Li0|Ca1|Pr1 5593
0.8 Ha1|Ch1|Li0|Ca1|Pr1 878
0.8 Ha1|Ch1|Li0|Ca1|Pr1 208545
0.8 Ha1|Ch1|Li0|Ca1|Pr1 405964
0.8 Ha1|Ch1|Li0|Ca1|Pr1 117860
0.8 Ha1|Ch1|Li0|Ca1|Pr1 4740
0.8 Ha1|Ch1|Li1|Ca0|Pr1 145
0.8 Ha1|Ch1|Li1|Ca0|Pr1 135
0.8 Ha1|Ch1|Li1|Ca0|Pr1 605
0.8 Ha1|Ch1|Li1|Ca0|Pr1 2925
0.8 Ha1|Ch1|Li1|Ca0|Pr1 67
0.8 Ha1|Ch1|Li1|Ca0|Pr1 32367
0.8 Ha1|Ch1|Li1|Ca0|Pr1 209626
0.8 Ha1|Ch1|Li1|Ca0|Pr1 39529
0.8 Ha1|Ch1|Li1|Ca0|Pr1 1525
0.8 Ha1|Ch1|Li1|Ca0|Pr1 1765
0.8 Ha1|Ch1|Li1|Ca0|Pr1 1153
0.8 Ha1|Ch1|Li1|Ca0|Pr1 7621
0.8 Ha1|Ch1|Li1|Ca0|Pr1 23092
0.8 Ha1|Ch1|Li1|Ca0|Pr1 1989
0.8 Ha1|Ch1|Li1|Ca0|Pr1 302515
0.8 Ha1|Ch1|Li1|Ca0|Pr1 1625228
0.8 Ha1|Ch1|Li1|Ca0|Pr1 33085
0.8 Ha1|Ch1|Li1|Ca0|Pr1 7818
0.8 Ha1|Ch1|Li1|Ca1|Pr0 58
0.8 Ha1|Ch1|Li1|Ca1|Pr0 51
0.8 Ha1|Ch1|Li1|Ca1|Pr0 109
0.8 Ha1|Ch1|Li1|Ca1|Pr0 186
0.8 Ha1|Ch1|Li1|Ca1|Pr0 6
0.8 Ha1|Ch1|Li1|Ca1|Pr0 3235
0.8 Ha1|Ch1|Li1|Ca1|Pr0 104685
0.8 Ha1|Ch1|Li1|Ca1|Pr0 27431
0.8 Ha1|Ch1|Li1|Ca1|Pr0 302
1.0 Ha1|Ch1|Li1|Ca1|Pr1 1122
1.0 Ha1|Ch1|Li1|Ca1|Pr1 1111
1.0 Ha1|Ch1|Li1|Ca1|Pr1 2390
1.0 Ha1|Ch1|Li1|Ca1|Pr1 3352
1.0 Ha1|Ch1|Li1|Ca1|Pr1 723
1.0 Ha1|Ch1|Li1|Ca1|Pr1 83316
1.0 Ha1|Ch1|Li1|Ca1|Pr1 319850
1.0 Ha1|Ch1|Li1|Ca1|Pr1 2
1.0 Ha1|Ch1|Li1|Ca1|Pr1 3464469
1.0 Ha1|Ch1|Li1|Ca1|Pr1 9377
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment