     public var description: String {
         switch self {
         case .codeWithoutFileName(let code):
-            return "[TweetParseError] TweetParseError: Code without filename: \(code)"
+            return "[\(type(of: self))] Code without filename: \(code)"
         case .illegalHashTag(let hashtag):
-            return "[TweetParseError] Illegal hashtag: \(hashtag)"
+            return "[\(type(of: self))] Illegal hashtag: \(hashtag)"
         case .multipleAttachments(let tweet, let attachments):
-            return "[TweetParseError] Multiple attachments in a tweet: tweet = \(tweet), attachments = \(attachments)"
+            return "[\(type(of: self))] Multiple attachments in a tweet: tweet = \(tweet), attachments = \(attachments)"
         case .nonTailAttachment(let tweet, let attachment):
-            return "[TweetParseError] Attachment must be put at the end of a tweet: tweet = \(tweet), attachment = \(attachment)"
+            return "[\(type(of: self))] Attachment must be put at the end of a tweet: tweet = \(tweet), attachment = \(attachment)"
         }
     }
 }

    public var description: String {
        switch self {
        case .empty:
            return "[TweetInitializationError] Empty tweet."
        case .tooLong(let tweet, let attachment, let length):
            return "[TweetInitializationError] Too long tweet: tweet = \(tweet), attachment = \(String(describing: attachment)), length = \(length)"
        }
    }
}

    public var description: String {
        switch self {
        case .illegalResponse:
            return "[\(type(of: self))] Illegal response during code rendering."
        case .writingFailed:
            return "[\(type(of: self))] Failed to write images of code."
        }
    }
}
