anchor.diff:    void _encode3to4(List<int> inList, int inPos, List<int> outList, int outPos) {
       // Copy next three bytes into lower 24 bits of int, paying attension to sign.
       // We must mask left shifts to avoid overflow  conversion into a big int
  -    int i = ((inList[inPos++] & 0xff) << 16) & 0xffffffff;
  -    i |= ((inList[inPos++] & 0xff) << 8) & 0xffffffff;
  +    int i = ((inList[inPos++] & 0xff) << 16) & _MASK_INT;
  +    i |= ((inList[inPos++] & 0xff) << 8) & _MASK_INT;
       i |= (inList[inPos++] & 0xff);
       outList[outPos++] = _LT[(i >> 18) & _MASK_6BITS];
       outList[outPos++] = _LT[(i >> 12) & _MASK_6BITS];
  
positive.code:             if (result >= 0) {
                  modulus = (modulus+1) % _BYTES_PER_ENCODED_BLOCK;
                  // https://groups.google.com/a/dartlang.org/d/msg/misc/6u9UNNLRjZw/YE9bV99lWyoJ
                  ibitWorkArea = ((ibitWorkArea << _BITS_PER_ENCODED_BYTE) & 0xffffffff) | result;
                  if (modulus == 0) {
                      buffer[outPos++] = ((ibitWorkArea >> 16) & 0xff);
                      buffer[outPos++] = ((ibitWorkArea >> 8) & 0xff);
  
negative.code: library base64_codec;
  
  import 'dart:math';
  import 'dart:typed_data';
  import 'dart:async';
  
  /**
  