comefrom: <gouthampradhan>hashing_StringTransformsIntoAnotherString_1.java
code: public boolean canConvert(String str1, String str2) {
      if (str1.length() != str2.length()) return false;
      if (str1.equals(str2)) return true;
      Map<Character, Character> mapping = new HashMap<>();
      for (int i = 0; i < str1.length(); i++) {
        char c1 = str1.charAt(i);
        char c2 = str2.charAt(i);
        if (mapping.containsKey(c1)) {
          if (mapping.get(c1) != c2) return false;
        } else {
          mapping.put(c1, c2);
        }
      }
      Set<Character> set = new HashSet<>();
      for (char k : mapping.keySet()) {
        set.add(mapping.get(k));
      }
      return (set.size() < 26);
    }
masked: public boolean var_0 ( String var_2 , String var_3 ) {
    if ( var_2 . length ( ) != var_3 . length ( ) ) return false ;
    if ( var_2 . equals ( var_3 ) ) return true ;
    Map < Character , Character > var_9 = new HashMap < > ( ) ;
    for ( int var_11 = 0 ;
    var_11 < var_2 . length ( ) ;
    var_11 ++ ) {
      char var_13 = var_2 . charAt ( var_11 ) ;
      char var_14 = var_3 . charAt ( var_11 ) ;
      if ( var_9 . containsKey ( var_13 ) ) {
        if ( var_9 . get ( var_13 ) != var_14 ) return false ;
      }
      else {
        var_9 . put ( var_13 , var_14 ) ;
      }
    }
    Set < Character > var_20 = new HashSet < > ( ) ;
    for ( char var_22 : var_9 . keySet ( ) ) {
      var_20 . add ( var_9 . get ( var_22 ) ) ;
    }
    return ( var_20 . size ( ) < 26 ) ;
  }
  