// inputに入力データ全体が入る
function Main(input) {
    var N = input[0]-0;
    var map = {};
    var map2 = {};
    var list = input[1].split(" ").map(v=>{
        map[v] = (map[v]||0) + 1;
        if(map[v]>1) map2[v] = map[v];
        return v;
    });
    var ansmap = {};
    var anss = [];
    var map2keys = Object.keys(map2);
    list.forEach(v=>{
        if(ansmap[v]) anss.push(ansmap[v]);
        else{
            var ans = 0;
            map2keys.forEach(key=>{
                var cnt = map2[key];
                if(key-0 == v-0){
                    ans += (cnt-1)*(cnt-2)/2;
                }else{
                    ans += (cnt)*(cnt-1)/2;
                }
            });
            anss.push(ans);
            ansmap[v] = ans;
        }
    });
    console.log(anss.join("\n"));
}

Main(require("fs").readFileSync("/dev/stdin", "utf8").trim().split("\n"));