[i * input.n_samples + j]
    },
    "relatedness": function(input, i, j) {
        return (accessors.shared_hets(input, i, j) - 2 * accessors.ibs0(input, i, j)) / Math.min(input.hets[i], input.hets[j])
    },
    "concordance": function(input, i, j) {
        return (accessors.shared_hom_alts(input, i, j) - 2 * accessors.ibs0(input, i, j)) / Math.min(input.homs[i], input.homs[j])
    },
}

function get_heat_data(input, metric) {
    var result = new Array(input.n_samples)
    for (i = 0; i < input.n_sample