)
         ((eq (car enc-str) ?⿸)
          (list ?⿸ (nth 1 enc-str)
-               (list (list 'ideographic-structure
-                           ?⿱
-                           (nth 2 enc-str)
-                           (nth 2 structure))))
+               (list
+                (cons 'ideographic-structure
+                      (setq new-str
+                            (list
+                             (cond
+                              ((characterp (nth 2 enc-str))
+                               (if (memq (char-ucs (nth 2 enc-str))
+                                         '(#x5F73))
+                                   ?⿰
+                                 ?⿱)
+                               )
+                              (t
+                               ?⿱))
+                             (nth 2 enc-str)
+                             (nth 2 structure))))))
          )))
       )
      ((eq (car structure) ?⿹)
 
 (defun ideographic-structure-compare-functional-and-apparent (structure
                                                              &optional char)
-  (let (enc enc-str enc2-str new-str f-res a-res)
+  (let (enc enc-str enc2-str new-str f-res a-res code)
     (cond
      ((eq (car structure) ?⿸)
       (setq enc (nth 1 structure))
                a-res
                (list ?⿰
                      (nth 1 enc-str)
-                     (list (cons 'ideographic-structure new-str))))
+                     (list (cons 'ideographic-structure new-str)))
+               111)
          )
         ((and (eq (car enc-str) ?⿲)
               (memq (char-ucs (nth 1 enc-str)) '(#x4EBB #x2E85))
                a-res
                (list ?⿰
                      (decode-char '=big5-cdp #x8B7A)
-                     (list (cons 'ideographic-structure new-str))))
+                     (list (cons 'ideographic-structure new-str)))
+               112)
          )
         ((eq (car enc-str) ?⿱)
          (setq f-res (ids-find-chars-including-ids enc-str))
                  (cons 'ideographic-structure
                        (or (functional-ideographic-structure-to-apparent-structure
                             new-str)
-                           new-str)))))
+                           new-str))))
+               (if (eq (car new-str) ?⿸)
+                   121
+                 122))
          )
         ((eq (car enc-str) ?⿸)
          (setq f-res (ids-find-chars-including-ids enc-str))
-         (setq new-str (list ?⿱
+         (setq new-str (list (cond
+                              ((characterp (nth 2 enc-str))
+                               (if (memq (char-ucs (nth 2 enc-str))
+                                         '(#x5F73))
+                                   ?⿰
+                                 ?⿱)
+                               )
+                              (t
+                               ?⿱))
                              (nth 2 enc-str)
                              (nth 2 structure)))
          (setq a-res (ids-find-chars-including-ids new-str))
                new-str
                a-res
                (list ?⿸ (nth 1 enc-str)
-                     (list (cons 'ideographic-structure new-str))))
+                     (list (cons 'ideographic-structure new-str)))
+               (if (eq (car new-str) ?⿰)
+                   131
+                 132))
          )))
       )
      ((eq (car structure) ?⿹)
                a-res
                (list ?⿰
                      (list (cons 'ideographic-structure new-str))
-                     (nth 2 enc-str)))
+                     (nth 2 enc-str))
+               210)
          )))
       )
      ((eq (get-char-attribute (car structure) '=ucs-itaiji-001) #x2FF6)
                a-res
                (list ?⿺
                      (list (cons 'ideographic-structure new-str))
-                     (nth 2 enc-str)))
+                     (nth 2 enc-str))
+               310)
          )
         ((eq (car enc-str) ?⿱)
          (setq f-res (ids-find-chars-including-ids enc-str))
                a-res
                (list ?⿱
                      (list (cons 'ideographic-structure new-str))
-                     (nth 2 enc-str)))
+                     (nth 2 enc-str))
+               320)
          ))
        )
       )
                  a-res
                  (list ?⿱
                        (nth 1 enc-str)
-                       (list (cons 'ideographic-structure new-str))
-                       ))
+                       (list (cons 'ideographic-structure new-str)))
+                 411)
            )
           ((and (characterp (nth 2 enc-str))
                 (eq (char-ucs (nth 2 enc-str)) #x51F5))
                  (list ?⿱
                        (nth 1 enc-str)
                        (list (cons 'ideographic-structure
-                                   new-str))
-                       ))
+                                   new-str)))
+                 412)
            )       
           ((and (characterp (nth 1 enc-str))
                 (eq (char-feature (nth 1 enc-str) '=>ucs@component)
                  a-res
                  (list ?⿱
                        (list (cons 'ideographic-structure new-str))
-                       (nth 2 enc-str)))
+                       (nth 2 enc-str))
+                 413)
            )
           (t
            (setq f-res (ids-find-chars-including-ids enc-str))
                  (list ?⿳
                        (nth 1 enc-str)
                        (nth 2 structure)
-                       (nth 2 enc-str)))
+                       (nth 2 enc-str))
+                 414)
            ))
          ))
        )
                  a-res
                  (list ?⿱
                        (list (cons 'ideographic-structure new-str))
-                       (nth 2 enc-str))))
+                       (nth 2 enc-str))
+                 511)
+           )
          )
         ((eq (car enc-str) ?⿳)
          (setq enc2-str (ideographic-character-get-structure (nth 1 enc-str)))
                  (list ?⿳
                        (list (cons 'ideographic-structure new-str))
                        (nth 2 enc-str)
-                       (nth 3 enc-str))))
+                       (nth 3 enc-str))
+                 512)
+           )
          )
         ((eq (car enc-str) ?⿲)
          (setq f-res (ids-find-chars-including-ids enc-str))
                (list ?⿲
                      (nth 1 enc-str)
                      (list (cons 'ideographic-structure new-str))
-                     (nth 3 enc-str)))
+                     (nth 3 enc-str))
+               520)
          )
         ((eq (car enc-str) ?⿴)
          (setq enc2-str (ideographic-character-get-structure (nth 1 enc-str)))
                  (list ?⿲
                        (nth 1 enc2-str)
                        (list (cons 'ideographic-structure new-str))
-                       (nth 2 enc2-str))))
+                       (nth 2 enc2-str))
+                 530)
+           )
          )))
       )
      ((eq (car structure) ?⿵)
                  a-res
                  (list ?⿱
                        (nth 1 enc-str)
-                       (list (cons 'ideographic-structure new-str)))))
+                       (list (cons 'ideographic-structure new-str)))
+                 611)
+           )
          )
         ((eq (car enc-str) ?⿳)
          (setq enc2-str (ideographic-character-get-structure (nth 3 enc-str)))
                  (list ?⿳
                        (nth 1 enc-str)
                        (nth 2 enc-str)
-                       (list (cons 'ideographic-structure new-str)))))
+                       (list (cons 'ideographic-structure new-str)))
+                 612)
+           )
          )
         ((eq (car enc-str) ?⿲)
          (setq f-res (ids-find-chars-including-ids enc-str))
                (list ?⿲
                      (nth 1 enc-str)
                      (list (cons 'ideographic-structure new-str))
-                     (nth 3 enc-str)))
+                     (nth 3 enc-str))
+               620)
          )
         ((eq (car enc-str) ?⿴)
          (setq enc2-str (ideographic-character-get-structure (nth 1 enc-str)))
                  (list ?⿲
                        (nth 1 enc2-str)
                        (list (cons 'ideographic-structure new-str))
-                       (nth 2 enc2-str))))
+                       (nth 2 enc2-str))
+                 630)
+           )
          )))
       )
      ((eq (car structure) ?⿻)
                (list ?⿳
                      (nth 1 enc-str)
                      (nth 2 structure)
-                     (nth 2 enc-str)))
+                     (nth 2 enc-str))
+               911)
          )))
       ))
     ))