 
   /// Destroy the stored Header.
   deinit {
-    ManagedBufferPointer(self).withUnsafeMutablePointerToHeader { $0.deinitialize() }
+    ManagedBufferPointer(self).withUnsafeMutablePointerToHeader {
+      $0.deinitialize()
+    }
   }
 
   /// The stored `Header` instance.
   public final var header: Header {
     addressWithNativeOwner {
       return (
-        ManagedBufferPointer(self).withUnsafeMutablePointerToHeader { UnsafePointer($0) },
+        ManagedBufferPointer(self).withUnsafeMutablePointerToHeader {
+          UnsafePointer($0)
+        },
         Builtin.castToNativeObject(self))
     }
     mutableAddressWithNativeOwner {

  public init(
    bufferClass: AnyClass,
    minimumCapacity: Int,
    initialHeader: @noescape (buffer: AnyObject, capacity: @noescape (AnyObject) -> Int) throws -> Header
  ) rethrows {
    self = ManagedBufferPointer(bufferClass: bufferClass, minimumCapacity: minimumCapacity)

    // initialize the header field
    try withUnsafeMutablePointerToHeader {
      $0.initialize(with: 
        try initialHeader(
          buffer: self.buffer,
          capacity: {
            ManagedBufferPointer(unsafeBufferObject: $0).capacity

  /// - parameter bufferClass: The class of the object used for storage.
  /// - parameter minimumCapacity: The minimum number of `Element`s that
  ///   must be able to be stored in the new buffer.
  /// - parameter factory: A function that produces the initial
  ///   `Header` instance stored in the buffer, given the `buffer`
  ///   object and a function that can be called on it to get the actual
  ///   number of allocated elements.
