anchor.diff:    @IntPtr()
     external int hIcon;
   
  -  // WCHAR szTip[128]
  -  @Uint64()
  -  external int _szTip0;
  -  @Uint64()
  -  external int _szTip1;
  -  @Uint64()
  -  external int _szTip2;
  -  @Uint64()
  -  external int _szTip3;
  -  @Uint64()
  -  external int _szTip4;
  -  @Uint64()
  -  external int _szTip5;
  -  @Uint64()
  -  external int _szTip6;
  -  @Uint64()
  -  external int _szTip7;
  -  @Uint64()
  -  external int _szTip8;
  -  @Uint64()
  -  external int _szTip9;
  -  @Uint64()
  -  external int _szTip10;
  -  @Uint64()
  -  external int _szTip11;
  -  @Uint64()
  -  external int _szTip12;
  -  @Uint64()
  -  external int _szTip13;
  -  @Uint64()
  -  external int _szTip14;
  -  @Uint64()
  -  external int _szTip15;
  -  @Uint64()
  -  external int _szTip16;
  -  @Uint64()
  -  external int _szTip17;
  -  @Uint64()
  -  external int _szTip18;
  -  @Uint64()
  -  external int _szTip19;
  -  @Uint64()
  -  external int _szTip20;
  -  @Uint64()
  -  external int _szTip21;
  -  @Uint64()
  -  external int _szTip22;
  -  @Uint64()
  -  external int _szTip23;
  -  @Uint64()
  -  external int _szTip24;
  -  @Uint64()
  -  external int _szTip25;
  -  @Uint64()
  -  external int _szTip26;
  -  @Uint64()
  -  external int _szTip27;
  -  @Uint64()
  -  external int _szTip28;
  -  @Uint64()
  -  external int _szTip29;
  -  @Uint64()
  -  external int _szTip30;
  -  @Uint64()
  -  external int _szTip31;
  -
  -  String get szTip => String.fromCharCodes(Uint64List.fromList([
  -        _szTip0, _szTip1, _szTip2, _szTip3, //
  -        _szTip4, _szTip5, _szTip6, _szTip7,
  -        _szTip8, _szTip9, _szTip10, _szTip11,
  -        _szTip12, _szTip13, _szTip14, _szTip15,
  -        _szTip16, _szTip17, _szTip18, _szTip19,
  -        _szTip20, _szTip21, _szTip22, _szTip23,
  -        _szTip24, _szTip25, _szTip26, _szTip27,
  -        _szTip28, _szTip29, _szTip30, _szTip31
  -      ]).buffer.asUint16List());
  +  @Array(128)
  +  external Array<Uint16> _szTip;
  +
  +  String get szTip {
  +    final charCodes = <int>[];
  +    for (var i = 0; i < 128; i++) {
  +      charCodes.add(_szTip[i]);
  +    }
  +    return String.fromCharCodes(charCodes);
  +  }
   
     set szTip(String value) {
       // Pad with null characters
       final stringToStore = value.padRight(128, '\x00');
  -    final byteData64 =
  -        Uint16List.fromList(stringToStore.codeUnits).buffer.asUint64List();
  -
  -    _szTip0 = byteData64[0];
  -    _szTip1 = byteData64[1];
  -    _szTip2 = byteData64[2];
  -    _szTip3 = byteData64[3];
  -    _szTip4 = byteData64[4];
  -    _szTip5 = byteData64[5];
  -    _szTip6 = byteData64[6];
  -    _szTip7 = byteData64[7];
  -    _szTip8 = byteData64[8];
  -    _szTip9 = byteData64[9];
  -    _szTip10 = byteData64[10];
  -    _szTip11 = byteData64[11];
  -    _szTip12 = byteData64[12];
  -    _szTip13 = byteData64[13];
  -    _szTip14 = byteData64[14];
  -    _szTip15 = byteData64[15];
  -    _szTip16 = byteData64[16];
  -    _szTip17 = byteData64[17];
  -    _szTip18 = byteData64[18];
  -    _szTip19 = byteData64[19];
  -    _szTip20 = byteData64[20];
  -    _szTip21 = byteData64[21];
  -    _szTip22 = byteData64[22];
  -    _szTip23 = byteData64[23];
  -    _szTip24 = byteData64[24];
  -    _szTip25 = byteData64[25];
  -    _szTip26 = byteData64[26];
  -    _szTip27 = byteData64[27];
  -    _szTip28 = byteData64[28];
  -    _szTip29 = byteData64[29];
  -    _szTip30 = byteData64[30];
  -    _szTip31 = byteData64[31];
  +    for (var i = 0; i < 128; i++) {
  +      _szTip[i] = stringToStore.codeUnitAt(i);
  +    }
     }
   
     @Uint32()
  
