     /// - Returns: The right-padded copy of the string.
     @discardableResult
     func padRight(token: String = " ", length: Int) -> String {
-        guard padConditionsSatisfied(token: token, length: length) else { return self }
+        guard padConditionsSatisfied(tokenCount: token.characters.count, length: length) else { return self }
 
         var s = self
         repeat { s.insert(token.characters[token.startIndex], at: endIndex) } while s.characters.count < length

    ///     print(string.trimRight(length: 7))
    ///     // Prints "Hello"
    ///
    /// - Parameters:
    ///   - length: The number of characters to trim from the end of the string. If the provided length is greater than the original string, the original string is returned.
    /// - Returns: The right-trimmed copy of the string.
    @discardableResult
    func trimRight(length: Int) -> String {


public extension String {

    /// A Boolean value indicating if all the characters are letters.
    ///
    /// - Returns: True, if all characters are letters. Otherwise, false.
    func isAlpha() -> Bool {
        return containsCharactersFound(in: .letters)
    }

    /// A Boolean value indicating if all the characters are alphanumeric.
    ///
    /// - Returns: True, if all characters are alphanumeric. Otherwise, false.
    func isAlphanumeric() -> Bool {
        return containsCharactersFound(in: .alphanumerics)
    }

    /// A Boolean value indicating if the string is capitalized.
    ///
    /// - Returns: True, if first character is uppercased. Otherwise, false.
    func isCapitalized() -> Bool {
        return self == capitalized
    }

    /// A Boolean value indicating if the string's first character is lowercase.
    ///
    /// - Returns: True, if first character is lowercased. Otherwise, false.
    func isDecpitalized() -> Bool {
        return self == decapitalized()
    }

    /// A Boolean value indicating if all the characters are lowercased.
    ///
    /// - Returns: True, if all characters are lowercased. Otherwise, false.
    func isLowercased() -> Bool {
        return self == lowercased()
    }

    /// A Boolean value indicating if all the characters are numbers.
    ///
    /// - Returns: True, if all characters are numbers. Otherwise, false.
    func isNumeric() -> Bool {
        return containsCharactersFound(in: .decimalDigits)
    }

    /// A Boolean value indicating if all the characters are uppercased.
    ///
    /// - Returns: True, if all characters are uppercased. Otherwise, false.
    func isUppercased() -> Bool {
        return self == uppercased()
    }
