         })
     }
 
+    /// 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)

        }
    }

    private func processItalicDifferences(in range: NSRange, betweenOriginal originalFont: UIFont?, andNew newFont: UIFont?) {
        let oldIsItalic = originalFont?.containsTraits(.traitItalic) ?? false
        let newIsItalic = newFont?.containsTraits(.traitItalic) ?? false

        }
    }

    /// Processed differences in two strikethrough styles, and applies them to the DOM in the
    /// specified range.
    ///
    /// - Parameters:
    ///     - range: the range in the DOM where the differences must be applied.
    ///     - originalFont: the original font object.
    ///     - newFont: the new font object.
    ///
    private func processStrikethroughDifferences(in range: NSRange, betweenOriginal originalStyle: NSNumber?, andNew newStyle: NSNumber?) {
        // At some point we'll support different styles.  For now we only check if ANY style is
        // set.
        //
        let addStyle = originalStyle == nil && newStyle != nil
        let removeStyle = originalStyle != nil && newStyle == nil

        if addStyle {
            dom.applyStrikethrough(spanning: range)
        } else if removeStyle {
            dom.removeStrikethrough(spanning: range)
        }
    }

    /// Processed differences in two underline styles, and applies them to the DOM in the specified
    /// range.
    ///
    /// - Parameters:
    ///     - range: the range in the DOM where the differences must be applied.
    ///     - originalFont: the original font object.
    ///     - newFont: the new font object.
    ///
    private func processUnderlineDifferences(in range: NSRange, betweenOriginal originalStyle: NSNumber?, andNew newStyle: NSNumber?) {
        // At some point we'll support different styles.  For now we only check if ANY style is
        // set.
