JavaScript
var result = [[0,0,0,-2],[0,0,-2,0],[0,0,0,-2],[0,0,-2,0],[0,-2,0,0],[0,-2,0,0],[0,0,0,-2],[0,0,-2,0],[0,0,0,-2],[0,0,-2,0],[0,-2,0,0],[0,-2,0,0],[0,0,0,-2],[0,0,-2,0],[0,0,0,-2],[0,0,-2,0],[0,-2,0,0],[0,-2,0,0],[-2,0,0,0],[-2,0,0,0],[-2,0,0,0],[-2,0,0,0],[-2,0,0,0],[-2,0,0,0]];
for (var i=0; i<result.length; i++) {//remove duplicates
var listI = result[i];
loopJ: for (var j=0; j<result.length; j++) {
var listJ = result[j];//listJ and listI point at different arrays within the result array
if (listI === listJ) continue; //Ignore itself
for (var k=listJ.length; k>=0; k--) {//checks whether the values are different, if they are continue with the loop
if (listJ[k] !== listI[k]) continue loopJ;
}
// At this point, their values are equal so we remove from the result array
result.splice(j, 1);
j--;
}
}
document.getElementById("result").innerHTML = JSON.stringify(result);