private ArrayList<Site> cornerFinder() {
        ArrayList<Site> corners = new ArrayList<Site>();
        for(Site vertex: vertices) {
            if(!dungeon.isRoom(vertex)) continue;
            
            Queue<Site> tempNeighbors = graph.neighbors(vertex);
            ArrayList<Site> neighbors = new ArrayList<Site>();
            for(Site neighbor: tempNeighbors) if(!neighbor.equals(vertex)) neighbors.add(neighbor);
            
            boolean itsacorner = true;
            if(neighbors.size()<=3) {
                for(Site neighbor: neighbors) {
                    if(!dungeon.isRoom(neighbor)) {
                        itsacorner = false;
                        break;
                    }
                }
                if(itsacorner) corners.add(vertex);
            }
        }
        return corners;
    }