         })
     }
 
+    /// This method applies the styles from the specified attributed string, to the DOM, starting
+    /// at the specified location, and moving ahead for the length of the attributed string.
+    ///
+    /// This makes sense only if the attributed string has already been added to the DOM, as a way
+    /// to apply the styles for that string.
+    ///
+    /// - Parameters:
+    ///     - attributedString: the attributed string containing the styles we want to apply.
+    ///     - location: the starting location where the styles should be applied in the DOM.
+    ///         It's the offset this method will use to apply the styles found in the source string.
+    ///
     private func applyStylesToDom(from attributedString: NSAttributedString, startingAt location: Int) {
         let originalAttributes = location == 0 ? [:] : textStore.attributes(at: location - 1, effectiveRange: nil)
         let fullRange = NSRange(location: 0, length: attributedString.length)

        })
    }

    // MARK: - Processing style differences: NSFontAttributeName

    private func processFontDifferences(in range: NSRange, betweenOriginal originalFont: UIFont?, andNew newFont: UIFont?) {
        processBoldDifferences(in: range, betweenOriginal: originalFont, andNew: newFont)
        processItalicDifferences(in: range, betweenOriginal: originalFont, andNew: newFont)
    }

    private func processBoldDifferences(in range: NSRange, betweenOriginal originalFont: UIFont?, andNew newFont: UIFont?) {
        let oldIsBold = originalFont?.containsTraits(.traitBold) ?? false
        let newIsBold = newFont?.containsTraits(.traitBold) ?? false

            dom.applyUnderline(spanning: range)
        } else if removeStyle {
            dom.removeUnderline(spanning: range)
        }
    }

