@Override
    public final void addComment(String key, String... comment) {
        if (containsKey(key)) {
            if (comment != null && comment.length > 0) {
                List<String> the_comments = comments.containsKey(key) ? comments.get(key) : new LinkedList<String>();
                for (int i = 0; i < comment.length; i++) {
                    if (comment[i] == null) {
                        comment[i] = "";
                    }
                    if (!comment[i].startsWith(";") && !comment[i].startsWith("#")) {
                        comment[i] = ";".concat(comment[i]);
                    }
                    the_comments.add(comment[i]);
                }
                if (!comments.containsKey(key)) { //Basicly, the list pointer should be enough to change the list in the map without re-adding
                    comments.put(key, the_comments);
                }
            }
        }
    }