public ArrayList<String> letterCombinationsRec(String digits) {
		ArrayList<String> res = new ArrayList<String>();
		if(digits.isEmpty()) {
			res.add("");
            return res;
		}
		char c = digits.charAt(0);
		String metas = map[c-'0'];
		ArrayList<String> subRes = letterCombinationsRec(digits.substring(1));
		for(int i = 0 ; i < metas.length(); ++i){
			for(String sub : subRes){
				res.add(metas.charAt(i) + sub);
			}
		}
		return res;
	}