anchor.diff:  import 'package:webrtc_utils/client.dart';
   import 'dart:html';
   import 'dart:typed_data';
  -import 'dart:math';
  +// Used for delaying the sending one tick
   import 'dart:async';
   
   const Map rtcConfiguration = const {"iceServers": const [ const {"url": "stun:stun.l.google.com:19302"}]};
  
positive.code:       channel.onOpen.listen((Event ev) {
          print('Channel is opened');
          final File file = files[channel.label];
          
          var chunkSize = 16384;
          sliceFile(int offset) {
            FileReader reader = new FileReader();
            reader.onLoad.listen((Event ev) {
              channel.send(reader.result);
              if (file.size > offset + (reader.result as TypedData).lengthInBytes) {
                new Future(() => sliceFile(offset + chunkSize));
              }
            });
            Blob slice = file.slice(offset, offset + chunkSize);
            reader.readAsArrayBuffer(slice);
          };
          sliceFile(0);
        });
        
  
negative.code:         print(ev.data);
        });
      } else {
        final int startTime = new DateTime.now().millisecondsSinceEpoch;
        
        
        print('Receiver');
        List receiveBuffer = [];
        channel.onMessage.listen((MessageEvent ev) {
          if(ev.data is ByteBuffer) {
            ByteBuffer buffer = ev.data;
            receiveBuffer.add(ev.data);
            
            if(buffer.lengthInBytes < 16384) {
              final int time = new DateTime.now().millisecondsSinceEpoch - startTime;
              print('Receiving done after ${time}ms');
              AnchorElement save = new AnchorElement();
              save.target = '_blank';
              save.download = channel.label;
  