private void backTrace(String word,String start,List<String> list){
       if(word.equals(start)){
           list.add(0,start);
           results.add(new ArrayList<String>(list));
           list.remove(0);
           return;
       }
       list.add(0,word);
       if(map.get(word) != null)
           for(String s: map.get(word))
               backTrace(s,start,list);
       list.remove(0);
   }