             options:options,
             context:nil).size
         cellWidth = ceil(cellSize.width) + kCellMargin
+        
+        DispatchQueue.global(qos:DispatchQoS.QoSClass.background).async
+        { [weak self] in
+            
+            self?.normalize()
+        }
+    }
+    
+    //MARK: private
+    
+    private func normalize()
+    {
+        wordId = wordId.replacingOccurrences(
+            of:kReplaceA,
+            with:kNormalA)
+        wordId = wordId.replacingOccurrences(
+            of:kReplaceE,
+            with:kNormalE)
+        wordId = wordId.replacingOccurrences(
+            of:kReplaceI,
+            with:kNormalI)
+        wordId = wordId.replacingOccurrences(
+            of:kReplaceO,
+            with:kNormalO)
+        wordId = wordId.replacingOccurrences(
+            of:kReplaceU,
+            with:kNormalU)
     }
 }


class RModelHomeSearchResult
{
    let attributedString:NSAttributedString
    let cellWidth:CGFloat
    let word:String
    let wordId:String
    let region:String?
    private let kKeyWord:String = "word"
    private let kKeyWordId:String = "id"
    private let kKeyRegion:String = "region"
    private let kEmpty:String = ""
    private let kCellMargin:CGFloat = 35
    

        guard
        
            let wordId:String = jsonMap?[kKeyWordId] as? String,
            let word:String = jsonMap?[kKeyWord] as? String,
            let matchType:String = jsonMap?[kKeyMathType] as? String
        
        else
        {
