private static List<String> xsampaSeqToFeatures(String xsampa) {
        List<String> features;
        Boolean seqStarted = false;
        String sym = "";
        Character delimiter = null;
        List<String> tokens = new ArrayList<String>();
        for (int i = 0; i < xsampa.length(); i++) {
            if (xsampa.charAt(i) != ' ') {
                Character ch = xsampa.charAt(i);
                if (ch == '"' || ch == '\'') {
                    if (!seqStarted) {
                        seqStarted = true;
                        delimiter = ch;
                    } else { // sequence started
                        if (ch != delimiter) {
                            sym += ch;
                        } else {
                            tokens.add(sym);
                            seqStarted = false;
                            sym = "";
                        }
                    }
                } else {
                    sym += ch;
                }
            }
        }
        features = extractFeatures(tokens);
        return features;
    }