positive.code:   @Uint32()
    external int dwReserved1;
  
    // WCHAR cFileName[MAX_PATH];
    // (260 + 14) * 2 = 548 bytes)
    @Uint32()
    external int _cFileName0;
    @Uint32()
    external int _cFileName1;
    @Uint32()
    external int _cFileName2;
    @Uint32()
    external int _cFileName3;
    @Uint32()
    external int _cFileName4;
    @Uint32()
    external int _cFileName5;
    @Uint32()
    external int _cFileName6;
    @Uint32()
    external int _cFileName7;
    @Uint32()
    external int _cFileName8;
    @Uint32()
    external int _cFileName9;
    @Uint32()
    external int _cFileName10;
    @Uint32()
    external int _cFileName11;
    @Uint32()
    external int _cFileName12;
    @Uint32()
    external int _cFileName13;
    @Uint32()
    external int _cFileName14;
    @Uint32()
    external int _cFileName15;
    @Uint32()
    external int _cFileName16;
    @Uint32()
    external int _cFileName17;
    @Uint32()
    external int _cFileName18;
    @Uint32()
    external int _cFileName19;
    @Uint32()
    external int _cFileName20;
    @Uint32()
    external int _cFileName21;
    @Uint32()
    external int _cFileName22;
    @Uint32()
    external int _cFileName23;
    @Uint32()
    external int _cFileName24;
    @Uint32()
    external int _cFileName25;
    @Uint32()
    external int _cFileName26;
    @Uint32()
    external int _cFileName27;
    @Uint32()
    external int _cFileName28;
    @Uint32()
    external int _cFileName29;
    @Uint32()
    external int _cFileName30;
    @Uint32()
    external int _cFileName31;
    @Uint32()
    external int _cFileName32;
    @Uint32()
    external int _cFileName33;
    @Uint32()
    external int _cFileName34;
    @Uint32()
    external int _cFileName35;
    @Uint32()
    external int _cFileName36;
    @Uint32()
    external int _cFileName37;
    @Uint32()
    external int _cFileName38;
    @Uint32()
    external int _cFileName39;
    @Uint32()
    external int _cFileName40;
    @Uint32()
    external int _cFileName41;
    @Uint32()
    external int _cFileName42;
    @Uint32()
    external int _cFileName43;
    @Uint32()
    external int _cFileName44;
    @Uint32()
    external int _cFileName45;
    @Uint32()
    external int _cFileName46;
    @Uint32()
    external int _cFileName47;
    @Uint32()
    external int _cFileName48;
    @Uint32()
    external int _cFileName49;
    @Uint32()
    external int _cFileName50;
    @Uint32()
    external int _cFileName51;
    @Uint32()
    external int _cFileName52;
    @Uint32()
    external int _cFileName53;
    @Uint32()
    external int _cFileName54;
    @Uint32()
    external int _cFileName55;
    @Uint32()
    external int _cFileName56;
    @Uint32()
    external int _cFileName57;
    @Uint32()
    external int _cFileName58;
    @Uint32()
    external int _cFileName59;
    @Uint32()
    external int _cFileName60;
    @Uint32()
    external int _cFileName61;
    @Uint32()
    external int _cFileName62;
    @Uint32()
    external int _cFileName63;
    @Uint32()
    external int _cFileName64;
    @Uint32()
    external int _cFileName65;
    @Uint32()
    external int _cFileName66;
    @Uint32()
    external int _cFileName67;
    @Uint32()
    external int _cFileName68;
    @Uint32()
    external int _cFileName69;
    @Uint32()
    external int _cFileName70;
    @Uint32()
    external int _cFileName71;
    @Uint32()
    external int _cFileName72;
    @Uint32()
    external int _cFileName73;
    @Uint32()
    external int _cFileName74;
    @Uint32()
    external int _cFileName75;
    @Uint32()
    external int _cFileName76;
    @Uint32()
    external int _cFileName77;
    @Uint32()
    external int _cFileName78;
    @Uint32()
    external int _cFileName79;
    @Uint32()
    external int _cFileName80;
    @Uint32()
    external int _cFileName81;
    @Uint32()
    external int _cFileName82;
    @Uint32()
    external int _cFileName83;
    @Uint32()
    external int _cFileName84;
    @Uint32()
    external int _cFileName85;
    @Uint32()
    external int _cFileName86;
    @Uint32()
    external int _cFileName87;
    @Uint32()
    external int _cFileName88;
    @Uint32()
    external int _cFileName89;
    @Uint32()
    external int _cFileName90;
    @Uint32()
    external int _cFileName91;
    @Uint32()
    external int _cFileName92;
    @Uint32()
    external int _cFileName93;
    @Uint32()
    external int _cFileName94;
    @Uint32()
    external int _cFileName95;
    @Uint32()
    external int _cFileName96;
    @Uint32()
    external int _cFileName97;
    @Uint32()
    external int _cFileName98;
    @Uint32()
    external int _cFileName99;
    @Uint32()
    external int _cFileName100;
    @Uint32()
    external int _cFileName101;
    @Uint32()
    external int _cFileName102;
    @Uint32()
    external int _cFileName103;
    @Uint32()
    external int _cFileName104;
    @Uint32()
    external int _cFileName105;
    @Uint32()
    external int _cFileName106;
    @Uint32()
    external int _cFileName107;
    @Uint32()
    external int _cFileName108;
    @Uint32()
    external int _cFileName109;
    @Uint32()
    external int _cFileName110;
    @Uint32()
    external int _cFileName111;
    @Uint32()
    external int _cFileName112;
    @Uint32()
    external int _cFileName113;
    @Uint32()
    external int _cFileName114;
    @Uint32()
    external int _cFileName115;
    @Uint32()
    external int _cFileName116;
    @Uint32()
    external int _cFileName117;
    @Uint32()
    external int _cFileName118;
    @Uint32()
    external int _cFileName119;
    @Uint32()
    external int _cFileName120;
    @Uint32()
    external int _cFileName121;
    @Uint32()
    external int _cFileName122;
    @Uint32()
    external int _cFileName123;
    @Uint32()
    external int _cFileName124;
    @Uint32()
    external int _cFileName125;
    @Uint32()
    external int _cFileName126;
    @Uint32()
    external int _cFileName127;
    @Uint32()
    external int _cFileName128;
    @Uint32()
    external int _cFileName129;
  
    // WCHAR cFileName[MAX_PATH]; (260 * 2 = 520 / 4 = 130)
    String get cFileName => String.fromCharCodes(Uint32List.fromList([
          _cFileName0, _cFileName1, _cFileName2, _cFileName3, //
          _cFileName4, _cFileName5, _cFileName6, _cFileName7,
          _cFileName8, _cFileName9, _cFileName10, _cFileName11,
          _cFileName12, _cFileName13, _cFileName14, _cFileName15,
          _cFileName16, _cFileName17, _cFileName18, _cFileName19,
          _cFileName20, _cFileName21, _cFileName22, _cFileName23,
          _cFileName24, _cFileName25, _cFileName26, _cFileName27,
          _cFileName28, _cFileName29, _cFileName30, _cFileName31,
          _cFileName32, _cFileName33, _cFileName34, _cFileName35,
          _cFileName36, _cFileName37, _cFileName38, _cFileName39,
          _cFileName40, _cFileName41, _cFileName42, _cFileName43,
          _cFileName44, _cFileName45, _cFileName46, _cFileName47,
          _cFileName48, _cFileName49, _cFileName50, _cFileName51,
          _cFileName52, _cFileName53, _cFileName54, _cFileName55,
          _cFileName56, _cFileName57, _cFileName58, _cFileName59,
          _cFileName60, _cFileName61, _cFileName62, _cFileName63,
          _cFileName64, _cFileName65, _cFileName66, _cFileName67,
          _cFileName68, _cFileName69, _cFileName70, _cFileName71,
          _cFileName72, _cFileName73, _cFileName74, _cFileName75,
          _cFileName76, _cFileName77, _cFileName78, _cFileName79,
          _cFileName80, _cFileName81, _cFileName82, _cFileName83,
          _cFileName84, _cFileName85, _cFileName86, _cFileName87,
          _cFileName88, _cFileName89, _cFileName90, _cFileName91,
          _cFileName92, _cFileName93, _cFileName94, _cFileName95,
          _cFileName96, _cFileName97, _cFileName98, _cFileName99,
          _cFileName100, _cFileName101, _cFileName102, _cFileName103,
          _cFileName104, _cFileName105, _cFileName106, _cFileName107,
          _cFileName108, _cFileName109, _cFileName110, _cFileName111,
          _cFileName112, _cFileName113, _cFileName114, _cFileName115,
          _cFileName116, _cFileName117, _cFileName118, _cFileName119,
          _cFileName120, _cFileName121, _cFileName122, _cFileName123,
          _cFileName124, _cFileName125, _cFileName126, _cFileName127,
          _cFileName128, _cFileName129
        ]).buffer.asUint16List());
  
    // WCHAR cAlternateFileName[14];
    @Uint32()
    external int _cAlternateFileName0;
    @Uint32()
    external int _cAlternateFileName1;
    @Uint32()
    external int _cAlternateFileName2;
    @Uint32()
    external int _cAlternateFileName3;
    @Uint32()
    external int _cAlternateFileName4;
    @Uint32()
    external int _cAlternateFileName5;
    @Uint32()
    external int _cAlternateFileName6;
  
    String get cAlternateFileName => String.fromCharCodes(Uint32List.fromList([
          _cAlternateFileName0, _cAlternateFileName1,
          _cAlternateFileName2, _cAlternateFileName3, //
          _cAlternateFileName4, _cAlternateFileName5,
          _cAlternateFileName6
        ]).buffer.asUint16List());
  }
  
  // typedef struct tagWAVEOUTCAPSW {
  
negative.code:   @Uint32()
    external int vDriverVersion;
  
    @Array(32)
    external Array<Uint16> _szPname;
  
    String get szPname {
      final charCodes = <int>[];
      for (var i = 0; i < 32; i++) {
        charCodes.add(_szPname[i]);
      }
      return String.fromCharCodes(charCodes);
    }
  
    @Uint32()
    external int dwFormats;
  