static boolean isAnagram(String s1, String s2) {
        if(s1.length() != s2.length())
            return false;
        
        s1 = s1.toLowerCase();
        s2 = s2.toLowerCase();
        java.util.HashMap<Character, Integer> map1 = new java.util.HashMap<Character, Integer>();
        for(int i = 0; i < s1.length(); i++) {
            if(map1.containsKey(s1.charAt(i))) {
                int t = map1.get(s1.charAt(i));
                map1.put(s1.charAt(i), t + 1);
            }
            else {
                map1.put(s1.charAt(i), 1);
            }
        }
        
        java.util.HashMap<Character, Integer> map2 = new java.util.HashMap<Character, Integer>();
        for(int i = 0; i < s2.length(); i++) {
            if(map2.containsKey(s2.charAt(i))) {
                int t = map2.get(s2.charAt(i));
                map2.put(s2.charAt(i), t + 1);
            }
            else {
                map2.put(s2.charAt(i), 1);
            }
        }
        
        for(int i = 0; i < s2.length(); i++) {
            if(map1.containsKey(s2.charAt(i))) {
                if(map1.get(s2.charAt(i)) != map2.get(s2.charAt(i)))
                    return false;
            }
            else 
                return false;
        }
        
        return true;
    }