supports lowercased strings