 }
 
 public struct Atributika {
-    let text: String
-    let tags: [String: [Attribute]]
-    let baseAttributes: [Attribute]
-    
-    init(text: String, tags: [String: [Attribute]] = [:], baseAttributes: [Attribute] = []) {
+    public let text: String
+    public let tags: [String: [Attribute]]
+    public let baseAttributes: [Attribute]
+    
+    public init(text: String, tags: [String: [Attribute]] = [:], baseAttributes: [Attribute] = []) {
         self.text = text
         self.tags = tags
         self.baseAttributes = baseAttributes

}

public struct TagInfo : Equatable {
    let name: String
    let attributes: [String: String]
    var range: Range<Int>
}

public func ==(lhs: TagInfo, rhs: TagInfo) -> Bool {

        return (attributedString, tagsInfo)
    }
    
    public func buildAttributedString() -> NSAttributedString {
        return buildAttributedStringInternal().0
    }
    
    public func buildAttributedStringAndTagsInfo() -> (NSAttributedString, [TagInfo]) {
        return buildAttributedStringInternal()
    }
    
