anchor.diff:    }
   }
   
  +class ParseIntBenchmark extends BenchmarkBase {
  +  final int bits;
  +  final int seed;
  +  final List<String> strings = [];
  +
  +  ParseIntBenchmark(String name, this.bits)
  +      : seed = (pow(2, bits) as int) - 1,
  +        super(name);
  +
  +  @override
  +  void setup() {
  +    var b = seed;
  +    var totalLength = 0;
  +    while (totalLength < requiredDigits) {
  +      if (b.bitLength < bits) {
  +        b = seed;
  +      }
  +      final string = b.toString();
  +      strings.add(string);
  +      totalLength += string.length;
  +      b = b - b ~/ 256;
  +    }
  +  }
  +
  +  @override
  +  void run() {
  +    for (final s in strings) {
  +      final b = int.parse(s);
  +      sink1 = s;
  +      sink2 = b;
  +    }
  +    check(sink2.isEven);
  +  }
  +}
  +
   class ParseJsBigIntBenchmark extends BenchmarkBase {
     final int bits;
     final Object seed;
  
positive.code: 
  void main() {
    final benchmarks = [
      () => ParseInt64Benchmark('Int64.parse.0009.bits', 9),
      () => ParseInt64Benchmark('Int64.parse.0032.bits', 32),
      () => ParseInt64Benchmark('Int64.parse.0064.bits', 64),
  
negative.code:     selectParseNativeBigIntBenchmark('JsBigInt.parse.0256.bits', 256),
      selectParseNativeBigIntBenchmark('JsBigInt.parse.1024.bits', 1024),
      selectParseNativeBigIntBenchmark('JsBigInt.parse.4096.bits', 4096),
      () => FormatIntBenchmark('Int.toString.0009.bits', 9),
      () => FormatIntBenchmark('Int.toString.0032.bits', 32),
      () => FormatIntBenchmark('Int.toString.0064.bits', 63),
      () => FormatInt64Benchmark('Int64.toString.0009.bits', 9),
      () => FormatInt64Benchmark('Int64.toString.0032.bits', 32),
      () => FormatInt64Benchmark('Int64.toString.0064.bits', 64),
  