       builder = StringBuilder(prefix: builder.description,
                               postfix: "",
                               separator: stackTraceSeparator,
-                              initial: "\n\(stackTraceHeader)")
+                              initial: stackTraceHeader)
       for proc in stackTrace {
         builder.append(proc.name)
       }

  }
  
  public func printableDescription(context: Context,
                                   typeOpen: String = "[",
                                   typeClose: String = "] ",
                                   irritantHeader: String? = "\nirritants: ",
                                   irritantSeparator: String = ", ",
                                   positionHeader: String? = "at: ",
                                   libraryHeader: String? = "library: ",
                                   stackTraceHeader: String? = "stack trace: ",
                                   stackTraceSeparator: String = ", ") -> String {
    var usedIrritants = Set<Int>()
    let message = self.replacePlaceholders(in: self.descriptor.messageTemplate,
                                           with: self.irritants,
                                           recordingUsage: &usedIrritants)
    var builder = StringBuilder(
          prefix: "\(typeOpen)\(self.descriptor.typeDescription)\(typeClose)\(message)",
          postfix: "",
          separator: "\n",
          initial: "")
    if let irritantHeader = irritantHeader {
      var irritantBuilder = StringBuilder(prefix: "",
                                          postfix: "",

        return type
    }
  }

  public var shortTypeDescription: String {
    switch self {
      case .lexical(_):
        return "lexical"
      case .syntax(_):
        return "syntax"
      case .type(_, _):
        return "type"
      case .range(_, _, _, _):
        return "range"
      case .argumentCount(_, _, _):
        return "arg"
      case .eval(_):
        return "eval"
      case .os(_):
        return "os"
      case .abortion:
        return "abort"
      case .custom(_, _):
        return "custom"
    }
  }
  
  public var messageTemplate: String {
    switch self {
