anchor.diff:      throw new UnsupportedError("Cannot set the contentLength property of "
           "multipart requests.");
     }
  -
  -  /// The form fields to send for this request.
  -  final Map<String, String> fields;
  -
  -  /// The sink for files to upload for this request.
  -  ///
  -  /// This doesn't need to be closed. When the request is sent, whichever files
  -  /// are written to this sink at that point will be used.
  -  CollectionSink<MultipartFile> get files => _files;
  -
  -  /// The private version of [files], typed so that the underlying collection is
  -  /// accessible.
  -  final CollectionSink<MultipartFile> _files;
  -
  -  /// Creates a new [MultipartRequest].
  -  MultipartRequest(String method, Uri url)
  -    : super(method, url),
  -      fields = {},
  -      _files = new CollectionSink<MultipartFile>(<MultipartFile>[]);
   
     /// Freezes all mutable fields and returns a single-subscription [ByteStream]
     /// that will emit the request body.
  
positive.code: 
    static final Random _random = new Random();
  
    /// The total length of the request body, in bytes. This is calculated from
    /// [fields] and [files] and cannot be set manually.
    int get contentLength {
  
negative.code:       writeLine();
      });
  
      Future.forEach(_files, (file) {
        writeAscii('--$boundary\r\n');
        writeAscii(_headerForFile(file));
        return writeStreamToSink(file.finalize(), controller)
  