 private extension String {
     /// Ranges of optional collections within the bounds of the string.
     ///
+    /// Example: [String: [Int]?]
+    ///
+    ///         [  S  t  r  i  n  g  :     [  I  n  t  ]  ?  ]
+    ///         0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15
+    ///                                    ^              ^
+    /// = [[9, 14]]
+    ///
+    /// Example: [String: [Int]?]
+    ///
+    ///         [  S  t  r  i  n  g  :     [  I  n  t  ]  ?  ]  ?
+    ///         0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16
+    ///         ^                          ^              ^     ^
+    /// = [[0, 16], [9, 14]]
+    ///
+    /// Example: var x = Set<Int>?
+    ///
+    ///         v  a  r     x  =     S  e  t  <  I  n  t  >  ?
+    ///         0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15
+    ///                              ^                       ^
+    /// = [[7, 15]]
+    ///
     /// - Returns: An array of ranges.
     func optionalCollectionRanges() -> [Range<String.Index>] {
         let squareBrackets = balancedRanges(between: "[", and: "]").flatMap { range -> Range<String.Index>? in

    }

    /// Ranges of balanced substrings.
    ///
    /// - Parameters:
    ///   - prefix: The prefix to look for.


    /// Indices of character within the bounds of the string.
    ///
    /// Example:
    ///         a m a n h a
    ///         0 1 2 3 4 5
    ///         ^   ^     ^
    /// = [0, 2, 5]
    ///
    /// - Parameter character: The character to look for.
    /// - Returns: Array of indices.
    private func indices(of character: Character) -> [String.Index] {
